コード例 #1
0
 public function lists()
 {
     //获取地址栏参数并读取栏目缓存信息
     $url = get_url_where();
     //获取栏目信息缓存
     if ($url['id']) {
         $list = list_search(F('_gxcms/channel'), 'id=' . $url['id']);
     } else {
         $list = F('_gxcms/channel');
     }
     $channel = $list[0];
     //组合查询条件并得到本类及小类条件数据统计
     $where['status'] = array('eq', 1);
     if ($url['id']) {
         if (get_channel_son($url['id'])) {
             $where['cid'] = $url['id'];
         } else {
             $where['cid'] = get_channel_sqlin($url['id']);
         }
         $jumpurl['id'] = $url['id'];
     }
     if ($url['year']) {
         switch ($url['year']) {
             case 1:
                 $s_start = 2000;
                 $s_end = 2009;
                 $where['year'] = array('between', array($s_start, $s_end));
                 break;
             case 2:
                 $s_start = 1990;
                 $s_end = 1999;
                 $where['year'] = array('between', array($s_start, $s_end));
                 break;
             case 3:
                 $s_start = 1980;
                 $s_end = 1989;
                 $where['year'] = array('between', array($s_start, $s_end));
                 break;
             case 4:
                 $s_start = 1970;
                 $s_end = 1979;
                 $where['year'] = array('between', array($s_start, $s_end));
                 break;
             default:
                 $where['year'] = array('eq', $url['year']);
                 break;
         }
         $jumpurl['year'] = $url['year'];
     }
     if ($url['letter']) {
         $where['letter'] = array('eq', $url['letter']);
         $jumpurl['letter'] = $url['letter'];
     }
     if ($url['area']) {
         $where['area'] = array('eq', '' . $url["area"] . '');
         $jumpurl['area'] = urlencode($url['area']);
     }
     if ($url['order'] != 'addtime') {
         $jumpurl['order'] = $url['order'];
     }
     $mcat = D('Stype')->list_cat($url['id']);
     if ($url['sid']) {
         $sid = $url['sid'];
         $nav = M('Stype')->where("m_cid = {$url['sid']}")->find();
         $this->assign('nav_title_stype', $nav['m_name']);
         $where['_string'] = "FIND_IN_SET({$sid},stype_mcid)";
     }
     $rs = M('Video');
     $count = $rs->where($where)->count('id');
     //组合分页信息(强制为动态模式)
     C('url_html_channel', 0);
     $totalpages = ceil($count / $channel['limit']);
     if ($url['page'] > $totalpages) {
         $url['page'] = $totalpages;
     }
     $pages = '共' . $count . '部影片 当前:' . $url['page'] . '/' . $totalpages . '页 ';
     $pages .= get_cms_page_css($url['page'], $totalpages, C('web_home_pagenum'), get_show_url('video', $jumpurl, 3), false);
     //栏目模板赋值
     $channel['cid'] = $url['id'];
     $channel['order'] = $url['order'];
     $channel['page'] = $url['page'];
     $channel['letter'] = $url['letter'];
     $channel['year'] = $url['year'];
     $channel['area'] = urldecode($url['area']);
     $channel['pages'] = $pages;
     $channel['count'] = $count;
     $channel['pcount'] = get_channel_son($url['id']);
     //是否有子栏目
     if ($url['page'] > 1) {
         $channel['webtitle'] = $channel['ctitle'] ? $channel['ctitle'] . '-第' . $url['page'] . '页-' . C('web_name') : $channel['cname'] . '-第' . $url['page'] . '页-' . C('web_name');
     } else {
         $channel['webtitle'] = $channel['ctitle'] ? $channel['ctitle'] . '-' . C('web_name') : $channel['cname'] . '-' . C('web_name');
     }
     if ($channel['ckeywords']) {
         $channel['keywords'] = $channel['ckeywords'];
     }
     if ($channel['cdescription']) {
         $channel['description'] = $channel['cdescription'];
     }
     if ($channel['pid']) {
         $channel['navtitle'] = '<a href="' . C('web_path') . '">首页</a> &gt; <a href="' . $channel['showurl_p'] . '">' . $channel['cname_p'] . '</a> &gt; <span>' . $channel['cname'] . '</span>';
     } else {
         $channel['navtitle'] = '<a href="' . C('web_path') . '">首页</a> &gt; <span>' . $channel['cname'] . '</span>';
     }
     if ($url['sid']) {
         $channel['navtitle'] .= ' > ' . $nav['m_name'];
     }
     //先给bdlist标签传值后再输出模板m_cid
     //C('bdlist_ids',$where['cid']);
     C('bdlist_page', $url['page']);
     C('bdlist_where', $where);
     if (empty($channel['ctpl'])) {
         $channel['ctpl'] = 'video_list';
     }
     //标签调用
     $stypetag = gettypetag($channel['pid'] == 0 ? $channel['id'] : $channel['pid']);
     $this->assign($channel);
     $this->assign('stypetag', $stypetag);
     $this->assign('stypetagcount', count($stypetag));
     $this->assign('m_cid', $url['sid']);
     $this->assign('area', explode(',', C('web_admin_area')));
     //$this->assign('year',get_sys_year());
     $this->display($channel['ctpl']);
 }
コード例 #2
0
ファイル: HtmlAction.class.php プロジェクト: skygunner/ekucms
 public function createlist()
 {
     $channel['order'] = 'addtime';
     $totalpages = (int) $_GET['pagecount'];
     $ii = (int) $_GET['page'];
     $cid = (int) $_GET['cid'];
     $count = (int) $_GET['count'];
     $cidList = $_GET['cidList'];
     $key = intval($_GET['key']);
     $_GET['go'] = intval($_GET['go']);
     $list = list_search(F('_gxcms/channel'), 'id=' . $cid);
     $channel = $list[0];
     //获取当前栏目的缓存信息
     $start = $ii;
     $everycreatenum = $end = C('url_create_list_num') ? intval(C('url_create_list_num')) : 10;
     //结束页
     $end = $end + $start;
     if ($end > $totalpages) {
         $end = $totalpages;
     }
     //查询本类及小类共多少条数据
     $rs = M("Video");
     $where['status'] = array('eq', 1);
     if (get_channel_son($cid)) {
         $where['cid'] = $cid;
     } else {
         $where['cid'] = get_channel_sqlin($cid);
     }
     /*
     $count = $rs->where($where)->count('id');	
     //计算出该栏目需要生成的总页数
     $totalpages = ceil($count/$channel['limit']);
     if ($totalpages < 1) {
     	$totalpages = 1;
     }
     */
     if ($end == $totalpages) {
         $key++;
     }
     /*
     if ($cid == 1 || $cid == 2)
     {
     	$end = $totalpages = 1;
     }
     */
     for ($ii = $start; $ii <= $end; $ii++) {
         //当前栏目前台标签数组变量-----------------------------------------------------------------------------------
         //$ii = 1;
         $pageurl = get_show_url('video', array('id' => $cid), 2);
         $pages = '共' . $count . '部影片&nbsp;当前:' . $ii . '/' . $totalpages . '页&nbsp;';
         $pages .= get_cms_page_css($ii, $totalpages, 5, $pageurl, false);
         $channel['cid'] = $cid;
         $channel['page'] = $ii;
         $channel['count'] = $count;
         $channel['pages'] = $pages;
         if ($ii > 1) {
             $channel['webtitle'] = $channel['cname'] . '-第' . $ii . '页-' . C('web_name');
         } else {
             $channel['webtitle'] = $channel['cname'] . '-' . C('web_name');
         }
         if ($channel['pid']) {
             $channel['navtitle'] = '<a href="' . C('web_path') . '">首页</a> &gt; <a href="' . $channel['showurl_p'] . '">' . $channel['cname_p'] . '</a> &gt; <span>' . $channel['cname'] . '</span>';
         } else {
             $channel['navtitle'] = '<a href="' . C('web_path') . '">首页</a> &gt; <span>' . $channel['cname'] . '</span>';
         }
         //先给bdlist标签传值后再生成模板
         C('bdlist_ids', $where['cid']);
         C('bdlist_page', $ii);
         //生成静态网页开始
         if (empty($channel['ctpl'])) {
             $channel['ctpl'] = 'video_list';
         }
         $this->assign($channel);
         $stypetag = gettypetag($channel['pid'] == 0 ? $channel['id'] : $channel['pid']);
         $this->assign('stypetag', $stypetag);
         $this->assign('stypetagcount', count($stypetag));
         $this->assign('m_cid', $url['sid']);
         $this->assign('wait', C('url_create_list_time'));
         $this->assign('start', $start);
         $this->assign('end', $end);
         $this->assign('everycreatenum', $everycreatenum);
         $listdir = str_replace('{!page!}', $ii, get_show_url_dir('video', $cid, $ii));
         //目录路径
         $showurl = C('webpath') . $listdir . C('html_file_suffix');
         //预览路径
         $this->buildHtml($listdir, './', 'Home:' . $channel['ctpl']);
         //print_r($channel);exit;
     }
     //exit($pages);
     //exit('wbf');
     $url = "/index.php?s=Admin/Html/createlistwait/page/" . $ii . "/start/" . $start . "/end/" . $end . "/pagecount/" . $totalpages . "/cid/" . $cid . "/count/" . $count . "/cidList/" . $cidList . "/go/" . $_GET['go'] . "/key/" . $key;
     echo "<script>window.location = '" . $url . "';</script>";
     exit;
 }