Вход Регистрация
Файл: sysadm/sitemap.php
Строк: 289
<?
define
('ROOT','../');
require_once (
ROOT.'system/power.php');
$fuser->aut();
if(
$admin->user_can('settings_site',$ya['id'],true));
$diz -> head('Карта сайта');
$diz -> title('Карта сайта');
switch(
$do){
///удаление правила
case 'del_rule':
$sql $db -> query("SELECT `id` FROM `sitemap` where `id`='".$id."'");
if (
$sql-> num_rows 0) {
if (!isset(
$_GET['true'])) {
echo 
'<div class="fon">'.language('Вы подтверждаете это действие').'?</div>';
echo 
'<div class="dialog">
<a class="dialog_m" href="?do=del_rule&id='
.$id.'&page='.$page.'&true">'.language('Да').'</a>
<a class="dialog_m" href="?do=rule&id='
.$id.'&page='.$page.'">'.language('Нет').'</a>
</div>'

} else {
$db -> query("DELETE FROM `sitemap` WHERE `id`='".$id."'");
header('Location: ?do=rules&page='.$page);
}
}else 
header('Location: ?');
break;
//создание правила
case 'create':
if (!isset(
$_POST['submit'])) {
$p = array('static' => 'Статическое','dinamic' => 'Динамическое');
$p1 null;
foreach (
$p as $k1 => $v1) {
$p1 .= '<option value="'.$k1.'">'.language($v1).'</option>';
}
echo 
'<div class="fon"><form action="?do=create&page='.$page.'" method="post">
'
.language('Правило').':<br/><input type="text" name="rule" value="http://'.$_SERVER['HTTP_HOST'].'/"/><br/>
'
.language('Тип').':<br/><select name="type">'.$p1.'</select><br/>
'
.language('Таблица').'*:<br/><input type="text" name="table"/><br/>
'
.language('Поле').'*:<br/><input type="text" name="info"/><br/>
* - '
.language('заполняется только для динамических правил').'<br/>
<input type="submit" name="submit" value="'
.language('Создать').'"/>
</form>
</div>'
;
echo 
'<div class="levo"><a href="?do=rules&page='.$page.'" class="levo_tuch">'.$diz -> icon('back.png').' '.language('Назад').'</a></div>';
}else{
$type = (isset($_POST['type']) && ($_POST['type'] == 'static' or $_POST['type'] == 'dinamic')) ? trim($_POST['type']) : 'static';
$rule shit($_POST['rule']);
if(
$type=='dinamic'){
$table shit($_POST['table']);
$info shit($_POST['info']);
}else{
$table=$info=null;
}
$db -> query("INSERT INTO `sitemap` (`type`,`rule`,`table`,`info`) VALUES ('".$type."','".$rule."','".$table."','".$info."')");
header('Location: ?do=rules&page='.$page);
}
break;
///удаление всех правил
case 'clear_rules':
if (!isset(
$_GET['true'])) {
echo 
'<div class="fon">'.language('Вы подтверждаете это действие').'?</div>';
echo 
'<div class="dialog">
<a class="dialog_m" href="?do=clear_rules&page='
.$page.'&true">'.language('Да').'</a>
<a class="dialog_m" href="?do=rules&page='
.$page.'">'.language('Нет').'</a>
</div>'

} else {
$db -> query("DELETE FROM `sitemap`");
header('Location: ?do=rules');
}
break;
//правило
case 'rule':
$sql $db -> query("SELECT * FROM `sitemap` where `id`='".$id."'");
if (
$sql-> num_rows 0) {
echo 
'<div class="menu"><a href="?do=del_rule&id='.$id.'&page='.$page.'" class="menutuch">'.$diz -> icon('settings.png').' '.language('Удалить').'</a></div>';
$array=$sql->fetch_assoc();
if (!isset(
$_POST['submit'])) {
$p = array('dinamic' => 'Динамическое''static' => 'Статическое');
$p1 null;
foreach (
$p as $k1 => $v1) {
if (
$array['type'] == $k1$p1 .= '<option selected value="'.$k1.'">'.language($v1).'</option>';
else 
$p1 .= '<option value="'.$k1.'">'.language($v1).'</option>';
}
echo 
'<div class="fon"><form action="?do=rule&id='.$id.'&page='.$page.'" method="post">
'
.language('Правило').':<br/><input type="text" name="rule" value="'.$array['rule'].'"/><br/>
'
.language('Тип').':<br/><select name="type">'.$p1.'</select><br/>
'
.language('Таблица').'*:<br/><input type="text" name="table" value="'.$array['table'].'"/><br/>
'
.language('Поле').'*:<br/><input type="text" name="info" value="'.$array['info'].'"/><br/>
* - '
.language('заполняется только для динамических правил').'<br/>
<input type="submit" name="submit" value="'
.language('Изменить').'"/>
</form>
</div>'
;
echo 
'<div class="levo"><a href="?do=rules&page='.$page.'" class="levo_tuch">'.$diz -> icon('back.png').' '.language('Назад').'</a></div>';
}else{
$type = (isset($_POST['type']) && ($_POST['type'] == 'static' or $_POST['type'] == 'dinamic')) ? trim($_POST['type']) : 'static';
$rule shit($_POST['rule']);
if(
$type=='dinamic'){
$table shit($_POST['table']);
$info shit($_POST['info']);
}else{
$table=$info=null;
}
$db -> query("UPDATE `sitemap` SET `type` = '".$type."',`rule` = '".$rule."',`table` = '".$table."', `info` = '".$info."'  WHERE `id` = '".$id."'");
header('Location: ?do=rules&page='.$page);
}
}else 
header('Location: ?do=rules&page='.$page);
break;
//все правила
case 'rules':
echo 
'<div class="but_razdel">
<a class="button_razdel" style="width:50%" href="?">'
.language('Основное').'</a>
<div class="button_razdel" style="width:50%"><b>'
.language('Правила').'</b></div>
</div>'

echo 
'<div class="menu"><a href="?do=create&page='.$page.'" class="menutuch">'.$diz -> icon('settings.png').' '.language('Создать').'</a></div>';
echo 
'<div class="menu"><a href="?do=clear_rules&page='.$page.'" class="menutuch">'.$diz -> icon('settings.png').' '.language('Очистить').'</a></div>';
echo 
'<div class="new">'.language('Правила').'</div>';
$count $db -> dbcount('COUNT(`id`)','sitemap');
$num = isset($ya['num']) ? $ya['num'] : 10;
$total intval(($count 1) / $num) + 1
if (!isset(
$_GET['page']) || !is_numeric($_GET['page']) || $_GET['page'] < )
{
$page 1;
} elseif(
$_GET['page'] > $total)
$page $total;
} else 
$page = (int)$_GET['page'];
$start $page $num $num;
        
$sql $db -> query("SELECT * FROM `sitemap` ORDER BY `id` LIMIT ".$start.",".$num);
if(
$sql->num_rows>0){
        while (
$array $sql -> fetch_assoc()) {
        if(
$array['info']!=null)$info='{'.$array['info'].'}'; else $info=null;
        echo 
'<div class="menu"><a href="?do=rule&id='.$array['id'].'" class="menutuch">'.$array['rule'].''.$info.'</a></div>';
        }
$act '?do=rules';
echo 
$func -> pagenav($act,$page,$total);
}else echo 
'<div class="fon">'.language('Список пуст').'</div>';
break;
///настройки
case 'settings':
if (!isset(
$_POST['submit'])) {
echo 
'<div class="fon"><form action="?do=settings" method="post">';
$array = array('1' => 'Автоматическое''2' => 'Ручное''3' => 'Интервал');
$volume null;
foreach (
$array as $key => $value) {
if (
$db->settings('sitemap_type') == $key$type .= '<option selected value="'.$key.'">'.language($value).'</option>';
else 
$type .= '<option value="'.$key.'">'.language($value).'</option>';
}
echo 
language('Тип').':<br/><select name="type">'.$type.'</select><br/>';
echo 
language('Интервал').' ('.language('дней').'):<br/><input type="number" name="interval" value="'.($db->settings('sitemap_interval')/86400).'" min="1" max="30"/>';
echo 
'<input type="submit" name="submit" value="'.language('Сохранить').'"/></form></div>';
}else{
$type = (!empty($_POST['type']) && ($_POST['type']>=or $_POST['type']<=2)) ? abs(intval($_POST['type'])) : 1;
$interval = (!empty($_POST['interval']) && ($_POST['interval']>=or $_POST['interval']<=30)) ? abs(intval($_POST['interval'])) : 1;
$array = array(
'sitemap_type' => $type,
'sitemap_interval' => ($interval*86400)
);
$db->save_settings($array);
header('Location: ?do=settings');    
}
echo 
'<div class="levo"><a href="?" class="levo_tuch">'.$diz -> icon('back.png').' '.language('Назад').'</a></div>';
break;
case 
'refresh':
if(
$db->settings('sitemap_type')==or $db->settings('sitemap_type')==3) {
if (!isset(
$_GET['true'])) {
echo 
'<div class="fon">'.language('Вы подтверждаете это действие').'?</div>';
echo 
'<div class="dialog">
<a class="dialog_m" href="?do=refresh&true">'
.language('Да').'</a>
<a class="dialog_m" href="?">'
.language('Нет').'</a>
</div>'

} else {
$sitemap->generate();
$db->query("UPDATE `settings` SET `parametr`=".(time()+$db->settings('sitemap_interval'))." where `name`='sitemap_time' LIMIT 1");
header('Location: ?');
}
}else 
header('Location: ?');
break;
//просмотр карты
case 'sitemap':
$count $sitemap->count();
$num = isset($ya['num']) ? $ya['num'] : 10;
$total intval(($count 1) / $num) + 1
if (!isset(
$_GET['page']) || !is_numeric($_GET['page']) || $_GET['page'] < )
{
$page 1;
} elseif(
$_GET['page'] > $total)
$page $total;
} else 
$page = (int)$_GET['page'];
if(
$start<or $page==1)$start=0; else $start $page $num $num;
$max=$num*$page;
if(
$max>$count)$max=$count;
for(
$i=$start;$i<$max;$i++){
echo 
'<div class="fon">#<b>'.$i.'</b> 
Loc: <span class="text">'
.$sitemap->view_sitemap('loc',$i).'</span><br/>
Lastmod: <span class="text">'
.$sitemap->view_sitemap('lastmod',$i).'</span><br/>
Changefreq: <span class="text">'
.$sitemap->view_sitemap('changefreq',$i).'</span><br/>
Priority: <span class="text">'
.$sitemap->view_sitemap('priority',$i).'</span>
</div>'
;
}
$act '?do=sitemap';
echo 
$func -> pagenav($act,$page,$total);
echo 
'<div class="levo"><a href="?" class="levo_tuch">'.$diz -> icon('back.png').' '.language('Назад').'</a></div>';
break;
//основное
default:
echo 
'<div class="but_razdel">
<div class="button_razdel" style="width:50%"><b>'
.language('Основное').'</b></div>
<a class="button_razdel" style="width:50%" href="?do=rules">'
.language('Правила').'</a>
</div>'

echo 
'<div class="menu"><a href="?do=settings" class="menutuch">'.$diz -> icon('settings.png').' '.language('Настройки').'</a></div>';
if(
$db->settings('sitemap_type')==or $db->settings('sitemap_type')==3)echo '<div class="menu"><a href="?do=refresh" class="menutuch">'.$diz -> icon('settings.png').' '.language('Обновить').'</a></div>';
echo 
'<div class="new">'.language('Сведения').'</div>';
echo 
'<div class="fon">
'
.language('Записей').': <span class="count">'.$sitemap->count().'</span><br/>';
if(
$db->settings('sitemap_type')==or $db->settings('sitemap_type')==3)echo language('Последнее обновление').': <span class="date">'.$func->times(date('d m Y H:i:s',ustime($ya['gmt'],($db->settings('sitemap_time')-$db->settings('sitemap_interval'))))).'</span><br/>';
if(
$db->settings('sitemap_type')==3)echo language('Следующее обновление').': <span class="date">'.$func->times(date('d m Y H:i:s',ustime($ya['gmt'],$db->settings('sitemap_time')))).'</span><br/>';
echo 
language('Размер базы').': <span class="count">'.$func->size($sitemap->map_size()).'</span>';
echo 
'</div>';
echo 
'<div class="new">'.language('Карты').'</div>';
echo 
'<div class="menu"><a href="?do=sitemap&mode=" class="menutuch">'.$diz -> icon('r.png').' sitemap</a></div>';
}
echo 
'<div class="levo"><a href="./" class="levo_tuch">'.$diz -> icon('back.png').' '.language('Управление').'</a></div>';
echo 
'<div class="levo"><a href="'.ROOT.'" class="levo_tuch">'.$diz -> icon('home.png').' '.language('На главную').'</a></div>';
#####Копирайт#######
$diz -> out($msg);
?>
Онлайн: 2
Реклама