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; }
<?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 символа)';
/** * Генерация кодя для напоминания пароля. * * @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; }
$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');