private function templateSites() { require_once GWF_CORE_PATH . 'module/WeChall/WC_SiteAdmin.php'; require_once GWF_CORE_PATH . 'module/WeChall/WC_SiteCats.php'; require_once GWF_CORE_PATH . 'module/WeChall/WC_SiteDescr.php'; $tag = Common::getGet('tag', ''); if (0 === ($tag_bit = WC_SiteCats::getBitForCat($tag))) { $tag = ''; } $this->setPageDescription($tag); $status_query = $this->getStatusQuery(); $lang_query = $this->getLangQuery(); $tag_query = $this->getTagQuery($tag_bit); $ipp = $this->module->cfgItemsPerPage(); $by = Common::getGet('by', 'site_id'); $dir = Common::getGet('dir', 'DESC'); $page = intval(Common::getGet('page', 1)); $table = GDO::table('WC_Site'); $orderby = $table->getMultiOrderby($by, $dir); $conditions = "({$status_query}) AND ({$lang_query}) AND ({$tag_query})"; $nItems = $table->countRows($conditions); $nPages = GWF_PageMenu::getPagecount($ipp, $nItems); $page = Common::clamp($page, 1, $nPages); $href = $this->getPageMenuHREF(); $tVars = array('sites' => $table->selectObjects('*', $conditions, $orderby, $ipp, GWF_PageMenu::getFrom($page, $ipp)), 'descrs' => WC_SiteDescr::getAllDescr(), 'site_quickjump' => $this->module->templateSiteQuickjumpDetail(), 'pagemenu' => GWF_PageMenu::display($page, $nPages, $href), 'sortURL' => $this->getTableSortURL(), 'which' => intval(Common::getGet('which')), 'tag' => $tag, 'page_title' => $this->pageTitle); return $this->module->templatePHP('sites.php', $tVars); }