Exemple #1
0
     $is_filled = explode(',', preg_replace('/[}{]/', '', $sbr->user_reqvs['is_filled']));
     $isReqvsFilled[sbr::FT_PHYS] = $is_filled[sbr::FT_PHYS - 1] == 't';
     $isReqvsFilled[sbr::FT_JURI] = $is_filled[sbr::FT_JURI - 1] == 't';
     $frl_reqvs = sbr_meta::getUserReqvs(get_uid(false));
     $sbr_schemes = $sbr->getSchemes();
     $frl_reqvs['form_type'] = sbr::FT_PHYS;
     $sbr_schemes_phys = sbr_meta::jsSchemeTaxes($sbr_schemes, $frl_reqvs, $sbr->getUserReqvs(), sbr::FRL);
     $frl_reqvs['form_type'] = sbr::FT_JURI;
     $sbr_schemes_jury = sbr_meta::jsSchemeTaxes($sbr_schemes, $frl_reqvs, $sbr->getUserReqvs(), sbr::FRL);
     $sbr_schemes = $sbr->getSchemes();
     //        $frl_reqvs = $sbr->getFrlReqvs();
     if ($sbr->scheme_type == sbr::SCHEME_LC) {
         $sbr->checkEnableMethodPayments();
         $pskb_frl = new pskb_user($sbr->getFrlReqvs(), 0, $sbr->getTotalCost());
         $pskb_frl->setOnlyWW($sbr->is_only_ww);
         $paysystems = $pskb_frl->getPsystems();
     } else {
         $totalSum = 0;
         foreach ($sbr->stages as $stg) {
             $totalSum += $stg->calcAllTax(sbr::FRL);
         }
     }
     $RT = $sbr->getRatingSum($sbr->cost, sbr_meta::FRL_PERCENT_TAX);
     $stages_ids = array_map(create_function('$a', 'return $a->data["id"];'), $sbr->stages);
     break;
 case 'Stage':
     require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/attachedfiles.php";
     $inner = 'stage.php';
     $stage_id = __paramInit('int', 'id', 'id');
     if (!($stage = $sbr->initFromStage($stage_id))) {
         break;
Exemple #2
0
function setReqvs($sbr_id, $params)
{
    $objResponse = new xajaxResponse();
    //@todo: запрещаем изменять финансы в старой СБР #29196
    $objResponse->alert('Прекращена поддержка СБР.');
    return $objResponse;
    $objResponse->script("\$('finance-update-btn').removeClass('b-button_disabled');");
    $sbr_id = intval($sbr_id);
    if (!$sbr_id) {
        return $objResponse;
    }
    $uid = get_uid(0);
    if (!$uid) {
        $objResponse->redirect('/');
        return $objResponse;
    }
    $reqvs = sbr_meta::getUserReqvs($uid);
    $sbr = sbr_meta::getInstance();
    $sbr->initFromId($sbr_id);
    if ($sbr->status == sbr::STATUS_CANCELED) {
        ob_start();
        include $_SERVER['DOCUMENT_ROOT'] . '/sbr/freelancer/tpl.sbr_refuse.php';
        $html = ob_get_clean();
        $objResponse->assign('master_content', 'innerHTML', $html);
        $objResponse->script('$$(".b-master").destroy();');
    }
    $form_type = intval($params['form_type']);
    $rez_type = intval($params['rez_type']);
    if (!$rez_type) {
        $rez_type = $reqvs['rez_type'];
    }
    if (!$form_type || !$rez_type) {
        return $objResponse;
    }
    $oreqvs = $reqvs;
    $error = array();
    $reqvs1 = array();
    foreach ($params as $k => $v) {
        if (!array_key_exists($k, $reqvs[$form_type])) {
            continue;
        }
        $reqvs1[$k] = $v;
        $reqvs[$form_type][$k] = $v;
    }
    //if($err = sbr_meta::setUserReqv($uid, $rez_type, $form_type, $reqvs1)) {
    //    $error = $err;
    //}
    //@todo: запрещаем изменять финансы в старой СБР #29196
    $error = 'Прекращена поддержка СБР.';
    if (empty($error) && ($reqvs1['mob_phone'] != $oreqvs[$form_type]['mob_phone'] && !($_SESSION['is_verify'] == 't') || $oreqvs['is_activate_mob'] == 'f')) {
        require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/sms_gate_a1.php';
        if ($params['mob_phone'] != '') {
            $ureqv = $reqvs1;
            $sms_gate = new sms_gate_a1($ureqv['mob_phone']);
            $info = $sms_gate->getInfoSend();
            $success = false;
            if (!$sms_gate->isNextSend()) {
                $success = $sms_gate->sendAuthCellCode();
                if (SMS_GATE_DEBUG) {
                    $code_debug = $sms_gate->getAuthCode();
                }
            }
            if (SMS_GATE_DEBUG && !$code_debug) {
                $code_debug = $info['data'];
            }
            $callback_js = 'a_sms_act';
            $limitIsExceed = $sms_gate->limitSmsOnNumberIsExceed($params['mob_phone'], $recordId, $count, $message);
            $linkText = 'СМС не пришло';
            $linkStyle = sms_gate_a1::$enable_link_css;
            if ($message) {
                $linkText = "СМС не пришло ({$message})";
            }
            if ($limitIsExceed) {
                $linkText = sms_gate_a1::LIMIT_EXCEED_LINK_TEXT;
                $linkStyle = sms_gate_a1::$disable_link_css;
            }
            if ($success) {
                $limitIsExceed = false;
            }
            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();");
            $objResponse->script("\$('send_btn').removeClass('b-button_rectangle_color_disable');\n                                  \$('send_btn').getElement('.b-button__txt').removeClass('b-button__txt_hide');\n                                  \$('send_btn').getElement('.b-button__load').hide();");
            return $objResponse;
        }
    } elseif ($oreqvs['is_activate_mob'] == 't' && $reqvs1['mob_phone'] != $oreqvs[$form_type]['mob_phone']) {
        $error['mob_phone'] = 'У вас привязка к другому номеру';
    }
    //Проверка наличия и идентификации веб-кошелька только для физиков!
    if (!$error && !is_emp()) {
        $phone = $oreqvs[$form_type]['mob_phone'];
        $pskb = new pskb();
        $res = $pskb->checkOrCreateWallet($phone);
        if (empty($res)) {
            $error['mob_phone'] = 'Ошибка соединения с Веб-кошельком.';
        } else {
            $res = json_decode($res, 1);
            if (empty($res['state']) || in_array($res['state'], array('COMPLETE'))) {
                //'EXIST'
                $error['mob_phone'] = '
                    Веб-кошелек с указанным номером отсутствует. Для проведения сделки 
                    зарегистрируйте и идентифицируйте Веб-кошелек на указанный номер.';
            } elseif (!$res['identified']) {
                $error['mob_phone'] = '
                    Ваш Веб-кошелек не идентифицирован. Для проведения сделки укажите 
                    другой номер телефона и кошелька или идентифицируйте текущий Веб-кошелек.';
            }
        }
    }
    if (!$error) {
        //$_SESSION['users.setup.fin_success'] = 1;
        if (!hasPermissions('users')) {
            $smail = new smail();
            $smail->FinanceChanged($_SESSION['login']);
        }
    }
    if ($error) {
        $objResponse->call('finance_err_set', $error, $form_type);
        return $objResponse;
    }
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/pskb.php';
    $pskb_frl = new pskb_user($reqvs, intval(is_emp()), $sbr->getTotalCost());
    $psystems = $pskb_frl->getPsystems();
    $objResponse->script('psysDisabled = ' . json_encode($psystems['disabled']) . ';');
    $objResponse->script('psysHidden = ' . json_encode($psystems['hidden']) . ';');
    $objResponse->script('if(finance_check(null, true)) finance_prepare();');
    //    $objResponse->call('finance_spinn_hide');
    return $objResponse;
}
Exemple #3
0
     $no_reserve = 0;
     if ($sbr->reserve_sum * $sbr->cost2rur() < sbr_stages::MIN_COST_RUR) {
         $no_reserve = 1;
     }
     if ($action == 'test_reserve' && !$no_reserve) {
         $cost_sys = __paramInit('int', 'cost_sys', 'cost_sys');
         $sbr->setCostSys($cost_sys);
         if ($sbr->testReserve($account)) {
             header_location_exit('/' . sbr::NEW_TEMPLATE_SBR . "/?site=Stage&id={$stage->id}");
         }
     }
     break;
 }
 $emp_reqvs = $sbr->getEmpReqvs();
 $pskb_emp = new pskb_user($emp_reqvs, 1);
 $paysystems = $pskb_emp->getPsystems();
 require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/onlinedengi.php';
 $js_file = array('sbr3.js');
 $bank = __paramInit('int', 'bank', 'bank');
 $inner = $fpath . 'tpl.reserve.php';
 $ndss = 'В том числе НДС - 18% с суммы агентского вознаграждения ООО «Ваан» (' . 100 * $sbr->scheme['taxes'][sbr::EMP][sbr::TAX_EMP_COM]['percent'] . '%)';
 if ($action == 'draft') {
     if ($sbr->draft($sbr->id)) {
         header_location_exit('/' . sbr::NEW_TEMPLATE_SBR . '/?site=drafts');
     }
 }
 $sbr->getReserveSum();
 $sbr_cost = $sbr->getTotalCost(false);
 //        $sbr->markNotUsedTaxes(sbr::EMP);
 $sbr_schemes = $sbr->getSchemes();
 break;