View file modules/profile/notificationlog.php

File size: 8.16Kb
<?
//Уведомления
echo '<div class="mainname">'.Lang::__('Уведомления').'</div>';
echo '<div class="mainpost">';
    switch($do):
	    
		//По умолчанию
	    default:
		         
	//Выводим счетчик постов
    if ($result = $db->query("SELECT COUNT(*) FROM `friends` WHERE `id_friends` = '".$id_user."' AND `approved` = '0'")) {
        /* Переход к строке №400 */
        $result->data_seek(399);
        /* Получение строки */
        $row = $result->fetch_row();
    }
	
	//Выводим счетчик новых регистраций
    if ($result1 = $db->query("SELECT COUNT(*) FROM `log_user` WHERE `time` > ".(time()-86400)."")) {
        /* Переход к строке №400 */
        $result1->data_seek(399);
        /* Получение строки */
        $row1 = $result1->fetch_row();
    }	
		
	        echo '<div class="subpost"><a href="?act=notificationlog&do=friends">'.Lang::__('Уведомления в друзья').'</a> <span class="time">'.$row[0].'</span></div>';
			if($users['group'] == 15 and $glob_core['notify_reg'] == 1) {
			    echo '<div class="subpost"><a href="?act=notificationlog&do=new_reg">'.Lang::__('Новые регистрации').'</a> <span class="time">'.$row1[0].'</span></div>';
	        }
			
			//Переадресация		
			echo engine::home(array(Lang::__('Назад'),'/modules/menu.php'));
		break;
		
		//Уведомления о новых регистрациях пользователей
		case 'new_reg':
				if($users['group'] == 15 and $glob_core['notify_reg'] == 1) {
		    switch($active):
				default:
					echo '<div class="mainname">'.Lang::__('Новые пользователи').'</div>';
					echo '<div class="mainpost">';
						$user = $db->query("SELECT * FROM `log_user` ORDER BY `time` DESC");
							while($users = $db->get_array($user)) {
						        $info_user = $db->get_array($db->query("SELECT * FROM `users` WHERE `nick` = '".$users['nick']."'"));
									echo '<div class="subpost">';
									echo '<a href="?act=notificationlog&do=new_reg&active=new_user&id='.$info_user['id'].'"><b>'.$users['nick'].'</b></a><span class="time">'.date::make_date($users['time']).'</span>';	
									echo '</div>';
							}
					echo '</div>';
				break;
				
				case 'new_user':
				//Проверяем находится ли нумерное значение в переменной
				$id = (int) $_GET['id'];
				//Проверка на правильности
				if($id == true) {
				    //Выводим из базы необходимые данные
				    $user_info = $db->get_array($db->query("SELECT * FROM `users` WHERE `id` = '".intval($id)."'"));
					//Выводим полученные данные
					echo '<div class="mainname">Пользователь: '.$user_info['nick'].'</div>'; // Название
					echo '<div class="mainpost">
                    '.Lang::__('Дата регистрации:').'&nbsp;'.date::make_date($user_info['reg_date']).'<br/>'; // Время регистрации
					//Если у нового пользователь имеется уже вход на сайт то выведит
					if($user_info['lastdate'] == true) {
						echo Lang::__('Последний вход:').'&nbsp;'.date::make_date($user_info['lastdate']); //Последний вход
					}
					echo '</div>';
					//Иначе переадресация на главную
				}else {
				    header('Location: ?act=notificationlog&do=new_reg');
				}
				//Переадресация		
			    echo engine::home(array(Lang::__('Назад'),'/modules/profile.php?act=notificationlog'));
				break;
       		endswitch;		
        }else {
		header('Location: /modules/profile.php?act=notificationlog');
		}			
		break;
		
		//Уведомления в друзьях
		case 'friends':
				//Навигация перехода	
				echo '<div class="subpost">';
				echo '<a href="/modules/friends.php">'.Lang::__('Друзья').'</a>&nbsp;&nbsp;
						<a href="/modules/profile.php?act=notificationlog&do=friends"><b>'.Lang::__('Друзья в ожидании утверждения').'</b></a></div>';
				
			
		//Проверка если существует $_GET['accept']
		if(isset($_GET['accept']) and is_numeric($_GET['accept'])) {
		    //Преобразуем из $_GET  в обычную $
		    $accept = (int) $_GET['accept'];
		        
				//Выводим данные по выбранному индификатору
		        $new_insert = $db->get_array($db->query("SELECT * FROM `friends` WHERE `id` = '".$accept."'"));
				     
					//Добавляем друга
		            $db->query("INSERT INTO `friends` (`id_friends`,`id_user`,`approved`,`time`) VALUES ('".$new_insert['id_user']."','".$new_insert['id_friends']."','1','".time ()."')");
		            //Обновления о том что пользователь согласился дружить с вами
					$db->query("UPDATE `friends` SET `approved` = '1' WHERE `id` = '".$accept."'");
		               //Переадресация на предыдущую страницу
					   header("Location: /modules/profile.php?act=notificationlog&do=friends");
		}
		
		//Отклонения на добавления в друзья
		if(isset($_GET['cancel']) and is_numeric($_GET['cancel'])) {
		    
			//Преобразуем из $_GET  в обычную $
		    $cancel = (int) $_GET['cancel'];
		        
				//Если вы не согласились добавить в друзья то данные о дружбе удаляются
				$db->query("DELETE FROM `friends` WHERE `id` = '".$cancel."'");
					//Переадресация на предыдущую страницу
					header("Location: /modules/profile.php?act=notificationlog&do=friends");
		}
		
		//Выведим всех пользователей ожидающих дружбу
		$new = $db->query("SELECT * FROM `friends` WHERE `id_friends` = '".$id_user."' ORDER BY `approved`");
		        //Проверка существуют ли новые заявки
		        if($db->num_rows($new) > 0) {
		    while($friend = $db->get_array($new)) {
			
			//Ник пользователя
			$nick = $user->users($friend['id_user'],array('nick'),true);
			
			//Параметры
			echo '<div class="subpost">';
				//Проверка если у вас есть не необработанные уведомления то выводим их
				if($friend['id_friends'] == $id_user AND $friend['approved'] == 0) {
				    //Информация
					echo '<b><a href="?act=view&id='.$friend['id_user'].'">'.$nick.'</b></a> - Предлогает вам дружбу <span class="time">'.date::make_date($friend['time']).'</span><br/>';
					//Соглашение на дружбу
					echo '<center><a href="?act=notificationlog&do=friends&accept='.$friend['id'].'" class="Button_secondary"><img src="/engine/template/icons/accept.png">&nbsp;'.Lang::__('Принять').'</a>&nbsp;';
					//Отклонение
					echo '<a href="?act=notificationlog&do=friends&cancel='.$friend['id'].'" class="Button_secondary"><img src="/engine/template/icons/cancel.png">&nbsp;'.Lang::__('Отклонить').'</a></center>';
				}else{
				    //Добавленным выведит пост ниже
					echo '<b><a href="?act=view&id='.$friend['id_user'].'">'.$nick.'</b></a> - Добавлен в друзья <span class="time">'.date::make_date($friend['time']).'</span><br/>';
				}
			echo '</div>';
			}    
			    }else {
				    //Если нет заявок
				    echo engine::error(Lang::__('Новых заявок на дружбу у вас отсутствуют'));
					//Переадресация		
			echo engine::home(array(Lang::__('Назад'),'/modules/profile.php?act=notificationlog'));
					exit;
				     
				}
					//Переадресация		
			echo engine::home(array(Lang::__('Назад'),'/modules/profile.php?act=notificationlog'));
		break;
	//Закрываем ?do=name
	endswitch;
	//Закрытие блока div
	echo '</div>';