Ejemplo n.º 1
0
 }
 if (!is_readable($TMP_FOLDER . "symlinks.txt")) {
     InstallationAborted(TOOLS_MODULES_ERR_CANTOPEN . " symlinks.txt.", 'activation');
 }
 $Ability = CheckAbilityOfInstallation();
 if ($Ability["Success"] == 0) {
     InstallationAborted(TOOLS_PATCH_ERROR . ": " . $Ability["ErrorMessage"] . ".", 'activation');
 }
 $Install = InstallPatch();
 if ($Install["Success"] == 0) {
     InstallationAborted(TOOLS_PATCH_ERROR_DURINGINSTALL . ": " . $Install["ErrorMessage"] . ".", 'activation');
 }
 // copy files from files.txt
 $CopyFilesResult = CopyFiles();
 // execute queries from sql.txt, one per string
 $ExecSQLResult = ExecSQL($TMP_FOLDER . "sql.txt");
 // symlinks.txt
 $CreatLinksResult = CreatLinks();
 // insert patch info into the database
 $inserted = $db->query("INSERT INTO `Patch`\n\t\t\t(`Patch_Name`, `Created`, `Description`)\n\t\t\tVALUES ('" . $db->escape($PatchName) . "', NOW(), '" . $db->escape($Description) . "')");
 // don't show update notice once more
 $PatchResult = array();
 // results
 if ($CopyFilesResult['files']) {
     $PatchResult['files'] = str_replace("%COUNT", $CopyFilesResult['files'], TOOLS_PATCH_INFO_FILES_COPIED);
 }
 if ($ExecSQLResult['sqls']) {
     $PatchResult['sqls'] = str_replace("%COUNT", $ExecSQLResult['sqls'], TOOLS_PATCH_INFO_QUERIES_EXEC);
 }
 if ($CreatLinksResult['links']) {
     $PatchResult['links'] = str_replace("%COUNT", $CreatLinksResult['links'], TOOLS_PATCH_INFO_SYMLINKS_EXEC);
Ejemplo n.º 2
0
    ExecSQL($log, $sql, '161');
    UpdateVer($vr, '162');
}
// Обновляем до 3.73
if ($cfg->version == '3.72') {
    $vr = '3.73';
    $log = '- добавляю поля для хеширования пароля';
    $sql = 'ALTER TABLE `users` ADD COLUMN `password` CHAR(40) NOT NULL AFTER `pass`, ADD COLUMN `salt` CHAR(10) NOT NULL AFTER `password`';
    ExecSQL($log, $sql, '163');
    $log = '- обновляю соль в таблице пользователей';
    $sql = "UPDATE users SET salt=SUBSTRING(MD5(RAND()), -10) WHERE salt=''";
    ExecSQL($log, $sql, '164.1');
    $log = '- обновляю хеши паролей';
    $sql = "UPDATE users SET `password`=SHA1(CONCAT(SHA1(pass), salt)) WHERE `password`=''";
    ExecSQL($log, $sql, '164.2');
    UpdateVer($vr, '165');
}
// Обновляем до 3.74
if ($cfg->version == '3.73') {
    $vr = '3.74';
    $log = '- удаляю поле pass из таблицы users';
    $sql = 'ALTER TABLE `users` DROP COLUMN `pass`';
    ExecSQL($log, $sql, '166');
    UpdateVer($vr, '167');
}
echo 'Обновление закончено.<br>';
echo 'Если сообщений об ошибках нет, удалите файл update.php.<br>';
?>
</body>
</html>
Ejemplo n.º 3
0
    	 */
    UpdateVer($vr, '160');
}
// Обновляем до 3.72
if ($cfg->version == '3.71') {
    $vr = '3.72';
    $log = '- добавляю таблицу для создания меню';
    $sql = "CREATE TABLE IF NOT EXISTS `menu` (\n\t\t`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT 'Уникальный идентификатор',\n\t\t`parents` INT(11) NOT NULL COMMENT 'Родитель',\n\t\t`sort_id` INT(11) NOT NULL COMMENT 'Сортировка',\n\t\t`name` VARCHAR(200) NOT NULL COMMENT 'Название',\n\t\t`comment` VARCHAR(200) NOT NULL COMMENT 'Пояснение',\n\t\t`uid` VARCHAR(50) NOT NULL COMMENT 'некий идентификатор (можно использовать для автосоздания менюшек)',\n\t\tPRIMARY KEY(`id`)\n\t) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1";
    ExecSQL($log, $sql, '161');
    UpdateVer($vr, '162');
}
// Обновляем до 3.72
if ($cfg->version == '3.72') {
    $vr = '3.73';
    $log = '- добавляю поля для хеширования пароля';
    $sql = 'ALTER TABLE `users` ADD COLUMN `password` CHAR(40) NOT NULL AFTER `pass`, ADD COLUMN `salt` CHAR(10) NOT NULL AFTER `password`';
    ExecSQL($log, $sql, '163');
    $log = '- обновляю соль в таблице пользователей';
    $sql = "UPDATE users SET salt=SUBSTRING(MD5(RAND()), -10) WHERE salt=''";
    ExecSQL($log, $sql, '164.1');
    $log = '- обновляю хеши паролей';
    $sql = "UPDATE users SET `password`=SHA1(CONCAT(SHA1(pass), salt)) WHERE `password`=''";
    ExecSQL($log, $sql, '164.2');
    UpdateVer($vr, '165');
}
echo 'Обновление закончено.<br>';
echo 'Если сообщений об ошибках нет, удалите файл update.php.<br>';
?>
</body>
</html>