예제 #1
0
파일: CUserEx.php 프로젝트: Hawkart/megatv
 function OnBeforeUserLogin($arFields)
 {
     $phone = preg_replace("/[^0-9]/", '', $arFields["LOGIN"]);
     if (\CDev::check_phone($phone)) {
         $filter = array("PERSONAL_PHONE" => $phone);
     } else {
         $filter = array("=EMAIL" => $arFields["LOGIN"]);
     }
     $rsUsers = \CUser::GetList($by = "LAST_NAME", $order = "asc", $filter);
     if ($user = $rsUsers->GetNext()) {
         $arFields["LOGIN"] = $user["LOGIN"];
     }
 }
예제 #2
0
파일: ajax.php 프로젝트: Hawkart/megatv
$result['message'] = '';
//$result['post'] = $_POST;
if (!$USER->IsAuthorized()) {
    $html = "";
    if (strlen($_POST['ajax_key']) && $_POST['ajax_key'] != md5('ajax_' . LICENSE_KEY) || !check_bitrix_sessid()) {
        $html = "Сессия не действительна!";
    }
    $emailTo = trim(htmlspecialcharsbx($_POST['USER_LOGIN']));
    $phone = preg_replace("/[^0-9]/", '', $emailTo);
    $checkword = htmlspecialcharsbx($_POST["USER_CHECKWORD"]);
    $password = htmlspecialcharsbx($_POST["USER_PASSWORD"]);
    if (!CDev::check_email($emailTo) && !CDev::check_phone($phone)) {
        $result['errors']["USER_LOGIN"] = "******";
    }
    if (empty($html) && count($result['errors']) == 0) {
        if (CDev::check_phone($phone)) {
            $rsUsers = CUser::GetList($by = "EMAIL", $order = "desc", array("PERSONAL_PHONE" => $phone), array("SELECT" => array("UF_PHONE_CHECKWORD", "ID")));
            if ($arUser = $rsUsers->GetNext()) {
                if ($arUser["UF_PHONE_CHECKWORD"] == $checkword && !empty($arUser["UF_PHONE_CHECKWORD"])) {
                    $cuser = new CUser();
                    $cuser->Update($arUser["ID"], array("UF_PHONE_CHECKWORD" => "", "PASSWORD" => $password, "CONFIRM_PASSWORD" => $password));
                    $result['status'] = "success";
                } else {
                    $result['errors']["USER_LOGIN"] = "******";
                }
            } else {
                $result['errors']["USER_LOGIN"] = '******';
            }
        } else {
            $rsUsers = CUser::GetList($by = "EMAIL", $order = "desc", array("=EMAIL" => $emailTo));
            if ($arUser = $rsUsers->GetNext()) {