echo('WEB-INF/config.php file exists.<br>');
// 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("<?php\n", $line) !== 0 && strcmp("<?php\r\n", $line) !== 0) {
- echo('<font color="red">Error: WEB-INF/config.php file does not start with PHP opening tag.</font><br>');
+ echo('<font color="red">Error: WEB-INF/config.php file does not start with a PHP opening tag.</font> See <a href="https://www.anuko.com/lp/tt_33.htm" target="_blank">explanation</a>.<br>');
}
fclose($file);
} else {
print "Updated $tt_expense_items_updated tt_expense_items records...<br>\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`");
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"]) {
<h2>DB Install</h2>
<table width="80%" border="1" cellpadding="10" cellspacing="0">
<tr>
- <td width="80%"><b>Create database structure (v1.18.61)</b>
+ <td width="80%"><b>Create database structure (v1.19.0)</b>
<br>(applies only to new installations, do not execute when updating)</br></td><td><input type="submit" name="crstructure" value="Create"></td>
</tr>
</table>
</tr>
</tr>
<tr valign="top">
- <td>Update database structure (v1.17.97 to v1.18.61)</td>
- <td><input type="submit" name="convert11797to11861" value="Update"></td>
+ <td>Update database structure (v1.17.97 to v1.19)</td>
+ <td><input type="submit" name="convert11797to11900" value="Update"></td>
</tr>
</table>