function display($tpl = null) { if (!class_exists('VmHTML')) { require JPATH_VM_ADMINISTRATOR . DS . 'helpers' . DS . 'html.php'; } $model = VmModel::getModel('calc'); if (!class_exists('Permissions')) { require JPATH_VM_ADMINISTRATOR . DS . 'helpers' . DS . 'permissions.php'; } $perms = Permissions::getInstance(); $this->assignRef('perms', $perms); //@todo should be depended by loggedVendor $vendorId = 1; $this->assignRef('vendorId', $vendorId); $db = JFactory::getDBO(); $this->SetViewTitle(); $layoutName = JRequest::getWord('layout', 'default'); if ($layoutName == 'edit') { $calc = $model->getCalc(); $this->assignRef('calc', $calc); $isNew = $calc->virtuemart_calc_id < 1; if ($isNew) { $db = JFactory::getDBO(); //get default currency of the vendor, if not set get default of the shop $q = 'SELECT `vendor_currency` FROM `#__virtuemart_vendors` WHERE `virtuemart_vendor_id` = "' . $vendorId . '"'; $db->setQuery($q); $currency = $db->loadResult(); if (empty($currency)) { $q = 'SELECT `vendor_currency` FROM `#__virtuemart_vendors` WHERE `virtuemart_vendor_id` = "1" '; $db->setQuery($q); $currency = $db->loadResult(); $calc->calc_currency = $currency; } else { $calc->calc_currency = $currency; } } $entryPointsList = self::renderEntryPointsList($calc->calc_kind); $this->assignRef('entryPointsList', $entryPointsList); $mathOpList = self::renderMathOpList($calc->calc_value_mathop); $this->assignRef('mathOpList', $mathOpList); /* Get the category tree */ $categoryTree = null; if (isset($calc->calc_categories)) { $calc_categories = $calc->calc_categories; $categoryTree = ShopFunctions::categoryListTree($calc_categories); } else { $categoryTree = ShopFunctions::categoryListTree(); } $this->assignRef('categoryTree', $categoryTree); $currencyModel = VmModel::getModel('currency'); $_currencies = $currencyModel->getCurrencies(); $this->assignRef('currencies', $_currencies); /* Get the shoppergroup tree */ $shopperGroupList = ShopFunctions::renderShopperGroupList($calc->virtuemart_shoppergroup_ids, True); $this->assignRef('shopperGroupList', $shopperGroupList); $countriesList = ShopFunctions::renderCountryList($calc->calc_countries, True); $this->assignRef('countriesList', $countriesList); $statesList = ShopFunctions::renderStateList($calc->virtuemart_state_ids, '', True); $this->assignRef('statesList', $statesList); $manufacturerList = ShopFunctions::renderManufacturerList($calc->virtuemart_manufacturers, true); $this->assignRef('manufacturerList', $manufacturerList); if (Vmconfig::get('multix', 'none') !== 'none') { $vendorList = ShopFunctions::renderVendorList($calc->virtuemart_vendor_id, false); $this->assignRef('vendorList', $vendorList); } $this->addStandardEditViewCommands(); } else { JToolBarHelper::custom('toggle.calc_shopper_published.0', 'unpublish', 'no', JText::_('COM_VIRTUEMART_CALC_SHOPPER_PUBLISH_TOGGLE_OFF'), true); JToolBarHelper::custom('toggle.calc_shopper_published.1', 'publish', 'yes', JText::_('COM_VIRTUEMART_CALC_SHOPPER_PUBLISH_TOGGLE_ON'), true); JToolBarHelper::custom('toggle.calc_vendor_published.0', 'unpublish', 'no', JText::_('COM_VIRTUEMART_CALC_VENDOR_PUBLISH_TOGGLE_OFF'), true); JToolBarHelper::custom('toggle.calc_vendor_published.1', 'publish', 'yes', JText::_('COM_VIRTUEMART_CALC_VENDOR_PUBLISH_TOGGLE_ON'), true); $this->addStandardDefaultViewCommands(); $this->addStandardDefaultViewLists($model); $search = JRequest::getWord('search', false); $calcs = $model->getCalcs(false, false, $search); $this->assignRef('calcs', $calcs); $pagination = $model->getPagination(); $this->assignRef('pagination', $pagination); } parent::display($tpl); }