File: /www/wwwroot/bs.kntsleep.com/system/admin/seo/rule.class.php
<?php
/*
* Copyright (c) Huyin Information Technology Co., Ltd. All Rights Reserved.
* BOSSCMS Content Management System (https://www.bosscms.net/)
*/
defined('IS_OK') or exit('Access Forbidden');
into::basic_class('admin');
class rule extends admin
{
public function init()
{
global $G;
$G['cover'] = $this->cover();
$G['navs1'] = into::load_class('admin','seo','rewrite','new')->nav();
$G['navs1']['rule']['active'] = true;
$data = array();
if(arrExist($G['config'],'rule')){
$data = json::decode($G['config']['rule']);
}
into::basic_json('rule');
foreach($G['rule'] as $k=>$v){
if(!arrExist($data,$k)){
$data[$k] = $v;
}
}
echo $this->theme('seo/rule', $data);
}
public function add()
{
global $G;
$this->cover('seo&rule','M');
if(isset($G['post'])){
$data = array(
'rule_extension' => $G['post']['rule_extension'],
'rule_pages' => $G['post']['rule_pages'],
'rule_lang' => $G['post']['rule_lang'],
'rule_lang_sign' => $G['post']['rule_lang_sign'],
'rule_filename' => $G['post']['rule_filename'],
'rule_static_auto' => $G['post']['rule_static_auto'],
'rule_static_addid' => $G['post']['rule_static_addid'],
'rule_static_space' => trim($G['post']['rule_static_space'])
);
foreach($data as $k=>$v){
mysql::select_set(array('name'=>$k,'value'=>$v,'parent'=>'0','type'=>'0','lang'=>'0'),'config',array('value'));
}
$data = array();
foreach($G['post']['rule'] as $k=>$v){
if(is_numeric($k)){
$data[$k] = $v;
}
}
mysql::select_set(array('name'=>'rule','value'=>json::encode($data),'parent'=>'0','type'=>'0','lang'=>'0'),'config',array('value'));
dir::delete(ROOT_PATH.'cache/rule.json');
$this->sitemap();
alert('操作成功', url::mpf('seo','rule','init'));
}
}
public function show()
{
global $G;
foreach($G['pass']['type'] as $k=>$v){
if(preg_match('/^(2|3|4|5)$/',$v)){
$res = mysql::select_all('id,name',$k,"display='1'");
foreach($res as $v2){
mysql::update(array('static'=>$this->repstatic($v2['name'],$v2['id'])),$k,"id='{$v2['id']}'");
}
}
}
alert('更新成功', url::mpf('seo','rule','init'));
}
public function repstatic($name, $id)
{
global $G;
if($G['config']['rule_static_auto']){
return strSlashes(preg_replace('/[\s\<\>\\\]+/',$G['config']['rule_static_space'],delFilter($name))).($G['config']['rule_static_addid']?'/'.$id:'');
}else{
return '';
}
}
}
?>