HEX
Server: Apache/2.4.63 (Unix)
System: Linux TOMS-220NAS 4.4.302+ #86009 SMP Wed Nov 26 18:19:17 CST 2025 x86_64
User: flavio87 (1026)
PHP: 8.3.27
Disabled: NONE
Upload Files
File: //var/packages/MariaDB10/WIZARD_UIFILES/upgrade_uifile_cht.sh
#!/bin/bash

merge_pages() {
    if [ -z "$1" ]; then
        echo "$2"
    elif [ -z "$2" ]; then
        echo "$1"
    else
        echo "$1,$2"
    fi
}

need_password_warning()
{
    local version="$1"
    if [ ! -z "$version" ] && [ "$version" -le "0054" ]; then
        return 0
    fi
    return 1
}

PASSWORD_PAGE_TITLE="重要"
PASSWORD_WARNING="已更新密碼強度限制規則。然而,已更新規則不會套用至既有的密碼,建議您檢查或手動重置既有的密碼,以確認其是否符合已更新規則。"
CONFIRM_PASSWORD_CHECK="是的,我已經了解"

PASSWORD_WARNING_PAGE=$(/bin/cat<<EOF
{
    "step_title": "${PASSWORD_PAGE_TITLE}",
    "invalid_next_disabled_v2": true,
    "items": [{
        "type": "multiselect",
        "desc": "${PASSWORD_WARNING}",
        "subitems": [{
            "desc": "${CONFIRM_PASSWORD_CHECK}",
            "defaultValue": false,
            "validator": {
                "fn": "{return arguments[0];}"
            }
        }]
    }]
}
EOF
)

UPGRADE_PAGE_TITLE="套件更新資訊"
UNINTERRUPTABLE_WARNING="此更新包含資料轉移,所花費的時間取決於您的資料大小。更新過程中,您將無法使用套件中心。<br>此更新一旦開始便無法暫停或取消,<font color=\\\"red\\\">強制終止更新會導致資料遺失。</font>建議在更新前,先用 <a href=\\\"https://kb.synology.com/DSM/help/HyperBackup/BackupApp_desc\\\" target=\\\"_blank\\\">Hyper Backup</a> 備份您的資料。"
CONFIRM_UNINTERRUPTABLE="我已了解並準備好繼續"

UPGRADE_UNINTERRUPTABLE_WARNING_PAGE=$(/bin/cat<<EOF
{
    "step_title": "${UPGRADE_PAGE_TITLE}",
    "invalid_next_disabled_v2": true,
    "items": [{
        "type": "multiselect",
        "desc": "${UNINTERRUPTABLE_WARNING}",
        "subitems": [{
            "desc": "${CONFIRM_UNINTERRUPTABLE}",
            "defaultValue": false,
            "validator": {
                "fn": "{return arguments[0];}"
            }
        }]
    }]
}
EOF
)

main() {
    local install_page=""
    version=$(echo "$SYNOPKG_OLD_PKGVER" | cut -d- -f2)
    if need_password_warning "$version"; then
        install_page=$(merge_pages "$PASSWORD_WARNING_PAGE" "$UPGRADE_UNINTERRUPTABLE_WARNING_PAGE")
    else
        install_page=$(merge_pages "$UPGRADE_UNINTERRUPTABLE_WARNING_PAGE")
    fi
    echo "[$install_page]" > "${SYNOPKG_TEMP_LOGFILE}"
}
main