19function b_legacy_mainmenu_show($options)
21 $root =& XCube_Root::getSingleton();
22 $xoopsModule =& $root->mContext->mXoopsModule;
23 $xoopsUser =& $root->mController->mRoot->mContext->mXoopsUser;
26 $block[
'_display_'] =
true;
28 $block[
'icon'] = $options[1] ??
'';
29 $module_handler =& xoops_gethandler(
'module');
31 $criteria->add(
new Criteria(
'isactive', 1));
32 $criteria->add(
new Criteria(
'weight', 0,
'>'));
33 $modules =& $module_handler->getObjects($criteria,
true);
34 $moduleperm_handler =& xoops_gethandler(
'groupperm');
35 $groups = is_object($xoopsUser) ? $xoopsUser->getGroups() : XOOPS_GROUP_ANONYMOUS;
36 $read_allowed = $moduleperm_handler->getItemIds(
'module_read', $groups);
37 $all_links = (int)$options[0];
38 $mid = is_object($xoopsModule)?$xoopsModule->getVar(
'mid',
'N'):
'';
39 foreach (array_keys($modules) as $i) {
40 if (in_array($i, $read_allowed)) {
41 $module = &$modules[$i];
42 $blockm = &$block[
'modules'][$i];
43 $blockm[
'name'] = $module->getVar(
'name');
44 if (!empty($options[1])) {
45 $blockm[
'icon'] = $module->getInfo(
'icon');
47 $moddir = XOOPS_URL.
'/modules/';
48 $moddir .= $blockm[
'directory'] = $module->getVar(
'dirname',
'N');
49 $info = $module->getInfo();
50 $sublinks =& $module->subLink();
51 if ((is_countable($sublinks) ? count($sublinks) : 0)>0 && ($all_links || $i==$mid)) {
52 foreach ($sublinks as $sublink) {
53 $blockm[
'sublinks'][] = [
'name' => $sublink[
'name'],
'url' => $moddir .
'/' . $sublink[
'url']];
56 $blockm[
'sublinks'] = [];
63function b_legacy_mainmenu_edit($options)
65 $off=
'checked="checked"';
71 $icon_off =
'checked="checked"';
77 return '<div><p>' . _MB_LEGACY_MAINMENU_EXPAND_SUB .
78 "<input type=\"radio\" name=\"options[0]\" value=\"0\" $off>" . _NO .
79 " <input type=\"radio\" name=\"options[0]\" value=\"1\" $on>" . _YES .
80 "</p><p>Show module icon
81 <input type=\"radio\" name=\"options[1]\" value=\"0\" $icon_off>" . _NO .
82 " <input type=\"radio\" name=\"options[1]\" value=\"1\" $icon_on>" . _YES .
'