www.gusucode.com > 08CMS空白站群系统 3.3 繁体 UTF-8 > upload/admina/sitemaps.inc.php
<? (!defined('M_COM') || !defined('M_ADMIN')) && exit('No Permission'); aheader(); load_cache('catalogs,cotypes,channels'); if($action == 'sitemapsedit'){ $sitemaps = fetch_arr(); if(!submitcheck('bsitemapsedit')){ a_guide('sitemapsedit'); tabheader(lang('sitemap page admin'),'sitemapsedit',"?entry=sitemaps&action=sitemapsedit",'8'); trcategory(array(lang('available'),lang('sitemap cname'),lang('dynamic url'),lang('xml url'),lang('setting'),lang('create'))); foreach($sitemaps as $ename => $sitemap){ echo "<tr>". "<td class=\"item1\" width=\"30\" align=\"center\"><input class=\"checkbox\" type=\"checkbox\" name=\"sitemapsnew[$ename][available]\" value=\"1\"".(empty($sitemap['available']) ? '' : ' checked')."></td>\n". "<td class=\"item2\">".mhtmlspecialchars($sitemap['cname'])."</td>\n". "<td class=\"item1\">".($cms_abs.$sitemap['d_url'])."</td>\n". "<td class=\"item2\">".($cms_abs.$sitemap['xml_url'])."</td>\n". "<td class=\"item1\" width=\"30\" align=\"center\"><a href=\"?entry=sitemaps&action=sitemapdetail&ename=$ename\">".lang('setting')."</a></td>\n". "<td class=\"item2\" width=\"30\" align=\"center\"><a href=\"?entry=sitemaps&action=sitemapcreate&ename=$ename\">".lang('create')."</a></td></tr>\n"; } tabfooter('bsitemapsedit'); }else{ !checkapermission('sitemapsedit') && amessage(lang('no_apermission')); foreach($sitemaps as $ename => $sitemap){ $sitemap['available'] = empty($sitemapsnew[$ename]['available']) ? 0 : 1; $db->query("UPDATE {$tblprefix}sitemaps SET available='$sitemap[available]' WHERE ename='$ename'"); } updatecache('sitemaps'); amessage(lang('sitemap modify finish'), "?entry=sitemaps&action=sitemapsedit"); } } elseif($action == 'sitemapdetail' && $ename){ $sitemap = fetch_one($ename); empty($sitemap) && amessage(lang('confirmchoose sitemap'), '?entry=sitemaps&action=sitemapsedit'); if($ename == 'baidu'){ $chids = array(); foreach($channels as $chid => $channel){ $channel['baidu'] && $chids[$chid] = $channel['cname']; } empty($chids) && amessage(lang('nobaidunews'), '?entry=sitemaps&action=sitemapsedit'); }else{ $chids = chidsarr(); } if(!submitcheck('bsitemapdetail')){ a_guide('sitemapdetail'); tabheader(lang('sitemap setting'),'sitemapdetail','?entry=sitemaps&action=sitemapdetail&ename='.$ename); trbasic(lang('sitemap cname'),'',$sitemap['cname'],''); trbasic(lang('dynamic pick url'),'',$cms_abs.$sitemap['d_url'],''); trbasic(lang('xml pick url'),'',$cms_abs.$sitemap['xml_url'],''); trbasic(lang('weather enable'),'sitemapnew[available]',isset($sitemap['available']) ? $sitemap['available'] : 0,'radio'); trbasic(lang('update period ( hours )'),'sitemapnew[setting][life]',empty($sitemap['setting']['life']) ? '' : $sitemap['setting']['life']); trbasic(lang('limit indays of archive'),'sitemapnew[setting][indays]',empty($sitemap['setting']['indays']) ? '' : $sitemap['setting']['indays']); $sourcearr = array('0' => lang('nolimit catas'),'1' => lang('handpoint')); sourcemodule(lang('catalog limited'), 'sitemapnew[setting][casource]', $sourcearr, empty($sitemap['setting']['casource']) ? '0' : $sitemap['setting']['casource'], '1', 'sitemapnew[setting][caids][]', caidsarr(), empty($sitemap['setting']['caids']) ? array() : $sitemap['setting']['caids'] ); foreach($cotypes as $k => $cotype) { sourcemodule("$cotype[cname]".lang('limited'), "sitemapnew[setting][cosource$k]", $sourcearr, empty($sitemap['setting']['cosource'.$k]) ? '0' : $sitemap['setting']['cosource'.$k], '1', "sitemapnew[setting][ccids$k][]", ccidsarr($k), empty($sitemap['setting']['ccids'.$k]) ? array() : $sitemap['setting']['ccids'.$k] ); } $chsourcearr = array('0' => lang('nolimit channel'),'1' => lang('handpoint'),); sourcemodule(lang('archive channel limited'), 'sitemapnew[setting][chsource]', $chsourcearr, empty($sitemap['setting']['chsource']) ? '0' : $sitemap['setting']['chsource'], '1', 'sitemapnew[setting][chids][]', $chids, !empty($sitemap['setting']['chids']) ? $sitemap['setting']['chids'] : array() ); tabfooter('bsitemapdetail',lang('modify')); }else{ !checkapermission('sitemapsedit') && amessage(lang('no_apermission')); if(!empty($sitemapnew['setting']['casource']) && empty($sitemapnew['setting']['caids'])) amessage(lang('confirmselect catalog'),'?entry=sitemaps&action=sitemapdetail&ename='.$ename); if(!empty($sitemapnew['setting']['chsource']) && empty($sitemapnew['setting']['chids'])) amessage(lang('confirmselect channel'),'?entry=sitemaps&action=sitemapdetail&ename='.$ename); if(empty($sitemapnew['setting']['casource'])) unset($sitemapnew['setting']['caids']); if(empty($sitemapnew['setting']['chsource'])) unset($sitemapnew['setting']['chids']); foreach($cotypes as $k => $cotype){ if(!empty($sitemapnew['setting']['cosource'.$k]) && empty($sitemapnew['setting']['ccids'.$k])) amessage(lang('confirmselect').$cotype['cname'].lang('coclass'),'?entry=sitemaps&action=sitemapdetail&ename='.$ename); } $sitemapnew['available'] = empty($sitemapnew['available']) ? 0 : 1; $sitemapnew['setting']['life'] = max(0,intval($sitemapnew['setting']['life'])); $sitemapnew['setting']['indays'] = max(0,intval($sitemapnew['setting']['indays'])); $sitemapnew['setting'] = addslashes(serialize($sitemapnew['setting'])); $db->query("UPDATE {$tblprefix}sitemaps SET available='$sitemapnew[available]', setting='$sitemapnew[setting]' WHERE ename='$ename'"); updatecache('sitemaps'); amessage(lang('sitemap setting finish'),'?entry=sitemaps&action=sitemapdetail&ename='.$ename); } }elseif($action == 'sitemapcreate' && $ename){ !checkapermission('sitemapsedit') && amessage(lang('no_apermission')); $sitemap = fetch_one($ename); empty($sitemap) && amessage(lang('confirmchoose sitemap'), '?entry=sitemaps&action=sitemapsedit'); empty($sitemap['available']) && amessage(lang('sitemap closed'), '?entry=sitemaps&action=sitemapsedit'); if($sitemap['ename'] == 'baidu'){ $chids = array(); foreach($channels as $chid => $channel){ $channel['baidu'] && $chids[] = $chid; } empty($chids) && amessage(lang('nobaidunews'), '?entry=sitemaps&action=sitemapsedit'); } $cachefile = M_ROOT.$sitemap['xml_url']; include_once M_ROOT.'./include/sitemap.inc.php'; str2file($datastr,$cachefile); amessage(lang('sitemap create finish'), '?entry=sitemaps&action=sitemapsedit'); } function fetch_arr(){ global $db,$tblprefix; $sitemaps = array(); $query = $db->query("SELECT * FROM {$tblprefix}sitemaps ORDER BY vieworder"); while($sitemap = $db->fetch_array($query)){ if($sitemap['setting'] && is_array($setting = unserialize($sitemap['setting']))){$sitemap['setting'] = $setting;} else{$sitemap['setting'] = array();} $sitemaps[$sitemap['ename']] = $sitemap; } return $sitemaps; } function fetch_one($ename){ global $db,$tblprefix; $sitemap = $db->fetch_one("SELECT * FROM {$tblprefix}sitemaps WHERE ename='$ename'"); if($sitemap['setting'] && is_array($setting = unserialize($sitemap['setting']))){$sitemap['setting'] = $setting;} else{$sitemap['setting'] = array();} return $sitemap; } ?>