PageRenderTime 64ms CodeModel.GetById 35ms RepoModel.GetById 0ms app.codeStats 0ms

/inc/amfphp/Amfphp/Services/ec_admin_taxes.php

https://github.com/EmranAhmed/wp-easycart
PHP | 234 lines | 146 code | 38 blank | 50 comment | 45 complexity | 33ea19eb894f8a5556009ee74a28b526 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_taxes
  19. {
  20. function ec_admin_taxes() {
  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 == 'gettaxes') return array('admin');
  43. else if($methodName == 'savetax') return array('admin');
  44. else if($methodName == 'deletetax') return array('admin');
  45. else return null;
  46. }
  47. //HELPER - used to escape out SQL calls
  48. function escape($sql)
  49. {
  50. $args = func_get_args();
  51. foreach($args as $key => $val)
  52. {
  53. $args[$key] = mysql_real_escape_string($val);
  54. }
  55. $args[0] = $sql;
  56. return call_user_func_array('sprintf', $args);
  57. }
  58. //tax functions
  59. function gettaxes() {
  60. //Create SQL Query
  61. $query= mysql_query("SELECT SQL_CALC_FOUND_ROWS ec_taxrate.* FROM ec_taxrate");
  62. $totalquery=mysql_query("SELECT FOUND_ROWS()");
  63. $totalrows = mysql_fetch_object($totalquery);
  64. //if results, convert to an array for use in flash
  65. if(mysql_num_rows($query) > 0) {
  66. while ($row=mysql_fetch_object($query)) {
  67. $row->totalrows=$totalrows;
  68. $returnArray[] = $row;
  69. }
  70. return($returnArray); //return array results if there are some
  71. } else {
  72. $returnArray[] = "noresults";
  73. return $returnArray; //return noresults if there are no results
  74. }
  75. }
  76. function savetax($taxrates) {
  77. //convert object to array
  78. $taxrates = (array)$taxrates;
  79. //country tax
  80. if($taxrates['taxcountryenable'] == 1) {
  81. $sql = $this->escape("DELETE FROM ec_taxrate WHERE ec_taxrate.tax_by_country = 1");
  82. mysql_query($sql);
  83. $sql = sprintf("INSERT into ec_taxrate(ec_taxrate.taxrate_id, ec_taxrate.country_code, ec_taxrate.country_rate, ec_taxrate.tax_by_country)
  84. values(null, '%s', '%s', 1)",
  85. mysql_real_escape_string($taxrates['taxcountryid']),
  86. mysql_real_escape_string($taxrates['taxcountryrate']));
  87. }
  88. //all tax
  89. if($taxrates['taxallenable'] == 1) {
  90. $sql = $this->escape("DELETE FROM ec_taxrate WHERE ec_taxrate.tax_by_all = 1");
  91. mysql_query($sql);
  92. $sql = sprintf("INSERT into ec_taxrate(ec_taxrate.taxrate_id, ec_taxrate.all_rate, ec_taxrate.tax_by_all)
  93. values(null, '%s', 1 )",
  94. mysql_real_escape_string($taxrates['taxallrate']));
  95. }
  96. //duty tax
  97. if($taxrates['taxdutyenable'] == 1) {
  98. $sql = $this->escape("DELETE FROM ec_taxrate WHERE ec_taxrate.tax_by_duty = 1");
  99. mysql_query($sql);
  100. $sql = sprintf("INSERT into ec_taxrate(ec_taxrate.taxrate_id, ec_taxrate.duty_exempt_country_code, ec_taxrate.duty_rate, ec_taxrate.tax_by_duty)
  101. values(null, '%s', '%s', 1)",
  102. mysql_real_escape_string($taxrates['taxdutycountryid']),
  103. mysql_real_escape_string($taxrates['taxdutyrate']));
  104. }
  105. //vat tax
  106. if($taxrates['vattaxcountry'] == 1) {
  107. $sql = $this->escape("DELETE FROM ec_taxrate WHERE ec_taxrate.tax_by_vat = 1 OR ec_taxrate.tax_by_single_vat = 1");
  108. mysql_query($sql);
  109. $sql = sprintf("INSERT into ec_taxrate(ec_taxrate.taxrate_id, ec_taxrate.vat_country_code, ec_taxrate.vat_rate, ec_taxrate.tax_by_vat, ec_taxrate.vat_added, ec_taxrate.vat_included)
  110. values(null, '%s', '%s', 1, '%s', '%s')",
  111. mysql_real_escape_string($taxrates['taxvatcountryid']),
  112. mysql_real_escape_string($taxrates['taxvatrate']),
  113. mysql_real_escape_string($taxrates['vatadded']),
  114. mysql_real_escape_string($taxrates['vatincluded']));
  115. }
  116. //vat tax globally
  117. if($taxrates['vattaxglobally'] == 1) {
  118. $sql = $this->escape("DELETE FROM ec_taxrate WHERE ec_taxrate.tax_by_vat = 1 OR ec_taxrate.tax_by_single_vat = 1");
  119. mysql_query($sql);
  120. $sql = sprintf("INSERT into ec_taxrate(ec_taxrate.taxrate_id, ec_taxrate.vat_country_code, ec_taxrate.vat_rate, ec_taxrate.tax_by_single_vat, ec_taxrate.vat_added, ec_taxrate.vat_included)
  121. values(null, '%s', '%s', 1, '%s', '%s')",
  122. mysql_real_escape_string($taxrates['taxvatcountryid']),
  123. mysql_real_escape_string($taxrates['taxvatrate']),
  124. mysql_real_escape_string($taxrates['vatadded']),
  125. mysql_real_escape_string($taxrates['vatincluded']));
  126. }
  127. //state tax
  128. if($taxrates['taxstateenable'] == 1 && $taxrates['taxstaterate'] != '') {
  129. $sql = $this->escape("DELETE FROM ec_taxrate WHERE ec_taxrate.tax_by_state = 1 AND ec_taxrate.state_code = '".$taxrates['taxstateid']."'");
  130. mysql_query($sql);
  131. $sql = sprintf("INSERT into ec_taxrate(ec_taxrate.taxrate_id, ec_taxrate.state_code, ec_taxrate.state_rate, ec_taxrate.tax_by_state)
  132. values(null, '%s', '%s', 1)",
  133. mysql_real_escape_string($taxrates['taxstateid']),
  134. mysql_real_escape_string($taxrates['taxstaterate']));
  135. }
  136. //Create SQL Query
  137. //Run query on database;
  138. mysql_query($sql);
  139. //if no errors, return their current Client ID
  140. //if results, convert to an array for use in flash
  141. if(!mysql_error()) {
  142. $returnArray[] ="success";
  143. return($returnArray); //return array results if there are some
  144. } else {
  145. $sqlerror = mysql_error();
  146. $error = explode(" ", $sqlerror);
  147. if ($error[0] == "Duplicate") {
  148. $returnArray[] = "duplicate";
  149. return $returnArray; //return noresults if there are no results
  150. } else {
  151. $returnArray[] = "error";
  152. return $returnArray; //return noresults if there are no results
  153. }
  154. }
  155. }
  156. function deletetax($taxrates) {
  157. //convert object to array
  158. $taxrates = (array)$taxrates;
  159. //country tax
  160. if($taxrates['removetaxcountry'] == 1) {
  161. $sql = "DELETE FROM ec_taxrate WHERE ec_taxrate.tax_by_country = 1";
  162. }
  163. //all tax
  164. if($taxrates['removetaxall'] == 1) {
  165. $sql = "DELETE FROM ec_taxrate WHERE ec_taxrate.tax_by_all = 1";
  166. }
  167. //duty tax
  168. if($taxrates['removetaxduty'] == 1) {
  169. $sql = "DELETE FROM ec_taxrate WHERE ec_taxrate.tax_by_duty = 1";
  170. }
  171. //vat tax
  172. if($taxrates['removetaxvat'] == 1) {
  173. $sql = "DELETE FROM ec_taxrate WHERE ec_taxrate.tax_by_vat = 1 OR ec_taxrate.tax_by_single_vat = 1";
  174. }
  175. //remove individual state tax
  176. if($taxrates['removetaxstate'] == 1) {
  177. $sql = "DELETE FROM ec_taxrate WHERE ec_taxrate.tax_by_state = 1 AND ec_taxrate.taxrate_id = ".$taxrates['keyfield']."";
  178. }
  179. //Delete all states, it has been disabled
  180. if($taxrates['removetaxstate'] == 2) {
  181. $sql = "DELETE FROM ec_taxrate WHERE ec_taxrate.tax_by_state = 1";
  182. }
  183. //Run query on database;
  184. mysql_query($sql);
  185. //if no errors, return their current Client ID
  186. //if results, convert to an array for use in flash
  187. if(!mysql_error()) {
  188. $returnArray[] ="success";
  189. return($returnArray); //return array results if there are some
  190. } else {
  191. $returnArray[] = "error";
  192. return $returnArray; //return noresults if there are no results
  193. }
  194. }
  195. }//close class
  196. ?>