* [refac] Refactor the backup page when upgrading.

This commit is contained in:
liugang
2026-01-07 09:47:02 +08:00
parent 87e8869f04
commit d2f3800c7e
7 changed files with 49 additions and 28 deletions
+15 -2
View File
@@ -1,13 +1,26 @@
let netConnct = 0;
$.ajax(
{
url: $.createLink('misc', 'checkNetConnect'),
timeout: 1000,
success: function(data)
{
$('#upgrade').attr('href', $.createLink('upgrade', 'consistency', 'netConnect=' + +(data == 'success'))).removeClass('disabled');
netConnect = +(data == 'success');
},
error: function(XMLHttpRequest, textStatus)
{
$('#upgrade').attr('href', $.createLink('upgrade', 'consistency', 'netConnect=0')).removeClass('disabled');
netConnect = 0;
}
});
function confirmBackup(event)
{
if($(event.target).prop('checked'))
{
$('#upgrade').removeClass('disabled').attr('href', $.createLink('upgrade', 'consistency', 'netConnect=' + netConnect));
}
else
{
$('#upgrade').addClass('disabled').removeAttr('href');
}
}
+5 -5
View File
@@ -22,13 +22,13 @@ $lang->upgrade->tohome = 'Home';
$lang->upgrade->notice = 'Hinweis';
$lang->upgrade->checkExtension = 'Erweiterung prüfen';
$lang->upgrade->consistency = 'Check Consistency';
$lang->upgrade->noticeContent = <<<EOT
$lang->upgrade->backupNotice = <<<EOT
<p>Database upgrade requires high privileges. Please use the root user.</p>
<p>Upgrade carries risks. Please back up your database first, just in case.</p>
<pre class='leading-6 mt-1 p-3'>
1. You can back up using phpMyAdmin..
2. Use the mysql command-line tool:
$> mysqldump -u <span class='text-danger'>username</span> -p <span class='text-danger'>dbname</span> > <span class='text-danger'>filename</span>
$> mysqldump -u <span class='font-bold text-danger'>username</span> -p <span class='font-bold text-danger'>dbname</span> > <span class='font-bold text-danger'>filename</span>
Replace the red parts above with your actual username and database name.
<em>Example</em>: mysqldump -u root -p zentao > zentao.bak
</pre>
@@ -36,20 +36,20 @@ EOT;
if($config->db->driver == 'dm')
{
$lang->upgrade->noticeContent = <<<EOT
$lang->upgrade->backupNotice = <<<EOT
<p>The upgrade requires high database privileges, please use the root user.</p>
<p>Please backup your database before updating ZenTao!</p>
<pre class='leading-6 mt-1 p-3'>
1. It can be backed up by graphical client tools.
2. Use DIsql tool to back up data.
$> BACKUP DATABASE BACKUPSET <span class='text-danger'>'filename'</span>;
$> BACKUP DATABASE BACKUPSET <span class='font-bold text-danger'>'filename'</span>;
After the statement is executed, a backup set directory named "filename" is generated in the default backup path.
The default backup path is the path configured with BAK_PATH in dm.ini. If BAK_PATH is not configured, bak in SYSTEM_PATH is used by default.
This is the simplest database backup statement,To set additional backup options, you need to understand the syntax of the online backup database.
</pre>
EOT;
}
$lang->upgrade->confirmBackup = 'Ich habe die Datenbank gesichert.';
$lang->upgrade->createFileWinCMD = 'Öffnen Sie ein Konsolenfenster und rufen Sie <strong style="color:#ed980f">echo > %s</strong> auf';
$lang->upgrade->createFileLinuxCMD = 'Ausführen in der Shell: <strong style="color:#ed980f">touch %s</strong>';
$lang->upgrade->setStatusFile = '<h4>Please complete the following actions</h4>
+5 -4
View File
@@ -26,13 +26,13 @@ $lang->upgrade->tohome = 'Visit ZenTao';
$lang->upgrade->notice = 'Notice';
$lang->upgrade->checkExtension = 'Check Extensions';
$lang->upgrade->consistency = 'Check Consistency';
$lang->upgrade->noticeContent = <<<EOT
$lang->upgrade->backupNotice = <<<EOT
<p>Database upgrade requires high privileges. Please use the root user.</p>
<p>Upgrade carries risks. Please back up your database first, just in case.</p>
<pre class='leading-6 mt-1 p-3'>
1. You can back up using phpMyAdmin..
2. Use the mysql command-line tool:
$> mysqldump -u <span class='text-danger'>username</span> -p <span class='text-danger'>dbname</span> > <span class='text-danger'>filename</span>
$> mysqldump -u <span class='font-bold text-danger'>username</span> -p <span class='font-bold text-danger'>dbname</span> > <span class='font-bold text-danger'>filename</span>
Replace the red parts above with your actual username and database name.
<em>Example</em>: mysqldump -u root -p zentao > zentao.bak
</pre>
@@ -40,13 +40,13 @@ EOT;
if($config->db->driver == 'dm')
{
$lang->upgrade->noticeContent = <<<EOT
$lang->upgrade->backupNotice = <<<EOT
<p>The upgrade requires high database privileges, please use the root user.</p>
<p>Please backup your database before updating ZenTao!</p>
<pre class='leading-6 mt-1 p-3'>
1. It can be backed up by graphical client tools.
2. Use DIsql tool to back up data.
$> BACKUP DATABASE BACKUPSET <span class='text-danger'>'filename'</span>;
$> BACKUP DATABASE BACKUPSET <span class='font-bold text-danger'>'filename'</span>;
After the statement is executed, a backup set directory named "filename" is generated in the default backup path.
The default backup path is the path configured with BAK_PATH in dm.ini. If BAK_PATH is not configured, bak in SYSTEM_PATH is used by default.
This is the simplest database backup statement,To set additional backup options, you need to understand the syntax of the online backup database.
@@ -54,6 +54,7 @@ if($config->db->driver == 'dm')
EOT;
}
$lang->upgrade->confirmBackup = 'I have backed up the database';
$lang->upgrade->setStatusFileTitle = 'Please complete the following actions';
$lang->upgrade->createWinFile = 'Open command line and execute <span class="font-bold text-danger">echo > %s</span>';
$lang->upgrade->createLinuxFile = 'Execute <span class="font-bold text-danger">touch %s</span> in the command line';
+5 -4
View File
@@ -22,13 +22,13 @@ $lang->upgrade->tohome = 'Visitez ZenTao';
$lang->upgrade->notice = 'Avis';
$lang->upgrade->checkExtension = 'Vérifiez Extensions';
$lang->upgrade->consistency = 'Vérifiez Consistence';
$lang->upgrade->noticeContent = <<<EOT
$lang->upgrade->backupNotice = <<<EOT
<p>Database upgrade requires high privileges. Please use the root user.</p>
<p>Upgrade carries risks. Please back up your database first, just in case.</p>
<pre class='leading-6 mt-1 p-3'>
1. You can back up using phpMyAdmin..
2. Use the mysql command-line tool:
$> mysqldump -u <span class='text-danger'>username</span> -p <span class='text-danger'>dbname</span> > <span class='text-danger'>filename</span>
$> mysqldump -u <span class='font-bold text-danger'>username</span> -p <span class='font-bold text-danger'>dbname</span> > <span class='font-bold text-danger'>filename</span>
Replace the red parts above with your actual username and database name.
<em>Example</em>: mysqldump -u root -p zentao > zentao.bak
</pre>
@@ -36,13 +36,13 @@ EOT;
if($config->db->driver == 'dm')
{
$lang->upgrade->noticeContent = <<<EOT
$lang->upgrade->backupNotice = <<<EOT
<p>The upgrade requires high database privileges, please use the root user.</p>
<p>Please backup your database before updating ZenTao!</p>
<pre class='leading-6 mt-1 p-3'>
1. It can be backed up by graphical client tools.
2. Use DIsql tool to back up data.
$> BACKUP DATABASE BACKUPSET <span class='text-danger'>'filename'</span>;
$> BACKUP DATABASE BACKUPSET <span class='font-bold text-danger'>'filename'</span>;
After the statement is executed, a backup set directory named "filename" is generated in the default backup path.
The default backup path is the path configured with BAK_PATH in dm.ini. If BAK_PATH is not configured, bak in SYSTEM_PATH is used by default.
This is the simplest database backup statement,To set additional backup options, you need to understand the syntax of the online backup database.
@@ -50,6 +50,7 @@ if($config->db->driver == 'dm')
EOT;
}
$lang->upgrade->confirmBackup = "J'ai sauvegardé la base de données";
$lang->upgrade->createFileWinCMD = 'Ouvrez la fenêtre Ligne de commandes de windows et exécutez <strong style="color:#ed980f">echo > %s</strong>';
$lang->upgrade->createFileLinuxCMD = 'Executez la ligne de commande suivante: <strong style="color:#ed980f">touch %s</strong>';
$lang->upgrade->setStatusFile = '<h4>Please complete the following actions</h4>
+5 -4
View File
@@ -26,13 +26,13 @@ $lang->upgrade->tohome = '访问禅道';
$lang->upgrade->notice = '提示';
$lang->upgrade->checkExtension = '检查插件';
$lang->upgrade->consistency = '一致性检查';
$lang->upgrade->noticeContent = <<<EOT
$lang->upgrade->backupNotice = <<<EOT
<div>升级对数据库权限要求较高,请使用 root 用户。</div>
<div>升级有危险,请先备份数据库,以防万一。</div>
<pre class='leading-6 px-3 py-2'>
1. 可以通过phpMyAdmin进行备份。
2. 使用mysql命令行的工具:
$> mysqldump -u <span class='text-danger'>username</span> -p <span class='text-danger'>dbname</span> > <span class='text-danger'>filename</span>
$> mysqldump -u <span class='font-bold text-danger'>username</span> -p <span class='font-bold text-danger'>dbname</span> > <span class='font-bold text-danger'>filename</span>
将上面红色的部分分别替换成真实的用户名和禅道系统的数据库名。
<em>比如</em>: mysqldump -u root -p zentao > zentao.bak
</pre>
@@ -40,13 +40,13 @@ EOT;
if($config->db->driver == 'dm')
{
$lang->upgrade->noticeContent = <<<EOT
$lang->upgrade->backupNotice = <<<EOT
<p>升级对数据库权限要求较高,请使用管理员用户。</p>
<p>升级有危险,请先备份数据库,以防万一。</p>
<pre class='leading-6 mt-1 p-3'>
1. 可以通过图形化客户端工具进行备份。
2. 使用DIsql工具进行备份。
$> BACKUP DATABASE BACKUPSET <span class='text-danger'>'filename'</span>;
$> BACKUP DATABASE BACKUPSET <span class='font-bold text-danger'>'filename'</span>;
语句执行完后会在默认的备份路径下生成名为“filename”的备份集目录。
默认的备份路径为 dm.ini 中 BAK_PATH 配置的路径,若未配置 BAK_PATH,则默认使用 SYSTEM_PATH 下的 bak 目录。
这是最简单的数据库备份语句,如果要设置其他的备份选项需了解联机备份数据库的语法。
@@ -54,6 +54,7 @@ if($config->db->driver == 'dm')
EOT;
}
$lang->upgrade->confirmBackup = '我已经备份了数据库';
$lang->upgrade->setStatusFileTitle = '升级之前请先完成下面的操作';
$lang->upgrade->createWinFile = '打开命令行,执行 <span class="font-bold text-danger">echo > %s</span>';
$lang->upgrade->createLinuxFile = '在命令行执行 <span class="font-bold text-danger">touch %s</span>';
+6 -5
View File
@@ -21,13 +21,13 @@ $lang->upgrade->tohome = '訪問禪道';
$lang->upgrade->notice = '提示';
$lang->upgrade->checkExtension = '檢查插件';
$lang->upgrade->consistency = '一致性檢查';
$lang->upgrade->noticeContent = <<<EOT
$lang->upgrade->backupNotice = <<<EOT
<p>升級對資料庫權限要求較高,請使用 root 使用者。 </p>
<p>升級有危險,請先備份資料庫,以防萬一。 </p>
<pre class='leading-6 mt-1 p-3'>
1. 可以透過phpMyAdmin進行備份。
2. 使用mysql命令列的工具:
$> mysqldump -u <span class='text-danger'>username</span> -p <span class='text-danger'>dbname</span> > <span class='text-danger'>filename</span>
$> mysqldump -u <span class='font-bold text-danger'>username</span> -p <span class='font-bold text-danger'>dbname</span> > <span class='font-bold text-danger'>filename</span>
將上面紅色的部分分別替換成真實的使用者名稱和禪道系統的資料庫名稱。
<em>如</em>: mysqldump -u root -p zentao > zentao.bak
</pre>
@@ -35,13 +35,13 @@ EOT;
if($config->db->driver == 'dm')
{
$lang->upgrade->noticeContent = <<<EOT
$lang->upgrade->backupNotice = <<<EOT
<p>升級對資料庫權限要求較高,請使用管理員使用者。</p>
<p>升級有危險,請先備份資料庫,以防萬一。</p>
<pre class='leading-6 mt-1 p-3'>
1. 可以透過圖形化客戶端工具進行備份。
2. 使用DIsql工具進行備份。
$> BACKUP DATABASE BACKUPSET <span class='text-danger'>'filename'</span>;
$> BACKUP DATABASE BACKUPSET <span class='font-bold text-danger'>'filename'</span>;
語句執行完後會在預設的備份路徑下產生名為「 filename」 的備份集目錄。
預設的備份路徑為 dm.ini 中 BAK_PATH 配置的路徑,若未配置 BAK_PATH,則預設使用 SYSTEM_PATH 下的 bak 目錄。
這是最簡單的資料庫備份語句,如果要設定其他的備份選項需了解線上備份資料庫的語法。
@@ -49,6 +49,7 @@ if($config->db->driver == 'dm')
EOT;
}
$lang->upgrade->confirmBackup = '我已經備份了資料庫';
$lang->upgrade->createFileWinCMD = '打開命令行,執行<strong style="color:#ed980f">echo > %s</strong>';
$lang->upgrade->createFileLinuxCMD = '在命令行執行: <strong style="color:#ed980f">touch %s</strong>';
$lang->upgrade->setStatusFile = '<h4>升級之前請先完成下面的操作:</h4>
@@ -59,7 +60,7 @@ $lang->upgrade->setStatusFile = '<h4>升級之前請先完成下面的操
<p><strong style="color:red">我已經仔細閲讀上面提示且完成上述工作,<a href="#" onclick="location.reload()">繼續更新</a></strong></p>';
$lang->upgrade->selectVersion = '選擇版本';
$lang->upgrade->continue = '繼續';
$lang->upgrade->continue = '繼續升級';
$lang->upgrade->noteVersion = "務必選擇正確的版本,否則會造成數據丟失。";
$lang->upgrade->fromVersion = '原來的版本';
$lang->upgrade->toVersion = '升級到';
+8 -4
View File
@@ -14,7 +14,7 @@ set::zui(true);
div
(
setStyle(['padding' => '3rem 4rem', 'height' => '100vh', 'overflow' => 'hidden']),
setStyle(['padding' => '3rem 4rem', 'height' => '100vh']),
col
(
setClass('rounded-md bg-white gap-5 m-auto'),
@@ -36,7 +36,12 @@ div
col
(
setClass('rounded-md gap-2.5 bg-gray-100 p-4'),
html($lang->upgrade->noticeContent)
html($lang->upgrade->backupNotice)
),
checkbox
(
on::change('confirmBackup'),
$lang->upgrade->confirmBackup
),
div
(
@@ -45,8 +50,7 @@ div
(
setID('upgrade'),
setClass('btn primary disabled w-24'),
set::href(inlink('consistency')),
$lang->upgrade->common
$lang->upgrade->continue
)
)
)