Ejemplo n.º 1
0
 public function render($matches)
 {
     $text = '';
     $mode = $matches[0];
     switch ($mode) {
         case 'sound':
             $text = self::render_sound(codes::fix_tags($matches[1]));
             break;
         default:
             $text = self::render_embed(codes::fix_tags($matches[1]));
             break;
     }
     return $text;
 }
Ejemplo n.º 2
0
<?php

require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/stdf.php';
require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/codes.php';
$stretch_page = 1;
$cuid = htmlspecialchars($_REQUEST['c']);
$action = trim($_REQUEST['action']);
$codes = new codes();
if (!$cuid) {
    $master_error = 'Пройдите по ссылке в письме или скопируйте ее в адресную строку браузера';
} else {
    $codes->GetRow($cuid);
    if (!$codes->code) {
        $master_error = '
        Код для восстановления пароля не найден или устарел. 
        Возможно вы уже изменили пароль, если нет – повторите процедуру восстановления доступа еще раз.';
    } else {
        $uuid = $cuid;
    }
}
if ($action == 'change' && !$master_error) {
    $pwd = strip_tags(stripslashes(trim($_POST['pwd'])));
    $pwd2 = strip_tags(stripslashes(trim($_POST['pwd2'])));
    if (!preg_match('/^[a-zA-Z\\d\\!\\@\\#\\$\\%\\^\\&\\*\\(\\)\\_\\+\\-\\=\\;\\,\\.\\/\\?\\[\\]\\{\\}]+$/', $pwd)) {
        $error = 'Пароль содержит недопустимые символы.<br>' . 'Пожалуйста, используйте только латинские буквы, цифры<br>' . 'и следующие спецсимволы: !@#$%^&*()_+-=;,./?[]{}';
    } elseif (strcmp($pwd, $pwd2)) {
        $error = 'Введенные пароли не совпадают';
    } elseif (strlen($pwd) < 6) {
        $error = 'Слишком короткий пароль (минимум — 6 символов)';
    } elseif (strlen($pwd) > 24) {
        $error = 'Слишком длинный пароль (максимум — 24 символа)';
Ejemplo n.º 3
0
 /**
  * Генерация кодя для напоминания пароля.
  *
  * @param integer $mail  e-mail пользователя
  * @param string  $error ошибка
  *
  * @return array данные пользователя
  */
 public function Remind($mail, &$error)
 {
     global $DB;
     $ret = 0;
     $sql = 'SELECT login, uid FROM users WHERE lower(email)=?';
     $res = $DB->query($sql, strtolower($mail));
     $error = $DB->error;
     if (!$error) {
         $size = pg_num_rows($res);
         if (!$size) {
             $error = 'Введенный электронный адрес в базе не найден';
         } else {
             require_once ABS_PATH . '/classes/codes.php';
             $code = new codes();
             list($login, $uid) = pg_fetch_row($res);
             $code->user_id = $uid;
             $code->type = 1;
             $ret = $code->Add($error);
             $this->GetUser($login);
         }
     }
     return $ret;
 }
Ejemplo n.º 4
0
         $sObjLink = '/users/' . $user->login;
         $sReason = '–ейтинг ' . (floatval($o_oth_plus) < 0 ? 'уменьшен' : 'увеличен') . ' на ' . abs($o_oth_plus);
         admin_log::addLog(admin_log::OBJ_CODE_USER, admin_log::ACT_ID_USR_CH_RATING, $user->uid, $user->uid, $sObjName, $sObjLink, 0, '', 0, $sReason);
         //-----------------------------------
         header("Location: /siteadmin/rating/?result=success");
         exit;
     }
     $error = "ќшибка.";
     break;
 case "setpwd":
     $login = __paramInit('string', NULL, 'login');
     $pwd = stripslashes($_POST['pwd']);
     //__paramInit('string', NULL, 'pwd');
     require_once ABS_PATH . "/classes/users.php";
     require_once ABS_PATH . "/classes/codes.php";
     $codes = new codes();
     $user = new users();
     $uid = $user->GetUid($error, $login);
     $user->passwd = $pwd;
     $err = $user->Update($uid, $res);
     $codes->DelByUT($uid, 1);
     // ѕишем в лог смены паролей
     require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/restorepass_log.php";
     restorepass_log::SaveToLog($uid, getRemoteIP(), 4, get_uid(false));
     header("Location: /siteadmin/rating/?result=success");
     break;
 case "addserv":
     $login = __paramInit('string', NULL, 'login');
     $days = __paramInit('string', NULL, 'days');
     $type = __paramInit('int', NULL, 'type');
     $where = __paramInit('int', NULL, 'where');