Exemple #1
0
function nexcontent_recursiveView(&$node, $cid)
{
    global $_CONF, $_TABLES, $catid;
    $sql = "SELECT id,pid,name FROM {$_TABLES['nexcontent_pages']} WHERE pid ='{$cid}' AND type='category'";
    $sql .= COM_getPermSQL('AND');
    $sql .= ' ORDER BY pageorder,id';
    $query = DB_QUERY($sql);
    while (list($id, $pid, $name) = DB_fetchARRAY($query)) {
        //echo "<br>subfunction -> id:$id, pid:$pid, name:$name";
        $pquery = DB_query("SELECT id FROM {$_TABLES['nexcontent_pages']} WHERE pid='{$id}' AND type='page'");
        $numpages = DB_numRows($pquery);
        if ($numpages > 0) {
            $name = $name . '&nbsp;(' . $numpages . ')';
        }
        if ($catid == $id) {
            $name = '<span class="treeMenuSelected">' . $name . '</span>';
        }
        // Check and see if this category has any sub categories - where a category record has this cid as it's parent
        if (DB_COUNT($_TABLES['nexcontent_pages'], 'pid', $id) > 0) {
            $subnode[$id] = new HTML_TreeNode(array('text' => $name, 'link' => $_CONF['site_admin_url'] . "/plugins/nexcontent/index.php?catid=" . $id, 'icon' => 'folder.gif'));
            nexcontent_recursiveView($subnode[$id], $id);
            $node->addItem($subnode[$id]);
        } else {
            $node->addItem(new HTML_TreeNode(array('text' => $name, 'link' => $_CONF['site_admin_url'] . "/plugins/nexcontent/index.php?catid=" . $id, 'icon' => 'folder.gif')));
        }
    }
}
Exemple #2
0
function displayPages($catid)
{
    global $_CONF, $CONF_SE, $_TABLES, $statusmsg, $type, $LANG_SE02;
    $menu = new HTML_TreeMenu();
    if ($catid != 0) {
        $parentCatid = DB_getItem($_TABLES['nexcontent_pages'], 'pid', "id='{$catid}'");
        $node[0] = new HTML_TreeNode(array('text' => 'up one level', 'link' => $_CONF['site_admin_url'] . "/plugins/nexcontent/index.php?catid={$parentCatid}", 'icon' => 'folder.gif'));
        $menu->addItem($node[0]);
        $label = DB_getItem($_TABLES['nexcontent_pages'], 'name', "id='{$catid}'");
        $psql = "SELECT id FROM {$_TABLES['nexcontent_pages']} WHERE pid='{$catid}' AND (type='page' OR type='link')";
        $psql .= COM_getPermSQL('AND');
        $psql .= ' ORDER BY pageorder, id asc';
        $pquery = DB_query($psql);
        $numpages = DB_numRows($pquery);
        if ($numpages > 0) {
            $label = $label . '&nbsp;(' . $numpages . ')';
        }
        $label = '<span class="treeMenuSelected">' . $label . '</span>';
        $node[$catid] = new HTML_TreeNode(array('text' => $label, 'link' => $_CONF['site_admin_url'] . "/plugins/nexcontent/index.php?catid=" . $catid, 'icon' => 'folder.gif'));
        nexcontent_recursiveView($node[$catid], $catid);
        $menu->addItem($node[$catid]);
    } else {
        $msql = "SELECT id,pid,name,pageorder from {$_TABLES['nexcontent_pages']} WHERE pid='0' and type='category'";
        $msql .= COM_getPermSQL('AND');
        $msql .= ' ORDER BY pageorder, id asc';
        $mquery = DB_QUERY($msql);
        while (list($id, $category, $name, $order) = DB_fetchARRAY($mquery)) {
            //echo "<br>id:$id, cat: $category, name:$name, order:$order";
            if ($catid != 0 and $catid == $id) {
                $name = '<span class="treeMenuSelected">' . $name . '</span>';
            }
            $pquery = DB_query("SELECT id FROM {$_TABLES['nexcontent_pages']} WHERE pid='{$id}' AND (type='page' OR type='link')");
            $numpages = DB_numRows($pquery);
            if ($numpages > 0) {
                $name = $name . '&nbsp;(' . $numpages . ')';
            }
            $node[$id] = new HTML_TreeNode(array('text' => $name, 'link' => $_CONF['site_admin_url'] . "/plugins/nexcontent/index.php?catid=" . $id, 'icon' => 'folder.gif'));
            nexcontent_recursiveView($node[$id], $id);
            $menu->addItem($node[$id]);
        }
    }
    $treeMenu =& new HTML_TreeMenu_DHTML($menu, array('images' => $_CONF['layout_url'] . '/nexpro/images/treemenu', 'defaultClass' => 'treeMenuDefault'));
    $q = DB_query("SELECT id,name from {$_TABLES['nexcontent_pages']} WHERE type='category' ORDER BY id");
    $selCategories = '<option value="0">Top Level</option>' . LB;
    $selCategories .= nexcontent_getFolderList($catid);
    /* Retrieve all the pages for the selected category */
    $sql = "SELECT id,sid,pageorder,name,hits,type,menutype,submenu_item,is_draft FROM {$_TABLES['nexcontent_pages']} WHERE pid='{$catid}' or id='{$catid}'";
    $sql .= COM_getPermSQL('AND');
    //$sql .= '  ORDER by type, pid,pageorder';
    $sql .= '  ORDER by pid,pageorder';
    $query = DB_query($sql);
    $mainview = new Template($_CONF['path_layout'] . 'nexcontent/admin');
    $mainview->set_file(array('mainview' => 'pageview.thtml', 'msgline' => 'alertline.thtml', 'records' => 'pagerecords.thtml'));
    $mainview->set_var('navbar', nexcontent_showNavbar($LANG_SE02['1']));
    $mainview->set_var('type', $type);
    $mainview->set_var('catid', $catid);
    $mainview->set_var('folderview', $treeMenu->toHTML());
    $mainview->set_var('phpself', $_SERVER['PHP_SELF']);
    if ($statusmsg != '') {
        $mainview->set_var('alertmsg', $statusmsg);
    } else {
        $mainview->set_var('alertmsg', '');
        $mainview->set_var('msgmode', 'none');
    }
    $mainview->set_var('filteroptions', $selCategories);
    $mainview->parse('alertline', 'msgline', true);
    $mainview->set_var('HEADING1', 'ID');
    $mainview->set_var('HEADING2', 'Name');
    $mainview->set_var('HEADING3', 'Hits');
    $mainview->set_var('HEADING4', 'Menu Type');
    $mainview->set_var('HEADING5', 'Draft');
    $mainview->set_var('HEADING6', 'Action');
    $mainview->set_var('imgset', $CONF_SE['public_url'] . '/images');
    $mainview->set_var('site_url', $_CONF['site_url']);
    $mainview->set_var('site_admin_url', $_CONF['site_admin_url']);
    $mainview->set_var('layout_url', $_CONF['layout_url']);
    $mainview->set_var('nexcontent_url', $CONF_SE['public_url']);
    $i = 1;
    $currentCategory = '';
    $pageOrd = 10;
    $stepNumber = 10;
    while (list($id, $sid, $order, $name, $hits, $type, $menutype, $submenu, $is_draft) = DB_fetchArray($query)) {
        if ($type == 'page' and $currentCategory != $category) {
            $pageOrd = 10;
            $currentCategory = $category;
        }
        if ($id != $catid and $order != $pageOrd) {
            DB_query("UPDATE {$_TABLES['nexcontent_pages']} SET pageorder = '{$pageOrd}' WHERE id = '{$id}'");
            $order = $pageOrd;
        }
        $pageOrd += $stepNumber;
        $check1 = $submenu >= 1 ? ' CHECKED' : '';
        $check2 = $is_draft == 1 ? ' CHECKED' : '';
        if ($type == 'category') {
            $mainview->set_var('pagelink', "{$_CONF['site_admin_url']}/plugins/nexcontent/index.php?catid={$id}");
            $mainview->set_var('pageimage', '<img src="' . $_CONF['layout_url'] . '/nexcontent/images/admin/sitecategory.gif">');
            $editop = 'editCategory';
        } else {
            if ($type == 'link') {
                $mainview->set_var('pagelink', "{$_CONF['site_admin_url']}/plugins/nexcontent/index.php?op=editLink&pageid={$id}");
                $mainview->set_var('pageimage', '<img src="' . $_CONF['layout_url'] . '/nexcontent/images/admin/sitelink.gif">');
                $editop = 'editLink';
            } else {
                $mainview->set_var('pagelink', "{$_CONF['site_admin_url']}/plugins/nexcontent/index.php?op=editPage&pageid={$id}");
                $mainview->set_var('pageimage', '<img src="' . $_CONF['layout_url'] . '/nexcontent/images/admin/sitepage.gif">');
                $editop = 'editPage';
            }
        }
        $menuoptions = '';
        foreach ($CONF_SE['menuoptions'] as $value => $label) {
            if ($name == 'frontpage') {
                if ($value == '0') {
                    $menuoptions .= '<option value="' . $value . '">' . $label . '</option>';
                }
            } elseif ($value == 0 or $type == 'page' and $value == 3 or $type == 'link' and $value == 3) {
                if ($value == $menutype) {
                    $menuoptions .= '<option value="' . $value . '" SELECTED=SELECTED>' . $label . '</option>';
                } else {
                    $menuoptions .= '<option value="' . $value . '">' . $label . '</option>';
                }
            } elseif ($type == 'category' and ($catid > 0 or $value != 3)) {
                if ($value == $menutype) {
                    $menuoptions .= '<option value="' . $value . '" SELECTED=SELECTED>' . $label . '</option>';
                } else {
                    $menuoptions .= '<option value="' . $value . '">' . $label . '</option>';
                }
            }
        }
        $mainview->set_var('menuoptions', $menuoptions);
        $sql = "SELECT id FROM {$_TABLES['nexcontent_pages']} WHERE id='{$id}' ";
        $sql .= COM_getPermSQL('AND', 0, 3);
        $pquery = DB_query($sql);
        if (DB_numRows($pquery) > 0) {
            $link = '&nbsp;<a href="' . $_CONF['site_admin_url'] . '/plugins/nexcontent/index.php?op=';
            $editimg = '<img src="' . $_CONF['layout_url'] . '/nexcontent/images/admin/edit.gif" TITLE="Edit Page" border="0">';
            $editlink = $link . $editop . '&pageid=' . $id . '">' . $editimg . '</a>';
            $copyimg = '<img src="' . $_CONF['layout_url'] . '/nexcontent/images/admin/copy.gif" TITLE="Copy Page" border="0">';
            $copylink = $link . 'copyPage&pageid=' . $id . '">' . $copyimg . '</a>';
            $LANG_CONFIRM = 'Please confirm that you want to delete this page and any associated images';
            $deleteimg = '<img src="' . $_CONF['layout_url'] . '/nexcontent/images/admin/delete.gif" TITLE="Delete Page" border="0">';
            $deletelink = $link . 'delPage&pageid=' . $id . '" onclick="return confirm(\'' . $LANG_CONFIRM . '\');">' . $deleteimg . '</a>';
        } else {
            $editlink = '';
            $deletelink = '';
        }
        $mainview->set_var('sid', $sid);
        $mainview->set_var('cssid', $i);
        $mainview->set_var('pageid', $id);
        $mainview->set_var('pagename', $name);
        $mainview->set_var('hits', $hits);
        $mainview->set_var('order', $order);
        $mainview->set_var('check1', $check1);
        $mainview->set_var('check2', $check2);
        $mainview->set_var('LANG_EDIT', 'Edit Page');
        $mainview->set_var('editlink', $editlink);
        $mainview->set_var('copylink', $copylink);
        $mainview->set_var('LANG_DELETE', 'Delete Page');
        $mainview->set_var('deletelink', $deletelink);
        $mainview->set_var('LANG_MOVEUP', 'Move Page Up');
        $mainview->set_var('LANG_MOVEDN', 'Move Page Down');
        $mainview->set_var('LANG_PREVIEW', 'Preview this page');
        $mainview->parse('page_records', 'records', true);
        $i = $i == 2 ? 1 : 2;
    }
    $mainview->parse('output', 'mainview');
    $retval .= $mainview->finish($mainview->get_var('output'));
    return $retval;
}