<?php
level($user_data, 0, $home);
switch($act)
{
/* Главная страница кабинета */
default:
$title = 'Кабинет';
echo $twig->render('office/index.tpl',array('title' => $title, 'sait_name' => $set['name_sait'], 'user_data' => $user_data, 'home' => $home, 'style' => $style, 'set' => $set));
break;
/* Список площадок */
case 'platforms' :
$title = 'Кабинет | Площадки';
$platforms = $mysqli->query("SELECT `id`, `name` FROM `sait` WHERE `uid` = '".$user_data['id']."' ORDER BY `id`");
if($platforms->num_rows > 0)
{
while($row = $platforms->fetch_assoc())
{
$data[] = $row;
}
}
echo $twig->render('office/platforms.tpl',array('title' => $title, 'sait_name' => $set['name_sait'], 'user_data' => $user_data, 'home' => $home, 'style' => $style, 'data' => $data, 'page' => 'platforms'));
break;
/* Добавление площадки */
case 'platform_add':
$title = 'Кабинет | Добавление площадки';
if(!isset($_POST['ok']))
{
$data_big = array();
$data_smal = array();
$data_cat = array();
$imageBig = $mysqli->query("SELECT * FROM `images` WHERE `type` = 'big'");
if($imageBig->num_rows > 0)
{
while($imBig = $imageBig->fetch_array())
{
$data_big[] = $imBig;
}
}
$imageSmall = $mysqli->query("SELECT * FROM `images` WHERE `type` = 'small'");
if($imageSmall->num_rows > 0)
{
while($imSmall = $imageSmall->fetch_array())
{
$data_small[] = $imSmall;
}
}
$cats = $mysqli->query("SELECT * FROM `category` ORDER BY `id` ASC");
if($cats->num_rows > 0)
{
while($cat = $cats->fetch_array())
{
$data_cat[] = $cat;
}
}
echo $twig->render('office/platform_add.tpl',array('title' => $title, 'sait_name' => $set['name_sait'], 'user_data' => $user_data, 'home' => $home, 'style' => $style, 'data_big' => $data_big, 'data_small' => $data_small, 'data_cat' => $data_cat));
}
else
{
if($userdata['platforms'] >= $set['platforms_max'])
{
echo $twig->render('system/error.tpl',array('title' => 'Ошибка','user_data' => $user_data, 'home' => $home, 'style' => $style, 'error' => 'Максимальное количество площадок <strong>'.$set['maxPlatforms'].'</strong>.<br>', 'backLink' => 'http://'.$home.'/office;;platforms'));
}
else
{
$url = filterIn($mysqli,$_POST['url']);
$name = filterIn($mysqli,$_POST['name']);
$about = filterIn($mysqli,$_POST['about']);
$cat = intval($_POST['cat']);
$image = filterIn($mysqli,$_POST['image']);
$imageOther = filterIn($mysqli,$_POST['imageOther']);
$error = '';
$issetImage = $mysqli->query("SELECT * FROM `images` WHERE `name` = '".$image."' AND `type` = 'big'")->num_rows;
if($issetImage == 0)
{
$error .= 'Нет такого счётчика для главной страницы.<br/>';
}
$issetImageOther = $mysqli->query("SELECT * FROM `images` WHERE `name` = '".$imageOther."' AND `type` = 'small'")->num_rows;
if($issetImageOther == 0)
{
$error .= 'Нет такого счётчика для остальных страниц.<br/>';
}
$issetCat = $mysqli->query("SELECT `id` FROM `category` WHERE `id` = '".$cat."'")->num_rows;
if($issetCat == 0)
{
$error .= 'Нет такой категории.<br/>';
}
$issetUrl = $mysqli->query("SELECT `id` FROM `sait` WHERE `url` = '".$url."'")->num_rows;
if($issetUrl > 0 OR empty($url))
{
$error .= 'Данный URL есть в рейтинге или поле "URL" не заполнено.<br/>';
}
if(empty($name) OR empty($about) OR empty($cat) OR empty($image))
{
$error .= 'Не заполнены обязательные поля.<br/>';
}
if(mb_strlen($url) >= 35)
{
$error .= 'Поле "URL сайта" не должно быть больше 35 символов.<br/>';
}
if(mb_strlen($name) >= 35)
{
$error .= 'Поле "Название сайта" не должно быть больше 35 символов.<br/>';
}
if(mb_strlen($about) >= 300)
{
$error .= 'Поле "Описание сайта" не должно быть больше 300 символов.<br/>';
}
if(!empty($error))
{
echo $twig->render('system/error.tpl',array('title' => $title, 'sait_name' => $set['name_sait'],'user_data' => $user_data, 'home' => $home, 'style' => $style, 'error' => $error, 'backLink' => 'http://'.$home.'/office;;platform_add'));
}
else
{
$mysqli->query("INSERT INTO `sait` VALUES ('', '".$user_data['id']."', '".$name."', '".$about."', '".$time."', '', '', '', '', '', '', '', '', '".$cat."', '".$image."', '".$imageOther."', '".$url."', '".$set['moderacia']."', '', '')");
$mysqli->query("UPDATE `users` SET `platforms` = (`platforms` + 1) WHERE `id` = '".$user_data['id']."'");
$mysqli->query("UPDATE `category` SET `count` = (`count` + 1) WHERE `id` = '".$cat."'");
echo $twig->render('system/succes.tpl',array('title' => $title, 'sait_name' => $set['name_sait'],'user_data' => $user_data, 'home' => $home, 'style' => $style, 'text' => 'Площадка добавлена успешно.<br><a href="http://'.$home.'/office">Кабинет</a><br>'));
}
}
}
break;
/* Редактирование площадки */
case 'platform_edit':
$title = 'Кабинет | Редактирование площадки';
$sait_isset = $mysqli->query("SELECT * FROM `sait` WHERE `id` = '".$id."' AND `uid` = '".$user_data['id']."'");
if($sait_isset ->num_rows > 0)
{
$row = $sait_isset->fetch_assoc();
if(!isset($_POST['ok']))
{
$data_big = array();
$data_smal = array();
$data_cat = array();
$imageBig = $mysqli->query("SELECT * FROM `images` WHERE `type` = 'big'");
if($imageBig->num_rows > 0)
{
while($imBig = $imageBig->fetch_array())
{
$data_big[] = $imBig;
}
}
$imageSmall = $mysqli->query("SELECT * FROM `images` WHERE `type` = 'small'");
if($imageSmall->num_rows > 0)
{
while($imSmall = $imageSmall->fetch_array())
{
$data_small[] = $imSmall;
}
}
$cats = $mysqli->query("SELECT * FROM `category` ORDER BY `id` ASC");
if($cats->num_rows > 0)
{
while($cat = $cats->fetch_array())
{
$data_cat[] = $cat;
}
}
echo $twig->render('office/platform_edit.tpl',array('title' => $title, 'sait_name' => $set['name_sait'], 'user_data' => $user_data, 'home' => $home, 'style' => $style, 'data_big' => $data_big, 'data_small' => $data_small, 'data_cat' => $data_cat, 'data' => $row));
}
else
{
$url = filterIn($mysqli,$_POST['url']);
$name = filterIn($mysqli,$_POST['name']);
$about = filterIn($mysqli,$_POST['about']);
$cat = intval($_POST['cat']);
$image = filterIn($mysqli,$_POST['image']);
$imageOther = filterIn($mysqli,$_POST['imageOther']);
$error = '';
$issetImage = $mysqli->query("SELECT * FROM `images` WHERE `name` = '".$image."' AND `type` = 'big'")->num_rows;
if($issetImage == 0)
{
$error .= 'Нет такого счётчика для главной страницы.<br/>';
}
$issetImageOther = $mysqli->query("SELECT * FROM `images` WHERE `name` = '".$imageOther."' AND `type` = 'small'")->num_rows;
if($issetImageOther == 0)
{
$error .= 'Нет такого счётчика для остальных страниц.<br/>';
}
$issetCat = $mysqli->query("SELECT `id` FROM `category` WHERE `id` = '".$cat."'")->num_rows;
if($issetCat == 0)
{
$error .= 'Нет такой категории.<br/>';
}
$issetUrl = $mysqli->query("SELECT `id` FROM `sait` WHERE `url` = '".$url."' AND `id` <> '".$id."'")->num_rows;
if($issetUrl > 0 OR empty($url))
{
$error .= 'Данный URL есть в рейтинге или поле "URL" не заполнено.<br/>';
}
if(empty($name) OR empty($about) OR empty($cat) OR empty($image))
{
$error .= 'Не заполнены обязательные поля.<br/>';
}
if(mb_strlen($url) >= 35)
{
$error .= 'Поле "URL сайта" не должно быть больше 35 символов.<br/>';
}
if(mb_strlen($name) >= 35)
{
$error .= 'Поле "Название сайта" не должно быть больше 35 символов.<br/>';
}
if(mb_strlen($about) >= 300)
{
$error .= 'Поле "Описание сайта" не должно быть больше 300 символов.<br/>';
}
if(!empty($error))
{
echo $twig->render('system/error.tpl',array('title' => $title, 'sait_name' => $set['name_sait'],'user_data' => $user_data, 'home' => $home, 'style' => $style, 'error' => $error, 'backLink' => 'http://'.$home.'/office;;platforms'));
}
else
{
$mysqli->query("UPDATE `sait` SET `name` = '".$name."', `about` = '".$about."', `category` = '".$cat."', `image` = '".$image."', `imageOther` = '".$imageOther."', `url` = '".$url."', `status` = '".$set['moderacia']."' WHERE `id` = '".$id."'");
if($cat != $row['category'])
{
$mysqli->query("UPDATE `category` SET `count` = (`count` - 1) WHERE `id` = '".$row['category']."'");
$mysqli->query("UPDATE `category` SET `count` = (`count` + 1) WHERE `id` = '".$cat."'");
}
$mysqli->query("UPDATE `category` SET `count` = (`count` + 1) WHERE `id` = '".$cat."'");
echo $twig->render('system/succes.tpl',array('title' => $title, 'sait_name' => $set['name_sait'],'user_data' => $user_data, 'home' => $home, 'style' => $style, 'text' => 'Площадка успешно отредактирована.<br><a href="http://'.$home.'/office">Кабинет</a><br>'));
}
}
}
else
{
echo $twig->render('system/error.tpl',array('title' => $title, 'sait_name' => $set['name_sait'],'user_data' => $user_data, 'home' => $home, 'style' => $style, 'error' => 'Выбрана не существующая площадка', 'backLink' => 'http://'.$home.'/office;;platforms'));
}
break;
/* Удаление площадки */
case 'platform_delete':
$title = 'Кабинет | Удаление площадки';
$sait_isset = $mysqli->query("SELECT * FROM `sait` WHERE `id` = '".$id."' AND `uid` = '".$user_data['id']."'");
if($sait_isset ->num_rows > 0)
{
$row = $sait_isset->fetch_assoc();
$mysqli->query("UPDATE `category` SET `count` = (`count` - 1) WHERE `id` = '".$row['category']."'");
$mysqli->query("UPDATE `users` SET `platforms` = (`platforms` - 1) WHERE `id` = '".$row['uid']."'");
$mysqli->query("DELETE FROM `days` WHERE `sid` = '".$id."'");
$mysqli->query("DELETE FROM `hours` WHERE `sid` = '".$id."'");
$mysqli->query("DELETE FROM `month` WHERE `sid` = '".$id."'");
$mysqli->query("DELETE FROM `sait` WHERE `id` = '".$id."'");
echo $twig->render('system/succes.tpl',array('title' => $title, 'sait_name' => $set['name_sait'],'user_data' => $user_data, 'home' => $home, 'style' => $style, 'text' => 'Площадка успешно удалена.<br><a href="http://'.$home.'/office">Кабинет</a><br>'));
}
else
{
echo $twig->render('system/error.tpl',array('title' => $title, 'sait_name' => $set['name_sait'],'user_data' => $user_data, 'home' => $home, 'style' => $style, 'error' => 'Выбрана не существующая площадка', 'backLink' => 'http://'.$home.'/office;;platforms'));
}
break;
/* Ссылка для установки на сайте */
case 'link':
$title = 'Кабинет | Ссылка для установки';
$nid = $id ? $id : 'ID';
echo $twig->render('office/link.tpl',array('title' => $title, 'sait_name' => $set['name_sait'],'user_data' => $user_data, 'home' => $home, 'style' => $style, 'nid' => $nid));
break;
/* Пользовательские настройки */
case 'settings':
$title = 'Кабинет | Настройки';
if(!isset($_POST['ok']))
{
$styles_a = array();
$dir = opendir('Data/Design/Themes');
while ($styles = readdir($dir))
{
if (is_dir('Data/Design/Themes/'.$styles) AND $styles != '.' AND $styles != '..')
{
$styles_a[] = $styles;
}
}
echo $twig->render('office/settings.tpl',array('title' => $title, 'sait_name' => $set['name_sait'], 'user_data' => $user_data, 'home' => $home, 'style' => $style, 'styles_a' => $styles_a));
}
else
{
$page_u = abs(intval($_POST['pages']));
$styles = filterIn($mysqli,$_POST['style']);
$error = '';
if (empty($page_u) OR empty($styles))
{
$error .= 'Все поля обязательны для заполнения.<br/>';
}
if(!empty($error))
{
echo $twig->render('system/error.tpl',array('title' => $title, 'sait_name' => $set['name_sait'],'user_data' => $user_data, 'home' => $home, 'style' => $style, 'error' => $error, 'backLink' => 'http://'.$home.'/admin_settings'));
}
else
{
$mysqli->query("UPDATE `users` SET `pages` = '".$page_u."', `style` = '".$styles."' WHERE `id` = '".$user_data['id']."'");
echo $twig->render('system/succes.tpl',array('title' => $title, 'sait_name' => $set['name_sait'],'user_data' => $user_data, 'home' => $home, 'style' => $style, 'text' => 'Настройки успешно сохранены.<br><a href="http://'.$home.'/office">Кабинет</a><br>'));
}
}
break;
}
?>