00001 <?php
00002 # streber - a php5 based project management system (c) 2005-2007 / www.streber-pm.org
00003 # Distributed under the terms and conditions of the GPL as stated in lang/license.html
00004
00005 ### update from 0.044 to 0.045
00006 if($db_version < 0.045) {
00007 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD `view_collapsed` TINYINT NOT NULL";
00008 $update_queries[]="ALTER TABLE `{$db_table_prefix}comment` ADD `view_collapsed` TINYINT NOT NULL";
00009 $update_queries[]="ALTER TABLE `{$db_table_prefix}effort` ADD `task` INT NOT NULL";
00010 }
00011
00012 ### update from 0.045 auf 0.0451
00013 if($db_version < 0.0451) {
00014 $update_queries[]="ALTER TABLE `{$db_table_prefix}project` CHANGE `company` `company` INT( 4 ) DEFAULT '0' NOT NULL ";
00015 }
00016
00017 ### update from 0.0451 auf 0.046
00018 if($db_version < 0.046) {
00019 $update_queries[]="
00020 CREATE TABLE `{$db_table_prefix}taskperson` (
00021 `id` INT NOT NULL AUTO_INCREMENT ,
00022 `person` INT NOT NULL ,
00023 `task` INT NOT NULL ,
00024 `comment` TEXT NOT NULL ,
00025 PRIMARY KEY ( `id` ) ,
00026 INDEX ( `person` , `task` )
00027 );
00028 ";
00029 $update_queries[]="DROP TABLE `{$db_table_prefix}task_effort`;";
00030 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` ADD `show_tasks_at_home` TINYINT DEFAULT '1' NOT NULL ;";
00031 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` ADD `language` VARCHAR( 5 ) NOT NULL;";
00032 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` CHANGE `date_due` `planned_start` DATETIME DEFAULT '0000-00-00' NOT NULL;";
00033 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` CHANGE `date_due_end` `planned_end` DATETIME DEFAULT '0000-00-00' NOT NULL;";
00034 }
00035
00036 ### update from 0.046 to 0.047
00037 if($db_version < 0.047){
00038 $update_queries[]="ALTER TABLE `{$db_table_prefix}company` DROP INDEX `name`";
00039 $update_queries[]="ALTER TABLE `{$db_table_prefix}company` ADD FULLTEXT (`name`)";
00040 $update_queries[]="ALTER TABLE `{$db_table_prefix}company` ADD FULLTEXT (`comments`)";
00041
00042 $update_queries[]="ALTER TABLE `{$db_table_prefix}project` ADD FULLTEXT (name,status_summary,description)";
00043
00044 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` ADD FULLTEXT (name,nickname,tagline,comments)";
00045
00046 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD FULLTEXT (name,short,description)";
00047
00048 $update_queries[]="ALTER TABLE `{$db_table_prefix}comment` ADD PRIMARY KEY (id)";
00049 $update_queries[]="ALTER TABLE `{$db_table_prefix}comment` ADD FULLTEXT (name,description)";
00050
00051 $update_queries[]="ALTER TABLE `{$db_table_prefix}issue` DROP INDEX `steps_to_reproduce` ";
00052 $update_queries[]="ALTER TABLE `{$db_table_prefix}issue` ADD FULLTEXT (plattform,os,version,production_build,steps_to_reproduce,expected_result,suggested_solution)";
00053
00054 $update_queries[]="ALTER TABLE `{$db_table_prefix}issue` ADD `task` INT NOT NULL AFTER `id`" ;
00055 $update_queries[]="ALTER TABLE `{$db_table_prefix}issue` ADD INDEX ( `task` )" ;
00056
00057 $update_queries[]="ALTER TABLE `{$db_table_prefix}projectperson` ADD `adjust_effort_style` TINYINT DEFAULT '1' NOT NULL" ;
00058 $update_queries[]="ALTER TABLE `{$db_table_prefix}effort` ADD `as_duration` TINYINT DEFAULT '0' NOT NULL ";
00059 }
00060
00061 ### update to v0.048
00062 if($db_version <0.048) {
00063 $update_queries[]="ALTER TABLE `{$db_table_prefix}comment` CHANGE `description` `description` LONGTEXT";
00064 $update_queries[]="ALTER TABLE `{$db_table_prefix}company` CHANGE `comments` `comments` LONGTEXT";
00065 $update_queries[]="ALTER TABLE `{$db_table_prefix}issue` CHANGE `steps_to_reproduce` `steps_to_reproduce` TEXT, CHANGE `expected_result` `expected_result` TEXT, CHANGE `suggested_solution` `suggested_solution` TEXT";
00066 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` CHANGE `comments` `comments` LONGTEXT";
00067 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` CHANGE `description` `description` LONGTEXT";
00068 }
00069
00070
00071 ### update to v0.049
00072 if($db_version <0.049) {
00073 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` ADD `settings` INT NOT NULL ;";
00074 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` ADD `notification_last` DATETIME NOT NULL;";
00075 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` ADD `notification_period` TINYINT DEFAULT '7' NOT NULL;";
00076 }
00077
00078 ### update to v0.05
00079 if($db_version < 0.05) {
00080 $update_queries[]="CREATE TABLE `{$db_table_prefix}file` (
00081 `id` int(4) NOT NULL default '0',
00082 `name` varchar(128) NOT NULL default '',
00083 `mimetype` varchar(128) NOT NULL default '',
00084 `status` tinyint(4) NOT NULL default '0',
00085 `org_filename` varchar(255) NOT NULL default '',
00086 `tmp_filename` varchar(255) NOT NULL default '',
00087 `tmp_dir` varchar(64) NOT NULL default '',
00088 `filesize` int(11) NOT NULL default '0',
00089 `version` int(11) NOT NULL default '0',
00090 `parent_item` int(11) NOT NULL default '0',
00091 `org_file` int(11) NOT NULL default '0',
00092 `is_image` tinyint(4) NOT NULL default '0',
00093 `is_latest` tinyint(4) NOT NULL default '0',
00094 `thumbnail` varchar(255) NOT NULL default '',
00095 `description` tinytext NOT NULL,
00096 PRIMARY KEY (`id`),
00097 KEY `parent_item` (`parent_item`),
00098 KEY `is_latest` (`is_latest`)
00099 ) TYPE=MyISAM;";
00100 $update_queries[]="ALTER TABLE `{$db_table_prefix}file` ADD FULLTEXT (name,description,org_filename);";
00101 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` ADD `last_login` DATETIME NOT NULL AFTER `can_login`;" ;
00102 }
00103
00104 if($db_version < 0.051) {
00105 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` ADD `last_logout` DATETIME NOT NULL AFTER `last_login`;";
00106 }
00107
00108 if($db_version < 0.056) {
00109 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` CHANGE `identifier` `identifier` VARCHAR( 64 );";
00110 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` ADD `ip_address` varchar( 15 ) NOT NULL AFTER `cookie_string` ;";
00111 }
00112
00113
00114 if($db_version < 0.057) {
00115 $update_queries[]="
00116 CREATE TABLE `{$db_table_prefix}itemchange` (
00117 `id` INT NOT NULL AUTO_INCREMENT ,
00118 `item` INT DEFAULT '0' NOT NULL ,
00119 `modified_by` INT DEFAULT '0' NOT NULL ,
00120 `modified` DATETIME NOT NULL ,
00121 `field` VARCHAR( 32 ) NOT NULL ,
00122 `value_old` LONGTEXT NOT NULL ,
00123 PRIMARY KEY ( `id` ) ,
00124 INDEX ( `item` , `modified_by`,`modified` )
00125 );";
00126 }
00127
00128
00129 if($db_version < 0.058) {
00130 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD `is_milestone` TINYINT NOT NULL AFTER `is_folder` ;";
00131 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD INDEX ( `is_milestone` ) ;";
00132 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD `for_milestone` INT NOT NULL AFTER `date_start` ;";
00133 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD INDEX ( `for_milestone` ) ;";
00134 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD `resolved_version` INT NOT NULL AFTER `for_milestone` ;";
00135 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD INDEX ( `resolved_version` ) ;";
00136 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` CHANGE `estimated` `estimated` INT DEFAULT '0'";
00137 }
00138
00139 if($db_version < 0.059) {
00140 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD `estimated_max` INT NOT NULL DEFAULT 0 AFTER `estimated` ";
00141 }
00142
00143 if($db_version < 0.063) {
00144 $update_queries[]="ALTER TABLE `{$db_table_prefix}taskperson` ADD `assigntype` TINYINT DEFAULT '0' NOT NULL ;";
00145 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` CHANGE `comments` `description` LONGTEXT;";
00146 }
00147
00148
00149 if($db_version < 0.066) {
00150 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` ADD `time_offset` INT DEFAULT '0' NOT NULL AFTER `notification_period`;";
00151 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` ADD `time_zone` TINYINT DEFAULT '25' NOT NULL AFTER `notification_period`;";
00152 }
00153
00154 if($db_version < 0.0671) {
00155 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD `resolve_reason` TINYINT DEFAULT '0' NOT NULL AFTER `resolved_version`;";
00156 }
00157
00158
00159 if($db_version < 0.068) {
00160 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD `is_released` TINYINT DEFAULT '0' NOT NULL AFTER `is_milestone` ;";
00161 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD INDEX ( `is_released` ) ;";
00162
00163 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD `time_released` DATETIME NOT NULL AFTER `is_released` ;";
00164 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD INDEX ( `time_released` ) ;";
00165 }
00166
00167 if($db_version < 0.0681) {
00168 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` ADD `category` TINYINT DEFAULT '0' NOT NULL AFTER `time_offset`;";
00169 $update_queries[]="ALTER TABLE `{$db_table_prefix}company` ADD `category` TINYINT DEFAULT '0' NOT NULL AFTER `state`;";
00170 }
00171
00172 if($db_version < 0.0682) {
00173 $update_queries[]="ALTER TABLE `{$db_table_prefix}projectperson` CHANGE `role` `role` VARCHAR( 25 ) ;";
00174 }
00175
00176 if($db_version < 0.0685) {
00177 $update_queries[]="ALTER TABLE `{$db_table_prefix}item` CHANGE `project` `project` INT( 11 ) DEFAULT '0' NOT NULL;";
00178 }
00179
00180
00181 if($db_version < 0.069) {
00185 $update_queries[]="UPDATE `{$db_table_prefix}item` SET `type` = '3' WHERE `type` = '0' ;";
00186 }
00187
00188 if($db_version < 0.0701) {
00189 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` CHANGE `is_milestone` `is_milestone` TINYINT( 4 ) DEFAULT '0' NOT NULL;";
00190 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` CHANGE `resolved_version` `resolved_version` INT( 11 ) DEFAULT '0';";
00191 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` CHANGE `estimated_max` `estimated_max` INT( 11 ) DEFAULT '0';";
00192
00196 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` CHANGE `time_zone` `time_zone` FLOAT( 4 ) DEFAULT '25';";
00197 }
00198
00199 if($db_version < 0.0702) {
00200 $update_queries[]="UPDATE `{$db_table_prefix}projectperson` SET `role` = -1;";
00201 $update_queries[]="ALTER TABLE `{$db_table_prefix}projectperson` CHANGE `role` `role` TINYINT( 4 ) ;";
00202 }
00203
00204 if($db_version < 0.0705) {
00205 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD `category` TINYINT DEFAULT '". TCATEGORY_TASK."' NOT NULL AFTER `is_folder`;";
00206 $update_queries[]="ALTER TABLE `{$db_table_prefix}project` ADD `settings` TINYINT DEFAULT '127' NOT NULL AFTER `default_pub_level` ;";
00207 }
00208
00209 if($db_version < 0.0706) {
00210 $update_queries[]="ALTER TABLE `{$db_table_prefix}task` ADD `order_id` INT DEFAULT '0' NOT NULL AFTER `id` ;";
00211 }
00212
00213
00214 if($db_version < 0.0707) {
00215 $update_queries[]="UPDATE `{$db_table_prefix}task` SET `category` = '" .TCATEGORY_FOLDER. "' WHERE `is_folder` = '1' ;";
00216 $update_queries[]="UPDATE `{$db_table_prefix}task` SET `category` = '" .TCATEGORY_BUG. "' WHERE `issue_report` != '0' ;";
00217 $update_queries[]="UPDATE `{$db_table_prefix}task` SET `category` = '" .TCATEGORY_MILESTONE. "' WHERE `is_milestone` = '1' ;";
00218 $update_queries[]="UPDATE `{$db_table_prefix}task` SET `category` = '" .TCATEGORY_VERSION. "' WHERE `is_milestone` = '1' AND 'is_released' >= " . RELEASED_INTERNAL . ";";
00219 }
00220
00221 if($db_version < 0.0708){
00222 $update_queries[]="
00223 CREATE TABLE `{$db_table_prefix}itemperson` (
00224 `id` INT(11) NOT NULL AUTO_INCREMENT ,
00225 `person` INT(11) DEFAULT '0' NOT NULL ,
00226 `item` INT(11) DEFAULT '0' NOT NULL ,
00227 `viewed` TINYINT(4) DEFAULT '0' NOT NULL ,
00228 `viewed_last` DATETIME DEFAULT '0000-00-00 00:00:00' NOT NULL ,
00229 `remember_unchanged` INT(11) NULL ,
00230 `is_bookmark` TINYINT(4) DEFAULT '0' NOT NULL ,
00231 `notify_on_change` TINYINT(4) DEFAULT '0' NOT NULL ,
00232 PRIMARY KEY ( `id` )
00233 );";
00234 }
00235
00236
00237 if($db_version < 0.0709){
00238 $update_queries[]="
00239 ALTER TABLE `{$db_table_prefix}person`
00240 ADD `date_highlight_changes` DATETIME NOT NULL AFTER `show_tasks_at_home` ;";
00241 }
00242
00243 if($db_version < 0.0710){
00244 $update_queries[]="
00245 ALTER TABLE `{$db_table_prefix}itemperson`
00246 CHANGE `remember_unchanged` `notify_if_unchanged` INT( 11 ) DEFAULT NULL ;";
00247
00248 $update_queries[]="
00249 ALTER TABLE `{$db_table_prefix}itemperson`
00250 ADD `view_count` INT(11) DEFAULT '1' NOT NULL AFTER `viewed_last` ;";
00251
00252 }
00253
00254 if($db_version < 0.0711){
00255
00256 $update_queries[]=
00257 "ALTER TABLE `{$db_table_prefix}itemperson` ADD `comment` LONGTEXT NULL;";
00258 $update_queries[]=
00259 "ALTER TABLE `{$db_table_prefix}itemperson` ADD `notify_date` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' AFTER `notify_on_change`;";
00260 $update_queries[]=
00261 "ALTER TABLE `{$db_table_prefix}itemperson` CHANGE `notify_if_unchanged` `notify_if_unchanged` INT( 11 ) DEFAULT '0' NOT NULL;";
00262 }
00263
00264 if($db_version < 0.0781) {
00265 $update_queries[]=
00266 "ALTER TABLE `{$db_table_prefix}itemperson` ADD INDEX ( `item` , `person` ); ";
00267
00268 $update_queries[]=
00269 "ALTER TABLE `{$db_table_prefix}projectperson` ADD INDEX ( `person` , `project` ); ";
00270
00271
00272 }
00273
00274 if($db_version < 0.0782) {
00275 $update_queries[]=
00276 "ALTER TABLE `{$db_table_prefix}itemperson` ADD `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' AFTER `comment`;";
00277 }
00278
00279 if($db_version < 0.0783) {
00280 $update_queries[]=
00281 "ALTER TABLE `{$db_table_prefix}comment` ADD INDEX ( `comment` ) ;";
00282 $update_queries[]=
00283 "ALTER TABLE `{$db_table_prefix}comment` ADD INDEX ( `task` ) ;";
00284 $update_queries[]=
00285 "ALTER TABLE `{$db_table_prefix}effort` ADD INDEX ( `task` );";
00286 }
00287
00288 if($db_version < 0.0793) {
00289 $update_queries[]="ALTER TABLE `{$db_table_prefix}person` CHANGE `ip_address` `ip_address` VARCHAR( 15 ) DEFAULT '' NOT NULL ;";
00290 }
00291
00292 if($db_version < 0.0794) {
00293 $update_queries[]=" ALTER TABLE `{$db_table_prefix}person`
00294 CHANGE `ip_address` `ip_address` VARCHAR( 15 ) DEFAULT '' NOT NULL ;";
00295
00296 $update_queries[]=" ALTER TABLE `{$db_table_prefix}itemperson`
00297 CHANGE `notify_if_unchanged` `notify_if_unchanged` INT( 11 ) DEFAULT 0 NOT NULL ;";
00298
00299 $update_queries[]=" ALTER TABLE `{$db_table_prefix}person`
00300 CHANGE `date_highlight_changes` `date_highlight_changes` DATETIME DEFAULT '0000-00-00 00:00:00' NOT NULL";
00301
00302
00303 }
00304
00305 if($db_version < 0.795) {
00306 $update_queries[]="ALTER TABLE `{$db_table_prefix}effort` ADD `status` TINYINT( 4 ) DEFAULT '1' NOT NULL ;";
00307 }
00308 ?>