X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=inline;f=dbinstall.php;h=69a09ec59da562ec3148c362ce4b77ff8142614b;hb=0ae87b2b2eeb7710e1d169f63708c6c5dc2e2452;hp=74d566cc7185171f9069cbe2df911e428b23387c;hpb=32acd0caf0385a9fb7014af70d1a0ad438191dd7;p=timetracker.git
diff --git a/dbinstall.php b/dbinstall.php
index 74d566cc..69a09ec5 100644
--- a/dbinstall.php
+++ b/dbinstall.php
@@ -50,6 +50,16 @@ function ttExecute($sql) {
if ($request->isGet()) {
echo('
Environment Checks
');
+ // Determine if cookies are enabled in browser.
+ // session_start(); // already called in initialize.php.
+ $session_id1 = session_id();
+ session_destroy();
+ session_start();
+ $session_id2 = session_id();
+ if ($session_id1 != $session_id2) {
+ echo('Error: browser cookies are off.
');
+ }
+
// Check if WEB-INF/templates_c dir is writable.
if (is_writable(APP_DIR.'/WEB-INF/templates_c/')) {
echo('WEB-INF/templates_c/ directory is writable.
');
@@ -131,6 +141,11 @@ if ($request->isGet()) {
}
}
+ // Check is libxml is enabled (which is a PHP default).
+ if (!function_exists('libxml_clear_errors')) {
+ echo('Error: libxml is not enabled. It is required for import group operation (to parse XML).
');
+ }
+
// Check database access.
require_once('MDB2.php');
$conn = MDB2::connect(DSN);
@@ -957,7 +972,7 @@ if ($_POST) {
print "Updated $tt_expense_items_updated tt_expense_items records...
\n";
}
- if ($_POST["convert11797to11836"]) {
+ if ($_POST["convert11797to11837"]) {
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`");
@@ -1044,6 +1059,20 @@ if ($_POST) {
ttExecute("UPDATE `tt_site_config` SET param_value = '1.18.34', modified = now() where param_name = 'version_db' and param_value = '1.18.26'");
ttExecute("update `tt_users` u inner join `tt_site_config` sc on (sc.param_name = 'version_db' and sc.param_value = '1.18.34') set u.quota_percent = 100.00 where u.quota_percent is null");
ttExecute("UPDATE `tt_site_config` SET param_value = '1.18.36', modified = now() where param_name = 'version_db' and param_value = '1.18.34'");
+ ttExecute("update `tt_users` u inner join `tt_site_config` sc on (sc.param_name = 'version_db' and sc.param_value = '1.18.36') set u.quota_percent = 100.00 where u.quota_percent is null");
+ ttExecute("ALTER TABLE `tt_users` modify `quota_percent` float(6,2) NOT NULL default '100.00'");
+ ttExecute("CREATE TABLE `tt_timesheets` (`id` int(11) NOT NULL auto_increment, `user_id` int(11) NOT NULL, `group_id` int(11) default NULL, `org_id` int(11) default NULL, `client_id` int(11) default NULL, `name` varchar(80) COLLATE utf8mb4_bin NOT NULL, `submit_status` tinyint(4) default NULL, `submitter_comment` text, `approval_status` tinyint(4) default NULL, `manager_comment` text, `created` datetime default NULL, `created_ip` varchar(45) default NULL, `created_by` int(11) default NULL, `modified` datetime default NULL, `modified_ip` varchar(45) default NULL, `modified_by` int(11) default NULL, `status` tinyint(4) default 1, PRIMARY KEY (`id`))");
+ ttExecute("ALTER TABLE `tt_log` ADD `timesheet_id` int(11) default NULL AFTER `task_id`");
+ ttExecute("create index timesheet_idx on tt_log(timesheet_id)");
+ ttExecute("ALTER TABLE `tt_expense_items` ADD `timesheet_id` int(11) default NULL AFTER `project_id`");
+ ttExecute("create index timesheet_idx on tt_expense_items(timesheet_id)");
+ ttExecute("UPDATE `tt_site_config` SET param_value = '1.18.37', modified = now() where param_name = 'version_db' and param_value = '1.18.36'");
+ ttExecute("update `tt_roles` inner join `tt_site_config` sc on (sc.param_name = 'version_db' and sc.param_value = '1.18.37') set rights = 'track_own_time,track_own_expenses,view_own_reports,view_own_timesheets,manage_own_timesheets,view_own_charts,view_own_invoices,view_own_projects,view_own_tasks,manage_own_settings,view_users,track_time,track_expenses,view_reports,view_timesheets,manage_timesheets,approve_timesheets,view_charts,view_own_clients,override_punch_mode,override_own_punch_mode,override_date_lock,override_own_date_lock,swap_roles,manage_own_account,manage_users,manage_projects,manage_tasks,manage_custom_fields,manage_clients,manage_invoices,override_allow_ip,manage_basic_settings,view_all_reports,manage_features,manage_advanced_settings,manage_roles,export_data,manage_subgroups,delete_group' where rank = 512");
+ ttExecute("update `tt_roles` inner join `tt_site_config` sc on (sc.param_name = 'version_db' and sc.param_value = '1.18.37') set rights = replace(rights, 'view_own_reports,view_own_charts', 'view_own_reports,view_own_timesheets,view_own_charts') where rank = 16");
+ ttExecute("update `tt_roles` inner join `tt_site_config` sc on (sc.param_name = 'version_db' and sc.param_value = '1.18.37') set rights = replace(rights, 'view_own_reports,view_own_charts', 'view_own_reports,view_own_timesheets,manage_own_timesheets,view_own_charts') where rank = 4 or rank = 12 or rank = 68 or rank = 324");
+ ttExecute("update `tt_roles` inner join `tt_site_config` sc on (sc.param_name = 'version_db' and sc.param_value = '1.18.37') set rights = replace(rights, 'view_reports,view_charts', 'view_reports,view_timesheets,manage_timesheets,approve_timesheets,view_charts') where rank = 12 or rank = 68 or rank = 324");
+ ttExecute("update `tt_roles` inner join `tt_site_config` sc on (sc.param_name = 'version_db' and sc.param_value = '1.18.37') set rights = replace(rights, 'swap_roles,approve_timesheets', 'swap_roles') where rank = 12 or rank = 68 or rank = 324");
+ ttExecute("UPDATE `tt_site_config` SET param_value = '1.18.38', modified = now() where param_name = 'version_db' and param_value = '1.18.37'");
}
if ($_POST["cleanup"]) {
@@ -1062,6 +1091,7 @@ if ($_POST) {
ttExecute("OPTIMIZE TABLE tt_clients");
ttExecute("OPTIMIZE TABLE tt_config");
ttExecute("OPTIMIZE TABLE tt_cron");
+ ttExecute("OPTIMIZE TABLE tt_timesheets");
ttExecute("OPTIMIZE TABLE tt_custom_field_log");
ttExecute("OPTIMIZE TABLE tt_custom_field_options");
ttExecute("OPTIMIZE TABLE tt_custom_fields");
@@ -1091,7 +1121,7 @@ if ($_POST) {
DB Install
@@ -1136,8 +1166,8 @@ if ($_POST) {
- Update database structure (v1.17.97 to v1.18.36) |
- |
+ Update database structure (v1.17.97 to v1.18.37) |
+ |