eext-leye/iframe/about.html
2026-02-09 17:57:40 +08:00

285 lines
7.9 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>关于软件</title>
<link rel="stylesheet" href="/iframe/css/index.css" />
<style>
#konami-container {
position: fixed;
left: 50%;
top: 40%;
transform: translateX(-50%);
pointer-events: none;
z-index: 9999;
display: flex;
gap: 6px;
align-items: center;
justify-content: center;
flex-wrap: wrap;
}
.konami-bubble {
display: inline-block;
background: rgba(0, 0, 0, 0.78);
color: #fff;
padding: 8px 12px;
border-radius: 999px;
font-size: 18px;
line-height: 1;
opacity: 1;
animation: konamiFade 900ms ease-out forwards;
/* 移除位移动画相关 */
}
@keyframes konamiFade {
0% {
opacity: 0;
}
10% {
opacity: 1;
}
90% {
opacity: 1;
}
100% {
opacity: 0;
}
}
#page-root.shake-up {
animation: shake-up 360ms cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}
#page-root.shake-down {
animation: shake-down 360ms cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}
#page-root.shake-left {
animation: shake-left 360ms cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}
#page-root.shake-right {
animation: shake-right 360ms cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}
#page-root.shake-scale {
animation: shake-scale 360ms cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}
@keyframes shake-up {
0% {
transform: translateY(0);
}
20% {
transform: translateY(-12px);
}
40% {
transform: translateY(6px);
}
60% {
transform: translateY(-6px);
}
80% {
transform: translateY(3px);
}
100% {
transform: translateY(0);
}
}
@keyframes shake-down {
0% {
transform: translateY(0);
}
20% {
transform: translateY(12px);
}
40% {
transform: translateY(-6px);
}
60% {
transform: translateY(6px);
}
80% {
transform: translateY(-3px);
}
100% {
transform: translateY(0);
}
}
@keyframes shake-left {
0% {
transform: translateX(0);
}
20% {
transform: translateX(-12px);
}
40% {
transform: translateX(6px);
}
60% {
transform: translateX(-6px);
}
80% {
transform: translateX(3px);
}
100% {
transform: translateX(0);
}
}
@keyframes shake-right {
0% {
transform: translateX(0);
}
20% {
transform: translateX(12px);
}
40% {
transform: translateX(-6px);
}
60% {
transform: translateX(6px);
}
80% {
transform: translateX(-3px);
}
100% {
transform: translateX(0);
}
}
@keyframes shake-scale {
0% {
transform: scale(1);
}
20% {
transform: scale(1.14);
}
40% {
transform: scale(0.92);
}
60% {
transform: scale(1.06);
}
80% {
transform: scale(0.98);
}
100% {
transform: scale(1);
}
}
body {
overflow: hidden;
}
</style>
</head>
<body id="page-root" class="bg-gray-100 flex items-center justify-center min-h-screen">
<div class="min-h-screen bg-gray-100 flex items-center justify-center">
<div class="bg-white p-4 rounded-lg w-[400px] h-[200px] flex flex-col justify-between items-center text-center">
<div>
<h1 class="text-2xl font-bold text-gray-800 mb-2" id="name"></h1>
<p class="text-[12px] text-gray-600" id="description"></p>
<p class="text-gray-600 text-sm" id="version"></p>
<p class="text-gray-600 text-sm" id="tip"></p>
</div>
<div class="flex justify-center space-x-4 mt-auto">
<a id="home" class="text-blue-600 hover:text-blue-800 text-sm transition duration-300 ease-in-out">🏠扩展主页</a>
<a id="bugs" class="text-blue-600 hover:text-blue-800 text-sm transition duration-300 ease-in-out">🐞Bug反馈</a>
<a id="check" class="text-blue-600 hover:text-blue-800 text-sm transition duration-300 ease-in-out">✨检查更新</a>
<a id="afdian" class="text-blue-600 hover:text-blue-800 text-sm transition duration-300 ease-in-out">⚡支持作者</a>
</div>
<div class="flex justify-center text-[12px] text-gray-500 mt-2">本扩展使用 Apache-2.0 许可协议开源</div>
</div>
</div>
<div id="konami-container" aria-hidden="true"></div>
<script>
// 页面加载完成
document.addEventListener('DOMContentLoaded', async function () {
const file = await eda.sys_FileSystem.getExtensionFile('/extension.json');
if (file) {
const extensionData = JSON.parse(await file.text());
document.getElementById('name').textContent = extensionData.displayName;
document.getElementById('description').textContent = extensionData.description;
document.getElementById('version').textContent = `V${extensionData.version}`;
document.getElementById('home').setAttribute('href', extensionData.homepage);
document.getElementById('bugs').setAttribute('href', extensionData.bugs);
}
const konami_unlocked = await eda.sys_Storage.getExtensionUserConfig('konami_unlocked');
if (konami_unlocked) {
document.getElementById('tip').innerHTML =
`<a onclick="eda.sys_IFrame.openIFrame('/iframe/ntr.html', 400, 200)" class="text-blue-600 hover:text-blue-800">🐮 隐藏功能 🐮</a>`;
}
});
document.addEventListener('click', function (event) {
if (event.target.tagName.toLowerCase() === 'a') {
event.preventDefault();
const url = event.target.getAttribute('href');
if (url) {
eda.sys_Window.open(url);
}
}
});
document.getElementById('check').addEventListener('click', function (event) {
event.preventDefault();
eda.sys_ClientUrl
.request('https://leye.dragon.edu.kg/release/eext.ver.json', 'GET')
.then((response) => response.json())
.then((data) => {
if (data) {
const his_list = data.versions;
const latestVersion = his_list[0].ver;
const currentVersion = document.getElementById('version').textContent.replace('V', '');
// 比较版本号latestVersion 和 currentVersion
const latestParts = latestVersion.split('.').map(Number);
const currentParts = currentVersion.split('.').map(Number);
let isNewVersionAvailable = false;
for (let i = 0; i < Math.max(latestParts.length, currentParts.length); i++) {
const latestPart = latestParts[i] || 0;
const currentPart = currentParts[i] || 0;
if (latestPart > currentPart) {
isNewVersionAvailable = true;
break;
} else if (latestPart < currentPart) {
break;
}
}
if (isNewVersionAvailable) {
eda.sys_Message.showToastMessage(`😋 有新版本可用: V${latestVersion}`, ESYS_ToastMessageType.INFO);
document.getElementById('tip').innerHTML =
`<a href="https://lrurl.top/LeyeEEXT" target="_blank" class="text-blue-600 hover:text-blue-800">前往更新新版本</a>`;
} else {
eda.sys_Message.showToastMessage('👍 当前已是最新版本', ESYS_ToastMessageType.SUCCESS);
}
} else {
eda.sys_Message.showToastMessage(
'🥺 获取版本信息失败',
ESYS_ToastMessageType.ERROR,
undefined,
undefined,
'去瞅一眼',
"eda.sys_Window.open('https://lrurl.top/LeyeEEXT')",
);
}
})
.catch((error) => {
console.error('Error fetching version info:', error);
eda.sys_Message.showToastMessage(
'🥺 获取版本信息失败',
ESYS_ToastMessageType.ERROR,
undefined,
undefined,
'去瞅一眼',
"eda.sys_Window.open('https://lrurl.top/LeyeEEXT')",
);
});
});
document.getElementById('afdian').addEventListener('click', function (event) {
event.preventDefault();
const url = 'https://afdian.com/@Mr_Fang';
eda.sys_Window.open(url);
});
</script>
</body>
</html>