loadHelper('vxcloadcsshelper'); $cssHelper = new VxcLoadCssHelper(); $cssHelper->loadCss(); JHTML::_('behavior.modal','a.modalSearch'); $cid = JRequest::getVar('cid','array',array()); $modelPayment =& $this->getModel('payment'); $modelUser =& $this->getModel('user'); $modelAgencies =& $this->getModel('agencies'); $agencies =& $modelAgencies->getData(); $modelPayment->SetIds($cid); $franchiseName = SiteOptionsHelper::getFranchiseName(); $agencyId = JRequest::getVar('agency'); if ($franchiseName=='ppr') $agencyId = 6; else { if (count($agencies)>0 && !$agencyId) $agencyId = $agencies[0]->id; } JRequest::setVar('agency',$agencyId); $modelBatch =& $this->getModel('batch'); $session =& JFactory::getSession(); $batchId = $session->get('batchId'); if ($batchId) { $modelBatch->SetId($batchId); $batch =& $modelBatch->getData(); } $modelSettings =& $this->getModel('settings'); $showAddressLimit = $modelSettings->getVar('showAddressLimit',10); $addresses =& $modelUser->getAddresses($showAddressLimit); $modelAgency =& $this->getModel('agency'); $modelAgency->SetId($agencyId); $agency =& $modelAgency->getData(); $orders =& $modelPayment->getData(); $vat = $modelUser->getVAT(); $equivalence_charge = $modelUser->getEquivalenceCharge(); $credit = $modelUser->getCredit(); $creditLimit = $modelUser->getCreditLimit(); $deliveryNotes =& $modelUser->getPendingDeliveryNotes(); $canSeeSamplesMethod = $modelUser->checkPrivilege('Can pay samples'); $canSeeFreeMethod = $modelUser->checkPrivilege('Can buy for free'); $canSeeTestMethod = $modelUser->checkPrivilege('Can buy for testing'); $canSeePrices = !$modelUser->checkPrivilege('Cannot see prices'); $canSeeGiroMethod = SiteOptionsHelper::canSeeGiroMethod(); $infiniteCredit = $modelUser->checkPrivilege('Infinite Credit'); $canPayWithMoneyOrder = $modelUser->checkPrivilege('Can pay with Money Order'); $canPayWithCredit = $modelUser->checkPrivilege('Can pay with credit'); $cannotPay = $modelUser->checkPrivilege('Cannot pay'); $addressId = ''; if (is_array($orders)) foreach($orders as $order) { if ($order->shipping_address) { $addressId = $order->shipping_address; break; } } // En este punto si $addressId es igual a -1, el pedido no tiene direcciones asignadas y se puede pagar // en caso contrario, verificamos que todos los pedidos tengan esa misma (esto solo se va a cumplir si solo hay un pedido if ($addressId) { $invalid = false; if (is_array($orders)) foreach($orders as $order) { if ($order->shipping_address != $addressId) { $invalid = true; break; } } if ($invalid) { $cannotPay = true; $this->assignRef('cannotPayMsg', JText::_('Cannot pay because this batch contains orders with different addresses')); } } if (JRequest::getVar('addressId')) JRequest::setVar('shipping_address',JRequest::getVar('addressId')); $method = JRequest::getVar('method'); if (!$method) { $method = 'CREDIT'; JRequest::setVar('method',$method); } $userPaymentCharge = $modelUser->getPaymentCharge($method); $canPayByCreditCard = ($franchiseName =='tecnoinsole'); $canPayByInvoice = $modelUser->checkPrivilege('Can pay by invoice'); $canPayByReceipt = $modelUser->checkPrivilege('Can pay by receipt'); $canPayByCashOnDelivery = $modelUser->checkPrivilege('Can pay by cash on delivery'); $modelUserAddress =& $this->getModel('useraddress'); $modelUserAddress->SetId($addressId); $order_shipping_address =& $modelUserAddress->getData(); $this->assignRef('addresses',$addresses); $this->assignRef('order_shipping_address', $order_shipping_address); $this->assignRef('deliveryNotes', $deliveryNotes); $this->assignRef('agency',$agency); $this->assignRef('agencies',$agencies); $this->assignRef('canSeeSamplesMethod',$canSeeSamplesMethod); $this->assignRef('canSeeTestMethod',$canSeeTestMethod); $this->assignRef('canSeeFreeMethod',$canSeeFreeMethod); $this->assignRef('canSeeGiroMethod',$canSeeGiroMethod); $this->assignRef('canSeePrices',$canSeePrices); $this->assignRef('infiniteCredit',$infiniteCredit); $this->assignRef('userPaymentCharge', $userPaymentCharge); $this->assignRef('canPayWithMoneyOrder',$canPayWithMoneyOrder); $this->assignRef('canPayWithCredit',$canPayWithCredit); $this->assignRef('canPayByInvoice',$canPayByInvoice); $this->assignRef('canPayByReceipt',$canPayByReceipt); $this->assignRef('canPayByCreditCard',$canPayByCreditCard); $this->assignRef('canPayByCashOnDelivery',$canPayByCashOnDelivery); $this->assignRef('cannotPay', $cannotPay); $this->assignRef('vat',$vat); $this->assignRef('equivalence_charge',$equivalence_charge); $this->assignRef('credit',$credit); $this->assignRef('creditLimit',$creditLimit); $this->assignRef('orders',$orders); $this->assignRef('cid',$cid); $this->assignRef('batch',$batch); $this->assignRef('modelAgency',$modelAgency); $this->assignRef('modelUser',$modelUser); parent::display($tpl); } } ?>