PageRenderTime 53ms CodeModel.GetById 24ms RepoModel.GetById 0ms app.codeStats 0ms

/livehelp/_lib/functions.data.db.update.inc.php

https://bitbucket.org/spivovartsev/citrus.ua
PHP | 496 lines | 439 code | 37 blank | 20 comment | 106 complexity | 09b3047de11d4a9d4b46798e74397312 MD5 | raw file
Possible License(s): BSD-3-Clause
  1. <?php
  2. /****************************************************************************************
  3. * LiveZilla functions.data.db.update.inc.php
  4. *
  5. * Copyright 2011 LiveZilla GmbH
  6. * All rights reserved.
  7. * LiveZilla is a registered trademark.
  8. *
  9. * Improper changes to this file may cause critical errors.
  10. ***************************************************************************************/
  11. function updateDatabase($_version,$_link,$_prefix)
  12. {
  13. global $GROUPS;
  14. $versions = array("3.1.8.1","3.1.8.2","3.1.8.3","3.1.8.4","3.1.8.5","3.1.8.6","3.2.0.0","3.2.0.1","3.2.0.2","3.2.0.3","3.3.0.0","3.3.1.0","3.3.1.1","3.3.1.2","3.3.1.3","3.3.2.0","3.3.2.1","3.3.2.2");
  15. if(!in_array($_version,$versions))
  16. return "Invalid version! (".$_version.")";
  17. while($_version != VERSION)
  18. {
  19. if($_version == $versions[0])
  20. $_version = $versions[1];
  21. if($_version == $versions[1])
  22. $_version = $versions[2];
  23. if($_version == $versions[2])
  24. {
  25. $result = up_3183_3184($_prefix,$_link);
  26. if($result === TRUE)
  27. $_version = $versions[3];
  28. else
  29. return $result;
  30. }
  31. if($_version == $versions[3])
  32. $_version = $versions[4];
  33. if($_version == $versions[4])
  34. $_version = $versions[5];
  35. if($_version == $versions[5])
  36. {
  37. $result = up_3186_3200($_prefix,$_link);
  38. if($result === TRUE)
  39. $_version = $versions[6];
  40. else
  41. return $result;
  42. }
  43. if($_version == $versions[6])
  44. {
  45. $result = up_3200_3201($_prefix,$_link);
  46. if($result === TRUE)
  47. $_version = $versions[7];
  48. else
  49. return $result;
  50. }
  51. if($_version == $versions[7])
  52. $_version = $versions[9];
  53. if($_version == $versions[8])
  54. $_version = $versions[9];
  55. if($_version == $versions[9])
  56. {
  57. $result = up_3203_3300($_prefix,$_link);
  58. if($result === TRUE)
  59. $_version = $versions[10];
  60. else
  61. return $result;
  62. }
  63. if($_version == $versions[10])
  64. {
  65. $result = up_3300_3310($_prefix,$_link);
  66. if($result === TRUE)
  67. $_version = $versions[11];
  68. else
  69. return $result;
  70. }
  71. if($_version == $versions[11])
  72. {
  73. $result = up_3310_3311($_prefix,$_link);
  74. if($result === TRUE)
  75. $_version = $versions[12];
  76. else
  77. return $result;
  78. }
  79. if($_version == $versions[12])
  80. {
  81. $result = up_3311_3312($_prefix,$_link);
  82. if($result === TRUE)
  83. $_version = $versions[13];
  84. else
  85. return $result;
  86. }
  87. if($_version == $versions[13])
  88. $_version = $versions[14];
  89. if($_version == $versions[14])
  90. {
  91. $result = up_3313_3320($_prefix,$_link);
  92. if($result === TRUE)
  93. $_version = $versions[15];
  94. else
  95. return $result;
  96. }
  97. if($_version == $versions[15])
  98. $_version = $versions[16];
  99. if($_version == $versions[16])
  100. $_version = $versions[17];
  101. }
  102. @mysql_query("UPDATE `".@mysql_real_escape_string($_prefix)."info` SET `version`='" . VERSION . "'",$_link);
  103. return true;
  104. }
  105. function processCommandList($_commands,$_link)
  106. {
  107. foreach($_commands as $key => $parts)
  108. {
  109. $result = @mysql_query($parts[1],$_link);
  110. if(!$result && mysql_errno() != $parts[0] && $parts[0] != 0)
  111. return mysql_errno() . ": " . mysql_error() . "\r\n\r\nMySQL Query: " . $parts[1];
  112. }
  113. return true;
  114. }
  115. function up_3313_3320($_prefix,$_link)
  116. {
  117. $commands[] = array(1050,"RENAME TABLE `".@mysql_real_escape_string($_prefix)."event_action_invitations` TO `".@mysql_real_escape_string($_prefix)."event_action_overlays`;");
  118. $commands[] = array(1060,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."events` ADD `search_phrase` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '';");
  119. return processCommandList($commands,$_link);
  120. }
  121. function up_3311_3312($_prefix,$_link)
  122. {
  123. $commands[] = array(1060,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_posts` ADD `translation_iso` VARCHAR( 10 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '' AFTER `translation`;");
  124. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_archive` CHANGE `endtime` `endtime` INT( 11 ) UNSIGNED NOT NULL DEFAULT '0';");
  125. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_archive` CHANGE `closed` `closed` INT( 11 ) UNSIGNED NOT NULL DEFAULT '0';");
  126. return processCommandList($commands,$_link);
  127. }
  128. function up_3310_3311($_prefix,$_link)
  129. {
  130. $commands[] = array(1060,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."visitor_browser_urls` ADD `untouched` text COLLATE utf8_bin NOT NULL;");
  131. return processCommandList($commands,$_link);
  132. }
  133. function up_3300_3310($_prefix,$_link)
  134. {
  135. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."stats_aggs_visitors` CHANGE `js` `js` INT UNSIGNED NOT NULL DEFAULT '0';");
  136. $commands[] = array(1060,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."visitor_chat_operators` ADD `dtime` INT UNSIGNED NOT NULL DEFAULT '0';");
  137. $commands[] = array(1060,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_archive` ADD `iso_country` VARCHAR( 5 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '' AFTER `iso_language`;");
  138. $commands[] = array(1025,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."visitor_goals` DROP FOREIGN KEY `visitor_goals_ibfk_2`;");
  139. return processCommandList($commands,$_link);
  140. }
  141. function up_3203_3300($_prefix,$_link)
  142. {
  143. // DROP TABLES
  144. $commands[] = array(1051,"DROP TABLE `".@mysql_real_escape_string($_prefix)."chat_rooms`;");
  145. $commands[] = array(1051,"DROP TABLE `".@mysql_real_escape_string($_prefix)."data`;");
  146. // RENAME
  147. $commands[] = array(1050,"RENAME TABLE `".@mysql_real_escape_string($_prefix)."chats` TO `".@mysql_real_escape_string($_prefix)."chat_archive`;");
  148. $commands[] = array(1050,"RENAME TABLE `".@mysql_real_escape_string($_prefix)."internal` TO `".@mysql_real_escape_string($_prefix)."operator_status`;");
  149. $commands[] = array(1050,"RENAME TABLE `".@mysql_real_escape_string($_prefix)."logins` TO `".@mysql_real_escape_string($_prefix)."operator_logins`;");
  150. // TRUNCATE
  151. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."alerts`;");
  152. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."chat_requests`;");
  153. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."chat_posts`;");
  154. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."events`;");
  155. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."event_actions`;");
  156. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."event_urls`;");
  157. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."event_action_invitations`;");
  158. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."event_action_receivers`;");
  159. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."event_action_senders`;");
  160. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."event_action_website_pushs`;");
  161. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."event_triggers`;");
  162. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."operator_status`;");
  163. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."ticket_editors`;");
  164. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."ticket_messages`;");
  165. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."tickets`;");
  166. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."chat_requests`;");
  167. $commands[] = array(1050,"TRUNCATE TABLE `".@mysql_real_escape_string($_prefix)."website_pushs`;");
  168. // ENGINES
  169. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."alerts` ENGINE = InnoDB;");
  170. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."events` ENGINE = InnoDB;");
  171. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_actions` ENGINE = InnoDB;");
  172. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_action_internals` ENGINE = InnoDB;");
  173. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_action_invitations` ENGINE = InnoDB;");
  174. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_action_receivers` ENGINE = InnoDB;");
  175. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_action_senders` ENGINE = InnoDB;");
  176. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_action_website_pushs` ENGINE = InnoDB;");
  177. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_triggers` ENGINE = InnoDB;");
  178. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."tickets` ENGINE = InnoDB;");
  179. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."ticket_editors` ENGINE = InnoDB;");
  180. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."ticket_messages` ENGINE = InnoDB;");
  181. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_urls` ENGINE = InnoDB;");
  182. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_archive` ENGINE = InnoDB;");
  183. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_requests` ENGINE = InnoDB;");
  184. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."website_pushs` ENGINE = InnoDB;");
  185. // FIELDS DROP
  186. $commands[] = array(1091,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."operator_status` DROP `id`;");
  187. $commands[] = array(1091,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_archive` DROP `id`;");
  188. // FIELDS CHANGE
  189. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_posts` CHANGE `sender` `sender` VARCHAR( 65 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '';");
  190. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_posts` CHANGE `receiver` `receiver` VARCHAR( 65 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '';");
  191. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."predefined` CHANGE `lang_iso` `lang_iso` VARCHAR( 5 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL;");
  192. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."profiles` CHANGE `languages` `languages` VARCHAR( 1024 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL;");
  193. $commands[] = array(1050,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."ticket_editors` CHANGE `ticket_id` `ticket_id` VARCHAR( 32 ) NOT NULL DEFAULT '';");
  194. $commands[] = array(0,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."operator_status` ADD `time_confirmed` INT( 11 ) UNSIGNED NOT NULL;");
  195. $commands[] = array(0,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."operator_status` CHANGE `time_confirmed` `confirmed` INT( 11 ) UNSIGNED NOT NULL;");
  196. // FIELDS ADD
  197. $commands[] = array(1060,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_posts` ADD `translation` MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL AFTER `text`;");
  198. $commands[] = array(1060,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_requests` ADD `closed` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0' AFTER `declined`;");
  199. $commands[] = array(1060,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_archive` ADD `transcript_receiver` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '' AFTER `transcript_sent`;");
  200. $commands[] = array(1060,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_archive` ADD `customs` TEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL;");
  201. $commands[] = array(1060,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."info` ADD `gtspan` INT UNSIGNED NOT NULL DEFAULT '0';");
  202. // CREATE TABLES
  203. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."event_funnels` (`eid` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `uid` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `ind` smallint(5) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`eid`,`uid`), KEY `uid` (`uid`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  204. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."event_goals` (`event_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `goal_id` int(10) unsigned NOT NULL DEFAULT '0', UNIQUE KEY `prim` (`event_id`,`goal_id`), KEY `target_id` (`goal_id`), KEY `event_id` (`event_id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  205. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."goals` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `title` varchar(255) COLLATE utf8_bin NOT NULL, `description` text COLLATE utf8_bin NOT NULL, `conversion` tinyint(1) unsigned NOT NULL DEFAULT '0', `ind` int(10) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`), UNIQUE KEY `title` (`title`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;");
  206. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs` ( `year` smallint(4) unsigned NOT NULL DEFAULT '0', `month` tinyint(3) unsigned NOT NULL DEFAULT '0', `day` tinyint(3) unsigned NOT NULL DEFAULT '0', `time` int(10) unsigned NOT NULL DEFAULT '0', `mtime` int(10) unsigned NOT NULL DEFAULT '0',`sessions` int(10) unsigned NOT NULL DEFAULT '0',`visitors_unique` int(10) unsigned NOT NULL DEFAULT '0', `conversions` int(10) unsigned NOT NULL DEFAULT '0', `aggregated` tinyint(1) unsigned NOT NULL DEFAULT '0', `chats_forwards` int(10) unsigned NOT NULL DEFAULT '0', `chats_posts_internal` int(10) unsigned NOT NULL DEFAULT '0', `chats_posts_external` int(10) unsigned NOT NULL DEFAULT '0', `avg_time_site` double unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`year`,`month`,`day`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  207. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_availabilities` ( `year` smallint(5) unsigned NOT NULL DEFAULT '0', `month` tinyint(3) unsigned NOT NULL DEFAULT '0', `day` tinyint(3) unsigned NOT NULL DEFAULT '0', `hour` tinyint(2) unsigned NOT NULL DEFAULT '0', `user_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `status` tinyint(1) unsigned NOT NULL DEFAULT '0', `seconds` int(4) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`year`,`month`,`day`,`user_id`,`hour`,`status`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  208. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_browsers` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`browser` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`browser`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  209. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_chats` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`hour` tinyint(2) unsigned NOT NULL DEFAULT '0',`user_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '',`amount` int(10) unsigned NOT NULL DEFAULT '0',`accepted` int(10) unsigned NOT NULL DEFAULT '0',`declined` int(10) unsigned NOT NULL DEFAULT '0',`avg_duration` double unsigned NOT NULL DEFAULT '0',`avg_waiting_time` double unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`user_id`,`hour`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  210. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_cities` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`city` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`city`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  211. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_countries` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`country` varchar(2) COLLATE utf8_bin NOT NULL DEFAULT '',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`country`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  212. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_crawlers` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`crawler` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`crawler`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  213. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_domains` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`domain` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`domain`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  214. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_durations` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`duration` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`duration`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  215. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_goals` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`goal` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`goal`),KEY `target` (`goal`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  216. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_isps` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`isp` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`isp`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  217. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_languages` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`language` varchar(5) COLLATE utf8_bin NOT NULL,`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`language`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  218. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_pages` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`url` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`url`),KEY `url_id` (`url`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  219. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_pages_entrance` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`url` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`url`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  220. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_pages_exit` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`url` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`url`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  221. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_queries` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`query` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`query`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  222. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_referrers` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`referrer` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`referrer`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  223. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_regions` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`region` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`region`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  224. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_resolutions` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`resolution` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`resolution`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  225. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_search_engines` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`domain` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`domain`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  226. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_systems` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`system` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`system`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  227. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_visitors` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`hour` tinyint(3) unsigned NOT NULL DEFAULT '0',`visitors_unique` int(10) unsigned NOT NULL DEFAULT '0',`page_impressions` int(10) unsigned NOT NULL DEFAULT '0',`visitors_recurring` int(10) unsigned NOT NULL DEFAULT '0',`bounces` int(10) unsigned NOT NULL DEFAULT '0',`search_engine` int(10) unsigned NOT NULL DEFAULT '0',`from_referrer` int(10) unsigned NOT NULL DEFAULT '0',`browser_instances` int(10) unsigned NOT NULL DEFAULT '0',`js` int(10) unsigned NOT NULL DEFAULT '0',`on_chat_page` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`hour`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  228. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."stats_aggs_visits` (`year` smallint(5) unsigned NOT NULL DEFAULT '0',`month` tinyint(3) unsigned NOT NULL DEFAULT '0',`day` tinyint(3) unsigned NOT NULL DEFAULT '0',`visits` int(10) unsigned NOT NULL DEFAULT '0',`amount` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`year`,`month`,`day`,`visits`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  229. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitors` (`id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '',`entrance` int(10) unsigned NOT NULL DEFAULT '0',`last_active` int(10) unsigned NOT NULL DEFAULT '0',`host` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',`ip` varchar(15) COLLATE utf8_bin NOT NULL DEFAULT '',`system` smallint(5) unsigned NOT NULL DEFAULT '0',`browser` smallint(5) unsigned NOT NULL DEFAULT '0',`visits` smallint(5) unsigned NOT NULL DEFAULT '0',`visit_id` varchar(7) COLLATE utf8_bin NOT NULL DEFAULT '',`visit_latest` tinyint(1) unsigned NOT NULL DEFAULT '1',`visit_last` int(10) unsigned NOT NULL DEFAULT '0',`resolution` smallint(5) unsigned NOT NULL DEFAULT '0',`language` varchar(5) COLLATE utf8_bin NOT NULL,`country` varchar(2) COLLATE utf8_bin NOT NULL DEFAULT '',`city` smallint(5) unsigned NOT NULL DEFAULT '0',`region` smallint(5) unsigned NOT NULL DEFAULT '0',`isp` smallint(5) unsigned NOT NULL DEFAULT '0',`timezone` varchar(24) COLLATE utf8_bin NOT NULL DEFAULT '',`latitude` double NOT NULL DEFAULT '0',`longitude` double NOT NULL DEFAULT '0',`geo_result` int(10) unsigned NOT NULL DEFAULT '0',`js` tinyint(1) unsigned NOT NULL DEFAULT '0',`signature` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '',PRIMARY KEY (`id`,`entrance`),UNIQUE KEY `visit_id` (`visit_id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  230. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_browsers` (`id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '',`visitor_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '',`visit_id` varchar(7) COLLATE utf8_bin NOT NULL DEFAULT '',`created` int(10) unsigned NOT NULL DEFAULT '0',`last_active` int(10) unsigned NOT NULL DEFAULT '0',`last_update` varchar(2) COLLATE utf8_bin NOT NULL DEFAULT '',`is_chat` tinyint(1) unsigned NOT NULL DEFAULT '0',`query` int(10) unsigned NOT NULL DEFAULT '0',`fullname` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',`email` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',`company` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',`customs` TEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,`url_entrance` int(10) unsigned NOT NULL DEFAULT '0',`url_exit` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`id`),KEY `visit_id` (`visit_id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  231. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_browser_urls` (`browser_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '',`entrance` int(10) unsigned NOT NULL DEFAULT '0',`referrer` int(10) unsigned NOT NULL DEFAULT '0',`url` int(10) unsigned NOT NULL DEFAULT '0',`params` text COLLATE utf8_bin NOT NULL,PRIMARY KEY (`entrance`,`browser_id`),KEY `browser_id` (`browser_id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  232. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_data_area_codes` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`area_code` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',PRIMARY KEY (`id`),UNIQUE KEY `area_code` (`area_code`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;");
  233. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_data_browsers` (`id` int(11) unsigned NOT NULL AUTO_INCREMENT,`browser` varchar(255) COLLATE utf8_bin NOT NULL,`type` tinyint(1) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`id`),UNIQUE KEY `browser` (`browser`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;");
  234. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_data_cities` (`id` int(11) NOT NULL AUTO_INCREMENT,`city` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',PRIMARY KEY (`id`),UNIQUE KEY `city` (`city`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;");
  235. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_data_crawlers` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`crawler` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',PRIMARY KEY (`id`),UNIQUE KEY `crawler` (`crawler`),UNIQUE KEY `crawler_2` (`crawler`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;");
  236. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_data_domains` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`domain` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',`external` tinyint(1) unsigned NOT NULL DEFAULT '1',`search` tinyint(1) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`id`),UNIQUE KEY `domain` (`domain`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;");
  237. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_data_isps` (`id` int(11) NOT NULL AUTO_INCREMENT,`isp` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',PRIMARY KEY (`id`),UNIQUE KEY `isp` (`isp`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;");
  238. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_data_pages` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`domain` int(10) unsigned NOT NULL DEFAULT '0',`path` int(10) unsigned NOT NULL DEFAULT '0',`title` int(10) unsigned NOT NULL DEFAULT '0',`area_code` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`id`),UNIQUE KEY `UNIQ` (`domain`,`path`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;");
  239. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_data_paths` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`path` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',PRIMARY KEY (`id`),UNIQUE KEY `path` (`path`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;");
  240. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_data_queries` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`query` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',PRIMARY KEY (`id`),UNIQUE KEY `query` (`query`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;");
  241. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_data_regions` (`id` int(11) NOT NULL AUTO_INCREMENT,`region` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',PRIMARY KEY (`id`),UNIQUE KEY `region` (`region`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;");
  242. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_data_resolutions` (`id` int(11) NOT NULL AUTO_INCREMENT,`resolution` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '',PRIMARY KEY (`id`),UNIQUE KEY `resolution` (`resolution`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;");
  243. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_data_systems` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`system` varchar(255) COLLATE utf8_bin NOT NULL,PRIMARY KEY (`id`),UNIQUE KEY `os` (`system`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;");
  244. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_data_titles` (`id` int(10) unsigned NOT NULL AUTO_INCREMENT,`title` varchar(255) COLLATE utf8_bin NOT NULL,`confirmed` int(10) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`id`),UNIQUE KEY `title` (`title`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1;");
  245. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_goals` (`visitor_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '',`goal_id` int(10) unsigned NOT NULL DEFAULT '0',`time` int(10) unsigned NOT NULL DEFAULT '0',`first_visit` tinyint(1) unsigned NOT NULL DEFAULT '0',PRIMARY KEY (`visitor_id`,`goal_id`),KEY `visitor_id` (`visitor_id`),KEY `target_id` (`goal_id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  246. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."ticket_customs` (`ticket_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `custom_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `value` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '', PRIMARY KEY (`ticket_id`,`custom_id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  247. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_chats` (`visitor_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `browser_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `visit_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `chat_id` int(11) unsigned NOT NULL DEFAULT '0', `fullname` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '', `email` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '', `company` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '', `status` tinyint(1) unsigned NOT NULL DEFAULT '0', `typing` tinyint(1) unsigned NOT NULL DEFAULT '0', `waiting` tinyint(1) unsigned NOT NULL DEFAULT '0', `area_code` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '', `first_active` int(10) unsigned NOT NULL DEFAULT '0', `last_active` int(10) unsigned NOT NULL DEFAULT '0',`qpenalty` int(10) unsigned NOT NULL DEFAULT '0',`request_operator` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `request_group` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `question` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',`customs` TEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,`allocated` int(11) unsigned NOT NULL DEFAULT '0', `internal_active` tinyint(1) unsigned NOT NULL DEFAULT '0', `internal_closed` tinyint(1) unsigned NOT NULL DEFAULT '0', `internal_declined` tinyint(1) unsigned NOT NULL DEFAULT '0', `external_active` tinyint(1) unsigned NOT NULL DEFAULT '0', `external_close` tinyint(1) unsigned NOT NULL DEFAULT '0', `exit` int(11) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`visitor_id`,`browser_id`,`visit_id`,`chat_id`), KEY `chat_id` (`chat_id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  248. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."visitor_chat_operators` (`chat_id` int(10) unsigned NOT NULL DEFAULT '0', `user_id` varchar(32) COLLATE utf8_bin NOT NULL,`declined` tinyint(1) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`user_id`,`chat_id`), KEY `chat_id` (`chat_id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  249. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."chat_files` ( `id` varchar(64) COLLATE utf8_bin NOT NULL, `created` int(10) unsigned NOT NULL DEFAULT '0',`file_name` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '', `file_mask` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '', `file_id` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',`chat_id` int(10) unsigned NOT NULL DEFAULT '0', `visitor_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `browser_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `operator_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `error` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '', `permission` tinyint(1) NOT NULL DEFAULT '-1', `download` tinyint(1) unsigned NOT NULL DEFAULT '0',`closed` tinyint(1) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`,`created`), KEY `visitor_id` (`visitor_id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  250. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."chat_forwards` ( `id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `created` int(10) unsigned NOT NULL DEFAULT '0', `sender_operator_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `target_operator_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `target_group_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `visitor_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `browser_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `chat_id` int(11) unsigned NOT NULL DEFAULT '0', `conversation` mediumtext COLLATE utf8_bin NOT NULL, `info_text` mediumtext COLLATE utf8_bin NOT NULL, `processed` tinyint(1) unsigned NOT NULL DEFAULT '0',`received` tinyint(1) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`), KEY `chat_id` (`chat_id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  251. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."operators` (`id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `login_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `first_active` int(10) unsigned NOT NULL DEFAULT '0', `last_active` int(10) unsigned NOT NULL DEFAULT '0', `password` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `status` tinyint(1) unsigned NOT NULL DEFAULT '0', `level` tinyint(1) unsigned NOT NULL DEFAULT '0', `ip` varchar(15) COLLATE utf8_bin NOT NULL DEFAULT '', `typing` tinyint(1) unsigned NOT NULL DEFAULT '0', `visitor_file_sizes` mediumtext COLLATE utf8_bin NOT NULL, `last_chat_allocation` int(10) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  252. $commands[] = array(1050,"CREATE TABLE IF NOT EXISTS `".@mysql_real_escape_string($_prefix)."filters` ( `creator` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `created` int(10) unsigned NOT NULL DEFAULT '0', `editor` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `edited` int(10) unsigned NOT NULL DEFAULT '0', `ip` varchar(15) COLLATE utf8_bin NOT NULL DEFAULT '', `expiredate` int(10) NOT NULL DEFAULT '0', `visitor_id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `reason` text COLLATE utf8_bin NOT NULL, `name` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '', `id` varchar(32) COLLATE utf8_bin NOT NULL DEFAULT '', `active` tinyint(1) unsigned NOT NULL DEFAULT '0', `exertion` tinyint(1) unsigned NOT NULL DEFAULT '0', `languages` text COLLATE utf8_bin NOT NULL, `activeipaddress` tinyint(3) unsigned NOT NULL DEFAULT '0', `activevisitorid` tinyint(3) unsigned NOT NULL DEFAULT '0', `activelanguage` tinyint(3) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;");
  253. // INDEXES
  254. $commands[] = array(1061,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."alerts` ADD INDEX `receiver_user_id` ( `receiver_user_id` );");
  255. $commands[] = array(1061,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_actions` ADD INDEX `event_id` ( `eid` );");
  256. $commands[] = array(1061,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_action_invitations` ADD INDEX `action_id` ( `action_id` );");
  257. $commands[] = array(1061,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_action_receivers` ADD INDEX `action_id` ( `action_id` );");
  258. $commands[] = array(1061,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_action_website_pushs` ADD INDEX `action_id` ( `action_id` );");
  259. $commands[] = array(1061,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_triggers` ADD INDEX `receiver_user_id` ( `receiver_user_id` );");
  260. $commands[] = array(1061,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."ticket_editors` ADD INDEX `ticket_id` ( `ticket_id` );");
  261. $commands[] = array(1061,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."ticket_messages` ADD INDEX `ticket_id` ( `ticket_id` );");
  262. $commands[] = array(1061,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_archive` ADD INDEX `chat_id` ( `chat_id` );");
  263. $commands[] = array(1061,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_requests` ADD INDEX `receiver_browser_id` ( `receiver_browser_id` );");
  264. $commands[] = array(1061,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."website_pushs` ADD INDEX `receiver_browser_id` ( `receiver_browser_id` );");
  265. // PRIMARY
  266. $commands[] = array(1068,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."operator_status` ADD PRIMARY KEY ( `time` , `internal_id` , `status` );");
  267. // REFERENCES
  268. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."alerts` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."alerts_ibfk_1` FOREIGN KEY ( `receiver_user_id` ) REFERENCES `".@mysql_real_escape_string($_prefix)."visitors` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  269. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_funnels` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."event_funnels_ibfk_1` FOREIGN KEY (`uid`) REFERENCES `".@mysql_real_escape_string($_prefix)."event_urls` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  270. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_funnels` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."event_funnels_ibfk_2` FOREIGN KEY (`eid`) REFERENCES `".@mysql_real_escape_string($_prefix)."events` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  271. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_actions` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."event_actions_ibfk_1` FOREIGN KEY (`eid`) REFERENCES `".@mysql_real_escape_string($_prefix)."events` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  272. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_action_invitations` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."event_action_invitations_ibfk_1` FOREIGN KEY (`action_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."event_actions` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  273. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_action_receivers` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."event_action_receivers_ibfk_1` FOREIGN KEY (`action_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."event_actions` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  274. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_action_website_pushs` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."event_action_website_pushs_ibfk_1` FOREIGN KEY (`action_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."event_actions` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  275. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_triggers` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."event_triggers_ibfk_2` FOREIGN KEY (`receiver_user_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."visitors` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  276. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_goals` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."event_goals_ibfk_1` FOREIGN KEY (`event_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."events` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  277. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_goals` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."event_goals_ibfk_2` FOREIGN KEY (`goal_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."goals` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  278. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."event_urls` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."event_urls_ibfk_1` FOREIGN KEY (`eid`) REFERENCES `".@mysql_real_escape_string($_prefix)."events` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  279. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."stats_aggs_goals` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."stats_aggs_goals_ibfk_1` FOREIGN KEY (`goal`) REFERENCES `".@mysql_real_escape_string($_prefix)."goals` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  280. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."stats_aggs_pages` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."stats_aggs_pages_ibfk_1` FOREIGN KEY (`url`) REFERENCES `".@mysql_real_escape_string($_prefix)."visitor_data_pages` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  281. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."ticket_editors` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."ticket_editors_ibfk_1` FOREIGN KEY (`ticket_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."tickets` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  282. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."ticket_messages` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."ticket_messages_ibfk_1` FOREIGN KEY (`ticket_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."tickets` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  283. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."ticket_customs` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."ticket_customs_ibfk_1` FOREIGN KEY (`ticket_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."tickets` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  284. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."visitor_browsers` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."visitor_browsers_ibfk_1` FOREIGN KEY (`visit_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."visitors` (`visit_id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  285. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."visitor_browser_urls` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."visitor_browser_urls_ibfk_1` FOREIGN KEY (`browser_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."visitor_browsers` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  286. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."visitor_goals` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."visitor_goals_ibfk_1` FOREIGN KEY (`visitor_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."visitors` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  287. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."visitor_chats` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."visitor_chats_ibfk_1` FOREIGN KEY (`visitor_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."visitors` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  288. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."visitor_chat_operators` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."visitor_chat_operators_ibfk_1` FOREIGN KEY (`chat_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."visitor_chats` (`chat_id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  289. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_files` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."chat_files_ibfk_1` FOREIGN KEY (`visitor_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."visitors` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  290. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_forwards` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."chat_forwards_ibfk_1` FOREIGN KEY (`chat_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."visitor_chats` (`chat_id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  291. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_requests` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."chat_requests_ibfk_1` FOREIGN KEY (`receiver_browser_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."visitor_browsers` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  292. $commands[] = array(1005,"ALTER TABLE `".@mysql_real_escape_string($_prefix)."website_pushs` ADD CONSTRAINT `".@mysql_real_escape_string($_prefix)."website_pushs_ibfk_1` FOREIGN KEY (`receiver_browser_id`) REFERENCES `".@mysql_real_escape_string($_prefix)."visitor_browsers` (`id`) ON DELETE CASCADE ON UPDATE CASCADE;");
  293. return processCommandList($commands,$_link);
  294. }
  295. function up_3200_3201($_prefix,$_link)
  296. {
  297. $commands = Array();
  298. $commands[] = "ALTER TABLE `".@mysql_real_escape_string($_prefix)."chats` ADD `question` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '';";
  299. $allowedecs = Array(1060);
  300. foreach($commands as $key => $command)
  301. {
  302. $result = @mysql_query($command,$_link);
  303. if(!$result && mysql_errno() != $allowedecs[$key])
  304. return mysql_errno() . ": " . mysql_error() . "\r\n\r\nMySQL Query: " . $commands[$key];
  305. }
  306. return true;
  307. }
  308. function up_3186_3200($_prefix,$_link)
  309. {
  310. $commands = Array();
  311. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."alerts` (`id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `created` int(10) unsigned NOT NULL DEFAULT '0', `receiver_user_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `receiver_browser_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `event_action_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `text` mediumtext CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `displayed` tinyint(1) unsigned NOT NULL DEFAULT '0', `accepted` tinyint(1) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  312. $commands[] = "ALTER TABLE `".@mysql_real_escape_string($_prefix)."predefined` ADD `invitation_auto` MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL AFTER `invitation`";
  313. $commands[] = "ALTER TABLE `".@mysql_real_escape_string($_prefix)."predefined` CHANGE `invitation` `invitation_manual` MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL";
  314. $commands[] = "ALTER TABLE `".@mysql_real_escape_string($_prefix)."predefined` CHANGE `website_push` `website_push_manual` MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL";
  315. $commands[] = "ALTER TABLE `".@mysql_real_escape_string($_prefix)."predefined` ADD `website_push_auto` MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL AFTER `website_push_manual`";
  316. $commands[] = "UPDATE `".@mysql_real_escape_string($_prefix)."predefined` SET `invitation_auto`=`invitation_manual`";
  317. $commands[] = "UPDATE `".@mysql_real_escape_string($_prefix)."predefined` SET `website_push_auto`=`website_push_manual`";
  318. $commands[] = "RENAME TABLE `".@mysql_real_escape_string($_prefix)."rooms` TO `".@mysql_real_escape_string($_prefix)."chat_rooms`;";
  319. $commands[] = "ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_rooms` ADD `creator` varchar(32 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT ''";
  320. $commands[] = "RENAME TABLE `".@mysql_real_escape_string($_prefix)."posts` TO `".@mysql_real_escape_string($_prefix)."chat_posts`;";
  321. $commands[] = "ALTER TABLE `".@mysql_real_escape_string($_prefix)."chat_posts` ADD `chat_id` varchar(32 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '' AFTER `id` ";
  322. $commands[] = "RENAME TABLE `".@mysql_real_escape_string($_prefix)."res` TO `".@mysql_real_escape_string($_prefix)."resources`;";
  323. $commands[] = "ALTER TABLE `".@mysql_real_escape_string($_prefix)."chats` ADD `group_id` varchar(32 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '' AFTER `internal_id`";
  324. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."logins` (`id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',`user_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',`ip` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',`time` int(11) unsigned NOT NULL DEFAULT '0', `password` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  325. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."chat_requests` ( `id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `created` int(10) unsigned NOT NULL DEFAULT '0', `sender_system_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `sender_group_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `receiver_user_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `receiver_browser_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `event_action_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `text` mediumtext CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `displayed` tinyint(1) unsigned NOT NULL DEFAULT '0', `accepted` tinyint(1) unsigned NOT NULL DEFAULT '0', `declined` tinyint(1) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  326. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."events` (`id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',`name` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',`created` int(10) unsigned NOT NULL DEFAULT '0', `creator` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `edited` int(10) unsigned NOT NULL DEFAULT '0', `editor` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `pages_visited` int(10) unsigned NOT NULL DEFAULT '0', `time_on_site` int(10) unsigned NOT NULL DEFAULT '0', `max_trigger_amount` int(10) unsigned NOT NULL DEFAULT '0', `trigger_again_after` int(10) unsigned NOT NULL DEFAULT '0', `not_declined` tinyint(1) unsigned NOT NULL DEFAULT '0', `not_accepted` tinyint(1) unsigned NOT NULL DEFAULT '0', `not_in_chat` tinyint(1) unsigned NOT NULL DEFAULT '0', `priority` int(10) unsigned NOT NULL DEFAULT '0', `is_active` tinyint(1) unsigned NOT NULL DEFAULT '1', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  327. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."event_actions` (`id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `eid` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `type` tinyint(2) unsigned NOT NULL DEFAULT '0', `value` MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  328. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."event_action_internals` (`id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',`created` int(10) unsigned NOT NULL DEFAULT '0',`trigger_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',`receiver_user_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  329. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."event_action_invitations` ( `id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `action_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `position` varchar(2) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `speed` tinyint(1) NOT NULL DEFAULT '1', `slide` tinyint(1) NOT NULL DEFAULT '1', `margin_left` int(11) NOT NULL DEFAULT '0', `margin_top` int(11) NOT NULL DEFAULT '0', `margin_right` int(11) NOT NULL DEFAULT '0', `margin_bottom` int(11) NOT NULL DEFAULT '0', `style` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `close_on_click` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '1', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  330. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."event_action_receivers` (`id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `action_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `receiver_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  331. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."event_action_senders` ( `id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `pid` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `user_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `group_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `priority` tinyint(2) unsigned NOT NULL DEFAULT '1', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  332. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."event_action_website_pushs` ( `id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `action_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `target_url` MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `ask` tinyint(1) NOT NULL DEFAULT '1', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  333. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."event_triggers` (`id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `receiver_user_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `receiver_browser_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `action_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `time` int(10) unsigned NOT NULL DEFAULT '0', `triggered` int(10) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  334. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."event_urls` (`id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `eid` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `url` MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `referrer` MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `time_on_site` int(10) unsigned NOT NULL DEFAULT '0', `blacklist` tinyint(1) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  335. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."website_pushs` (`id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `created` int(10) unsigned NOT NULL DEFAULT '0', `sender_system_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `receiver_user_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `receiver_browser_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `text` mediumtext CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `ask` tinyint(1) unsigned NOT NULL DEFAULT '0', `target_url` MEDIUMTEXT CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `displayed` tinyint(1) unsigned NOT NULL DEFAULT '0', `accepted` tinyint(1) unsigned NOT NULL DEFAULT '0', `declined` tinyint(1) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  336. $commands[] = "ALTER TABLE `".@mysql_real_escape_string($_prefix)."predefined` ADD `editable` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0';";
  337. $commands[] = "ALTER TABLE `".@mysql_real_escape_string($_prefix)."chats` ADD `area_code` varchar(100) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '' AFTER `group_id`;";
  338. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."profiles` (`id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `edited` int(11) NOT NULL DEFAULT '0', `first_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `last_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `email` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `company` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `phone` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `fax` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `street` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `zip` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `department` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `city` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `country` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `gender` tinyint(1) NOT NULL DEFAULT '0', `languages` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `comments` longtext CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `public` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  339. $commands[] = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."profile_pictures` (`id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '', `internal_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `time` int(11) NOT NULL DEFAULT '0', `webcam` tinyint(1) NOT NULL DEFAULT '0', `data` mediumtext CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  340. $allowedecs = Array(1050,1054,1054,1054,1060,1060,1060,1050,1060,1050,1060,1050,1060,1050,1050,1050,1050,1050,1050,1050,1050,1050,1050,1050,1050,1060,1060,1050,1050);
  341. foreach($commands as $key => $command)
  342. {
  343. $result = @mysql_query($command,$_link);
  344. if(!$result && mysql_errno() != $allowedecs[$key])
  345. return mysql_errno() . ": " . mysql_error() . "\r\n\r\nMySQL Query: " . $commands[$key];
  346. }
  347. return true;
  348. }
  349. function up_3183_3184($_prefix,$_link)
  350. {
  351. global $INTERNAL,$GROUPS;
  352. $result = @mysql_query("ALTER TABLE `".@mysql_real_escape_string($_prefix)."info` ADD `chat_id` INT NOT NULL DEFAULT '11700'",$_link);
  353. if(!$result && mysql_errno() != 1060)
  354. return mysql_errno() . ": " . mysql_error();
  355. $result = @mysql_query("ALTER TABLE `".@mysql_real_escape_string($_prefix)."info` ADD `ticket_id` INT NOT NULL DEFAULT '11700'",$_link);
  356. if(!$result && mysql_errno() != 1060)
  357. return mysql_errno() . ": " . mysql_error();
  358. $result = @mysql_query("ALTER TABLE `".@mysql_real_escape_string($_prefix)."chats` ADD `transcript_sent` tinyint(1) unsigned NOT NULL default '1'",$_link);
  359. if(!$result && mysql_errno() != 1060)
  360. return mysql_errno() . ": " . mysql_error();
  361. $result = @mysql_query("ALTER TABLE `".@mysql_real_escape_string($_prefix)."res` CHANGE `html` `value` longtext character set utf8 collate utf8_bin NOT NULL",$_link);
  362. if(!$result && mysql_errno() != 1054)
  363. return mysql_errno() . ": " . mysql_error();
  364. $result = @mysql_query("ALTER TABLE `".@mysql_real_escape_string($_prefix)."res` ADD `size` bigint(20) unsigned NOT NULL default '0'",$_link);
  365. if(!$result && mysql_errno() != 1060)
  366. return mysql_errno() . ": " . mysql_error();
  367. $dirs = array(PATH_UPLOADS_INTERNAL,PATH_UPLOADS_EXTERNAL);
  368. $baseFolderInternal = $baseFolderExternal = false;
  369. foreach($dirs as $tdir)
  370. {
  371. $subdirs = getDirectory($tdir,false,true);
  372. foreach($subdirs as $dir)
  373. {
  374. if(@is_dir($tdir.$dir."/"))
  375. {
  376. if($tdir == PATH_UPLOADS_INTERNAL)
  377. $owner = getInternalSystemIdByUserId($dir);
  378. else
  379. $owner = CALLER_SYSTEM_ID;
  380. if(!isset($INTERNAL[$owner]))
  381. continue;
  382. $files = getDirectory($tdir.$dir."/",false,true);
  383. foreach($files as $file)
  384. {
  385. if($file != FILE_INDEX && $file != FILE_INDEX_OLD)
  386. {
  387. if($tdir == PATH_UPLOADS_INTERNAL)
  388. {
  389. $parentId = $owner;
  390. $type = 3;
  391. if(!$baseFolderInternal)
  392. {
  393. createFileBaseFolders($owner,true);
  394. $baseFolderInternal = true;
  395. }
  396. processResource($owner,$owner,$INTERNAL[$owner]->Fullname,0,$INTERNAL[$owner]->Fullname,0,4,3);
  397. }
  398. else
  399. {
  400. $parentId = 5;
  401. $owner = CALLER_SYSTEM_ID;
  402. $type = 4;
  403. if(!$baseFolderExternal)
  404. {
  405. createFileBaseFolders($owner,false);
  406. $baseFolderExternal = true;
  407. }
  408. }
  409. $cfile = ($tdir != PATH_UPLOADS_INTERNAL) ? base64_decode($file) : $file;
  410. $size = filesize($tdir.$dir."/".$file);
  411. $fid = md5($file . $owner . $size);
  412. $filename = $owner . "_" . $fid;
  413. copy($tdir.$dir."/".$file,PATH_UPLOADS . $filename);
  414. processResource($owner,$fid,$filename,$type,$cfile,0,$parentId,4,$size);
  415. }
  416. }
  417. }
  418. }
  419. }
  420. $sql = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."predefined` (`id` int(11) unsigned NOT NULL,`internal_id` varchar(32) character set utf8 collate utf8_bin NOT NULL,`group_id` varchar(32) character set utf8 collate utf8_bin NOT NULL,`lang_iso` varchar(2) character set utf8 collate utf8_bin NOT NULL,`invitation` mediumtext character set utf8 collate utf8_bin NOT NULL,`welcome` mediumtext character set utf8 collate utf8_bin NOT NULL,`website_push` mediumtext character set utf8 collate utf8_bin NOT NULL,`browser_ident` tinyint(1) unsigned NOT NULL default '0',`is_default` tinyint(1) unsigned NOT NULL default '0', `auto_welcome` tinyint(1) unsigned NOT NULL default '0',PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  421. $result = mysql_query($sql,$_link);
  422. if(!$result && mysql_errno() != 1050)
  423. return mysql_errno() . ": " . mysql_error();
  424. else if($result)
  425. {
  426. $counter = 0;
  427. foreach($GROUPS as $gid => $group)
  428. {
  429. @mysql_query("INSERT INTO `".@mysql_real_escape_string($_prefix)."predefined` (`id` ,`internal_id`, `group_id` ,`lang_iso` ,`invitation` ,`welcome` ,`website_push` ,`browser_ident` ,`is_default` ,`auto_welcome`) VALUES ('".@mysql_real_escape_string($counter++)."', '', '".@mysql_real_escape_string($gid)."', 'EN', 'Hello, my name is %name%. Do you need help? Start Live-Chat now to get assistance.', 'Hello %external_name%, my name is %name%, how may I help you?', 'Website Operator %name% would like to redirect you to this URL:\r\n\r\n%url%', '1', '1', '1');",$_link);
  430. @mysql_query("INSERT INTO `".@mysql_real_escape_string($_prefix)."predefined` (`id` ,`internal_id`, `group_id` ,`lang_iso` ,`invitation` ,`welcome` ,`website_push` ,`browser_ident` ,`is_default` ,`auto_welcome`) VALUES ('".@mysql_real_escape_string($counter++)."', '', '".@mysql_real_escape_string($gid)."', 'DE', '".utf8_encode("Guten Tag, meine Name ist %name%. Benötigen Sie Hilfe? Gerne berate ich Sie in einem Live Chat")."', 'Guten Tag %external_name%, mein Name ist %name% wie kann ich Ihnen helfen?', '".utf8_encode("Ein Betreuer dieser Webseite (%name%) möchte Sie auf einen anderen Bereich weiterleiten:\\r\\n\\r\\n%url%")."', '1', '0', '1');",$_link);
  431. }
  432. }
  433. $sql = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."rooms` (`id` int(11) NOT NULL,`time` int(11) NOT NULL,`last_active` int(11) NOT NULL,`status` tinyint(1) NOT NULL default '0',`target_group` varchar(64) NOT NULL, PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  434. $result = mysql_query($sql,$_link);
  435. if(!$result && mysql_errno() != 1050)
  436. return mysql_errno() . ": " . mysql_error();
  437. $sql = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."posts` (`id` varchar(32) character set utf8 collate utf8_bin NOT NULL,`time` int(10) unsigned NOT NULL default '0',`micro` int(10) unsigned NOT NULL default '0',`sender` varchar(32) character set utf8 collate utf8_bin NOT NULL,`receiver` varchar(32) character set utf8 collate utf8_bin NOT NULL,`receiver_group` varchar(32) character set utf8 collate utf8_bin NOT NULL,`text` mediumtext character set utf8 collate utf8_bin NOT NULL,`received` tinyint(1) unsigned NOT NULL default '0',`persistent` tinyint(1) unsigned NOT NULL default '0', PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  438. $result = mysql_query($sql,$_link);
  439. if(!$result && mysql_errno() != 1050)
  440. return mysql_errno() . ": " . mysql_error();
  441. $sql = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."tickets` (`id` varchar(32) character set utf8 collate utf8_bin NOT NULL,`user_id` varchar(32) character set utf8 collate utf8_bin NOT NULL,`target_group_id` varchar(32) character set utf8 collate utf8_bin NOT NULL, PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  442. $result = mysql_query($sql,$_link);
  443. if(!$result && mysql_errno() != 1050)
  444. return mysql_errno() . ": " . mysql_error();
  445. $sql = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."ticket_editors` (`ticket_id` int(10) unsigned NOT NULL,`internal_fullname` varchar(32) character set utf8 collate utf8_bin NOT NULL,`status` tinyint(1) unsigned NOT NULL default '1',`time` int(10) unsigned NOT NULL,PRIMARY KEY (`ticket_id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  446. $result = mysql_query($sql,$_link);
  447. if(!$result && mysql_errno() != 1050)
  448. return mysql_errno() . ": " . mysql_error();
  449. $sql = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."ticket_messages` (`id` int(11) unsigned NOT NULL auto_increment,`time` int(11) unsigned NOT NULL,`ticket_id` varchar(32) character set utf8 collate utf8_bin NOT NULL,`text` mediumtext character set utf8 collate utf8_bin NOT NULL,`fullname` varchar(32) character set utf8 collate utf8_bin NOT NULL,`email` varchar(50) character set utf8 collate utf8_bin NOT NULL,`company` varchar(50) character set utf8 collate utf8_bin NOT NULL,`ip` varchar(15) character set utf8 collate utf8_bin NOT NULL, PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin AUTO_INCREMENT=1;";
  450. $result = mysql_query($sql,$_link);
  451. if(!$result && mysql_errno() != 1050)
  452. return mysql_errno() . ": " . mysql_error();
  453. $sql = "CREATE TABLE `".@mysql_real_escape_string($_prefix)."ratings` (`id` varchar(32) character set utf8 collate utf8_bin NOT NULL, `time` int(11) unsigned NOT NULL, `user_id` varchar(32) character set utf8 collate utf8_bin NOT NULL, `internal_id` varchar(32) character set utf8 collate utf8_bin NOT NULL, `fullname` varchar(32) character set utf8 collate utf8_bin NOT NULL, `email` varchar(50) character set utf8 collate utf8_bin NOT NULL, `company` varchar(50) character set utf8 collate utf8_bin NOT NULL, `qualification` tinyint(1) unsigned NOT NULL, `politeness` tinyint(1) unsigned NOT NULL, `comment` varchar(400) character set utf8 collate utf8_bin NOT NULL, `ip` varchar(15) character set utf8 collate utf8_bin NOT NULL, PRIMARY KEY (`id`)) ENGINE=MyISAM CHARACTER SET utf8 COLLATE utf8_bin;";
  454. $result = mysql_query($sql,$_link);
  455. if(!$result && mysql_errno() != 1050)
  456. return mysql_errno() . ": " . mysql_error();
  457. return TRUE;
  458. }
  459. ?>