PageRenderTime 54ms CodeModel.GetById 22ms RepoModel.GetById 1ms app.codeStats 0ms

/wp-content/plugins/wp-shopping-cart/updates/update-to-3.6.4.php

https://github.com/alx/barceloneta
PHP | 226 lines | 189 code | 35 blank | 2 comment | 34 complexity | d2f3312dea0375d0b6fe0d3fac78d187 MD5 | raw file
  1. <?php
  2. //Add table logged_subscription
  3. if($wpdb->get_var("SHOW TABLES LIKE '".$wpdb->prefix."cart_item_extras'") != ($wpdb->prefix."cart_item_extras")) {
  4. $wpsc_cart_item_extras = "CREATE TABLE `".$wpdb->prefix."cart_item_extras` (
  5. `id` int(11) NOT NULL auto_increment,
  6. `cart_id` int(11) NOT NULL,
  7. `extra_id` int(11) NOT NULL,
  8. PRIMARY KEY (`id`)
  9. ) ENGINE=MyISAM;";
  10. $wpdb->query($wpsc_cart_item_extras);
  11. }
  12. if($wpdb->get_var("SHOW TABLES LIKE '".$wpdb->prefix."extras_values'") != ($wpdb->prefix."extras_values")) {
  13. $wpsc_extras_values= "CREATE TABLE `".$wpdb->prefix."extras_values` (
  14. `id` int(11) NOT NULL auto_increment,
  15. `name` varchar(128) NOT NULL,
  16. `extras_id` int(11) NOT NULL,
  17. PRIMARY KEY (`id`)
  18. ) ENGINE=MyISAM;";
  19. $wpdb->query($wpsc_extras_values);
  20. }
  21. if($wpdb->get_var("SHOW TABLES LIKE '".$wpdb->prefix."item_category_associations'") != ($wpdb->prefix."item_category_associations")) {
  22. $wpsc_extras_values= "CREATE TABLE `".$wpdb->prefix."item_category_associations` (
  23. `id` bigint(20) unsigned NOT NULL auto_increment,
  24. `product_id` bigint(20) unsigned NOT NULL default '0',
  25. `category_id` bigint(20) unsigned NOT NULL default '0',
  26. PRIMARY KEY (`id`),
  27. UNIQUE KEY `product_id` (`product_id`,`category_id`)
  28. ) ENGINE=MyISAM;";
  29. $wpdb->query($wpsc_extras_values);
  30. }
  31. if($wpdb->get_var("SHOW TABLES LIKE '".$wpdb->prefix."extras_values_associations'") != ($wpdb->prefix."extras_values_associations")) {
  32. $wpsc_extras_values= "CREATE TABLE `".$wpdb->prefix."extras_values_associations` (
  33. `id` int(11) NOT NULL auto_increment,
  34. `product_id` int(11) NOT NULL,
  35. `value_id` int(11) NOT NULL,
  36. `price` varchar(20) NOT NULL,
  37. `visible` varchar(1) NOT NULL,
  38. `extras_id` int(11) NOT NULL,
  39. PRIMARY KEY (`id`)
  40. ) ENGINE=MyISAM;";
  41. $wpdb->query($wpsc_extras_values);
  42. }
  43. if($wpdb->get_var("SHOW TABLES LIKE '".$wpdb->prefix."product_extra'") != ($wpdb->prefix."product_extra")) {
  44. $wpsc_extras_values= "CREATE TABLE `".$wpdb->prefix."product_extra` (
  45. `id` int(11) NOT NULL auto_increment,
  46. `name` varchar(128) NOT NULL,
  47. PRIMARY KEY (`id`)
  48. ) ENGINE=MyISAM;";
  49. $wpdb->query($wpsc_extras_values);
  50. }
  51. if($wpdb->get_results("SHOW FULL COLUMNS FROM `".$wpdb->prefix."cart_item_variations` LIKE 'venue_id';",ARRAY_A)) {
  52. $wpdb->query("ALTER TABLE `".$wpdb->prefix."cart_item_variations` CHANGE `venue_id` `value_id` BIGINT( 20 ) UNSIGNED NOT NULL DEFAULT '0' ");
  53. }
  54. if(!$wpdb->get_results("SHOW FULL COLUMNS FROM `".$wpdb->prefix."purchase_logs` LIKE 'find_us';",ARRAY_A)) {
  55. $wpdb->query("ALTER TABLE `".$wpdb->prefix."purchase_logs` ADD `find_us` varchar(255) NOT NULL");
  56. $wpdb->query("ALTER TABLE `".$wpdb->prefix."purchase_logs` ADD `engravetext` varchar(255) default NULL");
  57. $wpdb->query("ALTER TABLE `".$wpdb->prefix."purchase_logs` ADD `closest_store` varchar(255) default NULL");
  58. }
  59. if(!$wpdb->get_results("SHOW FULL COLUMNS FROM `".$wpdb->prefix."download_status` LIKE 'uniqueid';",ARRAY_A)) {
  60. $wpdb->query("ALTER TABLE `".$wpdb->prefix."download_status` ADD `uniqueid` VARCHAR( 64 ) NULL AFTER `purchid`;");
  61. $wpdb->query("ALTER TABLE `".$wpdb->prefix."download_status` ADD UNIQUE (`uniqueid`);");
  62. }
  63. if(!$wpdb->get_results("SHOW FULL COLUMNS FROM `".$wpdb->prefix."region_tax` LIKE 'code';",ARRAY_A)) {
  64. $wpdb->query("ALTER TABLE `".$wpdb->prefix."region_tax` ADD `code` char(2) NOT NULL default '' AFTER `name`;");
  65. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'AL' WHERE `name` IN('Alabama')LIMIT 1 ;");
  66. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'AK' WHERE `name` IN('Alaska') LIMIT 1 ;");
  67. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'AZ' WHERE `name` IN('Arizona') LIMIT 1 ;");
  68. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'AR' WHERE `name` IN('Arkansas') LIMIT 1 ;");
  69. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'CA' WHERE `name` IN('California') LIMIT 1 ;");
  70. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'CO' WHERE `name` IN('Colorado') LIMIT 1 ;");
  71. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'CT' WHERE `name` IN('Connecticut') LIMIT 1 ;");
  72. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'DE' WHERE `name` IN('Delaware') LIMIT 1 ;");
  73. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'FL' WHERE `name` IN('Florida') LIMIT 1 ;");
  74. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'GA' WHERE `name` IN('Georgia') LIMIT 1 ;");
  75. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'HI' WHERE `name` IN('Hawaii') LIMIT 1 ;");
  76. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'ID' WHERE`name` IN('Idaho') LIMIT 1 ;");
  77. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'IL' WHERE `name` IN('Illinois') LIMIT 1 ;");
  78. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'IN' WHERE `name` IN('Indiana') LIMIT 1 ;");
  79. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'IA' WHERE `name` IN('Iowa') LIMIT 1 ;");
  80. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'KS' WHERE `name` IN('Kansas') LIMIT 1 ;");
  81. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'KY' WHERE `name` IN('Kentucky') LIMIT 1 ;");
  82. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'LA' WHERE `name` IN('Louisiana') LIMIT 1 ;");
  83. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'ME' WHERE `name` IN('Maine') LIMIT 1 ;");
  84. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'MD' WHERE `name` IN('Maryland') LIMIT 1 ;");
  85. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'MA' WHERE `name` IN('Massachusetts') LIMIT 1 ;");
  86. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'MI' WHERE `name` IN('Michigan') LIMIT 1 ;");
  87. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'MN' WHERE `name` IN('Minnesota') LIMIT 1 ;");
  88. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'MS' WHERE `name` IN('Mississippi') LIMIT 1 ;");
  89. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'MO' WHERE `name` IN('Missouri') LIMIT 1 ;");
  90. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'MT' WHERE `name` IN('Montana') LIMIT 1 ;");
  91. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'NE' WHERE `name` IN('Nebraska') LIMIT 1 ;");
  92. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'NV' WHERE `name` IN('Nevada') LIMIT 1 ;");
  93. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'NH' WHERE `name` IN('New Hampshire') LIMIT 1 ;");
  94. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'NJ' WHERE `name` IN('New Jersey') LIMIT 1 ;");
  95. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'NM' WHERE `name` IN('New Mexico') LIMIT 1 ;");
  96. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'NY' WHERE `name` IN('New York') LIMIT 1 ;");
  97. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'NC' WHERE `name` IN('North Carolina') LIMIT 1 ;");
  98. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'ND' WHERE `name` IN('North Dakota') LIMIT 1 ;");
  99. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'OH' WHERE `name` IN('Ohio') LIMIT 1 ;");
  100. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'OK' WHERE `name` IN('Oklahoma') LIMIT 1 ;");
  101. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'OR' WHERE `name` IN('Oregon') LIMIT 1 ;");
  102. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'PA' WHERE `name` IN('Pennsylvania') LIMIT 1 ;");
  103. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'RI' WHERE `name` IN('Rhode Island') LIMIT 1 ;");
  104. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'SC' WHERE `name` IN('South Carolina') LIMIT 1 ;");
  105. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'SD' WHERE `name` IN('South Dakota') LIMIT 1 ;");
  106. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'TN' WHERE `name` IN('Tennessee') LIMIT 1 ;");
  107. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'TX' WHERE `name` IN('Texas') LIMIT 1 ;");
  108. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'UT' WHERE `name` IN('Utah') LIMIT 1 ;");
  109. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'VT' WHERE `name` IN('Vermont') LIMIT 1 ;");
  110. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'VA' WHERE `name` IN('Virginia') LIMIT 1 ;");
  111. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'WA' WHERE `name` IN('Washington') LIMIT 1 ;");
  112. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'DC' WHERE `name` IN('Washington DC') LIMIT 1 ;");
  113. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'WV' WHERE `name` IN('West Virginia') LIMIT 1 ;");
  114. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'WI' WHERE `name` IN('Wisconsin') LIMIT 1 ;");
  115. $wpdb->query("UPDATE `".$wpdb->prefix."region_tax` SET `code` = 'WY' WHERE `name` IN('Wyoming') LIMIT 1 ;");
  116. }
  117. $coldata = $wpdb->get_results("SHOW FULL COLUMNS FROM `".$wpdb->prefix."purchase_logs` LIKE 'totalprice'",ARRAY_A);
  118. if($coldata[0]['Type'] != "varchar(128)") {
  119. $wpdb->query("ALTER TABLE `".$wpdb->prefix."purchase_logs` CHANGE `totalprice` `totalprice` VARCHAR( 128 ) DEFAULT '0' NOT NULL");
  120. }
  121. $coldata = $wpdb->get_results("SHOW FULL COLUMNS FROM `".$wpdb->prefix."purchase_logs` LIKE 'base_shipping'",ARRAY_A);
  122. if($coldata[0]['Type'] != "varchar(128)") {
  123. $wpdb->query("ALTER TABLE `".$wpdb->prefix."purchase_logs` CHANGE `base_shipping` `base_shipping` VARCHAR( 128 ) DEFAULT '0' NOT NULL");
  124. }
  125. if(!$wpdb->get_results("SHOW FULL COLUMNS FROM `".$wpdb->prefix."product_list` LIKE 'no_shipping';",ARRAY_A)) {
  126. $wpdb->query("ALTER TABLE `".$wpdb->prefix."product_list` ADD `no_shipping` varchar(1) NOT NULL DEFAULT '0' AFTER `donation`;");
  127. }
  128. if(!$wpdb->get_results("SHOW FULL COLUMNS FROM `".$wpdb->prefix."wpsc_coupon_codes` LIKE 'every_product';",ARRAY_A)) {
  129. $wpdb->query("ALTER TABLE `".$wpdb->prefix."wpsc_coupon_codes` ADD `every_product` varchar(255) NOT NULL AFTER `active`");
  130. }
  131. if($wpdb->get_var("SHOW TABLES LIKE '{$wpdb->prefix}wpsc_categorisation_groups'") != ($wpdb->prefix."wpsc_categorisation_groups")) {
  132. $wpsc_categorisation_groups= "CREATE TABLE `{$wpdb->prefix}wpsc_categorisation_groups` (
  133. `id` bigint(20) unsigned NOT NULL auto_increment,
  134. `name` varchar(255) NOT NULL,
  135. `description` text NOT NULL,
  136. `active` varchar(1) NOT NULL default '1',
  137. `default` varchar(1) NOT NULL default '0',
  138. PRIMARY KEY (`id`),
  139. KEY `group_name` (`name`)
  140. ) ENGINE=MyISAM ;
  141. ";
  142. $wpdb->query($wpsc_categorisation_groups);
  143. $wpdb->query("INSERT INTO `{$wpdb->prefix}wpsc_categorisation_groups` (`id`, `name`, `description`, `active`, `default`) VALUES (1, 'Categories', 'Product Categories', '1', '1')");
  144. $wpdb->query("INSERT INTO `{$wpdb->prefix}wpsc_categorisation_groups` (`id`, `name`, `description`, `active`, `default`) VALUES (2, 'Brands', 'Product Brands', '1', '0')");
  145. }
  146. if($wpdb->get_var("SELECT COUNT(*) FROM `{$wpdb->prefix}wpsc_categorisation_groups`") < 1) {
  147. $wpdb->query("INSERT INTO `{$wpdb->prefix}wpsc_categorisation_groups` (`id`, `name`, `description`, `active`, `default`) VALUES (1, 'Categories', 'Product Categories', '1', '1')");
  148. $wpdb->query("INSERT INTO `{$wpdb->prefix}wpsc_categorisation_groups` (`id`, `name`, `description`, `active`, `default`) VALUES (2, 'Brands', 'Product Brands', '1', '0')");
  149. }
  150. if(!$wpdb->get_results("SHOW FULL COLUMNS FROM `{$wpdb->prefix}product_categories` LIKE 'group_id';",ARRAY_A)) {
  151. $wpdb->query("ALTER TABLE `{$wpdb->prefix}product_categories` ADD `group_id` BIGINT( 20 ) UNSIGNED NOT NULL DEFAULT '1' AFTER `id`");
  152. $wpdb->query("ALTER TABLE `{$wpdb->prefix}product_categories` ADD INDEX ( `group_id` ) ;");
  153. }
  154. $brand_group = $wpdb->get_row("SELECT * FROM `{$wpdb->prefix}wpsc_categorisation_groups` WHERE `name` IN ( 'Brands' ) ",ARRAY_A);
  155. if($brand_group == null) {
  156. $wpdb->get_row("INSERT INTO `{$wpdb->prefix}wpsc_categorisation_groups` ( `name`, `description`, `active`, `default`) VALUES ( 'Brands', 'Product Brands', '1', '0');", ARRAY_A);
  157. $brand_group = $wpdb->get_row("SELECT * FROM `{$wpdb->prefix}wpsc_categorisation_groups` WHERE `name` IN ( 'Brands' ) ",ARRAY_A);
  158. }
  159. $converted_brand_count = $wpdb->get_var("SELECT COUNT(*) FROM `{$wpdb->prefix}product_categories` WHERE `group_id` IN({$brand_group['id']}) AND `active` IN('1') ");
  160. if($converted_brand_count <= 0) {
  161. $brands = $wpdb->get_results("SELECT * FROM `{$wpdb->prefix}product_brands` ",ARRAY_A);
  162. if(count($brands) > 0 ) {
  163. foreach($brands as $brand) {
  164. $tidied_name = trim($brand['name']);
  165. $tidied_name = strtolower($tidied_name);
  166. $url_name = preg_replace(array("/(\s)+/","/[^\w-]+/"), array("-", ''), $tidied_name);
  167. if($url_name != $category_data['nice-name']) {
  168. $similar_names = $wpdb->get_row("SELECT COUNT(*) AS `count`, MAX(REPLACE(`nice-name`, '$url_name', '')) AS `max_number` FROM `".$wpdb->prefix."product_categories` WHERE `nice-name` REGEXP '^($url_name){1}(0-9)*$' AND `id` NOT IN ('".(int)$category_data['id']."') ",ARRAY_A);
  169. //exit("<pre>".print_r($similar_names,true)."</pre>");
  170. $extension_number = '';
  171. if($similar_names['count'] > 0) {
  172. $extension_number = (int)$similar_names['max_number']+1;
  173. }
  174. $url_name .= $extension_number;
  175. }
  176. $wpdb->query( "INSERT INTO `{$wpdb->prefix}product_categories` ( `group_id`, `name`, `nice-name`, `description`, `image`, `fee`, `active`, `category_parent`, `order`) VALUES ( {$brand_group['id']}, '{$brand['name']}', '{$url_name}', '{$brand['description']}', '', '0', '1', 0, 0)");
  177. }
  178. }
  179. }
  180. if(!$wpdb->get_results("SHOW FULL COLUMNS FROM `{$wpdb->prefix}wpsc_productmeta` LIKE 'custom';",ARRAY_A)) {
  181. $wpdb->query("ALTER TABLE `{$wpdb->prefix}wpsc_productmeta` ADD `custom` VARCHAR( 1 ) NOT NULL DEFAULT '0' AFTER `meta_value`;");
  182. $wpdb->query("ALTER TABLE `{$wpdb->prefix}wpsc_productmeta` ADD INDEX ( `custom` ) ;");
  183. }
  184. if(!$wpdb->get_results("SHOW FULL COLUMNS FROM `{$wpdb->prefix}download_status` LIKE 'ip_number';",ARRAY_A)) {
  185. $wpdb->query("ALTER TABLE `{$wpdb->prefix}download_status` ADD `ip_number` varchar(255) NOT NULL AFTER `downloads`;");
  186. }
  187. if(!$wpdb->get_results("SHOW FULL COLUMNS FROM `{$wpdb->prefix}product_list` LIKE 'weight';",ARRAY_A)) {
  188. $wpdb->query("ALTER TABLE `{$wpdb->prefix}product_list` ADD `weight` INT( 11 ) NOT NULL DEFAULT 0 AFTER `price`;");
  189. $wpdb->query("ALTER TABLE `{$wpdb->prefix}product_list` ADD `weight_unit` VARCHAR( 10 ) NOT NULL AFTER `weight`;");
  190. }
  191. ?>