X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=dbinstall.php;h=4e93ec36fafb91fb97ab4259532f64b273f8add7;hb=817c14c6c2098d85ef912fb95898c857bf533b4f;hp=063f202238b0b7e6266be1143ef599cde774cf08;hpb=3cd816de20457c5224d72db358833b234571be70;p=timetracker.git
diff --git a/dbinstall.php b/dbinstall.php
index 063f2022..4e93ec36 100644
--- a/dbinstall.php
+++ b/dbinstall.php
@@ -47,6 +47,25 @@ function ttExecute($sql) {
print "Successful update.
\n";
}
+// ttGenerateKeys - generates keys for groups that do not have them.
+function ttGenerateKeys() {
+ $mdb2 = getConnection();
+ $sql = "select id from tt_groups where group_key is null and status = 1";
+ $res = $mdb2->query($sql);
+ if (is_a($res, 'PEAR_Error')) die($res->getMessage());
+
+ $numGroups = 0;
+ while ($val = $res->fetchRow()) {
+ $group_id = $val['id'];
+ $group_key = $mdb2->quote(ttRandomString());
+ $sql = "update tt_groups set group_key = $group_key where id = $group_id";
+ $affected = $mdb2->exec($sql);
+ if (is_a($affected, 'PEAR_Error')) die($affected->getMessage());
+ $numGroups++;
+ }
+ print "
Generated keys for $numGroups groups.
\n";
+}
+
if ($request->isGet()) {
echo('
Environment Checks
');
@@ -72,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 {
@@ -1133,10 +1155,11 @@ if ($_POST) {
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();
}
if ($_POST["cleanup"]) {
-
$mdb2 = getConnection();
$inactive_orgs = ttOrgHelper::getInactiveOrgs();
@@ -1170,6 +1193,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";