Payment method in order email

  • Posts: 1
  • Thank you received: 0
12 years 2 months ago #39438

Hi,

how and where can I configure the content of order-email.
I can see only the shipping address, the billing address and the ordered product and the user fields, BUT I don't know, which Payment method selected is.

thank you.
ps: i use professional edition

Please Log in or Create an account to join the conversation.

  • Posts: 81540
  • Thank you received: 13071
  • MODERATOR
12 years 2 months ago #39540

Hi,

You can edit the emails via the menu System->Emails

There, you will be able to display the payment name chosen like that:

<?php
$paymentClass = hikashop::get('class.payment');
$payment = $paymentClass->get($data->order_payment_id);

echo $payment->payment_name; ?>

The following user(s) said Thank You: zaratustra27, crommie

Please Log in or Create an account to join the conversation.

  • Posts: 10
  • Thank you received: 0
11 years 8 months ago #60347

Hi
The only "Email" I have under System (and Configuration) - don't give me the choices of chaning the actual email.
Just the Email address and some other settings.
Could you perhaps guide me where I can change the wording in the email please?
I'd like to add banking details for Internet Transfers.
Thank you
M

Please Log in or Create an account to join the conversation.

  • Posts: 81540
  • Thank you received: 13071
  • MODERATOR
11 years 8 months ago #60395

Hi,

If you just want to add/modify text, you can use translation overrides:
www.hikashop.com/en/download/languages.html#modify

The menu System->Emails (not Configuration) where you can edit the code of the emails is only available in the Business edition of HikaShop.

Please Log in or Create an account to join the conversation.

  • Posts: 27
  • Thank you received: 0
11 years 8 months ago #62119

Hi. I know its a pretty old topic, but anyway:

I am not very familiar with php, so I would appreciate if you could be more specific for the code:

<?php
$paymentClass = hikashop::get('class.payment');
$payment = $paymentClass->get($data->order_payment_id);
echo $payment->payment_name; ?>
Where should I put that code in order_creation_notification.html.php file if I want that part of confirmation mail to look instead of this:

Payment method: 1,5€

to look like this:

Payment method - cash on delivery: 1,5€

my order_creation_notification.html.php:
<?php
/**
 * @package		HikaShop for Joomla!
 * @version		1.5.8
 * @author		hikashop.com
 * @copyright	(C) 2010-2012 HIKARI SOFTWARE. All rights reserved.
 * @license		GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
 */
defined('_JEXEC') or die('Restricted access');
?>
<div style="background-color: #ffffff; font-family: Verdana, Arial, Helvetica, sans-serif;font-size:12px; color: #000000; width: 100%;">
	<table style="margin: auto;font-family: Verdana, Arial, Helvetica, sans-serif;font-size:12px;" border="0" cellspacing="0" cellpadding="0">
		<tbody>
			<tr>
				<td height="10">
				</td>
			</tr>
			<tr>
				<td>
					<?php echo JText::sprintf('HI_CUSTOMER',@$data->customer->name);?>
					<br/>
					<br/>
					<?php
					$url = $data->order_number;
					$config =& hikashop_config();
					if($config->get('simplified_registration',0)!=2){
						$url = '<a href="'.$data->order_url.'">'. $url.'</a>';
					}
					echo JText::sprintf('ORDER_CREATION_SUCCESS_ON_WEBSITE_AT_DATE',$url,HIKASHOP_LIVE, hikashop_getDate(time(),'%d %B %Y'), hikashop_getDate(time(),'%H:%M'));?>
				</td>
			</tr>
			<tr>
				<td height="10">
				</td>
			</tr>
			<tr>
				<td>
					<h1 style="background-color:#DDDDDD;font-size:14px;width:100%;padding:5px;"><?php echo JText::_('SUMMARY_OF_YOUR_ORDER');?></h1>
					<br/>
					<table width="100%" style="font-family: Verdana, Arial, Helvetica, sans-serif;font-size:12px;">
						<tr>
							<td style="font-weight:bold;"><?php
								echo JText::_('CART_PRODUCT_NAME');
							?></td>
							<?php if ($config->get('show_code')) { ?>
								<td><?php echo JText::_('CART_PRODUCT_CODE'); ?></td>
							<?php } ?>
							<td style="font-weight: bold;"><?php
								echo JText::_('CART_PRODUCT_UNIT_PRICE');
							?></td>
							<td style="font-weight: bold;"><?php
								echo JText::_('CART_PRODUCT_QUANTITY');
							?></td>
							<td style="font-weight: bold; text-align: right;"><?php echo JText::_('HIKASHOP_TOTAL'); ?>
							</td>
						</tr>
						<?php
							if(hikashop_level(2)){
								$fieldsClass = hikashop_get('class.field');
								$null = null;
								$itemFields = $fieldsClass->getFields('frontcomp',$null,'item');
							}
							$group = $config->get('group_options',0);
							foreach($data->cart->products as $item){
								if($group && $item->cart_product_option_parent_id) continue;
								?>
								<tr>
									<td>
										<p>
											<?php echo $item->order_product_name;
											if($group){
												$display_item_price=false;
												foreach($data->cart->products as $j => $optionElement){
													if($optionElement->cart_product_option_parent_id != $item->cart_product_id) continue;
													if($optionElement->order_product_price>0){
														$display_item_price = true;
													}
												}
												if($display_item_price){
													if($config->get('price_with_tax')){
														echo ' '.$currencyHelper->format($item->order_product_price+$item->order_product_tax,$data->order_currency_id);
													}else{
														echo ' '.$currencyHelper->format($item->order_product_price,$data->order_currency_id);
													}
												}
											}
											?>
										</p><?php
										if(!empty($itemFields)){
											foreach($itemFields as $field){
												$namekey = $field->field_namekey;
												if(empty($item->$namekey)) continue;
												echo '<p>'.$fieldsClass->getFieldName($field).': '.$fieldsClass->show($field,$item->$namekey).'</p>';
											}
										}
										if($group){
											foreach($data->cart->products as $j => $optionElement){
												if($optionElement->cart_product_option_parent_id != $item->cart_product_id) continue;
												$item->order_product_price +=$optionElement->order_product_price;
												$item->order_product_tax +=$optionElement->order_product_tax;
												$item->order_product_total_price+=$optionElement->order_product_total_price;
												$item->order_product_total_price_no_vat+=$optionElement->order_product_total_price_no_vat;
												 ?>
													<p class="hikashop_order_option_name">
														<?php
															echo $optionElement->order_product_name;
															if($optionElement->order_product_price>0){
																if($config->get('price_with_tax')){
																	echo ' ( + '.$currencyHelper->format($optionElement->order_product_price+$optionElement->order_product_tax,$data->order_currency_id).' )';
																}else{
																	echo ' ( + '.$currencyHelper->format($optionElement->order_product_price,$data->order_currency_id).' )';
																}
															}
														?>
													</p>
											<?php
											}
										}
										$statusDownload = explode(',',$config->get('order_status_for_download','confirmed,shipped'));
										if(in_array($data->order_status,$statusDownload)){
											if(!empty($item->files)){
												global $Itemid;
												$url_itemid = '';
												if(!empty($Itemid)){
													$url_itemid='&Itemid='.$Itemid;
												}
												echo '<p>';
												foreach($item->files as $file){
													$fileName = empty($file->file_name) ? $file->file_path : $file->file_name;
													echo '<a href="'.hikashop_frontendLink('index.php?option=com_hikashop&ctrl=order&task=download&file_id='.$file->file_id.'&order_id='.$data->order_id.$url_itemid).'">'.$fileName.'</a><br/>';
												}
												echo '</p>';
											}
										} ?>
									</td>
									<?php if ($config->get('show_code')) { ?>
										<td><p class="hikashop_product_code_mail"><?php echo $item->order_product_code; ?></p></td>
									<?php } ?>
									<td>
									<?php
										if($config->get('price_with_tax')){
											echo $currencyHelper->format($item->order_product_price+$item->order_product_tax,$data->order_currency_id);
										}else{
											echo $currencyHelper->format($item->order_product_price,$data->order_currency_id);
										} ?>
									</td>
									<td><?php echo $item->order_product_quantity; ?></td>
									<td style="text-align: right">
										<?php
										if($config->get('price_with_tax')){
											echo $currencyHelper->format($item->order_product_total_price,$data->order_currency_id);
										}else{
											echo $currencyHelper->format($item->order_product_total_price_no_vat,$data->order_currency_id);
										} ?>
									</td>
								</tr>
								<?php
							}
							if(bccomp($data->order_discount_price,0,5)){
								echo '<tr><td colspan="4" style="text-align:right">'.JText::_('HIKASHOP_COUPON').' : ';
								if($config->get('price_with_tax')){
									echo $currencyHelper->format($data->order_discount_price*-1,$data->order_currency_id);
								}else{
									echo $currencyHelper->format(($data->order_discount_price-@$data->order_discount_tax)*-1,$data->order_currency_id);
								}
								echo '</td></tr>';
							}
							if(bccomp($data->order_shipping_price,0,5)){
								echo '<tr><td colspan="4" style="text-align:right">'.JText::_('HIKASHOP_SHIPPING_METHOD').' : ';
								if($config->get('price_with_tax')){
									echo $currencyHelper->format($data->order_shipping_price,$data->order_currency_id);
								}else{
									echo $currencyHelper->format($data->order_shipping_price-@$data->order_shipping_tax,$data->order_currency_id);
								}
								echo '</td></tr>';
							}
							if(bccomp($data->order_payment_price,0,5)){
								echo '<tr><td colspan="4" style="text-align:right">'.JText::_('HIKASHOP_PAYMENT_METHOD').' : '.$currencyHelper->format($data->order_payment_price,$data->order_currency_id).'</td></tr>';
							}
							if(!empty($data->cart->additional)) {
								$exclude_additionnal = explode(',', $config->get('order_additional_hide', ''));
								foreach($data->cart->additional as $additional) {
									if(in_array($additional->name, $exclude_additionnal)) continue;
									echo '<tr><td colspan="4" style="text-align:right">'. JText::_($additional->name).' : ';
									if(!empty($additional->price_value) || empty($additional->value)) {
										if($config->get('price_with_tax')){
											echo $currencyHelper->format($additional->price_value_with_tax, $data->order_currency_id);
										}else{
											echo $currencyHelper->format($additional->price_value, $data->order_currency_id);
										}
									} else {
										echo $additional->value;
									}
									echo '</td></tr>';
								}
							}
							if($data->cart->full_total->prices[0]->price_value!=$data->cart->full_total->prices[0]->price_value_with_tax){
								if($config->get('detailed_tax_display') && !empty($data->order_tax_info)){
									foreach($data->order_tax_info as $tax){
										echo '<tr><td colspan="4" style="text-align:right">'.$tax->tax_namekey. ' : '.$currencyHelper->format($tax->tax_amount,$data->order_currency_id).'</td></tr>';
									}
								}else{
									echo '<tr><td colspan="4" style="text-align:right">'.JText::sprintf('TOTAL_WITHOUT_VAT',$currencyHelper->format($data->cart->full_total->prices[0]->price_value,$data->order_currency_id)).'</td></tr>';
								}
								$text=JText::sprintf('TOTAL_WITH_VAT',$currencyHelper->format($data->cart->full_total->prices[0]->price_value_with_tax,$data->order_currency_id));
							}else{
								$text=JText::_('HIKASHOP_FINAL_TOTAL'). ' : '.$currencyHelper->format($data->cart->full_total->prices[0]->price_value_with_tax,$data->order_currency_id);
							}
							echo '<tr><td colspan="4" style="text-align:right;font-weight:bold;">'.$text.'</td></tr>';
							?>
					</table>
				</td>
			</tr>
			<tr>
				<td height="10">
				</td>
			</tr>
			<tr>
				<td>
					<table width="100%" style="border: 1px solid #DDDDDD;font-family: Verdana, Arial, Helvetica, sans-serif;font-size:12px;">
					<?php $paymentClass = hikashop::get('class.payment'); $payment = $paymentClass->get($data->order_payment_id); echo $payment->payment_name; ?>
					<?php
					$params = null;
					$js = '';
					$fieldsClass = hikashop_get('class.field');
					$app =& JFactory::getApplication();
					if($app->isAdmin()){
						$view = 'order';
					}else{
						$view = 'address';
					}
					$template = trim(hikashop_getLayout($view,'address_template',$params,$js));
					if(!empty($data->cart->billing_address)){
						$billing = $template;
						foreach($data->order_addresses_fields as $field){
							$fieldname = $field->field_namekey;
							$address =& $data->order_addresses[$data->cart->billing_address->address_id];
							$billing=str_replace('{'.$fieldname.'}',$fieldsClass->show($field,$address->$fieldname),$billing);
						}
						echo '<tr><td style="font-weight:bold;background-color:#DDDDDD">'.JText::_('HIKASHOP_BILLING_ADDRESS').'</td></tr><tr><td>';
						echo str_replace(array("\r\n","\r","\n"),'<br/>',preg_replace('#{(?:(?!}).)*}#i','',$billing)).'<br/></td></tr>';
					}
					if(!empty($data->order_shipping_method)) {
						$currentShipping = hikashop_import('hikashopshipping',$data->order_shipping_method);
						if(method_exists($currentShipping, 'getShippingAddress')) {
							$override = $currentShipping->getShippingAddress($data->order_shipping_id);
							if($override !== false) {
								$data->override_shipping_address = $override;
							}
						}
					}
					if(!empty($data->override_shipping_address) || (!empty($data->cart->has_shipping) && !empty($data->cart->shipping_address))) echo '<tr><td style="font-weight:bold;background-color:#DDDDDD">'.JText::_('HIKASHOP_SHIPPING_ADDRESS').'</td></tr><tr><td>';
					if(!empty($data->override_shipping_address)) {
						echo $data->override_shipping_address.'<br/></td></tr>';
					} else if(!empty($data->cart->has_shipping) && !empty($data->cart->shipping_address)){
						$shipping = $template;
						foreach($data->order_addresses_fields as $field){
							$fieldname = $field->field_namekey;
							$address =& $data->order_addresses[$data->cart->shipping_address->address_id];
							$shipping=str_replace('{'.$fieldname.'}',$fieldsClass->show($field,$address->$fieldname),$shipping);
						}
						echo str_replace(array("\r\n","\r","\n"),'<br/>',preg_replace('#{(?:(?!}).)*}#i','',$shipping)).'<br/></td></tr>';
					}?>
					</table>
				</td>
			</tr>
			<tr>
				<td><?php
				$fields = $fieldsClass->getFields('frontcomp',$data,'order','');
				foreach($fields as $fieldName => $oneExtraField) {
					if(empty($data->$fieldName)) continue;
					echo "<br/>".$fieldsClass->trans($oneExtraField->field_realname).' : '.$fieldsClass->show($oneExtraField,$data->$fieldName);
				} ?></td>
			</tr>
			<tr>
				<td height="10">
				</td>
			</tr>
<?php
	JPluginHelper::importPlugin('hikashop');
	$dispatcher =& JDispatcher::getInstance();
	$dispatcher->trigger('onAfterOrderProductsListingDisplay', array(&$data->cart, 'email_notification_html'));
?>
			<tr>
				<td>
					<?php
					if(!$app->isAdmin()){
						echo JText::_('ORDER_VALID_AFTER_PAYMENT');
						$config =& hikashop_config();
						if($data->cart->full_total->prices[0]->price_value_with_tax>0 && hikashop_level(1) && $config->get('allow_payment_button',1)){
							global $Itemid;
							$url = '';
							if(!empty($Itemid)){
								$url='&Itemid='.$Itemid;
							}
							$pay_url = hikashop_frontendLink('index.php?option=com_hikashop&ctrl=order&task=pay&order_id='.$data->order_id.$url);
							if($config->get('force_ssl',0) && strpos('https://',$pay_url) === false) {
								$pay_url = str_replace('http://','https://',$pay_url);
							} ?>
							<a href="$pay_url"><?php JText::_('PAY_NOW'); ?></a>
						<?php } ?>
						<br/>
						<br/>
						<?php echo JText::sprintf('THANK_YOU_FOR_YOUR_ORDER',HIKASHOP_LIVE);
					}?>
					<br/>
					<br/>
					<?php echo JText::sprintf('BEST_REGARDS_CUSTOMER',$mail->from_name);?>
				</td>
			</tr>
			<tr>
				<td height="10">
				</td>
			</tr>
			<tr>
				<td height="10">
				</td>
			</tr>
		</tbody>
	</table>
</div>


Thank you in advance.

Please Log in or Create an account to join the conversation.

  • Posts: 81540
  • Thank you received: 13071
  • MODERATOR
11 years 8 months ago #62236

You will need to change the line:
echo '<tr><td colspan="4" style="text-align:right">'.JText::_('HIKASHOP_PAYMENT_METHOD').' : '.$currencyHelper->format($data->order_payment_price,$data->order_currency_id).'</td></tr>';

to:
$paymentClass = hikashop::get('class.payment');
$payment = $paymentClass->get($data->order_payment_id);
echo '<tr><td colspan="4" style="text-align:right">'.JText::_('HIKASHOP_PAYMENT_METHOD').' - '.$payment->payment_name.' : '.$currencyHelper->format($data->order_payment_price,$data->order_currency_id).'</td></tr>';

The following user(s) said Thank You: Konc

Please Log in or Create an account to join the conversation.

  • Posts: 30
  • Thank you received: 0
10 years 4 months ago #136961

I want to make part of the mail to be conditioned to payment method, if it's payed by credit card, it won't display, otherwise, it will. I set the following code:

<?php
                $paymentClass = hikashop::get('class.payment');
$payment = $paymentClass->get($data->order_payment_id);
$cc = $payment->payment_name;
if ($cc != 'Credit Card'): ?>
                
<p>
  Your will receive an invoice for $<?php echo $data->order->order_full_price; ?>
                </p>
               <?php
                endif;
                ?>
But it throws me an error when trying to checkout, I'm sure it's the code but I can't find the problem, could you enlighten me, please?

<!--EDITED-->

LOL, I just noticed I ran out of money in the credit card I'm using for testing. Have to wait until tomorrow for further tests, but if you see anything wrong with the code, please drop a line. Thank you!

Last edit: 10 years 4 months ago by zaratustra27. Reason: New info about the issue

Please Log in or Create an account to join the conversation.

  • Posts: 81540
  • Thank you received: 13071
  • MODERATOR
10 years 4 months ago #136999

It looks fine although we usually use curly brakets instead of endif.
What error did you get ?

Please Log in or Create an account to join the conversation.

  • Posts: 30
  • Thank you received: 0
10 years 4 months ago #137000

When trying to checkout, 'Error code: #'

I noticed the Failed order confirmation later, it's my debit card for sure. Thank you!

Please Log in or Create an account to join the conversation.

Time to create page: 0.099 seconds
Powered by Kunena Forum