mirror of
https://github.com/imsyy/SPlayer.git
synced 2025-11-25 03:14:57 +08:00
165 lines
7.2 KiB
Vue
165 lines
7.2 KiB
Vue
<!-- 用户协议 -->
|
||
<template>
|
||
<div class="user-agreement">
|
||
<n-h1 class="title">用户协议</n-h1>
|
||
<n-scrollbar class="scrollbar">
|
||
<n-flex class="date" justify="center">
|
||
<n-tag round>生效日期:2024 年 7 月 16 日</n-tag>
|
||
<n-tag type="warning" round>更新日期:2024 年 9 月 28 日</n-tag>
|
||
</n-flex>
|
||
<n-p>
|
||
欢迎使用 SPlayer(以下简称“本软件”)。本软件是一个本地音乐播放软件,可能会调用第三方 API
|
||
来增强其功能。请在使用本软件前仔细阅读本用户协议。本协议是您(以下简称“用户”)与 SPlayer
|
||
开发团队(以下简称“开发者”)之间的法律协议。一旦您下载、安装或使用本软件,即表示您同意接受本协议的所有条款和条件。
|
||
</n-p>
|
||
<n-h3 prefix="bar"> 软件使用 </n-h3>
|
||
<n-ol>
|
||
<n-li>本软件是一款本地音乐播放软件,允许用户播放存储在设备上的音频文件。</n-li>
|
||
<n-li>开发者保留随时修改、更新或终止软件及其功能的权利,而无需提前通知用户。</n-li>
|
||
<n-li>用户必须年满 18 岁或在父母或监护人的监督下使用本软件。</n-li>
|
||
</n-ol>
|
||
<n-h3 prefix="bar"> 开源许可 </n-h3>
|
||
<n-ol>
|
||
<n-li>本软件是基于 AGPL-3.0 许可发布的开源软件。</n-li>
|
||
<n-li>用户在使用、修改和分发 SPlayer 时,必须遵守 AGPL-3.0 许可的条款和条件。</n-li>
|
||
<n-li>
|
||
AGPL-3.0 许可的详细信息可以在以下链接找到:
|
||
<n-a href="https://www.gnu.org/licenses/agpl-3.0.html" target="_blank">
|
||
GNU Affero General Public License v3.0
|
||
</n-a>
|
||
</n-li>
|
||
</n-ol>
|
||
<n-h3 prefix="bar"> 第三方 </n-h3>
|
||
<n-ol>
|
||
<n-li>本软件可能会调用第三方 API 以提供额外功能(例如,歌词显示、专辑封面获取等)。</n-li>
|
||
<n-li>
|
||
开发者不对第三方 API 的准确性、完整性或合法性负责。用户使用第三方 API
|
||
时,应遵守第三方提供商的服务条款和隐私政策。
|
||
</n-li>
|
||
<n-li>由于第三方 API 引起的任何问题或纠纷,开发者不承担任何责任。</n-li>
|
||
</n-ol>
|
||
<n-h3 prefix="bar"> 用户责任 </n-h3>
|
||
<n-ol>
|
||
<n-li>
|
||
用户应遵守所有适用的法律法规,确保通过合法手段获取音乐文件,并在使用本软件时不侵犯任何第三方的版权或其他合法权益。
|
||
</n-li>
|
||
<n-li>
|
||
用户不得使用本软件进行任何非法活动,包括但不限于侵犯版权、传播恶意软件、非法获取数据等。
|
||
</n-li>
|
||
</n-ol>
|
||
<n-h3 prefix="bar"> 知识产权 </n-h3>
|
||
<n-ol>
|
||
<n-li>
|
||
除了根据 AGPL-3.0
|
||
许可使用的开源部分外,本软件及其所有内容(包括但不限于软件、标识、图形、用户界面、脚本和服务名称)均为开发者或其许可方的财产,受知识产权法保护。
|
||
</n-li>
|
||
<n-li> 未经开发者书面许可,用户不得复制、修改、分发、出售或租赁本软件及其内容。 </n-li>
|
||
</n-ol>
|
||
<n-h3 prefix="bar"> 免责声明 </n-h3>
|
||
<n-ol>
|
||
<n-li>
|
||
本软件按“现状”提供,不提供任何形式的明示或暗示保证,包括但不限于适销性、特定用途适用性和非侵权性。
|
||
</n-li>
|
||
<n-li>
|
||
开发者不保证本软件的功能不会中断或无错误,也不保证本软件适用于用户的特定需求。
|
||
</n-li>
|
||
<n-li> 用户使用本软件过程中产生的任何直接或间接损失,开发者不承担任何责任。 </n-li>
|
||
</n-ol>
|
||
<n-h3 prefix="bar"> 责任限制 </n-h3>
|
||
<n-ol>
|
||
<n-li>
|
||
在适用法律允许的最大范围内,开发者对因使用或无法使用本软件而导致的任何间接、偶然、特殊、继发或惩罚性损害不承担责任,即使开发者已被告知此类损害的可能性。
|
||
</n-li>
|
||
<n-li>
|
||
在任何情况下,开发者对用户的全部责任,不论是合同、侵权(包括过失)或其他方面的责任,总额不超过用户为使用本软件所支付的费用(如果有)。
|
||
</n-li>
|
||
</n-ol>
|
||
<n-h3 prefix="bar"> 终止 </n-h3>
|
||
<n-ol>
|
||
<n-li> 开发者有权在不提前通知的情况下,因任何原因或无原因终止本协议。 </n-li>
|
||
<n-li> 本协议终止后,用户应停止使用本软件并删除其所有副本。 </n-li>
|
||
</n-ol>
|
||
<n-h3 prefix="bar"> 隐私政策 </n-h3>
|
||
<n-ol>
|
||
<n-li> 本软件可能会收集和使用用户的某些信息,以提供和改进软件服务。 </n-li>
|
||
<n-li>
|
||
开发者承诺保护用户的隐私,不会将用户信息出售给第三方。详细的隐私政策请参考我们的隐私声明。
|
||
</n-li>
|
||
</n-ol>
|
||
<n-h3 prefix="bar"> 更新与变更 </n-h3>
|
||
<n-ol>
|
||
<n-li> 开发者保留随时更新和修改本协议的权利。 </n-li>
|
||
<n-li>
|
||
更新后的协议将通过适当的方式通知用户,包括但不限于在本软件中发布或通过电子邮件发送通知。
|
||
</n-li>
|
||
</n-ol>
|
||
<n-h3 prefix="bar"> 其他 </n-h3>
|
||
<n-ol>
|
||
<n-li> 本协议受中华人民共和国法律管辖,不考虑其法律冲突条款。</n-li>
|
||
<n-li>
|
||
如果本协议的任何条款被视为无效或不可执行,该条款将被修改以反映双方的意图,其余条款仍然完全有效。
|
||
</n-li>
|
||
<n-li>
|
||
本协议构成您与开发者之间关于使用本软件的完整协议,并取代之前的所有口头或书面协议和陈述。
|
||
</n-li>
|
||
</n-ol>
|
||
<n-card ref="readOverRef">
|
||
若你(使用者)接受以上协议,请点击下面的“同意并使用”按钮签署本协议,若不接受,请点击“不同意”后软件将退出并清除本软件的所有数据。
|
||
</n-card>
|
||
</n-scrollbar>
|
||
<n-flex justify="center">
|
||
<n-button v-if="isElectron" type="error" @click="closeApp">不同意</n-button>
|
||
<n-button type="success" @click="emit('close')" :disabled="!isReadOver">
|
||
{{ isReadOver ? "同意并使用" : "请先完整阅读" }}
|
||
</n-button>
|
||
</n-flex>
|
||
</div>
|
||
</template>
|
||
|
||
<script setup lang="ts">
|
||
import { isElectron } from "@/utils/env";
|
||
|
||
const emit = defineEmits<{
|
||
close: [];
|
||
}>();
|
||
|
||
const readOverRef = ref<HTMLElement | null>(null);
|
||
|
||
// 是否阅读完毕
|
||
const isReadOver = useElementVisibility(readOverRef);
|
||
|
||
// 关闭软件
|
||
const closeApp = () => {
|
||
window.electron.ipcRenderer.send("quit-app");
|
||
};
|
||
</script>
|
||
|
||
<style lang="scss" scoped>
|
||
.user-agreement {
|
||
:deep(.scrollbar) {
|
||
max-height: 60vh;
|
||
margin-bottom: 20px;
|
||
.n-scrollbar-content {
|
||
overflow: hidden;
|
||
padding-right: 12px;
|
||
}
|
||
}
|
||
.title {
|
||
text-align: center;
|
||
}
|
||
.n-p {
|
||
font-size: 16px;
|
||
text-indent: 2em;
|
||
}
|
||
.n-ol {
|
||
font-size: 16px;
|
||
}
|
||
.n-card {
|
||
--n-font-size: 18px;
|
||
--n-border-radius: 12px;
|
||
margin-top: 20px;
|
||
margin-bottom: 20px;
|
||
}
|
||
}
|
||
</style>
|