6-5-1
更新模組時的自動功能
您沒有觀看影片的權限
請先登入,登入後,確認您的權限後,即可觀看影片。
- 先將
xoops_version.php
的自動功能打開,並確定好路徑檔名。
//---模組自動功能---//
$modversion['onInstall'] = "include/onInstall.php";
$modversion['onUpdate'] = "include/onUpdate.php";
- 建立或編輯
include/onUpdate.php
,並按指示替換內容後,加入需要執行的動作,如:
<?php
use XoopsModules\Tadtools\Utility;
if (!class_exists('XoopsModules\Tadtools\Utility')) {
require XOOPS_ROOT_PATH . '/modules/tadtools/preloads/autoloader.php';
}
use XoopsModules\Tad_signup\Update;
if (!class_exists('XoopsModules\Tad_signup\Update')) {
require dirname(__DIR__) . '/preloads/autoloader.php';
}
// 更新前
function xoops_module_pre_update_tad_signup(XoopsModule $module, $old_version)
{
// 有上傳功能才需要
Utility::mk_dir(XOOPS_ROOT_PATH . "/uploads/tad_signup");
// 若有用到CKEditor編輯器才需要
Utility::mk_dir(XOOPS_ROOT_PATH . "/uploads/tad_signup/file");
Utility::mk_dir(XOOPS_ROOT_PATH . "/uploads/tad_signup/image");
Utility::mk_dir(XOOPS_ROOT_PATH . "/uploads/tad_signup/image/.thumbs");
$gperm_handler = xoops_getHandler('groupperm');
$groupid = Update::mk_group("活動報名管理");
if (!$gperm_handler->checkRight($module->dirname(), 1, $groupid, $module->mid())) {
$perm_handler = xoops_getHandler('groupperm');
$perm = $perm_handler->create();
$perm->setVar('gperm_groupid', $groupid);
$perm->setVar('gperm_itemid', 1);
$perm->setVar('gperm_name', $module->dirname()); //一般為模組目錄名稱
$perm->setVar('gperm_modid', $module->mid());
$perm_handler->insert($perm);
}
return true;
}
// 更新後
function xoops_module_update_tad_signup(XoopsModule $module, $old_version)
{
global $xoopsDB;
if (Update::chk_1()) {
Update::go_1();
}
return true;
}
- 可以試著更新看看,看是否有建立群組並指派權限。
link to https://github.com/tadlearn/tad_signup/commit/0399c8a26336d70d3cb6116e5a13f72dc67bd20b \