public function getCentre($_glaccount_id = '', $_productline_id = '')
 {
     // Used by Ajax to return Centre list after selecting the Product
     if (isset($this->_data['ajax'])) {
         if (!empty($this->_data['glaccount_id'])) {
             $_glaccount_id = $this->_data['glaccount_id'];
         }
         if (!empty($this->_data['productline_id'])) {
             $_productline_id = $this->_data['productline_id'];
         }
     }
     $account_list = array();
     if ($_productline_id > 0) {
         $product = new SOProductline();
         $product->load($_productline_id);
         $centre = DataObjectFactory::Factory('GLCentre');
         $centre->load($product->glcentre_id);
         $centre_list[$centre->id] = $centre->cost_centre . ' - ' . $centre->description;
     } else {
         $account = DataObjectFactory::Factory('GLAccount');
         $account->load($_glaccount_id);
         $centre_list = $account->getCentres();
     }
     if (isset($this->_data['ajax'])) {
         $this->view->set('options', $centre_list);
         $this->view->set('model', $this->_templateobject);
         $this->view->set('attribute', 'glcentre_id');
         $this->setTemplateName('select');
     } else {
         return $centre_list;
     }
 }
 public function getItemDetail($_budget_item_id = '', $_budget_item_type = '')
 {
     if (!empty($this->_data['budget_item_id'])) {
         $_budget_item_id = $this->_data['budget_item_id'];
     }
     if (!empty($this->_data['budget_item_type'])) {
         $_budget_item_type = $this->_data['budget_item_type'];
     }
     $uom_id = '';
     switch ($_budget_item_type) {
         case 'R':
             $budgetitem = new SOProductline();
             $budgetitem->load($_budget_item_id);
             $uom_id = $budgetitem->stuom_id;
             $cost_rate = 0;
             $setup_cost = 0;
             $charge_rate = $budgetitem->price;
             $setup_charge = 0;
             break;
         case 'E':
             $budgetitem = new ProjectEquipment();
             $budgetitem->load($_budget_item_id);
             $uom_id = $budgetitem->uom_id;
             $cost_rate = $budgetitem->cost_rate;
             $setup_cost = $budgetitem->setup_cost;
             $charge_rate = 0;
             $setup_charge = 0;
             break;
         case 'M':
             $budgetitem = new STItem();
             $budgetitem->load($_budget_item_id);
             $uom_id = $budgetitem->uom_id;
             $cost_rate = $budgetitem->latest_cost;
             $setup_cost = 0;
             $charge_rate = 0;
             $setup_charge = 0;
             break;
         case 'L':
             $budgetitem = new MFResource();
             $budgetitem->load($_budget_item_id);
             $cost_rate = $budgetitem->resource_rate;
             $uom_id = 11;
             $setup_cost = 0;
             $charge_rate = 0;
             $setup_charge = 0;
             break;
         default:
             $budgetitem = false;
     }
     if ($budgetitem && $budgetitem->isLoaded()) {
         $output['description'] = array('data' => $budgetitem->getIdentifierValue(), 'is_array' => false);
         $output['uom_id'] = array('data' => $uom_id, 'is_array' => false);
         $output['cost_rate'] = array('data' => $cost_rate, 'is_array' => false);
         $output['setup_cost'] = array('data' => $setup_cost, 'is_array' => false);
         $output['charge_rate'] = array('data' => $charge_rate, 'is_array' => false);
         $output['setup_charge'] = array('data' => $setup_charge, 'is_array' => false);
     } else {
         $output['description'] = array('data' => '', 'is_array' => false);
         $output['uom_id'] = array('data' => '', 'is_array' => false);
         $output['cost_rate'] = array('data' => 0, 'is_array' => false);
         $output['setup_cost'] = array('data' => 0, 'is_array' => false);
         $output['charge_rate'] = array('data' => 0, 'is_array' => false);
         $output['setup_charge'] = array('data' => 0, 'is_array' => false);
     }
     if (isset($this->_data['ajax'])) {
         $this->view->set('data', $output);
         $this->setTemplateName('ajax_multiple');
     } else {
         return $output;
     }
 }