/** * @param XoopsModule $module * @return boolean */ function xoops_module_install_publisher($module) { $xoops = Xoops::getInstance(); $count = TableLoad::rowCount('publisher_mimetypes'); if ($count == 0) { $filename = $xoops->path('modules/publisher/sql/publisher_mimetypes.yml'); TableLoad::loadTableFromYamlFile('publisher_mimetypes', $filename); } return true; }
/** * xoops_module_install_system - initialize on install * * @param XoopsModule $module module object * * @return void */ function xoops_module_install_system(XoopsModule $module) { $xoops = Xoops::getInstance(); // load groups table $rows = array(array('groupid' => FixedGroups::ADMIN, 'name' => SystemLocale::WEBMASTERS, 'description' => SystemLocale::WEBMASTERS_OF_THIS_SITE, 'group_type' => 'Admin'), array('groupid' => FixedGroups::USERS, 'name' => SystemLocale::REGISTERED_USERS, 'description' => SystemLocale::REGISTERED_USERS_GROUP, 'group_type' => 'Admin'), array('groupid' => FixedGroups::ANONYMOUS, 'name' => SystemLocale::ANONYMOUS_USERS, 'description' => SystemLocale::ANONYMOUS_USERS_GROUP, 'group_type' => 'Admin'), array('groupid' => FixedGroups::REMOVED, 'name' => SystemLocale::REMOVED_USERS, 'description' => SystemLocale::REMOVED_USERS_GROUP, 'group_type' => 'Removed')); TableLoad::loadTableFromArray('system_group', $rows); // data for table 'group_permission' $groupperm_handler = $xoops->getHandlerGroupPermission(); $allGroups = array(FixedGroups::USERS, FixedGroups::ANONYMOUS); foreach ($allGroups as $gid) { $obj = $groupperm_handler->create(); $obj->setVar("gperm_groupid", $gid); $obj->setVar("gperm_itemid", '1'); $obj->setVar("gperm_modid", '1'); $obj->setVar("gperm_name", 'module_read'); if (!$groupperm_handler->insert($obj)) { echo $xoops->alert('error', $obj->getHtmlErrors()); } } // Make system block visible $blockmodulelink_handler = $xoops->getHandlerBlockModuleLink(); $block_handler = $xoops->getHandlerBlock(); $blocks = $block_handler->getByModule(1); foreach ($blocks as $block) { if (in_array($block->getVar('template'), array('system_block_user.tpl', 'system_block_login.tpl', 'system_block_mainmenu.tpl'))) { $block->setVar('visible', 1); $block_handler->insert($block, true); $blockmodulelink = $blockmodulelink_handler->create(); $blockmodulelink->setVar('block_id', $block->getVar('bid')); $blockmodulelink->setVar('module_id', 0); //show on all pages $blockmodulelink_handler->insert($blockmodulelink); for ($i = 2; $i <= 3; ++$i) { $obj = $groupperm_handler->create(); $obj->setVar("gperm_groupid", $i); $obj->setVar("gperm_itemid", $block->id()); $obj->setVar("gperm_modid", '1'); $obj->setVar("gperm_name", 'block_read'); if (!$groupperm_handler->insert($obj)) { echo $xoops->alert('error', $obj->getHtmlErrors()); } } } } // default theme $tplset_handler = $xoops->getHandlerTplSet(); $obj = $tplset_handler->create(); $obj->setVar("tplset_name", 'default'); $obj->setVar("tplset_desc", 'XOOPS Default Template Set'); $obj->setVar("tplset_credits", ''); $obj->setVar("tplset_created", time()); if (!$tplset_handler->insert($obj)) { echo $xoops->alert('error', $obj->getHtmlErrors()); } // user admin // data for table 'groups_users_link' $types = array(\PDO::PARAM_INT, \PDO::PARAM_INT); $data = array('groupid' => FixedGroups::ADMIN, 'uid' => 1); $xoops->db()->insertPrefix('system_usergroup', $data, $types); $data = array('groupid' => FixedGroups::USERS, 'uid' => 1); $xoops->db()->insertPrefix('system_usergroup', $data, $types); }