diff --git a/zerotier/config.json.js b/zerotier/config.json.js index b091d472..8c69bd14 100644 --- a/zerotier/config.json.js +++ b/zerotier/config.json.js @@ -1,6 +1,6 @@ { "version":"1.5.2", -"md5":"20b5c0f6ab12a0378573e4a6967d61a3", +"md5":"2910c7e7a555b03165486d11b54a6d85", "home_url":"Module_zerotier.asp", "title":"ZeroTier", "description":"ZeroTier 内网穿透", @@ -8,5 +8,5 @@ "author":"sadog", "link":"", "changelog":"", -"build_date":"2025-11-02_21:31:55" +"build_date":"2026-03-17_22:59:25" } diff --git a/zerotier/version b/zerotier/version index 87232549..b0a117c4 100644 --- a/zerotier/version +++ b/zerotier/version @@ -1,2 +1,2 @@ 1.5.2 -20b5c0f6ab12a0378573e4a6967d61a3 +2910c7e7a555b03165486d11b54a6d85 diff --git a/zerotier/zerotier/scripts-hnd/zerotier_planet b/zerotier/zerotier/scripts-hnd/zerotier_planet new file mode 100755 index 00000000..e0dc7f5f --- /dev/null +++ b/zerotier/zerotier/scripts-hnd/zerotier_planet @@ -0,0 +1,113 @@ +#!/bin/sh + +source /koolshare/scripts/base.sh +alias echo_date='echo 【$(TZ=UTC-8 date -R +%Y年%m月%d日\ %X)】:' + +LOG_FILE=/tmp/upload/zerotier_log.txt +ZT_HOME=/koolshare/configs/zerotier-one + +restart_zt() { + if pidof zerotier-one >/dev/null 2>&1; then + echo_date "停止zerotier-one进程..." + killall zerotier-one 2>/dev/null + sleep 2 + fi + echo_date "启动zerotier-one进程..." + /koolshare/bin/zerotier-one -d "${ZT_HOME}" >/dev/null 2>&1 + sleep 1 + if pidof zerotier-one >/dev/null 2>&1; then + echo_date "zerotier-one已成功重启。" + else + echo_date "警告:zerotier-one启动失败,请尝试在主页面重启插件。" + fi +} + +case $2 in +upload_planet) + http_response "$1" + echo " " > ${LOG_FILE} + { + echo_date "开始应用自定义planet文件..." + PLANET_NAME=$(dbus get zerotier_planet_name) + if [ -z "${PLANET_NAME}" ]; then + echo_date "错误:未找到上传的planet文件名!" + echo_date "XU6J03M6" + exit 1 + fi + + UPLOAD_FILE="/tmp/upload/${PLANET_NAME}" + if [ ! -f "${UPLOAD_FILE}" ]; then + echo_date "错误:上传文件 ${PLANET_NAME} 不存在!" + echo_date "XU6J03M6" + exit 1 + fi + + if [ ! -s "${UPLOAD_FILE}" ]; then + echo_date "错误:上传文件为空!" + rm -f "${UPLOAD_FILE}" + echo_date "XU6J03M6" + exit 1 + fi + + mkdir -p "${ZT_HOME}" + + # Backup original planet file if not yet backed up + if [ -f "${ZT_HOME}/planet" ] && [ ! -f "${ZT_HOME}/planet.bak" ]; then + echo_date "备份原始planet文件..." + cp -f "${ZT_HOME}/planet" "${ZT_HOME}/planet.bak" + fi + + # Apply custom planet file + echo_date "应用自定义planet文件: ${PLANET_NAME}" + cp -f "${UPLOAD_FILE}" "${ZT_HOME}/planet" + rm -f "${UPLOAD_FILE}" + + # Record custom planet status + dbus set zerotier_custom_planet=1 + + # Restart zerotier if enabled + ENABLE=$(dbus get zerotier_enable) + if [ "${ENABLE}" = "1" ]; then + echo_date "重启zerotier以应用新的planet文件..." + restart_zt + else + echo_date "zerotier未启用,planet文件将在下次启动时生效。" + fi + + echo_date "自定义planet文件应用成功!" + echo_date "XU6J03M6" + } >> ${LOG_FILE} 2>&1 + ;; +delete_planet) + http_response "$1" + echo " " > ${LOG_FILE} + { + echo_date "开始恢复默认planet文件..." + + if [ -f "${ZT_HOME}/planet.bak" ]; then + echo_date "从备份恢复默认planet文件..." + cp -f "${ZT_HOME}/planet.bak" "${ZT_HOME}/planet" + rm -f "${ZT_HOME}/planet.bak" + echo_date "默认planet文件已恢复。" + else + echo_date "未找到planet备份文件,无法恢复。" + echo_date "XU6J03M6" + exit 1 + fi + + dbus remove zerotier_custom_planet + + # Restart zerotier if enabled + ENABLE=$(dbus get zerotier_enable) + if [ "${ENABLE}" = "1" ]; then + echo_date "重启zerotier以恢复默认planet..." + restart_zt + else + echo_date "zerotier未启用,将在下次启动时使用默认planet。" + fi + + echo_date "已恢复默认planet文件!" + echo_date "XU6J03M6" + } >> ${LOG_FILE} 2>&1 + ;; +esac diff --git a/zerotier/zerotier/scripts-ipq32/zerotier_planet b/zerotier/zerotier/scripts-ipq32/zerotier_planet new file mode 100755 index 00000000..e0dc7f5f --- /dev/null +++ b/zerotier/zerotier/scripts-ipq32/zerotier_planet @@ -0,0 +1,113 @@ +#!/bin/sh + +source /koolshare/scripts/base.sh +alias echo_date='echo 【$(TZ=UTC-8 date -R +%Y年%m月%d日\ %X)】:' + +LOG_FILE=/tmp/upload/zerotier_log.txt +ZT_HOME=/koolshare/configs/zerotier-one + +restart_zt() { + if pidof zerotier-one >/dev/null 2>&1; then + echo_date "停止zerotier-one进程..." + killall zerotier-one 2>/dev/null + sleep 2 + fi + echo_date "启动zerotier-one进程..." + /koolshare/bin/zerotier-one -d "${ZT_HOME}" >/dev/null 2>&1 + sleep 1 + if pidof zerotier-one >/dev/null 2>&1; then + echo_date "zerotier-one已成功重启。" + else + echo_date "警告:zerotier-one启动失败,请尝试在主页面重启插件。" + fi +} + +case $2 in +upload_planet) + http_response "$1" + echo " " > ${LOG_FILE} + { + echo_date "开始应用自定义planet文件..." + PLANET_NAME=$(dbus get zerotier_planet_name) + if [ -z "${PLANET_NAME}" ]; then + echo_date "错误:未找到上传的planet文件名!" + echo_date "XU6J03M6" + exit 1 + fi + + UPLOAD_FILE="/tmp/upload/${PLANET_NAME}" + if [ ! -f "${UPLOAD_FILE}" ]; then + echo_date "错误:上传文件 ${PLANET_NAME} 不存在!" + echo_date "XU6J03M6" + exit 1 + fi + + if [ ! -s "${UPLOAD_FILE}" ]; then + echo_date "错误:上传文件为空!" + rm -f "${UPLOAD_FILE}" + echo_date "XU6J03M6" + exit 1 + fi + + mkdir -p "${ZT_HOME}" + + # Backup original planet file if not yet backed up + if [ -f "${ZT_HOME}/planet" ] && [ ! -f "${ZT_HOME}/planet.bak" ]; then + echo_date "备份原始planet文件..." + cp -f "${ZT_HOME}/planet" "${ZT_HOME}/planet.bak" + fi + + # Apply custom planet file + echo_date "应用自定义planet文件: ${PLANET_NAME}" + cp -f "${UPLOAD_FILE}" "${ZT_HOME}/planet" + rm -f "${UPLOAD_FILE}" + + # Record custom planet status + dbus set zerotier_custom_planet=1 + + # Restart zerotier if enabled + ENABLE=$(dbus get zerotier_enable) + if [ "${ENABLE}" = "1" ]; then + echo_date "重启zerotier以应用新的planet文件..." + restart_zt + else + echo_date "zerotier未启用,planet文件将在下次启动时生效。" + fi + + echo_date "自定义planet文件应用成功!" + echo_date "XU6J03M6" + } >> ${LOG_FILE} 2>&1 + ;; +delete_planet) + http_response "$1" + echo " " > ${LOG_FILE} + { + echo_date "开始恢复默认planet文件..." + + if [ -f "${ZT_HOME}/planet.bak" ]; then + echo_date "从备份恢复默认planet文件..." + cp -f "${ZT_HOME}/planet.bak" "${ZT_HOME}/planet" + rm -f "${ZT_HOME}/planet.bak" + echo_date "默认planet文件已恢复。" + else + echo_date "未找到planet备份文件,无法恢复。" + echo_date "XU6J03M6" + exit 1 + fi + + dbus remove zerotier_custom_planet + + # Restart zerotier if enabled + ENABLE=$(dbus get zerotier_enable) + if [ "${ENABLE}" = "1" ]; then + echo_date "重启zerotier以恢复默认planet..." + restart_zt + else + echo_date "zerotier未启用,将在下次启动时使用默认planet。" + fi + + echo_date "已恢复默认planet文件!" + echo_date "XU6J03M6" + } >> ${LOG_FILE} 2>&1 + ;; +esac diff --git a/zerotier/zerotier/scripts-ipq64/zerotier_planet b/zerotier/zerotier/scripts-ipq64/zerotier_planet new file mode 100755 index 00000000..e0dc7f5f --- /dev/null +++ b/zerotier/zerotier/scripts-ipq64/zerotier_planet @@ -0,0 +1,113 @@ +#!/bin/sh + +source /koolshare/scripts/base.sh +alias echo_date='echo 【$(TZ=UTC-8 date -R +%Y年%m月%d日\ %X)】:' + +LOG_FILE=/tmp/upload/zerotier_log.txt +ZT_HOME=/koolshare/configs/zerotier-one + +restart_zt() { + if pidof zerotier-one >/dev/null 2>&1; then + echo_date "停止zerotier-one进程..." + killall zerotier-one 2>/dev/null + sleep 2 + fi + echo_date "启动zerotier-one进程..." + /koolshare/bin/zerotier-one -d "${ZT_HOME}" >/dev/null 2>&1 + sleep 1 + if pidof zerotier-one >/dev/null 2>&1; then + echo_date "zerotier-one已成功重启。" + else + echo_date "警告:zerotier-one启动失败,请尝试在主页面重启插件。" + fi +} + +case $2 in +upload_planet) + http_response "$1" + echo " " > ${LOG_FILE} + { + echo_date "开始应用自定义planet文件..." + PLANET_NAME=$(dbus get zerotier_planet_name) + if [ -z "${PLANET_NAME}" ]; then + echo_date "错误:未找到上传的planet文件名!" + echo_date "XU6J03M6" + exit 1 + fi + + UPLOAD_FILE="/tmp/upload/${PLANET_NAME}" + if [ ! -f "${UPLOAD_FILE}" ]; then + echo_date "错误:上传文件 ${PLANET_NAME} 不存在!" + echo_date "XU6J03M6" + exit 1 + fi + + if [ ! -s "${UPLOAD_FILE}" ]; then + echo_date "错误:上传文件为空!" + rm -f "${UPLOAD_FILE}" + echo_date "XU6J03M6" + exit 1 + fi + + mkdir -p "${ZT_HOME}" + + # Backup original planet file if not yet backed up + if [ -f "${ZT_HOME}/planet" ] && [ ! -f "${ZT_HOME}/planet.bak" ]; then + echo_date "备份原始planet文件..." + cp -f "${ZT_HOME}/planet" "${ZT_HOME}/planet.bak" + fi + + # Apply custom planet file + echo_date "应用自定义planet文件: ${PLANET_NAME}" + cp -f "${UPLOAD_FILE}" "${ZT_HOME}/planet" + rm -f "${UPLOAD_FILE}" + + # Record custom planet status + dbus set zerotier_custom_planet=1 + + # Restart zerotier if enabled + ENABLE=$(dbus get zerotier_enable) + if [ "${ENABLE}" = "1" ]; then + echo_date "重启zerotier以应用新的planet文件..." + restart_zt + else + echo_date "zerotier未启用,planet文件将在下次启动时生效。" + fi + + echo_date "自定义planet文件应用成功!" + echo_date "XU6J03M6" + } >> ${LOG_FILE} 2>&1 + ;; +delete_planet) + http_response "$1" + echo " " > ${LOG_FILE} + { + echo_date "开始恢复默认planet文件..." + + if [ -f "${ZT_HOME}/planet.bak" ]; then + echo_date "从备份恢复默认planet文件..." + cp -f "${ZT_HOME}/planet.bak" "${ZT_HOME}/planet" + rm -f "${ZT_HOME}/planet.bak" + echo_date "默认planet文件已恢复。" + else + echo_date "未找到planet备份文件,无法恢复。" + echo_date "XU6J03M6" + exit 1 + fi + + dbus remove zerotier_custom_planet + + # Restart zerotier if enabled + ENABLE=$(dbus get zerotier_enable) + if [ "${ENABLE}" = "1" ]; then + echo_date "重启zerotier以恢复默认planet..." + restart_zt + else + echo_date "zerotier未启用,将在下次启动时使用默认planet。" + fi + + echo_date "已恢复默认planet文件!" + echo_date "XU6J03M6" + } >> ${LOG_FILE} 2>&1 + ;; +esac diff --git a/zerotier/zerotier/scripts-mtk/zerotier_planet b/zerotier/zerotier/scripts-mtk/zerotier_planet new file mode 100755 index 00000000..e0dc7f5f --- /dev/null +++ b/zerotier/zerotier/scripts-mtk/zerotier_planet @@ -0,0 +1,113 @@ +#!/bin/sh + +source /koolshare/scripts/base.sh +alias echo_date='echo 【$(TZ=UTC-8 date -R +%Y年%m月%d日\ %X)】:' + +LOG_FILE=/tmp/upload/zerotier_log.txt +ZT_HOME=/koolshare/configs/zerotier-one + +restart_zt() { + if pidof zerotier-one >/dev/null 2>&1; then + echo_date "停止zerotier-one进程..." + killall zerotier-one 2>/dev/null + sleep 2 + fi + echo_date "启动zerotier-one进程..." + /koolshare/bin/zerotier-one -d "${ZT_HOME}" >/dev/null 2>&1 + sleep 1 + if pidof zerotier-one >/dev/null 2>&1; then + echo_date "zerotier-one已成功重启。" + else + echo_date "警告:zerotier-one启动失败,请尝试在主页面重启插件。" + fi +} + +case $2 in +upload_planet) + http_response "$1" + echo " " > ${LOG_FILE} + { + echo_date "开始应用自定义planet文件..." + PLANET_NAME=$(dbus get zerotier_planet_name) + if [ -z "${PLANET_NAME}" ]; then + echo_date "错误:未找到上传的planet文件名!" + echo_date "XU6J03M6" + exit 1 + fi + + UPLOAD_FILE="/tmp/upload/${PLANET_NAME}" + if [ ! -f "${UPLOAD_FILE}" ]; then + echo_date "错误:上传文件 ${PLANET_NAME} 不存在!" + echo_date "XU6J03M6" + exit 1 + fi + + if [ ! -s "${UPLOAD_FILE}" ]; then + echo_date "错误:上传文件为空!" + rm -f "${UPLOAD_FILE}" + echo_date "XU6J03M6" + exit 1 + fi + + mkdir -p "${ZT_HOME}" + + # Backup original planet file if not yet backed up + if [ -f "${ZT_HOME}/planet" ] && [ ! -f "${ZT_HOME}/planet.bak" ]; then + echo_date "备份原始planet文件..." + cp -f "${ZT_HOME}/planet" "${ZT_HOME}/planet.bak" + fi + + # Apply custom planet file + echo_date "应用自定义planet文件: ${PLANET_NAME}" + cp -f "${UPLOAD_FILE}" "${ZT_HOME}/planet" + rm -f "${UPLOAD_FILE}" + + # Record custom planet status + dbus set zerotier_custom_planet=1 + + # Restart zerotier if enabled + ENABLE=$(dbus get zerotier_enable) + if [ "${ENABLE}" = "1" ]; then + echo_date "重启zerotier以应用新的planet文件..." + restart_zt + else + echo_date "zerotier未启用,planet文件将在下次启动时生效。" + fi + + echo_date "自定义planet文件应用成功!" + echo_date "XU6J03M6" + } >> ${LOG_FILE} 2>&1 + ;; +delete_planet) + http_response "$1" + echo " " > ${LOG_FILE} + { + echo_date "开始恢复默认planet文件..." + + if [ -f "${ZT_HOME}/planet.bak" ]; then + echo_date "从备份恢复默认planet文件..." + cp -f "${ZT_HOME}/planet.bak" "${ZT_HOME}/planet" + rm -f "${ZT_HOME}/planet.bak" + echo_date "默认planet文件已恢复。" + else + echo_date "未找到planet备份文件,无法恢复。" + echo_date "XU6J03M6" + exit 1 + fi + + dbus remove zerotier_custom_planet + + # Restart zerotier if enabled + ENABLE=$(dbus get zerotier_enable) + if [ "${ENABLE}" = "1" ]; then + echo_date "重启zerotier以恢复默认planet..." + restart_zt + else + echo_date "zerotier未启用,将在下次启动时使用默认planet。" + fi + + echo_date "已恢复默认planet文件!" + echo_date "XU6J03M6" + } >> ${LOG_FILE} 2>&1 + ;; +esac diff --git a/zerotier/zerotier/scripts-qca/zerotier_planet b/zerotier/zerotier/scripts-qca/zerotier_planet new file mode 100755 index 00000000..e0dc7f5f --- /dev/null +++ b/zerotier/zerotier/scripts-qca/zerotier_planet @@ -0,0 +1,113 @@ +#!/bin/sh + +source /koolshare/scripts/base.sh +alias echo_date='echo 【$(TZ=UTC-8 date -R +%Y年%m月%d日\ %X)】:' + +LOG_FILE=/tmp/upload/zerotier_log.txt +ZT_HOME=/koolshare/configs/zerotier-one + +restart_zt() { + if pidof zerotier-one >/dev/null 2>&1; then + echo_date "停止zerotier-one进程..." + killall zerotier-one 2>/dev/null + sleep 2 + fi + echo_date "启动zerotier-one进程..." + /koolshare/bin/zerotier-one -d "${ZT_HOME}" >/dev/null 2>&1 + sleep 1 + if pidof zerotier-one >/dev/null 2>&1; then + echo_date "zerotier-one已成功重启。" + else + echo_date "警告:zerotier-one启动失败,请尝试在主页面重启插件。" + fi +} + +case $2 in +upload_planet) + http_response "$1" + echo " " > ${LOG_FILE} + { + echo_date "开始应用自定义planet文件..." + PLANET_NAME=$(dbus get zerotier_planet_name) + if [ -z "${PLANET_NAME}" ]; then + echo_date "错误:未找到上传的planet文件名!" + echo_date "XU6J03M6" + exit 1 + fi + + UPLOAD_FILE="/tmp/upload/${PLANET_NAME}" + if [ ! -f "${UPLOAD_FILE}" ]; then + echo_date "错误:上传文件 ${PLANET_NAME} 不存在!" + echo_date "XU6J03M6" + exit 1 + fi + + if [ ! -s "${UPLOAD_FILE}" ]; then + echo_date "错误:上传文件为空!" + rm -f "${UPLOAD_FILE}" + echo_date "XU6J03M6" + exit 1 + fi + + mkdir -p "${ZT_HOME}" + + # Backup original planet file if not yet backed up + if [ -f "${ZT_HOME}/planet" ] && [ ! -f "${ZT_HOME}/planet.bak" ]; then + echo_date "备份原始planet文件..." + cp -f "${ZT_HOME}/planet" "${ZT_HOME}/planet.bak" + fi + + # Apply custom planet file + echo_date "应用自定义planet文件: ${PLANET_NAME}" + cp -f "${UPLOAD_FILE}" "${ZT_HOME}/planet" + rm -f "${UPLOAD_FILE}" + + # Record custom planet status + dbus set zerotier_custom_planet=1 + + # Restart zerotier if enabled + ENABLE=$(dbus get zerotier_enable) + if [ "${ENABLE}" = "1" ]; then + echo_date "重启zerotier以应用新的planet文件..." + restart_zt + else + echo_date "zerotier未启用,planet文件将在下次启动时生效。" + fi + + echo_date "自定义planet文件应用成功!" + echo_date "XU6J03M6" + } >> ${LOG_FILE} 2>&1 + ;; +delete_planet) + http_response "$1" + echo " " > ${LOG_FILE} + { + echo_date "开始恢复默认planet文件..." + + if [ -f "${ZT_HOME}/planet.bak" ]; then + echo_date "从备份恢复默认planet文件..." + cp -f "${ZT_HOME}/planet.bak" "${ZT_HOME}/planet" + rm -f "${ZT_HOME}/planet.bak" + echo_date "默认planet文件已恢复。" + else + echo_date "未找到planet备份文件,无法恢复。" + echo_date "XU6J03M6" + exit 1 + fi + + dbus remove zerotier_custom_planet + + # Restart zerotier if enabled + ENABLE=$(dbus get zerotier_enable) + if [ "${ENABLE}" = "1" ]; then + echo_date "重启zerotier以恢复默认planet..." + restart_zt + else + echo_date "zerotier未启用,将在下次启动时使用默认planet。" + fi + + echo_date "已恢复默认planet文件!" + echo_date "XU6J03M6" + } >> ${LOG_FILE} 2>&1 + ;; +esac diff --git a/zerotier/zerotier/webs/Module_zerotier.asp b/zerotier/zerotier/webs/Module_zerotier.asp index ea7476b1..5a46b9f4 100644 --- a/zerotier/zerotier/webs/Module_zerotier.asp +++ b/zerotier/zerotier/webs/Module_zerotier.asp @@ -264,13 +264,13 @@ input[type=button]:focus { width:740px; border:1px solid #2ED9C3 } -#app[skin=ROG] #zerotier_main, #app[skin=ROG] #zerotier_peers_status_div, #app[skin=ROG] #zt_moons_settings, #app[skin=ROG] #zerotier_ztnets, #app[skin=ROG] #zerotier_route_div_2, #app[skin=ROG] #zt_moons_settings_div, #app[skin=ROG] #zerotier_interface_div_0, #app[skin=ROG] #zerotier_interface_div_1, #app[skin=ROG] #zerotier_interface_div_2, #app[skin=ROG] #zerotier_interface_div_3, #app[skin=ROG] #zerotier_interface_div_4, #app[skin=ROG] #zerotier_interface_div_5 { +#app[skin=ROG] #zerotier_main, #app[skin=ROG] #zerotier_peers_status_div, #app[skin=ROG] #zt_moons_settings, #app[skin=ROG] #zt_planet_settings, #app[skin=ROG] #zerotier_ztnets, #app[skin=ROG] #zerotier_route_div_2, #app[skin=ROG] #zt_moons_settings_div, #app[skin=ROG] #zt_planet_settings_div, #app[skin=ROG] #zerotier_interface_div_0, #app[skin=ROG] #zerotier_interface_div_1, #app[skin=ROG] #zerotier_interface_div_2, #app[skin=ROG] #zerotier_interface_div_3, #app[skin=ROG] #zerotier_interface_div_4, #app[skin=ROG] #zerotier_interface_div_5 { border: 1px solid #91071f; } -#app[skin=TUF] #zerotier_main, #app[skin=TUF] #zerotier_peers_status_div, #app[skin=TUF] #zt_moons_settings, #app[skin=TUF] #zerotier_ztnets, #app[skin=TUF] #zerotier_route_div_2, #app[skin=TUF] #zt_moons_settings_div, #app[skin=TUF] #zerotier_interface_div_0, #app[skin=TUF] #zerotier_interface_div_1, #app[skin=TUF] #zerotier_interface_div_2, #app[skin=TUF] #zerotier_interface_div_3, #app[skin=TUF] #zerotier_interface_div_4, #app[skin=TUF] #zerotier_interface_div_5 { +#app[skin=TUF] #zerotier_main, #app[skin=TUF] #zerotier_peers_status_div, #app[skin=TUF] #zt_moons_settings, #app[skin=TUF] #zt_planet_settings, #app[skin=TUF] #zerotier_ztnets, #app[skin=TUF] #zerotier_route_div_2, #app[skin=TUF] #zt_moons_settings_div, #app[skin=TUF] #zt_planet_settings_div, #app[skin=TUF] #zerotier_interface_div_0, #app[skin=TUF] #zerotier_interface_div_1, #app[skin=TUF] #zerotier_interface_div_2, #app[skin=TUF] #zerotier_interface_div_3, #app[skin=TUF] #zerotier_interface_div_4, #app[skin=TUF] #zerotier_interface_div_5 { border: 1px solid #92650F; } -#app[skin=TS] #zerotier_main, #app[skin=TS] #zerotier_peers_status_div, #app[skin=TS] #zt_moons_settings, #app[skin=TS] #zerotier_ztnets, #app[skin=TS] #zerotier_route_div_2, #app[skin=TS] #zt_moons_settings_div, #app[skin=TS] #zerotier_interface_div_0, #app[skin=TS] #zerotier_interface_div_1, #app[skin=TS] #zerotier_interface_div_2, #app[skin=TS] #zerotier_interface_div_3, #app[skin=TS] #zerotier_interface_div_4, #app[skin=TS] #zerotier_interface_div_5 { +#app[skin=TS] #zerotier_main, #app[skin=TS] #zerotier_peers_status_div, #app[skin=TS] #zt_moons_settings, #app[skin=TS] #zt_planet_settings, #app[skin=TS] #zerotier_ztnets, #app[skin=TS] #zerotier_route_div_2, #app[skin=TS] #zt_moons_settings_div, #app[skin=TS] #zt_planet_settings_div, #app[skin=TS] #zerotier_interface_div_0, #app[skin=TS] #zerotier_interface_div_1, #app[skin=TS] #zerotier_interface_div_2, #app[skin=TS] #zerotier_interface_div_3, #app[skin=TS] #zerotier_interface_div_4, #app[skin=TS] #zerotier_interface_div_5 { border: 1px solid #2ED9C3; } @@ -387,6 +387,17 @@ function register_event(){ } $('#zt_moons_settings').offset({top: moon_h_offset, left: moon_w_offset}); } + if($('#zt_planet_settings').css("visibility") == "visible"){ + document.scrollingElement.scrollTop = 0; + var planet_h = E("zt_planet_settings").clientHeight; + var planet_w = E("zt_planet_settings").clientWidth; + var planet_h_offset = (page_h - planet_h) / 2 - 90; + var planet_w_offset = (page_w - planet_w) / 2 + 90; + if(planet_h_offset < 0){ + planet_h_offset = 10; + } + $('#zt_planet_settings').offset({top: planet_h_offset, left: planet_w_offset}); + } }); } @@ -1118,6 +1129,103 @@ function apply_uppoaded_moon(Info) { } }); } +function open_planet_sett() { + $('body').prepend(tableApi.genFullScreen()); + $('.fullScreen').show(); + check_planet_status(); + document.scrollingElement.scrollTop = 0; + E("zt_planet_settings").style.visibility = "visible"; + var page_h = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight; + var page_w = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; + var planet_h = E("zt_planet_settings").clientHeight; + var planet_w = E("zt_planet_settings").clientWidth; + var planet_h_offset = (page_h - planet_h) / 2 - 90; + var planet_w_offset = (page_w - planet_w) / 2 + 90; + if(planet_h_offset < 0){ + planet_h_offset = 10; + } + $('#zt_planet_settings').offset({top: planet_h_offset, left: planet_w_offset}); +} +function close_planet_sett() { + E("zt_planet_settings").style.visibility = "hidden"; + $("body").find(".fullScreen").fadeOut(0, function() { tableApi.removeElement("fullScreen"); }); +} +function check_planet_status() { + var custom_planet = dbus["zerotier_custom_planet"]; + if (custom_planet == "1") { + E("zerotier_planet_status").innerHTML = '使用自定义planet'; + } else { + E("zerotier_planet_status").innerHTML = '使用默认planet'; + } +} +function upload_planet() { + var file_name = $("#planet_file").val(); + if(!file_name){ + alert('文件为空,请选择planet文件!'); + return false; + } + file_name = file_name.split('\\'); + file_name = file_name[file_name.length - 1]; + document.getElementById('planet_file_info').style.display = "none"; + var formData = new FormData(); + formData.append(file_name, $('#planet_file')[0].files[0]); + $.ajax({ + url: '/_upload', + type: 'POST', + cache: false, + data: formData, + processData: false, + contentType: false, + complete: function(res) { + if (res.status == 200) { + var Info = { + "zerotier_planet_name": file_name, + }; + document.getElementById('planet_file_info').style.display = "block"; + apply_uploaded_planet(Info); + } + } + }); +} +function apply_uploaded_planet(Info) { + var id = parseInt(Math.random() * 100000000); + var postData = {"id": id, "method": "zerotier_planet", "params": ["upload_planet"], "fields": Info }; + $.ajax({ + type: "POST", + url: "/_api/", + data: JSON.stringify(postData), + dataType: "json", + success: function(response) { + if(response.result == id){ + E("zt_planet_settings").style.visibility = "hidden"; + $("body").find(".fullScreen").fadeOut(0, function() { tableApi.removeElement("fullScreen"); }); + dbus["zerotier_custom_planet"] = "1"; + get_log(); + } + } + }); +} +function delete_planet() { + if (!confirm("确定要恢复默认planet文件吗?")) { + return false; + } + var id = parseInt(Math.random() * 100000000); + var postData = {"id": id, "method": "zerotier_planet", "params": ["delete_planet"], "fields": {} }; + $.ajax({ + type: "POST", + url: "/_api/", + data: JSON.stringify(postData), + dataType: "json", + success: function(response) { + if(response.result == id){ + E("zt_planet_settings").style.visibility = "hidden"; + $("body").find(".fullScreen").fadeOut(0, function() { tableApi.removeElement("fullScreen"); }); + dbus["zerotier_custom_planet"] = "0"; + get_log(); + } + } + }); +} @@ -1199,6 +1307,51 @@ function apply_uppoaded_moon(Info) { + +
+ + + + +
+
zerotier planet 配置
+
+ + + + + + + + + + + + + + + + + + +
zerotier - 自定义 planet
当前状态 + 检测中... +
上传自定义planet文件 +  上传planet文件 + + + +
恢复默认planet +  恢复默认planet +
+
+
+ 自定义planet文件用于连接私有ZeroTier根服务器。上传后将自动替换默认planet并重启zerotier。 +
+ +
+
+ @@ -1280,6 +1433,7 @@ function apply_uppoaded_moon(Info) {
  zerotier peers zerotier moons + zerotier planet