Exponential Basic 2.4.0.1 Exponential Basic CMS — PHP Class Reference

ezorderconfirmation.php
Go to the documentation of this file.
1 <?php
3 //
4 // $Id: ezorderconfirmation.php 9628 2002-06-12 13:52:47Z br $
5 //
6 // Definition of eZConfirmation class
7 //
8 // <Bj�rn Reiten> <br@ez.no>
9 // Created on: <21-Mar-2002 17:47:55 br>
10 //
11 // This source file is part of Exponential Basic, publishing software.
12 // Copyright (C) 1999-2001 eZ systems as
13 //
14 // This program is free software; you can redistribute it and/or
15 // modify it under the terms of the GNU General Public License
16 // as published by the Free Software Foundation; either version 2
17 // of the License, or (at your option) any later version.
18 //
19 // This program is distributed in the hope that it will be useful,
20 // but WITHOUT ANY WARRANTY; without even the implied warranty of
21 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 // GNU General Public License for more details.
23 //
24 // You should have received a copy of the GNU General Public License
25 // along with this program; if not, write to the Free Software
26 // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, US
27 //
28
31
35 // include_once( "classes/INIFile.php" );
36 // include_once( "classes/eztemplate.php" );
37 // include_once( "classes/ezlocale.php" );
38 // include_once( "classes/ezcurrency.php" );
39
40 // include_once( "classes/ezlog.php" );
41 // include_once( "classes/ezcachefile.php" );
42
43 // include_once( "eztrade/classes/ezproduct.php" );
44 // include_once( "eztrade/classes/ezoption.php" );
45 // include_once( "eztrade/classes/ezoptionvalue.php" );
46 // include_once( "eztrade/classes/ezcart.php" );
47 // include_once( "eztrade/classes/ezcartitem.php" );
48 // include_once( "eztrade/classes/ezcartoptionvalue.php" );
49 // include_once( "eztrade/classes/ezpreorder.php" );
50 // include_once( "eztrade/classes/ezorder.php" );
51 // include_once( "eztrade/classes/ezorderitem.php" );
52 // include_once( "eztrade/classes/ezorderoptionvalue.php" );
53 // include_once( "eztrade/classes/ezwishlist.php" );
54 // include_once( "eztrade/classes/ezcheckout.php" );
55 // include_once( "eztrade/classes/ezvoucher.php" );
56 // include_once( "eztrade/classes/ezvoucherused.php" );
57 // include_once( "eztrade/classes/ezvoucheremail.php" );
58 // include_once( "eztrade/classes/ezvouchersmail.php" );
59
60 // include_once( "ezcontact/classes/ezperson.php" );
61 // include_once( "ezcontact/classes/ezcompany.php" );
62
63 // include_once( "ezsession/classes/ezsession.php" );
64 // include_once( "ezmail/classes/ezmail.php" );
65 // include_once( "classes/ezgpg.php" );
66
67 class eZOrderConfirmation
68 {
69 function __construct( $id = "" )
70 {
71 if ( $id )
72 {
73 $this->OrderID = $id;
74 }
75
76 $ini =& eZINI::instance( 'site.ini' );
77
78 $this->Language = $ini->variable( "eZTradeMain", "Language" );
79 $this->OrderSenderEmail = $ini->variable( "eZTradeMain", "OrderSenderEmail" );
80 $this->OrderReceiverEmail = $ini->variable( "eZTradeMain", "OrderReceiverEmail" );
81 $this->PricesIncludeVAT = $ini->variable( "eZTradeMain", "PricesIncludeVAT" ) == "enabled" ? true : false;
82 $this->EmailShowExTaxColumn = $ini->variable( "eZTradeMain", "ShowExTaxColumn" ) == "enabled" ? true : false;
83 $this->EmailShowIncTaxColumn = $ini->variable( "eZTradeMain", "ShowIncTaxColumn" ) == "enabled" ? true : false;
84 $this->DiscontinueQuantityless = $ini->variable( "eZTradeMain", "DiscontinueQuantityless" ) == "true";
85 $this->SiteURL = $ini->variable( "site", "SiteURL" );
86 $this->checkups = $ini->variable( "eZTradeMain", "UPSOFF" );
87 $this->IndexFile = $ini->Index;
88 }
89
90 function confirmOrder( $sessionID )
91 {
92 $ret[] = true;
93 if ( is_numeric( $sessionID ) )
94 {
95 $ret[] = $this->sendMail( $sessionID );
96 $ret[] = $this->confirm( $sessionID );
97 }
98 else
99 {
100 $ret[] = false;
101 }
102
103 if ( in_array( false, $ret ) )
104 {
105 return false;
106 }
107 else
108 {
109 return true;
110 }
111 }
112
113 function sendMail( $sessionID )
114 {
115 $session = new eZSession( $sessionID, true );
116 $preOrderID = $session->variable( "PreOrderID" );
117 $ini =& eZINI::instance( 'site.ini' );
118
119 // Set some variables to defaults.
120 $ShowCart = false;
121 $ShowSavingsColumn = false;
122
123 $locale = new eZLocale( $this->Language );
124 $currency = new eZCurrency();
125
126 // get the order
127 $orderID = $this->OrderID;
128
129 $order = new eZOrder( $orderID );
130
131
132 //
133 // Send mail confirmation
134 //
135
136 $mailTemplate = new eZTemplate( "kernel/eztrade/user/" . $ini->variable( "eZTradeMain", "TemplateDir" ),
137 "kernel/eztrade/user/intl", $this->Language, "mailorder.php" );
138
139 $mailTemplateIni = new eZINI( "kernel/eztrade/user/intl/" . $this->Language . "/ordersendt.php.ini", false );
140 $mailTemplate->set_file( "order_sendt_tpl", "mailorder.tpl" );
141 $mailTemplate->setAllStrings();
142
143 $mailTemplate->set_block( "order_sendt_tpl", "billing_address_tpl", "billing_address" );
144 $mailTemplate->set_block( "order_sendt_tpl", "shipping_address_tpl", "shipping_address" );
145 $mailTemplate->set_block( "order_sendt_tpl", "order_item_list_tpl", "order_item_list" );
146
147 $mailTemplate->set_block( "order_sendt_tpl", "full_cart_tpl", "full_cart" );
148 $mailTemplate->set_block( "full_cart_tpl", "cart_item_list_tpl", "cart_item_list" );
149
150 $mailTemplate->set_block( "cart_item_list_tpl", "cart_item_tpl", "cart_item" );
151
152 $mailTemplate->set_block( "cart_item_tpl", "cart_item_option_tpl", "cart_item_option" );
153
154 $mailTemplate->set_block( "full_cart_tpl", "tax_specification_tpl", "tax_specification" );
155 $mailTemplate->set_block( "tax_specification_tpl", "tax_item_tpl", "tax_item" );
156
157 // get the customer
158 $orderUser = $order->user();
159
160 if ( $orderUser )
161 {
162 // print out the addresses
163 $billingAddress = $order->billingAddress();
164
165 if ( $order->personID() == 0 && $order->companyID() == 0 )
166 {
167 $mailTemplate->set_var( "customer_first_name", $orderUser->firstName() );
168 $mailTemplate->set_var( "customer_last_name", $orderUser->lastName() );
169 }
170 else
171 {
172 if ( $order->personID() > 0 )
173 {
174 $customer = new eZPerson( $order->personID() );
175 $mailTemplate->set_var( "customer_first_name", $customer->firstName() );
176 $mailTemplate->set_var( "customer_last_name", $customer->lastName() );
177 }
178 else
179 {
180 $customer = new eZCompany( $order->companyID() );
181 $mailTemplate->set_var( "customer_first_name", $customer->name() );
182 $mailTemplate->set_var( "customer_last_name", "" );
183 }
184 }
185
186 $mailTemplate->set_var( "billing_street1", $billingAddress->street1() );
187 $mailTemplate->set_var( "billing_street2", $billingAddress->street2() );
188 $mailTemplate->set_var( "billing_zip", $billingAddress->zip() );
189 $mailTemplate->set_var( "billing_place", $billingAddress->place() );
190
191 $country = $billingAddress->country();
192
193 if ( $country )
194 {
195 if ( $ini->variable( "eZUserMain", "SelectCountry" ) == "enabled" )
196 $mailTemplate->set_var( "billing_country", $country->name() );
197 else
198 $mailTemplate->set_var( "billing_country", "" );
199 }
200 else
201 {
202 $mailTemplate->set_var( "billing_country", "" );
203 }
204
205 $region = $billingAddress->region();
206
207 if ( $region )
208 {
209 if ( $ini->variable( "eZUserMain", "SelectRegion" ) == "enabled" )
210 $mailTemplate->set_var( "billing_region", $region->name() );
211 else
212 $mailTemplate->set_var( "billing_region", "" );
213 }
214 else
215 {
216 $mailTemplate->set_var( "billing_region", "" );
217 }
218
219 if ( $ini->variable( "eZTradeMain", "ShowBillingAddress" ) == "enabled" )
220 $mailTemplate->parse( "billing_address", "billing_address_tpl" );
221 else
222 $mailTemplate->set_var( "billing_address", "" );
223
224 if ( $order->personID() == 0 && $order->companyID() == 0 )
225 {
226 $shippingUser = $order->shippingUser();
227
228 if ( $shippingUser )
229 {
230 $mailTemplate->set_var( "shipping_first_name", $shippingUser->firstName() );
231 $mailTemplate->set_var( "shipping_last_name", $shippingUser->lastName() );
232 }
233 }
234 else
235 {
236 if ( $order->personID() > 0 )
237 {
238 $customer = new eZPerson( $order->personID() );
239 $mailTemplate->set_var( "shipping_first_name", $customer->firstName() );
240 $mailTemplate->set_var( "shipping_last_name", $customer->lastName() );
241 }
242 else
243 {
244 $customer = new eZCompany( $order->companyID() );
245 $mailTemplate->set_var( "shipping_first_name", $customer->name() );
246 $mailTemplate->set_var( "shipping_last_name", "" );
247 }
248 }
249
250 $shippingAddress = $order->shippingAddress();
251
252 $mailTemplate->set_var( "shipping_street1", $shippingAddress->street1() );
253 $mailTemplate->set_var( "shipping_street2", $shippingAddress->street2() );
254 $mailTemplate->set_var( "shipping_zip", $shippingAddress->zip() );
255 $mailTemplate->set_var( "shipping_place", $shippingAddress->place() );
256
257 $country = $shippingAddress->country();
258
259 if ( $country )
260 {
261 if ( $ini->variable( "eZUserMain", "SelectCountry" ) == "enabled" )
262 $mailTemplate->set_var( "shipping_country", $country->name() );
263 else
264 $mailTemplate->set_var( "shipping_country", "" );
265 }
266 else
267 {
268 $mailTemplate->set_var( "shipping_country", "" );
269 }
270
271 $region = $shippingAddress->region();
272
273 if ( $region )
274 {
275 if ( $ini->variable( "eZUserMain", "SelectRegion" ) == "enabled" )
276 $mailTemplate->set_var( "shipping_region", $region->name() );
277 else
278 $mailTemplate->set_var( "shipping_region", "" );
279 }
280 else
281 {
282 $mailTemplate->set_var( "shipping_region", "" );
283 }
284
285 $mailTemplate->parse( "shipping_address", "shipping_address_tpl" );
286 }
287 else
288 {
289 return false;
290 }
291
292 // fetch the order items
293 $items = $order->items();
294
295 $i = 0;
296 $sum = 0.0;
297 $totalVAT = 0.0;
298
299 $numberOfItems = 0;
300 $i = 0;
301
302 $search="/&nbsp;/";
303 $replace=" ";
304
305 // Add headers!
306
307 $productsForEmail[$i]["product_id"] = trim( $mailTemplateIni->variable( "strings", "product_id" ) );
308 $productsForEmail[$i]["product_name"] = trim( $mailTemplateIni->variable( "strings", "product_name" ) );
309 $productsForEmail[$i]["product_number"] = trim( $mailTemplateIni->variable( "strings", "product_number" ) );
310 $productsForEmail[$i]["product_price"] = trim( $mailTemplateIni->variable( "strings", "product_price" ) );
311 $productsForEmail[$i]["product_count"] = trim( $mailTemplateIni->variable( "strings", "product_qty" ) );
312 $productsForEmail[$i]["product_savings"] = trim( $mailTemplateIni->variable( "strings", "product_savings" ) );
313 $productsForEmail[$i]["product_total_ex_tax"] = trim( $mailTemplateIni->variable( "strings", "product_total_ex_tax" ) );
314 $productsForEmail[$i]["product_total_inc_tax"] = trim( $mailTemplateIni->variable( "strings", "product_total_inc_tax" ) );
315
316 if ( count( $items ) > 0 )
317 {
318 $orderItem = 1;
319 $productOptions = array();
320 foreach ( $items as $item )
321 {
322 $mailTemplate->set_var( "td_class", ( $i % 2 ) == 0 ? "bglight" : "bgdark" );
323 $i++;
324 $mailTemplate->set_var( "cart_item_id", $item->id() );
325 $product =& $item->product();
326 $vatPercentage = $product->vatPercentage();
327 $productHasVAT = $product->priceIncVAT();
328
329 $productID = $product->id();
330
331 $productsForEmail[$i]["product_id"] = $productID;
332
333 $productName = substr( $product->name(), 0, 20);
334 if ( strlen($productName) < 21 )
335 $productName = str_pad($productName, 21);
336
337 // $productsForEmail[$i]["product_name"] = trim( $product->name() );
338 $productsForEmail[$i]["product_name"] = html_entity_decode($productName);
339 $productsForEmail[$i]["product_number"] = trim( $product->productNumber() );
340 $productsForEmail[$i]["product_price"] = preg_replace( $search, $replace, $item->localePrice( false, true, $this->PricesIncludeVAT ) );
341 $productsForEmail[$i]["product_count"] = $item->count();
342 $productsForEmail[$i]["product_total_ex_tax"] = preg_replace( $search, $replace, $item->localePrice( true, true, false ) );
343 $productsForEmail[$i]["product_total_inc_tax"] = preg_replace( $search, $replace, $item->localePrice( true, true, true ) );
344 $productsForEmail[$i]["product_savings"] = "";
345
346 $numberOfItems++;
347
348 $numberOfOptions = 0;
349
350 $optionValues =& $item->optionValues();
351
352 foreach ( $optionValues as $optionValue )
353 {
354 $productOptions[$orderItem][$productID][$numberOfOptions]["option_id"] = "";
355 $productOptions[$orderItem][$productID][$numberOfOptions]["option_name"] = trim( $optionValue->valueName() );
356 $productOptions[$orderItem][$productID][$numberOfOptions]["option_value"] = trim( $optionValue->optionName() ) . ": ";
357 $productOptions[$orderItem][$productID][$numberOfOptions]["option_price"] = "";
358
359 $numberOfOptions++;
360 }
361 $orderItem++;
362 }
363 }
364 else
365 {
366 return false;
367 }
368
369 $separateBy = 2;
370
371 $order->orderTotals( $tax, $total );
372 $mailTemplate->set_var( "empty_cart", "" );
373
374 if( $this->EmailShowExTaxColumn == true )
375 {
376 $currency->setValue( $total["subextax"] );
377 $subextax = $locale->format( $currency );
378 $subextax = preg_replace( $search, $replace, $subextax );
379
380 $currency->setValue( $total["extax"] );
381 $extax = $locale->format( $currency );
382 $extax = preg_replace( $search, $replace, $extax );
383
384 $currency->setValue( $total["shipextax"] );
385 $shipextax = $locale->format( $currency );
386 $shipextax = preg_replace( $search, $replace, $shipextax );
387
388 $len_product_total_ex_tax = strlen( $subextax ) > $len_product_total_ex_tax ? strlen( $subextax ) : $len_product_total_ex_tax;
389 $len_product_total_ex_tax = strlen( $extax ) > $len_product_total_ex_tax ? strlen( $extax ) : $len_product_total_ex_tax;
390 $len_product_total_ex_tax = strlen( $shipextax ) > $len_product_total_ex_tax ? strlen( $shipextax ) : $len_product_total_ex_tax;
391 }
392
393 if( $this->EmailShowIncTaxColumn == true )
394 {
395 $currency->setValue( $total["subinctax"] );
396 $subinctax = $locale->format( $currency );
397 $subinctax = preg_replace( $search, $replace, $subinctax );
398
399 $currency->setValue( $total["inctax"] );
400 $inctax = $locale->format( $currency );
401 $inctax = preg_replace( $search, $replace, $inctax );
402
403 $currency->setValue( $total["shipinctax"] );
404 $shipinctax = $locale->format( $currency );
405 $shipinctax = preg_replace( $search, $replace, $shipinctax );
406
407 $len_product_total_inc_tax = strlen( $subinctax ) > $len_product_total_inc_tax ? strlen( $subinctax ) : $len_product_total_inc_tax;
408 $len_product_total_inc_tax = strlen( $inctax ) > $len_product_total_inc_tax ? strlen( $inctax ) : $len_product_total_inc_tax;
409 $len_product_total_inc_tax = strlen( $shipinctax ) > $len_product_total_inc_tax ? strlen( $shipinctax ) : $len_product_total_inc_tax;
410 }
411
412 if ( count ( $productOptions ) > 0 )
413 {
414 foreach ( $productOptions as $productIDItem )
415 {
416 foreach ( $productIDItem as $options )
417 {
418 foreach( $options as $line )
419 {
420 $len_option_name = strlen( $line["option_name"] ) > $len_option_name ? strlen( $line["option_name"] ) : $len_option_name;
421 $len_option_value = strlen( $line["option_value"] ) > $len_option_value ? strlen( $line["option_value"] ) : $len_option_value;
422 $len_option_price = strlen( $line["option_price"] ) > $len_option_price ? strlen( $line["option_price"] ) : $len_option_price;
423 }
424 }
425 }
426 }
427
428 $len_option_name += $separateBy;
429 $len_option_value += $separateBy;
430 $len_option_price += $separateBy;
431
432 $optionLen = $len_option_name + $len_option_value;
433
434 $len_product_name = $optionLen;
435
436 foreach( $productsForEmail as $line )
437 {
438 $len_product_name = strlen( $line["product_name"] ) > $len_product_name ? strlen( $line["product_name"] ) : $len_product_name;
439 $len_product_number = strlen( $line["product_number"] ) > $len_product_number ? strlen( $line["product_number"] ) : $len_product_number;
440 $len_product_price = strlen( $line["product_price"] ) > $len_product_price ? strlen( $line["product_price"] ) : $len_product_price;
441 $len_product_count = strlen( $line["product_count"] ) > $len_product_count ? strlen( $line["product_count"] ) : $len_product_count;
442 $len_product_total_ex_tax = strlen( $line["product_total_ex_tax"] ) > $len_product_total_ex_tax ? strlen( $line["product_total_ex_tax"] ) : $len_product_total_ex_tax;
443 $len_product_total_inc_tax = strlen( $line["product_total_inc_tax"] ) > $len_product_total_inc_tax ? strlen( $line["product_total_inc_tax"] ) : $len_product_total_inc_tax;
444 $len_product_savings = strlen( $line["product_savings"] ) > $len_product_savings ? strlen( $line["product_savings"] ) : $len_product_savings;
445 }
446
447 $separateBy = 2;
448
449 $items = "";
450
451 $count = count( $productsForEmail );
452
453 $len_product_number += $separateBy;
454 $len_product_name += $separateBy;
455 $len_product_price += $separateBy;
456 $len_product_count += $separateBy;
457 $len_product_total_ex_tax += $separateBy;
458 $len_product_total_inc_tax += $separateBy;
459 $len_product_savings += $separateBy;
460
461 $lineFillLen = $len_product_number + $len_product_name + $len_product_price + $len_product_count;
462 $totalsLen = $len_product_number + $len_product_name + $len_product_price + $len_product_count;
463 $len_option_indent = $len_product_number;
464
465
466 $i = 0;
467
468 $headers = "";
469
470 $headers = $headers . str_pad( $productsForEmail[$i]["product_number"], $len_product_number, " ", STR_PAD_RIGHT );
471 $headers = $headers . str_pad( $productsForEmail[$i]["product_name"], $len_product_name, " ", STR_PAD_RIGHT );
472 $headers = $headers . str_pad( $productsForEmail[$i]["product_price"], $len_product_price, " ", STR_PAD_LEFT );
473 $headers = $headers . str_pad( $productsForEmail[$i]["product_count"], $len_product_count, " ", STR_PAD_LEFT );
474
475 if ( $this->EmailShowExTaxColumn == true )
476 {
477 $headers = $headers . str_pad( $productsForEmail[$i]["product_total_ex_tax"], $len_product_total_ex_tax , " ", STR_PAD_LEFT );
478 $lineFillLen += $len_product_total_ex_tax;
479 }
480
481 if ( $this->EmailShowIncTaxColumn == true )
482 {
483 $headers = $headers . str_pad( $productsForEmail[$i]["product_total_inc_tax"], $len_product_total_inc_tax, " ", STR_PAD_LEFT );
484 $lineFillLen += $len_product_total_inc_tax;
485 }
486
487 if ( $ShowSavingsColumn == true )
488 {
489 $headers = $headers . str_pad( $productsForEmail[$i]["product_savings"], $len_product_savings, " ", STR_PAD_LEFT );
490 $lineFillLen += $len_product_savings;
491 }
492
493 $mailTemplate->set_var( "headers", $headers );
494 $mailTemplate->set_var( "hyphen_line", str_pad( "", $lineFillLen, "-", STR_PAD_LEFT ) );
495 $mailTemplate->set_var( "equal_line", str_pad( "", $lineFillLen, "=", STR_PAD_LEFT ) );
496 $mailTemplate->set_var( "cart_item", "" );
497
498 for( $i = 1; $i < $count; $i++ )
499 {
500 $mailTemplate->set_var( "product_id", str_pad( $productsForEmail[$i]["product_id"], $len_product_id, " ", STR_PAD_RIGHT ) );
501 $mailTemplate->set_var( "product_number", str_pad( $productsForEmail[$i]["product_number"], $len_product_number, " ", STR_PAD_RIGHT ) );
502 $mailTemplate->set_var( "product_name", str_pad( $productsForEmail[$i]["product_name"], $len_product_name, " ", STR_PAD_RIGHT ) );
503 $mailTemplate->set_var( "product_price", str_pad( $productsForEmail[$i]["product_price"], $len_product_price, " ", STR_PAD_LEFT ) );
504 $mailTemplate->set_var( "product_count", str_pad( $productsForEmail[$i]["product_count"], $len_product_count, " ", STR_PAD_LEFT ) );
505
506 if ( $this->EmailShowExTaxColumn == true )
507 $mailTemplate->set_var( "product_total_ex_tax", str_pad( $productsForEmail[$i]["product_total_ex_tax"], $len_product_total_ex_tax, " ", STR_PAD_LEFT ) );
508 else
509 $mailTemplate->set_var( "product_total_ex_tax", "" );
510
511 if ( $this->EmailShowIncTaxColumn == true )
512 $mailTemplate->set_var( "product_total_inc_tax", str_pad( $productsForEmail[$i]["product_total_inc_tax"], $len_product_total_inc_tax, " ", STR_PAD_LEFT ) );
513 else
514 $mailTemplate->set_var( "product_total_inc_tax", "" );
515
516 if ( $ShowSavingsColumn == true )
517 $mailTemplate->set_var( "product_savings", str_pad( $productsForEmail[$i]["product_savings"], $len_product_savings, " ", STR_PAD_LEFT ) );
518 else
519 $mailTemplate->set_var( "product_savings", "" );
520
521 $productID = $productsForEmail[$i]["product_id"];
522
523 $mailTemplate->set_var( "cart_item_option", "" );
524
525 if( is_array( $productOptions[$i][$productID] ) )
526 {
527 foreach( $productOptions[$i][$productID] as $option )
528 {
529 $mailTemplate->set_var( "option_indent", str_pad( "", $len_option_indent, " ", STR_PAD_LEFT ) );
530 $mailTemplate->set_var( "option_id", str_pad( $option["option_id"], $len_option_id, " ", STR_PAD_LEFT ) );
531 $mailTemplate->set_var( "option_name", str_pad( $option["option_name"], $len_option_name, " ", STR_PAD_RIGHT ) );
532 $mailTemplate->set_var( "option_value", str_pad( $option["option_value"], $len_option_name, " ", STR_PAD_RIGHT ) );
533 $mailTemplate->set_var( "option_price", str_pad( $option["option_price"], $len_option_price, " ", STR_PAD_LEFT ) );
534
535 $mailTemplate->parse( "cart_item_option", "cart_item_option_tpl", true );
536 }
537 }
538
539 $mailTemplate->parse( "cart_item", "cart_item_tpl", true );
540 }
541
542 if ( $numberOfItems > 0 )
543 {
544 $ShowCart = true;
545 }
546
547 $mailTemplate->setAllStrings();
548
549 if ( $ShowCart == true )
550 {
551 if ( $ShowSavingsColumn == true )
552 {
553 $totalsLen += $len_product_savings;
554 }
555
556 $mailTemplate->set_var( "intl-confirming-order", trim( $mailTemplateIni->variable( "strings", "confirming-order" ) ) );
557 $mailTemplate->set_var( "intl-thanks_for_shopping", trim( $mailTemplateIni->variable( "strings", "thanks_for_shopping" ) ) );;
558 $mailTemplate->set_var( "intl-goods_list", trim( $mailTemplateIni->variable( "strings", "goods_list" ) ) );;
559
560 $mailTemplate->set_var( "subtotal_inc_tax", str_pad( $subinctax, $len_product_total_inc_tax, " ", STR_PAD_LEFT ) );
561 $mailTemplate->set_var( "total_inc_tax", str_pad( $inctax, $len_product_total_inc_tax, " ", STR_PAD_LEFT ) );
562 $mailTemplate->set_var( "shipping_inc_tax", str_pad( $shipinctax, $len_product_total_inc_tax, " ", STR_PAD_LEFT ) );
563
564 $mailTemplate->set_var( "subtotal_ex_tax", str_pad( $subextax, $len_product_total_ex_tax, " ", STR_PAD_LEFT ) );
565 //$mailTemplate->set_var( "total_ex_tax", str_pad( $extax, $len_product_total_ex_tax, " ", STR_PAD_LEFT ) );
566
567 $currency->setValue( $total["inctax"] );
568 $inctax = $locale->format( $currency );
569 $inctax = preg_replace( $search, $replace, $inctax );
570 $len_product_total_inc_tax = strlen( $inctax ) > $len_product_total_inc_tax ? strlen( $inctax ) : $len_product_total_inc_tax;
571
572 if($total["shiptax"] == 0){
573 $mailTemplate->set_var( "total_ex_tax", str_pad( $extax, $len_product_total_ex_tax + 3, " ", STR_PAD_LEFT ) );
574 $mailTemplate->set_var( "sales-tax-inc", str_pad( "", "2" , " ", STR_PAD_LEFT ) );
575 $mailTemplate->set_var( "sales-tax", str_pad( "", "2" , " ", STR_PAD_LEFT ) );
576 }else{
577
578 $currency->setValue( $total["tax"] );
579 $subtax = $locale->format( $currency );
580 $subtax = preg_replace( $search, $replace, $subtax );
581 $len_product_total_sub_tax = strlen( $subtax ) > $len_product_total_sub_tax ? strlen( $subtax ) : $len_product_total_sub_tax;
582
583 $mailTemplate->set_var( "total_ex_tax", str_pad( $inctax, $len_product_total_inc_tax + 3, " ", STR_PAD_LEFT ) );
584 $mailTemplate->set_var( "sales-tax-inc", str_pad( $subtax, 25 , " ", STR_PAD_LEFT ) );
585 $mailTemplate->set_var( "sales-tax", str_pad( "Sales Tax", 54, " ", STR_PAD_LEFT ) );
586
587 }
588 $mailTemplate->set_var( "shipping_ex_tax", str_pad( $shipextax, $len_product_total_ex_tax, " ", STR_PAD_LEFT ) );
589
590 $mailTemplate->set_var( "intl-subtotal", str_pad( trim( $mailTemplateIni->variable( "strings", "subtotal" ) ), $totalsLen , " ", STR_PAD_LEFT ) );
591 $mailTemplate->set_var( "intl-shipping", str_pad( trim( $mailTemplateIni->variable( "strings", "shipping" ) ), $totalsLen , " ", STR_PAD_LEFT ) );
592 $mailTemplate->set_var( "intl-total", str_pad( trim( $mailTemplateIni->variable( "strings", "total" ) ), $totalsLen , " ", STR_PAD_LEFT ) );
593
594 $mailTemplate->parse( "cart_item_list", "cart_item_list_tpl" );
595 $mailTemplate->parse( "full_cart", "full_cart_tpl" );
596
597 $taxBasisLen = strlen( trim( $mailTemplateIni->variable( "strings", "tax_basis" ) ) );
598 $taxPercentageLen = strlen( trim( $mailTemplateIni->variable( "strings", "tax_percentage" ) ) );
599 $taxLen = strlen( trim( $mailTemplateIni->variable( "strings", "tax" ) ) );
600
601 $currency->setValue( $total["tax"] );
602 $taxValue = preg_replace( $search, $replace, $locale->format( $currency ) );
603 $taxLen = strlen( $taxValue ) > $taxLen ? strlen( $taxValue ) : $taxLen;
604
605 foreach( $tax as $taxGroup )
606 {
607 $currency->setValue( $taxGroup["basis"] );
608 $subTaxBasis = trim( preg_replace( $search, $replace, $locale->format( $currency ) ) );
609 $taxBasisLen = strlen( $subTaxBasis ) > $taxBasisLen ? strlen( $subTaxBasis ) : $taxBasisLen;
610
611 $currency->setValue( $taxGroup["tax"] );
612 $subTax = trim( preg_replace( $search, $replace, $locale->format( $currency ) ) );
613 $taxLen = strlen( $subTax ) > $taxLen ? strlen( $subTax ) : $taxLen;
614
615 $taxPercentageLen = strlen( trim( $taxGroup["sub_tax_percentage"] ) ) > $taxPercentageLen ? strlen( trim( $taxGroup["sub_tax_percentage"] ) ) : $taxPercentageLen;
616 }
617
618 $taxPercentageLen += $separateBy;
619 $taxLen += $separateBy;
620 $taxBasisLen;
621
622 foreach( $tax as $taxGroup )
623 {
624 $currency->setValue( $taxGroup["basis"] );
625 $subTaxBasis = trim( preg_replace( $search, $replace, $locale->format( $currency ) ) );
626 $mailTemplate->set_var( "sub_tax_basis", str_pad( $subTaxBasis, $taxBasisLen, " ", STR_PAD_LEFT ) );
627
628 $mailTemplate->set_var( "sub_tax_percentage", str_pad( $taxGroup["percentage"], $taxPercentageLen, " ", STR_PAD_LEFT ) );
629
630 $currency->setValue( $taxGroup["tax"] );
631 $subTax = trim( preg_replace( $search, $replace, $locale->format( $currency ) ) );
632 $mailTemplate->set_var( "sub_tax", str_pad( $subTax, $taxLen, " ", STR_PAD_LEFT ) );
633
634 $mailTemplate->parse( "tax_item", "tax_item_tpl", true );
635 }
636
637
638 $mailTemplate->set_var( "intl-tax_basis", str_pad( trim( $mailTemplateIni->variable( "strings", "tax_basis" ) ), $taxBasisLen, " ", STR_PAD_RIGHT ) );;
639 $mailTemplate->set_var( "intl-tax_percentage", str_pad( trim( $mailTemplateIni->variable( "strings", "tax_percentage" ) ), $taxPercentageLen, " ", STR_PAD_LEFT ) );;
640 $mailTemplate->set_var( "intl-tax", str_pad( trim( $mailTemplateIni->variable( "strings", "tax" ) ), $taxLen, " ", STR_PAD_LEFT ) );;
641
642 $mailTemplate->set_var( "tax", str_pad( $taxValue, $taxBasisLen + $taxLen + $taxPercentageLen, " ", STR_PAD_LEFT ) );
643 $mailTemplate->set_var( "tax_hyphen_line", str_pad( "", $taxBasisLen + $taxLen + $taxPercentageLen, "-", STR_PAD_LEFT ) );
644 $mailTemplate->set_var( "tax_equal_line", str_pad( "", $taxBasisLen + $taxLen + $taxPercentageLen, "=", STR_PAD_LEFT ) );
645
646 $mailTemplate->parse( "tax_specification", "tax_specification_tpl" );
647 }
648
649 $mailBody = $mailTemplate->parse( "dummy", "full_cart_tpl" );
650 $subjectINI = new eZINI( "kernel/eztrade/user/intl/" . $this->Language . "/mailorder.php.ini", false );
651
652 $mailSubjectUser = $subjectINI->variable( "strings", "mail_subject_user" ) . " " . $this->SiteURL;
653 $mailSubject = $subjectINI->variable( "strings", "mail_subject_admin" ) . " " . $this->SiteURL;
654
655 $checkout = new eZCheckout();
656 $instance =& $checkout->instance();
657 $paymentMethod = $instance->paymentName( $order->paymentMethod() );
658
659 $mailTemplate->set_var( "payment_method", $paymentMethod );
660
661 $mailTemplate->set_var( "comment", $order->comment() );
662
663 $shippingType = $order->shippingType();
664 if (( $shippingType )&&($this->checkups!=1))
665 {
666 $mailTemplate->set_var( "shipping_type", $shippingType->name() );
667 }
668
669 if (( $shippingType )&&($this->checkups==1))
670 {
671 $getnames =array (
672
673 '01' => 'UPS Next Day Air',
674
675 '02' => 'UPS 2nd Day Air',
676
677 '03' => 'UPS Ground',
678
679 '07' => 'UPS Worldwide Express',
680
681 '08' => 'UPS Worldwide Expedited',
682
683 '11' => 'UPS Standard',
684
685 '12' => 'UPS 3 Day Select',
686
687 '13' => 'UPS Next Day Air Saver',
688
689 '14' => 'UPS Next Day Air Early A.M.',
690
691 '54' => 'UPS Worldwide Express Plus',
692
693 '59' => 'UPS 2nd Day Air A.M.',
694
695 '64' => '',
696
697 '65' => 'UPS Express Saver',
698
699 );
700 if (!$getnames["$shippingType"])
701 {
702 $service_name=$shippingType;
703 }
704 else
705 {
706 $service_name=$getnames["$shippingType"];
707 }
708
709
710 $mailTemplate->set_var( "shipping_type",$service_name);
711 }
712
713 $shippingCost = $order->shippingCharge();
714
715 $shippingVAT = $order->shippingVAT();
716
717 $currency->setValue( $shippingCost );
718
719 $mailTemplate->set_var( "shipping_cost", $locale->format( $currency ) );
720
721 $sum += $shippingCost;
722 $currency->setValue( $sum );
723 $mailTemplate->set_var( "order_sum", $locale->format( $currency ) );
724
725 $currency->setValue( $totalVAT + $shippingVAT );
726 $mailTemplate->set_var( "order_vat_sum", $locale->format( $currency ) );
727
728 $mailTemplate->set_var( "order_id", $order->id() );
729
730 $mailTemplate->set_var( "site_url", $ini->variable( "site", "SiteURL" ) );
731 // Send E-mail
732 $mail = new eZMail();
733
734 $mailBody = $mailTemplate->parse( "dummy", "order_sendt_tpl" );
735 $mail->setFrom( $this->OrderSenderEmail );
736
737 $mail->setTo( $orderUser->email() );
738 $mail->setSubject( $mailSubjectUser );
739 $mail->setBody( $mailBody );
740 $mail->send();
741
742 // admin email
743 // check to see if the email should be encrypted for the administrator
744 $mailEncrypt = $ini->variable( "eZTradeMain", "MailEncrypt" );
745
746 if ( $mailEncrypt == "GPG" )
747 {
748 // initialize GPG class
749 $wwwUser = $ini->variable( "eZTradeMain", "ApacheUser" );
750 $mailKeyname = $ini->variable( "eZTradeMain", "RecipientGPGKey" );
751 // At this point you can add any information to the template as needed
752 // remember to provide a variable in the template for it.
753 // add credit card info for the administrator
754 $mailTemplate->set_var( "payment_method", $paymentMethod );
755 $mailTemplate->set_var( "cc_number", $CCNumber );
756 $mailTemplate->set_var( "cc_expiremonth", $ExpireMonth );
757 $mailTemplate->set_var( "cc_expireyear", $ExpireYear );
758
759 $mailBody = $mailTemplate->parse( "dummy", "order_sendt_tpl" );
760 // encrypt mailBody
761 $mytext = new ezgpg( $mailBody, $mailKeyname, $wwwUser );
762 $mailBody=($mytext->body);
763 $mail->setBody( $mailBody );
764 }
765
766 $mail->setSubject( $mailSubject );
767 $mail->setTo( $this->OrderReceiverEmail );
768 $mail->setFrom( $orderUser->email() );
769
770 $mail->send();
771
772 return true;
773 }
774
775 function confirm( $sessionID )
776 {
777 $ret = true;
778 if ( isset( $sessionID ) && is_numeric( $sessionID ) )
779 {
780 $session = new eZSession( $sessionID );
781 $preOrderID = $session->variable( "PreOrderID" );
782
783 if ( !$session )
784 {
785 $ret = false;
786 }
787 }
788 else
789 {
790 $ret = false;
791 }
792
793
794 if ( $ret == true )
795 {
796 $OrderID = $this->OrderID;
797 $order = new eZOrder( $OrderID );
798
799 // get the payment method
800 $checkout = new eZCheckout();
801 $instance =& $checkout->instance();
802 $paymentMethod = $instance->paymentName( $order->paymentMethod() );
803
804 // get the cart or create it
805 $cart = new eZCart();
806 $cart = $cart->getBySession( $session );
807 $cart->cartTotals( $tax, $total );
808
809 foreach ( $cart->items() as $item )
810 {
811 // set the wishlist item to bought if the cart item is
812 // fetched from a wishlist
813 $wishListItem = $item->wishListItem();
814 if ( $wishListItem )
815 {
816 $wishListItem->setIsBought( true );
817 $wishListItem->store();
818 }
819 }
820
821 // Decrease product/option quantity
822 $items =& $cart->items();
823 foreach ( $items as $item )
824 {
825 $product =& $item->product();
826 $count = $item->count();
827 $quantity = $product->totalQuantity();
828 $values =& $item->optionValues();
829 $selected_values = array();
830 foreach ( $values as $value )
831 {
832 $option_value =& $value->optionValue();
833 $selected_values[] = $option_value->id();
834 }
835
836 $changed_quantity = false;
837 if ( !(is_bool( $quantity ) and !$quantity) )
838 {
839 $max_value = max( $quantity - $count, 0 );
840 $product->setTotalQuantity( $max_value );
841 if ( $max_value == 0 and $this->DiscontinueQuantityless )
842 $product->setDiscontinued( true );
843 $product->store();
844 $changed_quantity = true;
845 }
846 $options =& $product->options();
847 $change_discontinuity = false;
848 $max_max_value = 0;
849 $has_value = false;
850 foreach( $options as $option )
851 {
852 $option_values =& $option->values();
853 foreach( $option_values as $option_value )
854 {
855 if ( in_array( $option_value->id(), $selected_values ) )
856 {
857 $value_quantity = $option_value->totalQuantity();
858 if ( !(is_bool( $value_quantity ) and !$value_quantity) )
859 {
860 $max_value = max( $value_quantity - $count, 0 );
861 $max_max_value = max( $max_max_value, $max_value );
862 $option_value->setTotalQuantity( $max_value );
863 $option_value->store();
864 $changed_quantity = true;
865 }
866 }
867 $value_quantity = $option_value->totalQuantity();
868 if ( (is_bool( $value_quantity ) and !$value_quantity) or $value_quantity > 0 )
869 {
870 $has_value = true;
871 }
872 }
873 }
874 $productQuantity = $product->totalQuantity();
875 if ( ( $max_max_value == 0 and !$has_value and $this->DiscontinueQuantityless ) and !(is_bool( $productQuantity ) and !$productQuantity ) )
876 {
877 $product->setDiscontinued( true );
878 $product->store();
879 }
880 if ( $changed_quantity )
881 {
882 $this->deleteCache( $product, false, false, false );
883 }
884
885
886 for( $i=0; $i < $count; $i++ )
887 {
888 // Create vouchers
889 $voucherInfo =& $item->voucherInformation();
890 if ( $item->voucherInformation() )
891 {
892 $voucher = new eZVoucher( );
893 $voucher->generateKey();
894 $voucher->setAvailable( true );
895 $voucher->setUser( $orderUser );
896 $voucher->setPrice( $voucherInfo->price() );
897 $voucher->setTotalValue( $voucherInfo->price() );
898 $voucher->setProduct( $voucherInfo->product() );
899 $voucher->store();
900 $voucherInfo->setVoucher( $voucher );
901 $voucherInfo->store();
902 $voucherInfo->sendMail();
903 }
904 }
905 }
906
907 //
908 if ( is_file ( "kernel/eztrade/user/payment/postpayment.php" ) )
909 {
910 include( "kernel/eztrade/user/payment/postpayment.php" );
911 }
912
913
914 $preOrder = new eZPreOrder( $preOrderID );
915 $preOrder->setOrderID( $OrderID );
916 $preOrder->store();
917
918 $payedWith = $session->arrayValue( "PayedWith" );
919
920 if ( is_array ( $payedWith ) )
921 {
922 //while( list($voucherID,$price) = each( $payedWith ) )
923 foreach( $payedWith as $voucherID => $price )
924 {
925 $voucher = new eZVoucher( $voucherID );
926 $voucher->setPrice( $voucher->price() - $price );
927 if ( $voucher->price() <= 0 )
928 $voucher->setAvailable( false );
929
930 $voucher->store();
931
932 $voucherUsed = new eZVoucherUsed();
933 $voucherUsed->setVoucher( $voucher );
934 $voucherUsed->setPrice( $price );
935 $voucherUsed->setOrder( $order );
936 $voucherUsed->setUser( $orderUser );
937 $voucherUsed->store();
938
939 }
940 $session->setVariable( "PayedWith", "" );
941 $session->setVariable( "PayWithVoucher", "" );
942 }
943
944 $cart->delete();
945 $session->setVariable( "OrderCompletedID", $OrderID );
946
947 // call the payment script after the payment is successful.
948 // some systems needs this, e.g. to print out the OrderID which was cleared..
949 $Action = "PostPayment";
950 include( $instance->paymentFile( $paymentMethod ) );
951
952 // Turn of SSL and redirect to http://
953 $session->setVariable( "SSLMode", "" );
954 }
955 return $ret;
956 }
957
961 function setOrderID( $value )
962 {
963 $this->OrderID = $value;
964 }
965
969 function orderID()
970 {
971 return $this->OrderID;
972 }
973
974 function deleteCache( $ProductID, $CategoryID, $CategoryArray, $Hotdeal )
975 {
976 if ( is_a( $ProductID, "eZProduct" ) )
977 {
978 $CategoryID =& $ProductID->categoryDefinition( false );
979 $CategoryArray =& $ProductID->categories( false );
980 $Hotdeal = $ProductID->isHotDeal();
981 $ProductID = $ProductID->id();
982 }
983
984 $files = eZCacheFile::files( "kernel/eztrade/cache/", array( array( "productview", "productprint" ),
985 $ProductID, $CategoryID ),
986 "cache", "," );
987 foreach ( $files as $file )
988 {
989 $file->delete();
990 }
991 $files = eZCacheFile::files( "kernel/eztrade/cache/",
992 array( "productlist",
993 array_merge( $CategoryID, $CategoryArray ) ),
994 "cache", "," );
995 foreach ( $files as $file )
996 {
997 $file->delete();
998 }
999
1000 if ( $Hotdeal )
1001 {
1002 $files = eZCacheFile::files( "kernel/eztrade/cache/", array( "hotdealslist", NULL ),
1003 "cache", "," );
1004 foreach ( $files as $file )
1005 {
1006 $file->delete();
1007 }
1008 }
1009 }
1010
1011
1012 var $OrderID;
1013
1014 var $Language;
1015 var $OrderSenderEmail;
1016 var $OrderReceiverEmail;
1017 var $PricesIncludeVAT;
1018 var $EmailShowExTaxColumn;
1019 var $EmailShowIncTaxColumn;
1020 var $DiscontinueQuantityless;
1021 var $SiteURL;
1022
1023 var $IndexFile;
1024
1025 }
1026
1027 ?>
$locale
$locale
Definition: admin/adlist.php:127
$i
$i
Definition: admin/adlist.php:91
$CategoryID
$CategoryID
Definition: admin/articleedit.php:53
$session
$session
Definition: admin/articlelist.php:44
$shippingCost
foreach( $items as $item) $shippingCost
Definition: admin/orderview.php:267
$items
$items
Definition: admin/orderview.php:211
$files
$files
Definition: articlepreview.php:91
$cart
$cart
Definition: buy.php:27
$ShowCart
$ShowCart
Definition: cart.php:72
$ShowSavingsColumn
$ShowSavingsColumn
Definition: cart.php:73
$total
else $total["inctax"]
Definition: checkout.php:1359
$shippingAddress
$shippingAddress
Definition: checkout.php:615
eZCart
Definition: ezcart.php:71
eZCheckout
Definition: ezcheckout.php:48
eZCompany
Definition: ezcompany.php:54
eZCurrency
Definition: ezcurrency.php:46
eZINI
Reads and writes .ini style configuration files.
eZLocale
Definition: ezlocale.php:119
eZMail
Definition: ezmail.php:57
eZOrderConfirmation
Definition: ezorderconfirmation.php:68
eZOrderConfirmation\orderID
orderID()
Definition: ezorderconfirmation.php:969
eZOrderConfirmation\sendMail
sendMail( $sessionID)
Definition: ezorderconfirmation.php:113
eZOrderConfirmation\$PricesIncludeVAT
$PricesIncludeVAT
Definition: ezorderconfirmation.php:1017
eZOrderConfirmation\__construct
__construct( $id="")
Definition: ezorderconfirmation.php:69
eZOrderConfirmation\setOrderID
setOrderID( $value)
Definition: ezorderconfirmation.php:961
eZOrderConfirmation\$OrderSenderEmail
$OrderSenderEmail
Definition: ezorderconfirmation.php:1015
eZOrderConfirmation\deleteCache
deleteCache( $ProductID, $CategoryID, $CategoryArray, $Hotdeal)
Definition: ezorderconfirmation.php:974
eZOrderConfirmation\$DiscontinueQuantityless
$DiscontinueQuantityless
Definition: ezorderconfirmation.php:1020
eZOrderConfirmation\confirm
confirm( $sessionID)
Definition: ezorderconfirmation.php:775
eZOrderConfirmation\$IndexFile
$IndexFile
Definition: ezorderconfirmation.php:1023
eZOrderConfirmation\confirmOrder
confirmOrder( $sessionID)
Definition: ezorderconfirmation.php:90
eZOrderConfirmation\$Language
$Language
Definition: ezorderconfirmation.php:1014
eZOrderConfirmation\$OrderReceiverEmail
$OrderReceiverEmail
Definition: ezorderconfirmation.php:1016
eZOrderConfirmation\$SiteURL
$SiteURL
Definition: ezorderconfirmation.php:1021
eZOrderConfirmation\$OrderID
$OrderID
Definition: ezorderconfirmation.php:1012
eZOrderConfirmation\$EmailShowIncTaxColumn
$EmailShowIncTaxColumn
Definition: ezorderconfirmation.php:1019
eZOrderConfirmation\$EmailShowExTaxColumn
$EmailShowExTaxColumn
Definition: ezorderconfirmation.php:1018
eZOrder
Definition: ezorder.php:52
eZPerson
Definition: ezperson.php:43
eZPreOrder
Definition: ezpreorder.php:44
eZSession
Definition: lib/ezsession/classes/ezsession.php:65
eZTemplate
Definition: eztemplate.php:107
eZVoucherUsed
Definition: ezvoucherused.php:49
eZVoucher
Definition: ezvoucher.php:54
$ini
$ini
Definition: classes/admin/linklist.php:64
$item
$item
Definition: classes/admin/linklist.php:228
$Action
$Action
Definition: companysearch.php:80
$id
$id
Definition: companytypelist.php:193
$currency
$currency
Definition: companyview.php:529
$orderID
$orderID
Definition: confirmation.php:34
$customer
$customer
Definition: customerview.php:72
$search
$search
Definition: export_froogle.php:153
$replace
$replace
Definition: export_froogle.php:140
$mail
$mail
Definition: ezbulkmail/admin/maillist.php:61
$file
$file
Definition: ezfilemanager/user/filedownload.php:35
$ret
$ret
Definition: ezsitemanager/admin/filelist.php:88
$sum
$sum
Definition: fileinfo.php:26
$values
$values
Definition: fixedvalues.php:103
$product
$product
Definition: homepage.php:202
$count
$count
Definition: onlinetypelist.php:108
$options
$options
Definition: optionlist.php:56
$numberOfItems
$numberOfItems
Definition: orderedit.php:382
$shippingType
$shippingType
Definition: orderedit.php:672
$totalVAT
$totalVAT
Definition: orderedit.php:344
$paymentMethod
$paymentMethod
Definition: orderedit.php:668
$instance
$instance
Definition: orderedit.php:667
$checkout
foreach( $historyArray as $status) $checkout
Definition: orderedit.php:666
$shippingVAT
$shippingVAT
Definition: ordersendt.php:755
$country
$country
Definition: paypal.php:46
$billingAddress
$billingAddress
Definition: paypal.php:44
$region
$region
Definition: paypal.php:45
$price
$price
Definition: pricegroupedit.php:39
$order
$order
Definition: productreport.php:182
$headers
$headers
Definition: requestpagelist.php:61
Copyright © 1998 – 2026 7x. All rights reserved. Licensed under the GNU GPLv2+.