Beispiel #1
0
 /**
  * Get the attachment files
  * 
  * @param integer $id
  * @param string $attachedto [customers, orders, domains]
  */
 public function Attachments($id, $attachedto)
 {
     $registry = Shineisp_Registry::getInstance();
     $translator = $registry->Zend_Translate;
     // Get the attached files
     if (!empty($id) && is_numeric($id)) {
         $this->view->files = Files::findbyExternalId($id, $attachedto);
     }
     // Path of the template
     return $this->view->render('partials/attachments.phtml');
 }
Beispiel #2
0
 /**
  * Handle the Attachment links
  * @param integer $id
  * @param string $attachedto
  * @return string
  */
 public function Attachments($id, $attachedto)
 {
     $registry = Shineisp_Registry::getInstance();
     $translator = $registry->Zend_Translate;
     $records = Files::findbyExternalId($id, $attachedto);
     $auth = Zend_Auth::getInstance();
     if ($auth->hasIdentity()) {
         $data = $auth->getIdentity();
         $this->view->files = $records;
         // Path of the template
         return $this->view->render('partials/attachments.phtml');
     }
 }
Beispiel #3
0
 /**
  * editAction
  * Get a record and populate the application form 
  * @return unknown_type
  */
 public function editAction()
 {
     $form = $this->getForm('/orders/process');
     $id = $this->getRequest()->getParam('id');
     $NS = new Zend_Session_Namespace('Default');
     $currency = Shineisp_Registry::getInstance()->Zend_Currency;
     try {
         if (!empty($id) && is_numeric($id)) {
             $fields = "o.order_id, \n\t\t\t\t\t\t\to.order_number as order_number,\n\t\t\t\t\t\t\tDATE_FORMAT(o.order_date, '%d/%m/%Y') as Starting, \n\t\t\t\t\t\t\tDATE_FORMAT(o.expiring_date, '%d/%m/%Y') as Valid_Up, \n\t\t\t\t\t\t\tin.invoice_id as invoice_id, \n\t\t\t\t\t\t\tin.formatted_number as invoice_number, \n\t\t\t\t\t\t\tCONCAT(d.domain, '.', w.tld) as Domain, \n\t\t\t\t\t\t\tc.company as company, \n\t\t\t\t\t\t\to.status_id, \n\t\t\t\t\t\t\ts.status as Status, \n\t\t\t\t\t\t\to.vat as VAT, \n\t\t\t\t\t\t\to.total as Total, \n\t\t\t\t\t\t\to.grandtotal as Grandtotal";
             $rs = Orders::getAllInfo($id, $fields, true, $NS->customer['customer_id']);
             if (!empty($rs)) {
                 // Check the status of the order.
                 // If the order has to be paid we have update it to the last prices and taxes
                 if ($rs[0]['status_id'] == Statuses::id('tobepaid', 'orders')) {
                     // Update the total order
                     Orders::updateTotalsOrder($id);
                     // Reload the data
                     $rs = Orders::getAllInfo($id, $fields, true, $NS->customer['customer_id']);
                     $rs[0]['Total'] = $currency->toCurrency($rs[0]['Total'], array('currency' => Settings::findbyParam('currency')));
                     $rs[0]['VAT'] = $currency->toCurrency($rs[0]['VAT'], array('currency' => Settings::findbyParam('currency')));
                     $rs[0]['Grandtotal'] = $currency->toCurrency($rs[0]['Grandtotal'], array('currency' => Settings::findbyParam('currency')));
                     $this->view->tobepaid = true;
                     // To be Paid status
                 }
                 $records = OrdersItems::getAllDetails($id, "oi.detail_id, \n                                        \t\t\t\t\t        oi.description as description, \n                                        \t\t\t\t\t        DATE_FORMAT(oi.date_end, '%d/%m/%Y') as expiration_date, \n                                        \t\t\t\t\t        oi.quantity as quantity, \n                                        \t\t\t\t\t        oi.price as price, \n                                        \t\t\t\t\t        CONCAT(oi.discount, '%') as discount, \n                                        \t\t\t\t\t        oi.subtotal as subtotal, \n                                        \t\t\t\t\t        bc.name as billingcycle, \n                                        \t\t\t\t\t        oi.setupfee as setupfee", true);
                 for ($i = 0; $i < count($records); $i++) {
                     $records[$i]['price'] = $currency->toCurrency($records[$i]['price'], array('currency' => Settings::findbyParam('currency')));
                     $records[$i]['subtotal'] = $currency->toCurrency($records[$i]['subtotal'], array('currency' => Settings::findbyParam('currency')));
                     $records[$i]['setupfee'] = $currency->toCurrency($records[$i]['setupfee'], array('currency' => Settings::findbyParam('currency')));
                 }
                 $columns = array();
                 $columns[] = $this->translator->translate('Description');
                 $columns[] = $this->translator->translate('Expiry Date');
                 $columns[] = $this->translator->translate('Qty');
                 $columns[] = $this->translator->translate('Price');
                 $columns[] = $this->translator->translate('Discount');
                 $columns[] = $this->translator->translate('Subtotal');
                 $columns[] = $this->translator->translate('Billing Cycle');
                 $columns[] = $this->translator->translate('Setup Fee');
                 $this->view->customer_id = $NS->customer['customer_id'];
                 $this->view->invoiced = $rs[0]['status_id'] == Statuses::id("complete", "orders") && $rs[0]['invoice_number'] > 0 ? true : false;
                 $this->view->invoice_id = $rs[0]['invoice_id'];
                 $this->view->order = array('records' => $rs);
                 $this->view->details = array('records' => $records, 'columns' => $columns);
                 // Get Order status history
                 $this->view->statushistory = StatusHistory::getStatusList($id);
                 // Show the list of the messages attached to this domain
                 $this->view->messages = Messages::getbyOrderId($id);
                 $this->view->headTitle()->prepend($this->translator->_('Order %s', $rs[0]['order_number']));
                 $rsfiles = Files::findbyExternalId($id, "orders", "file, Date_Format(date, '%d/%m/%Y') as date, fc.name as categoryname, publickey, download");
                 if (isset($rsfiles[0])) {
                     $this->view->files = $rsfiles;
                 }
                 // Send the data to the form
                 $form->populate($rs[0]);
                 $this->view->title = $this->translator->_('Order %s', $rs[0]['order_number']);
                 $this->view->orderid = $id;
             } else {
                 $this->_helper->redirector('index', 'orders', 'default', array('mex' => 'Order not found', 'status' => 'information'));
                 die;
             }
         }
         #$this->view->title = $this->translator->_('Order %s', $formattedID);
         $this->view->description = "Here you can see all the order information.";
         $this->view->dnsdatagrid = $this->dnsGrid();
         $this->view->form = $form;
         $this->_helper->viewRenderer('customform');
     } catch (Exception $e) {
         echo $e->getMessage();
         die;
     }
 }
Beispiel #4
0
 private function filesGrid()
 {
     $request = $this->getRequest();
     if (isset($request->id) && is_numeric($request->id)) {
         $rs = Files::findbyExternalId($request->id, "orders", "file, Date_Format(date, '%d/%m/%Y') as date, fc.name as name, DATE_FORMAT(lastdownload, '" . Settings::getMySQLDateFormat('dateformat') . "') as downloaded");
         if (isset($rs[0])) {
             return array('records' => $rs, 'actions' => array('/admin/orders/getfile/id/' => $this->translator->translate('Download')), 'delete' => array('controller' => 'orders', 'action' => 'deletefile'));
         }
     }
 }
Beispiel #5
0
 private function filesGrid()
 {
     $request = Zend_Controller_Front::getInstance()->getRequest();
     if (isset($request->id) && is_numeric($request->id)) {
         $rs = Files::findbyExternalId($request->id, "customers", "file_id, fc.name as category, CONCAT(path, file) as file, date");
         if (isset($rs)) {
             $columns[] = $this->translator->translate('Imported at');
             $columns[] = $this->translator->translate('Category');
             $columns[] = $this->translator->translate('File');
             return array('name' => 'files', 'columns' => $columns, 'records' => $rs, 'delete' => array('controller' => 'customers', 'action' => 'deletefile'));
         }
     }
 }
Beispiel #6
0
 /**
  * Has the Ticket some attachment?
  * @return array
  */
 public static function hasAttachments($ticketid)
 {
     return Files::findbyExternalId($ticketid, "tickets");
 }