View file modules/profile/playname.php

File size: 4.6Kb
<?  
if(!defined('SHCMS_ENGINE')) {
	die( "Неправильное действие" );
}
    if(isset($_POST['submit'])) {
	        //Если у пользователя сменил уже имя пользователя то следующяя смена будет доступна только через неделю после смены
	        if($users['restrict'] > time()) {
		        echo engine::error(Lang::__('Вы больше не можете изменить ваше имя пользователя'),'До: '.date::make_date($users['restrict']));
			    echo engine::home(array(Lang::__('Назад')),'?act=playname');
			    exit;	
			}else {
			    //Если прошла неделя онулируется введенное имя
	    		$db->query("UPDATE `users` SET `changes` = '0' WHERE `id` = '".$users['id']."'");
			} 
	    $pass = isset($_POST['password']) ? trim($_POST['password']) : '';
		
		//Проверяем введен ли пароль
	    if(empty($pass)) {
		    echo engine::error(Lang::__('Не введен пароль'));
			echo engine::home(array(Lang::__('Назад')),'?act=playname');
			exit;
	    }
		//Проверяем введен ли имя
		if(empty($_POST['name'])) {
		    echo engine::error(Lang::__('Не введен пароль'));
			echo engine::home(array(Lang::__('Назад')),'?act=playname');
			exit;
	    }
		
		//Если введенный вами Логин уже существует в базе выводит вам ошибку
		$regnick = $db->query("SELECT * FROM `users` WHERE `nick` = '" . $db->safesql($_POST['name']) ."'");
        if ($db->get_array($regnick) != 0) {
			echo engine::error(Lang::__('Введенный вами Логин занят '));
			echo engine::home(array(Lang::__('Назад')),'?act=playname');
			exit;
	    }
		
		//Кадировка в md5
		$password = md5(md5($pass));

		//Проверка на правильность пароля
		if($password != $users['password']) {
		    echo engine::error(Lang::__('Неверный текущий пароль'));
			echo engine::home(array(Lang::__('Назад')),'?act=playname');
		    exit;
		}
		
		//Проверям допускать ли логин к активации
		if($_POST['name']  != engine::nick($_POST['name'])) {
    		echo engine::error('В Имени содержатся запрещенные символы');
   			echo engine::home(array(Lang::__('Назад'),'?act=playname'));  
			exit;		
		}
		
	    $mysql = $db->query("UPDATE `users` SET `nick` = '".$db->safesql($_POST['name'])."', `changes` = '".($users['changes']+1)."',`time_name` = '".time()."',`restrict` = '".(time()+604800)."' WHERE `id` = '".$users['id']."'");
	    if($mysql == true) {
            echo engine::success(Lang::__('Настройки сохранены'));
		    echo engine::home(array(Lang::__('Назад'),'?act=playname'));
			exit;
		}else {
            echo engine::error(Lang::__('Настройки не сохранены'));
		    echo engine::home(array(Lang::__('Назад'),'?act=playname'));
			exit;		
		}
	
	}


    
	echo '<div class="mainname">'.Lang::__('Изменить имя пользователя').'</div>';
	echo '<div class="mainpost">';
	//Рекомендация
	echo '<div class="subpost">Вы сделали <b>'.$users['changes'].'</b> из <b>'.$glob_core['name_kol'].'</b> изменений имени пользователя с 
		'.date::make_date($users['time_name']).'. Вам разрешено делать не более '.$glob_core['name_kol'].' изменений каждые 7 дней.
		Изменение отображаемого имени не отразится на ваших данных!</div>';
            //Форма ввода
			$form = new form('?act=playname');
			$form->input(Lang::__('Введите новое имя пользователя'),'name','text');
			$form->text('<small style="color: #a4a4a4;font-size:11px;">'.Lang::__('Запрещенные символы:').' [ ] | , ; </small><br/>');
			$form->input(Lang::__('Введите ваш текущий пароль'),'password','password');
			$form->text('<small style="color: #a4a4a4;font-size:11px;">'.Lang::__('Это гарантирует безопасность вашей учетной записи').'</small><br/>');
			$form->text('</div>');
			$form->text('<div class="submit">');
			$form->submit('Сохранить','submit');
			$form->text('</div>');
			$form->display();

		echo engine::home(array(Lang::__('Назад'),'/modules/profile.php?act=edit_profile'));