X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=dbinstall.php;h=d318f9be0128d313fe5415bc416a4c5d0c2bf6dc;hb=9c1005341a3db52333fcb732960acbdf03fbe4e7;hp=007e51608e29871b18a4bdea6855841a572d8018;hpb=699d174c8cd3dd88265826a6b69c7fae3b62e0a8;p=timetracker.git
diff --git a/dbinstall.php b/dbinstall.php
index 007e5160..d318f9be 100644
--- a/dbinstall.php
+++ b/dbinstall.php
@@ -91,12 +91,15 @@ if ($request->isGet()) {
echo('WEB-INF/config.php file exists.
');
// Config file must start with the PHP opening tag. We are checking this because
- // a Unicode editor may insert a byte order mark (BOM) before it. This is not good as it will
- // spit white space before output in some situations such as in PDF reports.
+ // a Unicode editor may insert a byte order mark (BOM) before it.
+ // This is not good as it is printed as unintentional white space in output.
+ // Consequences:
+ // 1) PHP redirects may stop working, depending on server settings.
+ // 2) PDF reports and attachment downloads will become unusable (cannot open files).
$file = fopen(APP_DIR.'/WEB-INF/config.php', 'r');
$line = fgets($file);
if (strcmp("Error: WEB-INF/config.php file does not start with PHP opening tag.
');
+ echo('Error: WEB-INF/config.php file does not start with a PHP opening tag. See explanation.
');
}
fclose($file);
} else {
@@ -991,7 +994,7 @@ if ($_POST) {
print "Updated $tt_expense_items_updated tt_expense_items records...
\n";
}
- if ($_POST["convert11797to11861"]) {
+ if ($_POST["convert11797to11900"]) {
ttExecute("ALTER TABLE `tt_fav_reports` CHANGE `group_by` `group_by1` varchar(20) default NULL");
ttExecute("ALTER TABLE `tt_fav_reports` ADD `group_by2` varchar(20) default NULL AFTER `group_by1`");
ttExecute("ALTER TABLE `tt_fav_reports` ADD `group_by3` varchar(20) default NULL AFTER `group_by2`");
@@ -1146,18 +1149,31 @@ if ($_POST) {
ttExecute("UPDATE `tt_site_config` SET param_value = '1.18.54', modified = now() where param_name = 'version_db' and param_value = '1.18.51'");
ttExecute("ALTER TABLE `tt_templates` ADD `description` varchar(255) default NULL AFTER `name`");
ttExecute("UPDATE `tt_site_config` SET param_value = '1.18.55', modified = now() where param_name = 'version_db' and param_value = '1.18.54'");
- ttExecute("CREATE TABLE `tt_files` (`id` int(10) unsigned NOT NULL auto_increment,`group_id` int(10) unsigned,`org_id` int(10) unsigned,`remote_id` bigint(20) unsigned,`entity_type` varchar(32),`entity_id` int(10) unsigned,`file_name` varchar(80) COLLATE utf8mb4_bin NOT NULL,`description` varchar(255) default NULL,`created` datetime default NULL,`created_ip` varchar(45) default NULL,`created_by` int(10) unsigned,`modified` datetime default NULL,`modified_ip` varchar(45) default NULL,`modified_by` int(10) unsigned,`status` tinyint(1) default 1,PRIMARY KEY (`id`))");
+ ttExecute("CREATE TABLE `tt_files` (`id` int(10) unsigned NOT NULL auto_increment,`group_id` int(10) unsigned,`org_id` int(10) unsigned,`remote_id` bigint(20) unsigned,`entity_type` varchar(32),`entity_id` int(10) unsigned,`file_name` varchar(80) COLLATE utf8mb4_bin NOT NULL,`description` varchar(255) default NULL,`created` datetime default NULL,`created_ip` varchar(45) default NULL,`created_by` int(10) unsigned,`modified` datetime default NULL,`modified_ip` varchar(45) default NULL,`modified_by` int(10) unsigned,`status` tinyint(1) default 1,PRIMARY KEY (`id`))");
ttExecute("UPDATE `tt_site_config` SET param_value = '1.18.59', modified = now() where param_name = 'version_db' and param_value = '1.18.55'");
ttExecute("ALTER TABLE `tt_files` ADD `file_key` varchar(32) AFTER `remote_id`");
ttExecute("UPDATE `tt_site_config` SET param_value = '1.18.60', modified = now() where param_name = 'version_db' and param_value = '1.18.59'");
ttExecute("ALTER TABLE `tt_groups` ADD `group_key` varchar(32) AFTER `org_id`");
ttExecute("UPDATE `tt_site_config` SET param_value = '1.18.61', modified = now() where param_name = 'version_db' and param_value = '1.18.60'");
-
ttGenerateKeys();
-}
+ ttExecute("update `tt_roles` inner join `tt_site_config` sc on (sc.param_name = 'version_db' and sc.param_value = '1.18.61') set rights = replace(rights, 'swap_roles', 'swap_roles,update_work') where rank >= 12");
+ ttExecute("update `tt_roles` inner join `tt_site_config` sc on (sc.param_name = 'version_db' and sc.param_value = '1.18.61') set rights = replace(rights, 'view_all_reports', 'view_all_reports,manage_work,bid_on_work') where rank >= 68");
+ ttExecute("UPDATE `tt_site_config` SET param_value = '1.19.0', modified = now() where param_name = 'version_db' and param_value = '1.18.61'");
+ }
- if ($_POST["cleanup"]) {
+ if ($_POST["convert11900to11903"]) {
+ ttExecute("CREATE TABLE `tt_work_currencies` (`id` int(10) unsigned NOT NULL,`name` varchar(10) NOT NULL,PRIMARY KEY (`id`))");
+ ttExecute("create unique index currency_idx on tt_work_currencies(`name`)");
+ ttExecute("INSERT INTO `tt_work_currencies` (`id`, `name`) VALUES ('1', 'USD'), ('2', 'CAD'), ('3', 'AUD'), ('4', 'EUR'), ('5', 'NZD')");
+ ttExecute("CREATE TABLE `tt_work_categories` (`id` int(10) unsigned NOT NULL, `parents` text default NULL, `name` varchar(64) NOT NULL, `name_localized` text default NULL, PRIMARY KEY (`id`))");
+ ttExecute("INSERT INTO `tt_work_categories` (`id`, `parents`, `name`, `name_localized`) VALUES ('1', NULL, 'Coding', 'es:Codificación,ru:ÐодиÑование')");
+ ttExecute("INSERT INTO `tt_work_categories` (`id`, `parents`, `name`, `name_localized`) VALUES ('2', NULL, 'Other', 'es:Otra,ru:ÐÑÑгое')");
+ ttExecute("INSERT INTO `tt_work_categories` (`id`, `parents`, `name`, `name_localized`) VALUES ('3', '1', 'PHP', NULL)");
+ ttExecute("INSERT INTO `tt_work_categories` (`id`, `parents`, `name`, `name_localized`) VALUES ('4', '1', 'C/C++', NULL)");
+ ttExecute("UPDATE `tt_site_config` SET param_value = '1.19.3', modified = now() where param_name = 'version_db' and param_value = '1.19.0'");
+ }
+ if ($_POST["cleanup"]) {
$mdb2 = getConnection();
$inactive_orgs = ttOrgHelper::getInactiveOrgs();
@@ -1191,6 +1207,7 @@ if ($_POST) {
ttExecute("OPTIMIZE TABLE tt_user_project_binds");
ttExecute("OPTIMIZE TABLE tt_users");
ttExecute("OPTIMIZE TABLE tt_roles");
+ ttExecute("OPTIMIZE TABLE tt_files");
}
print "Done.
\n";
@@ -1203,7 +1220,7 @@ if ($_POST) {
Create database structure (v1.18.61) + | Create database structure (v1.19.3)
(applies only to new installations, do not execute when updating) |