function cms_menu_build_complete_url($default_id, $block_id, $link, $menu_icon, $show_icon = true)
{
    global $db, $cache, $config, $user, $lang, $template, $theme, $images;
    global $default_links_array;
    if (empty($default_links_array)) {
        $default_links_array = cms_menu_default_links_array();
    }
    if (!empty($default_links_array[$default_id]['function'])) {
        $eval_f = $default_links_array[$default_id]['function'];
        eval('$new_link_array = ' . $eval_f . ';');
        $default_links_array[$default_id] = $new_link_array;
    }
    if (!empty($default_links_array[$default_id]['noicon'])) {
        $menu_icon = '';
    }
    if (!empty($default_links_array[$default_id]['full_link'])) {
        $menu_url = $menu_icon . $default_links_array[$default_id]['full_link'];
    } else {
        $menu_name_lang_value = $lang[$default_links_array[$default_id]['lang']];
        $menu_name = !empty($menu_name_lang_value) ? $menu_name_lang_value : $lang['MENU_EMPTY_LINK'];
        $menu_url_title = !empty($default_links_array[$default_id]['title']) ? ' title="' . htmlspecialchars($default_links_array[$default_id]['title']) . '"' : '';
        if (!empty($default_links_array[$default_id]['sid'])) {
            $menu_link = $default_links_array[$default_id]['link'] . '?sid=' . $user->data['session_id'];
        } else {
            $menu_link = append_sid($default_links_array[$default_id]['link']);
        }
        $menu_url = '<a href="' . $menu_link . '"' . $menu_url_title . '>' . (!empty($show_icon) ? $menu_icon : '') . htmlspecialchars($menu_name) . '</a>';
    }
    return $menu_url;
}
Beispiel #2
0
 function cms_block_index()
 {
     global $db, $cache, $config, $template, $theme, $images, $user, $lang, $table_prefix, $block_id, $cms_config_vars;
     global $ip_cms;
     // Before starting with the loop... let's load the full menu links array!
     if (!function_exists('cms_menu_default_links_array')) {
         include_once IP_ROOT_PATH . 'includes/functions_cms_menu.' . PHP_EXT;
     }
     $default_links_array = cms_menu_default_links_array();
     $template->_tpldata['index_row.'] = array();
     $template->_tpldata['menu_row.'] = array();
     $template->_tpldata['index_col.'] = array();
     $template->_tpldata['index_items.'] = array();
     $sql = "SELECT * FROM " . CMS_NAV_MENU_TABLE . "\n\t\t\t\t\t\tWHERE menu_id = '" . intval($cms_config_vars['md_menu_id'][$block_id]) . "'\n\t\t\t\t\t\t\tLIMIT 1";
     $result = $db->sql_query($sql, 0, 'cms_menu_', CMS_CACHE_FOLDER);
     //$row = $db->sql_fetchrow($result);
     while ($row = $db->sql_fetchrow($result)) {
         break;
     }
     $db->sql_freeresult($result);
     if ($row['menu_name_lang'] != '' && isset($lang[$row['menu_name_lang']])) {
         $main_menu_name = $lang[$row['menu_name_lang']];
     } else {
         $main_menu_name = $row['menu_name'] != '' ? $row['menu_name'] : $lang['quick_links'];
     }
     $sql = "SELECT * FROM " . CMS_NAV_MENU_TABLE . "\n\t\t\t\t\t\tWHERE menu_parent_id = '" . intval($cms_config_vars['md_menu_id'][$block_id]) . "'\n\t\t\t\t\t\tORDER BY cat_parent_id ASC, menu_order ASC";
     $result = $db->sql_query($sql, 0, 'cms_menu_', CMS_CACHE_FOLDER);
     $menu_cat = array();
     $cat_item = array();
     $menu_item = array();
     $print_cat = array();
     $auth_levels = $ip_cms->cms_auth_view();
     while ($menu_item = $db->sql_fetchrow($result)) {
         if ($menu_item['cat_id'] > 0) {
             $cat_item[$menu_item['cat_id']] = $menu_item;
         }
         if ($menu_item['cat_parent_id'] > 0) {
             $menu_cat[$menu_item['cat_parent_id']][$menu_item['menu_item_id']] = $menu_item;
         }
     }
     $db->sql_freeresult($result);
     $count = 0;
     foreach ($cat_item as $cat_item_data) {
         if ($cat_item_data['menu_status'] == false) {
             $cat_allowed = false;
         } else {
             $auth_level_req = $cat_item_data['auth_view'];
             $cat_allowed = in_array($auth_level_req, $auth_levels) ? true : false;
         }
         if (!empty($cat_allowed)) {
             $print_cat[$count] = $cat_item_data;
             $count++;
         }
     }
     $icons = sizeof($print_cat);
     $row_width = 100 / $cms_config_vars['md_col'][$block_id];
     for ($i = 0; $i < sizeof($cat_item); $i += $cms_config_vars['md_col'][$block_id]) {
         if ($icons > 0) {
             $template->assign_block_vars('index_row', array());
         }
         for ($j = $i; $j < $i + $cms_config_vars['md_col'][$block_id]; $j++) {
             if ($j >= $icons) {
                 break;
             }
             $cat_id = $print_cat[$j]['cat_id'];
             $row_class = $cms_config_vars['md_show_background'][$block_id] == true ? 'row1' : '';
             $row_class_h = $cms_config_vars['md_show_background'][$block_id] == true ? 'row1h' : '';
             if ($cms_config_vars['md_show_title'][$block_id] == true) {
                 if ($print_cat[$j]['menu_name_lang'] != '' && isset($lang['menu_item'][$print_cat[$j]['menu_name_lang']])) {
                     $cat_name = $lang['menu_item'][$print_cat[$j]['menu_name_lang']];
                 } else {
                     $cat_name = $print_cat[$j]['menu_name'] != '' ? stripslashes($print_cat[$j]['menu_name']) : 'cat_item' . $print_cat[$j]['cat_id'];
                 }
                 $template->assign_block_vars('index_row.index_items', array('ROW_CLASS' => $row_class, 'CAT_ITEM' => $cat_name, 'ROW_WIDTH' => $row_width));
             }
             $cat_icon = $print_cat[$j]['menu_icon'] != '' ? '<img src="' . $print_cat[$j]['menu_icon'] . '" alt="" title="' . $cat_name . '" style="vertical-align:middle;" />&nbsp;&nbsp;' : '<img src="' . $images['nav_menu_sep'] . '" alt="" title="" style="vertical-align:middle;" />&nbsp;&nbsp;';
             if ($print_cat[$j]['menu_link'] != '') {
                 $cat_link = append_sid($print_cat[$j]['menu_link']);
                 if ($print_cat[$j]['menu_link_external'] == true) {
                     $cat_link .= '" target="_blank';
                 }
             }
             $template->assign_block_vars('index_row.index_col', array('ROW_CLASS' => $row_class_h, 'CAT_ICON' => $cat_icon));
             foreach ($menu_cat[$cat_id] as $menu_cat_item_data) {
                 if ($menu_cat_item_data['menu_status'] == false) {
                     $menu_allowed = false;
                 } else {
                     $auth_level_req = $menu_cat_item_data['auth_view'];
                     $menu_allowed = in_array($auth_level_req, $auth_levels) ? true : false;
                 }
                 if (!empty($menu_allowed)) {
                     //echo($menu_cat_item_data['menu_name'] . '<br />');
                     $menu_link = cms_menu_build_link($menu_cat_item_data, $block_id, true);
                     if (empty($cms_config_vars['md_show_links_icon'][$block_id])) {
                         $menu_link['icon'] = '';
                     }
                     if (!empty($cms_config_vars['md_show_desc'][$block_id])) {
                         $menu_desc = $menu_cat_item_data['menu_desc'];
                     }
                     $template->assign_block_vars('index_row.index_col.menu_row', array('MENU_ICON' => $menu_link['icon'], 'MENU_ITEM' => $menu_link['name'], 'MENU_LINK' => $menu_link['link'], 'MENU_URL' => $menu_link['url'], 'MENU_DESC' => $menu_desc));
                 }
             }
         }
     }
     $template->assign_vars(array('MAIN_MENU_ID' => $block_id, 'MAIN_MENU_NAME' => $main_menu_name));
 }
Beispiel #3
0
    $s_append_url .= '&amp;m_id=' . $m_id;
} else {
    $m_id = false;
}
if ($item_type != false) {
    $s_hidden_fields .= '<input type="hidden" name="item_type" value="' . $item_type . '" />';
    $s_append_url .= '&amp;item_type=' . $item_type;
} else {
    $item_type = false;
}
$mi_menu_icon_sel_name = 'icon_img_sel';
$mi_menu_icon_input_name = 'menu_icon';
//echo($s_hidden_fields);
//echo($s_append_url);
// Before starting with the loop... let's load the full menu links array!
$default_links_array = cms_menu_default_links_array();
if ($mode == 'menu_item') {
    if ($action == 'add' || $action == 'edit') {
        //$mi_menu_item_id = '';
        $mi_menu_id = '';
        $mi_menu_parent_id = '';
        $mi_cat_id = '';
        $mi_cat_parent_id = '';
        $mi_menu_status = '';
        $mi_menu_order = '';
        $mi_menu_icon = '';
        $mi_menu_name_lang = '';
        $mi_menu_name = '';
        $mi_menu_desc = '';
        $mi_menu_default = '';
        $mi_menu_disabled = '';
 function cms_block_global_header_simple_menu()
 {
     global $db, $cache, $config, $template, $theme, $images, $table_prefix, $user, $lang, $block_id, $cms_config_vars;
     global $ip_cms;
     // Before starting with the loop... let's load the full menu links array!
     if (!function_exists('cms_menu_default_links_array')) {
         include_once IP_ROOT_PATH . 'includes/functions_cms_menu.' . PHP_EXT;
     }
     $default_links_array = cms_menu_default_links_array();
     $template->_tpldata['header_row.'] = array();
     $template->_tpldata['header_desc.'] = array();
     $sql = "SELECT * FROM " . CMS_NAV_MENU_TABLE . "\n\t\t\t\t\t\tWHERE menu_id = '" . intval($cms_config_vars['md_menu_id'][$block_id]) . "'\n\t\t\t\t\t\t\tLIMIT 1";
     $result = $db->sql_query($sql, 0, 'cms_menu_', CMS_CACHE_FOLDER);
     //$row = $db->sql_fetchrow($result);
     while ($row = $db->sql_fetchrow($result)) {
         break;
     }
     $db->sql_freeresult($result);
     if ($row['menu_name_lang'] != '' && isset($lang[$row['menu_name_lang']])) {
         $main_menu_name = $lang[$row['menu_name_lang']];
     } else {
         $main_menu_name = $row['menu_name'] != '' ? $row['menu_name'] : $lang['quick_links'];
     }
     $sql = "SELECT * FROM " . CMS_NAV_MENU_TABLE . "\n\t\t\t\t\t\tWHERE menu_parent_id = '" . intval($cms_config_vars['md_menu_id'][$block_id]) . "'\n\t\t\t\t\t\tORDER BY cat_parent_id ASC, menu_order ASC";
     $result = $db->sql_query($sql, 0, 'cms_menu_', CMS_CACHE_FOLDER);
     $menu_cat = array();
     $cat_item = array();
     $menu_item = array();
     $print_cat = array();
     $first_item = 0;
     $auth_levels = $ip_cms->cms_auth_view();
     while ($menu_item = $db->sql_fetchrow($result)) {
         if ($menu_item['cat_id'] > 0) {
             $cat_item[$menu_item['cat_id']] = $menu_item;
         }
         if ($menu_item['cat_parent_id'] > 0) {
             $menu_cat[$menu_item['cat_parent_id']][$menu_item['menu_item_id']] = $menu_item;
         }
     }
     $db->sql_freeresult($result);
     foreach ($cat_item as $cat_item_data) {
         if ($cat_item_data['menu_status'] == false) {
             $cat_allowed = false;
         } else {
             $auth_level_req = $cat_item_data['auth_view'];
             $cat_allowed = in_array($auth_level_req, $auth_levels) ? true : false;
             $cat_id = $cat_item_data['cat_id'];
             foreach ($menu_cat[$cat_id] as $menu_cat_item_data) {
                 if ($menu_cat_item_data['menu_status'] == false) {
                     $menu_allowed = false;
                 } else {
                     $auth_level_req = $menu_cat_item_data['auth_view'];
                     $menu_allowed = in_array($auth_level_req, $auth_levels) ? true : false;
                 }
                 if (!empty($menu_allowed)) {
                     //echo($menu_cat_item_data['menu_name'] . '<br />');
                     $menu_sep = '<img src="' . $images['nav_menu_sep'] . '" alt="" title="" style="vertical-align: middle;" />';
                     if ($first_item == 0) {
                         $menu_sep = '';
                         $first_item++;
                     }
                     $menu_link = cms_menu_build_link($menu_cat_item_data, $block_id, false);
                     $template->assign_block_vars('header_row', array('MENU_SEP' => $menu_sep, 'MENU_ITEM' => $menu_link['name'], 'MENU_LINK' => $menu_link['link'], 'MENU_URL' => $menu_link['url']));
                 }
             }
         }
     }
     if ($cms_config_vars['md_show_desc'][$block_id] == true) {
         $template->assign_block_vars('header_desc', array());
     }
     $template->assign_vars(array('MAIN_MENU_ID' => $block_id, 'MAIN_MENU_NAME' => $main_menu_name));
 }
Beispiel #5
0
 function cms_block_dyn_menu()
 {
     global $db, $cache, $config, $template, $theme, $images, $user, $lang, $table_prefix, $block_id, $cms_config_vars;
     global $ip_cms;
     // Before starting with the loop... let's load the full menu links array!
     if (!function_exists('cms_menu_default_links_array')) {
         include_once IP_ROOT_PATH . 'includes/functions_cms_menu.' . PHP_EXT;
     }
     $default_links_array = cms_menu_default_links_array();
     $template->_tpldata['cat_row.'] = array();
     $template->_tpldata['menu_row.'] = array();
     $template->_tpldata['show_hide.'] = array();
     $sql = "SELECT * FROM " . CMS_NAV_MENU_TABLE . "\n\t\t\t\t\t\tWHERE menu_id = '" . intval($cms_config_vars['md_menu_id'][$block_id]) . "'\n\t\t\t\t\t\t\tLIMIT 1";
     $result = $db->sql_query($sql, 0, 'cms_menu_', CMS_CACHE_FOLDER);
     while ($row = $db->sql_fetchrow($result)) {
         break;
     }
     $db->sql_freeresult($result);
     if ($row['menu_name_lang'] != '' && isset($lang[$row['menu_name_lang']])) {
         $main_menu_name = $lang[$row['menu_name_lang']];
     } else {
         $main_menu_name = $row['menu_name'] != '' ? $row['menu_name'] : $lang['quick_links'];
     }
     $sql = "SELECT * FROM " . CMS_NAV_MENU_TABLE . "\n\t\t\t\t\t\tWHERE menu_parent_id = '" . intval($cms_config_vars['md_menu_id'][$block_id]) . "'\n\t\t\t\t\t\tORDER BY cat_parent_id ASC, menu_order ASC";
     $result = $db->sql_query($sql, 0, 'cms_menu_', CMS_CACHE_FOLDER);
     $menu_cat = array();
     $cat_item = array();
     $menu_item = array();
     $auth_levels = $ip_cms->cms_auth_view();
     while ($menu_item = $db->sql_fetchrow($result)) {
         if ($menu_item['cat_id'] > 0) {
             $cat_item[$menu_item['cat_id']] = $menu_item;
         }
         if ($menu_item['cat_parent_id'] > 0) {
             $menu_cat[$menu_item['cat_parent_id']][$menu_item['menu_item_id']] = $menu_item;
         }
     }
     $db->sql_freeresult($result);
     foreach ($cat_item as $cat_item_data) {
         if ($cat_item_data['menu_status'] == false) {
             $cat_allowed = false;
         } else {
             $auth_level_req = $cat_item_data['auth_view'];
             $cat_allowed = in_array($auth_level_req, $auth_levels) ? true : false;
         }
         if (!empty($cat_allowed)) {
             $cat_id = $cat_item_data['cat_id'];
             if ($cat_item_data['menu_name_lang'] != '' && isset($lang['menu_item'][$cat_item_data['menu_name_lang']])) {
                 $cat_name = $lang['menu_item'][$cat_item_data['menu_name_lang']];
             } else {
                 $cat_name = $cat_item_data['menu_name'] != '' ? htmlspecialchars(stripslashes($cat_item_data['menu_name'])) : 'cat_item' . $cat_item_data['cat_id'];
             }
             $cat_icon = $cat_item_data['menu_icon'] != '' ? '<img src="' . $cat_item_data['menu_icon'] . '" alt="" title="' . $cat_name . '" style="vertical-align: middle;" />&nbsp;&nbsp;' : '<img src="' . $images['nav_menu_sep'] . '" alt="" title="" style="vertical-align: middle;" />&nbsp;&nbsp;';
             if ($cat_item_data['menu_link'] != '') {
                 $cat_link = append_sid($cat_item_data['menu_link']);
                 if ($cat_item_data['menu_link_external'] == true) {
                     $cat_link .= '" target="_blank';
                 }
             }
             $template->assign_block_vars('cat_row', array('CAT_ID' => $cat_item_data['menu_parent_id'] . '_' . $cat_item_data['cat_id'], 'CAT_ITEM' => $cat_name, 'CAT_ICON' => $cat_icon));
             if (!empty($menu_cat[$cat_id])) {
                 foreach ($menu_cat[$cat_id] as $menu_cat_item_data) {
                     if ($menu_cat_item_data['menu_status'] == false) {
                         $menu_allowed = false;
                     } else {
                         $auth_level_req = $menu_cat_item_data['auth_view'];
                         $menu_allowed = in_array($auth_level_req, $auth_levels) ? true : false;
                     }
                     if ($menu_allowed) {
                         $menu_link = cms_menu_build_link($menu_cat_item_data, $block_id, true);
                         $template->assign_block_vars('cat_row.menu_row', array('MENU_ICON' => $menu_link['icon'], 'MENU_ITEM' => $menu_link['name'], 'MENU_LINK' => $menu_link['link'], 'MENU_URL' => $menu_link['url']));
                     }
                 }
             }
         }
     }
     $show_hide_switch = empty($user->data['is_bot']) && !empty($cms_config_vars['md_menu_show_hide'][$block_id]) ? true : false;
     if (!empty($show_hide_switch)) {
         $template->assign_block_vars('show_hide_switch', array());
     }
     $template->assign_vars(array('MAIN_MENU_ID' => $block_id, 'MAIN_MENU_NAME' => $main_menu_name));
 }