ini_set("rom_name",             "Panda Kernel");
ini_set("rom_version",          "v5.1.2-eas");
ini_set("rom_author",           "Pzqqt");
ini_set("rom_device",           "Whyred");
ini_set("rom_date",             "2020.04.15");
# Chinese & English & Modify By Pzqqt

ini_set("force_colorspace", "rgba");

fontresload("0", "ttf/Roboto-Regular.ttf", "12");
fontresload("1", "ttf/Roboto-Regular.ttf", "16"); 

theme("default");

splash(
    1500,
    "splash"
);

menubox(
    "\n<@center>Select Language</@>",
    "<@center><b>\n选择安装器语言\n\n\n\n</b></@>",
    "",
    "lang.prop",
    "English", "", "",
    "中文 (简体)", "", ""
);

if prop("lang.prop", "selected") == "1" then
    loadlang("langs/en.lang");
    setvar("pa_version",      "Version");
    setvar("pa_author",       "Author\t");
    setvar("pa_release",      "Release");
    setvar("pa_press_next",   "Press Next to continue ...");
    setvar("pa_error",        "Error!");
    setvar("pa_abort",        "Abort");
    setvar("pa_warning",      "Warning!");
    setvar("pa_ok",           "OK");

    setvar("pa_oc",           "Need CPU overclock?");
    setvar("pa_oc_1",         "Note: Choose \"yes\" if you need better performance\n& don't care about CPU life and battery life.");
    setvar("pa_oc_s1",        "Yes (big: 2208 MHz, LITTLE: 1843 MHz)");
    setvar("pa_oc_s2",        "No (Stock)");

    setvar("pa_uv",           "Select CPU & GPU UV");
    setvar("pa_uv_1",         "Note: Reduced voltage may cause device instability!\nSelect \"No UV\" if you are not sure.");
    setvar("pa_uv_s1",        "No UV (default)");
    setvar("pa_uv_s2",        "40 mV (Does not guarantee stability!)");
    setvar("pa_uv_s3",        "80 mV (Danger!)");

    setvar("pa_cam",          "Select camera blobs");
    setvar("pa_cam_1",        "Note: If the camera not working after flashing,\nplease reflash this kernel & select another option here.");
    setvar("pa_cam_s1",       "NEW camera blobs");
    setvar("pa_cam_s2",       "OLD camera blobs");

    setvar("pa_ready",        "Ready to install");
    setvar("pa_ready_1",      "Please confirm");
    setvar("pa_ready_s1",     "Install ");
    setvar("pa_ready_s2",     "Abort installation");
    setvar("pa_installing",   "Installing");
    setvar("pa_installing_1", "Installing Panda Kernel\nPlease wait");
    setvar("pa_ins_finish",   "Installation Completed");
    setvar("pa_ins_finish_1", "Congratulations!");
    setvar("pa_ins_finish_2", "has been installed into your device.");
    setvar("pa_reboot",       "Reboot your device now");
    setvar("pa_ins_failed",   "Installation Failed");
    setvar("pa_exit_code",    "Installer Status: ");
    setvar("pa_finish",       "Finish");
    setvar("pa_text_yes",     "Take the risk");
    setvar("pa_text_yes_s",   "Yes");
    setvar("pa_text_no",      "Give up");
    setvar("pa_text_no_s",    "No");
endif;

if prop("lang.prop", "selected") == "2" then
    loadlang("langs/cn.lang");
    setvar("pa_version",      "版本");
    setvar("pa_author",       "作者");
    setvar("pa_release",      "发布");
    setvar("pa_press_next",   "点击下一步继续...");
    setvar("pa_error",        "错误！");
    setvar("pa_abort",        "好吧");
    setvar("pa_warning",      "警告");
    setvar("pa_ok",           "好的");

    setvar("pa_oc",           "你需要 CPU 超频吗?");
    setvar("pa_oc_1",         "注意: 如果需要更好的性能并且\n不在乎 CPU 寿命和电池续航的话, 请选择\"是\"");
    setvar("pa_oc_s1",        "是 (大核: 2208 MHz, 小核: 1843 MHz)");
    setvar("pa_oc_s2",        "否 (默认频率)");

    setvar("pa_uv",           "选择 CPU & GPU 降压方案");
    setvar("pa_uv_1",         "注意: 降压可能会导致设备不稳定!\n如果你不确定, 请选择 \"不降压\".");
    setvar("pa_uv_s1",        "不降压 (默认)");
    setvar("pa_uv_s2",        "40 mV (不能保证稳定!)");
    setvar("pa_uv_s3",        "80 mV (危险!)");

    setvar("pa_cam",          "选择相机 blobs 版本");
    setvar("pa_cam_1",        "注意: 如果刷入内核之后相机出现问题,\n请重刷本内核并在此选择另一个选项.");
    setvar("pa_cam_s1",       "新版本");
    setvar("pa_cam_s2",       "旧版本");

    setvar("pa_ready",        "即将开始安装");
    setvar("pa_ready_1",      "请确认你的选择");
    setvar("pa_ready_s1",     "确认安装 ");
    setvar("pa_ready_s2",     "终止安装程序");
    setvar("pa_installing",   "正在安装");
    setvar("pa_installing_1", "正在安装 Panda 内核\n请稍候");
    setvar("pa_ins_finish",   "安装完成");
    setvar("pa_ins_finish_1", "完成！");
    setvar("pa_ins_finish_2", "已成功安装.");
    setvar("pa_reboot",       "现在重启？");
    setvar("pa_ins_failed",   "安装失败");
    setvar("pa_exit_code",    "安装状态：");
    setvar("pa_finish",       "完成");
    setvar("pa_text_yes",     "我愿意承担风险");
    setvar("pa_text_yes_s",   "同意");
    setvar("pa_text_no",      "还是算了吧");
    setvar("pa_text_no_s",    "放弃");
endif;

viewbox(
    "\n<@center>" + ini_get("rom_name") + "</@>",
    "<@center><b>\n" + ini_get("rom_device") + "</b>\n\n</@>" +
    "\n\n\n\n  " + getvar("pa_version") + " \t: <b><#selectbg_g>" + ini_get("rom_version") + "</#></b>\n" +
    "  " + getvar("pa_author") + " \t: <b><#selectbg_g>" + ini_get("rom_author") + "</#></b>\n" +
    "  " + getvar("pa_release") + " \t: <b><#selectbg_g>" + ini_get("rom_date") + "</#></b>\n\n\n" +
    getvar("pa_press_next"),
    ""
);

selectbox(
    "\n\n<@center>" + getvar("pa_oc") + "</@>",
    "<@center><b>\n\n\n\n\n\n\n\n" + getvar("pa_oc_1") + "\n</b></@>",
    "",
    "is_oc.prop",
    getvar("pa_oc_s1"), "", 0,
    getvar("pa_oc_s2"), "", 1
);

selectbox(
    "\n\n<@center>" + getvar("pa_uv") + "</@>",
    "<@center><b>\n\n\n\n\n\n\n\n" + getvar("pa_uv_1") + "\n</b></@>",
    "",
    "uv_level.prop",
    getvar("pa_uv_s1"), "", 1,
    getvar("pa_uv_s2"), "", 0,
    getvar("pa_uv_s3"), "", 0
);

selectbox(
    "\n\n<@center>" + getvar("pa_cam") + "</@>",
    "<@center><b>\n\n\n\n\n\n\n\n" + getvar("pa_cam_1") + "\n</b></@>",
    "",
    "is_fixcam.prop",
    getvar("pa_cam_s1"), "", 0,
    getvar("pa_cam_s2"), "", 1
);

menubox(
    "\n\n<@center>" + getvar("pa_ready") + "</@>",
    "<@center><b>\n\n\n\n\n\n\n\n" + getvar("pa_ready_1") + "\n</b></@>",
    "",
    "menu.prop",
    getvar("pa_ready_s1") + ini_get("rom_name") + " " + ini_get("rom_version"), "", "@install",
    getvar("pa_ready_s2"), "", "@trash"
);

prop("menu.prop", "selected") == "2" && exit("");

setvar("retstatus", install(
    "<@center>\n" + getvar("pa_installing") + "</@>",
    "<@center>\n" + getvar("pa_installing_1") + "</@>",
    "")
);

ini_set("text_next", getvar("pa_finish"));

if getvar("retstatus") == "0" then
    checkviewbox(
        getvar("pa_ins_finish"),
        "<#selectbg_g><b>" + getvar("pa_ins_finish_1") + "</b></#>\n\n" +
        "<b>" + ini_get("rom_name") + "</b> " + getvar("pa_ins_finish_2") + "\n\n" +
        getvar("pa_exit_code") + getvar("retstatus") + "\n\n",
        "@welcome",
        getvar("pa_reboot"),
        "0",
        "reboot_it"
    );
else
    viewbox(
        getvar("pa_ins_failed"),
        "\n\n" + getvar("pa_exit_code") + getvar("retstatus"),
        "@warning"
    );
endif;

getvar("reboot_it") == "1" && reboot("onfinish");
