AAAAPK`C\B tmpl/invoice.phpnuW+A_layout == "invoice") { $document = JFactory::getDocument(); $document->setTitle(JText::_('COM_VIRTUEMART_ORDER_PRINT_PO_NUMBER') . ' ' . $this->orderDetails['details']['BT']->order_number . ' ' . $this->vendor->vendor_store_name); //$document->setName( JText::_('COM_VIRTUEMART_ACC_ORDER_INFO').' '.$this->orderDetails['details']['BT']->order_number); //$document->setDescription( JText::_('COM_VIRTUEMART_ORDER_PRINT_PO_NUMBER').' '.$this->orderDetails['details']['BT']->order_number); } if ($this->headFooter) { ?>
format=="html")?$this->replaceVendorFields($this->vendor->vendor_letter_header_html, $this->vendor):$this->vendor->vendor_letter_header_html; ?>
vendor->vendor_store_desc.'
'; /* foreach($this->vendorAddress as $userfields){ foreach($userfields['fields'] as $item){ if(!empty($item['value'])){ if($item['name']==='agreed'){ $item['value'] = ($item['value']===0) ? JText::_('COM_VIRTUEMART_USER_FORM_BILLTO_TOS_NO'):JText::_('COM_VIRTUEMART_USER_FORM_BILLTO_TOS_YES'); } ?> escape($item['value']) ?>
print) { ?>
loadTemplate('order'); ?>
print) { echo $this->loadTemplate('items'); } else { // NOT in print mode, full HTML view for a browser: $tabarray = array('items'=>'COM_VIRTUEMART_ORDER_ITEM', 'history'=>'COM_VIRTUEMART_ORDER_HISTORY'); shopFunctionsF::buildTabs( $this, $tabarray); } ?>


headFooter) { echo ($this->format=="html")?$this->replaceVendorFields($this->vendor->vendor_letter_footer_html, $this->vendor):$this->vendor->vendor_letter_footer_html; } if ($this->vendor->vendor_letter_add_tos) {?>
vendor->vendor_letter_add_tos_newpage) { ?> style="page-break-before: always"> vendor->vendor_terms_of_service; ?>
print) { ?> PK`C\Ш҅((tmpl/invoice_items.phpnuW+Adoctype != 'invoice') { $colspan -= 4; } elseif ( ! VmConfig::get('show_tax')) { $colspan -= 1; } ?> doctype == 'invoice') { ?> doctype == 'invoice') { ?> orderDetails['details']['BT']->order_language); foreach($this->orderDetails['items'] as $item) { $qtt = $item->product_quantity ; $product_link = JURI::root().'index.php?option=com_virtuemart&view=productdetails&virtuemart_category_id=' . $item->virtuemart_category_id . '&virtuemart_product_id=' . $item->virtuemart_product_id . '&Itemid=' . $menuItemID; ?> doctype == 'invoice') { ?> doctype == 'invoice') { ?> doctype == 'invoice') { ?> orderDetails['details']['BT']->coupon_discount <> 0.00) { $coupon_code=$this->orderDetails['details']['BT']->coupon_code?' ('.$this->orderDetails['details']['BT']->coupon_code.')':''; ?> orderDetails['calc_rules'] as $rule){ if ($rule->calc_kind== 'DBTaxRulesBill') { ?> calc_kind == 'taxRulesBill') { ?> calc_kind == 'DATaxRulesBill') { ?>
order_item_sku; ?>
order_item_name; ?>
product_attribute)) { if(!class_exists('VirtueMartModelCustomfields'))require(JPATH_VM_ADMINISTRATOR.DS.'models'.DS.'customfields.php'); $product_attribute = VirtueMartModelCustomfields::CustomsFieldOrderDisplay($item,'FE'); echo $product_attribute; } ?>
orderstatuses[$item->order_status]; ?> product_discountedPriceWithoutTax = (float) $item->product_discountedPriceWithoutTax; if (!empty($item->product_priceWithoutTax) && $item->product_discountedPriceWithoutTax != $item->product_priceWithoutTax) { echo ''.$this->currency->priceDisplay($item->product_item_price, $this->currency) .'
'; echo ''.$this->currency->priceDisplay($item->product_discountedPriceWithoutTax, $this->currency) .'
'; } else { echo ''.$this->currency->priceDisplay($item->product_item_price, $this->currency) .'
'; } ?>
".$this->currency->priceDisplay($item->product_tax ,$this->currency, $qtt)."" ?> currency->priceDisplay( $item->product_subtotal_discount, $this->currency ); //No quantity is already stored with it ?> product_basePriceWithTax = (float) $item->product_basePriceWithTax; $class = ''; if(!empty($item->product_basePriceWithTax) && $item->product_basePriceWithTax != $item->product_final_price ) { echo ''.$this->currency->priceDisplay($item->product_basePriceWithTax,$this->currency,$qtt) .'
' ; } elseif (empty($item->product_basePriceWithTax) && $item->product_item_price != $item->product_final_price) { echo '' . $this->currency->priceDisplay($item->product_item_price,$this->currency,$qtt) . '
'; } echo $this->currency->priceDisplay( $item->product_subtotal_with_tax ,$this->currency); //No quantity or you must use product_final_price ?>
".$this->currency->priceDisplay($this->orderDetails['details']['BT']->order_tax, $this->currency)."" ?> ".$this->currency->priceDisplay($this->orderDetails['details']['BT']->order_discountAmount, $this->currency)."" ?> currency->priceDisplay($this->orderDetails['details']['BT']->order_salesPrice, $this->currency) ?>
currency->priceDisplay($this->orderDetails['details']['BT']->coupon_discount, $this->currency); ?>
calc_rule_name ?> currency->priceDisplay($rule->calc_amount, $this->currency); ?> currency->priceDisplay($rule->calc_amount, $this->currency); ?>
calc_rule_name ?> currency->priceDisplay($rule->calc_amount, $this->currency); ?> currency->priceDisplay($rule->calc_amount, $this->currency); ?>
calc_rule_name ?> currency->priceDisplay($rule->calc_amount, $this->currency); ?> currency->priceDisplay($rule->calc_amount, $this->currency); ?>
orderDetails['shipmentName'] ?> currency->priceDisplay($this->orderDetails['details']['BT']->order_shipment_tax, $this->currency) ?> currency->priceDisplay($this->orderDetails['details']['BT']->order_shipment + $this->orderDetails['details']['BT']->order_shipment_tax, $this->currency); ?>
orderDetails['paymentName'] ?> currency->priceDisplay($this->orderDetails['details']['BT']->order_payment_tax, $this->currency) ?> currency->priceDisplay($this->orderDetails['details']['BT']->order_payment + $this->orderDetails['details']['BT']->order_payment_tax, $this->currency); ?>
currency->priceDisplay($this->orderDetails['details']['BT']->order_billTaxAmount, $this->currency); ?> currency->priceDisplay($this->orderDetails['details']['BT']->order_billDiscountAmount, $this->currency); ?> currency->priceDisplay($this->orderDetails['details']['BT']->order_total, $this->currency); ?>
PK`C\)$< < tmpl/mail_raw_shopper.phpnuW+ABTaddress, take a look for an exampel at shopperadresses.php * * With $this->cartData->paymentName or shipmentName, you get the name of the used paymentmethod/shippmentmethod * * In the array order you have details and items ($this->orderDetails['details']), the items gather the products, but that is done directly from the cart data * * $this->orderDetails['details'] contains the raw address data (use the formatted ones, like BTaddress). Interesting informatin here is, * order_number ($this->orderDetails['details']['BT']->order_number), order_pass, coupon_code, order_status, order_status_name, * user_currency_rate, created_on, customer_note, ip_address * * @package VirtueMart * @subpackage Cart * @author Max Milbers, Valerie Isaksen * * @link http://www.virtuemart.net * @copyright Copyright (c) 2004 - 2010 VirtueMart Team. All rights reserved. * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php * VirtueMart is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses. * */ // Check to ensure this file is included in Joomla! defined('_JEXEC') or die('Restricted access'); echo strip_tags(JText::_('COM_VIRTUEMART_MAIL_SHOPPER_YOUR_ORDER')) . "\n" . "\n"; echo strip_tags(JText::sprintf('COM_VIRTUEMART_MAIL_SHOPPER_SUMMARY', $this->vendor->vendor_store_name)) . "\n" . "\n"; echo JText::sprintf('COM_VIRTUEMART_MAIL_SHOPPER_CONTENT', $this->shopperName, $this->vendor->vendor_store_name, $this->orderDetails['details']['BT']->order_total, $this->orderDetails['details']['BT']->order_number, $this->orderDetails['details']['BT']->order_pass, $this->orderDetails['details']['BT']->created_on) . "\n" . "\n"; echo "\n" . strip_tags(JText::sprintf('COM_VIRTUEMART_MAIL_ORDER_STATUS', $this->orderDetails['details']['BT']->order_status_name)); echo "\n\n"; $nb = count($this->orderDetails['history']); if ($this->orderDetails['history'][$nb - 1]->customer_notified && !(empty($this->orderDetails['history'][$nb - 1]->comments))) { echo $this->orderDetails['history'][$nb - 1]->comments; } echo "\n\n"; echo "\n\n"; echo JText::_('COM_VIRTUEMART_MAIL_SHOPPER_YOUR_ORDER_LINK') . ' : ' . JURI::root() . 'index.php?option=com_virtuemart&view=orders&layout=details&order_number=' . $this->orderDetails['details']['BT']->order_number . '&order_pass=' . $this->orderDetails['details']['BT']->order_pass . "\n"; if (!empty($this->orderDetails['details']['BT']->customer_note)) { echo "\n" . strip_tags(JText::sprintf('COM_VIRTUEMART_MAIL_SHOPPER_QUESTION', $this->orderDetails['details']['BT']->customer_note)); } echo "\n\n"; //TODO if silent registration logindata //TODO if Paymentmethod needs Bank account data of vendor //We may wish to integrate later a kind of signature PK`C\dd"tmpl/mail_raw_shopperaddresses.phpnuW+Auserfields['fields'] as $field) { if(!empty($field['value'])){ echo $field['title'].': '.$this->escape($field['value'])."\n"; } } echo "\n"; echo JText::_('COM_VIRTUEMART_USER_FORM_SHIPTO_LBL'). "\n"; echo sprintf("%'-64.64s",''); echo "\n"; foreach ($this->shipmentfields['fields'] as $field) { if(!empty($field['value'])){ echo $field['title'].': '.$this->escape($field['value'])."\n"; } } echo "\n";PK`C\qO--tmpl/mail_html_header.phpnuW+A vendor->vendor_letter_header>0) { ?> vendor->vendor_letter_header_image>0) { ?> vendor->vendor_letter_header_line == 1) { ?>
vendor->vendor_letter_header_html, $this->vendor); ?>

civility . ' ' . $this->orderDetails['details']['BT']->first_name . ' ' . $this->orderDetails['details']['BT']->last_name); ?>
PK`C\ďktmpl/mail_raw_footer.phpnuW+Avendor)) { $vendorModel = VmModel::getModel('vendor'); $this->vendor = $vendorModel->getVendor(); } $link = JURI::root(). 'index.php?option=com_virtuemart' ; echo "\n\n"; $link= JHTML::_('link', $link, $this->vendor->vendor_name) ; // echo JText::_('COM_VIRTUEMART_MAIL_VENDOR_TITLE').$this->vendor->vendor_name.'
'; /* GENERAL FOOTER FOR ALL MAILS */ echo JText::_('COM_VIRTUEMART_MAIL_FOOTER' ) . $link; echo "\n"; echo $this->vendor->vendor_name ."\n".$this->vendor->vendor_phone .' '.$this->vendor->vendor_store_name ."\n".strip_tags($this->vendor->vendor_store_desc)."\n".strip_tags(str_replace('
',"\n",$this->replaceVendorFields($this->vendor->vendor_letter_footer_html, $this->vendor))); PK`C\&tmpl/mail_raw_pricelist.phpnuW+AsetEscape('htmlspecialchars'); // TODO Temp fix !!!!! *********************************>>> //$skuPrint = echo sprintf( "%64.64s",strtoupper (JText::_('COM_VIRTUEMART_SKU') ) ) ; // Head of table echo strip_tags(JText::sprintf('COM_VIRTUEMART_ORDER_PRINT_TOTAL', $this->currency->priceDisplay($this->orderDetails['details']['BT']->order_total,$this->currency))) . "\n"; echo sprintf("%'-64.64s", '') . "\n"; echo JText::_('COM_VIRTUEMART_ORDER_ITEM') . "\n"; foreach ($this->orderDetails['items'] as $item) { echo "\n"; echo $item->product_quantity . ' X ' . $item->order_item_name . ' (' . strtoupper(JText::_('COM_VIRTUEMART_SKU')) . $item->order_item_sku . ')' . "\n"; if (!empty($item->product_attribute)) { if (!class_exists('VirtueMartModelCustomfields')) require(JPATH_VM_ADMINISTRATOR . DS . 'models' . DS . 'customfields.php'); $product_attribute = VirtueMartModelCustomfields::CustomsFieldOrderDisplay($item, 'FE'); echo "\n" . $product_attribute . "\n"; } if (!empty($item->product_basePriceWithTax) && $item->product_basePriceWithTax != $item->product_final_price) { echo $item->product_basePriceWithTax . "\n"; } echo JText::_('COM_VIRTUEMART_ORDER_PRINT_TOTAL') . $item->product_final_price; if (VmConfig::get('show_tax')) { echo ' (' . JText::_('COM_VIRTUEMART_ORDER_PRINT_PRODUCT_TAX') . ':' . $this->currency->priceDisplay($item->product_tax,$this->currency) . ')' . "\n"; } echo "\n"; } echo sprintf("%'-64.64s", ''); echo "\n"; // Coupon if (!empty($this->orderDetails['details']['BT']->coupon_code)) { echo JText::_('COM_VIRTUEMART_COUPON_DISCOUNT') . ':' . $this->orderDetails['details']['BT']->coupon_code . ' ' . JText::_('COM_VIRTUEMART_PRICE') . ':' . $this->currency->priceDisplay($this->orderDetails['details']['BT']->coupon_discount,$this->currency); echo "\n"; } foreach ($this->orderDetails['calc_rules'] as $rule) { if ($rule->calc_kind == 'DBTaxRulesBill') { echo $rule->calc_rule_name . $this->currency->priceDisplay($rule->calc_amount, $this->currency) . "\n"; } elseif ($rule->calc_kind == 'taxRulesBill') { echo $rule->calc_rule_name . ' ' . $this->currency->priceDisplay($rule->calc_amount,$this->currency) . "\n"; } elseif ($rule->calc_kind == 'DATaxRulesBill') { echo $rule->calc_rule_name . ' ' . $this->currency->priceDisplay($rule->calc_amount,$this->currency) . "\n"; } } echo strtoupper(JText::_('COM_VIRTUEMART_ORDER_PRINT_SHIPPING')) . ' (' . strip_tags(str_replace("
", "\n", $this->orderDetails['shipmentName'])) . ' ) ' . "\n"; echo JText::_('COM_VIRTUEMART_ORDER_PRINT_TOTAL') . ' : ' . $this->currency->priceDisplay($this->orderDetails['details']['BT']->order_shipment,$this->currency); if (VmConfig::get('show_tax')) { echo ' (' . JText::_('COM_VIRTUEMART_ORDER_PRINT_TAX') . ' : ' . $this->currency->priceDisplay($this->orderDetails['details']['BT']->order_shipment_tax,$this->currency) . ')'; } echo "\n"; echo strtoupper(JText::_('COM_VIRTUEMART_ORDER_PRINT_PAYMENT')) . ' (' . strip_tags(str_replace("
", "\n", $this->orderDetails['paymentName'])) . ' ) ' . "\n"; echo JText::_('COM_VIRTUEMART_ORDER_PRINT_TOTAL') . ':' . $this->currency->priceDisplay($this->orderDetails['details']['BT']->order_payment,$this->currency); if (VmConfig::get('show_tax')) { echo ' (' . JText::_('COM_VIRTUEMART_ORDER_PRINT_TAX') . ' : ' . $this->currency->priceDisplay($this->orderDetails['details']['BT']->order_payment_tax,$this->currency) . ')'; } echo "\n"; echo sprintf("%'-64.64s", '') . "\n"; // total order echo JText::_('COM_VIRTUEMART_MAIL_SUBTOTAL_DISCOUNT_AMOUNT') . ' : ' . $this->currency->priceDisplay($this->orderDetails['details']['BT']->order_billDiscountAmount,$this->currency) . "\n"; echo strtoupper(JText::_('COM_VIRTUEMART_ORDER_PRINT_TOTAL')) . ' : ' . $this->currency->priceDisplay($this->orderDetails['details']['BT']->order_total,$this->currency) . "\n"; if (VmConfig::get('show_tax')) { echo ' (' . JText::_('COM_VIRTUEMART_ORDER_PRINT_TAX') . ' : ' . $this->currency->priceDisplay($this->orderDetails['details']['BT']->order_billTaxAmount,$this->currency) . ')' . "\n"; } echo "\n"; PK`C\DRltmpl/mail_raw_vendor.phpnuW+AproductName,$this->url); if(!empty($this->orderDetails['details']['BT']->customer_note)) { echo "\n" . JText::sprintf('COM_VIRTUEMART_CART_MAIL_VENDOR_SHOPPER_QUESTION', $this->orderDetails['details']['BT']->customer_note); } echo "\n"; PK`C\BTTtmpl/mail_html_pricelist.phpnuW+AgetLayout(); $this->setLayout('invoice'); echo $this->loadTemplate('items'); $this->setLayout($oldlayout); PK`C\%tmpl/mail_html_vendor_more.phpnuW+A PK`C\tmpl/index.htmlnuW+APK`C\͔tmpl/mail_html_vendor.phpnuW+A
vendor->vendor_name.'
'; echo JText::sprintf('COM_VIRTUEMART_MAIL_VENDOR_CONTENT',$this->vendor->vendor_store_name,$this->shopperName,$this->currency->priceDisplay($this->orderDetails['details']['BT']->order_total,$this->currency),$this->orderDetails['details']['BT']->order_number); if(!empty($this->orderDetails['details']['BT']->customer_note)){ echo '

'.JText::sprintf('COM_VIRTUEMART_CART_MAIL_VENDOR_SHOPPER_QUESTION',$this->orderDetails['details']['BT']->customer_note).'
'; } ?>
PK`C\p533tmpl/invoice_history.phpnuW+A orderDetails['history'] as $_hist) { if (!$_hist->customer_notified) { continue; } ?>
created_on, 'LC4', true); ?> orderstatuses[$_hist->order_status_code]; ?> comments; ?>
PK`C\atmpl/mail_raw.phpnuW+ABTaddress, take a look for an exampel at shopper_adresses.php * * With $this->cartData->paymentName or shipmentName, you get the name of the used paymentmethod/shippmentmethod * * In the array order you have details and items ($this->orderDetails['details']), the items gather the products, but that is done directly from the cart data * * $this->orderDetails['details'] contains the raw address data (use the formatted ones, like BTaddress). Interesting informatin here is, * order_number ($this->orderDetails['details']['BT']->order_number), order_pass, coupon_code, order_status, order_status_name, * user_currency_rate, created_on, customer_note, ip_address * * @package VirtueMart * @subpackage Cart * @author Max Milbers, Valerie Isaksen * * @link http://www.virtuemart.net * @copyright Copyright (c) 2004 - 2010 VirtueMart Team. All rights reserved. * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php * VirtueMart is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses. * */ // Check to ensure this file is included in Joomla! defined('_JEXEC') or die('Restricted access'); ?> loadTemplate('header'); // Message for shopper or vendor echo $this->loadTemplate('shopper'); // render shipto billto adresses echo $this->loadTemplate('shopperaddresses'); // render price list echo $this->loadTemplate('pricelist'); //dump($salesPriceShipment , 'rawmail'); // more infos //echo $this->loadTemplate($this->recipient.'_more'); // end of mail echo $this->loadTemplate('footer'); ?> PK`C\' 'tmpl/mail_html_shopper_more.phpnuW+A PK`C\Hetmpl/mail_html_footer.phpnuW+Avendor)) { $vendorModel = VmModel::getModel('vendor'); $this->vendor = $vendorModel->getVendor(); } //$link = shopFunctionsF::getRootRoutedUrl('index.php?option=com_virtuemart'); $link = JURI::root().'index.php?option=com_virtuemart'; echo '

'; //$link=''.JHTML::_('link', JURI::root().$link, $this->vendor->vendor_name).' '; // echo JText::_('COM_VIRTUEMART_MAIL_VENDOR_TITLE').$this->vendor->vendor_name.'
'; /* GENERAL FOOTER FOR ALL MAILS */ echo JText::_('COM_VIRTUEMART_MAIL_FOOTER' ) . ''.$this->vendor->vendor_name.''; echo '
'; echo $this->vendor->vendor_name .'
'.$this->vendor->vendor_phone .' '.$this->vendor->vendor_store_name .'
'.$this->vendor->vendor_store_desc.'
'; ?> vendor->vendor_letter_footer == 1) { ?> vendor->vendor_letter_footer_line == 1) { ?>
PK`C\)tmpl/.htaccessnuW+A Order allow,deny Deny from all PK`C\`#tmpl/mail_html_shopperaddresses.phpnuW+A
userfields['fields'] as $field) { if (!empty($field['value'])) { ?> escape($field['value']) ?>
shipmentfields['fields'] as $field) { if (!empty($field['value'])) { ?> escape($field['value']) ?>
PK`C\K9̨pptmpl/invoice_order.phpnuW+A doctype == 'invoice') { if ($this->invoiceNumber) { ?>

invoiceNumber; ?>

doctype == 'deliverynote') { ?>

doctype == 'confirmation') { ?>

invoiceNumber) { ?> orderDetails['details']['BT']->delivery_date)) { ?> orderDetails['details']['BT']->customer_note) { ?> doctype == 'invoice') { ?>
invoiceDate, 'LC4', true); ?>
orderDetails['details']['BT']->delivery_date ?>
orderDetails['details']['BT']->order_number; ?>
orderDetails['details']['BT']->created_on, 'LC4', true); ?>
orderstatuses[$this->orderDetails['details']['BT']->order_status]; ?>
orderDetails['shipmentName']; ?>
orderDetails['paymentName']; ?>
orderDetails['details']['BT']->customer_note; ?>
currency->priceDisplay($this->orderDetails['details']['BT']->order_total,$this->currency); ?>

userfields['fields'] as $field) { if (!empty($field['value'])) { echo '' . ''; } } ?>
' . $field['title'] . '' . $field['value'] . '

shipmentfields['fields'] as $field) { if (!empty($field['value'])) { echo '' . ''; } } ?>
' . $field['title'] . '' . $field['value'] . '
PK`C\Otmpl/mail_html.phpnuW+ABTaddress, take a look for an exampel at shopper_adresses.php * * With $this->orderDetails['shipmentName'] or paymentName, you get the name of the used paymentmethod/shippmentmethod * * In the array order you have details and items ($this->orderDetails['details']), the items gather the products, but that is done directly from the cart data * * $this->orderDetails['details'] contains the raw address data (use the formatted ones, like BTaddress). Interesting informatin here is, * order_number ($this->orderDetails['details']['BT']->order_number), order_pass, coupon_code, order_status, order_status_name, * user_currency_rate, created_on, customer_note, ip_address * * @package VirtueMart * @subpackage Cart * @author Max Milbers, Valerie Isaksen * * @link http://www.virtuemart.net * @copyright Copyright (c) 2004 - 2010 VirtueMart Team. All rights reserved. * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php * VirtueMart is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses. * */ // Check to ensure this file is included in Joomla! defined('_JEXEC') or die('Restricted access'); ?>
recipient == 'shopper') { echo $this->loadTemplate('header'); } // Message for shopper or vendor echo $this->loadTemplate($this->recipient); // render shipto billto adresses echo $this->loadTemplate('shopperaddresses'); // render price list echo $this->loadTemplate('pricelist'); // more infos echo $this->loadTemplate($this->recipient . '_more'); // end of mail echo $this->loadTemplate('footer'); ?>
PK`C\ C:L L tmpl/mail_html_shopper.phpnuW+ABTaddress['fields'], take a look for an exampel at shopper_adresses.php * * With $this->cartData->paymentName or shipmentName, you get the name of the used paymentmethod/shippmentmethod * * In the array order you have details and items ($this->orderDetails['details']), the items gather the products, but that is done directly from the cart data * * $this->orderDetails['details'] contains the raw address data (use the formatted ones, like BTaddress['fields']). Interesting informatin here is, * order_number ($this->orderDetails['details']['BT']->order_number), order_pass, coupon_code, order_status, order_status_name, * user_currency_rate, created_on, customer_note, ip_address * * @package VirtueMart * @subpackage Cart * @author Max Milbers, Valerie Isaksen * * @link http://www.virtuemart.net * @copyright Copyright (c) 2004 - 2010 VirtueMart Team. All rights reserved. * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php * VirtueMart is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses. * */ // Check to ensure this file is included in Joomla! defined('_JEXEC') or die('Restricted access'); ?> orderDetails['history']); if($this->orderDetails['history'][$nb-1]->customer_notified && !(empty($this->orderDetails['history'][$nb-1]->comments))) { ?> orderDetails['details']['BT']->customer_note)){ ?>

orderDetails['details']['BT']->order_number ?>

orderDetails['details']['BT']->order_pass ?>

currency->priceDisplay($this->orderDetails['details']['BT']->order_total,$this->currency) ); ?>

orderDetails['details']['BT']->order_status_name)) ; ?>

orderDetails['history'][$nb-1]->comments); ?>
orderDetails['details']['BT']->customer_note)) ?>
PK`C\ index.htmlnuW+APK`C\:\622 view.html.phpnuW+AsetMetaData('robots','NOINDEX, NOFOLLOW, NOARCHIVE, NOSNIPPET'); if(empty($this->uselayout)){ $layout = JRequest::getWord('layout','mail'); } else { $layout = $this->uselayout; } switch ($layout) { case 'invoice': $this->doctype = $layout; $title = JText::_('COM_VIRTUEMART_INVOICE'); break; case 'deliverynote': $this->doctype = $layout; $layout = 'invoice'; $title = JText::_('COM_VIRTUEMART_DELIVERYNOTE'); break; case 'confirmation': $this->doctype = $layout; $layout = 'confirmation'; $title = JText::_('COM_VIRTUEMART_CONFIRMATION'); break; case 'mail': if (VmConfig::get('order_mail_html')) { $layout = 'mail_html'; } else { $layout = 'mail_raw'; } } $this->setLayout($layout); $tmpl = JRequest::getWord('tmpl'); $print = false; if($tmpl){ $print = true; } $this->assignRef('print', $print); $this->format = JRequest::getWord('format','html'); if($layout == 'invoice'){ $document->setTitle( JText::_('COM_VIRTUEMART_INVOICE') ); } $order_print=false; if ($print and $this->format=='html') { $order_print=true; } $orderModel = VmModel::getModel('orders'); $orderDetails = $this->orderDetails; if($orderDetails==0){ $orderDetails = $orderModel ->getMyOrderDetails(); if(!$orderDetails or empty($orderDetails['details'])){ echo JText::_('COM_VIRTUEMART_CART_ORDER_NOTFOUND'); return; } } if(empty($orderDetails['details'])){ echo JText::_('COM_VIRTUEMART_ORDER_NOTFOUND'); return 0; } if(!empty($orderDetails['details']['BT']->order_language)) { VmConfig::loadJLang('com_virtuemart',true, $orderDetails['details']['BT']->order_language); VmConfig::loadJLang('com_virtuemart_shoppers',true, $orderDetails['details']['BT']->order_language); VmConfig::loadJLang('com_virtuemart_orders',true, $orderDetails['details']['BT']->order_language); } $this->assignRef('orderDetails', $orderDetails); // if it is order print, invoice number should not be created, either it is there, either it has not been created if(empty($this->invoiceNumber) and !$order_print){ $invoiceNumberDate=array(); if ( $orderModel->createInvoiceNumber($orderDetails['details']['BT'], $invoiceNumberDate)) { if (ShopFunctions::InvoiceNumberReserved( $invoiceNumberDate[0])) { if ($this->uselayout!='mail') { $document->setTitle( JText::_('COM_VIRTUEMART_PAYMENT_INVOICE') ); return ; } } $this->invoiceNumber = $invoiceNumberDate[0]; $this->invoiceDate = $invoiceNumberDate[1]; if(!$this->invoiceNumber or empty($this->invoiceNumber)){ vmError('Cant create pdf, createInvoiceNumber failed'); if ($this->uselayout!='mail') { return ; } } } else { // Could OR should not create Invoice Number, createInvoiceNumber failed if ($this->uselayout!='mail') { return ; } } } //Todo multix $vendorId=1; $emailCurrencyId = $orderDetails['details']['BT']->user_currency_id; $exchangeRate=FALSE; if(!class_exists('vmPSPlugin')) require(JPATH_VM_PLUGINS.DS.'vmpsplugin.php'); JPluginHelper::importPlugin('vmpayment'); $dispatcher = JDispatcher::getInstance(); $dispatcher->trigger('plgVmgetEmailCurrency',array( $orderDetails['details']['BT']->virtuemart_paymentmethod_id, $orderDetails['details']['BT']->virtuemart_order_id, &$emailCurrencyId)); if(!class_exists('CurrencyDisplay')) require(JPATH_VM_ADMINISTRATOR.DS.'helpers'.DS.'currencydisplay.php'); $currency = CurrencyDisplay::getInstance($emailCurrencyId,$vendorId); if ($emailCurrencyId) { $currency->exchangeRateShopper=$orderDetails['details']['BT']->user_currency_rate; } $this->assignRef('currency', $currency); //Create BT address fields $userFieldsModel = VmModel::getModel('userfields'); $_userFields = $userFieldsModel->getUserFields( 'account' , array('captcha' => true, 'delimiters' => true) // Ignore these types , array('delimiter_userinfo','user_is_vendor' ,'username','password', 'password2', 'agreed', 'address_type') // Skips ); $userfields = $userFieldsModel->getUserFieldsFilled( $_userFields ,$orderDetails['details']['BT']); $this->assignRef('userfields', $userfields); //Create ST address fields $orderst = (array_key_exists('ST', $orderDetails['details'])) ? $orderDetails['details']['ST'] : $orderDetails['details']['BT']; $shipmentFieldset = $userFieldsModel->getUserFields( 'shipment' , array() // Default switches , array('delimiter_userinfo', 'username', 'email', 'password', 'password2', 'agreed', 'address_type') // Skips ); $shipmentfields = $userFieldsModel->getUserFieldsFilled( $shipmentFieldset ,$orderst ); $this->assignRef('shipmentfields', $shipmentfields); $civility=""; foreach ($userfields['fields'] as $field) { if ($field['name']=="title") { $civility=$field['value']; break; } } $company= empty($orderDetails['details']['BT']->company) ?"":$orderDetails['details']['BT']->company.", "; $shopperName = $company. $civility.' '.$orderDetails['details']['BT']->first_name.' '.$orderDetails['details']['BT']->last_name; $this->assignRef('shopperName', $shopperName); $this->assignRef('civility', $civility); // Create an array to allow orderlinestatuses to be translated // We'll probably want to put this somewhere in ShopFunctions.. $orderStatusModel = VmModel::getModel('orderstatus'); $_orderstatuses = $orderStatusModel->getOrderStatusList(); $orderstatuses = array(); foreach ($_orderstatuses as $_ordstat) { $orderstatuses[$_ordstat->order_status_code] = JText::_($_ordstat->order_status_name); } $this->assignRef('orderstatuslist', $orderstatuses); $this->assignRef('orderstatuses', $orderstatuses); $_itemStatusUpdateFields = array(); $_itemAttributesUpdateFields = array(); foreach($orderDetails['items'] as $_item) { // $_itemStatusUpdateFields[$_item->virtuemart_order_item_id] = JHTML::_('select.genericlist', $orderstatuses, "item_id[".$_item->virtuemart_order_item_id."][order_status]", 'class="selectItemStatusCode"', 'order_status_code', 'order_status_name', $_item->order_status, 'order_item_status'.$_item->virtuemart_order_item_id,true); $_itemStatusUpdateFields[$_item->virtuemart_order_item_id] = $_item->order_status; } if (empty($orderDetails['shipmentName']) ) { if (!class_exists('vmPSPlugin')) require(JPATH_VM_PLUGINS . DS . 'vmpsplugin.php'); JPluginHelper::importPlugin('vmshipment'); $dispatcher = JDispatcher::getInstance(); $returnValues = $dispatcher->trigger('plgVmOnShowOrderFEShipment',array( $orderDetails['details']['BT']->virtuemart_order_id, $orderDetails['details']['BT']->virtuemart_shipmentmethod_id, &$orderDetails['shipmentName'])); } if (empty($orderDetails['paymentName']) ) { if(!class_exists('vmPSPlugin')) require(JPATH_VM_PLUGINS.DS.'vmpsplugin.php'); JPluginHelper::importPlugin('vmpayment'); $dispatcher = JDispatcher::getInstance(); $returnValues = $dispatcher->trigger('plgVmOnShowOrderFEPayment',array( $orderDetails['details']['BT']->virtuemart_order_id, $orderDetails['details']['BT']->virtuemart_paymentmethod_id, &$orderDetails['paymentName'])); } $virtuemart_vendor_id=1; $vendorModel = VmModel::getModel('vendor'); $vendor = $vendorModel->getVendor($virtuemart_vendor_id); $vendorModel->addImages($vendor); $vendor->vendorFields = $vendorModel->getVendorAddressFields(); if (VmConfig::get ('enable_content_plugin', 0)) { if(!class_exists('shopFunctionsF'))require(JPATH_VM_SITE.DS.'helpers'.DS.'shopfunctionsf.php'); shopFunctionsF::triggerContentPlugin($vendor, 'vendor','vendor_store_desc'); shopFunctionsF::triggerContentPlugin($vendor, 'vendor','vendor_terms_of_service'); shopFunctionsF::triggerContentPlugin($vendor, 'vendor','vendor_legal_info'); } $this->assignRef('vendor', $vendor); // vmdebug('vendor', $vendor); if (strpos($layout,'mail') !== false) { $lineSeparator="
"; } else { $lineSeparator="\n"; } $this->assignRef('headFooter', $this->showHeaderFooter); //Attention, this function will be removed, it wont be deleted, but it is obsoloete in any view.html.php if(!class_exists('ShopFunctions')) require(JPATH_VM_ADMINISTRATOR.DS.'helpers'.DS.'shopfunctions.php'); $vendorAddress= shopFunctions::renderVendorAddress($virtuemart_vendor_id, $lineSeparator); $this->assignRef('vendorAddress', $vendorAddress); $vendorEmail = $vendorModel->getVendorEmail($virtuemart_vendor_id); $vars['vendorEmail'] = $vendorEmail; // this is no setting in BE to change the layout ! //shopFunctionsF::setVmTemplate($this,0,0,$layoutName); //vmdebug('renderMailLayout invoice '.date('H:i:s'),$this->order); if (strpos($layout,'mail') !== false) { if ($this->doVendor) { //Old text key COM_VIRTUEMART_MAIL_SUBJ_VENDOR_C $this->subject = JText::sprintf('COM_VIRTUEMART_MAIL_SUBJ_VENDOR_'.$orderDetails['details']['BT']->order_status, $this->shopperName, strip_tags($currency->priceDisplay($orderDetails['details']['BT']->order_total, $currency)), $orderDetails['details']['BT']->order_number); $recipient = 'vendor'; } else { $this->subject = JText::sprintf('COM_VIRTUEMART_MAIL_SUBJ_SHOPPER_'.$orderDetails['details']['BT']->order_status, $vendor->vendor_store_name, strip_tags($currency->priceDisplay($orderDetails['details']['BT']->order_total, $currency)), $orderDetails['details']['BT']->order_number ); $recipient = 'shopper'; } $this->assignRef('recipient', $recipient); } $tpl = null; // vmdebug('my view data',$this->getLayout(),$layout); // ob_start(); // echo '
';
// 		echo debug_print_backtrace();
// 		echo '
'; // $dumptrace = ob_get_contents(); // ob_end_clean(); // return false; parent::display($tpl); } // FE public function renderMailLayout($doVendor=false) function renderMailLayout ($doVendor, $recipient) { $this->doVendor=$doVendor; $this->frompdf=false; $this->uselayout = 'mail'; $this->display(); } static function replaceVendorFields ($txt, $vendor) { // TODO: Implement more Placeholders (ordernr, invoicenr, etc.); // REMEMBER TO CHANGE VmVendorPDF::replace_variables IN vmpdf.php, TOO!!! // Page nrs. for mails is always "1" $txt = str_replace('{vm:pagenum}', "1", $txt); $txt = str_replace('{vm:pagecount}', "1", $txt); $txt = str_replace('{vm:vendorname}', $vendor->vendor_store_name, $txt); $imgrepl=''; if (!empty($vendor->images)) { $img = $vendor->images[0]; $imgrepl = "
".$img->displayIt($img->file_url,'','',false, '', false, false)."
"; } $txt = str_replace('{vm:vendorimage}', $imgrepl, $txt); $vendorAddress = shopFunctions::renderVendorAddress($vendor->virtuemart_vendor_id, "
"); // Trim the final
from the address, which is inserted by renderVendorAddress automatically! if (substr($vendorAddress, -5, 5) == '
') { $vendorAddress = substr($vendorAddress, 0, -5); } $txt = str_replace('{vm:vendoraddress}', $vendorAddress, $txt); $txt = str_replace('{vm:vendorlegalinfo}', $vendor->vendor_legal_info, $txt); $txt = str_replace('{vm:vendordescription}', $vendor->vendor_store_desc, $txt); $txt = str_replace('{vm:tos}', $vendor->vendor_terms_of_service, $txt); return "$txt"; } } PK`C\) .htaccessnuW+A Order allow,deny Deny from all PK`C\B tmpl/invoice.phpnuW+APK`C\Ш҅((tmpl/invoice_items.phpnuW+APK`C\)$< < 7tmpl/mail_raw_shopper.phpnuW+APK`C\dd"UDtmpl/mail_raw_shopperaddresses.phpnuW+APK`C\qO-- Jtmpl/mail_html_header.phpnuW+APK`C\ďkRtmpl/mail_raw_footer.phpnuW+APK`C\&Xtmpl/mail_raw_pricelist.phpnuW+APK`C\DRlotmpl/mail_raw_vendor.phpnuW+APK`C\BTThstmpl/mail_html_pricelist.phpnuW+APK`C\%wtmpl/mail_html_vendor_more.phpnuW+APK`C\ytmpl/index.htmlnuW+APK`C\͔:ztmpl/mail_html_vendor.phpnuW+APK`C\p533tmpl/invoice_history.phpnuW+APK`C\atmpl/mail_raw.phpnuW+APK`C\' 'Vtmpl/mail_html_shopper_more.phpnuW+APK`C\Hemtmpl/mail_html_footer.phpnuW+APK`C\)}tmpl/.htaccessnuW+APK`C\`#:tmpl/mail_html_shopperaddresses.phpnuW+APK`C\K9̨ppitmpl/invoice_order.phpnuW+APK`C\Otmpl/mail_html.phpnuW+APK`C\ C:L L ftmpl/mail_html_shopper.phpnuW+APK`C\ index.htmlnuW+APK`C\:\622 6view.html.phpnuW+APK`C\) 4.htaccessnuW+APK