コード例 #1
0
function nav_level_row($show_id, $show_home = 1)
{
    //returns a simple row based navigation
    if (is_array($show_id) && isset($show_id[1])) {
        $show_home = $show_id[2];
        $show_id = $show_id[1];
    }
    if (strtoupper($show_id) == 'CURRENT') {
        $act_cat_id = $GLOBALS['content']["cat_id"];
    } else {
        $act_cat_id = intval($show_id);
    }
    $nav = '';
    if ($show_home && $GLOBALS['content']['struct'][$act_cat_id]['acat_hidden'] != 1) {
        if ($GLOBALS['content']["cat_id"] == $act_cat_id) {
            $before = $GLOBALS['template_default']["nav_row"]["link_before_active"];
            $after = $GLOBALS['template_default']["nav_row"]["link_after_active"];
            $direct_before = $GLOBALS['template_default']["nav_row"]["link_direct_before_active"];
            $direct_after = $GLOBALS['template_default']["nav_row"]["link_direct_after_active"];
        } else {
            $before = $GLOBALS['template_default']["nav_row"]["link_before"];
            $after = $GLOBALS['template_default']["nav_row"]["link_after"];
            $direct_before = $GLOBALS['template_default']["nav_row"]["link_direct_before"];
            $direct_after = $GLOBALS['template_default']["nav_row"]["link_direct_after"];
        }
        $nav .= $before;
        $nav .= '<a href="index.php?';
        $nav .= $GLOBALS['content']['struct'][$act_cat_id]['acat_alias'] ? html_specialchars($GLOBALS['content']['struct'][$act_cat_id]['acat_alias']) : 'id=' . $act_cat_id;
        //',0,0,1,0,0';
        $nav .= '"' . (empty($GLOBALS['content']['struct'][$act_cat_id]["acat_class"]) ? '' : ' class="' . $GLOBALS['content']['struct'][$act_cat_id]["acat_class"] . '"') . '>' . $direct_before;
        $nav .= html_specialchars($GLOBALS['content']['struct'][$act_cat_id]['acat_name']);
        $nav .= $direct_after . '</a>' . $after;
    }
    // check against breadcrumb - active site tree
    if ($GLOBALS['content']['struct'][$GLOBALS['content']["cat_id"]]['acat_struct'] != 0) {
        $breadcrumb = get_breadcrumb($GLOBALS['content']["cat_id"], $GLOBALS['content']['struct']);
    }
    foreach ($GLOBALS['content']['struct'] as $key => $value) {
        if ($key != $act_cat_id && _getStructureLevelDisplayStatus($key, $act_cat_id)) {
            $class = empty($GLOBALS['content']['struct'][$key]["acat_class"]) ? '' : ' class="' . $GLOBALS['content']['struct'][$key]["acat_class"] . '"';
            if ($nav) {
                $nav .= $GLOBALS['template_default']["nav_row"]["between"];
            }
            if ($GLOBALS['content']["cat_id"] == $key || isset($breadcrumb[$key])) {
                $before = $GLOBALS['template_default']["nav_row"]["link_before_active"];
                $after = $GLOBALS['template_default']["nav_row"]["link_after_active"];
                $direct_before = $GLOBALS['template_default']["nav_row"]["link_direct_before_active"];
                $direct_after = $GLOBALS['template_default']["nav_row"]["link_direct_after_active"];
            } else {
                $before = $GLOBALS['template_default']["nav_row"]["link_before"];
                $after = $GLOBALS['template_default']["nav_row"]["link_after"];
                $direct_before = $GLOBALS['template_default']["nav_row"]["link_direct_before"];
                $direct_after = $GLOBALS['template_default']["nav_row"]["link_direct_after"];
            }
            $nav .= $before;
            if (!$GLOBALS['content']['struct'][$key]["acat_redirect"]) {
                $nav .= '<a href="index.php?';
                if ($GLOBALS['content']['struct'][$key]["acat_alias"]) {
                    $nav .= html_specialchars($GLOBALS['content']['struct'][$key]["acat_alias"]);
                } else {
                    $nav .= 'id=' . $key;
                    //',0,0,1,0,0';
                }
                $nav .= '"' . $class . '>';
            } else {
                $redirect = get_redirect_link($GLOBALS['content']['struct'][$key]["acat_redirect"], ' ', '');
                $nav .= '<a href="' . $redirect['link'] . '"' . $redirect['target'] . $class . '>';
            }
            $nav .= $direct_before;
            $nav .= html_specialchars($GLOBALS['content']['struct'][$key]['acat_name']);
            $nav .= $direct_after . '</a>' . $after;
        }
    }
    if ($nav) {
        $nav = $GLOBALS['template_default']["nav_row"]["before"] . $nav;
        $nav .= $GLOBALS['template_default']["nav_row"]["after"];
    }
    return $nav;
}
コード例 #2
0
ファイル: front.func.inc.php プロジェクト: EDVLanger/phpwcms
function getStructureChildData($level_id = 0)
{
    if (!isset($GLOBALS['content']['struct'][$level_id])) {
        return array();
    }
    $struct_data = array();
    foreach ($GLOBALS['content']['struct'] as $key => $value) {
        if (_getStructureLevelDisplayStatus($key, $level_id)) {
            $struct_data[$key] = $value;
        }
    }
    return $struct_data;
}
コード例 #3
0
ファイル: h3_menu.php プロジェクト: Ideenkarosell/phpwcms
<?php

/**
 * Create menu where Top Level is <h3>Level</h3> and all submenu as <ul></ul>
 * good for having footer link blocks
 */
$h3 = array();
$start_id = 0;
foreach ($content['struct'] as $key => $item) {
    if ($item['acat_struct'] == 0 && _getStructureLevelDisplayStatus($key, $start_id)) {
        $h3[] = '<h3>' . get_level_ahref($key) . html_specialchars($item['acat_name']) . '</a></h3>';
        $h3[] = buildCascadingMenu(',' . $key);
        // the same as used behind {NAV_LIST_UL:...} - $key is the ID to start with
    }
}
$content['all'] = str_replace('{H3_MENU}', implode(LF, $h3), $content['all']);