2013-10-31 35 views

回答

0
$PAGE->set_course(). 

研究有點。從功能文檔set_course

設置當前課程。這會設置$ PAGE-> course和$ COURSE。它 也設置正確的主題和區域設置。

通常你不需要自己調用這個函數,require_login 會爲你調用它,如果你通過$ course的話。你可以在需要調用require_login()的頁面上使用這個 函數。

根據文檔,棄用的功能course_setup

設置所有的全局$CFG過程變量,語言環境和主題也設定。 此功能可以在不需要登錄 而不是require_login()

我周圍的一些代碼看着網頁上。在1.9,你有這樣的代碼在course/user.php

if (has_capability('moodle/user:viewuseractivitiesreport', $personalcontext) 
      and !has_capability('moodle/course:view', $coursecontext)) { 
     // do not require parents to be enrolled in courses ;-) 
     course_setup($course); 
    } else { 
     require_login($course); 
    } 

在Moodle的2.3,同樣的代碼片段:

if (has_capability('moodle/user:viewuseractivitiesreport', $personalcontext) 
     and !is_enrolled($coursecontext)) { 
    // do not require parents to be enrolled in courses ;-) 
    $PAGE->set_course($course); 
} else { 
    require_login($course); 
}