#!/bin/bash
# cleanup-server - Dọn dẹp + nâng cấp server (Ubuntu/Arch), interactive, tuần tự.
# Cách dùng:
#   cleanup-server            # hiện menu chọn target (local hoặc server alias)
#   cleanup-server --run-steps   # (nội bộ) chạy thẳng 6 bước trên máy hiện tại

# -----------------------------
# Color helpers (tự tắt khi không phải TTY)
# -----------------------------
if [ -t 1 ]; then
    C_RESET=$'\033[0m'
    C_TITLE=$'\033[1;36m'   # tiêu đề
    C_OK=$'\033[1;32m'      # thành công
    C_DEL=$'\033[1;31m'     # sẽ xóa / lỗi
    C_WARN=$'\033[1;33m'    # cảnh báo
else
    C_RESET=""; C_TITLE=""; C_OK=""; C_DEL=""; C_WARN=""
fi

# -----------------------------
# Banner rainbow (giống style `cleanup`)
# -----------------------------
print_banner() {
    local use_color=0 reset="" i=0 line
    local -a lines=(
        '  ██████╗██╗   ██╗ ██████╗██╗  ██╗██╗   ██╗██████╗  ███████╗███╗   ██╗ ██████╗██╗  ██╗'
        ' ██╔════╝██║   ██║██╔════╝██║  ██║██║   ██║██╔══██╗ ██╔════╝████╗  ██║██╔═══██╗╚██╗██╔╝'
        ' ██║     ██║   ██║██║     ███████║██║   ██║██║  ██║ █████╗  ██╔██╗ ██║██║   ██║ ╚███╔╝ '
        ' ██║     ██║   ██║██║     ██╔══██║██║   ██║██║  ██║ ██╔══╝  ██║╚██╗██║██║   ██║ ██╔██╗ '
        ' ╚██████╗╚██████╔╝╚██████╗██║  ██║╚██████╔╝██████╔╝ ███████╗██║ ╚████║╚██████╔╝██╔╝ ██╗'
        '  ╚═════╝ ╚═════╝  ╚═════╝╚═╝  ╚═╝ ╚═════╝ ╚═════╝  ╚══════╝╚═╝  ╚═══╝ ╚═════╝ ╚═╝  ╚═╝'
    )
    local -a colors=()
    if [ -t 1 ]; then
        use_color=1
        reset=$'\033[0m'
        colors=(
            $'\033[1;38;5;51m' $'\033[1;38;5;87m' $'\033[1;38;5;123m'
            $'\033[1;38;5;159m' $'\033[1;38;5;220m' $'\033[1;38;5;214m'
        )
    fi
    echo ""
    for line in "${lines[@]}"; do
        if [ "$use_color" -eq 1 ]; then
            printf '%b%s%b\n' "${colors[$i]}" "$line" "$reset"
        else
            printf '%s\n' "$line"
        fi
        i=$((i + 1))
    done
    echo ""
}

# -----------------------------
# Main (phân nhánh theo argv)
# -----------------------------
main() {
    if [ "${1:-}" = "--run-steps" ]; then
        echo "${C_TITLE}===== 🧹 Cleanup-server (--run-steps) =====${C_RESET}"
        echo "    (chưa có bước nào — sẽ thêm ở task sau)"
        return
    fi
    print_banner
    echo "${C_TITLE}===== 🧹 Cleanup-server =====${C_RESET}"
    echo "    (menu chọn target sẽ thêm ở Task 2)"
}

main "$@"
