| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423 |
- <?php
- define('IN_SMT', true);
- define('CURSCRIPT', 'category');
- define('IN_MYMPS', true);
- require_once dirname(__FILE__) . '/include/global.php';
- require_once MYMPS_DATA . '/config.php';
- require_once MYMPS_DATA . '/config.db.php';
- require_once MYMPS_INC . '/db.class.php';
- $catid = isset($catid) ? intval($catid) : 0;
- $areaid = isset($areaid) ? intval($areaid) : 0;
- $page = isset($page) ? intval($page) : 1;
- ifsiteopen();
- runcron();
- $seo = $seo ? $seo : get_seoset();
- $rewrite = $seo['seo_force_category'];
- if ($rewrite != 'active') {
- $mayimobile = get_mobile_settings();
- $mayimobile['mobiledomain'] = $mayimobile['mobiledomain'] ? $mayimobile['mobiledomain'] : $mymps_global['SiteUrl'] . '/m';
- $mayimobile['mobileuri'] = $mayimobile['mobiledomain'] . ($_SERVER['HTTP_X_ORIGINAL_URL'] ? $_SERVER['HTTP_X_ORIGINAL_URL'] : $_SERVER['REQUEST_URI']);
- if ($ifmobile) {
- write_msg('', $mayimobile['mobileuri']);
- exit();
- }
- }
- if ($Catid && $rewrite == 'rewrite_py') {
- $detail = explode('/', $Catid);
- $dir_typename = $detail[0];
- $cat_dir = array_flip(get_category_dir());
- $catid = $cat_dir[$dir_typename];
- if ($detail[1]) {
- $detailc = explode('-', $detail[1]);
- for ($i = 0; $i < count($detailc); $i++) {
- $_GET[$detailc[$i]] = ${$detailc[$i]} = str_replace(array('#@#', '#!#'), array('-', '/'), $detailc[++$i]);
- }
- extract($_GET);
- }
- $cat_dir = $Catid = $detail = $detailc = NULL;
- }
- else {
- if ($CAtid && $rewrite == 'rewrite') {
- $detail = explode('-', $CAtid);
- $catid = $detail[1];
- if ($detail[2]) {
- for ($i = 2; $i < count($detail); $i++) {
- $_GET[$detail[$i]] = ${$detail[$i]} = str_replace(array('#@#', '#!#'), array('-', '/'), $detail[++$i]);
- }
- extract($_GET);
- }
- $CAtid = $detail = NULL;
- }
- }
- $cache = get_cache_config();
- if (1 < $page) {
- $cache['list']['time'] = false;
- }
- $sq = $s = '';
- if (0 < $catid) {
- !($cat = get_cat_info($catid)) && write_msg('您所指定的栏目不存在或者已被删除!', $mymps_global['SiteUrl']);
- $allow_identifier = allow_identifier();
- $allow_identifier = $allow_identifier[$cat['modid']]['identifier'];
- $allow_identifier = is_array($allow_identifier) ? $allow_identifier : array();
- $allow_identifiers = $rewrite == 'rewrite_py' ? array_merge(array('areaid'), $allow_identifier) : array_merge(array('catid', 'areaid'), $allow_identifier);
- if (1 < $cat['modid']) {
- $s = '';
- foreach (${$_request} as $key => $val) {
- if (in_array($key, $allow_identifier) && !empty(${$key})) {
- $val = explode('~', $val);
- $val[0] = $val[0] ? intval($val[0]) : '';
- $val[1] = $val[1] ? intval($val[1]) : '';
- if ($val[1]) {
- $sq .= ' AND g.`' . $key . '` <= \'' . $val[1] . '\' AND g.`' . $key . '` >= \'' . $val[0] . '\'';
- }
- else {
- if ($val[0] && 0 < $val[1]) {
- $sq .= ' AND g.`' . $key . '` >= \'' . $val[0] . '\'';
- }
- else if ($val[0]) {
- $sq .= ' AND g.`' . $key . '` = \'' . $val[0] . '\' ';
- }
- }
- $s = ' LEFT JOIN `' . $db_mymps . 'information_' . $cat[modid] . '` AS g ON a.id = g.id';
- $cache['list']['time'] = false;
- }
- }
- }
- require_once MYMPS_INC . '/cachepages.class.php';
- $cachetime = $cache['list']['time'];
- $cachepages = new cachepages($cache['list']['time'], 'list_' . $catid . '_' . $areaid);
- $cachepages->cacheCheck();
- unset($cache);
- $cat['caturi'] = Rewrite('category', array('catid' => $catid, 'dir_typename' => $cat['dir_typename']));
- $cat['title'] = $cat['title'];
- $cat['keywords'] = $cat['keywords'] ? $cat['keywords'] : $cat['catname'] . '信息';
- $cat['description'] = $cat['description'] ? $cat['description'] : $mymps_global['SiteCity'] . $cat['catname'] . '频道为您提供' . $mymps_global['SiteCity'] . $cat['catname'] . '信息,在此有大量' . $mymps_global['SiteCity'] . $cat['catname'] . '信息供您选择,您可以免费查看和发布' . $mymps_global['SiteCity'] . $cat['catname'] . '信息。';
- $mymps_extra_model = mod_identifier();
- $mymps_extra_model = $mymps_extra_model[$cat['modid']];
- $mymps_extra_model = is_array($mymps_extra_model) ? $mymps_extra_model : array();
- $area_list = cat_list('area', 0, 0, false, 1);
- $page_title_extra = $areaid ? $area_list[$areaid]['areaname'] : '';
- $area_list = array_merge(array(
- array('areaid' => '0', 'areaname' => '不限')
- ), $area_list);
- $cat_list = get_categories_tree($catid);
- $where .= 0 < $cat['parentid'] ? ' WHERE ' . get_children($catid) : ' WHERE a.gid = \'' . $catid . '\'';
- $where .= $sq ? $sq : '';
- $where .= ' AND (a.info_level = 1 OR a.info_level = 2)';
- $where .= empty($areaid) ? '' : ' AND a.areaid = \'' . $areaid . '\'';
- $orderby = $cat['parentid'] == 0 ? ' ORDER BY a.upgrade_type DESC,a.begintime DESC' : ' ORDER BY a.upgrade_type_list DESC,a.begintime DESC';
- $param = setParam($allow_identifiers, $rewrite, 'category-', $mymps_global['SiteUrl'] . $seo['seo_htmldir'] . $cat['html_dir']);
- $rows_num = $db->getOne('SELECT COUNT(a.id) FROM `' . $db_mymps . 'information` AS a ' . $s . ' ' . $where);
- }
- else {
- write_msg('', $mymps_global[SiteUrl] . '/404.html');
- exit();
- $catid = 0;
- require_once MYMPS_INC . '/cachepages.class.php';
- $cachetime = $cache['list']['time'];
- $cachepages = new cachepages($cache['list']['time'], 'list_' . $catid . '_' . $areaid);
- $cachepages->cacheCheck();
- unset($cache);
- $cat['title'] = '最新发布 - ' . $mymps_global['SiteName'];
- $area_list = cat_list('area', 0, 0, false, 1);
- $cat_list = get_categories_tree(0, 'category');
- $where .= ' WHERE 1 ';
- $where .= $sq ? $sq : '';
- $where .= ' AND (a.info_level = 1 OR a.info_level = 2)';
- $where .= empty($areaid) ? '' : ' AND a.areaid = \'' . $areaid . '\'';
- $orderby = ' ORDER BY a.begintime DESC';
- $param = setParam(array(), 'rewrite', 'category-', $mymps_global['SiteUrl'] . '/category.html');
- $rows_num = $db->getOne('SELECT COUNT(a.id) FROM `' . $db_mymps . 'information` AS a ' . $s . ' ' . $where);
- }
- $idin = get_page_idin('id', 'SELECT a.id FROM `' . $db_mymps . 'information` AS a ' . $s . $where . $orderby, $cat['template'] == 'list_gezi' ? 30 : $mymps_global['cfg_list_page_line']);
- $sql = 'SELECT a.id,a.tel,a.title,a.userid,a.contact_who,a.content,a.img_path,a.img_count,a.upgrade_type,a.upgrade_type_list,a.upgrade_time,a.upgrade_time_list,a.upgrade_time_index,a.begintime,a.endtime,a.info_level,a.certify,a.ifred,a.ifbold,a.dir_typename,b.areaname FROM ' . $db_mymps . 'information AS a LEFT JOIN `' . $db_mymps . 'area` AS b ON a.areaid = b.areaid WHERE a.id IN (' . $idin . ') ' . $orderby;
- $info_list = array();
- $page1 = $idin ? $db->getAll($sql) : array();
- foreach ($page1 as $key => $val) {
- $infolist['id'] = $val['id'];
- $infolist['begintime'] = $val['begintime'];
- $infolist['title'] = $val['title'];
- $infolist['ifred'] = $val['ifred'];
- $infolist['ifbold'] = $val['ifbold'];
- $infolist['tel'] = $val['tel'];
- $infolist['img_count'] = $val['img_count'];
- $infolist['content'] = clear_html($val['content']);
- $infolist['areaname'] = $val['areaname'];
- $infolist['contact_who'] = $val['contact_who'];
- $infolist['poster'] = !empty($val['userid']) ? '<a target="black" href=' . Rewrite('space', array('user' => $val['userid'])) . '>' . $val['userid'] . '</a>' : ($val['contact_who'] ? $val['contact_who'] : '游客');
- $infolist['img_path'] = $val['img_path'];
- $infolist['uri'] = Rewrite('info', array('id' => $val['id'], 'dir_typename' => $val['dir_typename']));
- $infolist['info_level'] = $val['info_level'];
- $infolist['upgrade_type'] = !$cat['parentid'] ? $val['upgrade_type'] : $val['upgrade_type_list'];
- $infolist['certify'] = $val['certify'];
- $info_list[$val['id']] = $infolist;
- $ids = true;
- if (0 < $val['upgrade_time'] && $val['upgrade_time'] < $timestamp) {
- $db->query('UPDATE `' . $db_mymps . 'information` SET upgrade_type = \'1\',upgrade_time = \'0\' WHERE id =\'' . $val['id'] . '\'');
- }
- if (0 < $val['upgrade_time_list'] && $val['upgrade_time_list'] < $timestamp) {
- $db->query('UPDATE `' . $db_mymps . 'information` SET upgrade_type_list = \'1\',upgrade_time_list = \'0\' WHERE id =\'' . $val['id'] . '\'');
- }
- if (0 < $val['upgrade_time_index'] && $val['upgrade_time_index'] < $timestamp) {
- $db->query('UPDATE `' . $db_mymps . 'information` SET upgrade_type_index = \'1\',upgrade_time_index = \'0\' WHERE id =\'' . $val['id'] . '\'');
- }
- }
- $idin = $ids ? ' AND a.id IN (' . $idin . ') ' : '';
- $pageline = NULL;
- $pageview = 0 < $catid ? page2($rewrite) : page2('rewrite');
- $advertisement = get_advertisement('category');
- $adveritems = $advertisement['items'];
- $advertisement['type'] = $advertisement['all'] ? (is_array($advertisement[$catid]['type']) ? array_merge($advertisement['all']['type'], $advertisement[$catid]['type']) : $advertisement['all']['type']) : $advertisement[$catid]['type'];
- if (0 < $catid) {
- switch ($rewrite) {
- case 'rewrite':
- foreach ($mymps_extra_model as $key => $val) {
- if (is_array($val['list'])) {
- foreach ($val['list'] as $k => $v) {
- $mymps_extra_model[$key]['list'][$k]['uri'] = 'category';
- foreach ($allow_identifiers as $keys) {
- if ($v['identifier'] == $keys) {
- $mymps_extra_model[$key]['list'][$k]['uri'] .= $v[id] ? '-' . $keys . '-' . $v[id] : '';
- }
- else {
- $mymps_extra_model[$key]['list'][$k]['uri'] .= ${$keys} ? '-' . $keys . '-' . ${$keys} : '';
- }
- }
- $mymps_extra_model[$key]['list'][$k]['uri'] .= '.html';
- if ($v['id'] == ${$v['identifier']}) {
- $mymps_extra_model[$key]['list'][$k]['select'] .= 1;
- $page_title_extra .= $v[name] != '不限' ? $v[name] : '';
- }
- else {
- $mymps_extra_model[$key]['list'][$k]['select'] .= 0;
- }
- }
- }
- }
- foreach ($area_list as $key => $val) {
- $area_list[$key]['uri'] = '/category';
- foreach ($allow_identifiers as $keys) {
- if ($keys == 'areaid') {
- $area_list[$key]['uri'] .= $val['areaid'] ? '-' . $keys . '-' . $val[areaid] : '';
- }
- else {
- $area_list[$key]['uri'] .= ${$keys} ? '-' . $keys . '-' . ${$keys} : '';
- }
- }
- $area_list[$key]['uri'] .= '.html';
- $area_list[$key]['select'] = $val['areaid'] == $areaid ? 1 : 0;
- }
- break;
- case 'rewrite_py':
- foreach ($mymps_extra_model as $key => $val) {
- if (is_array($val['list'])) {
- foreach ($val['list'] as $k => $v) {
- $mymps_extra_model[$key]['list'][$k]['uri'] = '/' . $dir_typename . '/';
- foreach ($allow_identifiers as $keys) {
- if ($v['identifier'] == $keys) {
- $mymps_extra_model[$key]['list'][$k]['uri'] .= $v['id'] ? $keys . '-' . $v['id'] . '-' : '';
- }
- else {
- $mymps_extra_model[$key]['list'][$k]['uri'] .= ${$keys} ? $keys . '-' . ${$keys} . '-' : '';
- }
- }
- $mymps_extra_model[$key]['list'][$k]['uri'] = substr($mymps_extra_model[$key]['list'][$k]['uri'], 0, -1);
- $mymps_extra_model[$key]['list'][$k]['uri'] .= '/';
- if ($v['id'] == ${$v['identifier']}) {
- $mymps_extra_model[$key]['list'][$k]['select'] .= 1;
- $page_title_extra .= $v['name'] != '不限' ? $v['name'] : '';
- }
- else {
- $mymps_extra_model[$key]['list'][$k]['select'] .= 0;
- }
- }
- }
- }
- foreach ($area_list as $key => $val) {
- $area_list[$key]['uri'] = '/' . $dir_typename . '/';
- foreach ($allow_identifiers as $keys) {
- if ($keys == 'areaid') {
- $area_list[$key]['uri'] .= $val['areaid'] ? $keys . '-' . $val['areaid'] . '-' : '';
- }
- else {
- $area_list[$key]['uri'] .= ${$keys} ? $keys . '-' . ${$keys} . '-' : '';
- }
- }
- $area_list[$key]['uri'] = substr($area_list[$key]['uri'], 0, -1);
- $area_list[$key]['uri'] .= '/';
- $area_list[$key]['select'] = $val['areaid'] == $areaid ? 1 : 0;
- }
- break;
- default:
- foreach ($mymps_extra_model as $key => $val) {
- if (is_array($val['list'])) {
- foreach ($val['list'] as $k => $v) {
- $mymps_extra_model[$key]['list'][$k]['uri'] = 'category.php?';
- foreach ($allow_identifiers as $keys) {
- if ($v['identifier'] == $keys) {
- $mymps_extra_model[$key]['list'][$k]['uri'] .= $v['id'] ? $keys . '=' . $v[id] . '&' : '';
- }
- else {
- $mymps_extra_model[$key]['list'][$k]['uri'] .= ${$keys} ? $keys . '=' . ${$keys} . '&' : '';
- }
- }
- $mymps_extra_model[$key]['list'][$k]['uri'] = substr($mymps_extra_model[$key]['list'][$k]['uri'], 0, -1);
- if ($v[id] == ${$v[identifier]}) {
- $mymps_extra_model[$key]['list'][$k]['select'] .= 1;
- $page_title_extra .= $v[name] != '不限' ? $v[name] : '';
- }
- else {
- $mymps_extra_model[$key]['list'][$k]['select'] .= 0;
- }
- }
- }
- }
- foreach ($area_list as $key => $val) {
- $area_list[$key]['uri'] = '/category.php?';
- foreach ($allow_identifiers as $keys) {
- if ($keys == 'areaid') {
- $area_list[$key]['uri'] .= $val['areaid'] ? $keys . '=' . $val[areaid] . '&' : '';
- }
- else {
- $area_list[$key]['uri'] .= ${$keys} ? $keys . '=' . ${$keys} . '&' : '';
- }
- }
- $area_list[$key]['uri'] = substr($area_list[$key]['uri'], 0, -1);
- $area_list[$key]['select'] = $val['areaid'] == $areaid ? 1 : 0;
- }
- break;
- }
- $pdetail = $mymps_global['SiteCity'] . $page_title_extra . ($cat['title'] ? $cat['title'] : $cat['catname']);
- $pdetail .= 1 < $page ? '-第' . $page . '页' : '';
- $pdetail .= '-' . $mymps_global['SiteName'];
- $loc = get_location('category', $catid, '', '', $pdetail);
- $page_title = $loc['page_title'];
- $location = $loc['location'];
- }
- else {
- foreach ($area_list as $key => $val) {
- $area_list[$key]['uri'] = '/category';
- $area_list[$key]['uri'] .= $val['areaid'] ? '-areaid-' . $val['areaid'] : '';
- $area_list[$key]['uri'] .= '.html';
- $area_list[$key]['select'] = $val['areaid'] == $areaid ? 1 : 0;
- }
- $pdetail = $mymps_global['SiteCity'] . $page_title_extra . '最新信息';
- $pdetail .= 1 < $page ? '-第' . $page . '页' : '';
- $pdetail .= '-' . $mymps_global['SiteName'];
- $loc = get_location('category', '', '', '', $pdetail);
- $page_title = $loc['page_title'];
- $location = $loc['location'] . ' » 最新信息';
- }
- if (0 < $cat['parentid']) {
- $flag = array_reverse(get_parent_cats('category', $catid));
- $cat['parentid'] = $flag[0]['catid'];
- }
- if (0 < $catid) {
- $allow_identifier = $allow_identifer[$cat['modid']]['identifier'];
- }
- globalassign();
- if ($cat['template'] == 'list') {
- if (1 < $cat['modid'] && $idin) {
- $des = get_info_option_array();
- $extra = $db->getAll('SELECT a.* FROM `' . $db_mymps . 'information_' . $cat[modid] . '` AS a WHERE 1 ' . $idin);
- foreach ($extra as $k => $v) {
- unset($v['iid']);
- unset($v['content']);
- foreach ($v as $u => $w) {
- $g = get_info_option_titval($des[$u], $w);
- if ($u != 'id' && !is_numeric($u)) {
- $info_list[$v['id']]['extra'][$u] = $g['value'];
- }
- }
- }
- }
- }
- else if ($cat['template'] == 'list_simple') {
- }
- else if ($cat['template'] == 'list_box') {
- }
- else {
- if (1 < $cat['modid'] && $idin) {
- $des = get_info_option_array();
- $extra = $db->getAll('SELECT a.* FROM `' . $db_mymps . 'information_' . $cat[modid] . '` AS a WHERE 1 ' . $idin);
- foreach ($extra as $k => $v) {
- unset($v['iid']);
- unset($v['content']);
- foreach ($v as $u => $w) {
- $g = get_info_option_titval($des[$u], $w);
- if ($u != 'id' && !is_numeric($u)) {
- $info_list[$v['id']][$u] = $g['value'];
- }
- }
- }
- }
- }
- include 0 < $catid ? mymps_tpl($cat['template'] ? $cat['template'] : 'list') : mymps_tpl('list');
- is_object($db) && $db->Close();
- $cachetime && $cachepages->caching();
- $info_list = $advertisement = NULL;
- unset($info_list);
- unset($advertisement);
- ?>
|