Просмотр файла Pages/office.php

Размер файла: 14.44Kb
<?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;
    }
?>