In cs-cart version 3.x the following worked fine:
In tpl file
[size=4] {assign var=“SH_ID” value=‘whatever’}[/size]
and in PHP file
[size=3] $SH_ID = $this->get_template_vars(‘SH_ID’);[/size]
[size=3]But in 4.2.4 this doesn’t work. [/size][size=3]Any hint on how to pass a smarty variable to PHP in cs-cart 4.2.4[/size]
[size=3]Thanks,[/size]
[size=3]David[/size]
I know that i had a same issue regarding smarty code for IP adres.
example IP adres smarty Code:
Php code:
$_SERVER['REMOTE_ADDR'];
In smarty code
{$smarty.server.REMOTE_ADDR}
Maybe this should help you further and hope you get it work.
I'm not sure about this codes, but give it a try
{assign var="SH_ID" value=$smarty.whatever} or
{assign var="SH_ID" value=$smarty.request.whatever}
http://www.smarty.net/
Regards
That didn't work, but I found a better solution for my modification. I modified the cs-cart php code in fn.cart.php to call my arrivalDate subroutine that I placed in app/addons/my_changes/func.php.
foreach ($group['shippings'] as $shipping_id => $shipping) {
// DAVID MOD FOR ARRIVE DATE
$arrive = arriveDate($shipping_id); //call function and pass in $shipping_id
// Assign smarty variables to PHP variable
Registry::get('view')->assign('arrive', $arrive);
// END DAVID MOD FOR ARRIVE DATE
.
.
.
now I can show the newly calculated arrival date in shipping_rates.tpl
By the way, my modification shows the customer (during step 3 of checkout) the estimated arrival date based on production time of product being purchased (calculated in [color=#282828][font=arial, verdana, tahoma, sans-serif][size=3]productionDate subroutine [/size][/font][/color][size=3]I placed in app/addons/my_changes/func.php), [/size][size=4]holidays, and available shipping methods. This is important because our products each have unique production time.[/size]
In Step 3 of checkout the shipping radio selection looks like:
[size=3][color=#333333][font=Tahoma, Geneva, sans-serif]USPS Priority Mail (Not recommended if you need by a specific date) - $8.29[/font][/color][/size]
[color=#333333][font=Tahoma, Geneva, sans-serif][size=3]FedEx Ground - $12.26 [/size][/font][/color][color=#ff0000][size=3](Click to view ground arrival dates based on zipcode)[/size][/color]
[color=#333333][font=Tahoma, Geneva, sans-serif][size=3]FedEx 2nd day (by end of day) - $44.28 [color=red](estimated to arrive on 01/07/2015)[/color][/size][/font][/color]
[color=#333333][font=Tahoma, Geneva, sans-serif][size=3]FedEx Priority Overnight (Morning) - $76.10 [color=red](estimated to arrive on 01/06/2015)[/color][/size][/font][/color]