PageRenderTime 155ms CodeModel.GetById 38ms RepoModel.GetById 3ms app.codeStats 0ms

/inc/amfphp/Amfphp/Services/ec_admin_shipping.php

https://github.com/EmranAhmed/wp-easycart
PHP | 1824 lines | 1361 code | 178 blank | 285 comment | 488 complexity | fcc5d47394b6ccfe9eb69ccb0e263db2 MD5 | raw file
  1. <?php
  2. /*
  3. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  4. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5. //All Code and Design is copyrighted by Level Four Development, llc
  6. //
  7. //Level Four Development, LLC provides this code "as is" without warranty of any kind, either express or implied,
  8. //including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose.
  9. //
  10. //Only licnesed users may use this code and storfront for live purposes. All other use is prohibited and may be
  11. //subject to copyright violation laws. If you have any questions regarding proper use of this code, please
  12. //contact Level Four Development, llc and EasyCart prior to use.
  13. //
  14. //All use of this storefront is subject to our terms of agreement found on Level Four Development, llc's website.
  15. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  16. ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  17. */
  18. class ec_admin_shipping
  19. {
  20. function ec_admin_shipping() {
  21. /*load our connection settings
  22. if( file_exists( '../../../../wp-easycart-data/connection/ec_conn.php' ) ) {
  23. require_once('../../../../wp-easycart-data/connection/ec_conn.php');
  24. } else {
  25. require_once('../../../connection/ec_conn.php');
  26. };*/
  27. //set our connection variables
  28. $dbhost = DB_HOST;
  29. $dbname = DB_NAME;
  30. $dbuser = DB_USER;
  31. $dbpass = DB_PASSWORD;
  32. global $wpdb;
  33. define ('WP_PREFIX', $wpdb->prefix);
  34. //make a connection to our database
  35. $this->conn = mysql_connect($dbhost, $dbuser, $dbpass);
  36. mysql_select_db ($dbname);
  37. mysql_query("SET CHARACTER SET utf8", $this->conn);
  38. mysql_query("SET NAMES 'utf8'", $this->conn);
  39. }
  40. //secure all of the services for logged in authenticated users only
  41. public function _getMethodRoles($methodName){
  42. if($methodName == 'upstest') return array('admin');
  43. else if($methodName == 'uspstest') return array('admin');
  44. else if($methodName == 'fedextest') return array('admin');
  45. else if($methodName == 'dhltest') return array('admin');
  46. else if($methodName == 'ausposttest') return array('admin');
  47. else if($methodName == 'getshippingsettings') return array('admin');
  48. else if($methodName == 'updateshippingmethodsetting') return array('admin');
  49. else if($methodName == 'updateshippingsettings') return array('admin');
  50. else if($methodName == 'getups') return array('admin');
  51. else if($methodName == 'deleteups') return array('admin');
  52. else if($methodName == 'updateups') return array('admin');
  53. else if($methodName == 'addups') return array('admin');
  54. else if($methodName == 'getusps') return array('admin');
  55. else if($methodName == 'deleteusps') return array('admin');
  56. else if($methodName == 'updateusps') return array('admin');
  57. else if($methodName == 'addusps') return array('admin');
  58. else if($methodName == 'getfedex') return array('admin');
  59. else if($methodName == 'deletefedex') return array('admin');
  60. else if($methodName == 'updatefedex') return array('admin');
  61. else if($methodName == 'addfedex') return array('admin');
  62. else if($methodName == 'getauspost') return array('admin');
  63. else if($methodName == 'deleteauspost') return array('admin');
  64. else if($methodName == 'updateauspost') return array('admin');
  65. else if($methodName == 'addauspost') return array('admin');
  66. else if($methodName == 'getdhl') return array('admin');
  67. else if($methodName == 'deletedhl') return array('admin');
  68. else if($methodName == 'updatedhl') return array('admin');
  69. else if($methodName == 'adddhl') return array('admin');
  70. else if($methodName == 'updateexpeditedrates') return array('admin');
  71. else if($methodName == 'getmethodshippingrates') return array('admin');
  72. else if($methodName == 'deleteshippingmethodrate') return array('admin');
  73. else if($methodName == 'updateshippingmethodrate') return array('admin');
  74. else if($methodName == 'addshippingmethodrate') return array('admin');
  75. else if($methodName == 'getweightshippingrates') return array('admin');
  76. else if($methodName == 'deleteshippingweightrate') return array('admin');
  77. else if($methodName == 'updateshippingweightrate') return array('admin');
  78. else if($methodName == 'addshippingweightrate') return array('admin');
  79. else if($methodName == 'getpriceshippingrates') return array('admin');
  80. else if($methodName == 'deleteshippingpricerate') return array('admin');
  81. else if($methodName == 'updateshippingpricerate') return array('admin');
  82. else if($methodName == 'addshippingpricerate') return array('admin');
  83. else if($methodName == 'getquantityshippingrates') return array('admin');
  84. else if($methodName == 'deleteshippingquantityrate') return array('admin');
  85. else if($methodName == 'updateshippingquantityrate') return array('admin');
  86. else if($methodName == 'addshippingquantityrate') return array('admin');
  87. else if($methodName == 'getzonedetails') return array('admin');
  88. else if($methodName == 'deletezonedetails') return array('admin');
  89. else if($methodName == 'insertzonedetails') return array('admin');
  90. else if($methodName == 'getshippingzones') return array('admin');
  91. else if($methodName == 'deleteshippingzone') return array('admin');
  92. else if($methodName == 'insertshippingzone') return array('admin');
  93. else return null;
  94. }
  95. //HELPER - used to escape out SQL calls
  96. function escape($sql)
  97. {
  98. $args = func_get_args();
  99. foreach($args as $key => $val)
  100. {
  101. $args[$key] = mysql_real_escape_string($val);
  102. }
  103. $args[0] = $sql;
  104. return call_user_func_array('sprintf', $args);
  105. }
  106. /////////////////////////////////////////////////////////////////////////////////
  107. //Shipping Testers
  108. /////////////////////////////////////////////////////////////////////////////////
  109. function upstest() {
  110. $db = new ec_db_admin( );
  111. $setting_row = $db->get_settings( );
  112. $settings = new ec_setting( $setting_row );
  113. $message = "";
  114. if( $setting_row->ups_access_license_number && $setting_row->ups_user_id && $setting_row->ups_password && $setting_row->ups_ship_from_zip && $setting_row->ups_shipper_number && $setting_row->ups_country_code && $setting_row->ups_weight_type ){
  115. if( !class_exists( "ec_shipper" ) ){
  116. include( WP_PLUGIN_DIR . "/" . EC_PLUGIN_DIRECTORY . '/inc/classes/shipping/ec_shipper.php' );
  117. }
  118. if( !class_exists( "ec_ups" ) ){
  119. include( WP_PLUGIN_DIR . "/" . EC_PLUGIN_DIRECTORY . '/inc/classes/shipping/ec_ups.php' );
  120. }
  121. // Run test of the settings
  122. $ups_class = new ec_ups( $settings );
  123. $ups_response = $ups_class->get_rate_test( "01", $setting_row->ups_ship_from_zip, $setting_row->ups_country_code, "1" );
  124. $ups_xml = new SimpleXMLElement($ups_response);
  125. if( $ups_xml->Response->ResponseStatusCode == "1" ){
  126. $result = 1;
  127. }else if( $ups_xml->Response->Error->ErrorCode == "111210" ){
  128. $result = 3;
  129. $message = "The zip + country combination you have entered as your ship from location is invalid.";
  130. }else{
  131. $result = 3;
  132. $message = (string) $ups_xml->Response->Error->ErrorDescription[0];
  133. }
  134. }else{
  135. $result = 3;
  136. $message = "You are missing some of the required settings. Please ensure you have something entered for the license number, user id, password, postal code, and shipper number.";
  137. }
  138. if( $setting_row->ups_conversion_rate <= 0 ){
  139. $result = 2;
  140. $message = "You have the conversion rate set to zero or less, which is typically an invalid value. This will return zero or less shipping values every time.";
  141. }
  142. $finalresults = new StdClass;
  143. if ($result == 1) {
  144. //if success (green light)
  145. $finalresults->success_code = 1;
  146. $finalresults->success_message = 'success';
  147. } else if ($result == 2) {
  148. //if problem (yellow light)
  149. $finalresults->success_code = 2;
  150. $finalresults->success_message = $message;
  151. } else if ($result == 3) {
  152. //if error (red light)
  153. $finalresults->success_code = 3;
  154. $finalresults->success_message = $message;
  155. }
  156. $returnArray[] = $finalresults;
  157. return $returnArray;
  158. }
  159. function uspstest() {
  160. $db = new ec_db_admin( );
  161. $setting_row = $db->get_settings( );
  162. $settings = new ec_setting( $setting_row );
  163. $message = "";
  164. if( $setting_row->usps_user_name && $setting_row->usps_ship_from_zip ){
  165. if( !class_exists( "ec_shipper" ) ){
  166. include( WP_PLUGIN_DIR . "/" . EC_PLUGIN_DIRECTORY . '/inc/classes/shipping/ec_shipper.php' );
  167. }
  168. if( !class_exists( "ec_usps" ) ){
  169. include( WP_PLUGIN_DIR . "/" . EC_PLUGIN_DIRECTORY . '/inc/classes/shipping/ec_usps.php' );
  170. }
  171. $usps_class = new ec_usps( $settings );
  172. $usps_response = $usps_class->get_rate_test( "PRIORITY", $setting_row->usps_ship_from_zip, "US", "1" );
  173. $usps_xml = new SimpleXMLElement( $usps_response );
  174. if( $usps_xml->Number ){
  175. $result = 3;
  176. $message = (string) $usps_xml->Description;
  177. }else if( $usps_xml->Package[0]->Error ){
  178. $result = 3;
  179. $message = (string) $usps_xml->Package[0]->Error->Description[0];
  180. }else{
  181. $result = 1;
  182. }
  183. }else{
  184. $result = 3;
  185. $message = "You are missing some of the required settings. Please ensure you have something entered for the user name and ship from postal code.";
  186. }
  187. $finalresults = new StdClass;
  188. if ($result == 1) {
  189. //if success (green light)
  190. $finalresults->success_code = 1;
  191. $finalresults->success_message = 'success';
  192. } else if ($result == 2) {
  193. //if problem (yellow light)
  194. $finalresults->success_code = 2;
  195. $finalresults->success_message = 'There was a problem with your configuration or transmitting.';
  196. } else if ($result == 3) {
  197. //if error (red light)
  198. $finalresults->success_code = 3;
  199. $finalresults->success_message = $message;
  200. }
  201. $returnArray[] = $finalresults;
  202. return $returnArray;
  203. }
  204. function fedextest() {
  205. $db = new ec_db_admin( );
  206. $setting_row = $db->get_settings( );
  207. $settings = new ec_setting( $setting_row );
  208. if( $setting_row->fedex_key && $setting_row->fedex_account_number && $setting_row->fedex_meter_number && $setting_row->fedex_password && $setting_row->fedex_ship_from_zip && $setting_row->fedex_weight_units && $setting_row->fedex_country_code ){
  209. if( !class_exists( "ec_shipper" ) ){
  210. include( WP_PLUGIN_DIR . "/" . EC_PLUGIN_DIRECTORY . '/inc/classes/shipping/ec_shipper.php' );
  211. }
  212. if( !class_exists( "ec_fedex" ) ){
  213. include( WP_PLUGIN_DIR . "/" . EC_PLUGIN_DIRECTORY . '/inc/classes/shipping/ec_fedex.php' );
  214. }
  215. $fedex_class = new ec_fedex( $settings );
  216. $fedex_response = $fedex_class->get_rate_test( "FEDEX_GROUND", $setting_row->fedex_ship_from_zip, $setting_row->fedex_country_code, "1" );
  217. if( $fedex_response->HighestSeverity == 'FAILURE' || $fedex_response->HighestSeverity == 'ERROR' || $fedex_response->HighestSeverity == 'WARNING' ){
  218. if( isset( $fedex_response->Notifications ) ){
  219. $result = 3;
  220. if( $fedex_response->Notifications->Code == "1000" )
  221. $message = "FedEx returned an authentication error, meaning your access key + password was not a valid login in their system. It could also mean that you have or have not checked the test mode option to match with the account you are using.";
  222. else if( $fedex_response->Notifications->Code == "556" )
  223. $message = "There are no available services from the selected postal code + country. Likely you have an invalid postal code or have not selected the correct country to match.";
  224. else if( $fedex_response->Notifications->Code == "803" )
  225. $message = "FedEx has told us the meter number you have entered is incorrect.";
  226. else if( $fedex_response->Notifications->Code == "860" )
  227. $message = "FedEx has told us the account number you have entered is incorrect.";
  228. else
  229. $message = print_r( $fedex_response->Notifications, true );
  230. }else{
  231. $result = 3;
  232. $message= "Unknown error occurred.";
  233. }
  234. }else{
  235. $result = 1;
  236. }
  237. }else{
  238. $result = 3;
  239. $message = "You are missing some of the required settings. Please ensure you have something entered for the access key, account number, meter number, postal code, and password.";
  240. }
  241. if( $setting_row->fedex_conversion_rate <= 0 ){
  242. $result = 2;
  243. $message = "You have the conversion rate set to zero or less, which is typically an invalid value. This will return zero or less shipping values every time.";
  244. }
  245. $finalresults = new StdClass;
  246. if ($result == 1) {
  247. //if success (green light)
  248. $finalresults->success_code = 1;
  249. $finalresults->success_message = 'success';
  250. } else if ($result == 2) {
  251. //if problem (yellow light)
  252. $finalresults->success_code = 2;
  253. $finalresults->success_message = $message;
  254. } else if ($result == 3) {
  255. //if error (red light)
  256. $finalresults->success_code = 3;
  257. $finalresults->success_message = $message;
  258. }
  259. $returnArray[] = $finalresults;
  260. return $returnArray;
  261. }
  262. function dhltest() {
  263. $db = new ec_db_admin( );
  264. $setting_row = $db->get_settings( );
  265. $settings = new ec_setting( $setting_row );
  266. if( $setting_row->dhl_site_id && $setting_row->dhl_password && $setting_row->dhl_ship_from_country && $setting_row->dhl_ship_from_zip && $setting_row->dhl_weight_unit ){
  267. if( !class_exists( "ec_shipper" ) ){
  268. include( WP_PLUGIN_DIR . "/" . EC_PLUGIN_DIRECTORY . '/inc/classes/shipping/ec_shipper.php' );
  269. }
  270. if( !class_exists( "ec_dhl" ) ){
  271. include( WP_PLUGIN_DIR . "/" . EC_PLUGIN_DIRECTORY . '/inc/classes/shipping/ec_dhl.php' );
  272. }
  273. $dhl_class = new ec_dhl( $settings );
  274. $dhl_response = $dhl_class->get_rate_test( "N", $setting_row->dhl_ship_from_zip, $setting_row->dhl_ship_from_country, "1" );
  275. $dhl_xml = new SimpleXMLElement( $dhl_response );
  276. if( $dhl_xml && $dhl_xml->Response && $dhl_xml->Response->Status && $dhl_xml->Response->Status->ActionStatus && $dhl_xml->Response->Status->ActionStatus == "Error" ){
  277. $result = 3;
  278. if( $dhl_xml->Response->Status->Condition->ConditionCode == '100' ){
  279. $message = "DHL failed because the site ID and/or password provided is incorrect.";
  280. }else{
  281. $message = print_r( $dhl_xml->Response->Status->Condition, true );
  282. }
  283. }else if( $dhl_xml && $dhl_xml->GetQuoteResponse && $dhl_xml->GetQuoteResponse->Note && $dhl_xml->GetQuoteResponse->Note->Condition ){
  284. $result = 3;
  285. $message = ( string ) $dhl_xml->GetQuoteResponse->Note->Condition->ConditionData;
  286. }else{
  287. $result = 1;
  288. }
  289. }else{
  290. $result = 3;
  291. $message = "You are missing some of the required settings. Please ensure you have something entered for the Site ID, Password, and Postal Code.";
  292. }
  293. $finalresults = new StdClass;
  294. if ($result == 1) {
  295. //if success (green light)
  296. $finalresults->success_code = 1;
  297. $finalresults->success_message = 'success';
  298. } else if ($result == 2) {
  299. //if problem (yellow light)
  300. $finalresults->success_code = 2;
  301. $finalresults->success_message = 'There was a problem with your configuration or transmitting.';
  302. } else if ($result == 3) {
  303. //if error (red light)
  304. $finalresults->success_code = 3;
  305. $finalresults->success_message = $message;
  306. }
  307. $returnArray[] = $finalresults;
  308. return $returnArray;
  309. }
  310. function ausposttest() {
  311. $db = new ec_db_admin( );
  312. $setting_row = $db->get_settings( );
  313. $settings = new ec_setting( $setting_row );
  314. if( $setting_row->auspost_api_key && $setting_row->auspost_ship_from_zip ){
  315. if( !class_exists( "ec_shipper" ) ){
  316. include( WP_PLUGIN_DIR . "/" . EC_PLUGIN_DIRECTORY . '/inc/classes/shipping/ec_shipper.php' );
  317. }
  318. if( !class_exists( "ec_auspost" ) ){
  319. include( WP_PLUGIN_DIR . "/" . EC_PLUGIN_DIRECTORY . '/inc/classes/shipping/ec_auspost.php' );
  320. }
  321. $auspost_class = new ec_auspost( $settings );
  322. $auspost_response = $auspost_class->get_rate_test( "AUS_PARCEL_EXPRESS", $setting_row->auspost_ship_from_zip, "AU", "1" );
  323. if( !$auspost_response ){
  324. $result = 3;
  325. $message = "No response was returned from Australia Post, this means your key is incorrect or the postal code entered is not a valid Australian postal code.";
  326. }else
  327. $result = 1;
  328. }else{
  329. $result = 3;
  330. $message = "You are missing some of the required settings. Please ensure you have something entered for the API key and the postal code.";
  331. }
  332. $finalresults = new StdClass;
  333. if ($result == 1) {
  334. //if success (green light)
  335. $finalresults->success_code = 1;
  336. $finalresults->success_message = 'success';
  337. } else if ($result == 2) {
  338. //if problem (yellow light)
  339. $finalresults->success_code = 2;
  340. $finalresults->success_message = 'There was a problem with your configuration or transmitting.';
  341. } else if ($result == 3) {
  342. //if error (red light)
  343. $finalresults->success_code = 3;
  344. $finalresults->success_message = $message;
  345. }
  346. $returnArray[] = $finalresults;
  347. return $returnArray;
  348. }
  349. /////////////////////////////////////////////////////////////////////////////////
  350. //Shipping Zones
  351. /////////////////////////////////////////////////////////////////////////////////
  352. function getzonedetails($zone_id) {
  353. //Create SQL Query
  354. $sql = $this->escape("SELECT ec_zone_to_location.*, ec_country.*, ec_state.*
  355. FROM
  356. ec_zone_to_location
  357. LEFT JOIN ec_country ON (ec_zone_to_location.iso2_cnt = ec_country.iso2_cnt)
  358. LEFT JOIN ec_state ON (ec_zone_to_location.code_sta = ec_state.code_sta)
  359. WHERE
  360. ec_zone_to_location.zone_id = '".$zone_id."' ORDER BY ec_country.name_cnt ASC");
  361. // Run query on database
  362. $result = mysql_query($sql);
  363. //if results, convert to an array for use in flash
  364. if(mysql_num_rows($result) > 0) {
  365. while ($row=mysql_fetch_object($result)) {
  366. $returnArray[] = $row;
  367. }
  368. return($returnArray); //return array results if there are some
  369. } else {
  370. $returnArray[] = "noresults";
  371. return $returnArray; //return noresults if there are no results
  372. }
  373. }
  374. function deletezonedetails($keyfield, $zone_id) {
  375. //convert object to array
  376. //$keyfield = (array)$keyfield;
  377. //$zone_id = (array)$zone_id;
  378. //Create SQL Query
  379. $deletesql = $this->escape("DELETE FROM ec_zone_to_location WHERE ec_zone_to_location.zone_to_location_id = '".$keyfield."'");
  380. //Run query on database;
  381. mysql_query($deletesql);
  382. //if results, convert to an array for use in flash
  383. if(!mysql_error()) {
  384. //Create SQL Query
  385. $sql = $this->escape("SELECT ec_zone_to_location.*, ec_country.*, ec_state.*
  386. FROM
  387. ec_zone_to_location
  388. LEFT JOIN ec_country ON (ec_zone_to_location.iso2_cnt = ec_country.iso2_cnt)
  389. LEFT JOIN ec_state ON (ec_zone_to_location.code_sta = ec_state.code_sta)
  390. WHERE
  391. ec_zone_to_location.zone_id = '".$zone_id."' ORDER BY ec_country.name_cnt ASC");
  392. // Run query on database
  393. $result = mysql_query($sql);
  394. //if results, convert to an array for use in flash
  395. if(mysql_num_rows($result) > 0) {
  396. while ($row=mysql_fetch_object($result)) {
  397. $returnArray[] = $row;
  398. }
  399. return($returnArray); //return array results if there are some
  400. } else {
  401. $returnArray[] = "noresults";
  402. return $returnArray; //return noresults if there are no results
  403. }
  404. } else {
  405. $returnArray[] = "error";
  406. return $returnArray; //return noresults if there are no results
  407. }
  408. }
  409. function insertzonedetails($zone_id, $zonecountry, $zonestate) {
  410. $sql = sprintf("Insert into ec_zone_to_location(ec_zone_to_location.zone_to_location_id, ec_zone_to_location.zone_id, ec_zone_to_location.iso2_cnt, ec_zone_to_location.code_sta)
  411. values(null, '%s', '%s', '%s')",
  412. mysql_real_escape_string($zone_id),
  413. mysql_real_escape_string($zonecountry),
  414. mysql_real_escape_string($zonestate));
  415. //Run query on database;
  416. mysql_query($sql);
  417. //if results, convert to an array for use in flash
  418. if(!mysql_error()) {
  419. //Create SQL Query
  420. $sql = $this->escape("SELECT ec_zone_to_location.*, ec_country.*, ec_state.*
  421. FROM
  422. ec_zone_to_location
  423. LEFT JOIN ec_country ON (ec_zone_to_location.iso2_cnt = ec_country.iso2_cnt)
  424. LEFT JOIN ec_state ON (ec_zone_to_location.code_sta = ec_state.code_sta)
  425. WHERE
  426. ec_zone_to_location.zone_id = '".$zone_id."' ORDER BY ec_country.name_cnt ASC");
  427. // Run query on database
  428. $result = mysql_query($sql);
  429. //if results, convert to an array for use in flash
  430. if(mysql_num_rows($result) > 0) {
  431. while ($row=mysql_fetch_object($result)) {
  432. $returnArray[] = $row;
  433. }
  434. return($returnArray); //return array results if there are some
  435. } else {
  436. $returnArray[] = "noresults";
  437. return $returnArray; //return noresults if there are no results
  438. }
  439. } else {
  440. $returnArray[] ="error";
  441. return($returnArray); //return array results if there are some
  442. }
  443. }
  444. function getshippingzones() {
  445. //Create SQL Query
  446. $sql = $this->escape("SELECT ec_zone.* FROM ec_zone ORDER BY ec_zone.zone_id ASC");
  447. // Run query on database
  448. $result = mysql_query($sql);
  449. //if results, convert to an array for use in flash
  450. if(mysql_num_rows($result) > 0) {
  451. while ($row=mysql_fetch_object($result)) {
  452. $returnArray[] = $row;
  453. }
  454. return($returnArray); //return array results if there are some
  455. } else {
  456. $returnArray[] = "noresults";
  457. return $returnArray; //return noresults if there are no results
  458. }
  459. }
  460. function deleteshippingzone($keyfield) {
  461. //Create SQL Query
  462. $deletesql = $this->escape("DELETE FROM ec_zone WHERE ec_zone.zone_id = '%s'", $keyfield);
  463. //Run query on database;
  464. mysql_query($deletesql);
  465. $deletesql = $this->escape("DELETE FROM ec_zone_to_location WHERE ec_zone_to_location.zone_id = '".$keyfield."'");
  466. //Run query on database;
  467. mysql_query($deletesql);
  468. //if results, convert to an array for use in flash
  469. if(!mysql_error()) {
  470. $returnArray[] ="success";
  471. return($returnArray); //return array results if there are some
  472. } else {
  473. $returnArray[] = "error";
  474. return $returnArray; //return noresults if there are no results
  475. }
  476. }
  477. function insertshippingzone($zonename) {
  478. $sql = sprintf("Insert into ec_zone(ec_zone.zone_id, ec_zone.zone_name)
  479. values(null, '%s')",
  480. mysql_real_escape_string($zonename));
  481. //Run query on database;
  482. mysql_query($sql);
  483. //if results, convert to an array for use in flash
  484. if(!mysql_error()) {
  485. $returnArray[] ="success";
  486. return($returnArray); //return array results if there are some
  487. } else {
  488. $returnArray[] ="error";
  489. return($returnArray); //return array results if there are some
  490. }
  491. }
  492. /////////////////////////////////////////////////////////////////////////////////
  493. //Shipping Settings
  494. /////////////////////////////////////////////////////////////////////////////////
  495. function getshippingsettings() {
  496. //Create SQL Query
  497. $query= mysql_query("SELECT SQL_CALC_FOUND_ROWS ec_setting.shipping_method, ec_setting.shipping_expedite_rate, ec_setting.shipping_handling_rate, ec_setting.ups_access_license_number, ec_setting.ups_user_id, ec_setting.ups_password, ec_setting.ups_ship_from_zip, ec_setting.ups_shipper_number, ec_setting.ups_country_code, ec_setting.ups_weight_type, ec_setting.ups_conversion_rate, ec_setting.usps_user_name, ec_setting.usps_ship_from_zip, ec_setting.fedex_key, ec_setting.fedex_account_number, ec_setting.fedex_meter_number, ec_setting.fedex_password, ec_setting.fedex_ship_from_zip, ec_setting.fedex_weight_units, ec_setting.fedex_country_code, ec_setting.fedex_conversion_rate, ec_setting.fedex_test_account, ec_setting.auspost_api_key, ec_setting.auspost_ship_from_zip, ec_setting.dhl_site_id, ec_setting.dhl_password, ec_setting.dhl_ship_from_country, ec_setting.dhl_ship_from_zip, ec_setting.dhl_weight_unit, ec_setting.dhl_test_mode, ec_setting.fraktjakt_customer_id, ec_setting.fraktjakt_login_key, ec_setting.fraktjakt_conversion_rate, ec_setting.fraktjakt_test_mode, ec_setting.fraktjakt_address, ec_setting.fraktjakt_city, ec_setting.fraktjakt_state, ec_setting.fraktjakt_zip, ec_setting.fraktjakt_country FROM ec_setting WHERE ec_setting.setting_id = 1");
  498. $totalquery=mysql_query("SELECT FOUND_ROWS()");
  499. $totalrows = mysql_fetch_object($totalquery);
  500. //if results, convert to an array for use in flash
  501. if(mysql_num_rows($query) > 0) {
  502. while ($row=mysql_fetch_object($query)) {
  503. $row->totalrows=$totalrows;
  504. $returnArray[] = $row;
  505. }
  506. return($returnArray); //return array results if there are some
  507. } else {
  508. $returnArray[] = "noresults";
  509. return $returnArray; //return noresults if there are no results
  510. }
  511. }
  512. function updateshippingmethodsetting($shippingmethod, $handlingcharge) {
  513. //Create SQL Query
  514. $sql = sprintf("UPDATE ec_setting SET ec_setting.shipping_method='%s', ec_setting.shipping_handling_rate='%s' WHERE ec_setting.setting_id = 1",
  515. mysql_real_escape_string($shippingmethod),
  516. mysql_real_escape_string($handlingcharge));
  517. //Run query on database;
  518. mysql_query($sql);
  519. //if no errors, return their current Client ID
  520. //if results, convert to an array for use in flash
  521. if(!mysql_error()) {
  522. $returnArray[] ="success";
  523. return($returnArray); //return array results if there are some
  524. } else {
  525. $sqlerror = mysql_error();
  526. $error = explode(" ", $sqlerror);
  527. if ($error[0] == "Duplicate") {
  528. $returnArray[] = "duplicate";
  529. return $returnArray; //return noresults if there are no results
  530. } else {
  531. $returnArray[] = "error";
  532. return $returnArray; //return noresults if th ere are no results
  533. }
  534. }
  535. }
  536. function updateshippingsettings($shippingsettings) {
  537. //convert object to array
  538. $shippingsettings = (array)$shippingsettings;
  539. //Create SQL Query
  540. $sql = sprintf("UPDATE ec_setting SET ec_setting.shipping_method='%s', ec_setting.shipping_handling_rate='%s', ec_setting.ups_access_license_number='%s', ec_setting.ups_user_id='%s', ec_setting.ups_password='%s', ec_setting.ups_ship_from_zip='%s', ec_setting.ups_shipper_number='%s', ec_setting.ups_country_code='%s', ec_setting.ups_weight_type='%s', ec_setting.ups_conversion_rate ='%s', ec_setting.usps_user_name='%s', ec_setting.usps_ship_from_zip='%s', ec_setting.fedex_key='%s', ec_setting.fedex_account_number='%s', ec_setting.fedex_meter_number='%s', ec_setting.fedex_password='%s', ec_setting.fedex_ship_from_zip='%s', ec_setting.fedex_weight_units='%s', ec_setting.fedex_country_code='%s', ec_setting.fedex_conversion_rate ='%s', ec_setting.fedex_test_account='%s', ec_setting.auspost_api_key = '%s', ec_setting.auspost_ship_from_zip = '%s' , ec_setting.dhl_site_id = '%s', ec_setting.dhl_password = '%s', ec_setting.dhl_ship_from_country = '%s', ec_setting.dhl_ship_from_zip = '%s', ec_setting.dhl_weight_unit = '%s', ec_setting.dhl_test_mode = '%s', ec_setting.fraktjakt_customer_id = '%s', ec_setting.fraktjakt_login_key = '%s', ec_setting.fraktjakt_conversion_rate = '%s', ec_setting.fraktjakt_test_mode = '%s', ec_setting.fraktjakt_address = '%s', ec_setting.fraktjakt_city = '%s', ec_setting.fraktjakt_state = '%s', ec_setting.fraktjakt_zip = '%s', ec_setting.fraktjakt_country = '%s' WHERE ec_setting.setting_id = 1",
  541. mysql_real_escape_string($shippingsettings['shippingmethod']),
  542. mysql_real_escape_string($shippingsettings['handlingcharge']),
  543. mysql_real_escape_string($shippingsettings['ups_access_license_number']),
  544. mysql_real_escape_string($shippingsettings['ups_user_id']),
  545. mysql_real_escape_string($shippingsettings['ups_password']),
  546. mysql_real_escape_string($shippingsettings['ups_ship_from_zip']),
  547. mysql_real_escape_string($shippingsettings['ups_shipper_number']),
  548. mysql_real_escape_string($shippingsettings['ups_country_code']),
  549. mysql_real_escape_string($shippingsettings['ups_weight_type']),
  550. mysql_real_escape_string($shippingsettings['ups_conversion_rate']),
  551. mysql_real_escape_string($shippingsettings['usps_user_name']),
  552. mysql_real_escape_string($shippingsettings['usps_ship_from_zip']),
  553. mysql_real_escape_string($shippingsettings['fedex_key']),
  554. mysql_real_escape_string($shippingsettings['fedex_account_number']),
  555. mysql_real_escape_string($shippingsettings['fedex_meter_number']),
  556. mysql_real_escape_string($shippingsettings['fedex_password']),
  557. mysql_real_escape_string($shippingsettings['fedex_ship_from_zip']),
  558. mysql_real_escape_string($shippingsettings['fedex_weight_units']),
  559. mysql_real_escape_string($shippingsettings['fedex_country_code']),
  560. mysql_real_escape_string($shippingsettings['fedex_conversion_rate']),
  561. mysql_real_escape_string($shippingsettings['fedex_test_account']),
  562. mysql_real_escape_string($shippingsettings['auspost_api_key']),
  563. mysql_real_escape_string($shippingsettings['auspost_ship_from_zip']),
  564. mysql_real_escape_string($shippingsettings['dhl_site_id']),
  565. mysql_real_escape_string($shippingsettings['dhl_password']),
  566. mysql_real_escape_string($shippingsettings['dhl_ship_from_country']),
  567. mysql_real_escape_string($shippingsettings['dhl_ship_from_zip']),
  568. mysql_real_escape_string($shippingsettings['dhl_weight_unit']),
  569. mysql_real_escape_string($shippingsettings['dhl_test_mode']),
  570. mysql_real_escape_string($shippingsettings['fj_customerid']),
  571. mysql_real_escape_string($shippingsettings['fj_loginkey']),
  572. mysql_real_escape_string($shippingsettings['fj_conversionrate']),
  573. mysql_real_escape_string($shippingsettings['fj_testmode']),
  574. mysql_real_escape_string($shippingsettings['fj_address']),
  575. mysql_real_escape_string($shippingsettings['fj_city']),
  576. mysql_real_escape_string($shippingsettings['fj_state']),
  577. mysql_real_escape_string($shippingsettings['fj_zip']),
  578. mysql_real_escape_string($shippingsettings['fj_country']));
  579. //Run query on database;
  580. mysql_query($sql);
  581. //return mysql_error();
  582. //if no errors, return their current Client ID
  583. //if results, convert to an array for use in flash
  584. if(!mysql_error()) {
  585. $returnArray[] ="success";
  586. return($returnArray); //return array results if there are some
  587. } else {
  588. //$sqlerror = mysql_error();
  589. $error = explode(" ", $sqlerror);
  590. if ($error[0] == "Duplicate") {
  591. $returnArray[] = "duplicate";
  592. return $returnArray; //return noresults if there are no results
  593. } else {
  594. $returnArray[] = "error";
  595. return $returnArray; //return noresults if there are no results
  596. }
  597. }
  598. }
  599. /////////////////////////////////////////////////////////////////////////////////
  600. //DHL BASED SHIPPING
  601. /////////////////////////////////////////////////////////////////////////////////
  602. function getdhl() {
  603. //Create SQL Query
  604. $query= mysql_query("SELECT SQL_CALC_FOUND_ROWS ec_shippingrate.* FROM ec_shippingrate WHERE ec_shippingrate.is_dhl_based = 1 ORDER BY ec_shippingrate.shipping_order ASC");
  605. $totalquery=mysql_query("SELECT FOUND_ROWS()");
  606. $totalrows = mysql_fetch_object($totalquery);
  607. //if results, convert to an array for use in flash
  608. if(mysql_num_rows($query) > 0) {
  609. while ($row=mysql_fetch_object($query)) {
  610. $row->totalrows=$totalrows;
  611. $returnArray[] = $row;
  612. }
  613. return($returnArray); //return array results if there are some
  614. } else {
  615. $returnArray[] = "noresults";
  616. return $returnArray; //return noresults if there are no results
  617. }
  618. }
  619. function deletedhl($keyfield) {
  620. //Create SQL Query
  621. $deletesql = $this->escape("DELETE FROM ec_shippingrate WHERE ec_shippingrate.shippingrate_id = '%s'", $keyfield);
  622. //Run query on database;
  623. mysql_query($deletesql);
  624. //if no errors, return their current Client ID
  625. //if results, convert to an array for use in flash
  626. if(!mysql_error()) {
  627. $returnArray[] ="success";
  628. return($returnArray); //return array results if there are some
  629. } else {
  630. $returnArray[] = "error";
  631. return $returnArray; //return noresults if there are no results
  632. }
  633. }
  634. function updatedhl($keyfield, $info) {
  635. //convert object to array
  636. $info = (array)$info;
  637. //Create SQL Query
  638. if($info['shippingoverride'] != '') {
  639. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_dhl_based, ec_shippingrate.zone_id)
  640. values('".$keyfield."', '%s', '%s','%s', '%s', 1, '%s')",
  641. mysql_real_escape_string($info['shippinglabel']),
  642. mysql_real_escape_string($info['shippingcode']),
  643. mysql_real_escape_string($info['shipping_order']),
  644. mysql_real_escape_string($info['shippingoverride']),
  645. mysql_real_escape_string($info['zoneid']));
  646. } else {
  647. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_dhl_based, ec_shippingrate.zone_id)
  648. values('".$keyfield."', '%s', '%s', '%s', null, 1, '%s')",
  649. mysql_real_escape_string($info['shippinglabel']),
  650. mysql_real_escape_string($info['shippingcode']),
  651. mysql_real_escape_string($info['shipping_order']),
  652. mysql_real_escape_string($info['zoneid']));
  653. }
  654. //Run query on database;
  655. mysql_query($sql);
  656. //if no errors, return their current Client ID
  657. //if results, convert to an array for use in flash
  658. if(!mysql_error()) {
  659. $returnArray[] ="success";
  660. return($returnArray); //return array results if there are some
  661. } else {
  662. $sqlerror = mysql_error();
  663. $error = explode(" ", $sqlerror);
  664. if ($error[0] == "Duplicate") {
  665. $returnArray[] = "duplicate";
  666. return $returnArray; //return noresults if there are no results
  667. } else {
  668. $returnArray[] = "error";
  669. return $returnArray; //return noresults if there are no results
  670. }
  671. }
  672. }
  673. function adddhl($info) {
  674. //convert object to array
  675. $info = (array)$info;
  676. //Create SQL Query
  677. if($info['shippingoverride'] != '') {
  678. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_dhl_based, ec_shippingrate.zone_id)
  679. values(null, '%s', '%s','%s','%s', 1, '%s')",
  680. mysql_real_escape_string($info['shippinglabel']),
  681. mysql_real_escape_string($info['shippingcode']),
  682. mysql_real_escape_string($info['shipping_order']),
  683. mysql_real_escape_string($info['shippingoverride']),
  684. mysql_real_escape_string($info['zoneid']));
  685. } else {
  686. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_dhl_based, ec_shippingrate.zone_id)
  687. values(null, '%s', '%s', '%s', null, 1, '%s')",
  688. mysql_real_escape_string($info['shippinglabel']),
  689. mysql_real_escape_string($info['shippingcode']),
  690. mysql_real_escape_string($info['shipping_order']),
  691. mysql_real_escape_string($info['zoneid']));
  692. }
  693. //Run query on database;
  694. mysql_query($sql);
  695. //if no errors, return their current Client ID
  696. //if results, convert to an array for use in flash
  697. if(!mysql_error()) {
  698. $returnArray[] ="success";
  699. return($returnArray); //return array results if there are some
  700. } else {
  701. $sqlerror = mysql_error();
  702. $error = explode(" ", $sqlerror);
  703. if ($error[0] == "Duplicate") {
  704. $returnArray[] = "duplicate";
  705. return $returnArray; //return noresults if there are no results
  706. } else {
  707. $returnArray[] = mysql_error();
  708. return $returnArray; //return noresults if there are no results
  709. }
  710. }
  711. }
  712. /////////////////////////////////////////////////////////////////////////////////
  713. //AUS POST BASED SHIPPING
  714. /////////////////////////////////////////////////////////////////////////////////
  715. function getauspost() {
  716. //Create SQL Query
  717. $query= mysql_query("SELECT SQL_CALC_FOUND_ROWS ec_shippingrate.* FROM ec_shippingrate WHERE ec_shippingrate.is_auspost_based = 1 ORDER BY ec_shippingrate.shipping_order ASC");
  718. $totalquery=mysql_query("SELECT FOUND_ROWS()");
  719. $totalrows = mysql_fetch_object($totalquery);
  720. //if results, convert to an array for use in flash
  721. if(mysql_num_rows($query) > 0) {
  722. while ($row=mysql_fetch_object($query)) {
  723. $row->totalrows=$totalrows;
  724. $returnArray[] = $row;
  725. }
  726. return($returnArray); //return array results if there are some
  727. } else {
  728. $returnArray[] = "noresults";
  729. return $returnArray; //return noresults if there are no results
  730. }
  731. }
  732. function deleteauspost($keyfield) {
  733. //Create SQL Query
  734. $deletesql = $this->escape("DELETE FROM ec_shippingrate WHERE ec_shippingrate.shippingrate_id = '%s'", $keyfield);
  735. //Run query on database;
  736. mysql_query($deletesql);
  737. //if no errors, return their current Client ID
  738. //if results, convert to an array for use in flash
  739. if(!mysql_error()) {
  740. $returnArray[] ="success";
  741. return($returnArray); //return array results if there are some
  742. } else {
  743. $returnArray[] = "error";
  744. return $returnArray; //return noresults if there are no results
  745. }
  746. }
  747. function updateauspost($keyfield, $info) {
  748. //convert object to array
  749. $info = (array)$info;
  750. //Create SQL Query
  751. if($info['shippingoverride'] != '') {
  752. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_auspost_based, ec_shippingrate.zone_id)
  753. values('".$keyfield."', '%s', '%s','%s', '%s', 1, '%s')",
  754. mysql_real_escape_string($info['shippinglabel']),
  755. mysql_real_escape_string($info['shippingcode']),
  756. mysql_real_escape_string($info['shipping_order']),
  757. mysql_real_escape_string($info['shippingoverride']),
  758. mysql_real_escape_string($info['zoneid']));
  759. } else {
  760. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_auspost_based, ec_shippingrate.zone_id)
  761. values('".$keyfield."', '%s', '%s', '%s', null, 1, '%s')",
  762. mysql_real_escape_string($info['shippinglabel']),
  763. mysql_real_escape_string($info['shippingcode']),
  764. mysql_real_escape_string($info['shipping_order']),
  765. mysql_real_escape_string($info['zoneid']));
  766. }
  767. //Run query on database;
  768. mysql_query($sql);
  769. //if no errors, return their current Client ID
  770. //if results, convert to an array for use in flash
  771. if(!mysql_error()) {
  772. $returnArray[] ="success";
  773. return($returnArray); //return array results if there are some
  774. } else {
  775. $sqlerror = mysql_error();
  776. $error = explode(" ", $sqlerror);
  777. if ($error[0] == "Duplicate") {
  778. $returnArray[] = "duplicate";
  779. return $returnArray; //return noresults if there are no results
  780. } else {
  781. $returnArray[] = "error";
  782. return $returnArray; //return noresults if there are no results
  783. }
  784. }
  785. }
  786. function addauspost($info) {
  787. //convert object to array
  788. $info = (array)$info;
  789. //Create SQL Query
  790. if($info['shippingoverride'] != '') {
  791. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_auspost_based, ec_shippingrate.zone_id)
  792. values(null, '%s', '%s','%s','%s', 1, '%s')",
  793. mysql_real_escape_string($info['shippinglabel']),
  794. mysql_real_escape_string($info['shippingcode']),
  795. mysql_real_escape_string($info['shipping_order']),
  796. mysql_real_escape_string($info['shippingoverride']),
  797. mysql_real_escape_string($info['zoneid']));
  798. } else {
  799. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_auspost_based, ec_shippingrate.zone_id)
  800. values(null, '%s', '%s', '%s', null, 1, '%s')",
  801. mysql_real_escape_string($info['shippinglabel']),
  802. mysql_real_escape_string($info['shippingcode']),
  803. mysql_real_escape_string($info['shipping_order']),
  804. mysql_real_escape_string($info['zoneid']));
  805. }
  806. //Run query on database;
  807. mysql_query($sql);
  808. //if no errors, return their current Client ID
  809. //if results, convert to an array for use in flash
  810. if(!mysql_error()) {
  811. $returnArray[] ="success";
  812. return($returnArray); //return array results if there are some
  813. } else {
  814. $sqlerror = mysql_error();
  815. $error = explode(" ", $sqlerror);
  816. if ($error[0] == "Duplicate") {
  817. $returnArray[] = "duplicate";
  818. return $returnArray; //return noresults if there are no results
  819. } else {
  820. $returnArray[] = mysql_error();
  821. return $returnArray; //return noresults if there are no results
  822. }
  823. }
  824. }
  825. /////////////////////////////////////////////////////////////////////////////////
  826. //UPS BASED SHIPPING
  827. /////////////////////////////////////////////////////////////////////////////////
  828. function getups() {
  829. //Create SQL Query
  830. $query= mysql_query("SELECT SQL_CALC_FOUND_ROWS ec_shippingrate.* FROM ec_shippingrate WHERE ec_shippingrate.is_ups_based = 1 ORDER BY ec_shippingrate.shipping_order ASC");
  831. $totalquery=mysql_query("SELECT FOUND_ROWS()");
  832. $totalrows = mysql_fetch_object($totalquery);
  833. //if results, convert to an array for use in flash
  834. if(mysql_num_rows($query) > 0) {
  835. while ($row=mysql_fetch_object($query)) {
  836. $row->totalrows=$totalrows;
  837. $returnArray[] = $row;
  838. }
  839. return($returnArray); //return array results if there are some
  840. } else {
  841. $returnArray[] = "noresults";
  842. return $returnArray; //return noresults if there are no results
  843. }
  844. }
  845. function deleteups($keyfield) {
  846. //Create SQL Query
  847. $deletesql = $this->escape("DELETE FROM ec_shippingrate WHERE ec_shippingrate.shippingrate_id = '%s'", $keyfield);
  848. //Run query on database;
  849. mysql_query($deletesql);
  850. //if no errors, return their current Client ID
  851. //if results, convert to an array for use in flash
  852. if(!mysql_error()) {
  853. $returnArray[] ="success";
  854. return($returnArray); //return array results if there are some
  855. } else {
  856. $returnArray[] = "error";
  857. return $returnArray; //return noresults if there are no results
  858. }
  859. }
  860. function updateups($keyfield, $info) {
  861. //convert object to array
  862. $info = (array)$info;
  863. //Create SQL Query
  864. if($info['shippingoverride'] != '') {
  865. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_ups_based, ec_shippingrate.zone_id)
  866. values('".$keyfield."', '%s', '%s','%s', '%s', 1, '%s')",
  867. mysql_real_escape_string($info['shippinglabel']),
  868. mysql_real_escape_string($info['shippingcode']),
  869. mysql_real_escape_string($info['shipping_order']),
  870. mysql_real_escape_string($info['shippingoverride']),
  871. mysql_real_escape_string($info['zoneid']));
  872. } else {
  873. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_ups_based, ec_shippingrate.zone_id)
  874. values('".$keyfield."', '%s', '%s', '%s', null, 1, '%s')",
  875. mysql_real_escape_string($info['shippinglabel']),
  876. mysql_real_escape_string($info['shippingcode']),
  877. mysql_real_escape_string($info['shipping_order']),
  878. mysql_real_escape_string($info['zoneid']));
  879. }
  880. //Run query on database;
  881. mysql_query($sql);
  882. //if no errors, return their current Client ID
  883. //if results, convert to an array for use in flash
  884. if(!mysql_error()) {
  885. $returnArray[] ="success";
  886. return($returnArray); //return array results if there are some
  887. } else {
  888. $sqlerror = mysql_error();
  889. $error = explode(" ", $sqlerror);
  890. if ($error[0] == "Duplicate") {
  891. $returnArray[] = "duplicate";
  892. return $returnArray; //return noresults if there are no results
  893. } else {
  894. $returnArray[] = "error";
  895. return $returnArray; //return noresults if there are no results
  896. }
  897. }
  898. }
  899. function addups($info) {
  900. //convert object to array
  901. $info = (array)$info;
  902. //Create SQL Query
  903. if($info['shippingoverride'] != '') {
  904. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_ups_based, ec_shippingrate.zone_id)
  905. values(null, '%s', '%s','%s','%s', 1, '%s')",
  906. mysql_real_escape_string($info['shippinglabel']),
  907. mysql_real_escape_string($info['shippingcode']),
  908. mysql_real_escape_string($info['shipping_order']),
  909. mysql_real_escape_string($info['shippingoverride']),
  910. mysql_real_escape_string($info['zoneid']));
  911. } else {
  912. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_ups_based, ec_shippingrate.zone_id)
  913. values(null, '%s', '%s', '%s', null, 1, '%s')",
  914. mysql_real_escape_string($info['shippinglabel']),
  915. mysql_real_escape_string($info['shippingcode']),
  916. mysql_real_escape_string($info['shipping_order']),
  917. mysql_real_escape_string($info['zoneid']));
  918. }
  919. //Run query on database;
  920. mysql_query($sql);
  921. //if no errors, return their current Client ID
  922. //if results, convert to an array for use in flash
  923. if(!mysql_error()) {
  924. $returnArray[] ="success";
  925. return($returnArray); //return array results if there are some
  926. } else {
  927. $sqlerror = mysql_error();
  928. $error = explode(" ", $sqlerror);
  929. if ($error[0] == "Duplicate") {
  930. $returnArray[] = "duplicate";
  931. return $returnArray; //return noresults if there are no results
  932. } else {
  933. $returnArray[] = mysql_error();
  934. return $returnArray; //return noresults if there are no results
  935. }
  936. }
  937. }
  938. /////////////////////////////////////////////////////////////////////////////////
  939. //USPS BASED SHIPPING
  940. /////////////////////////////////////////////////////////////////////////////////
  941. function getusps() {
  942. //Create SQL Query
  943. $query= mysql_query("SELECT SQL_CALC_FOUND_ROWS ec_shippingrate.* FROM ec_shippingrate WHERE ec_shippingrate.is_usps_based = 1 ORDER BY ec_shippingrate.shipping_order ASC");
  944. $totalquery=mysql_query("SELECT FOUND_ROWS()");
  945. $totalrows = mysql_fetch_object($totalquery);
  946. //if results, convert to an array for use in flash
  947. if(mysql_num_rows($query) > 0) {
  948. while ($row=mysql_fetch_object($query)) {
  949. $row->totalrows=$totalrows;
  950. $returnArray[] = $row;
  951. }
  952. return($returnArray); //return array results if there are some
  953. } else {
  954. $returnArray[] = "noresults";
  955. return $returnArray; //return noresults if there are no results
  956. }
  957. }
  958. function deleteusps($keyfield) {
  959. //Create SQL Query
  960. $deletesql = $this->escape("DELETE FROM ec_shippingrate WHERE ec_shippingrate.shippingrate_id = '%s'", $keyfield);
  961. //Run query on database;
  962. mysql_query($deletesql);
  963. //if no errors, return their current Client ID
  964. //if results, convert to an array for use in flash
  965. if(!mysql_error()) {
  966. $returnArray[] ="success";
  967. return($returnArray); //return array results if there are some
  968. } else {
  969. $returnArray[] = "error";
  970. return $returnArray; //return noresults if there are no results
  971. }
  972. }
  973. function updateusps($keyfield, $info) {
  974. //convert object to array
  975. $info = (array)$info;
  976. //Create SQL Query
  977. if($info['shippingoverride'] != '') {
  978. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_usps_based, ec_shippingrate.zone_id)
  979. values('".$keyfield."', '%s', '%s','%s','%s', 1, '%s')",
  980. mysql_real_escape_string($info['shippinglabel']),
  981. mysql_real_escape_string($info['shippingcode']),
  982. mysql_real_escape_string($info['shipping_order']),
  983. mysql_real_escape_string($info['shippingoverride']),
  984. mysql_real_escape_string($info['zoneid']));
  985. } else {
  986. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_usps_based, ec_shippingrate.zone_id)
  987. values('".$keyfield."', '%s','%s', '%s', null, 1, '%s')",
  988. mysql_real_escape_string($info['shippinglabel']),
  989. mysql_real_escape_string($info['shippingcode']),
  990. mysql_real_escape_string($info['shipping_order']),
  991. mysql_real_escape_string($info['zoneid']));
  992. }
  993. //Run query on database;
  994. mysql_query($sql);
  995. //if no errors, return their current Client ID
  996. //if results, convert to an array for use in flash
  997. if(!mysql_error()) {
  998. $returnArray[] ="success";
  999. return($returnArray); //return array results if there are some
  1000. } else {
  1001. $sqlerror = mysql_error();
  1002. $error = explode(" ", $sqlerror);
  1003. if ($error[0] == "Duplicate") {
  1004. $returnArray[] = "duplicate";
  1005. return $returnArray; //return noresults if there are no results
  1006. } else {
  1007. $returnArray[] = "error";
  1008. return $returnArray; //return noresults if there are no results
  1009. }
  1010. }
  1011. }
  1012. function addusps($info) {
  1013. //convert object to array
  1014. $info = (array)$info;
  1015. //Create SQL Query
  1016. if($info['shippingoverride'] != '') {
  1017. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_usps_based, ec_shippingrate.zone_id)
  1018. values(null, '%s', '%s','%s','%s', 1, '%s')",
  1019. mysql_real_escape_string($info['shippinglabel']),
  1020. mysql_real_escape_string($info['shippingcode']),
  1021. mysql_real_escape_string($info['shipping_order']),
  1022. mysql_real_escape_string($info['shippingoverride']),
  1023. mysql_real_escape_string($info['zoneid']));
  1024. } else {
  1025. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_usps_based, ec_shippingrate.zone_id)
  1026. values(null, '%s', '%s', '%s', null, 1, '%s')",
  1027. mysql_real_escape_string($info['shippinglabel']),
  1028. mysql_real_escape_string($info['shippingcode']),
  1029. mysql_real_escape_string($info['shipping_order']),
  1030. mysql_real_escape_string($info['zoneid']));
  1031. }
  1032. //Run query on database;
  1033. mysql_query($sql);
  1034. //if no errors, return their current Client ID
  1035. //if results, convert to an array for use in flash
  1036. if(!mysql_error()) {
  1037. $returnArray[] ="success";
  1038. return($returnArray); //return array results if there are some
  1039. } else {
  1040. $sqlerror = mysql_error();
  1041. $error = explode(" ", $sqlerror);
  1042. if ($error[0] == "Duplicate") {
  1043. $returnArray[] = "duplicate";
  1044. return $returnArray; //return noresults if there are no results
  1045. } else {
  1046. $returnArray[] = mysql_error();
  1047. return $returnArray; //return noresults if there are no results
  1048. }
  1049. }
  1050. }
  1051. /////////////////////////////////////////////////////////////////////////////////
  1052. //FedEx BASED SHIPPING
  1053. /////////////////////////////////////////////////////////////////////////////////
  1054. function getfedex() {
  1055. //Create SQL Query
  1056. $query= mysql_query("SELECT SQL_CALC_FOUND_ROWS ec_shippingrate.* FROM ec_shippingrate WHERE ec_shippingrate.is_fedex_based = 1 ORDER BY ec_shippingrate.shipping_order ASC");
  1057. $totalquery=mysql_query("SELECT FOUND_ROWS()");
  1058. $totalrows = mysql_fetch_object($totalquery);
  1059. //if results, convert to an array for use in flash
  1060. if(mysql_num_rows($query) > 0) {
  1061. while ($row=mysql_fetch_object($query)) {
  1062. $row->totalrows=$totalrows;
  1063. $returnArray[] = $row;
  1064. }
  1065. return($returnArray); //return array results if there are some
  1066. } else {
  1067. $returnArray[] = "noresults";
  1068. return $returnArray; //return noresults if there are no results
  1069. }
  1070. }
  1071. function deletefedex($keyfield) {
  1072. //Create SQL Query
  1073. $deletesql = $this->escape("DELETE FROM ec_shippingrate WHERE ec_shippingrate.shippingrate_id = '%s'", $keyfield);
  1074. //Run query on database;
  1075. mysql_query($deletesql);
  1076. //if no errors, return their current Client ID
  1077. //if results, convert to an array for use in flash
  1078. if(!mysql_error()) {
  1079. $returnArray[] ="success";
  1080. return($returnArray); //return array results if there are some
  1081. } else {
  1082. $returnArray[] = "error";
  1083. return $returnArray; //return noresults if there are no results
  1084. }
  1085. }
  1086. function updatefedex($keyfield, $info) {
  1087. //convert object to array
  1088. $info = (array)$info;
  1089. //Create SQL Query
  1090. if($info['shippingoverride'] != '') {
  1091. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order,ec_shippingrate.shipping_override_rate, ec_shippingrate.is_fedex_based, ec_shippingrate.zone_id)
  1092. values('".$keyfield."', '%s', '%s', '%s','%s', 1, '%s')",
  1093. mysql_real_escape_string($info['shippinglabel']),
  1094. mysql_real_escape_string($info['shippingcode']),
  1095. mysql_real_escape_string($info['shipping_order']),
  1096. mysql_real_escape_string($info['shippingoverride']),
  1097. mysql_real_escape_string($info['zoneid']));
  1098. } else {
  1099. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_fedex_based, ec_shippingrate.zone_id)
  1100. values('".$keyfield."', '%s', '%s', '%s', null, 1, '%s')",
  1101. mysql_real_escape_string($info['shippinglabel']),
  1102. mysql_real_escape_string($info['shippingcode']),
  1103. mysql_real_escape_string($info['shipping_order']),
  1104. mysql_real_escape_string($info['zoneid']));
  1105. }
  1106. //Run query on database;
  1107. mysql_query($sql);
  1108. //if no errors, return their current Client ID
  1109. //if results, convert to an array for use in flash
  1110. if(!mysql_error()) {
  1111. $returnArray[] ="success";
  1112. return($returnArray); //return array results if there are some
  1113. } else {
  1114. $sqlerror = mysql_error();
  1115. $error = explode(" ", $sqlerror);
  1116. if ($error[0] == "Duplicate") {
  1117. $returnArray[] = "duplicate";
  1118. return $returnArray; //return noresults if there are no results
  1119. } else {
  1120. $returnArray[] = "error";
  1121. return $returnArray; //return noresults if there are no results
  1122. }
  1123. }
  1124. }
  1125. function addfedex($info) {
  1126. //convert object to array
  1127. $info = (array)$info;
  1128. //Create SQL Query
  1129. if($info['shippingoverride'] != '') {
  1130. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order,ec_shippingrate.shipping_override_rate, ec_shippingrate.is_fedex_based, ec_shippingrate.zone_id)
  1131. values(null, '%s', '%s','%s', '%s', 1, '%s')",
  1132. mysql_real_escape_string($info['shippinglabel']),
  1133. mysql_real_escape_string($info['shippingcode']),
  1134. mysql_real_escape_string($info['shipping_order']),
  1135. mysql_real_escape_string($info['shippingoverride']),
  1136. mysql_real_escape_string($info['zoneid']));
  1137. } else {
  1138. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_label, ec_shippingrate.shipping_code, ec_shippingrate.shipping_order, ec_shippingrate.shipping_override_rate, ec_shippingrate.is_fedex_based, ec_shippingrate.zone_id)
  1139. values(null, '%s','%s', '%s', null, 1, '%s')",
  1140. mysql_real_escape_string($info['shippinglabel']),
  1141. mysql_real_escape_string($info['shippingcode']),
  1142. mysql_real_escape_string($info['shipping_order']),
  1143. mysql_real_escape_string($info['zoneid']));
  1144. }
  1145. //Run query on database;
  1146. mysql_query($sql);
  1147. //if no errors, return their current Client ID
  1148. //if results, convert to an array for use in flash
  1149. if(!mysql_error()) {
  1150. $returnArray[] ="success";
  1151. return($returnArray); //return array results if there are some
  1152. } else {
  1153. $sqlerror = mysql_error();
  1154. $error = explode(" ", $sqlerror);
  1155. if ($error[0] == "Duplicate") {
  1156. $returnArray[] = "duplicate";
  1157. return $returnArray; //return noresults if there are no results
  1158. } else {
  1159. $returnArray[] = mysql_error();
  1160. return $returnArray; //return noresults if there are no results
  1161. }
  1162. }
  1163. }
  1164. //shipping functions
  1165. function updateexpeditedrates($rate) {
  1166. //Create SQL Query
  1167. $sql = sprintf("UPDATE ec_setting SET ec_setting.shipping_expedite_rate='%s' WHERE ec_setting.setting_id = 1",
  1168. mysql_real_escape_string($rate));
  1169. //Run query on database;
  1170. mysql_query($sql);
  1171. //if no errors, return their current Client ID
  1172. //if results, convert to an array for use in flash
  1173. if(!mysql_error()) {
  1174. $returnArray[] ="success";
  1175. return($returnArray); //return array results if there are some
  1176. } else {
  1177. $sqlerror = mysql_error();
  1178. $error = explode(" ", $sqlerror);
  1179. if ($error[0] == "Duplicate") {
  1180. $returnArray[] = "duplicate";
  1181. return $returnArray; //return noresults if there are no results
  1182. } else {
  1183. $returnArray[] = "error";
  1184. return $returnArray; //return noresults if there are no results
  1185. }
  1186. }
  1187. }
  1188. /////////////////////////////////////////////////////////////////////////////////
  1189. //METHOD BASED SHIPPING
  1190. /////////////////////////////////////////////////////////////////////////////////
  1191. function getmethodshippingrates() {
  1192. //Create SQL Query
  1193. $query= mysql_query("SELECT SQL_CALC_FOUND_ROWS ec_shippingrate.* FROM ec_shippingrate WHERE ec_shippingrate.is_method_based = 1 ORDER BY ec_shippingrate.shipping_order ASC");
  1194. $totalquery=mysql_query("SELECT FOUND_ROWS()");
  1195. $totalrows = mysql_fetch_object($totalquery);
  1196. //if results, convert to an array for use in flash
  1197. if(mysql_num_rows($query) > 0) {
  1198. while ($row=mysql_fetch_object($query)) {
  1199. $row->totalrows=$totalrows;
  1200. $returnArray[] = $row;
  1201. }
  1202. return($returnArray); //return array results if there are some
  1203. } else {
  1204. $returnArray[] = "noresults";
  1205. return $returnArray; //return noresults if there are no results
  1206. }
  1207. }
  1208. function deleteshippingmethodrate($keyfield) {
  1209. //Create SQL Query
  1210. $deletesql = $this->escape("DELETE FROM ec_shippingrate WHERE ec_shippingrate.shippingrate_id = '%s'", $keyfield);
  1211. //Run query on database;
  1212. mysql_query($deletesql);
  1213. //if no errors, return their current Client ID
  1214. //if results, convert to an array for use in flash
  1215. if(!mysql_error()) {
  1216. $returnArray[] ="success";
  1217. return($returnArray); //return array results if there are some
  1218. } else {
  1219. $returnArray[] = "error";
  1220. return $returnArray; //return noresults if there are no results
  1221. }
  1222. }
  1223. function updateshippingmethodrate($keyfield, $rate) {
  1224. //convert object to array
  1225. $rate = (array)$rate;
  1226. //Create SQL Query
  1227. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_rate, ec_shippingrate.shipping_label, ec_shippingrate.shipping_order, ec_shippingrate.is_method_based, ec_shippingrate.zone_id)
  1228. values('".$keyfield."', '%s', '%s', '%s', 1, '%s')",
  1229. mysql_real_escape_string($rate['shippingrate']),
  1230. mysql_real_escape_string($rate['shippinglabel']),
  1231. mysql_real_escape_string($rate['shippingorder']),
  1232. mysql_real_escape_string($rate['zoneid']));
  1233. //Run query on database;
  1234. mysql_query($sql);
  1235. //if no errors, return their current Client ID
  1236. //if results, convert to an array for use in flash
  1237. if(!mysql_error()) {
  1238. $returnArray[] ="success";
  1239. return($returnArray); //return array results if there are some
  1240. } else {
  1241. $sqlerror = mysql_error();
  1242. $error = explode(" ", $sqlerror);
  1243. if ($error[0] == "Duplicate") {
  1244. $returnArray[] = "duplicate";
  1245. return $returnArray; //return noresults if there are no results
  1246. } else {
  1247. $returnArray[] = "error";
  1248. return $returnArray; //return noresults if there are no results
  1249. }
  1250. }
  1251. }
  1252. function addshippingmethodrate($rate) {
  1253. //convert object to array
  1254. $rate = (array)$rate;
  1255. //Create SQL Query
  1256. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.shipping_rate, ec_shippingrate.shipping_label, ec_shippingrate.shipping_order, ec_shippingrate.is_method_based, ec_shippingrate.zone_id)
  1257. values(null, '%s', '%s', '%s', 1, '%s')",
  1258. mysql_real_escape_string($rate['shippingrate']),
  1259. mysql_real_escape_string($rate['shippinglabel']),
  1260. mysql_real_escape_string($rate['shippingorder']),
  1261. mysql_real_escape_string($rate['zoneid']));
  1262. //Run query on database;
  1263. mysql_query($sql);
  1264. //if no errors, return their current Client ID
  1265. //if results, convert to an array for use in flash
  1266. if(!mysql_error()) {
  1267. $returnArray[] ="success";
  1268. return($returnArray); //return array results if there are some
  1269. } else {
  1270. $sqlerror = mysql_error();
  1271. $error = explode(" ", $sqlerror);
  1272. if ($error[0] == "Duplicate") {
  1273. $returnArray[] = "duplicate";
  1274. return $returnArray; //return noresults if there are no results
  1275. } else {
  1276. $returnArray[] = mysql_error();
  1277. return $returnArray; //return noresults if there are no results
  1278. }
  1279. }
  1280. }
  1281. /////////////////////////////////////////////////////////////////////////////////
  1282. //WEIGHT BASED SHIPPING
  1283. /////////////////////////////////////////////////////////////////////////////////
  1284. function getweightshippingrates() {
  1285. //Create SQL Query
  1286. $query= mysql_query("SELECT SQL_CALC_FOUND_ROWS ec_shippingrate.* FROM ec_shippingrate WHERE ec_shippingrate.is_weight_based = 1 ORDER BY ec_shippingrate.trigger_rate ASC");
  1287. $totalquery=mysql_query("SELECT FOUND_ROWS()");
  1288. $totalrows = mysql_fetch_object($totalquery);
  1289. //if results, convert to an array for use in flash
  1290. if(mysql_num_rows($query) > 0) {
  1291. while ($row=mysql_fetch_object($query)) {
  1292. $row->totalrows=$totalrows;
  1293. $returnArray[] = $row;
  1294. }
  1295. return($returnArray); //return array results if there are some
  1296. } else {
  1297. $returnArray[] = "noresults";
  1298. return $returnArray; //return noresults if there are no results
  1299. }
  1300. }
  1301. function deleteshippingweightrate($keyfield) {
  1302. //Create SQL Query
  1303. $deletesql = $this->escape("DELETE FROM ec_shippingrate WHERE ec_shippingrate.shippingrate_id = '%s'", $keyfield);
  1304. //Run query on database;
  1305. mysql_query($deletesql);
  1306. //if no errors, return their current Client ID
  1307. //if results, convert to an array for use in flash
  1308. if(!mysql_error()) {
  1309. $returnArray[] ="success";
  1310. return($returnArray); //return array results if there are some
  1311. } else {
  1312. $returnArray[] = "error";
  1313. return $returnArray; //return noresults if there are no results
  1314. }
  1315. }
  1316. function updateshippingweightrate($keyfield, $rate) {
  1317. //convert object to array
  1318. $rate = (array)$rate;
  1319. //Create SQL Query
  1320. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.trigger_rate, ec_shippingrate.shipping_rate, ec_shippingrate.is_weight_based, ec_shippingrate.zone_id)
  1321. values('".$keyfield."', '%s', '%s', 1, '%s')",
  1322. mysql_real_escape_string($rate['triggerrate']),
  1323. mysql_real_escape_string($rate['shippingrate']),
  1324. mysql_real_escape_string($rate['zoneid']));
  1325. //Run query on database;
  1326. mysql_query($sql);
  1327. //if no errors, return their current Client ID
  1328. //if results, convert to an array for use in flash
  1329. if(!mysql_error()) {
  1330. $returnArray[] ="success";
  1331. return($returnArray); //return array results if there are some
  1332. } else {
  1333. $sqlerror = mysql_error();
  1334. $error = explode(" ", $sqlerror);
  1335. if ($error[0] == "Duplicate") {
  1336. $returnArray[] = "duplicate";
  1337. return $returnArray; //return noresults if there are no results
  1338. } else {
  1339. $returnArray[] = "error";
  1340. return $returnArray; //return noresults if there are no results
  1341. }
  1342. }
  1343. }
  1344. function addshippingweightrate($rate) {
  1345. //convert object to array
  1346. $rate = (array)$rate;
  1347. //Create SQL Query
  1348. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.trigger_rate, ec_shippingrate.shipping_rate, ec_shippingrate.is_weight_based, ec_shippingrate.zone_id)
  1349. values(null, '%s', '%s', 1, '%s')",
  1350. mysql_real_escape_string($rate['triggerrate']),
  1351. mysql_real_escape_string($rate['shippingrate']),
  1352. mysql_real_escape_string($rate['zoneid']));
  1353. //Run query on database;
  1354. mysql_query($sql);
  1355. //if no errors, return their current Client ID
  1356. //if results, convert to an array for use in flash
  1357. if(!mysql_error()) {
  1358. $returnArray[] ="success";
  1359. return($returnArray); //return array results if there are some
  1360. } else {
  1361. $sqlerror = mysql_error();
  1362. $error = explode(" ", $sqlerror);
  1363. if ($error[0] == "Duplicate") {
  1364. $returnArray[] = "duplicate";
  1365. return $returnArray; //return noresults if there are no results
  1366. } else {
  1367. $returnArray[] = mysql_error();
  1368. return $returnArray; //return noresults if there are no results
  1369. }
  1370. }
  1371. }
  1372. /////////////////////////////////////////////////////////////////////////////////
  1373. //PRICE BASED SHIPPING
  1374. /////////////////////////////////////////////////////////////////////////////////
  1375. function getpriceshippingrates() {
  1376. //Create SQL Query
  1377. $query= mysql_query("SELECT SQL_CALC_FOUND_ROWS ec_shippingrate.* FROM ec_shippingrate WHERE ec_shippingrate.is_price_based = 1 ORDER BY ec_shippingrate.trigger_rate ASC");
  1378. $totalquery=mysql_query("SELECT FOUND_ROWS()");
  1379. $totalrows = mysql_fetch_object($totalquery);
  1380. //if results, convert to an array for use in flash
  1381. if(mysql_num_rows($query) > 0) {
  1382. while ($row=mysql_fetch_object($query)) {
  1383. $row->totalrows=$totalrows;
  1384. $returnArray[] = $row;
  1385. }
  1386. return($returnArray); //return array results if there are some
  1387. } else {
  1388. $returnArray[] = "noresults";
  1389. return $returnArray; //return noresults if there are no results
  1390. }
  1391. }
  1392. function deleteshippingpricerate($keyfield) {
  1393. //Create SQL Query
  1394. $deletesql = $this->escape("DELETE FROM ec_shippingrate WHERE ec_shippingrate.shippingrate_id = '%s'", $keyfield);
  1395. //Run query on database;
  1396. mysql_query($deletesql);
  1397. //if no errors, return their current Client ID
  1398. //if results, convert to an array for use in flash
  1399. if(!mysql_error()) {
  1400. $returnArray[] ="success";
  1401. return($returnArray); //return array results if there are some
  1402. } else {
  1403. $returnArray[] = "error";
  1404. return $returnArray; //return noresults if there are no results
  1405. }
  1406. }
  1407. function updateshippingpricerate($keyfield, $rate) {
  1408. //convert object to array
  1409. $rate = (array)$rate;
  1410. //Create SQL Query
  1411. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.trigger_rate, ec_shippingrate.shipping_rate, ec_shippingrate.is_price_based, ec_shippingrate.zone_id)
  1412. values('".$keyfield."', '%s', '%s', 1, '%s')",
  1413. mysql_real_escape_string($rate['triggerrate']),
  1414. mysql_real_escape_string($rate['shippingrate']),
  1415. mysql_real_escape_string($rate['zoneid']));
  1416. //Run query on database;
  1417. mysql_query($sql);
  1418. //if no errors, return their current Client ID
  1419. //if results, convert to an array for use in flash
  1420. if(!mysql_error()) {
  1421. $returnArray[] ="success";
  1422. return($returnArray); //return array results if there are some
  1423. } else {
  1424. $sqlerror = mysql_error();
  1425. $error = explode(" ", $sqlerror);
  1426. if ($error[0] == "Duplicate") {
  1427. $returnArray[] = "duplicate";
  1428. return $returnArray; //return noresults if there are no results
  1429. } else {
  1430. $returnArray[] = "error";
  1431. return $returnArray; //return noresults if there are no results
  1432. }
  1433. }
  1434. }
  1435. function addshippingpricerate($rate) {
  1436. //convert object to array
  1437. $rate = (array)$rate;
  1438. //Create SQL Query
  1439. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.trigger_rate, ec_shippingrate.shipping_rate, ec_shippingrate.is_price_based, ec_shippingrate.zone_id)
  1440. values(null, '%s', '%s', 1, '%s')",
  1441. mysql_real_escape_string($rate['triggerrate']),
  1442. mysql_real_escape_string($rate['shippingrate']),
  1443. mysql_real_escape_string($rate['zoneid']));
  1444. //Run query on database;
  1445. mysql_query($sql);
  1446. //if no errors, return their current Client ID
  1447. //if results, convert to an array for use in flash
  1448. if(!mysql_error()) {
  1449. $returnArray[] ="success";
  1450. return($returnArray); //return array results if there are some
  1451. } else {
  1452. $sqlerror = mysql_error();
  1453. $error = explode(" ", $sqlerror);
  1454. if ($error[0] == "Duplicate") {
  1455. $returnArray[] = "duplicate";
  1456. return $returnArray; //return noresults if there are no results
  1457. } else {
  1458. $returnArray[] = mysql_error();
  1459. return $returnArray; //return noresults if there are no results
  1460. }
  1461. }
  1462. }
  1463. /////////////////////////////////////////////////////////////////////////////////
  1464. //PRICE BASED SHIPPING
  1465. /////////////////////////////////////////////////////////////////////////////////
  1466. function getpercentageshippingrates() {
  1467. //Create SQL Query
  1468. $query= mysql_query("SELECT SQL_CALC_FOUND_ROWS ec_shippingrate.* FROM ec_shippingrate WHERE ec_shippingrate.is_percentage_based = 1 ORDER BY ec_shippingrate.trigger_rate ASC");
  1469. $totalquery=mysql_query("SELECT FOUND_ROWS()");
  1470. $totalrows = mysql_fetch_object($totalquery);
  1471. //if results, convert to an array for use in flash
  1472. if(mysql_num_rows($query) > 0) {
  1473. while ($row=mysql_fetch_object($query)) {
  1474. $row->totalrows=$totalrows;
  1475. $returnArray[] = $row;
  1476. }
  1477. return($returnArray); //return array results if there are some
  1478. } else {
  1479. $returnArray[] = "noresults";
  1480. return $returnArray; //return noresults if there are no results
  1481. }
  1482. }
  1483. function deleteshippingpercentagerate($keyfield) {
  1484. //Create SQL Query
  1485. $deletesql = $this->escape("DELETE FROM ec_shippingrate WHERE ec_shippingrate.shippingrate_id = '%s'", $keyfield);
  1486. //Run query on database;
  1487. mysql_query($deletesql);
  1488. //if no errors, return their current Client ID
  1489. //if results, convert to an array for use in flash
  1490. if(!mysql_error()) {
  1491. $returnArray[] ="success";
  1492. return($returnArray); //return array results if there are some
  1493. } else {
  1494. $returnArray[] = "error";
  1495. return $returnArray; //return noresults if there are no results
  1496. }
  1497. }
  1498. function updateshippingpercentagerate($keyfield, $rate) {
  1499. //convert object to array
  1500. $rate = (array)$rate;
  1501. //Create SQL Query
  1502. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.trigger_rate, ec_shippingrate.shipping_rate, ec_shippingrate.is_percentage_based, ec_shippingrate.zone_id)
  1503. values('".$keyfield."', '%s', '%s', 1, '%s')",
  1504. mysql_real_escape_string($rate['triggerrate']),
  1505. mysql_real_escape_string($rate['shippingrate']),
  1506. mysql_real_escape_string($rate['zoneid']));
  1507. //Run query on database;
  1508. mysql_query($sql);
  1509. //if no errors, return their current Client ID
  1510. //if results, convert to an array for use in flash
  1511. if(!mysql_error()) {
  1512. $returnArray[] ="success";
  1513. return($returnArray); //return array results if there are some
  1514. } else {
  1515. $sqlerror = mysql_error();
  1516. $error = explode(" ", $sqlerror);
  1517. if ($error[0] == "Duplicate") {
  1518. $returnArray[] = "duplicate";
  1519. return $returnArray; //return noresults if there are no results
  1520. } else {
  1521. $returnArray[] = "error";
  1522. return $returnArray; //return noresults if there are no results
  1523. }
  1524. }
  1525. }
  1526. function addshippingpercentagerate($rate) {
  1527. //convert object to array
  1528. $rate = (array)$rate;
  1529. //Create SQL Query
  1530. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.trigger_rate, ec_shippingrate.shipping_rate, ec_shippingrate.is_percentage_based, ec_shippingrate.zone_id)
  1531. values(null, '%s', '%s', 1, '%s')",
  1532. mysql_real_escape_string($rate['triggerrate']),
  1533. mysql_real_escape_string($rate['shippingrate']),
  1534. mysql_real_escape_string($rate['zoneid']));
  1535. //Run query on database;
  1536. mysql_query($sql);
  1537. //if no errors, return their current Client ID
  1538. //if results, convert to an array for use in flash
  1539. if(!mysql_error()) {
  1540. $returnArray[] ="success";
  1541. return($returnArray); //return array results if there are some
  1542. } else {
  1543. $sqlerror = mysql_error();
  1544. $error = explode(" ", $sqlerror);
  1545. if ($error[0] == "Duplicate") {
  1546. $returnArray[] = "duplicate";
  1547. return $returnArray; //return noresults if there are no results
  1548. } else {
  1549. $returnArray[] = mysql_error();
  1550. return $returnArray; //return noresults if there are no results
  1551. }
  1552. }
  1553. }
  1554. /////////////////////////////////////////////////////////////////////////////////
  1555. //QUANTITY BASED SHIPPING
  1556. /////////////////////////////////////////////////////////////////////////////////
  1557. function getquantityshippingrates() {
  1558. //Create SQL Query
  1559. $query= mysql_query("SELECT SQL_CALC_FOUND_ROWS ec_shippingrate.* FROM ec_shippingrate WHERE ec_shippingrate.is_quantity_based = 1 ORDER BY ec_shippingrate.trigger_rate ASC");
  1560. $totalquery=mysql_query("SELECT FOUND_ROWS()");
  1561. $totalrows = mysql_fetch_object($totalquery);
  1562. //if results, convert to an array for use in flash
  1563. if(mysql_num_rows($query) > 0) {
  1564. while ($row=mysql_fetch_object($query)) {
  1565. $row->totalrows=$totalrows;
  1566. $returnArray[] = $row;
  1567. }
  1568. return($returnArray); //return array results if there are some
  1569. } else {
  1570. $returnArray[] = "noresults";
  1571. return $returnArray; //return noresults if there are no results
  1572. }
  1573. }
  1574. function deleteshippingquantityrate($keyfield) {
  1575. //Create SQL Query
  1576. $deletesql = $this->escape("DELETE FROM ec_shippingrate WHERE ec_shippingrate.shippingrate_id = '%s'", $keyfield);
  1577. //Run query on database;
  1578. mysql_query($deletesql);
  1579. //if no errors, return their current Client ID
  1580. //if results, convert to an array for use in flash
  1581. if(!mysql_error()) {
  1582. $returnArray[] ="success";
  1583. return($returnArray); //return array results if there are some
  1584. } else {
  1585. $returnArray[] = "error";
  1586. return $returnArray; //return noresults if there are no results
  1587. }
  1588. }
  1589. function updateshippingquantityrate($keyfield, $rate) {
  1590. //convert object to array
  1591. $rate = (array)$rate;
  1592. //Create SQL Query
  1593. $sql = sprintf("Replace into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.trigger_rate, ec_shippingrate.shipping_rate, ec_shippingrate.is_quantity_based, ec_shippingrate.zone_id)
  1594. values('".$keyfield."', '%s', '%s', 1, '%s')",
  1595. mysql_real_escape_string($rate['triggerrate']),
  1596. mysql_real_escape_string($rate['shippingrate']),
  1597. mysql_real_escape_string($rate['zoneid']));
  1598. //Run query on database;
  1599. mysql_query($sql);
  1600. //if no errors, return their current Client ID
  1601. //if results, convert to an array for use in flash
  1602. if(!mysql_error()) {
  1603. $returnArray[] ="success";
  1604. return($returnArray); //return array results if there are some
  1605. } else {
  1606. $sqlerror = mysql_error();
  1607. $error = explode(" ", $sqlerror);
  1608. if ($error[0] == "Duplicate") {
  1609. $returnArray[] = "duplicate";
  1610. return $returnArray; //return noresults if there are no results
  1611. } else {
  1612. $returnArray[] = "error";
  1613. return $returnArray; //return noresults if there are no results
  1614. }
  1615. }
  1616. }
  1617. function addshippingquantityrate($rate) {
  1618. //convert object to array
  1619. $rate = (array)$rate;
  1620. //Create SQL Query
  1621. $sql = sprintf("Insert into ec_shippingrate(ec_shippingrate.shippingrate_id, ec_shippingrate.trigger_rate, ec_shippingrate.shipping_rate, ec_shippingrate.is_quantity_based, ec_shippingrate.zone_id)
  1622. values(null, '%s', '%s', 1, '%s')",
  1623. mysql_real_escape_string($rate['triggerrate']),
  1624. mysql_real_escape_string($rate['shippingrate']),
  1625. mysql_real_escape_string($rate['zoneid']));
  1626. //Run query on database;
  1627. mysql_query($sql);
  1628. //if no errors, return their current Client ID
  1629. //if results, convert to an array for use in flash
  1630. if(!mysql_error()) {
  1631. $returnArray[] ="success";
  1632. return($returnArray); //return array results if there are some
  1633. } else {
  1634. $sqlerror = mysql_error();
  1635. $error = explode(" ", $sqlerror);
  1636. if ($error[0] == "Duplicate") {
  1637. $returnArray[] = "duplicate";
  1638. return $returnArray; //return noresults if there are no results
  1639. } else {
  1640. $returnArray[] = mysql_error();
  1641. return $returnArray; //return noresults if there are no results
  1642. }
  1643. }
  1644. }
  1645. }//close class
  1646. ?>