no message

This commit is contained in:
kuaifan 2023-07-29 17:21:10 +08:00
parent 9ea1fa6df7
commit b4bf8304ec
23 changed files with 335 additions and 79 deletions

View File

@ -36,6 +36,7 @@ class AutoArchivedTask extends AbstractTask
->whereNull('archived_at')
->take(100)
->get();
/** @var ProjectTask $task */
foreach ($taskLists AS $task) {
$task->archivedTask(Carbon::now(), true);
}

View File

@ -1282,3 +1282,22 @@ AI机器人
暂不支持粘贴文件夹。
暂不支持拖拽文件夹,请手动上传文件夹。
暂不支持粘贴文件夹,请手动上传文件夹。
最近
暂无结果
新项目负责人
恢复帐号(已离职)
你确定恢复已离职帐号【(*)】吗?(注:此操作仅恢复帐号状态,无法恢复操作离职时移交的数据)
流转到【(*)】时改变任务负责人为状态负责人(并保留操作状态的人员),原本的任务负责人移至协助人员。
删除文件夹
你确定要删除【(*)】文件夹吗?
请输入新的密码
请输入新的邮箱((*)
截图快捷键
新项目负责人
暂无结果
最近
加班
离职申请
录用申请

View File

@ -17169,5 +17169,203 @@
"de": "Ja, guck dir ein date in cookies arsch an",
"fr": "Voir la sessionKey dans les cookies est",
"id": "Periksa kunci sesi pada Cookie"
},
{
"key": "暂不支持拖拽文件夹。",
"zh": "",
"zh-CHT": "暫不支持拖拽文件夾。",
"en": "Drag-and-drop folders are not supported.",
"ko": "폴더 끌기는 지원되지 않습니다.",
"ja": "フォルダのドラッグ・ドロップには対応していません。",
"de": "Es wird niemandem helfen, den ordner zu ziehen",
"fr": "Les dossiers de glisser-déposer ne sont pas pris en charge.",
"id": "Tak akan menarik folder."
},
{
"key": "暂不支持粘贴文件夹。",
"zh": "",
"zh-CHT": "暫不支持粘貼文件夾。",
"en": "It does not support pasting folders.",
"ko": "폴더 붙여넣기는 지원되지 않습니다.",
"ja": "フォルダの貼り付けには対応していません。",
"de": "Tragt den ordner nicht ein",
"fr": "Les dossiers coller ne sont pas supportés pour le moment.",
"id": "Tak akan meminta penundaan folder."
},
{
"key": "暂不支持拖拽文件夹,请手动上传文件夹。",
"zh": "",
"zh-CHT": "暫不支持拖拽文件夾,請手動上傳文件夾。",
"en": "Dragging and dropping folders is not supported, please upload folders manually.",
"ko": "폴더를 끌어 올리는 것은 지원되지 않습니다. 폴더를 업로드하십시오.",
"ja": "フォルダをドラッグ&ドロップに対応していませんので、手動でフォルダをアップロードしてください。",
"de": "Ordner abschleppen unterstützt nicht; bitte diesen ordner manuell hochladen",
"fr": "Les dossiers de glisser-déposer ne sont pas pris en charge pour le moment. Veuillez télécharger les dossiers manuellement.",
"id": "Tak ada dukungan pada folder penarik, upload secara manual."
},
{
"key": "暂不支持粘贴文件夹,请手动上传文件夹。",
"zh": "",
"zh-CHT": "暫不支持粘貼文件夾,請手動上傳文件夾。",
"en": "It does not support pasting folders. Please upload folders manually.",
"ko": "폴더 붙여넣기는 지원되지 않습니다. 폴더 업로드하십시오.",
"ja": "フォルダの貼り付けには対応していませんので、手動でフォルダをアップロードしてください。",
"de": "Den ordner zum einfügen nicht unterstützen; bitte diesen manuell hochladen",
"fr": "Le dossier coller nest pas pris en charge pour le moment. Veuillez télécharger le dossier manuellement.",
"id": "Tak ada folder tempel yang didukung, unggah secara manual."
},
{
"key": "最近",
"zh": "",
"zh-CHT": "最近",
"en": "Lately",
"ko": "최근",
"ja": "最近です",
"de": "Erst kürzlich",
"fr": "La récente",
"id": "Baru-baru ini"
},
{
"key": "暂无结果",
"zh": "",
"zh-CHT": "暫無結果",
"en": "No result yet",
"ko": "아직 결과가 없다.",
"ja": "まだ結果はありません",
"de": "Vom tisch.",
"fr": "Pas encore de résultats",
"id": "Tidak ada hasil."
},
{
"key": "新项目负责人",
"zh": "",
"zh-CHT": "新項目負責人",
"en": "New project leader",
"ko": "새 프로젝트 책임자",
"ja": "新しいプロジェクトリーダーです",
"de": "Neuer projektleiter.",
"fr": "Nouveau chef de projet",
"id": "Direktur proyek baru"
},
{
"key": "恢复帐号(已离职)",
"zh": "",
"zh-CHT": "恢復帳號(已離職)",
"en": "Restore Account (Retired)",
"ko": "계정 복원 (이미 종료됨)",
"ja": "アカウント復旧(退職しました)",
"de": "Reaktivieren sie den account wieder",
"fr": "Récupération de compte (quittée)",
"id": "Kembalikan akun (tidak aktif)"
},
{
"key": "你确定恢复已离职帐号【(*)】吗?(注:此操作仅恢复帐号状态,无法恢复操作离职时移交的数据)",
"zh": "",
"zh-CHT": "你確定恢復已離職帳號【(*)】嗎?(注:此操作僅恢復帳號狀態,無法恢復操作離職時移交的數據)",
"en": "Are you sure to restore the departed account [(*)]? (Note: This operation only restores the account status and cannot restore the data transferred when the operation is terminated.)",
"ko": "이직한 계정 [(*)]을 복원하시겠습니까?(주:이 작업은 계정 상태만 복구할 수 있습니다. 작업이 중단되었을 때 전송된 데이터는 복구할 수 없습니다)",
"ja": "退職したアカウント【(*)】の復旧は確実ですか?(注:この作業はアカウントの復旧のみであり、作業終了時に移管したデータの復旧はできません)",
"de": "Sind sie sicher, dass sie alles wieder eingestellt haben? Dies stellt nur die rufnummer wieder ein; keine wiederherstellung der im gang befindlichen daten",
"fr": "Êtes-vous sûr de récupérer un compte sortant [(*)]? (remarque: cette opération ne permet que de restaurer létat du compte, les données transférées lors du départ de lopération ne peuvent pas être récupérées)",
"id": "Apakah anda yakin telah kembali akun yang tidak aktif ((*)? (catatan: operasi ini hanya mengembalikan status akun dan tidak dapat mengembalikan data yang diserahkan saat operasi meninggalkan)"
},
{
"key": "流转到【(*)】时改变任务负责人为状态负责人(并保留操作状态的人员),原本的任务负责人移至协助人员。",
"zh": "",
"zh-CHT": "流轉到【(*)】時改變任務負責人爲狀態負責人(並保留操作狀態的人員),原本的任務負責人移至協助人員。",
"en": "When transferring to [(*)], the task leader is changed to the status leader (and the operational status person is retained), and the original task leader is moved to the assistance person.",
"ko": "【(*)】로 이전할 때 임무책임자는 상태책임자 (동시에 조작상태를 보류한 인원)로 변경되며 원래의 임무책임자는 협조인원으로 이전된다.",
"ja": "【(*)】に流れた時点でタスクの責任者を状態責任者(作業状態を保持している人)に変更し、元のタスクの責任者をサポートスタッフに移します。",
"de": "Nach der umleitung zu [*] ändert sich der dienstleiter zum dienstleiter (der auch diesen bereitschaftsstatus behalten hat), so dass der ursprüngliche controller zu einem helfer umgeleitet wird.",
"fr": "Lorsque le flux passe à [(*)], le chef de mission devient le chef détat (et la personne qui conserve le statut opérationnel), le chef de mission dorigine passe à lassistant.",
"id": "Ubah direktur misi menjadi pemimpin negara (dan tetap memegang status operasional) ketika petugas yang bertugas dipindahkan ke asisten."
},
{
"key": "删除文件夹",
"zh": "",
"zh-CHT": "刪除文件夾",
"en": "Delete folder",
"ko": "폴더 지우기",
"ja": "フォルダを削除します",
"de": "Ordner löschen",
"fr": "Supprimer un dossier",
"id": "Hapus folder"
},
{
"key": "你确定要删除【(*)】文件夹吗?",
"zh": "",
"zh-CHT": "你確定要刪除【(*)】文件夾嗎?",
"en": "Are you sure you want to delete the [(*)] folder?",
"ko": "[(*)] 폴더를 정말로 삭제하시겠습니까?",
"ja": "【(*)】フォルダを削除しますか?",
"de": "Möchten sie wirklich (*) den ordner löschen?",
"fr": "Êtes-vous sûr de vouloir supprimer le dossier [(*)]?",
"id": "Apakah anda yakin ingin menghapus folder [*]?"
},
{
"key": "请输入新的密码",
"zh": "",
"zh-CHT": "請輸入新的密碼",
"en": "Please enter a new password",
"ko": "새 비밀번호를 입력하십시오",
"ja": "新しいパスワードをお願いします。",
"de": "Bitte geben sie ein neues passwort ein",
"fr": "Veuillez entrer un nouveau mot de passe",
"id": "Password baru, silakan"
},
{
"key": "请输入新的邮箱((*)",
"zh": "",
"zh-CHT": "請輸入新的郵箱((*)",
"en": "Please enter a new email ((*))",
"ko": "새 편지함을 입력하십시오 (*)",
"ja": "新しいメールアドレス((*))をお願いします。",
"de": "Bitte geben sie einen neuen briefkasten ein",
"fr": "Veuillez entrer un nouvel email ((*))",
"id": "Silahkan masukkan email baru (*)"
},
{
"key": "截图快捷键",
"zh": "",
"zh-CHT": "截圖快捷鍵",
"en": "Screenshot shortcut",
"ko": "스크린샷 단축키",
"ja": "スクリーンショットショートカットキーです",
"de": "Fahre den kurzbefehl ab",
"fr": "Raccourcis pour captures décran",
"id": "Shortcut screenshot"
},
{
"key": "加班",
"zh": "",
"zh-CHT": "加班",
"en": "Overtime",
"ko": "초과 근무",
"ja": "残業",
"de": "Überstunden.",
"fr": "Les heures supplémentaires",
"id": "Kerja lembur."
},
{
"key": "离职申请",
"zh": "",
"zh-CHT": "離職申請",
"en": "Resignation application",
"ko": "이직 신청",
"ja": "退職願いです",
"de": "Eine freistellung beantragen.",
"fr": "Demande de départ",
"id": "Tinggalkan aplikasi"
},
{
"key": "录用申请",
"zh": "",
"zh-CHT": "錄用申請",
"en": "Application for employment",
"ko": "채용 지원서",
"ja": "採用申し込みです",
"de": "Wir nehmen die bewerbung an.",
"fr": "Demande doffre",
"id": "Aplikasi untuk diterima"
}
]

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
if(typeof window.LANGUAGE_DATA==="undefined")window.LANGUAGE_DATA={};window.LANGUAGE_DATA["zh"]=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""]
if(typeof window.LANGUAGE_DATA==="undefined")window.LANGUAGE_DATA={};window.LANGUAGE_DATA["zh"]=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""]

View File

@ -175,15 +175,10 @@ $A.execMainCacheJudge = (key) => {
// 绑定截图快捷键
$A.bindScreenshotKey = (data) => {
let key = "";
let screenshot_key = (data.screenshot_key || "").trim().toLowerCase()
if (screenshot_key && (data.screenshot_mate || data.screenshot_shift)) {
if (data.screenshot_mate) {
key = /macintosh|mac os x/i.test(navigator.userAgent) ? 'command' : 'ctrl'
}
if (data.screenshot_shift) {
key = `${key ? `${key}+` : ''}shift`
}
key = `${key}+${screenshot_key.toLowerCase()}`
const screenshot_key = (data.screenshot_key || "").trim().toLowerCase()
if (screenshot_key) {
key = /macintosh|mac os x/i.test(navigator.userAgent) ? 'command' : 'ctrl'
key = `${key}+shift+${screenshot_key.toLowerCase()}`
}
$A.Electron.sendMessage('bindScreenshotKey', {key});
};

View File

@ -7,7 +7,7 @@
@touchstart="onTouchstart"
@touchmove="onTouchmove">
<UserAvatar :userid="userid" :size="40" show-name :name-text="title"/>
<div class="notification-desc">{{desc}}</div>
<div class="notification-desc no-dark-content">{{desc}}</div>
</div>
</transition>
</template>

View File

@ -1,5 +1,5 @@
<template>
<div v-show="userId > 0" class="page-manage" :class="{'show-tabbar': showMobileTabbar}">
<div class="page-manage" :class="{'show-tabbar': showMobileTabbar, 'not-logged': userId <= 0}">
<div class="manage-box-menu" :class="{'show-mobile-menu': showMobileMenu}">
<Dropdown
class="page-manage-menu-dropdown main-menu"
@ -903,14 +903,33 @@ export default {
shortcutEvent(e) {
if (e.metaKey || e.ctrlKey) {
if (e.keyCode === 74) {
e.preventDefault();
this.onAddMenu('createMeeting')
} else if (e.keyCode === 75 || e.keyCode === 78) {
e.preventDefault();
this.onAddMenu('task')
} else if (e.keyCode === 83 && this.$refs.taskModal.checkUpdate()) {
e.preventDefault();
switch (e.keyCode) {
case 66: // B -
e.preventDefault();
this.onAddShow()
break;
case 74: // J -
e.preventDefault();
this.onAddMenu('createMeeting')
break;
case 75:
case 78: // K/N -
e.preventDefault();
this.onAddMenu('task')
break;
case 83: // S -
if (this.$refs.taskModal.checkUpdate()) {
e.preventDefault();
}
break;
case 188: // , -
e.preventDefault();
this.toggleRoute('setting')
break;
}
}
},

View File

@ -1,6 +1,6 @@
<template>
<div class="dialog-respond">
<div class="respond-title"><em>{{respondData.symbol}}</em>{{$L('回应详情')}} ({{respondData.userids.length}})</div>
<div class="respond-title"><em class="no-dark-content">{{respondData.symbol}}</em>{{$L('回应详情')}} ({{respondData.userids.length}})</div>
<div class="respond-user">
<ul>

View File

@ -1129,7 +1129,7 @@ export default {
},
windowScrollY(val) {
if ($A.isIos()) {
if ($A.isIos() && !this.$slots.head) {
const {tail} = this.scrollInfo();
this.navStyle = {
marginTop: val + 'px'

View File

@ -650,7 +650,7 @@ export default {
disableOptions: {
shortcuts: [
{
text: this.$L('12:00'),
text: '12:00',
value () {
return $A.Date($A.formatDate("Y-m-d 12:00:00"));
},
@ -659,7 +659,7 @@ export default {
}
},
{
text: this.$L('17:00'),
text: '17:00',
value () {
return $A.Date($A.formatDate("Y-m-d 17:00:00"));
},
@ -668,7 +668,7 @@ export default {
}
},
{
text: this.$L('18:00'),
text: '18:00',
value () {
return $A.Date($A.formatDate("Y-m-d 18:00:00"));
},
@ -677,7 +677,7 @@ export default {
}
},
{
text: this.$L('19:00'),
text: '19:00',
value () {
return $A.Date($A.formatDate("Y-m-d 19:00:00"));
},

View File

@ -1,10 +1,10 @@
<template>
<div class="page-setting">
<PageTitle :title="$L(titleNameRoute)"/>
<PageTitle :title="titleNameRoute"/>
<div class="setting-head">
<div class="setting-titbox">
<div class="setting-title">
<h1>{{$L(settingTitleName)}}</h1>
<h1>{{settingTitleName}}</h1>
<div v-if="!showMobileBox" class="setting-more" @click="toggleRoute('index')">
<Icon type="md-close" />
</div>
@ -33,7 +33,7 @@
</ul>
</div>
<div class="setting-content">
<div class="setting-content-title">{{$L(titleNameRoute)}}</div>
<div class="setting-content-title">{{titleNameRoute}}</div>
<div class="setting-content-view">
<router-view class="setting-router-view"></router-view>
</div>
@ -72,15 +72,15 @@ export default {
menu() {
const menu = [
{path: 'personal', name: '个人设置'},
{path: 'checkin', name: '签到设置', desc: ' (Beta)'},
{path: 'language', name: '语言设置'},
{path: 'theme', name: '主题设置'},
{path: 'password', name: '密码设置'},
{path: 'email', name: '修改邮箱'},
{path: 'checkin', name: '签到设置', desc: ' (Beta)'},
{path: 'language', name: '语言设置', divided: true},
{path: 'theme', name: '主题设置'},
]
if (this.$Electron) {
menu.splice(2, 0, {path: 'keyboard', name: '快捷键', desc: ' (Beta)'})
menu.push({path: 'keyboard', name: '盘设置', desc: ' (Beta)'})
}
if ($A.isDooServer() && this.$isEEUiApp) {
@ -93,7 +93,7 @@ export default {
if (this.userIsAdmin) {
menu.push(...[
{path: 'system', name: '系统设置', divided: true},
{path: 'approve', name: this.$L('审批设置'), desc: ' (Beta)'},
{path: 'approve', name: '审批设置', desc: ' (Beta)'},
{path: 'license', name: 'License Key'},
])
}
@ -109,18 +109,18 @@ export default {
let name = '';
menu.some((item) => {
if (routeName === `manage-setting-${item.path}`) {
name = `${item.name}${item.desc||''}`;
name = `${this.$L(item.name)}${item.desc||''}`;
return true;
}
})
return name || '设置';
return name || this.$L('设置');
},
settingTitleName() {
if (this.windowPortrait) {
return this.titleNameRoute
}
return '设置'
return this.$L('设置')
},
},

View File

@ -1,19 +1,34 @@
<template>
<div class="setting-item submit">
<Form ref="formData" :model="formData" :rules="ruleData" label-width="auto" @submit.native.prevent>
<FormItem :label="$L('截图快捷键')" prop="screenshot">
<FormItem :label="$L('截图快捷键')" prop="screenshot_key">
<div class="input-box">
<Checkbox v-model="formData.screenshot_mate">{{mateName}}</Checkbox>
<div class="input-box-push">+</div>
<Checkbox v-model="formData.screenshot_shift">Shift</Checkbox>
<div class="input-box-push">+</div>
<Input class="input-box-key" :disabled="screenshotDisabled" :value="formData.screenshot_key" @on-keydown="onKeydown" :maxlength="1"/>
{{mateName}}<div class="input-box-push">+</div>Shift<div class="input-box-push">+</div><Input class="input-box-key" v-model="formData.screenshot_key" :maxlength="2"/>
</div>
</FormItem>
<FormItem :label="$L('新建项目')">
<div class="input-box">
{{mateName}}<div class="input-box-push">+</div>B
</div>
</FormItem>
<FormItem :label="$L('新建任务')">
<div class="input-box">
{{mateName}}<div class="input-box-push">+</div>N (K)
</div>
</FormItem>
<FormItem :label="$L('新会议')">
<div class="input-box">
{{mateName}}<div class="input-box-push">+</div>J
</div>
</FormItem>
<FormItem :label="$L('设置')">
<div class="input-box">
{{mateName}}<div class="input-box-push">+</div>,
</div>
<div v-if="screenshotDisabled" class="form-tip red">{{$L('至少选择一个功能键')}}</div>
</FormItem>
</Form>
<div class="setting-footer">
<Button :loading="loadIng > 0" :disabled="screenshotDisabled" type="primary" @click="submitForm">{{$L('保存')}}</Button>
<Button :loading="loadIng > 0" type="primary" @click="submitForm">{{$L('保存')}}</Button>
<Button :loading="loadIng > 0" @click="resetForm" style="margin-left: 8px">{{$L('重置')}}</Button>
</div>
</div>
@ -28,7 +43,7 @@
padding: 0 12px 0 8px;
}
.input-box-key {
width: 80px;
width: 60px;
}
}
</style>
@ -42,12 +57,28 @@ export default {
formData: {
screenshot_mate: true,
screenshot_shift: true,
screenshot_key: '',
},
ruleData: { },
ruleData: {
screenshot_key: [
{
validator: (rule, value, callback) => {
value = value.trim();
value = value.substring(value.length - 1)
if (value && !/^[A-Za-z0-9]?$/.test(value)) {
callback(new Error(this.$L('只能输入字母或数字')));
} else {
callback();
}
this.$nextTick(_ => {
this.$set(this.formData, rule.field, value.toUpperCase())
})
},
trigger: 'change'
},
],
},
}
},
@ -55,17 +86,9 @@ export default {
this.initData();
},
computed: {
screenshotDisabled() {
return !this.formData.screenshot_mate && !this.formData.screenshot_shift;
}
},
methods: {
initData() {
this.formData = Object.assign({
screenshot_mate: true,
screenshot_shift: true,
screenshot_key: '',
}, $A.jsonParse(window.localStorage.getItem("__keyboard:data__")) || {});
//
@ -84,6 +107,7 @@ export default {
submitForm() {
this.$refs.formData.validate((valid) => {
if (valid) {
console.log(this.formData);
window.localStorage.setItem("__keyboard:data__", $A.jsonStringify(this.formData));
$A.bindScreenshotKey(this.formData);
$A.messageSuccess('保存成功');

View File

@ -951,8 +951,8 @@
> li {
list-style: none;
display: flex;
align-items: center;
padding: 2px 7px;
align-items: flex-start;
padding: 2px 8px;
margin-top: 6px;
margin-right: 8px;
border-radius: 14px;
@ -971,17 +971,7 @@
}
.emoji-users {
position: relative;
padding-left: 14px;
&:before {
position: absolute;
content: "";
left: 7px;
top: 5px;
bottom: 5px;
width: 1px;
transform: scaleX(0.5);
background-color: rgba(#818181, 0.5);
}
padding-left: 6px;
> ul {
display: flex;
flex-wrap: wrap;
@ -992,6 +982,8 @@
list-style: none;
color: #818181;
font-size: 12px;
height: 22px;
line-height: 22px;
&.bold {
font-weight: 600;
}

View File

@ -5,6 +5,14 @@
right: 0;
bottom: 0;
display: flex;
&.not-logged {
.manage-box-menu {
display: none;
}
.manage-box-main {
display: none;
}
}
.manage-box-menu {
position: relative;
flex-grow: 0;

@ -1 +1 @@
Subproject commit 53f7d66e239a5683887246084cf60b1bca6e0f85
Subproject commit ca23eec93b1a2adac6096add030c80f0a0316e09