コード例 #1
0
ファイル: sbr.server.php プロジェクト: kapai69/fl-ru-damp
function resendCode($sbr_id, $stage_id)
{
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/pskb.php';
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/memBuff.php';
    $sbr_id = __paramValue('int', $sbr_id);
    $stage_id = __paramValue('int', $stage_id);
    $objResponse = new xajaxResponse();
    $objResponse->script("\$('alert_sms').removeClass('b-layout__txt_color_56bd06').removeClass('b-layout__txt_color_c7271e'); ");
    if (!$sbr_id) {
        $objResponse->script("\$('alert_sms').addClass('b-layout__txt_color_c7271e'); \n                              \$('alert_sms').set('html', 'Запрос не может быть обработан.');");
        //$objResponse->alert('Запрос не может быть обработан.');
        return $objResponse;
    }
    $m = new memBuff();
    $lasttime = $m->get(pskb::SMS_RESEND_KEY . $sbr_id);
    if ($lasttime) {
        $mins = ceil(($lasttime + 300 - time()) / 60);
        $objResponse->script("\$('alert_sms').addClass('b-layout__txt_color_c7271e'); \n                              \$('alert_sms').set('html', 'Еще раз выслать код можно будет через {$mins} минут" . ending($mins, 'у', 'ы', '') . ".');");
        //$objResponse->alert("Повторный запрос можно будет сделать примерно через {$mins} минут" . ending($mins, 'у', 'ы', '') );
        return $objResponse;
    }
    $uid = get_uid(0);
    if (!$uid) {
        $objResponse->redirect('/');
        return $objResponse;
    }
    $sbr = sbr_meta::getInstance();
    if (!$sbr->initFromId($sbr_id)) {
        $objResponse->script("\$('alert_sms').addClass('b-layout__txt_color_c7271e'); \n                              \$('alert_sms').set('html', 'Запрос не может быть обработан.');");
        return $objResponse;
    }
    $stage = $sbr->initFromStage($stage_id, false);
    if (!$stage) {
        $objResponse->script("\$('alert_sms').addClass('b-layout__txt_color_c7271e'); \n                              \$('alert_sms').set('html', 'Запрос не может быть обработан.');");
        return $objResponse;
    }
    if ($uid != $sbr->data['frl_id']) {
        $objResponse->script("\$('alert_sms').addClass('b-layout__txt_color_c7271e'); \n                              \$('alert_sms').set('html', 'Запрос не может быть обработан.');");
        //$objResponse->alert('Запрос не может быть обработан.');
        return $objResponse;
    }
    $pskb = new pskb($sbr);
    if (!$pskb->resendCode($stage)) {
        $objResponse->script("\$('alert_sms').addClass('b-layout__txt_color_c7271e'); \n                              \$('alert_sms').set('html', 'Не удалось выслать код.');");
        //$objResponse->alert('Ошибка запроса. Попробуйте еще раз.');
        return $objResponse;
    }
    $m->set(pskb::SMS_RESEND_KEY . $sbr_id, time(), 300);
    $objResponse->script("\$('alert_sms').addClass('b-layout__txt_color_56bd06'); \n                          \$('alert_sms').set('html', 'Код отправлен повторно.');\n                          \$('send_sms').destroy();\n                          \$('resend_sms').set('html', 'Еще раз выслать код можно будет через 5 минут.')");
    //$objResponse->alert('Код отправлен повторно.');
    if (defined('PSKB_TEST_MODE')) {
        $objResponse->script('document.location.reload();');
    }
    return $objResponse;
}