PageRenderTime 60ms CodeModel.GetById 18ms RepoModel.GetById 1ms app.codeStats 1ms

/application/views/pages/admin/orders.php

https://bitbucket.org/chadsaun/ifrogz-panel
PHP | 3632 lines | 3378 code | 93 blank | 161 comment | 598 complexity | 5d53a8d440d44d051d9c45bcfbb6f31a MD5 | raw file

Large files files are truncated, but you can click here to view the full file

  1. <?php
  2. include('init.php');
  3. if (strstr($_SERVER['HTTP_HOST'], ':8888')) {
  4. include_once('kohanabase/kohana.php');
  5. } else {
  6. include_once(IFZROOT.'kohana.php');
  7. }
  8. if ($_POST["return_status_search"]=="")$_SESSION["return_status_search"]="";
  9. else if ($_POST["return_status_search"]!="")$_SESSION["return_status_search"]=$_POST["return_status_search"];
  10. //showarray($_POST);
  11. //$_SESSION['counter']=0;
  12. //$_SESSION['counter_id']=0;
  13. //This code is copyright (c) Internet Business Solutions SL, all rights reserved.
  14. //The contents of this file are protect under law as the intellectual property of Internet
  15. //Business Solutions SL. Any use, reproduction, disclosure or copying of any kind
  16. //without the express and written permission of Internet Business Solutions SL is forbidden.
  17. //Author: Vince Reid, vince@virtualred.net
  18. include(APPPATH.'views/pages/admin/cartmisc.php');
  19. //session_register('order_id_commas');
  20. $lisuccess=0;
  21. if(@$dateadjust=="") $dateadjust=0;
  22. if(@$dateformatstr == "") $dateformatstr = "m/d/Y";
  23. $admindatestr="Y-m-d";
  24. if(@$admindateformat=="") $admindateformat=0;
  25. if($admindateformat==1)
  26. $admindatestr="m/d/Y";
  27. elseif($admindateformat==2)
  28. $admindatestr="d/m/Y";
  29. if(@$storesessionvalue=="") $storesessionvalue="virtualstore".time();
  30. if(@$_GET["doedit"]=="true") $doedit=TRUE; else $doedit=FALSE;
  31. function editfunc($data,$col,$size){
  32. global $doedit;
  33. if($doedit) return('<input type="text" id="' . $col . '" name="' . $col . '" value="' . str_replace('"','&quot;',$data) . '" size="' . $size . '">'); else return($data);
  34. }
  35. function editnumeric($data,$col,$size){
  36. global $doedit;
  37. if($doedit) return('<input type="text" id="' . $col . '" name="' . $col . '" value="' . number_format($data,2,'.','') . '" size="' . $size . '">'); else return(FormatEuroCurrency($data));
  38. }
  39. if(@$_SESSION["loggedon"] != $storesessionvalue && trim(@$_COOKIE["WRITECKL"])!=""){
  40. $config_admin = RBI_Kohana::config('database.default_admin.connection');
  41. $db_admin = mysql_connect($config['hostname'], $config['username'], $config['password']);
  42. mysql_select_db($config['database']) or die ('DB Admin connection failed.</td></tr></table></body></html>');
  43. $rbiSQL = 'SELECT *
  44. FROM employee
  45. WHERE username="'.mysql_real_escape_string(unstripslashes(trim(@$_COOKIE["WRITECKL"]))).'" and password="'.mysql_real_escape_string(unstripslashes(trim(@$_COOKIE["WRITECKP"]))).'"';
  46. $rs_rbi = mysql_query($rbiSQL, $db_admin);
  47. if(mysql_num_rows($rs_rbi) > 0) {
  48. @$_SESSION["loggedon"] = $storesessionvalue;
  49. }else{
  50. $lisuccess=2;
  51. }
  52. mysql_free_result($rs_rbi);
  53. include(APPPATH.'views/partials/admin/dbconnection.php');
  54. }
  55. if(($_SESSION["loggedon"] != $storesessionvalue && $lisuccess!=2) || @$disallowlogin==TRUE) exit;
  56. if(@$htmlemails==TRUE) $emlNl = "<br />"; else $emlNl="\n";
  57. //old release_stock function was here
  58. if($lisuccess==2){
  59. ?>
  60. <table border="0" cellspacing="0" cellpadding="0" width="100%" bgcolor="" align="center">
  61. <tr>
  62. <td width="100%">
  63. <table width="100%" border="0" cellspacing="0" cellpadding="2" bgcolor="">
  64. <tr>
  65. <td width="100%" colspan="4" align="center"><p>&nbsp;</p><p>&nbsp;</p>
  66. <p><strong><?php print $yyOpFai?></strong></p><p>&nbsp;</p>
  67. <p><?php print $yyCorCoo?> <?php print $yyCorLI?> <a href="/admin/login.php"><?php print $yyClkHer?></a>.</p>
  68. </td>
  69. </tr>
  70. </table>
  71. </td>
  72. </tr>
  73. </table>
  74. <?php
  75. }else{
  76. $success=true;
  77. $alreadygotadmin = getadminsettings();
  78. if(@$_POST["updatestatus"]=="1"){
  79. // updates returns and adds to history
  80. $result_r=mysql_query("SELECT ordReturnID FROM orders WHERE ordID=".$_POST["orderid"]);
  81. $row_r=mysql_fetch_assoc($result_r);
  82. //echo $row_r["ordReturnID"]."=".$_POST["return_status"];
  83. //exit;
  84. if($row_r["ordReturnID"]!=$_POST["return_status"] && $_POST["return_status"]>0 ){
  85. $sql_return_history="INSERT INTO order_returns_history (ordID,reasonID,returnID,date_added)
  86. VALUES(".$_POST["orderid"].",".$_POST["return_reason"].",".$_POST["return_status"].",'".date('Y-m-d H:i:s')."')";
  87. //echo $sql_return_history;
  88. //exit;
  89. mysql_query($sql_return_history);
  90. }
  91. // end
  92. mysql_query("UPDATE orders SET ordStatusInfo='" . mysql_real_escape_string(unstripslashes(trim(@$_POST["ordStatusInfo"]))) ."', ordSupportInfo='" . mysql_real_escape_string(unstripslashes(trim(@$_POST["ordSupportInfo"]))) . "' , ordReturnID='" . trim(@$_POST["return_status"]) . "' WHERE ordID=" . @$_POST["orderid"]) or print(mysql_error());
  93. }elseif(@$_GET["id"] != ""){
  94. // Commented out below code because we put this into a cron job
  95. /*if(@$_POST["delccdets"] != ""){
  96. mysql_query("UPDATE orders SET ordCNum='' WHERE ordID=" . @$_GET["id"]);
  97. }*/
  98. $sSQL = "SELECT c.cartProdID,c.cartProdName,c.cartProdPrice,c.cartQuantity,c.cartID,p.pDownload,p.p_iscert,d.dsName,pInStock,pSell,c.cartReason,c.cartNote FROM cart c, products p LEFT JOIN dropshipper d ON p.pDropship=d.dsID WHERE c.cartProdID=p.pID AND c.cartOrderID=" . $_GET["id"];
  99. $allorders = mysql_query($sSQL) or print(mysql_error().$sSQL);
  100. }else{
  101. // Delete old uncompleted orders.
  102. // Commented out below code because we put this into a daily cron job (delcc.php)
  103. /*if($delccafter != 0){
  104. $sSQL = "UPDATE orders SET ordCNum='' WHERE ordDate<'" . date("Y-m-d H:i:s", time()-($delccafter*60*60*24)) . "'";
  105. mysql_query($sSQL) or print(mysql_error().$sSQL);
  106. }*/
  107. /*if($delAfter != 0){
  108. $sSQL = "SELECT cartOrderID,cartID FROM cart WHERE cartCompleted=0 AND cartDateAdded<'" . date("Y-m-d H:i:s", time()-($delAfter*60*60*24)) . "'";
  109. $result = mysql_query($sSQL) or print(mysql_error().$sSQL);
  110. if(mysql_num_rows($result)>0){
  111. $delStr="";
  112. $delOptions="";
  113. $addcomma = "";
  114. while($rs = mysql_fetch_assoc($result)){
  115. $delStr .= $addcomma . $rs["cartOrderID"];
  116. $delOptions .= $addcomma . $rs["cartID"];
  117. $addcomma = ",";
  118. }
  119. mysql_query("DELETE FROM orders WHERE ordID IN (" . $delStr . ")") or print(mysql_error());
  120. mysql_query("DELETE FROM cartoptions WHERE coCartID IN (" . $delOptions . ")") or print(mysql_error());
  121. mysql_query("DELETE FROM cart WHERE cartID IN (" . $delOptions . ")") or print(mysql_error());
  122. }
  123. mysql_free_result($result);
  124. }else{
  125. $sSQL = "SELECT cartOrderID,cartID FROM cart WHERE cartCompleted=0 AND cartOrderID=0 AND cartDateAdded<'" . date("Y-m-d H:i:s", time()-(3*60*60*24)) . "'";
  126. $result = mysql_query($sSQL) or print(mysql_error().$sSQL);
  127. if(mysql_num_rows($result)>0){
  128. $delStr="";
  129. $delOptions="";
  130. $addcomma = "";
  131. while($rs = mysql_fetch_assoc($result)){
  132. $delStr .= $addcomma . $rs["cartOrderID"];
  133. $delOptions .= $addcomma . $rs["cartID"];
  134. $addcomma = ",";
  135. }
  136. mysql_query("DELETE FROM cartoptions WHERE coCartID IN (" . $delOptions . ")") or print(mysql_error());
  137. mysql_query("DELETE FROM cart WHERE cartID IN (" . $delOptions . ")") or print(mysql_error());
  138. }
  139. mysql_free_result($result);
  140. }*/
  141. $numstatus=0;
  142. $sSQL = "SELECT statID,statPrivate FROM orderstatus WHERE statPrivate<>'' ORDER BY statID";
  143. $result = mysql_query($sSQL) or print(mysql_error().$sSQL);
  144. while($rs = mysql_fetch_assoc($result)){
  145. $allstatus[$numstatus++]=$rs;
  146. }
  147. mysql_free_result($result);
  148. }
  149. if(@$_POST["updatestatus"]=="1"){
  150. ?>
  151. <script language="JavaScript" type="text/javascript">
  152. <!--
  153. setTimeout("history.go(-2);",1100);
  154. // -->
  155. </script>
  156. <table border="0" cellspacing="0" cellpadding="0" width="100%" bgcolor="" align="center">
  157. <tr>
  158. <td width="100%">
  159. <table width="100%" border="0" cellspacing="0" cellpadding="2" bgcolor="">
  160. <tr>
  161. <td width="100%" colspan="4" align="center"><br /><strong><?php print $yyUpdSuc?></strong><br /><br /><?php print $yyNowFrd?><br /><br />
  162. <?php print $yyNoAuto?> <a href="javascript:history.go(-2)"><strong><?php print $yyClkHer?></strong></a>.<br /><br />
  163. <img src="/lib/images/misc/clearpixel.gif" width="300" height="3" alt="" /></td>
  164. </tr>
  165. </table>
  166. </td>
  167. </tr>
  168. </table>
  169. <?php
  170. }elseif(!empty($_POST["getdownload"])){
  171. $sql_down="SELECT * FROM digitaldownloads WHERE type='".$_POST['downloadtype']."' AND active=1 AND orderID=0 LIMIT ".$_POST['downQty'];
  172. $result_down=mysql_query($sql_down);
  173. $num_rows_download=mysql_num_rows($result_down);
  174. if($num_rows_download>0){
  175. $error=FALSE;
  176. while($row_download=mysql_fetch_assoc($result_down)){
  177. $sql_update="UPDATE digitaldownloads SET active=0, orderID=".$_POST['downOrder']." WHERE id=".$row_download['id'];
  178. $result_update=mysql_query($sql_update);
  179. if(!$result_update) $error=TRUE;
  180. }
  181. if(!$error) $pg_msg= 'Update Successful.';
  182. else $pg_msg= 'Update Unsuccessful.';
  183. } else $pg_msg= 'NO License and Password Available.';
  184. $auto_link = "/admin/orders.php?id=".$_POST['downOrder']."&doedit=true";
  185. if(!$clone_error) {
  186. }else{
  187. $auto_link = "/admin/orders.php";
  188. }
  189. ?>
  190. <script language="JavaScript" type="text/javascript">
  191. <!--
  192. setTimeout("window.location='/admin/orders.php?id=<?=$_POST['downOrder']?>&doedit=true'",4000);
  193. // -->
  194. </script>
  195. <table border="0" cellspacing="0" cellpadding="0" width="100%" bgcolor="" align="center">
  196. <tr>
  197. <td width="100%">
  198. <table width="100%" border="0" cellspacing="0" cellpadding="2" bgcolor="">
  199. <tr>
  200. <td width="100%" colspan="4" align="center"><br /><strong><?=$pg_msg?></strong><br /><br />You will now be forwarded to view the order.<br /><br />
  201. <?php print $yyNoAuto?> <a href="<?=$auto_link?>"><strong><?php print $yyClkHer?></strong></a>.<br /><br />
  202. <img src="/lib/images/misc/clearpixel.gif" width="300" height="3" alt="" /></td>
  203. </tr>
  204. </table>
  205. </td>
  206. </tr>
  207. </table>
  208. <? }elseif(!empty($_POST["giftcert"])){
  209. $giftcertOrderID=$_POST["giftcertOrderID"];
  210. $_SESSION['cert_prod']=$_POST["cert_prod"];
  211. create_certificate($giftcertOrderID);
  212. $auto_link = "/admin/orders.php?id=".$giftcertOrderID."&doedit=true";
  213. $pg_msg='Update Successful.';
  214. ?>
  215. <script language="JavaScript" type="text/javascript">
  216. <!--
  217. setTimeout("window.location='/admin/orders.php?id=<?=$giftcertOrderID?>&doedit=true'",4000);
  218. // -->
  219. </script>
  220. <table border="0" cellspacing="0" cellpadding="0" width="100%" bgcolor="" align="center">
  221. <tr>
  222. <td width="100%">
  223. <table width="100%" border="0" cellspacing="0" cellpadding="2" bgcolor="">
  224. <tr>
  225. <td width="100%" colspan="4" align="center"><br /><strong><?=$pg_msg?></strong><br /><br />You will now be forwarded to view the order.<br /><br />
  226. <?php print $yyNoAuto?> <a href="<?=$auto_link?>"><strong><?php print $yyClkHer?></strong></a>.<br /><br />
  227. <img src="/lib/images/misc/clearpixel.gif" width="300" height="3" alt="" /></td>
  228. </tr>
  229. </table>
  230. </td>
  231. </tr>
  232. </table>
  233. <? }elseif(@$_POST["doedit"] == "true"){
  234. if(!empty($_POST['clone'])) {
  235. // update old order status after editing
  236. $ordstatusnew=$_POST["ordstatusnew"];
  237. $ordStatusInfo=mysql_real_escape_string(trim(unstripslashes($_POST["ordStatusInfo"])));
  238. $ordSupportInfo=mysql_real_escape_string(trim(unstripslashes($_POST["ordSupportInfo"])));
  239. $sql_status_update="UPDATE orders SET ordStatus=".$ordstatusnew.",ordStatusInfo='".$ordStatusInfo."',ordSupportInfo='".$ordSupportInfo."' WHERE ordID=".$_POST["orderid"];
  240. mysql_query($sql_status_update) or print(mysql_error().$sql_status_update);
  241. if(!setNewLocation( $ordstatusnew , $_POST["orderid"],'Manual' )) print("Unable to record status change.");
  242. // stock manage
  243. if($ordstatusnew>=3 && $ordstatusnew!=10 && $ordstatusnew!=17) {
  244. mysql_query("UPDATE cart SET cartCompleted=0 WHERE cartOrderID=" . $_POST["orderid"]) or print(mysql_error());
  245. do_stock_management($_POST["orderid"]);
  246. mysql_query("UPDATE cart SET cartCompleted=1 WHERE cartOrderID=" . $_POST["orderid"]) or print(mysql_error());
  247. }
  248. // GET ALL THE INFORMATION TO CLONE THE ORDER
  249. // - To clone an order we need to duplicate the order's information in the orders, cart, and cartoptions tables
  250. $aNewOrder = array();
  251. $sql_orders = "SELECT * FROM orders WHERE ordID = " . $_POST["orderid"] ;
  252. $res_orders = mysql_query($sql_orders) or print(mysql_error().$sql_orders);
  253. $row_orders = mysql_fetch_assoc($res_orders);
  254. $aNewOrder["orders"] = $row_orders;
  255. $aNewOrder["orders"]["ordName"]=mysql_real_escape_string($row_orders["ordName"]);
  256. $aNewOrder["orders"]["ordShipName"]=mysql_real_escape_string($row_orders["ordShipName"]);
  257. if ($row_orders["ordShipCountry"] != "") {
  258. if ($row_orders["ordShipCountry"] == "United States of America") $aNewOrder["orders"]["ordShipType"]='Standard';
  259. } else {
  260. if ($row_orders["ordCountry"] == "United States of America") $aNewOrder["orders"]["ordShipType"]='Standard';
  261. }
  262. $sql_cart = "SELECT * FROM cart c LEFT JOIN cartoptions co ON c.cartID = co.coCartID
  263. WHERE c.cartOrderID = " . $_POST["orderid"] . "
  264. ORDER BY c.cartID, c.cartProdID";
  265. //echo $sql_cart; exit;
  266. $res_cart = mysql_query($sql_cart) or print(mysql_error().$sql_cart);
  267. $prod_id = '';
  268. $i=0;
  269. $j=0;
  270. $isfirst = true;
  271. while($row_cart = mysql_fetch_assoc($res_cart)) {
  272. if($isfirst) {
  273. $prod_id = $row_cart["cartProdID"];
  274. }
  275. if(($prod_id != $row_cart["cartProdID"]) && !$isfirst) {
  276. $i++;
  277. $j=0;
  278. $prod_id = $row_cart["cartProdID"];
  279. $aNewOrder["cart"][$i]["cartID"] = $row_cart["cartID"];
  280. $aNewOrder["cart"][$i]["cartSessionID"] = $row_cart["cartSessionID"];
  281. $aNewOrder["cart"][$i]["cartProdID"] = $row_cart["cartProdID"];
  282. $aNewOrder["cart"][$i]["cartProdName"] = $row_cart["cartProdName"];
  283. $aNewOrder["cart"][$i]["cartProdPrice"] = $row_cart["cartProdPrice"];
  284. $aNewOrder["cart"][$i]["cartDateAdded"] = $row_cart["cartDateAdded"];
  285. $aNewOrder["cart"][$i]["cartQuantity"] = $row_cart["cartQuantity"];
  286. $aNewOrder["cart"][$i]["cartOrderID"] = $row_cart["cartOrderID"];
  287. $aNewOrder["cart"][$i]["cartCompleted"] = $row_cart["cartCompleted"];
  288. $aNewOrder["cart"][$i]["cartCustID"] = $row_cart["cartCustID"];
  289. if(!empty($row_cart["coID"])){
  290. $aNewOrder["cart"][$i]["cartoptions"][$j]["coID"] = $row_cart["coID"];
  291. $aNewOrder["cart"][$i]["cartoptions"][$j]["coCartID"] = $row_cart["coCartID"];
  292. $aNewOrder["cart"][$i]["cartoptions"][$j]["coOptID"] = $row_cart["coOptID"];
  293. $aNewOrder["cart"][$i]["cartoptions"][$j]["coOptGroup"] = $row_cart["coOptGroup"];
  294. $aNewOrder["cart"][$i]["cartoptions"][$j]["coCartOption"] = $row_cart["coCartOption"];
  295. $aNewOrder["cart"][$i]["cartoptions"][$j]["coPriceDiff"] = $row_cart["coPriceDiff"];
  296. $aNewOrder["cart"][$i]["cartoptions"][$j]["coWeightDiff"] = $row_cart["coWeightDiff"];
  297. $aNewOrder["cart"][$i]["cartoptions"][$j]["coExtendShipping"] = $row_cart["coExtendShipping"];
  298. $j++;
  299. }
  300. }else{
  301. $aNewOrder["cart"][$i]["cartID"] = $row_cart["cartID"];
  302. $aNewOrder["cart"][$i]["cartSessionID"] = $row_cart["cartSessionID"];
  303. $aNewOrder["cart"][$i]["cartProdID"] = $row_cart["cartProdID"];
  304. $aNewOrder["cart"][$i]["cartProdName"] = $row_cart["cartProdName"];
  305. $aNewOrder["cart"][$i]["cartProdPrice"] = $row_cart["cartProdPrice"];
  306. $aNewOrder["cart"][$i]["cartDateAdded"] = $row_cart["cartDateAdded"];
  307. $aNewOrder["cart"][$i]["cartQuantity"] = $row_cart["cartQuantity"];
  308. $aNewOrder["cart"][$i]["cartOrderID"] = $row_cart["cartOrderID"];
  309. $aNewOrder["cart"][$i]["cartCompleted"] = $row_cart["cartCompleted"];
  310. $aNewOrder["cart"][$i]["cartCustID"] = $row_cart["cartCustID"];
  311. if(!empty($row_cart["coID"])){
  312. $aNewOrder["cart"][$i]["cartoptions"][$j]["coID"] = $row_cart["coID"];
  313. $aNewOrder["cart"][$i]["cartoptions"][$j]["coCartID"] = $row_cart["coCartID"];
  314. $aNewOrder["cart"][$i]["cartoptions"][$j]["coOptID"] = $row_cart["coOptID"];
  315. $aNewOrder["cart"][$i]["cartoptions"][$j]["coOptGroup"] = $row_cart["coOptGroup"];
  316. $aNewOrder["cart"][$i]["cartoptions"][$j]["coCartOption"] = $row_cart["coCartOption"];
  317. $aNewOrder["cart"][$i]["cartoptions"][$j]["coPriceDiff"] = $row_cart["coPriceDiff"];
  318. $aNewOrder["cart"][$i]["cartoptions"][$j]["coWeightDiff"] = $row_cart["coWeightDiff"];
  319. $aNewOrder["cart"][$i]["cartoptions"][$j]["coExtendShipping"] = $row_cart["coExtendShipping"];
  320. $j++;
  321. }
  322. }
  323. $isfirst = false;
  324. }
  325. //showarray($aNewOrder); exit;
  326. // UPDATE SOME OF THE INFORMATION FOR THE CLONED ORDER
  327. $aNewOrder["orders"]["ordID"] = '';
  328. $aNewOrder["orders"]["ordSessionID"] = session_id();
  329. $aNewOrder["orders"]["ordAuthNumber"] = 'CLONED';
  330. $aNewOrder["orders"]["ordTransID"] = 0;
  331. $aNewOrder["orders"]["ordShipping"] = 0;
  332. $aNewOrder["orders"]["ordStateTax"] = 0;
  333. $aNewOrder["orders"]["ordCountryTax"] = 0;
  334. $aNewOrder["orders"]["ordHSTTax"] = 0;
  335. $aNewOrder["orders"]["ordHandling"] = 0;
  336. $aNewOrder["orders"]["ordTotal"] = 0;
  337. $aNewOrder["orders"]["ordDate"] = date("Y-m-d H:i:s");
  338. $aNewOrder["orders"]["ordIP"] = $_SERVER['REMOTE_ADDR'];
  339. $aNewOrder["orders"]["ordDiscount"] = 0;
  340. $aNewOrder["orders"]["ordDiscountText"] = '';
  341. $aNewOrder["orders"]["ordStatus"] = 2;
  342. $aNewOrder["orders"]["ordStatusDate"] = date("Y-m-d H:i:s");
  343. $aNewOrder["orders"]["ordStatusInfo"] = '';
  344. $aNewOrder["orders"]["ordSupportInfo"] = '';
  345. $aNewOrder["orders"]["order_changed"] = 'no';
  346. for($i=0; $i<count($aNewOrder["cart"]); $i++) {
  347. $aNewOrder["cart"][$i]["cartSessionID"] = session_id();
  348. $aNewOrder["cart"][$i]["cartDateAdded"] = date("Y-m-d H:i:s");
  349. }
  350. //showarray($aNewOrder); exit;
  351. // CREATE CLONED ORDER
  352. $clone_error = false;
  353. $sql_cr_ord = "INSERT INTO orders ( ordSessionID , ordName , ordAddress , ordAddress2 , ordCity , ordState ,
  354. ordZip , ordCountry , ordEmail , ordPhone , ordShipName , ordShipAddress ,
  355. ordShipAddress2 , ordShipCity , ordShipState , ordShipZip , ordShipCountry ,
  356. ordAuthNumber , ordAffiliate , ordPayProvider , ordTransID , ordShipping ,
  357. ordStateTax , ordCountryTax , ordHSTTax , ordHandling , ordShipType , ordTotal ,
  358. ordDate , ordIP , ordDiscount , ordDiscountText , ordExtra1 , ordExtra2 , ordAddInfo ,
  359. ordCNum , ordComLoc , ordStatus , ordStatusDate , ordStatusInfo , ordPoApo ,
  360. ordShipPoApo , ordHowFound , ordSupportInfo , order_changed , ordPmtMessage ,
  361. ordCCType , ord_cert_id , ord_cert_amt , ordExtra3 , ordExtra4 , ordExtra5 , ordEID ,
  362. ordEOrderID )
  363. VALUES ( '".$aNewOrder["orders"]["ordSessionID"]."' ,
  364. '".$aNewOrder["orders"]["ordName"]."' , '".mysql_real_escape_string($aNewOrder["orders"]["ordAddress"])."' ,
  365. '".mysql_real_escape_string($aNewOrder["orders"]["ordAddress2"])."' , '".$aNewOrder["orders"]["ordCity"]."' ,
  366. '".mysql_real_escape_string($aNewOrder["orders"]["ordState"])."' , '".$aNewOrder["orders"]["ordZip"]."' ,
  367. '".$aNewOrder["orders"]["ordCountry"]."' , '".$aNewOrder["orders"]["ordEmail"]."' ,
  368. '".$aNewOrder["orders"]["ordPhone"]."' , '".$aNewOrder["orders"]["ordShipName"]."' ,
  369. '".mysql_real_escape_string($aNewOrder["orders"]["ordShipAddress"])."' , '".mysql_real_escape_string($aNewOrder["orders"]["ordShipAddress2"])."' ,
  370. '".mysql_real_escape_string($aNewOrder["orders"]["ordShipCity"])."' , '".mysql_real_escape_string($aNewOrder["orders"]["ordShipState"])."' ,
  371. '".$aNewOrder["orders"]["ordShipZip"]."' , '".$aNewOrder["orders"]["ordShipCountry"]."' ,
  372. '".$aNewOrder["orders"]["ordAuthNumber"]."' , '".$aNewOrder["orders"]["ordAffiliate"]."' ,
  373. '".$aNewOrder["orders"]["ordPayProvider"]."' , '".$aNewOrder["orders"]["ordTransID"]."' ,
  374. '".$aNewOrder["orders"]["ordShipping"]."' , '".$aNewOrder["orders"]["ordStateTax"]."' ,
  375. '".$aNewOrder["orders"]["ordCountryTax"]."' , '".$aNewOrder["orders"]["ordHSTTax"]."' ,
  376. '".$aNewOrder["orders"]["ordHandling"]."' , '".$aNewOrder["orders"]["ordShipType"]."' ,
  377. '".$aNewOrder["orders"]["ordTotal"]."' , '".$aNewOrder["orders"]["ordDate"]."' ,
  378. '".$aNewOrder["orders"]["ordIP"]."' , '".$aNewOrder["orders"]["ordDiscount"]."' ,
  379. '".$aNewOrder["orders"]["ordDiscountText"]."' , '".$aNewOrder["orders"]["ordExtra1"]."' ,
  380. '".$aNewOrder["orders"]["ordExtra2"]."' , '".mysql_real_escape_string($aNewOrder["orders"]["ordAddInfo"])."' ,
  381. '".$aNewOrder["orders"]["ordCNum"]."' , '".$aNewOrder["orders"]["ordComLoc"]."' ,
  382. '".$aNewOrder["orders"]["ordStatus"]."' , '".$aNewOrder["orders"]["ordStatusDate"]."' ,
  383. '".mysql_real_escape_string($aNewOrder["orders"]["ordStatusInfo"])."' , '".$aNewOrder["orders"]["ordPoApo"]."' ,
  384. '".$aNewOrder["orders"]["ordShipPoApo"]."' , '".$aNewOrder["orders"]["ordHowFound"]."' ,
  385. '".mysql_real_escape_string($aNewOrder["orders"]["ordSupportInfo"])."' , '".$aNewOrder["orders"]["order_changed"]."' ,
  386. '".$aNewOrder["orders"]["ordPmtMessage"]."' , '".$aNewOrder["orders"]["ordCCType"]."' ,
  387. '".$aNewOrder["orders"]["ord_cert_id"]."' , '".$aNewOrder["orders"]["ord_cert_amt"]."' ,
  388. '".$aNewOrder["orders"]["ordExtra3"]."' , '".$aNewOrder["orders"]["ordExtra4"]."' ,
  389. '".$aNewOrder["orders"]["ordExtra5"]."' , '".$aNewOrder["orders"]["ordEID"]."' ,
  390. '".$aNewOrder["orders"]["ordEOrderID"]."' )";
  391. //echo $sql_cr_ord; //exit;
  392. $res_cr_ord = mysql_query($sql_cr_ord);
  393. if(!$res_cr_ord) {
  394. print(mysql_error().$sql_cr_ord);
  395. $clone_error = true;
  396. }
  397. $ordID = mysql_insert_id();
  398. $aNewOrder["orders"]["ordID"] = $ordID;
  399. //showarray($aNewOrder);
  400. if(!$clone_error) {
  401. for($i=0; $i<count($aNewOrder["cart"]); $i++) {
  402. $aNewOrder["cart"][$i]["cartOrderID"] = $ordID;
  403. $sql_cr_cart = "INSERT INTO cart ( cartSessionID , cartProdID , cartProdName , cartProdPrice , cartDateAdded ,
  404. cartQuantity , cartOrderID , cartCompleted )
  405. VALUES ( '".session_id()."' , '".$aNewOrder["cart"][$i]["cartProdID"]."' ,
  406. '".$aNewOrder["cart"][$i]["cartProdName"]."' , '".$aNewOrder["cart"][$i]["cartProdPrice"]."' ,
  407. '".date("Y-m-d H:i:s")."' , '".$aNewOrder["cart"][$i]["cartQuantity"]."' ,
  408. '".$aNewOrder["cart"][$i]["cartOrderID"]."' , 1 )";
  409. //echo $sql_cr_cart; //exit;
  410. $res_cr_cart = mysql_query($sql_cr_cart) or print(mysql_error().$sql_cr_cart);
  411. $cart_id = mysql_insert_id();
  412. $aNewOrder["cart"][$i]["cartID"] = $cart_id;
  413. for($j=0; $j<count($aNewOrder["cart"][$i]["cartoptions"]); $j++) {
  414. $sql_cr_cartoptions = "INSERT INTO cartoptions ( coCartID , coOptID , coOptGroup , coCartOption , coPriceDiff ,
  415. coWeightDiff , coExtendShipping )
  416. VALUES ( ".$aNewOrder["cart"][$i]["cartID"]." ,
  417. ".$aNewOrder["cart"][$i]["cartoptions"][$j]["coOptID"]." ,
  418. '".$aNewOrder["cart"][$i]["cartoptions"][$j]["coOptGroup"]."' ,
  419. '".$aNewOrder["cart"][$i]["cartoptions"][$j]["coCartOption"]."' ,
  420. ".$aNewOrder["cart"][$i]["cartoptions"][$j]["coPriceDiff"]." ,
  421. ".$aNewOrder["cart"][$i]["cartoptions"][$j]["coWeightDiff"]." ,
  422. '".$aNewOrder["cart"][$i]["cartoptions"][$j]["coExtendShipping"]."' )";
  423. //echo $sql_cr_cartoptions; //exit;
  424. $res_cr_cartoptions = mysql_query($sql_cr_cartoptions) or print(mysql_error().$sql_cr_cartoptions);
  425. }
  426. }
  427. //exit;
  428. // UPDATE INVENTORY
  429. $sSQL="SELECT cartID,cartProdID,cartQuantity,pSell FROM cart INNER JOIN products ON cart.cartProdID=products.pID WHERE cartOrderID='" . $ordID . "'";
  430. $result1 = mysql_query($sSQL) or print(mysql_error().$sSQL);
  431. while($rs1 = mysql_fetch_array($result1)){
  432. if(($rs1["pSell"] & 2) == 2){
  433. // Determine extended shipping
  434. $sSQL2 = "SELECT coID,optStock,cartQuantity,coOptID,optExtend_shipping,optMin FROM cart INNER JOIN cartoptions ON cart.cartID=cartoptions.coCartID INNER JOIN options ON cartoptions.coOptID=options.optID INNER JOIN optiongroup ON options.optGroup=optiongroup.optGrpID WHERE (optType=2 OR optType=-2";
  435. // ADDED by Chad - Fix to allow quantity change for custom screenz
  436. //if(eregi("^[a-z]{1,3}-Custom$",$pID)) {
  437. if(preg_match("/^[a-z]{1,3}-Custom$/i",$pID)) {
  438. $sSQL2 .= " OR optType=3";
  439. }
  440. // ADD ENDED
  441. $sSQL2 .= ") AND cartID='" . $rs1['cartID'] . "'";
  442. $result2 = mysql_query($sSQL2) or print(mysql_error().$sSQL2);
  443. if(mysql_num_rows($result2)>0){
  444. while($rs2 = mysql_fetch_assoc($result2)){
  445. $pInStock = (int)$rs2["optStock"]+1000;
  446. $actualpInStock = (int)$rs2["optStock"];
  447. $extend_shipping = $rs2["optExtend_shipping"];//extends shipping time, displayed in the cart
  448. $min = $rs2["optMin"];//sets how many in stock above zero the extend_shipping is displayed in the cart
  449. $coID = $rs2["coID"];
  450. $totQuant = 0;
  451. $cartQuantity = (int)$rs2["cartQuantity"];
  452. $sSQL3 = "SELECT SUM(cartQuantity) AS cartQuant FROM cart INNER JOIN cartoptions ON cart.cartID=cartoptions.coCartID WHERE cartCompleted=0 AND cartCustID=0 AND coOptID=" . $rs2["coOptID"];
  453. $result3 = mysql_query($sSQL3) or print(mysql_error().$sSQL3);
  454. if($rs3 = mysql_fetch_assoc($result3))
  455. if(! is_null($rs3["cartQuant"])) $totQuant = (int)$rs3["cartQuant"];
  456. mysql_free_result($result3);
  457. $extend='';
  458. //echo '<div style"position:absolute; z-index:100;>actual='.$actualpInStock.' total qty='.$totQuant. ' cart qty='.$cartQuantity.' min='. $min. ' new qty='.abs((int)$objValue).'</div>';
  459. if(($actualpInStock - $totQuant + $cartQuantity - $min) < 0) {
  460. $extend = $extend_shipping;
  461. }
  462. $sql_co="UPDATE cartoptions SET coExtendShipping='$extend' WHERE coID=".$coID;
  463. mysql_query($sql_co);
  464. }
  465. }
  466. // End of Determine extended shipping
  467. // Inventory get subtracted when set to authorized
  468. /*$sSQL = "SELECT coOptID FROM cartoptions INNER JOIN options ON cartoptions.coOptID=options.optID INNER JOIN optiongroup ON options.optGroup=optiongroup.optGrpID WHERE (optType=2 OR optType=-2) AND coCartID=" . $rs1["cartID"];
  469. $result2 = mysql_query($sSQL) or print(mysql_error());
  470. while($rs2 = mysql_fetch_array($result2)){
  471. $sSQL = "UPDATE options SET optStock=optStock-" . $rs1["cartQuantity"] . " WHERE optID=" . $rs2["coOptID"];
  472. mysql_query($sSQL) or print(mysql_error());
  473. }
  474. mysql_free_result($result2);*/
  475. //}else{
  476. //$sSQL = "UPDATE products SET pInStock=pInStock-" . $rs1["cartQuantity"] . " WHERE pID='" . $rs1["cartProdID"] . "'";
  477. //mysql_query($sSQL) or print(mysql_error());
  478. }
  479. }
  480. mysql_free_result($result1);
  481. // INSERT LOCATION
  482. setNewLocation(2,$ordID,'Manual');
  483. $sql_insert="INSERT INTO orderssplit (orgOrder,newOrder,movedCardIDs,splitType) VALUES (".$_POST["orderid"].",".$ordID.",'','Cloned')";
  484. $result_insert = mysql_query($sql_insert);
  485. if(!$result_insert) {print(mysql_error().$sql_insert);exit;}
  486. }
  487. if($clone_error) {
  488. $pg_msg = "There was a problem cloning your order.";
  489. }else{
  490. $pg_msg = "Your order has been cloned successfully.";
  491. ?>
  492. <script language="JavaScript" type="text/javascript">
  493. <!--
  494. //setTimeout("history.go(-2);",1100);
  495. setTimeout("window.location='/admin/orders.php?id=<?=$ordID?>&doedit=true'",4000);
  496. // -->
  497. </script>
  498. <?php
  499. }
  500. if(!$clone_error) {
  501. $auto_link = "/admin/orders.php?id=$ordID&doedit=true";
  502. }else{
  503. $auto_link = "/admin/orders.php";
  504. }
  505. ?>
  506. <table border="0" cellspacing="0" cellpadding="0" width="100%" bgcolor="" align="center">
  507. <tr>
  508. <td width="100%">
  509. <table width="100%" border="0" cellspacing="0" cellpadding="2" bgcolor="">
  510. <tr>
  511. <td width="100%" colspan="4" align="center"><br /><strong><?=$pg_msg?></strong><br /><br />You will now be forwarded to view the order.<br /><br />
  512. <?php print $yyNoAuto?> <a href="<?=$auto_link?>"><strong><?php print $yyClkHer?></strong></a>.<br /><br />
  513. <img src="/lib/images/misc/clearpixel.gif" width="300" height="3" alt="" /></td>
  514. </tr>
  515. </table>
  516. </td>
  517. </tr>
  518. </table>
  519. <?php
  520. }else{
  521. $OWSP = "";
  522. $sSQL = "SELECT ordSessionID FROM orders WHERE ordID='" . $_POST["orderid"] . "'";
  523. $result = mysql_query($sSQL) or print(mysql_error().$sSQL);
  524. $rs = mysql_fetch_array($result);
  525. $thesessionid = $rs["ordSessionID"];
  526. mysql_free_result($result);
  527. $sSQL = "UPDATE orders SET ";
  528. $sSQL .= "ordName='" . mysql_real_escape_string(trim(unstripslashes(@$_POST["name"]))) . "',";
  529. $sSQL .= "ordAddress='" . mysql_real_escape_string(trim(unstripslashes(@$_POST["address"]))) . "',";
  530. if(@$useaddressline2==TRUE) $sSQL .= "ordAddress2='" . mysql_real_escape_string(trim(unstripslashes(@$_POST["address2"]))) . "',";
  531. $sSQL .= "ordCity='" . mysql_real_escape_string(trim(unstripslashes(@$_POST["city"]))) . "',";
  532. $sSQL .= "ordPoApo='" . mysql_real_escape_string(trim(unstripslashes(@$_POST["APO"]))) . "',";
  533. $sSQL .= "ordState='" . mysql_real_escape_string(unstripslashes(trim(@$_POST["state"]))) . "',";
  534. $sSQL .= "ordZip='" . mysql_real_escape_string(unstripslashes(trim(@$_POST["zip"]))) . "',";
  535. $sSQL .= "ordCountry='" . mysql_real_escape_string(unstripslashes(trim(@$_POST["country"]))) . "',";
  536. $sSQL .= "ordEmail='" . mysql_real_escape_string(unstripslashes(trim(@$_POST["email"]))) . "',";
  537. $sSQL .= "ordPhone='" . mysql_real_escape_string(unstripslashes(trim(@$_POST["phone"]))) . "',";
  538. $sSQL .= "ordShipName='" . mysql_real_escape_string(trim(unstripslashes(@$_POST["sname"]))) . "',";
  539. $sSQL .= "ordShipAddress='" . mysql_real_escape_string(trim(unstripslashes(@$_POST["saddress"]))) . "',";
  540. if(@$useaddressline2==TRUE) $sSQL .= "ordShipAddress2='" . mysql_real_escape_string(trim(unstripslashes(@$_POST["saddress2"]))) . "',";
  541. $sSQL .= "ordShipCity='" . mysql_real_escape_string(trim(unstripslashes(@$_POST["scity"]))) . "',";
  542. $sSQL .= "ordShipPoApo='" . mysql_real_escape_string(trim(unstripslashes(@$_POST["ShipAPO"]))) . "',";
  543. $sSQL .= "ordShipState='" . mysql_real_escape_string(unstripslashes(trim(@$_POST["sstate"]))) . "',";
  544. $sSQL .= "ordShipZip='" . mysql_real_escape_string(unstripslashes(trim(@$_POST["szip"]))) . "',";
  545. $sSQL .= "ordShipCountry='" . mysql_real_escape_string(unstripslashes(trim(@$_POST["scountry"]))) . "',";
  546. $sSQL .= "ordShipType='" . mysql_real_escape_string(unstripslashes(trim(@$_POST["shipmethod"]))) . "',";
  547. $sSQL .= "ordIP='" . mysql_real_escape_string(unstripslashes(trim(@$_POST["ipaddress"]))) . "',";
  548. $ordComLoc = 0;
  549. if(trim(@$_POST["commercialloc"])=="Y") $ordComLoc = 1;
  550. if(trim(@$_POST["wantinsurance"])=="Y") $ordComLoc += 2;
  551. $sSQL .= "ordComLoc=" . $ordComLoc . ",";
  552. $sSQL .= "ordAffiliate='" . trim(@$_POST["PARTNER"]) . "',";
  553. $sSQL .= "ordAddInfo='" . mysql_real_escape_string(trim(unstripslashes(@$_POST["ordAddInfo"]))) . "',";
  554. $sSQL .= "ordStatus=" . $ordstatusnew . ",";
  555. $sSQL .= "ordStatusInfo='" . mysql_real_escape_string(trim(unstripslashes(@$_POST["ordStatusInfo"]))) . "',";
  556. $sSQL .= "ordReturnID=". trim(@$_POST["return_status"]) . ",";
  557. $sSQL .= "ordSupportInfo='" . mysql_real_escape_string(trim(unstripslashes(@$_POST["ordSupportInfo"]))) . "',";
  558. $sSQL .= "order_changed='yes',";
  559. $sSQL .= "ordDiscountText='" . mysql_real_escape_string(trim(unstripslashes(@$_POST["discounttext"]))) . "',";
  560. $sSQL .= "ordExtra1='" . mysql_real_escape_string(unstripslashes(trim(@$_POST["ordextra1"]))) . "',";
  561. $sSQL .= "ordExtra2='" . mysql_real_escape_string(unstripslashes(trim(@$_POST["ordextra2"]))) . "',";
  562. $sSQL .= "ordShipping='" . mysql_real_escape_string(trim(@$_POST["ordShipping"])) . "',";
  563. $sSQL .= "ordStateTax='" . mysql_real_escape_string(trim(@$_POST["ordStateTax"])) . "',";
  564. $sSQL .= "ordCountryTax='" . mysql_real_escape_string(trim(@$_POST["ordCountryTax"])) . "',";
  565. if(@$canadataxsystem==TRUE) $sSQL .= "ordHSTTax='" . mysql_real_escape_string(trim(@$_POST["ordHSTTax"])) . "',";
  566. $sSQL .= "ordDiscount='" . mysql_real_escape_string(trim(@$_POST["ordDiscount"])) . "',";
  567. $sSQL .= "ordHandling='" . mysql_real_escape_string(trim(@$_POST["ordHandling"])) . "',";
  568. $sSQL .= "ordAuthNumber='" . mysql_real_escape_string(trim(@$_POST["ordAuthNumber"])) . "',";
  569. $sSQL .= "ordTransID='" . mysql_real_escape_string(trim(@$_POST["ordTransID"])) . "',";
  570. $sSQL .= "ordTotal='" . mysql_real_escape_string(trim(@$_POST["ordtotal"])) . "',";
  571. $sSQL .= "ord_cert_amt='" . mysql_real_escape_string(trim(@$_POST["ord_cert_amt"])) . "'";
  572. $sSQL .= " WHERE ordID='" . $_POST["orderid"] . "'";
  573. mysql_query($sSQL) or print(mysql_error().$sSQL);
  574. if(!setNewLocation( $ordstatusnew , $_POST["orderid"],'Manual' )) print("Unable to record status change.");
  575. $msg='';
  576. foreach($_POST as $objItem => $objValue){
  577. //print $objItem . " : " . $objValue . "<br>";
  578. if(substr($objItem,0,6)=="prodid"){
  579. $idno = (int)substr($objItem, 6);
  580. $cartid = trim(@$_POST["cartid" . $idno]);
  581. $prodid = trim(@$_POST["prodid" . $idno]);
  582. $quant = trim(@$_POST["quant" . $idno]);
  583. $theprice = trim(@$_POST["price" . $idno]);
  584. $prodname = trim(@$_POST["prodname" . $idno]);
  585. $delitem = trim(@$_POST["del_" . $idno]);
  586. $certID = trim(@$_POST["certID" . $idno]);
  587. $reason = trim(@$_POST["reason_" . $idno]);
  588. $note = trim(@$_POST["note_" . $idno]);
  589. if($delitem=="yes"){
  590. // Added By Blake
  591. // Deletes License ID and Password from downloads
  592. $sql_check="SELECT p.pDownload,p.p_iscert,c.cartOrderID FROM products p, cart c WHERE p.pID=c.cartProdID AND c.cartID=".$cartid;
  593. $result_check=mysql_query($sql_check);
  594. $rs_check=mysql_fetch_assoc($result_check);
  595. if(!empty($rs_check["pDownload"])){
  596. $sql_down="UPDATE digitaldownloads SET active=1, orderID=0 WHERE orderID=".$rs_check['cartOrderID']." AND type='".$prodid."'";
  597. mysql_query($sql_down) or print(mysql_error().$sql_down);
  598. }
  599. //deletes gift cert
  600. if($rs_check["p_iscert"]==1 && !empty($certID)){
  601. $sql_cert="DELETE FROM certificates WHERE cert_id=".$certID;
  602. mysql_query($sql_cert) or print(mysql_error().$sql_cert);
  603. }
  604. //end
  605. mysql_query("DELETE FROM cart WHERE cartID=" . $cartid) or print(mysql_error());
  606. mysql_query("DELETE FROM cartoptions WHERE coCartID=" . $cartid) or print(mysql_error());
  607. $cartid = "";
  608. }elseif($cartid != ""){
  609. $sSQL = "UPDATE cart SET cartProdID='" . mysql_real_escape_string(trim(unstripslashes($prodid))) . "',cartProdPrice=" . $theprice . ",cartProdName='" . mysql_real_escape_string(trim(unstripslashes($prodname))) . "',cartQuantity=" . $quant . ", cartReason=" . $reason . ", cartNote='" . $note . "' WHERE cartID=" . $cartid;
  610. mysql_query($sSQL) or print(mysql_error().$sSQL);
  611. mysql_query("DELETE FROM cartoptions WHERE coCartID=" . $cartid) or print(mysql_error());
  612. //download license ID and Password
  613. $sql_check2="SELECT p.pDownload,p.p_iscert,c.cartOrderID,pID FROM products p, cart c WHERE p.pID=c.cartProdID AND c.cartID=".$cartid;
  614. $result_check2=mysql_query($sql_check2);
  615. $rs_check2=mysql_fetch_assoc($result_check2);
  616. if(!empty($rs_check2["pDownload"])){
  617. $sql_down_check="SELECT * FROM digitaldownloads WHERE type='".$rs_check2["pID"]."' AND orderID=".$_POST["orderid"];
  618. $result_down_check=mysql_query($sql_down_check);
  619. $num_rows_download_check=mysql_num_rows($result_down_check);
  620. $quantdownloads=$quant-$num_rows_download_check;
  621. if($quantdownloads>0){
  622. $sql_down1="SELECT * FROM digitaldownloads WHERE type='".$rs_check2["pID"]."' AND active=1 AND orderID=0 LIMIT ".$quantdownloads;
  623. $result_down1=mysql_query($sql_down1);
  624. $num_rows_download1=mysql_num_rows($result_down1);
  625. if($num_rows_download1>0){
  626. $error=FALSE;
  627. while($row_download1=mysql_fetch_assoc($result_down1)){
  628. $sql_update1="UPDATE digitaldownloads SET active=0, orderID=".$_POST["orderid"]." WHERE id=".$row_download1['id'];
  629. $result_update1=mysql_query($sql_update1);
  630. if(!$result_update1) $error=TRUE;
  631. }
  632. }
  633. }elseif($quantdownloads<0){
  634. $thisquantdownloads=$quantdownloads;
  635. while($row_down_check=mysql_fetch_assoc($result_down_check)){
  636. $sql_update2="UPDATE digitaldownloads SET active=1, orderID=0 WHERE id=".$row_down_check["id"];
  637. $result_update2=mysql_query($sql_update2);
  638. $thisquantdownloads++;
  639. if($thisquantdownloads==0) break;
  640. }
  641. }
  642. }
  643. }else{
  644. $sSQL = "INSERT INTO cart (cartSessionID,cartProdID,cartQuantity,cartCompleted,cartProdName,cartProdPrice,cartOrderID,cartReason,cartDateAdded) VALUES (";
  645. $sSQL .= "'" . $thesessionid . "',";
  646. $sSQL .= "'" . mysql_real_escape_string(trim(unstripslashes($prodid))) . "',";
  647. $sSQL .= $quant . ",";
  648. $sSQL .= "1,";
  649. $sSQL .= "'" . mysql_real_escape_string(trim(unstripslashes($prodname))) . "',";
  650. $sSQL .= "'" . $theprice . "',";
  651. $sSQL .= @$_POST["orderid"] . ",";
  652. if($reason=="") $reason=0;
  653. $sSQL .= $reason . ",";
  654. $sSQL .= "'" . date("Y-m-d H:i:s", time() + ($dateadjust*60*60)) . "')";
  655. mysql_query($sSQL) or print(mysql_error().$sSQL);
  656. $cartid = mysql_insert_id();
  657. //download license ID and Password
  658. $sql_check2="SELECT p.pDownload,p.p_iscert,c.cartOrderID,pID FROM products p, cart c WHERE p.pID=c.cartProdID AND c.cartID=".$cartid;
  659. $result_check2=mysql_query($sql_check2);
  660. $rs_check2=mysql_fetch_assoc($result_check2);
  661. if(!empty($rs_check2["pDownload"])){
  662. $sql_down1="SELECT * FROM digitaldownloads WHERE type='".$rs_check2["pID"]."' AND active=1 AND orderID=0 LIMIT ".$quant;
  663. $result_down1=mysql_query($sql_down1);
  664. $num_rows_download1=mysql_num_rows($result_down1);
  665. if($num_rows_download1>0){
  666. $error=FALSE;
  667. while($row_download1=mysql_fetch_assoc($result_down1)){
  668. $sql_update1="UPDATE digitaldownloads SET active=0, orderID=".$_POST["orderid"]." WHERE id=".$row_download1['id'];
  669. $result_update1=mysql_query($sql_update1);
  670. if(!$result_update1) $error=TRUE;
  671. }
  672. } else $pg_msg= 'NO License and Password Available.';
  673. }
  674. }
  675. if($cartid != ""){
  676. $optprefix = "optn" . $idno . '_';
  677. $prefixlen = strlen($optprefix);
  678. $isemailcert=FALSE;
  679. foreach($_POST as $kk => $kkval){
  680. if(substr($kk,0,$prefixlen)==$optprefix && trim($kkval) != ''){
  681. $optidarr = explode('|', $kkval);
  682. $optid = $optidarr[0];
  683. if(@$_POST["v" . $kk] == ""){
  684. $sSQL="SELECT optID,".getlangid("optGrpName",16).",".getlangid("optName",32)."," . $OWSP . "optPriceDiff,optWeightDiff,optType,optFlags FROM options LEFT JOIN optiongroup ON options.optGroup=optiongroup.optGrpID WHERE optID='" . mysql_real_escape_string($kkval) . "'";
  685. $result = mysql_query($sSQL) or print(mysql_error().$sSQL);
  686. if($rs = mysql_fetch_array($result)){
  687. if($rs["optName"]=='Email') $isemailcert=TRUE;
  688. if(abs($rs["optType"]) != 3){
  689. $sSQL = "INSERT INTO cartoptions (coCartID,coOptID,coOptGroup,coCartOption,coPriceDiff,coWeightDiff) VALUES (" . $cartid . "," . $rs["optID"] . ",'" . mysql_real_escape_string($rs[getlangid("optGrpName",16)]) . "','" . mysql_real_escape_string($rs[getlangid("optName",32)]) . "',";
  690. $sSQL .= $optidarr[1] . ",0)";
  691. }else
  692. $sSQL = "INSERT INTO cartoptions (coCartID,coOptID,coOptGroup,coCartOption,coPriceDiff,coWeightDiff) VALUES (" . $cartid . "," . $rs["optID"] . ",'" . mysql_real_escape_string($rs[getlangid("optGrpName",16)]) . "','',0,0)";
  693. mysql_query($sSQL) or print(mysql_error().$sSQL);
  694. }
  695. mysql_free_result($result);
  696. }else{
  697. $sSQL="SELECT optID,".getlangid("optGrpName",16).",".getlangid("optName",32)." FROM options LEFT JOIN optiongroup ON options.optGroup=optiongroup.optGrpID WHERE optID='" . mysql_real_escape_string($kkval) . "'";
  698. $result = mysql_query($sSQL) or print(mysql_error().$sSQL);
  699. $rs = mysql_fetch_array($result);
  700. if($rs["optName"]=='Email') $isemailcert=TRUE;
  701. $sSQL = "INSERT INTO cartoptions (coCartID,coOptID,coOptGroup,coCartOption,coPriceDiff,coWeightDiff) VALUES (" . $cartid . "," . $rs["optID"] . ",'" . mysql_real_escape_string($rs[getlangid("optGrpName",16)]) . "','" . mysql_real_escape_string(unstripslashes(trim(@$_POST["v" . $kk]))) . "',0,0)";
  702. mysql_query($sSQL) or print(mysql_error().$sSQL);
  703. mysql_free_result($result);
  704. }
  705. //gift cert
  706. if($isemailcert){
  707. $giftcertOrderID=$_POST["orderid"];
  708. $_SESSION['cert_prod']=$prodid;
  709. create_certificate($giftcertOrderID);
  710. }
  711. }
  712. }
  713. }
  714. }
  715. }
  716. //echo 'edit new='.$ordstatusnew.' '.$_POST["orderid"];
  717. $ordstatusnew=$_POST["ordstatusnew"];
  718. // stock manage
  719. if($ordstatusnew>=3 && $ordstatusnew!=10 && $ordstatusnew!=17) {
  720. mysql_query("UPDATE cart SET cartCompleted=0 WHERE cartOrderID=" . $_POST["orderid"]) or print(mysql_error());
  721. do_stock_management($_POST["orderid"]); //echo 'do_stock_management 2';
  722. mysql_query("UPDATE cart SET cartCompleted=1 WHERE cartOrderID=" . $_POST["orderid"]) or print(mysql_error());
  723. }
  724. ?>
  725. <script language="JavaScript" type="text/javascript">
  726. <!--
  727. //setTimeout("history.go(-2);",1100);
  728. setTimeout("window.location='/admin/orders.php?ordid=<?=$_POST["orderid"]?>'",1100);
  729. // -->
  730. </script>
  731. <table border="0" cellspacing="0" cellpadding="0" width="100%" bgcolor="" align="center">
  732. <tr>
  733. <td width="100%">
  734. <table width="100%" border="0" cellspacing="0" cellpadding="2" bgcolor="">
  735. <tr>
  736. <td width="100%" colspan="4" align="center"><br /><strong><?php print $yyUpdSuc?></strong><br /><br /><?php print $yyNowFrd?><br /><br />
  737. <?php print $yyNoAuto?> <a href="javascript:history.go(-2)"><strong><?php print $yyClkHer?></strong></a>.<br /><br />
  738. <img src="/lib/images/misc/clearpixel.gif" width="300" height="3" alt="" /></td>
  739. </tr>
  740. </table>
  741. </td>
  742. </tr>
  743. </table>
  744. <?php
  745. }
  746. }elseif(@$_GET["id"] != ""){
  747. $statetaxrate=0;
  748. $countrytaxrate=0;
  749. $hsttaxrate=0;
  750. $countryorder=0;
  751. $sSQL = "SELECT ordID,ordName,ordAddress,ordAddress2,ordCity,ordState,ordZip,ordCountry,ordEmail,ordPhone,ordShipName,ordShipAddress,ordShipAddress2,ordShipCity,ordShipState,ordShipZip,ordShipCountry,ordPayProvider,ordAuthNumber,ordTransID,ordTotal,ordDate,ordStateTax,ordCountryTax,ordHSTTax,ordShipping,ordShipType,ordIP,ordAffiliate,ordDiscount,ordHandling,ordDiscountText,ordComLoc,ordExtra1,ordExtra2,ordAddInfo,ordCNum,ordStatusInfo,ordSupportInfo,order_changed,ordStatus,ord_cert_amt,ord_cert_id,ordPoApo,ordShipPoApo,ordEID,ordReturnID,ordReturnReasonID FROM orders LEFT JOIN payprovider ON payprovider.payProvID=orders.ordPayProvider WHERE ordID='" . $_GET["id"] . "' AND ordEID!=34";
  752. //echo $sSQL;
  753. $result = mysql_query($sSQL) or print(mysql_error().$sSQL);
  754. $alldata = mysql_fetch_array($result);
  755. $alldata["ordDate"] = strtotime($alldata["ordDate"]);
  756. $oldordstatusedit=$alldata["ordStatus"];
  757. mysql_free_result($result);
  758. //all stutuses
  759. $numstatus=0;
  760. $sSQL = "SELECT statID,statPrivate FROM orderstatus WHERE statPrivate<>'' ORDER BY statID";
  761. $result = mysql_query($sSQL) or print(mysql_error().$sSQL);
  762. while($rs = mysql_fetch_assoc($result)){
  763. $allstatus[$numstatus++]=$rs;
  764. }
  765. mysql_free_result($result);
  766. ?>
  767. <table border="0" cellspacing="0" cellpadding="0" width="100%" bgcolor="">
  768. <tr>
  769. <td width="100%" align="center">
  770. <?php $themask = 'yyyy-mm-dd';
  771. if($admindateformat==1)
  772. $themask='mm/dd/yyyy';
  773. elseif($admindateformat==2)
  774. $themask='dd/mm/yyyy';
  775. if(! $success) print "<p><font color='#FF0000'>" . $errmsg . "</font></p>"; ?>
  776. <span name="searchspan" id="searchspan" <?php //if($usepowersearch) print 'style="display:block"'; else print 'style="display:none"'?>>
  777. <table width="100%" border="0" cellspacing="1" cellpadding="2" bgcolor="">
  778. <form method="post" action="/admin/orders.php" name="psearchform">
  779. <input type="hidden" name="powersearch" value="1" />
  780. <tr bgcolor="#030133"><td colspan="6"><strong><font color="#E7EAEF">&nbsp;<?php print $yyPowSea?></font></strong></td></tr>
  781. <tr bgcolor="#E7EAEF">
  782. <td align="right" width="15%"><strong><?php print $yyOrdFro?>:</strong></td>
  783. <td width="15%" align="left" nowrap="nowrap">&nbsp;
  784. <input type="text" size="14" name="fromdate" value="<?php print $fromdate?>" /> <input type=button onclick="popUpCalendar(this, document.forms.psearchform.fromdate, '<?php print $themask?>', 0)" value='DP' /></td>
  785. <td width="15%" align="right"><strong>E-tailers:</strong></td>
  786. <td align="left" width="15%">
  787. <select name="custID">
  788. <option value="" <?=(empty($_POST['custID']))?' selected="selected"':''?>>None Selected</option>
  789. <?
  790. $sql_EID="SELECT custID, Name FROM customers WHERE active=1";
  791. $result_EID=mysql_query($sql_EID);
  792. while($rs_EID=mysql_fetch_array($result_EID)){ ?>
  793. <option value="<?=$rs_EID['custID']?>" <? if($_POST['custID']==$rs_EID['custID']) echo " selected"?>><?= str_replace('<br />',' ',$rs_EID['Name'])?></option>
  794. <? } ?>
  795. </select> </td>
  796. <td align="right" width="20%"><strong><?php print $yyOrdTil?>:</strong></td>
  797. <td align="left" width="25%">&nbsp;<input type="text" size="14" name="todate" value="<?php print $todate?>" /> <input type=button onclick="popUpCalendar(this, document.forms.psearchform.todate, '<?php print $themask?>', -205)" value='DP' /></td>
  798. </tr>
  799. <tr bgcolor="#EAECEB">
  800. <td align="right"><strong><?php print $yyOrdId?>:</strong></td>
  801. <td align="left">&nbsp;<input type="text" size="14" name="ordid" value="<?php print $ordid?>" /><img src="/lib/images/misc/info_icon.png" id="myfrogz_info" align="absmiddle" /></td>
  802. <td align="right"><strong>PO/APOs:</strong></td>
  803. <td align="left">
  804. <select id="ordPOAPOs" name="ordPOAPOs">
  805. <option value="none"<?=(empty($_POST['ordPOAPOs']))?' selected="selected"':''?>>None Selected</option>
  806. <option value="APOs"<?=($_POST['ordPOAPOs'] == 'APOs')?' selected="selected"':''?>>APOs</option>
  807. <option value="PO_APO"<?=($_POST['ordPOAPOs'] == 'PO_APO')?' selected="selected"':''?>>PO/APOs</option>
  808. <option value="POs"<?=($_POST['ordPOAPOs'] == 'POs')?' selected="selected"':''?>>POs</option>
  809. <option value="shipping_APOs"<?=($_POST['ordPOAPOs'] == 'shipping_APOs')?' selected="selected"':''?>>Shipping to APOs</option>
  810. <option value="shipping_PO_APO"<?=($_POST['ordPOAPOs'] == 'shipping_PO_APO')?' selected="selected"':''?>>Shipping to PO/APOs</option>
  811. <option value="shipping_POs"<?=($_POST['ordPOAPOs'] == 'shipping_POs')?' selected="selected"':''?>>Shipping to POs</option>
  812. </select> </td>
  813. <td align="right"><strong><?php print $yySeaTxt?>:</strong></td>
  814. <td align="left" valign="middle">&nbsp;
  815. <input type="text" size="24" name="searchtext" value="<?php print $origsearchtext?>" /></td>
  816. </tr>
  817. <tr bgcolor="#E7EAEF">
  818. <td rowspan="2" align="right"><strong><?php print $yyOrdSta?>:</strong></td>
  819. <td rowspan="2" align="left">&nbsp;<select name="ordstatus[]" size="5" multiple><option value="9999" <?php if(strpos($ordstatus,"9999") !== FALSE) print "selected"?>><?php print $yyAllSta?></option><?php
  820. $ordstatus="";
  821. $addcomma = "";
  822. if(is_array(@$_REQUEST["ordstatus"])){
  823. foreach($_REQUEST["ordstatus"] as $objValue){
  824. if(is_array($objValue))$objValue=$objValue[0];
  825. $ordstatus .= $addcomma . $objValue;
  826. $addcomma = ",";
  827. }
  828. }else
  829. $ordstatus = trim(@$_REQUEST["ordstatus"]);
  830. $ordstatusarr = explode(",", $ordstatus);
  831. for($index=0; $index < $numstatus; $index++){
  832. print '<option value="' . $allstatus[$index]["statID"] . '"';
  833. if(is_array($ordstatusarr)){
  834. foreach($ordstatusarr as $objValue)
  835. if($objValue==$allstatus[$index]["statID"]) print " selected";
  836. }
  837. print ">" . $allstatus[$index]["statPrivate"] . "</option>";
  838. } ?></select> </td>
  839. <td rowspan="2" align="right"><strong><?=$yyOrdCou?>:</strong></td>
  840. <td rowspan="2" align="left">
  841. <? $sSQL2="SELECT DISTINCT cpnID,cpnName,cpnNumber FROM orders o LEFT JOIN coupons c ON o.ordCoupon=c.cpnID WHERE ordDiscount>0 ORDER BY cpnNumber,cpnName";
  842. $result2=mysql_query($sSQL2) or die(mysql_error().$sSQL2);
  843. $total2=mysql_num_rows($result2);?>
  844. <select name="ordcoupon" size="5" style="width:250px; font-size:10px; ">
  845. <? while($rs2=mysql_fetch_array($result2)){ ?>
  846. <option value="<?=$rs2['cpnID']?>" <?=$rs2['cpnNumber']==""?"":'style="font-weight:bold;"'?> <? if($ordcoupon==$rs2['cpnID']) echo " selected"?>><?=$rs2['cpnNumber']==""?"":$rs2['cpnNumber'].' | '?> <?= str_replace('<br />',' ',$rs2['cpnName'])?></option>
  847. <? } ?>
  848. </select>
  849. <div style="font-size:9px;">Coupons are in bold</div>
  850. </td>
  851. <td align="right" valign="middle"><strong>Return Status:</strong></td>
  852. <td align="left" valign="middle">
  853. <?
  854. $sql_return="SELECT * FROM returns ORDER BY status_order";
  855. $result_return=mysql_query($sql_return);
  856. ?>
  857. <select name="return_status_search">
  858. <option value="" <?php if ($_SESSION['return_status_search']=="") {echo "selected=\"selected\"";} ?>></option>
  859. <? while($row_return=mysql_fetch_assoc($result_return)){?>
  860. <option value="<?=$row_return["id"]?>" <?php if (!(strcmp($row_return["id"], $_SESSION['return_status_search']))) {echo "selected=\"selected\"";} ?>>
  861. <?=$row_return["status"]?>
  862. </option>
  863. <? } ?>
  864. </select></td>
  865. </tr>
  866. <tr bgcolor="#E7EAEF">
  867. <td align="right" valign="top">&nbsp;</td>
  868. <td align="left"> </td>
  869. </tr>
  870. <tr bgcolor="#E7EAEF">
  871. <td colspan="3" align="left"><input type="c…

Large files files are truncated, but you can click here to view the full file