:::
主內容區域
11-1 偏好設定新增「可審核」的群組設定
- 先到模組產生器按「偏好」,並填好內容送出

- 就會得到類似的語法,照著指示做即可

- 接著更新一下模組

- 更新後,先到後台群組,新增一個群組

- 最後到該模組的偏好設定

- 選擇該群組即可

- 接著我們要讓該設定有作用,先修改
class/Tools.php的get_session(),多一個$_SESSION['submission_manager']用來判斷是否有審核權限//取得session public static function get_session() { global $xoopsUser, $xoopsModuleConfig; //判斷是否對該模組有管理權限 if (!isset($_SESSION['submission_adm'])) { $_SESSION['submission_adm'] = isset($xoopsUser) && \is_object($xoopsUser) ? $xoopsUser->isAdmin() : false; } // 判斷是否有審核權限 if (!isset($_SESSION['submission_manager'])) { $groups = isset($xoopsUser) && \is_object($xoopsUser) ? $xoopsUser->getGroups() : []; $_SESSION['submission_manager'] = !empty($xoopsModuleConfig['manager']) ? in_array($xoopsModuleConfig['manager'], $groups) : false; } ...略... } - 接著在VSCode,按Ctrl+Shift+H,搜尋所有的
Tools::chk_is_adm('',並取代成Tools::chk_is_adm('submission_manager',

- 在
index.php及setup.php的開頭和頁尾,分別加入以下語法,以將目前登入者是否可以審核文章的變數$can_manager傳至樣版use XoopsModules\Submission\Tools;$xoopsTpl->assign('can_manager', Tools::chk_is_adm('submission_manager', '', __FILE__, __LINE__, 'return')); - 如此,便可批次取代,將原本只有管理員,改為更彈性一點的設置,按Ctrl+Shift+H,搜尋所有的
$smarty.session.submission_adm並取代成$can_manager

- 修改
setup.php改用物件方法來控管權限if (! Tools::chk_is_adm('submission_manager', '', __FILE__, __LINE__, 'return')) { redirect_header('index.php', 3, _TAD_PERMISSION_DENIED); } interface.php也要修改if (Tools::chk_is_adm('submission_manager', '', __FILE__, __LINE__, 'return')) { $interface_menu[_MD_SUBMISSION_SETUP] = "setup.php"; $interface_icon[_MD_SUBMISSION_SETUP] = "fa-solid fa-file-circle-plus"; }- 現在您可以建立或指派一位老師,到可以審核的群組,然後在登入試試囉!
10-7 讓學生可以修改投稿文章