Exemplo n.º 1
0
 /**
  * грузим данные по контракту
  */
 public function action_contract()
 {
     $contractId = $this->request->param('id');
     if ($contractId == 0) {
         $this->html('<div class="error_block">Контракты отсутствуют</div>');
     }
     $tab = $this->request->post('tab');
     $query = $this->request->post('query');
     $params = $this->request->post('params') ?: [];
     $contract = Model_Contract::getContract($contractId);
     if (empty($contract)) {
         $this->html('<div class="error_block">Ошибка</div>');
     }
     $balance = Model_Contract::getContractBalance($contractId);
     switch ($tab) {
         case 'contract':
             $contractSettings = Model_Contract::getContractSettings($contractId);
             $contractTariffs = Model_Contract::getTariffs();
             $noticeSettings = Model_Contract::getContractNoticeSettings($contractId);
             $popupContractNoticeSettings = Common::popupForm('Настройка уведомлений', 'contract/notice_settings', ['settings' => $noticeSettings]);
             $popupContractHistory = Common::popupForm('История по договору', 'contract/history');
             $content = View::factory('ajax/clients/contract/contract')->bind('contract', $contract)->bind('contractSettings', $contractSettings)->bind('contractTariffs', $contractTariffs)->bind('popupContractNoticeSettings', $popupContractNoticeSettings)->bind('popupContractHistory', $popupContractHistory);
             break;
         case 'cards':
             $cards = Model_Card::getCards($contractId);
             $foundCards = false;
             if (!empty($query)) {
                 $params['query'] = $query;
             }
             if (!empty($params)) {
                 $foundCards = Model_Card::getCards($contractId, false, $params);
             }
             $popupCardAdd = Common::popupForm('Добавление новой карты', 'card/add');
             $content = View::factory('ajax/clients/contract/cards')->bind('cards', $cards)->bind('foundCards', $foundCards)->bind('params', $params)->bind('popupCardAdd', $popupCardAdd);
             break;
         case 'account':
             $turnover = Model_Contract::getTurnover($contractId);
             $popupContractPaymentAdd = Common::popupForm('Добавление нового платежа', 'contract/payment_add');
             $popupContractBillAdd = Common::popupForm('Выставить счет', 'contract/bill_add');
             $popupContractBillPrint = Common::popupForm('Печать счетов', 'contract/bill_print');
             $content = View::factory('ajax/clients/contract/account')->bind('balance', $balance)->bind('turnover', $turnover)->bind('popupContractPaymentAdd', $popupContractPaymentAdd)->bind('popupContractBillAdd', $popupContractBillAdd)->bind('popupContractBillPrint', $popupContractBillPrint);
             break;
         case 'reports':
             $content = View::factory('ajax/clients/contract/reports');
             break;
     }
     $html = View::factory('ajax/clients/contract/_tabs')->bind('content', $content)->bind('balance', $balance)->bind('tab', $tab);
     $this->html($html);
 }