Example #1
0
function authSMS($uid, $action = 'send', $phone = null)
{
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/sms_gate_a1.php';
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/sbr.php';
    $objResponse = new xajaxResponse();
    //@todo: запрещаем изменять финансы в старой СБР #29196
    $objResponse->alert('Прекращена поддержка СБР.');
    return $objResponse;
    if (!$uid) {
        $uid = get_uid();
    }
    if ($uid != get_uid() || get_uid() <= 0) {
        return $objResponse;
    }
    $reqv = sbr_meta::getUserReqvs($uid);
    if ($reqv['user_id'] == null) {
        // Еще не создано
        $reqv['from_type'] = 1;
        $reqv['rez_type'] = sbr::RT_RU;
        $reqv['is_activate_mob'] = 'f';
    }
    $ureqv = $reqv[$reqv['form_type']];
    if ($phone !== null && $reqv['is_activate_mob'] == 'f' && $phone != $ureqv['mob_phone'] && $_SESSION['is_verify'] != 't') {
        $ureqv['mob_phone'] = $phone;
        $nreqv['mob_phone'] = $phone;
        //@todo: запрещаем изменять финансы в старой СБР #29196
        //$error = sbr_meta::setUserReqv($uid, $reqv['rez_type'], $reqv['from_type'], $nreqv);
        if ($error['mob_phone']) {
            $objResponse->call('alert', $error['mob_phone']);
            return $objResponse;
        }
    }
    // Если уже активировано
    if ($reqv['is_activate_mob'] == 't') {
        $html = '<div class="b-layout__txt b-layout__txt_padtop_7 b-layout__txt_nowrap b-layout__txt_inline-block"><span class="b-icon b-icon_sbr_gok b-icon_top_2"></span>Активирован</div>';
        $objResponse->script("\$('auth_popup').set('html', '');\$('auth_popup').hide(); \$\$('.c_sms_main').set('html', '{$html}');");
        return $objResponse;
    }
    $sms_gate = new sms_gate_a1($ureqv['mob_phone']);
    $info = $sms_gate->getInfoSend();
    if (!$sms_gate->isNextSend() && (in_array($action, array('send', 'safety')) || $action == 'resend')) {
        $sms_gate->sendAuthCellCode();
        if (SMS_GATE_DEBUG) {
            $code_debug = $sms_gate->getAuthCode();
        }
    } elseif ($action == 'resend') {
        $timer = $sms_gate->next_time_send - time();
        $objResponse->alert("Следующее сообщение можно будет послать через {$timer} " . ending($timer, 'секунду', 'секунды', 'секунд'));
        return $objResponse;
    } else {
        $timer = $sms_gate->next_time_send - time();
        if ($timer > 0) {
            $objResponse->alert("Следующее сообщение можно будет послать через {$timer} " . ending($timer, 'секунду', 'секунды', 'секунд'));
            return $objResponse;
        }
    }
    if (SMS_GATE_DEBUG && !$code_debug) {
        $code_debug = $info['data'];
    }
    if ($action == 'send') {
        $callback_js = 'a_sms_act';
        ob_start();
        include $_SERVER['DOCUMENT_ROOT'] . '/sbr/tpl.auth_sms_popup.php';
        $out = ob_get_clean();
        $objResponse->assign('auth_popup', 'innerHTML', $out);
        $objResponse->script("\$('auth_popup').show(); \$('auth_popup').removeClass('b-shadow_hide'); shadow_popup();");
    } elseif ($action == 'safety') {
        $callback_js = 'a_sms_act_safety';
        ob_start();
        include $_SERVER['DOCUMENT_ROOT'] . '/sbr/tpl.auth_sms_popup.php';
        $out = ob_get_clean();
        $objResponse->assign('auth_popup', 'innerHTML', $out);
        $objResponse->script("\$('auth_popup').show();\$('auth_popup').removeClass('b-shadow_hide'); shadow_popup();");
    } else {
        $text = 'СМС не пришло';
        $isExceed = $sms_gate->limitSmsOnNumberIsExceed($ureqv['mob_phone'], $recId, $count, $message);
        $css1 = sms_gate_a1::$disable_link_css;
        $css2 = sms_gate_a1::$enable_link_css;
        if (!$isExceed) {
            $text .= " ({$message})";
        } else {
            $text = $message;
            $buf = $css1;
            $css1 = $css2;
            $css2 = $buf;
        }
        $objResponse->script("\$('a_sms_act').removeClass('b-button_rectangle_color_disable');\n                              \$('sms_error').addClass('b-layout__txt_hide');\n                              \$('i_sms_code').getParent().removeClass('b-combo__input_error');\n                              \$('a_sms_resend').set('text', '{$text}');\n                              \$('a_sms_resend').removeClass('{$css1}').addClass('{$css2}');");
        if ($code_debug) {
            $objResponse->script("\$('i_sms_code').set('value', '{$code_debug}');");
        }
    }
    return $objResponse;
}
Example #2
0
echo sms_gate::LIMIT_EXCEED_LINK_TEXT;
?>
';
	var LIMIT_SMS_TO_NUMBER = '<?php 
echo sms_gate::SMS_ON_NUMBER_PER_24_HOURS;
?>
';

	<?php 
$linkText = $_SESSION['send_sms_time'] > time() && !$_SESSION["unbind_phone_action"] ? "Получить код повторно" : "Получить смс с кодом";
$smsLinkEnable = sms_gate_a1::$enable_link_css;
$smsLinkDisable = sms_gate_a1::$disable_link_css;
$smsLinkStyle = $_SESSION['send_sms_time'] > time() ? $smsLinkDisable : $smsLinkEnable;
if (strlen($ureqv['mob_phone']) > 10) {
    $sms = new sms_gate_a1($ureqv['mob_phone']);
    $sms->limitSmsOnNumberIsExceed($ureqv['mob_phone'], $recordId, $count, $message);
    ?>
var sms_message_link_end = '<?php 
    echo $message;
    ?>
';
		<?php 
    if ($count < sms_gate::SMS_ON_NUMBER_PER_24_HOURS) {
        $linkText .= " ({$message})";
    } else {
        $linkText = $message;
        $smsLinkStyle = $smsLinkDisable;
        ?>
var smslimit = true;<?php 
    }
}