- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
SIM line item integration
I've searched the forums for help on getting line item data to display via SIM method. I've been able to hardcode the data in and it works just fine, but I need to pull from the shopping cart as it is obviously going to be dynamic and possibly have multiple items.
So far this is what I have come up with that works to display one item, but not multiple...
<input type='hidden' name="x_line_item" value="<?php echo $prodslistpostID; ?><|><?php echo $prodslistitem; ?><|><|><?php echo $prodslistquantity; ?><|><?php echo $prodslistamount; ?><|>Y" />
Any help would be amazing.
03-05-2012 02:56 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Here's some code I hacked together quickly. This simulates an array of two items.
<?php $items = array( array( 'id' => 'ID1', 'name' => 'Product Name 1', 'description' => 'Product Description 1', 'quantity' => 1, 'price' => '9.99', 'taxable' => 'Y' ), array( 'id' => 'ID2', 'name' => 'Product Name 2', 'description' => 'Product Description 2', 'quantity' => 1, 'price' => '4.99', 'taxable' => 'Y' ) ); foreach ($items as $item) { $line_item = array(); foreach (array('id', 'name', 'description', 'quantity', 'price', 'taxable') as $key) $line_item[] = $item[$key]; print '<input type="hidden" name="x_line_item" value="' . implode('<|>', $line_item) . '">' . "\n"; } ?>

03-05-2012 04:57 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for your help TJ. I think this is getting towards what I need, but not there yet. Basically, I need something that can pull items that have been added to the shopping cart and then post them to the Authorize.net hosted checkout page. This could be anywhere from 1 item to 30 items (so I would need the arrays to generate dynamically as well). I'm using Wordpress with MarketTheme if that helps any.
03-05-2012 05:30 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If you can do a print_r() of the item array from your cart, I can maybe write something to adapt that for you.

03-05-2012 09:50 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Here is what I got. Thanks again.
Array ( [423] => Array ( [postID] => 423 [quantity] => 1 [shipping] => 4.95 [shipping2] => 0 ) [368] => Array ( [postID] => 368 [quantity] => 1 [shipping] => 4.95 [shipping2] => 0 ) ) Array ( [423] => Array ( [postID] => 423 [quantity] => 1 [shipping] => 4.95 [shipping2] => 0 ) [368] => Array ( [postID] => 368 [quantity] => 1 [shipping] => 4.95 [shipping2] => 0 ) )
03-06-2012 07:35 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
It's more helpful to view source so it's indented properly, and did you paste or output the same thing twice?
But in any case:
<?php $items = Array( '423' => Array( 'postID' => 423, 'quantity' => 1, 'shipping' => 4.95, 'shipping2' => 0, ), '368' => Array( 'postID' => 368, 'quantity' => 1, 'shipping' => 4.95, 'shipping2' => 0 ) ); foreach ($items as $item) { $line_item = array(); if (!$item['taxable']) $item['taxable'] = 'Y'; $item['price'] += $item['shipping'] + $item['shipping2']; foreach (array('postID', 'name', 'description', 'quantity', 'price', 'taxable') as $key) $line_item[] = $item[$key]; print '<input type="hidden" name="x_line_item" value="' . implode('<|>', $line_item) . '">' . "\n"; } ?>
Outputs:
<input type="hidden" name="x_line_item" value="423<|><|><|>1<|>4.95<|>Y"> <input type="hidden" name="x_line_item" value="368<|><|><|>1<|>4.95<|>Y">
You ought to be able to take it from here. If not, study the PHP manual:

03-06-2012 08:58 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Unfortunately I'm still not any closer. I'm sure I didn't explain my problem well. Below is the code from my shopping cart. Somehow I need to grab the line item info from here and post it to the authorize.net form.
<?php session_start(); error_reporting (E_ALL ^ E_NOTICE); $load = '../../../../wp-load.php'; if (file_exists($load)){ require($load); } else { wp_die('Error: wp-load file not found'); } // Get Session variable data $LANGUAGE = $_SESSION["LANGUAGE"]; $CURRENCY_SYMBOL = $_SESSION["CURRENCY_SYMBOL"]; $CURRENCY_CODE = $_SESSION["CURRENCY_CODE"]; $PPEmail = $_SESSION["PPEmail"]; $CARTDIR = $_SESSION["CARTDIR"]; $CARTURL = $CARTDIR . "cart.php"; $CHECKOUT_RETURNURL = $_SESSION["POSTSALE_URL"]; require("../language/" . $LANGUAGE . ".php"); // Payment Processing Post URL -- (Enable only one) $ACTION_URL = "https://www.paypal.com/cgi-bin/webscr"; //Paypal //$ACTION_URL = "https://checkout.google.com/api/checkout/v2/checkoutForm/Merchant/YOURMERCHANTIDHERE"; //Google Checkout (change merch ID) //TODO: Create Cart Object $crtQuantity = array(); $crtStockQuantity = array(); $crtAmount = array(); $crtShipping = array(); $crtShipping2 = array(); $crtHandling = array(); $crtHandlingCart = array(); $crtOptions = array(); $PPOptions = array(); //retrieve session Variables if($_SESSION["Quantity"]){ $crtName = $_SESSION["Name"]; $crtNotes = $_SESSION["Notes"]; $crtPostID = $_SESSION["PostID"]; $crtQuantity = $_SESSION["Quantity"]; $crtStockQuantity = $_SESSION["StockQuantity"]; $crtAmount = $_SESSION["Amount"]; $crtShipping = $_SESSION["Shipping"]; $crtShipping2 = $_SESSION["Shipping2"]; $crtHandling = $_SESSION["Handling"]; $crtHandlingCart = $_SESSION["HandlingCart"]; $crtOptions = $_SESSION["Options"]; $PPOptions = $_SESSION["PPOptions"]; } //convert strings to integers function str2int($string, $concat = true) { $length = strlen($string); for ($i = 0, $int = '', $concat_flag = true; $i < $length; $i++) { if (is_numeric($string[$i]) && $concat_flag) { $int .= $string[$i]; } elseif(!$concat && $concat_flag && strlen($int) > 0) { $concat_flag = false; } } return (int) $int; } //Save Session Variables function SaveSession($crtName,$crtNotes,$crtPostID,$crtAmount,$crtQuantity,$crtStockQuantity,$crtShipping,$crtShipping2,$crtHandling,$crtHandlingCart,$crtOptions,$PPOptions=' '){ $_SESSION["Name"] = $crtName; $_SESSION["Notes"] = $crtNotes; $_SESSION["PostID"] = $crtPostID; $_SESSION["Quantity"] = $crtQuantity; $_SESSION["StockQuantity"] = $crtStockQuantity; $_SESSION["Amount"] = $crtAmount; $_SESSION["Shipping"] = $crtShipping; $_SESSION["Shipping2"] = $crtShipping2; $_SESSION["Handling"] = $crtHandling; $_SESSION["HandlingCart"] = $crtHandlingCart; $_SESSION["Options"] = $crtOptions; $_SESSION["PPOptions"] = $PPOptions; } //Monolithic display cart function function ShowCart($crtName,$crtNotes,$crtPostID,$crtAmount,$crtQuantity,$crtStockQuantity,$crtShipping,$crtShipping2,$crtHandling,$crtHandlingCart,$crtOptions,$PPOptions){ include("cart_top.php"); global $CARTURL,$CURRENCY_SYMBOL,$ACTION_URL,$CHECKOUT_RETURNURL,$CARTDIR; $checkout = ''; $prods = ''; $i = 1; $ShippingTotal = 0; $GrandTotal = 0; // Calculation of $ShippingTotal - starts if(!empty($crtPostID)) { $s_values = array(); foreach( $crtPostID as $item =>$postid ) { $r = array_key_exists($postid,$s_values); if(!$r) { $s_values[$postid]['postID'] = $crtPostID[$item]; $s_values[$postid]['quantity'] = $crtQuantity[$item]; $s_values[$postid]['shipping'] = $crtShipping[$item]; $s_values[$postid]['shipping2'] = $crtShipping2[$item]; } else { $s_values[$postid]['quantity'] = $s_values[$postid]['quantity'] + $crtQuantity[$item]; } } $ShippingTotal = 0; foreach( $s_values as $postid =>$v ) { if ($v['quantity'] > 1) { $ShippingTotal = $ShippingTotal + $v['shipping']; $ShippingTotal = $ShippingTotal + (($v['quantity'] - 1) * $v['shipping2']); } else { $ShippingTotal = $ShippingTotal + $v['shipping']; } } } // End // Calculation of $ShippingTotal - ends foreach( $crtAmount as $item =>$amount ) { $GrandTotal = $GrandTotal + ($crtAmount[$item] * $crtQuantity[$item]); // Display Comments/Special Instructions Box value $sp_comments = ''; if (!empty($crtNotes[$item])) { $sp_comments = '<br><div style="margin-left: 10px;"><small><a title="'.$crtNotes[$item].'">'.mkt_SHOPCART_ITEM_SPECIAL_INSTRUCTIONS.'</a></small></div>'; } $mkt_pk_item_amount = $CURRENCY_SYMBOL.number_format((float)($crtAmount[$item] * $crtQuantity[$item]), 2, '.', ','); $Shipping = 'Shipping: '.$CURRENCY_SYMBOL.$Shipping; $content .= '<tr id="'.$item.'"><td>'.$crtName[$item].$sp_comments.'</td><td style="text-align:left;">'.$crtOptions[$item].'</td><td style="text-align:center;"><input class="quantity" name="'.$item.'" type="text" value="'.$crtQuantity[$item].'" /></td><td style="text-align:center;"><a href="'.$GLOBALS["CARTURL"].'?remove='.$item.'" class="crtRemove">'.mkt_SHOPCART_ITEM_REMOVE.'</a></td><td style="text-align:right;">'.$mkt_pk_item_amount.'</td></tr>'; if ($crtHandling[$item]){ $Handling = $crtHandling[$item]; if($crtQuantity[$item] > 1){ $Handling += $crtHandlingCart[$item] * ($crtQuantity[$item] - 1); } $checkout .='<input type="hidden" name="handling_'.$i.'" value="'.$Handling.'" />'; } $checkout .='<input type="hidden" name="item_name_'.$i.'" value="'.$crtName[$item].'" /> <input type="hidden" name="amount_'.$i.'" value="'.$crtAmount[$item].'" /> <input type="hidden" name="quantity_'.$i.'" value="'.$crtQuantity[$item].'" />'; // The following 4 inputs are for Google Checkout purposes $checkout .='<input type="hidden" name="item_description_'.$i.'" value="'.$crtOptions[$item].'" /> <input type="hidden" name="item_quantity_'.$i.'" value="'.$crtQuantity[$item].'" /> <input type="hidden" name="item_price_'.$i.'" value="'.$crtAmount[$item].'" /> <input type="hidden" name="item_currency_'.$i.'" value="'.$GLOBALS["CURRENCY_CODE"].'" />'; // Shipping Calculation for each item - STARTS $item_shipping_pk = 0; $mkt_post_id_temp = $crtPostID[$item]; if($s_values[$mkt_post_id_temp]['quantity'] > 1) { $item_shipping_pk = $item_shipping_pk + $s_values[$mkt_post_id_temp]['shipping']; $item_shipping_pk = $item_shipping_pk + (($s_values[$mkt_post_id_temp]['quantity'] - 1) * $s_values[$mkt_post_id_temp]['shipping2']); } else { $item_shipping_pk = $item_shipping_pk + $s_values[$mkt_post_id_temp]['shipping']; } // Shipping Calculation for each item - ENDS // Set shipping to only 1st item charge if ($i==1){ $ShippingTotal = $crtShipping[$item]; } // Create value for inventory control $mkt_pk_item_amount = (float)($crtAmount[$item] * $crtQuantity[$item]); $prods = $prods . $crtPostID[$item] . "+:#" . $crtName[$item]. "+:#". $crtOptions[$item]. "+:#" . $crtQuantity[$item]. "+:#" . $mkt_pk_item_amount. "+:#" . $crtNotes[$item] . "+:#"; if ($i < count($crtPostID)) { // set item shipping to zero, and add separator $prods = $prods . "0" . "^:*"; } else { // add total order shipping to last product record $prods = $prods . $ShippingTotal; } ++$i; } // If no item value, then display message if ($item == null){ $content .= '<tr><td colspan=5>'.mkt_SHOPCART_NOITEMS.'</td></tr>'; } $ItemSubTotal = $GrandTotal; $GrandTotal = $GrandTotal + $ShippingTotal; //session_register("grand_total"); $_SESSION["grand_total"] = $GrandTotal; //session_register("item_subtotal"); $_SESSION["item_subtotal"] = $ItemSubTotal; //session_register("shipping_cost"); $_SESSION["shipping_cost"] = $ShippingTotal; $content .=' <input type="hidden" name="grand_total" value="'.$GrandTotal.'" /> <input type="hidden" name="item_subtotal" value="'.$ItemSubTotal.'" /> <input type="hidden" name="shipping_cost" value="'.$ShippingTotal.'" /> '; $mkt_pk_ItemSubTotal = $CURRENCY_SYMBOL.number_format($ItemSubTotal, 2, '.', ','); $mkt_pk_ShippingTotal = $CURRENCY_SYMBOL.number_format($ShippingTotal, 2, '.', ','); $mkt_pk_GrandTotal = $CURRENCY_SYMBOL.number_format($GrandTotal, 2, '.', ','); $content .= '<tr>'; if((isset($_REQUEST['coupon'])) OR ($_SESSION['discount_code'])){ if (trim($_REQUEST['coupon'])) { $coupon = trim($_REQUEST['coupon']); } else { $coupon = $_SESSION['discount_code']; } $new_value = mkt_calc_coupon($coupon,$ItemSubTotal); if($new_value == false){ $show_coupon_text .= '<font color="red">'.mkt_SHOPCART_OPTIONS_COUPON_INVALID.'</font><br>'; $_SESSION['discount_value'] = ''; $_SESSION['discount_code'] = ''; }else{ $less = $GrandTotal - $ShippingTotal - $new_value; $DiscountGrandTotal = $new_value + $ShippingTotal; $_SESSION["grand_total"] = $DiscountGrandTotal; $mkt_pk_GrandTotal = $CURRENCY_SYMBOL.number_format($DiscountGrandTotal, 2, '.', ','); $show_coupon_text .= '<font color="green">'.mkt_SHOPCART_OPTIONS_COUPON_APPLIED_SUCCESS.'</font><br>'; $content .='<input type="hidden" name="discount_amount_cart" value="'.$less.'" />'; $_SESSION['discount_value'] = $less; $_SESSION['discount_code'] = $coupon; } } $show_coupon_text = '<td colspan="2" valign="top"><br>'.mkt_SHOPCART_OPTIONS_COUPON_PROMO_CODE.' <input type="text" name="coupon" value="'.$coupon.'" style="width:110px;"/><br>'.$show_coupon_text; $show_coupon_text .= '</td>'; $content .= $show_coupon_text; if ($_SESSION['discount_value']) { $coupon_text1 = "<font color='green'>".mkt_SHOPCART_OPTIONS_COUPON_APPLIED_SUCCESS2."</font><br>"; $coupon_text2 = "<font color='green'>-".$CURRENCY_SYMBOL.number_format($_SESSION['discount_value'], 2, '.', ',')."</font><br>"; } $content .= '<td colspan="2" style="text-align: right;">'.mkt_SHOPCART_SUBTOTAL.'<br/>'.$coupon_text1.mkt_SHOPCART_SHIPPING.'<br/><b>'.mkt_SHOPCART_TOTAL.'</b></td><td style="text-align:right;">'.$mkt_pk_ItemSubTotal.'<br/>'.$coupon_text2.$mkt_pk_ShippingTotal.'<br/><b>'.$mkt_pk_GrandTotal.'</b></td>'; $content .= '</tr>'; // Create product summary session variable for inventory control postsale page $_SESSION["prods"] = $prods; $_SESSION["mkt_pk_ItemSubTotal"] = $mkt_pk_ItemSubTotal; $_SESSION["mkt_pk_ShippingTotal"] = $mkt_pk_ShippingTotal; $_SESSION["mkt_pk_GrandTotal"] = $mkt_pk_GrandTotal; $content .=' <input type="hidden" name="prods" value="'.$prods.'" /> <input type="hidden" name="mkt_pk_ItemSubTotal" value="'.$mkt_pk_ItemSubTotal.'" /> <input type="hidden" name="mkt_pk_ShippingTotal" value="'.$mkt_pk_ShippingTotal.'" /> <input type="hidden" name="mkt_pk_GrandTotal" value="'.$mkt_pk_GrandTotal.'" /> '; // The following 4 inputs are Google Checkout variables $checkout .='<input type="hidden" name="ship_method_name_1" value="Ship Method"/>'; $checkout .='<input type="hidden" name="ship_method_price_1" value="'.$ShippingTotal.'" />'; $checkout .='<input type="hidden" name="ship_method_currency_1" value="'.$GLOBALS["CURRENCY_CODE"].'" />'; $checkout .='<input type="hidden" name="checkout-flow-support.merchant-checkout-flow-support.continue-shopping-url" value="' . $CHECKOUT_RETURNURL . '">'; // Send the ADMIN EMAIL address too... $checkout .='<input type="hidden" name="mkt_pk_admin_email" value="'.$_SESSION["mkt_pk_admin_email"].'"/>'; include("cart_bottom.php"); echo $content; } if($_GET['cart']){ ShowCart($crtName,$crtNotes,$crtPostID,$crtAmount,$crtQuantity,$crtStockQuantity,$crtShipping,$crtShipping2,$crtHandling,$crtHandlingCart,$crtOptions,$PPOptions); } if($_GET["remove"]){ $item = removeItem($_GET["remove"]); } function removeItem($item){ global $crtName,$crtNotes,$crtPostID,$crtAmount,$crtQuantity,$crtStockQuantity,$crtShipping,$crtShipping2,$crtHandling,$crtHandlingCart,$crtOptions,$PPOptions; unset($crtName[$item]); unset($crtNotes[$item]); unset($crtPostID[$item]); unset($crtAmount[$item]); unset($crtQuantity[$item]); unset($crtStockQuantity[$item]); unset($crtShipping[$item]); unset($crtShipping2[$item]); unset($crtHandling[$item]); unset($crtHandlingCart[$item]); unset($crtOptions[$item]); SaveSession($crtName,$crtNotes,$crtPostID,$crtAmount,$crtQuantity,$crtStockQuantity,$crtShipping,$crtShipping2,$crtHandling,$crtHandlingCart,$crtOptions,$PPOptions); return $item; } if($_GET["update"]){ foreach ($_GET as $item => $value ){ if($crtQuantity[$item]){ if (($crtStockQuantity[$item] != "") && ($value > $crtStockQuantity[$item])) { echo "<span style='color:#F00000;'><b>" . mkt_SHOPCART_OVERSTOCK_MESSAGE . " " . $crtStockQuantity[$item] . " -- (" . $crtName[$item] . ")</b></span><br>"; $crtQuantity[$item] = $crtStockQuantity[$item]; } else { $crtQuantity[$item] = str2int($value); } // If value = 0 then remove item from list if($crtQuantity[$item] == 0){ removeItem($item); } } } SaveSession($crtName,$crtNotes,$crtPostID,$crtAmount,$crtQuantity,$crtStockQuantity,$crtShipping,$crtShipping2,$crtHandling,$crtHandlingCart,$crtOptions,$PPOptions); ShowCart($crtName,$crtNotes,$crtPostID,$crtAmount,$crtQuantity,$crtStockQuantity,$crtShipping,$crtShipping2,$crtHandling,$crtHandlingCart,$crtOptions,$PPOptions); } if($_GET["add"]){ $item ="item".rand();//An Id can be used in lue of store with multiple items with the same name $name = $_GET["item_name"]; $notes = $_GET["notes"]; $postID = $_GET["postID"]; $amt = (float)$_GET["amount"]; $handling = (float)$_GET["handling"]; $handling_cart = (float)$_GET["handling_cart"]; $quan = str2int($_GET["quantity"]); $stockquantity = str2int($_GET["stockquantity"]); $ppoptions = ""; $optionpricing = 0; $options = ""; $i = 0; if(strpos($_GET["shipping"],"/")){ $ar = explode("/",$_GET["shipping"]); $ship = (float)$ar[0]; $ship2= (float)$ar[1]; }else{ $ship = (float)$_GET["shipping"]; $ship2= 0; } foreach ($_GET as $key => $value ){ $val = substr($key,0,2); if($val=="on"){ $opt = substr($key,2,1); $index = "os".$opt; // Option pricing begin $optionval = explode("@",$_GET[$index]); $optionpricing = $optionpricing + $optionval[1]; if ($optionval[1]) { if ($optionval[1]>0) { $optiontext = " (+"; } else { $optiontext = " (-"; } $optiontext = $optiontext . $CURRENCY_SYMBOL.number_format(abs($optionval[1]), 2, '.', ','); $optiontext = $optiontext .")"; } else { $optiontext = ""; } // Option pricing end $options.= $value.': '.$optionval[0].$optiontext.'<br />'; ++$i; } } // Check for duplicate products if ($crtPostID == "") {$crtPostID = array();} $duplicate_prodIDs = array_keys($crtPostID, $postID); for($i=0; $i<count($duplicate_prodIDs); $i++) { $totalprodquan += $crtQuantity[$duplicate_prodIDs[$i]]; $s1 = trim($notes); $s2 = trim($crtNotes[$duplicate_prodIDs[$i]]); $cmp = strcasecmp($s1, $s2); if (($postID == $crtPostID[$duplicate_prodIDs[$i]]) && ($options == $crtOptions[$duplicate_prodIDs[$i]]) && ($cmp == 0)) { $duplicateitemID = $duplicate_prodIDs[$i]; } } // Check to see if this puts it over stock quantity if (($stockquantity !="") && ($totalprodquan + $quan > $stockquantity)) { echo "<span style='color:#F00000;'><b>" . mkt_SHOPCART_OVERSTOCK_MESSAGE . " " . $stockquantity . " -- (" . $name . ")</b></span><br>"; } else { if ($duplicateitemID) { $crtQuantity[$duplicateitemID] += $quan; $crtNotes[$duplicateitemID] = $notes; //if($crtShipping[$item] < $ship){ $crtShipping[$item] = $ship; $crtShipping2[$item] = $ship2; $crtHandling[$item] = $handling; $crtHandlingCart[$item] = $handling_cart; //} }else{// A new item $crtName[$item] = $name; $crtNotes[$item] = $notes; $crtPostID[$item] = $postID; $crtAmount[$item] = $amt + $optionpricing; $crtShipping[$item] = $ship; $crtShipping2[$item] = $ship2; $crtHandling[$item] = $handling; $crtHandlingCart[$item] = $handling_cart; $crtQuantity[$item] = $quan; $crtStockQuantity[$item] = $stockquantity; $crtOptions[$item] = $options; $PPOptions[$item] = $ppoptions; } } //Save the Session and Display the cart SaveSession($crtName,$crtNotes,$crtPostID,$crtAmount,$crtQuantity,$crtStockQuantity,$crtShipping,$crtShipping2,$crtHandling,$crtHandlingCart,$crtOptions,$PPOptions); ShowCart($crtName,$crtNotes,$crtPostID,$crtAmount,$crtQuantity,$crtStockQuantity,$crtShipping,$crtShipping2,$crtHandling,$crtHandlingCart,$crtOptions,$PPOptions); } //***************** Function for Coupon Management - S T A R T S ******************* function mkt_calc_coupon($coupon,$order_total) { // This function will return false, in case of any error // Or will return value of the coupon global $mkt_options; global $wpdb; global $mkt_db_version; global $mkt_db_error; $mkt_db_error = ''; $table_name = $wpdb->prefix . "mkt_coupon"; $coupon = trim($coupon); $r = $wpdb->get_row("SELECT * FROM $table_name WHERE coupon = '$coupon'"); if(!$r){ return false; } // Check if start date valid yet. If no, return false. if($r->start_type == 'date'){ $today_timestamp = mktime(0,0,0, date('m'), date('d'), date('Y')); if ($today_timestamp < $r->start_date ){ return false; } } // Check if it is expired. If yes, return false. if($r->expiry_type == 'day'){ $creation_timestamp = $r->creation_date ; $expiry_timestamp = mktime(0,0,0,date('m', $creation_timestamp), (date('d', $creation_timestamp) + $r->num_of_days) , date('Y', $creation_timestamp)); $today_timestamp = mktime(0,0,0, date('m'), date('d'), date('Y')); if ($today_timestamp > $expiry_timestamp){ return false; } } elseif($r->expiry_type == 'date'){ $today_timestamp = mktime(0,0,0, date('m'), date('d'), date('Y')); if ($today_timestamp >= $r->expiry_date ){ return false; } } if($r->type == 'amount'){ $discounted_amount = $order_total - $r->value; } elseif($r->type == 'percent'){ $discounted_amount = $order_total - ($order_total * $r->value /100); } return $discounted_amount; } //***************** Function for Coupon Management - E N D S ******************* ?>
03-06-2012 04:55 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If you don't feel up to modifying the cart yourself, I would advise either asking the makers of the cart for help, or hiring an Authorize.net developer:
http://www.authorize.net/solutions/merchantsolutions/merchantservices/certifieddeveloperdirectory/
I can only help so much in the limited amount of time I have to post.

03-06-2012 07:28 PM
