Esempio n. 1
0
 /**
  * Edit Carrier
  */
 public function editAction()
 {
     $this->view->breadcrumb = Snep_Breadcrumb::renderPath(array($this->view->translate("Carrier"), $this->view->translate("Edit")));
     $this->view->objSelectBox = "carrier";
     $id = $this->_request->getParam("id");
     $xml = new Zend_Config_Xml("modules/default/forms/carrier.xml");
     $form = new Snep_Form($xml);
     $carriers = new Snep_Carrier_Manager();
     $carrier = $carriers->find($id)->current();
     // Popula lista de operadoras
     $carrierList = array();
     foreach ($carriers->fetchAll() as $carrierRow) {
         $carrierList[$carrierRow->id_carrier] = $carrierRow->ds_name;
     }
     $carrierElement = $form->getElement('name');
     $carrierElement->setMultiOptions($carrierList)->removeDecorator('DtDdWrapper')->setRegisterInArrayValidator(false);
     $name = $form->getElement('name');
     $name->setValue($carrier['id_carrier'])->setAttrib('disabled', 'disabled');
     $form->getElement('ta')->setValue($carrier['vl_start']);
     $form->getElement('tf')->setValue($carrier['vl_fractionation']);
     $_idleCostCenter = Snep_Carrier_Manager::getIdleCostCenter();
     $idleCostCenter = array();
     foreach ($_idleCostCenter as $idle) {
         $idleCostCenter[$idle['id_costcenter']] = $idle['id_costcenter'] . " : " . $idle['cd_type'] . " - " . $idle['ds_name'];
     }
     if (isset($id)) {
         $_selectedCostCenter = $carrier->findSnep_CostCenter_Manager();
         $selectedCostCenter = array();
         foreach ($_selectedCostCenter as $selected) {
             $selectedCostCenter[$selected['id_costcenter']] = $selected['id_costcenter'] . " : " . $selected['cd_type'] . " - " . $selected['ds_name'];
         }
     }
     $form->setSelectBox($this->view->objSelectBox, $this->view->translate('Cost Center'), $idleCostCenter, $selectedCostCenter);
     $formId = new Zend_Form_Element_Hidden('id');
     $formId->setValue($id);
     $form->addElement($formId);
     if ($this->_request->getPost()) {
         $form_isValid = $form->isValid($_POST);
         $dados = $this->_request->getParams();
         if ($form_isValid) {
             $dados['active'] = 1;
             $manager = new Snep_Carrier_Manager();
             $manager->save($id, $dados);
             $this->_redirect($this->getRequest()->getControllerName());
         }
     }
     $this->view->form = $form;
 }
Esempio n. 2
0
 /**
  *  Add Queue
  */
 public function addAction()
 {
     $this->view->breadcrumb = Snep_Breadcrumb::renderPath(array($this->view->translate("Carrier"), $this->view->translate("Add")));
     $form = new Snep_Form(new Zend_Config_Xml("modules/default/forms/queues.xml"));
     $form->setAction($this->getFrontController()->getBaseUrl() . '/' . $this->getRequest()->getControllerName() . '/add');
     $this->view->url = $this->getFrontController()->getBaseUrl() . '/' . $this->getRequest()->getControllerName();
     $carrier = new Snep_Carrier_Manager();
     foreach ($carrier->fetchAll() as $_carrier) {
         $carriers[$_carrier['id_carrier']] = $_carrier['ds_name'];
     }
     $this->view->carriers = $carriers;
     $states['--'] = '--';
     $statesList = new Snep_State_Manager();
     foreach ($statesList->fetchAll() as $state) {
         $states[$state['id_state']] = $state['ds_name'];
     }
     $this->view->states = $states;
     $cities['--'] = '--';
     foreach (Snep_Billing_Manager::getCity('AC') as $city) {
         $cities[$city['name']] = $city['name'];
     }
     $this->view->cities = $cities;
     $dados = $this->_request->getParams();
     if ($this->_request->getPost()) {
         $form_isValid = true;
         $this->view->error = array();
         if (!preg_match('/[0-9]+$/', $dados['ddd']) || $dados['ddd'] == "") {
             $form_isValid = false;
             $this->view->error['ddd'] = $this->view->translate("City Code not numeric");
         }
         if (!preg_match('/[0-9]+$/', $dados['ddi']) || $dados['ddi'] == "") {
             $form_isValid = false;
             $this->view->error['ddi'] = $this->view->translate("Country Code not numeric");
         }
         if (!preg_match('/[0-9]+$/', $dados['prefixo']) || $dados['prefixo'] == "") {
             $form_isValid = true;
             $this->view->error['prefixo'] = $this->view->translate("Prefix not numeric");
         }
         if ($dados['operadora'] == "") {
             $form_isValid = false;
             $this->view->error['operadora'] = $this->view->translate("Carrier not selected ");
         }
         if ($form_isValid) {
             if ($_POST['ddd'] == "") {
                 $_POST['ddd'] = 0;
             }
             if ($_POST['ddi'] == "") {
                 $_POST['ddi'] = 0;
             }
             $billing = Snep_Billing_Manager::getPrefix($_POST);
             if ($billing) {
                 $form_isValid = false;
                 $this->view->message = $this->view->translate("This bill is already set");
             }
         }
         if ($form_isValid) {
             $xdados = array('data' => $_POST['data'], 'carrier' => $_POST['operadora'], 'country_code' => $_POST['ddi'], 'country' => $_POST['pais'], 'city_code' => $_POST['ddd'], 'city' => $_POST['cidade'], 'state' => $_POST['estado'], 'prefix' => $_POST['prefixo'], 'tbf' => $_POST['vfix'], 'tbc' => $_POST['vcel']);
             Snep_Billing_Manager::add($xdados);
             $this->_redirect($this->getRequest()->getControllerName());
         }
         $this->view->dados = isset($dados) ? $dados : null;
     }
 }