update 2025-03-20 10:53:12
This commit is contained in:
parent
9476363a01
commit
5c3c4593f0
|
@ -68,7 +68,6 @@ body {
|
|||
-moz-osx-font-smoothing: grayscale;
|
||||
text-rendering: optimizeLegibility;
|
||||
|
||||
|
||||
}
|
||||
|
||||
h1 {
|
||||
|
@ -185,6 +184,7 @@ form .form-control {
|
|||
}
|
||||
|
||||
.form-select option {
|
||||
background-color: oklch(38% .20 240) !important;
|
||||
background-color: var(--bs-form-select);
|
||||
color: var(--bs-radius-bg) !important;
|
||||
}
|
||||
|
@ -529,12 +529,13 @@ button:disabled {
|
|||
}
|
||||
|
||||
.royal-style {
|
||||
font-family: 'Cinzel Decorative', cursive;
|
||||
font-weight: 900;
|
||||
font-size: 80px;
|
||||
letter-spacing: 4px;
|
||||
text-align: center;
|
||||
margin-top: 20px;
|
||||
font-family: 'Cinzel Decorative', cursive !important;
|
||||
font-weight: 900 !important;
|
||||
font-size: 80px !important;
|
||||
letter-spacing: 4px !important;
|
||||
text-align: center !important;
|
||||
margin-top: 20px !important;
|
||||
transition: all var(-- bs-transition-speed);
|
||||
}
|
||||
|
||||
.royal-style:hover {
|
||||
|
@ -610,12 +611,12 @@ h1:hover, h2:hover, h3:hover, h4:hover, h5:hover, h6:hover {
|
|||
}
|
||||
|
||||
.royal-style {
|
||||
font-family: 'Cinzel Decorative', cursive;
|
||||
font-weight: 900;
|
||||
font-size: 80px;
|
||||
letter-spacing: 4px;
|
||||
text-align: center;
|
||||
margin-top: 20px;
|
||||
font-family: 'Cinzel Decorative', cursive !important;
|
||||
font-weight: 900 !important;
|
||||
font-size: 80px !important;
|
||||
letter-spacing: 4px !important;
|
||||
text-align: center !important;
|
||||
margin-top: 20px !important;
|
||||
transition: all var(-- bs-transition-speed);
|
||||
}
|
||||
|
||||
|
|
|
@ -737,6 +737,7 @@
|
|||
'delete_old_config' => 'Alte Konfigurationsdateien für eine neue Installation löschen',
|
||||
'tmp_neko_cleared' => 'Das Verzeichnis /tmp/neko wurde erfolgreich gelöscht.',
|
||||
'tmp_neko_not_exist' => 'Das Verzeichnis /tmp/neko existiert nicht. Keine Maßnahmen wurden ergriffen.',
|
||||
'enable_openwrt_theme' => 'OpenWRT-Design-Kompatibilitätsmodus aktivieren (Erfordert das luci-theme-spectra Design)',
|
||||
'subscribeUrlPlaceholder' => 'Bitte geben Sie den Abonnement-Link ein, trennen Sie mehrere Links mit |',
|
||||
'statusMessages' => [
|
||||
'https://www.baidu.com/' => ['accessible' => 'Die Website von Baidu ist erreichbar.', 'notAccessible' => 'Die Website von Baidu ist nicht erreichbar, bitte überprüfen Sie die Netzwerkverbindung.'],
|
||||
|
@ -1519,6 +1520,7 @@
|
|||
'clear_config' => 'Effacer la configuration',
|
||||
'delete_old_config' => 'Supprimer les anciens fichiers de configuration pour une nouvelle installation',
|
||||
'tmp_neko_cleared' => 'Le répertoire /tmp/neko a été effacé avec succès.',
|
||||
'enable_openwrt_theme' => 'Activer le mode de compatibilité du thème OpenWRT (Requiert le thème luci-theme-spectra installé)',
|
||||
'tmp_neko_not_exist' => 'Le répertoire /tmp/neko n\'existe pas. Aucune action n\'a été entreprise.',
|
||||
'subscribeUrlPlaceholder' => 'Veuillez entrer le lien d\'abonnement, séparez plusieurs liens par |',
|
||||
'statusMessages' => [
|
||||
|
@ -2380,6 +2382,7 @@
|
|||
'delete_old_config' => '删除旧配置文件全新安装',
|
||||
'tmp_neko_cleared' => '已成功清理 /tmp/neko 目录。',
|
||||
'tmp_neko_not_exist' => '/tmp/neko 目录不存在。未采取任何行动。',
|
||||
'enable_openwrt_theme' => '启用 OpenWRT 主题兼容模式「需安装 luci-theme-spectra 主题」',
|
||||
'subscribeUrlPlaceholder' => '请输入订阅链接,多个链接用 | 分隔'
|
||||
],
|
||||
'en' => [
|
||||
|
@ -3200,6 +3203,7 @@
|
|||
'state_cleared' => '✅ Player state cleared',
|
||||
'clear_config' => 'Clear Config',
|
||||
'delete_old_config' => 'Delete old configuration files for a fresh install',
|
||||
'enable_openwrt_theme' => 'Enable OpenWRT theme compatibility mode (Requires luci-theme-spectra theme installed)',
|
||||
'tmp_neko_cleared' => 'The /tmp/neko directory has been successfully cleared.',
|
||||
'tmp_neko_not_exist' => 'The /tmp/neko directory does not exist. No action taken.',
|
||||
'subscribeUrlPlaceholder' => 'Please enter the subscription link, separate multiple links with |',
|
||||
|
@ -3993,6 +3997,7 @@
|
|||
'state_cleared' => '✅ 播放器狀態已清除',
|
||||
'clear_config' => '清除配置',
|
||||
'delete_old_config' => '刪除舊配置文件全新安裝',
|
||||
'enable_openwrt_theme' => '啟用 OpenWRT 主題兼容模式(需要安裝 luci-theme-spectra 主題)',
|
||||
'tmp_neko_cleared' => '已成功清理 /tmp/neko 目錄。',
|
||||
'tmp_neko_not_exist' => '/tmp/neko 目錄不存在。未採取任何行動。',
|
||||
'subscribeUrlPlaceholder' => '請輸入訂閱鏈接,多個鏈接用 | 分隔',
|
||||
|
@ -4777,6 +4782,7 @@
|
|||
'state_cleared' => '✅ 플레이어 상태가 초기화되었습니다',
|
||||
'clear_config' => '설정 지우기',
|
||||
'delete_old_config' => '새 설치를 위한 오래된 설정 파일 삭제',
|
||||
'enable_openwrt_theme' => 'OpenWRT 테마 호환 모드 활성화 (luci-theme-spectra 테마 필요)',
|
||||
'tmp_neko_cleared' => '/tmp/neko 디렉토리가 성공적으로 지워졌습니다.',
|
||||
'tmp_neko_not_exist' => '/tmp/neko 디렉토리가 존재하지 않습니다. 조치가 취해지지 않았습니다.',
|
||||
'subscribeUrlPlaceholder' => '구독 링크를 입력하십시오. 여러 링크는 | 로 구분하십시오.',
|
||||
|
@ -5549,6 +5555,7 @@
|
|||
'state_cleared' => '✅ プレーヤーの状態がクリアされました',
|
||||
'clear_config' => '設定をクリア',
|
||||
'delete_old_config' => '新規インストールのための古い設定ファイルを削除',
|
||||
'enable_openwrt_theme' => 'OpenWRT テーマ互換モードを有効にする(luci-theme-spectra テーマが必要)',
|
||||
'tmp_neko_cleared' => '/tmp/neko ディレクトリが正常にクリアされました。',
|
||||
'tmp_neko_not_exist' => '/tmp/neko ディレクトリは存在しません。行動は取られませんでした。',
|
||||
'subscribeUrlPlaceholder' => '購読リンクを入力してください。複数のリンクは | で区切ります。',
|
||||
|
@ -6321,6 +6328,7 @@
|
|||
'state_cleared' => '✅ Состояние плеера очищено',
|
||||
'clear_config' => 'Очистить конфигурацию',
|
||||
'delete_old_config' => 'Удалить старые файлы конфигурации для новой установки',
|
||||
'enable_openwrt_theme' => 'Включить режим совместимости с темой OpenWRT (Требуется установленная тема luci-theme-spectra)',
|
||||
'tmp_neko_cleared' => 'Каталог /tmp/neko успешно очищен.',
|
||||
'tmp_neko_not_exist' => 'Каталог /tmp/neko не существует. Действия не предпринимались.',
|
||||
'subscribeUrlPlaceholder' => 'Пожалуйста, введите ссылку на подписку, разделяйте несколько ссылок с помощью |',
|
||||
|
@ -7104,6 +7112,7 @@
|
|||
'state_cleared' => '✅ تم مسح حالة المشغل',
|
||||
'clear_config' => 'مسح التكوين',
|
||||
'delete_old_config' => 'حذف ملفات التكوين القديمة لتثبيت جديد',
|
||||
'enable_openwrt_theme' => 'تمكين وضع توافق سمة OpenWRT (يتطلب تثبيت سمة luci-theme-spectra)',
|
||||
'tmp_neko_cleared' => 'تم مسح دليل /tmp/neko بنجاح.',
|
||||
'tmp_neko_not_exist' => 'دليل /tmp/neko غير موجود. لم يتم اتخاذ أي إجراء.',
|
||||
'subscribeUrlPlaceholder' => 'يرجى إدخال رابط الاشتراك، ويفصل بين الروابط المتعددة بواسطة |',
|
||||
|
@ -7890,6 +7899,7 @@
|
|||
'state_cleared' => '✅ Estado del reproductor borrado',
|
||||
'clear_config' => 'Borrar configuración',
|
||||
'delete_old_config' => 'Eliminar archivos de configuración antiguos para una instalación nueva',
|
||||
'enable_openwrt_theme' => 'Habilitar el modo de compatibilidad con el tema OpenWRT (Requiere el tema luci-theme-spectra instalado)',
|
||||
'tmp_neko_cleared' => 'El directorio /tmp/neko ha sido borrado con éxito.',
|
||||
'tmp_neko_not_exist' => 'El directorio /tmp/neko no existe. No se ha tomado ninguna acción.',
|
||||
'subscribeUrlPlaceholder' => 'Por favor ingrese el enlace de suscripción, separe varios enlaces con |',
|
||||
|
@ -8672,6 +8682,7 @@
|
|||
'state_cleared' => '✅ Trạng thái trình phát đã được xóa',
|
||||
'clear_config' => 'Xóa cấu hình',
|
||||
'delete_old_config' => 'Xóa các tệp cấu hình cũ để cài đặt mới',
|
||||
'enable_openwrt_theme' => 'Bật chế độ tương thích giao diện OpenWRT (Cần cài đặt giao diện luci-theme-spectra)',
|
||||
'tmp_neko_cleared' => 'Thư mục /tmp/neko đã được xóa thành công.',
|
||||
'tmp_neko_not_exist' => 'Thư mục /tmp/neko không tồn tại. Không có hành động nào được thực hiện.',
|
||||
'subscribeUrlPlaceholder' => 'Vui lòng nhập liên kết đăng ký, phân tách các liên kết bằng |',
|
||||
|
|
|
@ -4787,6 +4787,10 @@ function speakMessage(message) {
|
|||
<input class="form-check-input" type="checkbox" id="bodyBackground">
|
||||
<label class="form-check-label" for="bodyBackground" data-translate="transparent_body">Enable transparent body background</label>
|
||||
</div>
|
||||
<div class="form-check mt-3">
|
||||
<input class="form-check-input" type="checkbox" id="openwrtTheme" />
|
||||
<label class="form-check-label" for="openwrtTheme" data-translate="enable_openwrt_theme">Enable OpenWRT Theme Compatibility</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal" data-translate="close">Close</button>
|
||||
|
@ -4803,9 +4807,10 @@ const modalWidthValue = document.getElementById("modalWidthValue");
|
|||
|
||||
const group1Checkbox = document.getElementById("group1Background");
|
||||
const bodyBackgroundCheckbox = document.getElementById("bodyBackground");
|
||||
const openwrtThemeCheckbox = document.getElementById("openwrtTheme");
|
||||
|
||||
function updateSliderColor(value, slider, valueElement) {
|
||||
let red = Math.min(Math.max((value - 800) / (2400 - 800) * 255, 0), 255);
|
||||
let red = Math.min(Math.max((value - 800) / (5400 - 800) * 255, 0), 255);
|
||||
let green = 255 - red;
|
||||
|
||||
slider.style.background = `linear-gradient(to right, rgb(${red}, ${green}, 255), rgb(${255 - red}, ${green}, ${255 - red}))`;
|
||||
|
@ -4843,6 +4848,11 @@ modalSlider.oninput = function() {
|
|||
showNotification(translations['modal_width_updated'].replace('%s', modalSlider.value));
|
||||
};
|
||||
|
||||
openwrtThemeCheckbox.onchange = function () {
|
||||
sendCSSUpdate();
|
||||
showNotification(openwrtThemeCheckbox.checked ? 'OpenWRT theme enabled' : 'OpenWRT theme disabled');
|
||||
};
|
||||
|
||||
function sendCSSUpdate() {
|
||||
const width = slider.value;
|
||||
const modalWidth = modalSlider.value;
|
||||
|
@ -4858,7 +4868,8 @@ function sendCSSUpdate() {
|
|||
width: width,
|
||||
modalWidth: modalWidth,
|
||||
group1: group1,
|
||||
bodyBackground: bodyBackground
|
||||
bodyBackground: bodyBackground,
|
||||
openwrtTheme: openwrtThemeCheckbox.checked ? 1 : 0
|
||||
})
|
||||
}).then(response => response.json())
|
||||
.then(data => console.log('CSS 更新成功:', data))
|
||||
|
|
|
@ -254,6 +254,7 @@ form .form-control {
|
|||
}
|
||||
|
||||
.form-select option {
|
||||
background-color: oklch(45% .24 277.023) !important;
|
||||
background-color: var(--bs-form-select);
|
||||
color: var(--bs-radius-bg) !important;
|
||||
}
|
||||
|
@ -598,12 +599,13 @@ button:disabled {
|
|||
}
|
||||
|
||||
.royal-style {
|
||||
font-family: 'Cinzel Decorative', cursive;
|
||||
font-weight: 900;
|
||||
font-size: 80px;
|
||||
letter-spacing: 4px;
|
||||
text-align: center;
|
||||
margin-top: 20px;
|
||||
font-family: 'Cinzel Decorative', cursive !important;
|
||||
font-weight: 900 !important;
|
||||
font-size: 80px !important;
|
||||
letter-spacing: 4px !important;
|
||||
text-align: center !important;
|
||||
margin-top: 20px !important;
|
||||
transition: all var(-- bs-transition-speed);
|
||||
}
|
||||
|
||||
.royal-style:hover {
|
||||
|
@ -679,12 +681,12 @@ h1:hover, h2:hover, h3:hover, h4:hover, h5:hover, h6:hover {
|
|||
}
|
||||
|
||||
.royal-style {
|
||||
font-family: 'Cinzel Decorative', cursive;
|
||||
font-weight: 900;
|
||||
font-size: 80px;
|
||||
letter-spacing: 4px;
|
||||
text-align: center;
|
||||
margin-top: 20px;
|
||||
font-family: 'Cinzel Decorative', cursive !important;
|
||||
font-weight: 900 !important;
|
||||
font-size: 80px !important;
|
||||
letter-spacing: 4px !important;
|
||||
text-align: center !important;
|
||||
margin-top: 20px !important;
|
||||
transition: all var(-- bs-transition-speed);
|
||||
}
|
||||
|
||||
|
|
|
@ -5,6 +5,7 @@ $width = isset($data['width']) ? $data['width'] : null;
|
|||
$modalWidth = isset($data['modalWidth']) ? $data['modalWidth'] : null;
|
||||
$applyGroup1 = isset($data['group1']) && $data['group1'] == 1;
|
||||
$applyBodyBackground = isset($data['bodyBackground']) && $data['bodyBackground'] == 1;
|
||||
$applyOpenWrtTheme = isset($data['openwrtTheme']) && $data['openwrtTheme'] == 1;
|
||||
|
||||
if ($width !== null && $modalWidth !== null) {
|
||||
$cssFilePath = 'assets/theme/transparent.css';
|
||||
|
@ -76,4 +77,32 @@ if ($applyGroup1 || $applyBodyBackground) {
|
|||
} else {
|
||||
echo json_encode(['status' => 'error', 'message' => 'Transparent background not enabled']);
|
||||
}
|
||||
|
||||
$pingFilePath = 'ping.php';
|
||||
if (file_exists($pingFilePath)) {
|
||||
$pingContent = file_get_contents($pingFilePath);
|
||||
|
||||
if ($applyOpenWrtTheme) {
|
||||
$additionalContent = '
|
||||
<!-- START OpenWRT Theme -->
|
||||
<link rel="stylesheet" href="/luci-static/spectra/css/dark.css">
|
||||
<script src="/luci-static/spectra/js/custom.js"></script>
|
||||
<!-- END OpenWRT Theme -->
|
||||
';
|
||||
|
||||
if (strpos($pingContent, '<!-- START OpenWRT Theme -->') === false) {
|
||||
$pingContent .= $additionalContent;
|
||||
file_put_contents($pingFilePath, $pingContent);
|
||||
echo json_encode(['status' => 'success', 'message' => 'OpenWRT theme enabled']);
|
||||
} else {
|
||||
echo json_encode(['status' => 'info', 'message' => 'OpenWRT theme already enabled']);
|
||||
}
|
||||
} else {
|
||||
$pingContent = preg_replace('/<!-- START OpenWRT Theme -->.*?<!-- END OpenWRT Theme -->/s', '', $pingContent);
|
||||
file_put_contents($pingFilePath, $pingContent);
|
||||
echo json_encode(['status' => 'success', 'message' => 'OpenWRT theme disabled']);
|
||||
}
|
||||
} else {
|
||||
echo json_encode(['status' => 'error', 'message' => 'ping.php not found']);
|
||||
}
|
||||
?>
|
|
@ -26,10 +26,17 @@ istoreenhance_pull() {
|
|||
echo "istoreenhance_pull ${full_image_name}"
|
||||
# 直接拉取镜像
|
||||
docker pull "$full_image_name"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "istoreenhance_pull failed"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
echo "not found registry.linkease.net"
|
||||
echo "docker pull ${image_name}"
|
||||
echo "istoreenhance_pull ${image_name}"
|
||||
docker pull "$image_name"
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "download failed, not found registry.linkease.net"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
else
|
||||
# 否则运行 docker pull
|
||||
|
@ -38,7 +45,7 @@ istoreenhance_pull() {
|
|||
if [ $? -ne 0 ]; then
|
||||
# 判断是否安装 iStoreEnhance
|
||||
if [ -z "$isInstall" ]; then
|
||||
echo "download failed, install istoreenhance to speedup, \"https://doc.linkease.com/zh/guide/istore/software/istoreenhance.html\""
|
||||
echo "download failed, install istoreenhance to speedup, \"https://doc.linkease.com/zh/guide/istore/software/istoreenhance.html\""
|
||||
else
|
||||
echo "download failed, enable istoreenhance to speedup"
|
||||
fi
|
||||
|
|
Loading…
Reference in New Issue