mirror of
https://github.com/kuaifan/dootask.git
synced 2026-03-07 09:57:37 +00:00
perf: 优化翻译
This commit is contained in:
parent
84864801aa
commit
a1e8da140e
@ -2,7 +2,7 @@
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
## [0.23.3]
|
||||
## [0.23.4]
|
||||
|
||||
### Performance
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "DooTask",
|
||||
"version": "0.23.3",
|
||||
"version": "0.23.4",
|
||||
"description": "DooTask is task management system.",
|
||||
"scripts": {
|
||||
"start": "./cmd dev",
|
||||
|
||||
3
resources/assets/js/language/index.js
vendored
3
resources/assets/js/language/index.js
vendored
@ -101,12 +101,11 @@ let languageData = [];
|
||||
let languageType = languageUtils.getLanguage();
|
||||
let languageList = {
|
||||
"EN": "English",
|
||||
"KM": "ភាសាខ្មែរ",
|
||||
"TH": "ภาษาไทย",
|
||||
"KO": "한국어",
|
||||
"JA": "日本語",
|
||||
"CN": "简体中文",
|
||||
"TC": "繁體中文",
|
||||
"FR": "Français",
|
||||
};
|
||||
let languageAsciis = {};
|
||||
|
||||
|
||||
@ -8,10 +8,10 @@
|
||||
<div class="logo no-dark-content"></div>
|
||||
</div>
|
||||
<div class="header-nav-box header-nav-boxs" v-if="windowWidth > 780">
|
||||
<Button v-if="showItem.pro" class="header-right-pro no-dark-content" size="small" @click="onPro">{{$L('Pro版')}}</Button>
|
||||
<template v-if="windowWidth >= 820">
|
||||
<Button v-if="showItem.pro" class="header-right-pro no-dark-content" size="small" @click="onPro">{{$L('Pro版')}}</Button>
|
||||
<a v-if="showItem.github" class="header-right-github" :href="showItem.github" target="_blank"><Icon type="logo-github"/></a>
|
||||
<div v-if="showItem.updateLog" class="header-right-uplog" @click="onUplog">{{$L('更新日志')}}</div>
|
||||
<div v-if="showItem.updateLog" class="header-right-uplog" @click="uplogShow=true">{{$L('更新日志')}}</div>
|
||||
</template>
|
||||
|
||||
<div class="header-right-1">
|
||||
@ -44,7 +44,7 @@
|
||||
</DropdownMenu>
|
||||
</Dropdown>
|
||||
</div>
|
||||
<div v-if="userId > 0" class="header-right-5" @click="login">
|
||||
<div v-if="userId > 0" class="header-right-5 no-dark-content" @click="login">
|
||||
<UserAvatar :userid="userId" :size="38"/>
|
||||
</div>
|
||||
<template v-else>
|
||||
@ -210,31 +210,17 @@
|
||||
</div>
|
||||
|
||||
<!--更新日志-->
|
||||
<Modal
|
||||
v-model="uplogShow"
|
||||
:fullscreen="uplogFull"
|
||||
class-name="page-index-uplog">
|
||||
<div slot="header">
|
||||
<div class="uplog-head">
|
||||
<div class="uplog-title">{{$L('更新日志')}}</div>
|
||||
<Tag v-if="showItem.updateVer" color="volcano">{{showItem.updateVer}}</Tag>
|
||||
</div>
|
||||
</div>
|
||||
<MarkdownPreview class="uplog-body scrollbar-overlay" :initialValue="showItem.updateLog"/>
|
||||
<div slot="footer" class="adaption">
|
||||
<Button type="default" @click="uplogFull=!uplogFull">{{$L(uplogFull ? '缩小查看' : '全屏查看')}}</Button>
|
||||
</div>
|
||||
</Modal>
|
||||
<UpdateLog v-model="uplogShow" :update-log="showItem.updateLog" :update-ver="showItem.updateVer"/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {mapState} from "vuex";
|
||||
import {languageList, languageType, setLanguage} from "../language";
|
||||
import MarkdownPreview from "../components/MDEditor/components/preview";
|
||||
import UpdateLog from "./manage/components/UpdateLog";
|
||||
|
||||
export default {
|
||||
components: {MarkdownPreview},
|
||||
components: {UpdateLog},
|
||||
data() {
|
||||
return {
|
||||
languageList,
|
||||
@ -250,7 +236,6 @@ export default {
|
||||
homeFooter: '',
|
||||
|
||||
uplogShow: false,
|
||||
uplogFull: false,
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@ -292,10 +277,6 @@ export default {
|
||||
this.goForward({name: 'pro'});
|
||||
},
|
||||
|
||||
onUplog() {
|
||||
this.uplogShow = true
|
||||
},
|
||||
|
||||
setTheme(mode) {
|
||||
this.$store.dispatch("setTheme", mode)
|
||||
},
|
||||
|
||||
@ -165,8 +165,8 @@
|
||||
</FormItem>
|
||||
<FormItem prop="userlimit" :label="$L('限制负责人')">
|
||||
<iSwitch v-model="userData.userlimit" :true-value="1" :false-value="0"/>
|
||||
<div v-if="userData.userlimit===1" class="form-tip">{{$L(`流转到【${userData.name}】时,仅"状态负责人"和"项目管理员"可以修改状态。`)}}</div>
|
||||
<div v-else class="form-tip">{{$L(`流转到【${userData.name}】时,"任务负责人"和"项目管理员"可以修改状态。`)}}</div>
|
||||
<div v-if="userData.userlimit===1" class="form-tip">{{$L(`流转到【${userData.name}】时,[任务负责人] 和 [项目管理员] 可以修改状态。`)}}</div>
|
||||
<div v-else class="form-tip">{{$L(`流转到【${userData.name}】时,'任务负责人'和'项目管理员'可以修改状态。`)}}</div>
|
||||
</FormItem>
|
||||
</Form>
|
||||
<div slot="footer" class="adaption">
|
||||
|
||||
52
resources/assets/js/pages/manage/components/UpdateLog.vue
Normal file
52
resources/assets/js/pages/manage/components/UpdateLog.vue
Normal file
@ -0,0 +1,52 @@
|
||||
<template>
|
||||
<Modal
|
||||
v-model="uplogShow"
|
||||
:fullscreen="uplogFull"
|
||||
class-name="update-log">
|
||||
<div slot="header">
|
||||
<div class="uplog-head">
|
||||
<div class="uplog-title">{{$L('更新日志')}}</div>
|
||||
<Tag v-if="updateVer" color="volcano">{{updateVer}}</Tag>
|
||||
</div>
|
||||
</div>
|
||||
<MarkdownPreview class="uplog-body scrollbar-overlay" :initialValue="updateLog"/>
|
||||
<div slot="footer" class="adaption">
|
||||
<Button type="default" @click="uplogFull=!uplogFull">{{$L(uplogFull ? '缩小查看' : '全屏查看')}}</Button>
|
||||
</div>
|
||||
</Modal>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import MarkdownPreview from "../../../components/MDEditor/components/preview";
|
||||
export default {
|
||||
name: 'UpdateLog',
|
||||
components: {MarkdownPreview},
|
||||
props: {
|
||||
value:{
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
updateVer: {},
|
||||
updateLog: {},
|
||||
},
|
||||
|
||||
data() {
|
||||
return {
|
||||
uplogShow: false,
|
||||
uplogFull: false
|
||||
}
|
||||
},
|
||||
|
||||
watch: {
|
||||
value: {
|
||||
handler(val) {
|
||||
this.uplogShow = val
|
||||
},
|
||||
immediate: true
|
||||
},
|
||||
uplogShow(val) {
|
||||
this.$emit("input", val)
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
@ -27,13 +27,13 @@
|
||||
v-model="warningShow"
|
||||
:title="$L(`删除${appTitle}帐号`)"
|
||||
class="page-setting-delete-box">
|
||||
<div class="big-text">{{ $L('账号删除后,该账号将无法正常登录且无法恢复,账号下的所有数据也将被删除。') }}</div>
|
||||
<div class="big-text">{{ $L('帐号删除后,该帐号将无法正常登录且无法恢复,帐号下的所有数据也将被删除。') }}</div>
|
||||
<div class="small-text">
|
||||
<div>{{ $L('删除前,请确认以下事项:') }}</div>
|
||||
<div>{{ $L('1、您将无法查看该账号内的任何信息,包括账号信息、文件记录、聊天记录、项目信息、团队成员信息等。') }}</div>
|
||||
<div>{{ $L('1、您将无法查看该帐号内的任何信息,包括帐号信息、文件记录、聊天记录、项目信息、团队成员信息等。') }}</div>
|
||||
<div>{{ $L('2、若你是团队的所有者,请在删除您的帐号前转移所有权。例如该帐号所创建的项目(可将项目移交他人或删除项目)以及文件夹。') }}</div>
|
||||
<div>{{ $L('3、您将退出所有群聊,无法查到过往消息和人员。') }}</div>
|
||||
<div>{{ $L('4、请保证账号未被暂停使用。') }}</div>
|
||||
<div>{{ $L('4、请保证帐号未被暂停使用。') }}</div>
|
||||
</div>
|
||||
<div slot="footer" class="button-box">
|
||||
<Button type="primary" :loading="loadIng > 0" @click="submitForm('confirm')">{{ $L('已清楚风险,确定删除') }}
|
||||
|
||||
@ -8,16 +8,18 @@
|
||||
<div class="header">
|
||||
<div class="z-row">
|
||||
<div class="header-col-sub">
|
||||
<div @click="goForward({name: 'index', query: {action: 'index'}})" class="logo"></div>
|
||||
<div @click="goHome" class="logo"></div>
|
||||
</div>
|
||||
<div class="z-1">
|
||||
<dl>
|
||||
<dd>
|
||||
<a class="right-info" target="_blank" href="https://github.com/kuaifan/dootask">
|
||||
<div class="right-info" @click="goHome">{{$L('返回首页')}}</div>
|
||||
<div v-if="showItem.updateLog" class="right-info" @click="uplogShow=true">{{$L('更新日志')}}</div>
|
||||
<a class="right-info item-center" target="_blank" href="https://github.com/kuaifan/dootask">
|
||||
<Icon class="right-icon" type="logo-github"/>
|
||||
</a>
|
||||
<Dropdown class="right-info" trigger="click" @on-click="onLanguage">
|
||||
<div>
|
||||
<div class="item-center">
|
||||
<Icon class="right-icon" type="md-globe"/>
|
||||
<Icon type="md-arrow-dropdown"/>
|
||||
</div>
|
||||
@ -72,7 +74,7 @@
|
||||
<div class="plans-table-info-desc">{{$L('拥有最新版本所有功能')}}</div>
|
||||
<div class="plans-table-info-desc">{{$L('无限制')}}</div>
|
||||
<div class="plans-table-info-btn">
|
||||
<Tooltip :content="$L('帐号:%、密码:%', 'admin', '123456')" transfer>
|
||||
<Tooltip :content="$L('帐号:admin、密码:123456')" transfer>
|
||||
<a href="https://www.dootask.com" class="btn" target="_blank">{{$L('体验DEMO')}}</a>
|
||||
</Tooltip>
|
||||
</div>
|
||||
@ -247,7 +249,7 @@
|
||||
<div class="plans-table-td"><span> - </span></div>
|
||||
<div class="plans-table-td"><span> - </span></div>
|
||||
<div class="plans-table-info-btn">
|
||||
<Tooltip :content="$L('帐号:%、密码:%', 'admin', '123456')" transfer>
|
||||
<Tooltip :content="$L('帐号:admin、密码:123456')" transfer>
|
||||
<a href="https://www.dootask.com" class="btn" target="_blank">{{$L('体验DEMO')}}</a>
|
||||
</Tooltip>
|
||||
</div>
|
||||
@ -367,7 +369,7 @@
|
||||
{{$L('全面的支持服务')}}
|
||||
</div>
|
||||
<div class="desc-text">
|
||||
{{$L('多种支持服务让企业无后顾之忧,7*24 线上支持、在线工单、中英文邮件支持、上门支持')}}
|
||||
{{$L('多种支持服务让企业无后顾之忧,7x24 线上支持、在线工单、中英文邮件支持、上门支持')}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -426,6 +428,7 @@
|
||||
|
||||
<div v-if="systemConfig.home_footer" class="contact-footer"><span v-html="systemConfig.home_footer"></span></div>
|
||||
|
||||
<!--联系我们-->
|
||||
<Modal
|
||||
v-model="contactShow"
|
||||
:title="$L('联系我们')"
|
||||
@ -436,23 +439,12 @@
|
||||
<Button type="primary" @click="contactShow=false">{{$L('确定')}}</Button>
|
||||
</div>
|
||||
</Modal>
|
||||
|
||||
<!--更新日志-->
|
||||
<UpdateLog v-model="uplogShow" :update-log="showItem.updateLog" :update-ver="showItem.updateVer"/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.contact-modal {
|
||||
p {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
font-size: 16px;
|
||||
text-align: center;
|
||||
img {
|
||||
display: inline-block;
|
||||
width: 248px;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<style lang="scss" scoped>
|
||||
.page-plans {
|
||||
height: 100%;
|
||||
@ -498,6 +490,7 @@
|
||||
height: 36px;
|
||||
background: url("../images/logo-index.svg") no-repeat center center;
|
||||
background-size: contain;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
.z-1 {
|
||||
@ -511,16 +504,22 @@
|
||||
color: #fff;
|
||||
cursor: pointer;
|
||||
margin-right: 1px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
.right-info {
|
||||
display: inline-block;
|
||||
cursor: pointer;
|
||||
margin-left: 16px;
|
||||
margin-left: 24px;
|
||||
color: #ffffff;
|
||||
.right-icon {
|
||||
font-size: 26px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
}
|
||||
.item-center {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -945,9 +944,11 @@
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
import {languageList, languageType, setLanguage} from "../language";
|
||||
import {languageList, languageType, setLanguage, addLanguage} from "../language";
|
||||
import UpdateLog from "./manage/components/UpdateLog";
|
||||
|
||||
export default {
|
||||
components: {UpdateLog},
|
||||
data() {
|
||||
return {
|
||||
languageList,
|
||||
@ -960,11 +961,101 @@ export default {
|
||||
|
||||
contactShow: false,
|
||||
systemConfig: {},
|
||||
|
||||
showItem: {
|
||||
pro: false,
|
||||
github: '',
|
||||
updateLog: '',
|
||||
updateVer: ''
|
||||
},
|
||||
|
||||
uplogShow: false
|
||||
}
|
||||
},
|
||||
|
||||
created() {
|
||||
addLanguage([
|
||||
{"CN":"多种支持服务让企业无后顾之忧,7x24 线上支持、在线工单、中英文邮件支持、上门支持","EN":"A variety of support services give the enterprise without worries.","TC":"多種支持服務讓企業無後顧之憂,7x24 線上支持、在線工單、中英文郵件支持、上門支持","KO":"다양한 지원 서비스는 근로자가없는 기업에 제공합니다.","JA":"さまざまなサポートサービスは、心配することなく企業を提供します。"},
|
||||
{"CN":"无需本地环境准备,按需购买帐户,专业团队提供运维保障服务,两周一次的版本迭代","EN":"No need to prepare a local environment, buy accounts on demand, professional team provides operation and maintenance security services, and iterations for two weeks once a week","TC":"無需本地環境準備,按需購買帳戶,專業團隊提供運維保障服務,兩週一次的版本迭代","KO":"현지 환경을 준비하고, 주문시 계정을 구매, 프로 프랙틱 팀 제공 및 유지 보수 보안 서비스 및 2 주 동안의 설계가 onces onces onces의 설계가 필요하지 않습니다.","JA":"ローカル環境を準備したり、アカウントをオンデマンドで購入したり、プロのチームが運用とメンテナンスのセキュリティサービスを提供したり、週に1回の反復を提供する必要はありません。"},
|
||||
{"CN":"资深客户成功顾问对企业进行调研、沟通需求、制定个性化的解决方案,帮助企业落地","EN":"Senior customer successful consultants investigate, communicate needs, and formulate personalized solutions to help enterprises land","TC":"資深客戶成功顧問對企業進行調研、溝通需求、制定個性化的解決方案,幫助企業落地","KO":"선임 고객 성공적인 컨설턴트는 기업 토지를 돕기 위해 조사, 요구를 조사하고 개인화 된 솔루션을 공식화합니다.","JA":"シニア顧客の成功コンサルタントは、企業の土地を支援するためにパーソナライズされたソリューションを調査、コミュニケーション、および策定します"},
|
||||
{"CN":"企业隔离的云服务器环境,高可用性,网络及应用层完整隔离,数据高度自主可控","EN":"Enterprise isolation cloud server environment, high availability, network and application layer complete isolation, data high and controllable","TC":"企業隔離的雲服務器環境,高可用性,網絡及應用層完整隔離,數據高度自主可控","KO":"엔터프라이즈 격리 클라우드 서버 환경, 고 가용성, 네트워크 및 애플리케이션 계층 완전한 격리, 데이터 높음 및 제어 화","JA":"エンタープライズ分離クラウドサーバー環境、高可用性、ネットワークおよびアプリケーションレイヤーの完全な分離、データが高く、制御可能なデータ"},
|
||||
{"CN":"根据需求定制培训内容,为不同角色给出专属培训方案,线上线下培训渠道全覆盖","EN":"Customize the training content according to the needs, give the exclusive training scheme for different roles, and the online and offline training channels are fully covered","TC":"根據需求定制培訓內容,為不同角色給出專屬培訓方案,線上線下培訓渠道全覆蓋","KO":"The The The The The Needs, 다른 역할에 대한 독점 교육 계획을 제공하며 온라인 및 사무실 교육 채널이 완전히 커버됩니다.","JA":"ニーズに応じてトレーニングコンテンツをカスタマイズし、さまざまな役割の排他的なトレーニングスキームを提供すると、オンラインおよびオフラインのトレーニングチャネルが完全にカバーされています"},
|
||||
{"CN":"DooTask 是新一代团队协作平台,您可以根据您团队的需求,选择合适的产品功能。","EN":"Dootask is a new generation of team collaboration platform. You can choose the appropriate product function according to the needs of your team.","TC":"DooTask 是新一代團隊協作平台,您可以根據您團隊的需求,選擇合適的產品功能。","KO":"Dootask는 새로운 세대의 팀 협업 플랫폼입니다. 팀의 필요한 것들에 대한 적절한 양육 재미를 선택할 수 있습니다.","JA":"Dootaskは、新世代のチームコラボレーションプラットフォームです。チームのニーズに応じて適切な製品機能を選択できます。"},
|
||||
{"CN":"基于 Docker 的容器化部署,支持高可用集群,快速弹性扩展,数据高度自主可控","EN":"Based on Docker's containerization deployment, support high available clusters, rapid elastic expansion, data highly controlled and controllable","TC":"基於 Docker 的容器化部署,支持高可用集群,快速彈性擴展,數據高度自主可控","KO":"Docker의 컨테이너화 배치를 기반으로, 높은 가용 클러스터, 빠른 탄성 확장, 데이터가 고도로 제어되고 제어되는 지원","JA":"Dockerのコンテナ化の展開に基づいて、利用可能な高いクラスター、急速な弾性拡張、高度に制御され、制御可能なデータをサポートします"},
|
||||
{"CN":"多重方式保证数据不丢失,高可用故障转移,异地容灾备份,99.99%可用性保证","EN":"Multiple ways to ensure that the data is not lost, high availability can be transferred, disasters are backup, 99.99%availability guarantee guarantee","TC":"多重方式保證數據不丟失,高可用故障轉移,異地容災備份,99.99%可用性保證","KO":"데이터가 길지 않도록하는 여러 가지 방법, 고 가용성을 전송할 수 있고, 재해는 백업되며, 99.99%가용성 보증인 보증인","JA":"データが失われないようにする複数の方法、高可用性を転送し、災害はバックアップ、99.99%の可用性保証保証"},
|
||||
{"CN":"多重方式保证帐户安全,远程会话控制,设备绑定,安全日志以及手势密码","EN":"Multiple ways to ensure account security, remote session control, device binding, security logs and gesture passwords","TC":"多重方式保證帳戶安全,遠程會話控制,設備綁定,安全日誌以及手勢密碼","KO":"계정 보안, 원격 세션 제어, 장치 바인딩, 보안 로그 및 제스처 암호를 보장하는 여러 가지 방법","JA":"アカウントセキュリティ、リモートセッション制御、デバイスバインディング、セキュリティログ、ジェスチャーパスワードを確保する複数の方法"},
|
||||
{"CN":"多重方式保证数据不泄漏,基于 TLS 的数据加密传输,DDOS 防御和入侵检测","EN":"Multi -way guarantees the data is not leaked. TLS -based data encryption transmission, DDOS defense and intrusion detection","TC":"多重方式保證數據不洩漏,基於 TLS 的數據加密傳輸,DDOS 防禦和入侵檢測","KO":"다중 웨이 Guarane 데이터가 유출되지 않습니다. TLS 기반 데이터 암호화 전송, DDOS 방어 및 침입 탐지","JA":"マルチウェイは、データが漏れないことを保証します。TLSベースのデータ暗号化伝送、DDOS防御、侵入検出"},
|
||||
{"CN":"从现在开始,DooTask 为世界各地的团队提供支持,探索适合您的选项。","EN":"From now on, Dootask has provided support for teams around the world and explores the options suitable for you.","TC":"從現在開始,DooTask 為世界各地的團隊提供支持,探索適合您的選項。","KO":"이제부터 Dootask는 전 세계 팀을 위해 지원을 제공했으며 귀하에게 적합한 옵션을 탐색합니다.","JA":"これから、Dootaskは世界中のチームにサポートを提供し、あなたに適したオプションを探ります。"},
|
||||
{"CN":"如有任何问题,欢迎使用邮箱与我们联系。","EN":"If you have any questions, please use your mailbox to contact us.","TC":"如有任何問題,歡迎使用郵箱與我們聯繫。","KO":"궁금한 점이 있으면 사서함을 사용하여 문의하십시오.","JA":"ご質問がある場合は、メールボックスを使用してお問い合わせください。"},
|
||||
{"CN":"帐号:admin、密码:123456","EN":"Account number: admin, password: 123456","TC":"帳號:admin、密碼:123456","KO":"계정 번호 : 관리자, 비밀번호 : 123456","JA":"アカウント番号:管理者、パスワード:123456"},
|
||||
{"CN":"允许隐藏或定制产品名","EN":"Allow hidden or customized product name","TC":"允許隱藏或定制產品名","KO":"숨겨져 있거나 맞춤형 제품 이름을 허용하십시오","JA":"非表示またはカスタマイズされた製品名を許可します"},
|
||||
{"CN":"多种部署方式随心选择","EN":"Choose a variety of deployment methods at will","TC":"多種部署方式隨心選擇","KO":"마음대로 다양한 배포 방법을 선택하십시오","JA":"さまざまな展開方法を自由に選択してください"},
|
||||
{"CN":"多重安全策略保护数据","EN":"Multiple security strategy protection data","TC":"多重安全策略保護數據","KO":"다중 보안 전략 보호 데이터","JA":"複数のセキュリティ戦略保護データ"},
|
||||
{"CN":"拥有最新版本所有功能","EN":"Have all functions of the latest version","TC":"擁有最新版本所有功能","KO":"최신 버전의 모든 기능이 있습니다","JA":"最新バージョンのすべての機能を持っています"},
|
||||
{"CN":"根据您的需求量身定制","EN":"Customized according to your needs","TC":"根據您的需求量身定制","KO":"사용자 정의하십시오","JA":"ニーズに応じてカスタマイズされています"},
|
||||
{"CN":"完善的服务支持体系","EN":"Perfect service support system","TC":"完善的服務支持體系","KO":"완벽한 서비스 지원 시스템","JA":"完璧なサービスサポートシステム"},
|
||||
{"CN":"专属客户成功经理","EN":"Customer success manager","TC":"專屬客戶成功經理","KO":"고객 성공 관리자","JA":"カスタマーサクセスマネージャー"},
|
||||
{"CN":"二次开发咨询服务","EN":"Secondary development consulting service","TC":"二次開發諮詢服務","KO":"2 차 개발 컨설팅 서비스","JA":"二次開発コンサルティングサービス"},
|
||||
{"CN":"免费提供一次内训","EN":"Provide internal training for free","TC":"免費提供一次內訓","KO":"인터넷을 무료로 제공하십시오","JA":"無料で内部トレーニングを提供します"},
|
||||
{"CN":"选择适合您的版本","EN":"Choose the version that suits you","TC":"選擇適合您的版本","KO":"자신에게 맞는 버전을 선택하십시오","JA":"あなたに合ったバージョンを選択してください"},
|
||||
{"CN":"1:1客户成功顾问","EN":"1: 1 Customer successful consultant","TC":"1:1客戶成功顧問","KO":"1 : 1 고객 성공적인 컨설턴트","JA":"1:1の顧客成功コンサルタント"},
|
||||
{"CN":"一对一客户顾问","EN":"One -to -one customer consultant","TC":"一對一客戶顧問","KO":"하나의 고객 컨설턴트","JA":"1人から1人の顧客コンサルタント"},
|
||||
{"CN":"中英文邮件支持","EN":"Chinese and English email support","TC":"中英文郵件支持","KO":"중국어 및 영어 이메일 지원","JA":"中国語と英語の電子メールサポート"},
|
||||
{"CN":"全面的支持服务","EN":"Comprehensive support service","TC":"全面的支持服務","KO":"포괄적 인 지원 서비스","JA":"包括的なサポートサービス"},
|
||||
{"CN":"完善的培训体系","EN":"Comprehensive training system","TC":"完善的培訓體系","KO":"포괄적 인 Trining Systemm","JA":"包括的なトレーニングシステム"},
|
||||
{"CN":"支持私有化部署","EN":"Support privatization deployment","TC":"支持私有化部署","KO":"개인 배포를 지원합니다","JA":"民営化の展開をサポートします"},
|
||||
{"CN":"iOS/Android客户端","EN":"IOS/Android client","TC":"iOS/Android客戶端","KO":"iOS/Android 클라이언트","JA":"iOS/Androidクライアント"},
|
||||
{"CN":"(Issues/社群)","EN":"(ISSUES/Community)","TC":"(Issues/社群)","KO":"(문제/커뮤니티)","JA":"(問題/コミュニティ)"},
|
||||
{"CN":"在线咨询支持","EN":"Online consultation support","TC":"在線諮詢支持","KO":"온라인 상담 지원","JA":"オンライン相談サポート"},
|
||||
{"CN":"明星客户案例","EN":"Star customer case","TC":"明星客戶案例","KO":"스타 고객 사례","JA":"スターの顧客ケース"},
|
||||
{"CN":"电话咨询支持","EN":"Telephone consultation support","TC":"電話諮詢支持","KO":"전화 상담 지원","JA":"電話相談サポート"},
|
||||
{"CN":"绑定自有域名","EN":"Bind your own domain name","TC":"綁定自有域名","KO":"자신의 도메인 이름을 바인딩하십시오","JA":"独自のドメイン名をバインドします"},
|
||||
{"CN":"选择适合你的","EN":"Choose suitable for you","TC":"選擇適合你的","KO":"당신에게 적합한 선택을 선택하십시오","JA":"あなたに適した選択を選択してください"},
|
||||
{"CN":"高可用性保证","EN":"High availability guarantee","TC":"高可用性保證","KO":"고 가용성 보증","JA":"高可用性保証"},
|
||||
{"CN":"邮箱地址:*","EN":"Email address:*","TC":"郵箱地址:*","KO":"이메일 주소:*","JA":"電子メールアドレス:*"},
|
||||
{"CN":"Mac/PC客户端","EN":"Mac/PC client","TC":"Mac/PC客戶端","KO":"Mac/PC 클라이언트","JA":"Mac/PCクライアント"},
|
||||
{"CN":"本地服务器","EN":"Local server","TC":"本地服務器","KO":"로컬 서버","JA":"ローカルサーバー"},
|
||||
{"CN":"周报/日报","EN":"Weekly/Daily","TC":"週報/日報","KO":"주간/매일","JA":"毎週/毎日"},
|
||||
{"CN":"上门支持","EN":"Support","TC":"上門支持","KO":"지원하다","JA":"サポート"},
|
||||
{"CN":"二次开发","EN":"Secondary development","TC":"二次開發","KO":"이차 개발","JA":"二次発達"},
|
||||
{"CN":"产品培训","EN":"Product training","TC":"產品培訓","KO":"제품 교육","JA":"製品トレーニング"},
|
||||
{"CN":"任务动态","EN":"Mission dynamic","TC":"任務動態","KO":"미션 다이나믹","JA":"ミッションダイナミック"},
|
||||
{"CN":"任务类型","EN":"Task type","TC":"任務類型","KO":"작업 유형","JA":"タスクタイプ"},
|
||||
{"CN":"创建群聊","EN":"Create group chat","TC":"創建群聊","KO":"그룹 채팅을 만듭니다","JA":"グループチャットを作成します"},
|
||||
{"CN":"导出任务","EN":"Export task","TC":"導出任務","KO":"수출 작업","JA":"エクスポートタスク"},
|
||||
{"CN":"帐户安全","EN":"Account security","TC":"帳戶安全","KO":"계정 보안","JA":"アカウントのセキュリティ"},
|
||||
{"CN":"应用支持","EN":"Applied support","TC":"應用支持","KO":"응용 지원","JA":"応用サポート"},
|
||||
{"CN":"数据加密","EN":"Data encryption","TC":"數據加密","KO":"데이터 암호화","JA":"データ暗号化"},
|
||||
{"CN":"文件搜索","EN":"File search","TC":"文件搜索","KO":"파일 검색","JA":"ファイル検索"},
|
||||
{"CN":"文件管理","EN":"File management","TC":"文件管理","KO":"파일 관리","JA":"ファイル管理"},
|
||||
{"CN":"服务支持","EN":"Service support","TC":"服務支持","KO":"서비스 지원","JA":"サービスサポート"},
|
||||
{"CN":"自助支持","EN":"Self -support","TC":"自助支持","KO":"자기 지원","JA":"自己サポート"},
|
||||
{"CN":"返回首页","EN":"Return homepage","TC":"返回首頁","KO":"홈페이지를 반환하십시오","JA":"ホームページを返します"},
|
||||
{"CN":"项目搜索","EN":"Project search","TC":"項目搜索","KO":"프로젝트 검색","JA":"プロジェクト検索"},
|
||||
{"CN":"项目管理","EN":"Project management","TC":"項目管理","KO":"프로젝트 관리","JA":"プロジェクト管理"},
|
||||
{"CN":"项目群聊","EN":"Project group chat","TC":"項目群聊","KO":"프로젝트 그룹 채팅","JA":"プロジェクトグループチャット"},
|
||||
{"CN":"体验DEMO","EN":"Experience DEMO","TC":"體驗DEMO","KO":"데모를 경험하십시오","JA":"デモを体験してください"},
|
||||
{"CN":"公有云","EN":"Public cloud","TC":"公有云","KO":"퍼블릭 클라우드","JA":"パブリッククラウド"},
|
||||
{"CN":"国际化","EN":"Globalization","TC":"國際化","KO":"세계화","JA":"グローバリゼーション"},
|
||||
{"CN":"定制版","EN":"Custom Edition","TC":"定製版","KO":"커스텀 에디션","JA":"カスタムエディション"},
|
||||
{"CN":"无限制","EN":"Unlimited","TC":"無限制","KO":"제한 없는","JA":"無制限"},
|
||||
{"CN":"甘特图","EN":"Gantt chart","TC":"甘特圖","KO":"간트 차트","JA":"ガントチャート"},
|
||||
{"CN":"社区版","EN":"Community","TC":"社區版","KO":"지역 사회","JA":"コミュニティ"},
|
||||
{"CN":"社区版","EN":"Compared to the PRO update cycle, longer","TC":"社區版","KO":"Pro 업데이트주기와 비교하여 더 길다","JA":"コミュニティ"},
|
||||
{"CN":"私有云","EN":"Private Cloud","TC":"私有云","KO":"프라이빗 클라우드","JA":"プライベートクラウド"},
|
||||
{"CN":"自定义","EN":"Customize","TC":"自定義","KO":"사용자 정의하십시오","JA":"カスタマイズ"},
|
||||
{"CN":"Pro版","EN":"PRO version","TC":"Pro版","KO":"프로 버전","JA":"プロバージョン"},
|
||||
{"CN":"人数","EN":"Number of people","TC":"人數","KO":"사람들의 수","JA":"人々の数"},
|
||||
{"CN":"价格","EN":"Price","TC":"價格","KO":"가격","JA":"価格"},
|
||||
{"CN":"推荐","EN":"Recommend","TC":"推薦","KO":"추천","JA":"お勧め"},
|
||||
{"CN":"日程","EN":"Schedule","TC":"日程","KO":"일정","JA":"スケジュール"},
|
||||
{"CN":"概述","EN":"Overview","TC":"概述","KO":"개요","JA":"概要"}
|
||||
])
|
||||
},
|
||||
|
||||
mounted() {
|
||||
this.getSetting();
|
||||
this.getShowItem();
|
||||
},
|
||||
|
||||
computed: {
|
||||
@ -978,6 +1069,10 @@ export default {
|
||||
setLanguage(l)
|
||||
},
|
||||
|
||||
goHome() {
|
||||
this.goForward({name: 'index', query: {action: 'index'}});
|
||||
},
|
||||
|
||||
getSetting() {
|
||||
this.$store.dispatch("call", {
|
||||
url: 'system/setting',
|
||||
@ -985,6 +1080,16 @@ export default {
|
||||
this.systemConfig = data;
|
||||
})
|
||||
},
|
||||
|
||||
getShowItem() {
|
||||
this.$store.dispatch("call", {
|
||||
url: "system/get/showitem",
|
||||
}).then(({data}) => {
|
||||
this.showItem = data
|
||||
}).catch(_ => {
|
||||
this.showItem = {}
|
||||
});
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
4
resources/assets/sass/dark.scss
vendored
4
resources/assets/sass/dark.scss
vendored
@ -399,6 +399,10 @@ body.dark-mode-reverse {
|
||||
.page-header {
|
||||
.header-nav {
|
||||
.header-nav-box {
|
||||
.header-right-github,
|
||||
.header-right-uplog {
|
||||
color: #000000;
|
||||
}
|
||||
.header-right-1 {
|
||||
.header-right-1-dropdown {
|
||||
color: #000000;
|
||||
|
||||
@ -22,3 +22,4 @@
|
||||
@import "task-operation";
|
||||
@import "task-priority";
|
||||
@import "team-management";
|
||||
@import "update-log";
|
||||
|
||||
58
resources/assets/sass/pages/components/update-log.scss
vendored
Normal file
58
resources/assets/sass/pages/components/update-log.scss
vendored
Normal file
@ -0,0 +1,58 @@
|
||||
.update-log {
|
||||
.uplog-head {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
.uplog-title {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
font-size: 18px;
|
||||
color: $primary-title-color;
|
||||
font-weight: 500;
|
||||
margin-right: 6px;
|
||||
}
|
||||
}
|
||||
.ivu-modal-body {
|
||||
padding: 0 32px !important;
|
||||
.uplog-body {
|
||||
max-height: 240px;
|
||||
overflow-x: hidden;
|
||||
.markdown-preview {
|
||||
margin: -20px -12px;
|
||||
h1 {
|
||||
font-size: 24px;
|
||||
margin-bottom: 12px;
|
||||
&:first-child {
|
||||
padding-top: 0;
|
||||
}
|
||||
}
|
||||
h2 {
|
||||
font-size: 18px !important;
|
||||
padding-top: 2px !important;
|
||||
}
|
||||
ul {
|
||||
li {
|
||||
padding: 2px 0 2px 2px !important;
|
||||
&:after {
|
||||
top: 10px !important;
|
||||
width: 6px !important;
|
||||
height: 6px !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.ivu-modal-fullscreen {
|
||||
.ivu-modal-body {
|
||||
padding: 0 16px !important;
|
||||
margin: 16px 0 !important;
|
||||
.uplog-body {
|
||||
max-height: none;
|
||||
overflow-x: auto;
|
||||
.markdown-preview {
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
59
resources/assets/sass/pages/page-index.scss
vendored
59
resources/assets/sass/pages/page-index.scss
vendored
@ -326,65 +326,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
.page-index-uplog {
|
||||
.uplog-head {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
.uplog-title {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
font-size: 18px;
|
||||
color: $primary-title-color;
|
||||
font-weight: 500;
|
||||
margin-right: 6px;
|
||||
}
|
||||
}
|
||||
.ivu-modal-body {
|
||||
padding: 0 32px !important;
|
||||
.uplog-body {
|
||||
max-height: 240px;
|
||||
overflow-x: hidden;
|
||||
.markdown-preview {
|
||||
margin: -20px -12px;
|
||||
h1 {
|
||||
font-size: 24px;
|
||||
margin-bottom: 12px;
|
||||
&:first-child {
|
||||
padding-top: 0;
|
||||
}
|
||||
}
|
||||
h2 {
|
||||
font-size: 18px !important;
|
||||
padding-top: 2px !important;
|
||||
}
|
||||
ul {
|
||||
li {
|
||||
padding: 2px 0 2px 2px !important;
|
||||
&:after {
|
||||
top: 10px !important;
|
||||
width: 6px !important;
|
||||
height: 6px !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.ivu-modal-fullscreen {
|
||||
.ivu-modal-body {
|
||||
padding: 0 16px !important;
|
||||
margin: 16px 0 !important;
|
||||
.uplog-body {
|
||||
max-height: none;
|
||||
overflow-x: auto;
|
||||
.markdown-preview {
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 1440px) {
|
||||
.page-index {
|
||||
.page-warp {
|
||||
|
||||
1762
resources/assets/statics/public/js/language.all.js
vendored
1762
resources/assets/statics/public/js/language.all.js
vendored
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user