Add: bg/cs/de locales
This commit is contained in:
159
app/view/bg/acct.html
Normal file
159
app/view/bg/acct.html
Normal file
@@ -0,0 +1,159 @@
|
||||
<!doctype html>
|
||||
<html lang="bg">
|
||||
|
||||
<head>
|
||||
<title>Account Manager - TheDesk</title>
|
||||
<meta content="width=device-width,initial-scale=1.0" name="viewport">
|
||||
<link href="../../node_modules/materialize-css/dist/css/materialize.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/themes.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/master.css" type="text/css" rel="stylesheet">
|
||||
<link href='../../css/font-awesome.css' rel='stylesheet' type='text/css'>
|
||||
<link href='../../css/tl.css' rel='stylesheet' type='text/css'>
|
||||
<link href='../../css/userdata.css' rel='stylesheet' type='text/css'>
|
||||
<link href="https://fonts.googleapis.com/icon?family=Material+Icons|Open+Sans:300" rel="stylesheet">
|
||||
<style>
|
||||
.acct {
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
}
|
||||
|
||||
.card {
|
||||
width: 400px;
|
||||
background-color: #9e9e9e;
|
||||
margin: 10px;
|
||||
}
|
||||
|
||||
body,
|
||||
html {
|
||||
overflow-y: scroll;
|
||||
}
|
||||
|
||||
#acct-list {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
color: white;
|
||||
align-items: flex-start
|
||||
}
|
||||
|
||||
.lts {
|
||||
font-size: 150%
|
||||
}
|
||||
|
||||
.colorsel {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.card .colorsel div:not(.exc) {
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
}
|
||||
|
||||
.card .colorsel div.exc {
|
||||
width: 40px;
|
||||
height: 20px;
|
||||
}
|
||||
|
||||
.first {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center
|
||||
}
|
||||
|
||||
.first .hide-first {
|
||||
display: none;
|
||||
}
|
||||
</style>
|
||||
<meta charset="utf-8">
|
||||
<!--
|
||||
<script type="text/javascript">
|
||||
var _jipt = [];
|
||||
_jipt.push(['project', 'thedesk']);
|
||||
</script>
|
||||
<script type="text/javascript" src="https://cdn.crowdin.com/jipt/jipt.js"></script>
|
||||
-->
|
||||
</head>
|
||||
|
||||
<body id="mainView">
|
||||
<script type="text/javascript" src="../../node_modules/jquery/dist/jquery.js"></script>
|
||||
<script type="text/javascript" src="../../js/platform/first.js"></script>
|
||||
<script type="text/javascript" src="../../node_modules/materialize-css/dist/js/materialize.js"></script>
|
||||
<script type="text/javascript" src="../../js/lang/lang.bg.js"></script>
|
||||
<script type="text/javascript" src="../../node_modules/sweetalert2/dist/sweetalert2.all.min.js"></script>
|
||||
<script>
|
||||
var misskeytoken = false;
|
||||
</script>
|
||||
<script type="text/javascript" src="../../js/ui/tips.js"></script>
|
||||
<script type="text/javascript" src="../../js/common/time.js"></script>
|
||||
<script type="text/javascript" src="../../js/common/modal.js"></script>
|
||||
<div class="hide-first">
|
||||
<a href="index.html" class="btn waves-effect orange nex"
|
||||
style="width:100%; max-width:200px;">Назад</a><br>
|
||||
<h5>Списък на профилите</h5>
|
||||
<div id="acct-list"></div>
|
||||
<div class="divider"></div>
|
||||
</div>
|
||||
<div>
|
||||
<h5>Добавяне на профил</h5><br>
|
||||
<div id="add">
|
||||
<div class="row">
|
||||
<div class="col s8">
|
||||
<input type="text" id="url" style="width:70%" placeholder="ex)mstdn.jp">
|
||||
<div id="ins-suggest"></div>
|
||||
Премахнете отметката за да пропуснете влизането с код. (Вход в Mastodon от Windows или macOS) (Препоръчително: pcheck)<br>
|
||||
<label>
|
||||
<input type="checkbox" class="filled-in" id="linux" />
|
||||
<span>Настройка на код</span>
|
||||
</label>
|
||||
<br>
|
||||
<label>
|
||||
<input type="checkbox" class="filled-in" id="misskey" />
|
||||
<span>Влезте като Misskey</span>
|
||||
</label><br>
|
||||
<button class="btn waves-effect" onclick="instance()">Login</button><br>
|
||||
</div>
|
||||
<div class="col s4">
|
||||
<span style="font-family:Open Sans;">Supports</span>
|
||||
<div id="support" class="collection transparent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="auth" style="display:none">
|
||||
Поставете кода и затворете браузъра.<br>
|
||||
<input type="text" id="code" placeholder="Код">
|
||||
<button class="btn waves-effect" onclick="code()">Auth</button><br>
|
||||
</div>
|
||||
<div id="misskeylogin" style="display:none">
|
||||
<h5>AppSecret</h5>
|
||||
Прочетете <a href="https://thedesk.top/how-to-misskey-login.html">Документацията</a>, за да влезете в Misskey.<br>
|
||||
<input type="hidden" id="misskey-url">
|
||||
<input type="text" id="misskey-key" placeholder="Код">
|
||||
<button class="btn waves-effect" onclick="misskeyLogin()">Auth</button><br>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hide-first">
|
||||
<h5>Основен профил</h5>
|
||||
<div class="input-field" style="width:300px"><span data-trans="your_acct">Изберете профил</span>
|
||||
<br>
|
||||
<select id="main-acct-sel" class="acct-sel" style="color:black" onchange="mainacct()"></select>
|
||||
<label></label>
|
||||
</div>
|
||||
Some instance data by <a href="https://instances.social" target="_blank">instances.social API</a><br>
|
||||
<h5 id="ins-title"></h5>
|
||||
Administered by:<a id="ins-admin"></a><br>
|
||||
<span id="ins-desc"></span><br>
|
||||
<img src="../../img/loading.svg" id="ins-prof" width="200"><br>
|
||||
<br>
|
||||
Домейн:<span id="ins-name"></span><br>
|
||||
Федерални сървъри:<span id="ins-connect"></span><br>
|
||||
Тоот:<span id="ins-toot"></span><br>
|
||||
Потребители:<span id="ins-user"></span>Потребители<br>
|
||||
Свързване:<span id="ins-per"></span>%<br>
|
||||
Mastodon версия:<span id="ins-ver"></span>@<span id="ins-upd"></span><br>
|
||||
</div>
|
||||
<script type="text/javascript" src="../../js/ui/theme.js"></script>
|
||||
<script type="text/javascript" src="../../js/platform/end.js"></script>
|
||||
<script type="text/javascript" src="../../js/common/sha256.js"></script>
|
||||
<script type="text/javascript" src="../../js/login/tkn.js"></script>
|
||||
<script type="text/javascript" src="../../js/login/instance.js"></script>
|
||||
<script type="text/javascript" src="../../js/login/manager.js"></script>
|
||||
<script type="text/javascript" src="../../js/tl/date.js"></script>
|
1106
app/view/bg/index.html
Normal file
1106
app/view/bg/index.html
Normal file
File diff suppressed because it is too large
Load Diff
508
app/view/bg/setting.html
Normal file
508
app/view/bg/setting.html
Normal file
@@ -0,0 +1,508 @@
|
||||
<!doctype html>
|
||||
<html lang="bg" style="overflow:scroll">
|
||||
|
||||
<head>
|
||||
<title>Settings - TheDesk</title>
|
||||
<!--
|
||||
<script type="text/javascript">
|
||||
var _jipt = [];
|
||||
_jipt.push(['project', 'thedesk']);
|
||||
</script>
|
||||
<script type="text/javascript" src="https://cdn.crowdin.com/jipt/jipt.js"></script>
|
||||
-->
|
||||
<meta content="width=device-width,initial-scale=1.0" name="viewport">
|
||||
<link href="../../node_modules/materialize-css/dist/css/materialize.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/themes.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/pickr.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/master.css" type="text/css" rel="stylesheet">
|
||||
<link href='../../css/font-awesome.css' rel='stylesheet' type='text/css'>
|
||||
<link href="https://fonts.googleapis.com/icon?family=Material+Icons|Open+Sans:300" rel="stylesheet">
|
||||
<meta charset="utf-8">
|
||||
<style>
|
||||
input {
|
||||
max-height: 50px !important
|
||||
}
|
||||
|
||||
.pcr-result {
|
||||
height: 1rem !important;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body id="mainView" style="overflow-y:scroll">
|
||||
<script type="text/javascript" src="../../node_modules/jquery/dist/jquery.js"></script>
|
||||
<script type="text/javascript" src="../../js/platform/first.js"></script>
|
||||
<script type="text/javascript" src="../../node_modules/materialize-css/dist/js/materialize.js"></script>
|
||||
<script type="text/javascript" src="../../js/lang/lang.bg.js"></script>
|
||||
<script src="https://unpkg.com/json5@^2.0.0/dist/index.min.js"></script>
|
||||
<script src="../../node_modules/vue/dist/vue.min.js"></script>
|
||||
<script type="text/javascript" src="setting.vue.js"></script>
|
||||
<script type="text/javascript" src="../../node_modules/sweetalert2/dist/sweetalert2.all.min.js"></script>
|
||||
|
||||
<h4>Предпочитания</h4>
|
||||
<ul class="collapsible" data-collapsible="accordion">
|
||||
<li>
|
||||
<div class="collapsible-header">
|
||||
<i class="material-icons">desktop_windows</i>Системни предпочитания
|
||||
</div>
|
||||
<div class="collapsible-body">
|
||||
<h5>Езици</h5>
|
||||
To translate with Crowdin, you have to login Crowdin and restart TheDesk when login is finished.<br>
|
||||
<a onclick="changelang('ja')" class="pointer" style="margin-right:5px;">日本語</a><a onclick="changelang('en')" class="pointer" style="margin-right:5px;">English</a><a onclick="changelang('ps')" class="pointer" style="margin-right:5px;">Crowdin translate system(beta)</a><a onclick="changelang('bg')" class="pointer" style="margin-right:5px;">български</a><a onclick="changelang('cs')" class="pointer" style="margin-right:5px;">Česky</a><a onclick="changelang('de')" class="pointer" style="margin-right:5px;">Deutsch</a>
|
||||
<h5>Внос и износ на предпочитания</h5>
|
||||
<button onclick="exportSettings()" class="btn waves-effect lime darken-3"
|
||||
style="width:100%; max-width:200px;">Износ</button>
|
||||
<button onclick="importSettings()" class="btn waves-effect cyan darken-3"
|
||||
style="width:100%; max-width:200px;">Внос</button>
|
||||
<div id="envView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if="item.text.desc">
|
||||
<span v-html="item.text.desc"></span><br>
|
||||
</template>
|
||||
<template v-if="item.id=='notf'"><a onclick="notftest()"
|
||||
class="pointer">Тест за уведомяване</a><br></template>
|
||||
<template v-if="item.checkbox">
|
||||
<template v-for="(check, j) in item.text.checkbox">
|
||||
<label>
|
||||
<input class="with-gap" v-on:click="complete(i,check.value)" v-model="item.setValue"
|
||||
type="radio" v-bind:id="item.id+check.value" v-bind:value="check.value" />
|
||||
<span>{{check.text}}</span>
|
||||
</label>
|
||||
</template>
|
||||
</template>
|
||||
<template v-else>
|
||||
<template v-if="item.doubleText">
|
||||
<template v-for="(textbox, j) in item.data">
|
||||
<input type="text" v-model="textbox.setValue" type="radio" v-bind:id="textbox.id"
|
||||
v-bind:style="{ width: textbox.width+'px'}" />{{textbox.text.after}}
|
||||
</template>
|
||||
</template>
|
||||
<template v-else>
|
||||
<input type="text" v-model="item.setValue" type="radio" v-bind:id="item.id"
|
||||
v-bind:style="{ width: item.width+'px'}" />{{item.text.after}}
|
||||
</template>
|
||||
<button class="btn waves-effect" style="width:100px;"
|
||||
v-on:click="complete(i)">Промяна</button>
|
||||
</template><br>
|
||||
</template>
|
||||
</div>
|
||||
<h5>Шрифт</h5>
|
||||
Изберете любимия си шрифт с „Избор“ (само за Windows / macOS)<br>
|
||||
<button class="btn waves-effect" style="width:100px;" onclick="font()">Избери</button><br>
|
||||
<div id="fonts" class="hide" style="overflow-y:scroll; width:300px; height:500px;"></div>
|
||||
<br>
|
||||
<input type="text" style="width:150px" id="font">
|
||||
<button class="btn waves-effect" style="width:100px;" onclick="settings()">Запази</button>
|
||||
<br>
|
||||
<h5>Папка за запазване</h5>
|
||||
TheDesk ще използва това местоназначение, когато се опитва да запази снимки или да прави екранни снимки.<br>
|
||||
<button class="btn waves-effect" style="width:100px;" onclick="savefolder()">Промяна</button>
|
||||
<br>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<div class="collapsible-header">
|
||||
<i class="material-icons">color_lens</i>Теми
|
||||
</div>
|
||||
<div class="collapsible-body">
|
||||
<h4>Изберете тема</h4>
|
||||
<label>
|
||||
<input class="with-gap" onchange="settings()" name="theme" type="radio" id="black" value="black" />
|
||||
<span>Black</span>
|
||||
</label>
|
||||
<label>
|
||||
<input class="with-gap" onchange="settings()" name="theme" type="radio" id="white" value="white" />
|
||||
<span>White</span>
|
||||
</label>
|
||||
<label>
|
||||
<input class="with-gap" onchange="settings()" name="theme" type="radio" id="indigo"
|
||||
value="indigo" />
|
||||
<span>Indigo<span class="imas hide">(エンドレスナイト)</span></span>
|
||||
</label>
|
||||
<label>
|
||||
<input class="with-gap" onchange="settings()" name="theme" type="radio" id="brown" value="brown" />
|
||||
<span>Brown<span class="imas hide">(ビタースイート・タイム)</span></span>
|
||||
</label>
|
||||
<label>
|
||||
<input class="with-gap" onchange="settings()" name="theme" type="radio" id="green" value="green" />
|
||||
<span>Green<span class="imas hide">(ユースフルロマンス)</span></span>
|
||||
</label>
|
||||
<label>
|
||||
<input class="with-gap" onchange="settings()" name="theme" type="radio" id="blue" value="blue" />
|
||||
<span>Blue<span class="imas hide">(渚の花嫁)</span></span>
|
||||
</label>
|
||||
<label>
|
||||
<input class="with-gap" onchange="settings()" name="theme" type="radio" id="custom"
|
||||
value="custom" />
|
||||
<span>custom</span>
|
||||
</label>
|
||||
<div style="width:300px" id="sel-selector">
|
||||
<select id="custom-sel-sel" class="custom-sel" onchange="customSel()"></select>
|
||||
</div>
|
||||
<h4>Редактирайте и добавете персонализирани теми</h4>
|
||||
<div style="width:300px" id="edit-selector" data-add="Добавяне на нов">
|
||||
<select id="custom-edit-sel" class="custom-sel" onchange="custom()">
|
||||
<option value="add_new">Добавяне на нов</option>
|
||||
</select>
|
||||
</div>
|
||||
<h5>Име</h5>
|
||||
<input type="text" style="width:300px" id="custom_name" placeholder="Име...">
|
||||
<h5>Относно тази тема</h5>
|
||||
<div class="input-field"><textarea style="width:300px" id="custom_desc" class="materialize-textarea"
|
||||
placeholder="Относно тази тема..."></textarea></div>
|
||||
<h5>Цветова схема</h5>
|
||||
<label>
|
||||
<input class="with-gap" onchange="settings()" name="direction" type="radio" id="dark" value="dark"
|
||||
checked="true" />
|
||||
<span>Dark</span>
|
||||
</label>
|
||||
<label>
|
||||
<input class="with-gap" onchange="settings()" name="direction" type="radio" id="light"
|
||||
value="light" />
|
||||
<span>Light</span>
|
||||
</label>
|
||||
<div id="pickers">
|
||||
<div>
|
||||
<h5>Primary</h5>Компоненти на фона
|
||||
<div id="color-picker0-wrap">
|
||||
<div class="color-picker" id="color-picker0"></div>
|
||||
</div>
|
||||
<input type="hidden" id="color-picker0_value">
|
||||
</div>
|
||||
<div>
|
||||
<h5>Secondary</h5>Цвят на фона
|
||||
<div id="color-picker1-wrap">
|
||||
<div class="color-picker" id="color-picker1"></div>
|
||||
</div>
|
||||
<input type="hidden" id="color-picker1_value">
|
||||
</div>
|
||||
<div>
|
||||
<h5>Texts</h5>Цвят на текста
|
||||
<div id="color-picker2-wrap">
|
||||
<div class="color-picker" id="color-picker2"></div>
|
||||
</div>
|
||||
<input type="hidden" id="color-picker2_value">
|
||||
</div>
|
||||
<div>
|
||||
<h5>Accent</h5>Фон на подсилването
|
||||
<div id="color-picker3-wrap">
|
||||
<div class="color-picker" id="color-picker3"></div>
|
||||
</div>
|
||||
<input type="hidden" id="color-picker3_value">
|
||||
</div>
|
||||
</div>
|
||||
<button class="btn-large waves-effect" onclick="customComp()">Промяна</button> <button
|
||||
class="btn waves-effect red disabled" id="delTheme" onclick="deleteIt()">Изтрий</button><br><br>
|
||||
<input type="text" style="width:300px;height:40px;" id="custom_json" class="materialize-textarea"
|
||||
placeholder="JSON style" readonly><br>
|
||||
Споделете този код с друг TheDesk. Не споделяйте този код с MiAS.
|
||||
<h4>Импортиране на персонализирани теми</h4>
|
||||
Вземете още теми от <a href="https://assets.msky.cafe/" target="_blank">MiAS</a><br>
|
||||
<input type="text" style="width:300px;height:40px;" id="custom_import" class="materialize-textarea"
|
||||
placeholder="JSON/JSON5 style">
|
||||
<button class="btn waves-effect" onclick="customImp()">Внос</button><br>
|
||||
</li>
|
||||
<li>
|
||||
<div class="collapsible-header">
|
||||
<i class="material-icons">reorder</i>Предпочитания за времевата линия
|
||||
</div>
|
||||
<div class="collapsible-body">
|
||||
<div id="tlView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if="item.text.desc">
|
||||
<span v-html="item.text.desc"></span><br>
|
||||
</template>
|
||||
<template v-if="item.checkbox">
|
||||
<template v-for="(check, j) in item.text.checkbox">
|
||||
<label>
|
||||
<input class="with-gap" v-on:click="complete(i,check.value)" v-model="item.setValue"
|
||||
type="radio" v-bind:id="item.id+check.value" v-bind:value="check.value" />
|
||||
<span>{{check.text}}</span>
|
||||
</label>
|
||||
</template>
|
||||
</template>
|
||||
<template v-else>
|
||||
<template v-if="item.doubleText">
|
||||
<template v-for="(textbox, j) in item.data">
|
||||
<input type="text" v-model="textbox.setValue" type="radio" v-bind:id="textbox.id"
|
||||
v-bind:style="{ width: textbox.width+'px'}" />{{textbox.text.after}}
|
||||
</template>
|
||||
</template>
|
||||
<template v-else>
|
||||
<input type="text" v-model="item.setValue" type="radio" v-bind:id="item.id"
|
||||
v-bind:style="{ width: item.width+'px'}" />{{item.text.after}}
|
||||
</template>
|
||||
<button class="btn waves-effect" style="width:100px;"
|
||||
v-on:click="complete(i)">Промяна</button>
|
||||
</template><br>
|
||||
</template>
|
||||
</div>
|
||||
<h5>Персонализиран звук</h5>
|
||||
<button class="btn waves-effect" style="width:120px;" onclick="customSound(1)">Custom 1</button><span
|
||||
id="c1-file"></span><br>
|
||||
<button class="btn waves-effect" style="width:120px;" onclick="customSound(2)">Custom 2</button><span
|
||||
id="c2-file"></span><br>
|
||||
<button class="btn waves-effect" style="width:120px;" onclick="customSound(3)">Custom 3</button><span
|
||||
id="c3-file"></span><br>
|
||||
<button class="btn waves-effect" style="width:120px;" onclick="customSound(4)">Custom 4</button><span
|
||||
id="c4-file"></span><br>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<div class="collapsible-header">
|
||||
<i class="material-icons">send</i>Предпочитания за публикуване
|
||||
</div>
|
||||
<div class="collapsible-body">
|
||||
<div id="postView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if="item.text.desc">
|
||||
<span v-html="item.text.desc"></span><br>
|
||||
</template>
|
||||
<template v-if="item.checkbox">
|
||||
<template v-for="(check, j) in item.text.checkbox">
|
||||
<template v-if="!check.kirishima || (check.kirishima && kirishima)">
|
||||
<label><input class="with-gap" v-on:click="complete(i,check.value)"
|
||||
v-model="item.setValue" type="radio" v-bind:id="item.id+check.value"
|
||||
v-bind:value="check.value" />
|
||||
<span>{{check.text}}</span></label>
|
||||
<span v-if="check.kirishimaText">{{check.kirishimaText}}</span>
|
||||
</template>
|
||||
</template>
|
||||
</template>
|
||||
<template v-else>
|
||||
<template v-if="item.doubleText">
|
||||
<template v-for="(textbox, j) in item.data">
|
||||
<input type="text" v-model="textbox.setValue" type="radio" v-bind:id="textbox.id"
|
||||
v-bind:style="{ width: textbox.width+'px'}" />{{textbox.text.after}}
|
||||
</template>
|
||||
</template>
|
||||
<template v-else>
|
||||
<input type="text" v-model="item.setValue" type="radio" v-bind:id="item.id"
|
||||
v-bind:style="{ width: item.width+'px'}" />{{item.text.after}}
|
||||
</template>
|
||||
<button class="btn waves-effect" style="width:100px;"
|
||||
v-on:click="complete(i)">Промяна</button>
|
||||
</template><br>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<div class="collapsible-header">
|
||||
<i class="material-icons">keyboard</i>Keyboard shortcut Preferences
|
||||
</div>
|
||||
<div class="collapsible-body">
|
||||
<h5>Easy inserter</h5>
|
||||
Можете да вмъкнете всякакви букви и емотикони само с 3 клавиша<br>
|
||||
Ctrl+Shift+1:<input type="text" style="width:150px" id="oks-1">
|
||||
<button onclick="oks(1)" class="btn waves-effect" style="width:100px;">Запази</button><br><br>
|
||||
Ctrl+Shift+2:<input type="text" style="width:150px" id="oks-2">
|
||||
<button onclick="oks(2)" class="btn waves-effect" style="width:100px;">Запази</button><br><br>
|
||||
Ctrl+Shift+3:<input type="text" style="width:150px" id="oks-3">
|
||||
<button onclick="oks(3)" class="btn waves-effect" style="width:100px;">Запази</button><br><br>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<div class="collapsible-header">
|
||||
<i class="material-icons">bookmark</i>Mute & Emphasis Preferences
|
||||
</div>
|
||||
<div class="collapsible-body">
|
||||
<h5>Client Mute</h5>
|
||||
<div id="mute-cli"></div>
|
||||
<h5>Client Emphasis</h5>
|
||||
Click client name on toots to toggle mute and emphasis.
|
||||
<h5>Words Mute</h5>
|
||||
Enter to set<br>
|
||||
<div class="chips" id="wordmute" style="background-color:gray;"></div>
|
||||
<button onclick="wordmuteSave()" class="btn waves-effect" style="width:100px;">Запази</button>
|
||||
<h5>Words Emphasis</h5>
|
||||
Enter to set<br>
|
||||
<div class="chips" id="wordemp" style="background-color:gray;"></div>
|
||||
<button onclick="wordempSave()" class="btn waves-effect" style="width:100px;">Запази</button>
|
||||
<h5>Users Emphasis</h5>
|
||||
Set on users data modals.
|
||||
<span class="emphasized"> Use this color to emphasis </span>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<div class="collapsible-header">
|
||||
<i class="fa fa-spotify"></i>Spotify and NowPlaying Preferences
|
||||
</div>
|
||||
<div class="collapsible-body">
|
||||
<h5>NowPlaying Provider(Windows)</h5>
|
||||
macOS и Linux не се поддържат. AIMP и iTunes бяха проверени от разработчика. <br>CAD:foobar2000, MusicBee,J. River Media Center, Media Jukebox<br>WLM:Last.fm Client, TTPlayer, OpenPandora, Zune.<br> For foobar2000, <a href="http://poiru.github.com/foo-cad/">foo_cad plugin</a>. И MusicBee изисква CAD.<br>
|
||||
<label>
|
||||
<input class="with-gap" onchange="npprovider()" name="npp" type="radio" id="aimp" value="AIMP" />
|
||||
<span>AIMP</span>
|
||||
</label>
|
||||
<label>
|
||||
<input class="with-gap" onchange="npprovider()" name="npp" type="radio" id="itunes"
|
||||
value="ITUNES" />
|
||||
<span>iTunes</span>
|
||||
</label>
|
||||
<label>
|
||||
<input class="with-gap" onchange="npprovider()" name="npp" type="radio" id="npmm"
|
||||
value="MEDIAMONKEY" />
|
||||
<span>MediaMonkey</span>
|
||||
</label>
|
||||
<label>
|
||||
<input class="with-gap" onchange="npprovider()" name="npp" type="radio" id="winamp"
|
||||
value="WINAMP" />
|
||||
<span>Winamp</span>
|
||||
</label>
|
||||
<label>
|
||||
<input class="with-gap" onchange="npprovider()" name="npp" type="radio" id="wmp" value="WMP" />
|
||||
<span>WMP</span>
|
||||
</label>
|
||||
<label>
|
||||
<input class="with-gap" onchange="npprovider()" name="npp" type="radio" id="wlm" value="WLM" />
|
||||
<span>WLM</span>
|
||||
</label>
|
||||
<label>
|
||||
<input class="with-gap" onchange="npprovider()" name="npp" type="radio" id="cad" value="CAD" />
|
||||
<span>CAD</span>
|
||||
</label>
|
||||
<br><br>
|
||||
Click <i class="material-icons" style="font-size:24px;">music_note</i>icon to NowPlaying<br>
|
||||
<h5>Account Connection</h5>
|
||||
TheDesk save your data on thedesk.top server.<br>
|
||||
<div id="spotify-code-show" class="hide"><input type="text" id="spotify-code"><button
|
||||
onclick="spotifyAuth()" class="btn waves-effect" style="width:100px;">Запази</button></div>
|
||||
<a onclick="spotifyConnect()" class="btn waves-effect nex"
|
||||
style="width:100%; max-width:200px; background-color:#1ed760;" id="spotify-enable"><i
|
||||
class="fa fa-spotify left"></i>Connect</a>
|
||||
<a onclick="spotifyDisconnect()" class="btn waves-effect nex disabled"
|
||||
style="width:100%; max-width:200px; background-color:#1ed760;" id="spotify-disable"><i
|
||||
class="fa fa-spotify left"></i>Disconnect</a>
|
||||
<h5>@@templateedit@@</h5>
|
||||
@@templateeditwarn@@<br>
|
||||
<textarea id="np-temp" class="materialize-textarea" data-length="500">#NowPlaying {song} / {album} / {artist}
|
||||
{url}</textarea><br>
|
||||
@@template1@@<br>
|
||||
@@template2@@<br>
|
||||
@@template3@@<br>
|
||||
<button onclick="spotifySave()" class="btn waves-effect" style="width:100px;">Запази</button>
|
||||
<h5>Attach an Artwork of Spotify</h5>
|
||||
<label>
|
||||
<input class="with-gap" onchange="spotifyFlagSave()" name="awk" type="radio" id="awk_yes"
|
||||
value="yes" />
|
||||
<span>Да</span>
|
||||
</label>
|
||||
<label>
|
||||
<input class="with-gap" onchange="spotifyFlagSave()" name="awk" type="radio" id="awk_no"
|
||||
value="no" />
|
||||
<span>Не</span>
|
||||
</label>
|
||||
|
||||
<br>
|
||||
</div>
|
||||
</li>
|
||||
<li>
|
||||
<div class="collapsible-header">
|
||||
<i class="material-icons">hearing</i>TTS(text to speech) Preferences
|
||||
</div>
|
||||
<div class="collapsible-body">
|
||||
<h5>Speed</h5>
|
||||
1-100(default:10)<br>
|
||||
<p class="range-field"><input type="range" id="voicespeed" min="1" max="100" value="10"
|
||||
style="width:500px; max-width:100%" /></p>
|
||||
<h5>Pitch</h5>
|
||||
0-100(default:50)<br>
|
||||
<p class="range-field"><input type="range" id="voicepitch" min="0" max="100" value="50"
|
||||
style="width:500px; max-width:100%" /></p>
|
||||
<h5>Volume</h5>
|
||||
0-100(default:100)<br>
|
||||
<p class="range-field"><input type="range" id="voicevol" min="0" max="100" value="100"
|
||||
style="width:500px; max-width:100%" /></p>
|
||||
<h5>Test</h5>
|
||||
<input type="text" style="width:350px" id="voicetxt" value="TheDesk is an open-source Mastodon client for PC.">
|
||||
<button class="btn waves-effect blue" style="width:150px;" onclick="voicePlay()"
|
||||
id="testplay">Play/Stop</button><br>
|
||||
<br>
|
||||
<button class="btn waves-effect" style="width:100px;" onclick="voiceSettings()">Запази</button>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
<br>
|
||||
<a href="index.html" class="btn waves-effect orange nex" style="width:100%; max-width:200px;"><i
|
||||
class="material-icons left">undo</i>Back</a>
|
||||
<br>
|
||||
<br>Keyboard shortcuts
|
||||
<li>Ctrl+1-9:Jump to n(1-9)th column</li>
|
||||
<li>N:Open toot box</li>
|
||||
<li>X:Toggle toot box</li>
|
||||
<li>Ctrl+Enter:Post</li>
|
||||
<li>Ctrl+Enter+Shift:Post(secondary toot)</li>
|
||||
<li>Alt+Enter:Secondary Toot Button</li>
|
||||
<li>Ctrl+E:Make all notifications read</li>
|
||||
<li>Ctrl+U:@@keyselecttop@@</li>
|
||||
<li>Esc:Hide toot box</li>
|
||||
<li>F5:Super Reload</li>
|
||||
<li>Ctrl+Shift+C:Clear toot box</li>
|
||||
<li>Ctrl+Shift+S:Предпочитания</li>
|
||||
<li>Ctrl+Shift+M:Account Manager</li>
|
||||
<li>Ctrl+Shift+N:NowPlaying(Spotify)</li>
|
||||
<li>Ctrl+Shift+P:Show profile of selecting</li>
|
||||
<li>←/→:Show next or previous image</li>
|
||||
<li>Mousewheel:Zoom a image</li>
|
||||
<div class="hide kirishima">
|
||||
以下Markdownに対応したインスタンスのみ。
|
||||
<br>
|
||||
<li>Ctrl+B/I/S/U:太字/斜字/取り消し/下線</li>
|
||||
以下アスタルテにログインしている場合のみ
|
||||
<br>
|
||||
<li>Ctrl+R:
|
||||
<a href="https://astarte.thedesk.top">アスタルテ暇人ランキング</a>を開く
|
||||
</li><br>
|
||||
@@whenSelected@@
|
||||
<li>F:@@fav@@</li>
|
||||
<li>B:@@bt@@</li>
|
||||
<li>R:@@reply@@</li>
|
||||
</div>
|
||||
<button class="btn waves-effect red" style="width:100%; max-width:500px;"
|
||||
onclick="if(confirm('Изтриване на всички данни. Не можете да го отмените. Продължaвате?')){ localStorage.clear(); location.href='index.html'; }"><i
|
||||
class="material-icons left">delete</i>Reset(Danger)</button><br><br>
|
||||
<button class="btn waves-effect indigo" onclick="about()" style="width:100%; max-width:500px;"><i
|
||||
class="material-icons left">info</i>About TheDesk</button>
|
||||
<a href="https://thedesk.top" class="btn waves-effect deep-purple lighten-2" style="width:100%; max-width:500px;"><i
|
||||
class="material-icons left">web</i>Website</a>
|
||||
<a href="https://www.pixiv.net/fanbox/creator/28105985" class="btn waves-effect red lighten-2"
|
||||
style="width:100%; max-width:500px;"><i class="material-icons left">trending_up</i>Поддръжка(Pixiv FANBOX)</a>
|
||||
<a href="https://www.patreon.com/cutls" class="btn waves-effect red darken-2"
|
||||
style="width:100%; max-width:500px;"><i class="material-icons left">trending_up</i>Поддръжка(Patreon)</a>
|
||||
<a href="https://docs.thedesk.top" class="btn waves-effect blue darken-2" style="width:100%; max-width:500px;"><i
|
||||
class="material-icons left">list</i>Help/Docs(Constructing)</a>
|
||||
<a href="https://github.com/cutls/TheDesk" class="btn waves-effect black lighten-2"
|
||||
style="width:100%; max-width:500px;"><i class="fa fa-github left"></i>GitHub</a>
|
||||
<a href="index.html?mode=user&code=Cutls@cutls.com" class="btn waves-effect blue lighten-2"
|
||||
style="width:100%; max-width:500px;"><img src="../../img/desk_full.svg" class="left" width="25"
|
||||
style="padding-top:5px;">Developer: Cutls@cutls.com</a>
|
||||
<br>
|
||||
Kyash<br>
|
||||
<img src="../../img/kyash.png" width="100"><br>
|
||||
<a onclick="localStorage.removeItem('new-ver-skip'); location.href='index.html';"
|
||||
class="pointer">Check update</a><br>
|
||||
<a href="oss.html">OSS License</a><br>
|
||||
<span style="font-family:Open Sans;">Copyright © TheDesk 2018
|
||||
Under <a href="https://github.com/cutls/TheDesk/blob/master/LICENSE">GNU General Public License v3.0</a> and <a
|
||||
href="https://thedesk.top/tos.html">Terms of Use</a>/<a href="https://thedesk.top/priv.html">Privacy
|
||||
Policy</a>
|
||||
<br>Developer: Cutls P(
|
||||
<a href="index.html?mode=user&code=Cutls@cutls.com">@Cutls@cutls.com</a>)
|
||||
<br>
|
||||
</span><br>
|
||||
TheDeskおよびCutls Pは<a href="https://donken.org/">被災地支援のためのマストドン研究会</a>をログイン機能提供等の形で応援しています。<br>
|
||||
タグタイムラインを開く:<a href="index.html?mode=tag&code=被災地支援のためのマストドン研究会">#被災地支援のためのマストドン研究会</a><br>
|
||||
<script type="text/javascript" src="../../js/common/modal.js"></script>
|
||||
<script type="text/javascript" src="../../js/common/about.js"></script>
|
||||
<script type="text/javascript" src="../../js/platform/end.js"></script>
|
||||
<script type="text/javascript" src="../../js/login/logout.js"></script>
|
||||
<script type="text/javascript" src="../../js/ui/spotify.js"></script>
|
||||
<script type="text/javascript" src="../../js/tl/speech.js"></script>
|
||||
<script type="text/javascript" src="../../js/platform/pickr.js"></script>
|
||||
<script type="text/javascript" src="../../js/ui/settings.js"></script>
|
||||
<script type="text/javascript" src="../../js/ui/theme.js"></script>
|
||||
<script type="text/javascript" src="../../js/tl/date.js"></script>
|
552
app/view/bg/setting.vue.js
Normal file
552
app/view/bg/setting.vue.js
Normal file
@@ -0,0 +1,552 @@
|
||||
var yesno = [
|
||||
{
|
||||
text: "Да",
|
||||
value: "yes"
|
||||
}, {
|
||||
text: "Не",
|
||||
value: "no"
|
||||
}
|
||||
];
|
||||
var sound = [
|
||||
{
|
||||
text: "Няма",
|
||||
value: "none"
|
||||
}, {
|
||||
text: "По подразбиране",
|
||||
value: "default"
|
||||
}, {
|
||||
text: "Custom 1",
|
||||
value: "c1"
|
||||
}, {
|
||||
text: "Custom 2",
|
||||
value: "c2"
|
||||
}, {
|
||||
text: "Custom 3",
|
||||
value: "c3"
|
||||
}, {
|
||||
text: "Custom 4",
|
||||
value: "c4"
|
||||
}
|
||||
];
|
||||
var envConstruction = [
|
||||
{
|
||||
id: "popup",
|
||||
storage: "popup",
|
||||
checkbox: false,
|
||||
doubleText: false,
|
||||
setValue: 0,
|
||||
width: 50,
|
||||
text: {
|
||||
head: "Известие с изскачащ прозорец (за Windows)",
|
||||
desc: 'Скрито ако е зададено на „0“',
|
||||
after: "сек"
|
||||
}
|
||||
}, {
|
||||
id: "notf",
|
||||
storage: "nativenotf",
|
||||
checkbox: true,
|
||||
setValue: "yes",
|
||||
text: {
|
||||
head: "Вътрешно уведомяване",
|
||||
desc: "Това не работи в Windows Portable вер.",
|
||||
checkbox: yesno
|
||||
}
|
||||
}, {
|
||||
id: "width",
|
||||
storage: "width",
|
||||
checkbox: false,
|
||||
doubleText: false,
|
||||
width: 50,
|
||||
setValue: 300,
|
||||
text: {
|
||||
head: "Минимална ширина на колоните",
|
||||
desc: "Лентата за превъртане ще се покаже, когато размерът на прозореца е по-голям от размера на колони.",
|
||||
after: "px над"
|
||||
}
|
||||
}, {
|
||||
id: "fixwidth",
|
||||
storage: "fixwidth",
|
||||
checkbox: false,
|
||||
doubleText: false,
|
||||
setValue: 300,
|
||||
width: 50,
|
||||
text: {
|
||||
head: "Минимална ширина на браузъра TweetDeck",
|
||||
desc: "",
|
||||
after: "px над"
|
||||
}
|
||||
}, {
|
||||
id: "size",
|
||||
storage: "size",
|
||||
checkbox: false,
|
||||
doubleText: false,
|
||||
width: 50,
|
||||
setValue: 13,
|
||||
text: {
|
||||
head: "Размер на шрифта",
|
||||
desc: '<span style="font-size:13px">13px(абсолютна стойност)</span>',
|
||||
after: "px"
|
||||
}
|
||||
}, {
|
||||
id: "ha",
|
||||
storage: "ha",
|
||||
checkbox: true,
|
||||
setValue: false,
|
||||
text: {
|
||||
head: "Деактивиране на хардуерното ускорение",
|
||||
desc: "Автоматичното рестартиране",
|
||||
checkbox: [
|
||||
{
|
||||
text: "Да",
|
||||
value: "true"
|
||||
}, {
|
||||
text: "Не",
|
||||
value: "false"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
];
|
||||
var tlConstruction = [
|
||||
{
|
||||
id: "time",
|
||||
storage: "datetype",
|
||||
checkbox: true,
|
||||
setValue: "absolute",
|
||||
text: {
|
||||
head: "Времеви формат",
|
||||
desc: 'Относителен формат: „преди 1 минута“, „преди 3 дни“<br>Абсолютен формат:"23:25:21","2017/12/30 23:59:00"<br>Смесен формат: някои от раздумките са с относителен-формат, други са с абсолютен формат.',
|
||||
checkbox: [
|
||||
{
|
||||
text: "Относителен",
|
||||
value: "relative"
|
||||
}, {
|
||||
text: "Абсолютен",
|
||||
value: "absolute"
|
||||
}, {
|
||||
text: "Относителен и абсолютен",
|
||||
value: "double"
|
||||
}, {
|
||||
text: "Смесено",
|
||||
value: "medium"
|
||||
}
|
||||
|
||||
]
|
||||
}
|
||||
}, {
|
||||
id: "ul",
|
||||
storage: "locale",
|
||||
checkbox: true,
|
||||
setValue: "yes",
|
||||
text: {
|
||||
head: "Уникално място на Сървърите",
|
||||
desc: "Тази стойност е налична за някои Японски сървъри",
|
||||
checkbox: yesno
|
||||
}
|
||||
}, {
|
||||
id: "nsfw",
|
||||
storage: "nsfw",
|
||||
checkbox: true,
|
||||
setValue: "yes",
|
||||
text: {
|
||||
head: "Скриване на NSFW снимки",
|
||||
desc: "Силен ефект на размазване",
|
||||
checkbox: yesno
|
||||
}
|
||||
}, {
|
||||
id: "cw",
|
||||
storage: "cw",
|
||||
checkbox: true,
|
||||
setValue: "yes",
|
||||
text: {
|
||||
head: "Скриване на CW съдържание",
|
||||
desc: "",
|
||||
checkbox: yesno
|
||||
}
|
||||
}, {
|
||||
id: "rp",
|
||||
storage: "replyct",
|
||||
checkbox: true,
|
||||
setValue: "hidden",
|
||||
text: {
|
||||
head: "Стил на брояча на отговори",
|
||||
desc: "",
|
||||
checkbox: [
|
||||
{
|
||||
text: "Показване на 1+, ако отговорите са повече от 1.",
|
||||
value: "hidden"
|
||||
}, {
|
||||
text: "Показване на 1+, ако отговорите са повече от 1.",
|
||||
value: "all"
|
||||
}
|
||||
|
||||
]
|
||||
}
|
||||
}, {
|
||||
id: "gif",
|
||||
storage: "gif",
|
||||
checkbox: true,
|
||||
setValue: "yes",
|
||||
text: {
|
||||
head: "Анимация на анимирани GIF изображения",
|
||||
desc: "",
|
||||
checkbox: yesno
|
||||
}
|
||||
}, {
|
||||
id: "tag",
|
||||
storage: "tag-range",
|
||||
checkbox: true,
|
||||
setValue: "local",
|
||||
text: {
|
||||
head: "Tag в TL търсене",
|
||||
desc: "",
|
||||
checkbox: [
|
||||
{
|
||||
text: "Използване в обединената мрежа",
|
||||
value: "all"
|
||||
}, {
|
||||
text: "Използване в локалната мрежа",
|
||||
value: "local"
|
||||
}
|
||||
|
||||
]
|
||||
}
|
||||
}, {
|
||||
id: "via",
|
||||
storage: "viashow",
|
||||
checkbox: true,
|
||||
setValue: "no",
|
||||
text: {
|
||||
head: "С показване",
|
||||
desc: "",
|
||||
checkbox: yesno
|
||||
}
|
||||
}, {
|
||||
id: "mov",
|
||||
storage: "mouseover",
|
||||
checkbox: true,
|
||||
setValue: "no",
|
||||
text: {
|
||||
head: "Hide action buttons without mouseover",
|
||||
desc: "You may feel 'mouseover' is unconfortable:(",
|
||||
checkbox: [
|
||||
{
|
||||
text: "Mouseover to show",
|
||||
value: "yes"
|
||||
}, {
|
||||
text: "Click to show",
|
||||
value: "click"
|
||||
}, {
|
||||
text: "Не",
|
||||
value: "no"
|
||||
}
|
||||
|
||||
]
|
||||
}
|
||||
}, {
|
||||
id: "notfm",
|
||||
storage: "setasread",
|
||||
checkbox: true,
|
||||
setValue: "yes",
|
||||
text: {
|
||||
head: "Show Notification marker, red colored bell and counter(if you show a notification column.)",
|
||||
desc: "",
|
||||
checkbox: yesno
|
||||
}
|
||||
}, {
|
||||
checkbox: false,
|
||||
doubleText: true,
|
||||
data: [
|
||||
{
|
||||
id: "sentence",
|
||||
storage: "sentence",
|
||||
width: 50,
|
||||
setValue: 500,
|
||||
text: { after: "lines над or" }
|
||||
}, {
|
||||
id: "letters",
|
||||
storage: "letters",
|
||||
width: 50,
|
||||
setValue: 7000,
|
||||
text: { after: "букви над" }
|
||||
}
|
||||
],
|
||||
text: {
|
||||
head: "Auto folding",
|
||||
desc: "TheDesk does not collapse totes of 5 characters or less. Also, when collapsing, newlines are not shown. TheDesk count only newlines as the number of lines.",
|
||||
}
|
||||
}, {
|
||||
id: "img-height",
|
||||
storage: "img-height",
|
||||
checkbox: false,
|
||||
doubleText: false,
|
||||
width: 80,
|
||||
setValue: 200,
|
||||
text: {
|
||||
head: "Height of images",
|
||||
desc: 'Option:Set "full" to uncrop.',
|
||||
after: "px"
|
||||
}
|
||||
}, {
|
||||
id: "ticker",
|
||||
storage: "ticker_ok",
|
||||
checkbox: true,
|
||||
setValue: "no",
|
||||
text: {
|
||||
head: "Enable #InstanceTicker",
|
||||
desc: 'Show colorful stickers about the server. <a href="https://cdn.weep.me/mastodon/">About #InstanceTicker</a> Copyright 2018 weepjp, kyori19.',
|
||||
checkbox: yesno
|
||||
}
|
||||
}, {
|
||||
id: "anime",
|
||||
storage: "animation",
|
||||
checkbox: true,
|
||||
setValue: "yes",
|
||||
text: {
|
||||
head: "Анимация на времевата линия",
|
||||
desc: "",
|
||||
checkbox: yesno
|
||||
}
|
||||
}, {
|
||||
id: "replySound",
|
||||
storage: "replySound",
|
||||
checkbox: true,
|
||||
setValue: "none",
|
||||
text: {
|
||||
head: "Звук (Отговор)",
|
||||
desc: "",
|
||||
checkbox: sound
|
||||
}
|
||||
}, {
|
||||
id: "favSound",
|
||||
storage: "favSound",
|
||||
checkbox: true,
|
||||
setValue: "none",
|
||||
text: {
|
||||
head: "Звук(Фаворит)",
|
||||
desc: "",
|
||||
checkbox: sound
|
||||
}
|
||||
}, {
|
||||
id: "btSound",
|
||||
storage: "btSound",
|
||||
checkbox: true,
|
||||
setValue: "none",
|
||||
text: {
|
||||
head: "Звук(Подсилване)",
|
||||
desc: "",
|
||||
checkbox: sound
|
||||
}
|
||||
}, {
|
||||
id: "followSound",
|
||||
storage: "followSound",
|
||||
checkbox: true,
|
||||
setValue: "none",
|
||||
text: {
|
||||
head: "Звук(Харесване)",
|
||||
desc: "",
|
||||
checkbox: sound
|
||||
}
|
||||
}
|
||||
];
|
||||
var postConstruction = [
|
||||
{
|
||||
id: "cw-text",
|
||||
storage: "cw-text",
|
||||
checkbox: false,
|
||||
doubleText: false,
|
||||
width: 150,
|
||||
setValue: "",
|
||||
text: {
|
||||
head: "Текст за предупреждение по подразбиране",
|
||||
desc: "",
|
||||
after: ""
|
||||
}
|
||||
}, {
|
||||
checkbox: false,
|
||||
doubleText: true,
|
||||
data: [
|
||||
{
|
||||
id: "cw_sentence",
|
||||
storage: "cw_sentence",
|
||||
width: 50,
|
||||
setValue: 500,
|
||||
text: { after: "lines над or" }
|
||||
}, {
|
||||
id: "cw_letters",
|
||||
storage: "cw_letters",
|
||||
width: 50,
|
||||
setValue: 7000,
|
||||
text: { after: "букви над" }
|
||||
}
|
||||
],
|
||||
text: {
|
||||
head: "Предупреждение преди публикуване на дълга раздумка.",
|
||||
desc: "Показване на диалогов прозорец, когато правите твърде дълъг скрит текст.",
|
||||
}
|
||||
}, {
|
||||
id: "cws",
|
||||
storage: "always-cw",
|
||||
checkbox: true,
|
||||
setValue: "no",
|
||||
text: {
|
||||
head: "Винаги да е зададено CW",
|
||||
desc: "",
|
||||
checkbox: yesno
|
||||
}
|
||||
}, {
|
||||
id: "vis",
|
||||
storage: "vis",
|
||||
checkbox: true,
|
||||
setValue: "public",
|
||||
text: {
|
||||
head: "Видимост по подразбиране",
|
||||
desc: "",
|
||||
checkbox: [
|
||||
{
|
||||
text: "Публично",
|
||||
value: "public"
|
||||
}, {
|
||||
text: "Скрито",
|
||||
value: "unlisted"
|
||||
}, {
|
||||
text: "Частно",
|
||||
value: "private"
|
||||
}, {
|
||||
text: "Директно",
|
||||
value: "direct"
|
||||
}, {
|
||||
text: "Памет(запомнено на всеки сървър)",
|
||||
value: "memory"
|
||||
}, {
|
||||
text: "Видимост по подразбиране (Зададени от предпочитанията в Mastodon сървъра)",
|
||||
value: "useapi"
|
||||
}
|
||||
]
|
||||
}
|
||||
}, {
|
||||
id: "img",
|
||||
storage: "img",
|
||||
checkbox: true,
|
||||
setValue: "no-act",
|
||||
text: {
|
||||
head: "Предпочитания за публикуване на изображения",
|
||||
desc: "",
|
||||
checkbox: [
|
||||
{
|
||||
text: "Вмъкване на URL адрес на медия",
|
||||
value: "url"
|
||||
}, {
|
||||
text: "Без вмъкване",
|
||||
value: "no-act"
|
||||
}
|
||||
]
|
||||
}
|
||||
}, {
|
||||
id: "box",
|
||||
storage: "box",
|
||||
checkbox: true,
|
||||
setValue: "yes",
|
||||
text: {
|
||||
head: "Действие на кутията за публикации",
|
||||
desc: "",
|
||||
checkbox: [
|
||||
{
|
||||
text: "Прибрана",
|
||||
value: "yes"
|
||||
}, {
|
||||
text: "Отворена и след публикуване",
|
||||
value: "no"
|
||||
}, {
|
||||
text: "Постоянно отворена",
|
||||
value: "absolute"
|
||||
}
|
||||
]
|
||||
}
|
||||
}, {
|
||||
id: "quote",
|
||||
storage: "quote",
|
||||
checkbox: true,
|
||||
setValue: "nothing",
|
||||
text: {
|
||||
head: "Quote format",
|
||||
desc: "",
|
||||
checkbox: [
|
||||
{
|
||||
text: "Only URL",
|
||||
value: "simple"
|
||||
}, {
|
||||
text: "URL and acct(mention to the user)",
|
||||
value: "mention"
|
||||
}, {
|
||||
text: "URL, text and acct(mention to the user)",
|
||||
value: "full"
|
||||
}, {
|
||||
text: "Disabled(Hide buttons on TLs)",
|
||||
value: "nothing"
|
||||
}
|
||||
]
|
||||
}
|
||||
}, {
|
||||
id: "main",
|
||||
storage: "mainuse",
|
||||
checkbox: true,
|
||||
setValue: "remain",
|
||||
text: {
|
||||
head: "Default accounts of actions",
|
||||
desc: "Main account can be set on Account Manager.",
|
||||
checkbox: [
|
||||
{
|
||||
text: "Account you used recently",
|
||||
value: "remain"
|
||||
}, {
|
||||
text: "Main account",
|
||||
value: "main"
|
||||
}
|
||||
]
|
||||
}
|
||||
}, {
|
||||
id: "sec",
|
||||
storage: "sec",
|
||||
checkbox: true,
|
||||
setValue: "public",
|
||||
text: {
|
||||
head: "Secondary Toot Button",
|
||||
desc: "",
|
||||
checkbox: [
|
||||
{
|
||||
text: "Hidden",
|
||||
value: "nothing"
|
||||
}, {
|
||||
text: "Публично",
|
||||
value: "public"
|
||||
}, {
|
||||
text: "Скрито",
|
||||
value: "unlisted"
|
||||
}, {
|
||||
text: "Частно",
|
||||
value: "private"
|
||||
}, {
|
||||
text: "Директно",
|
||||
value: "direct"
|
||||
}, {
|
||||
text: "Local Only",
|
||||
value: "local",
|
||||
kirishima: true,
|
||||
kirishimaText: "非対応インスタンスでは「未収載」になります。"
|
||||
}
|
||||
]
|
||||
}
|
||||
}, {
|
||||
id: "zero",
|
||||
storage: "emoji-zero-width",
|
||||
checkbox: true,
|
||||
setValue: "normal",
|
||||
setValue: "no",
|
||||
text: {
|
||||
head: "Zero-width space when inserting emojis",
|
||||
desc: "",
|
||||
checkbox: yesno
|
||||
}
|
||||
}
|
||||
]
|
255
app/view/bg/update.html
Normal file
255
app/view/bg/update.html
Normal file
@@ -0,0 +1,255 @@
|
||||
<!doctype html>
|
||||
<html lang="bg">
|
||||
|
||||
<head>
|
||||
<title>Update - TheDesk</title>
|
||||
<link href="../../node_modules/materialize-css/dist/css/materialize.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/master.css" type="text/css" rel="stylesheet">
|
||||
<link href="https://fonts.googleapis.com/icon?family=Material+Icons|Open+Sans:300" rel="stylesheet">
|
||||
<meta charset="utf-8">
|
||||
<!--
|
||||
<script type="text/javascript">
|
||||
var _jipt = [];
|
||||
_jipt.push(['project', 'thedesk']);
|
||||
</script>
|
||||
<script type="text/javascript" src="https://cdn.crowdin.com/jipt/jipt.js"></script>
|
||||
-->
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<style>
|
||||
body {
|
||||
font-family: 'Open Sans';
|
||||
-webkit-app-region: drag;
|
||||
cursor: move;
|
||||
padding: 10px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
#start {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 100vw;
|
||||
height: calc(100vh - 2.5rem);
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#checkbox {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
a,
|
||||
button,
|
||||
input,
|
||||
label,
|
||||
i {
|
||||
-webkit-app-region: no-drag;
|
||||
}
|
||||
|
||||
#updskip {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.skipbtn {
|
||||
display: block;
|
||||
float: left;
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
border: 1px solid;
|
||||
margin-left: 5px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
border: 1px solid;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.skipbtn:hover {
|
||||
background-color: #b3e5fc;
|
||||
transition: all 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
#prog {
|
||||
font-size: 200%;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript" src="../../node_modules/jquery/dist/jquery.js"></script>
|
||||
<script type="text/javascript" src="../../js/platform/first.js"></script>
|
||||
<script type="text/javascript" src="../../node_modules/materialize-css/dist/js/materialize.js"></script>
|
||||
<i class="material-icons pointer waves-effect" onclick="about();">info</i>
|
||||
<i class="material-icons pointer waves-effect" onclick="skipper();">clear</i>
|
||||
<!--a href="update.html">Reload</a-->
|
||||
<div id="start">
|
||||
<div id="box" class="show">
|
||||
<h2>TheDesk</h2>
|
||||
<p>Get latest TheDesk</p>
|
||||
<span id="now"></span>→<b id="ver"></b><br>
|
||||
<span id="det"></span><br>
|
||||
<button class="waves-effect btn windows hide" onclick="update('install')"
|
||||
style="margin-left:15px;">Installer ver.</button>
|
||||
<button class="waves-effect btn windows hide" onclick="update('portable')"
|
||||
style="margin-left:15px;">Portable ver.</button>
|
||||
<button class="waves-effect btn linux hide" onclick="update('linux')"
|
||||
style="margin-left:15px;">Start</button>
|
||||
<button class="waves-effect btn mac hide" onclick="update('mac')"
|
||||
style="margin-left:15px;">Start</button>
|
||||
<br>
|
||||
Some problems?<br>Please download on <a href="https://thedesk.top">Oficial HP</a>.
|
||||
</div>
|
||||
<div id="skipper" class="hide">
|
||||
<h4>You may lose a cool experience!</h4>
|
||||
Skip this update<br>
|
||||
<div id="updskip">
|
||||
<a onclick="window.close();" class="pointer skipbtn waves-effect waves-light">
|
||||
<div>Until next TL loading</div>
|
||||
</a>
|
||||
<a onclick="nextv();" class="pointer skipbtn waves-effect waves-light">
|
||||
<div>Until next version</div>
|
||||
</a>
|
||||
</div>
|
||||
<a class="pointer waves-effect" onclick="skipper();" style="margin-top:5px">Continue updating</a>
|
||||
</div>
|
||||
<div id="dlnow" class="hide">
|
||||
<h4>Downloading...</h4>
|
||||
<h4 id="prog"></h4>
|
||||
<div class="progress">
|
||||
<div class="determinate" style="width: 0%"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript" src="../../js/common/about.js"></script>
|
||||
<script type="text/javascript" src="../../js/platform/end.js"></script>
|
||||
<script>
|
||||
function skipper() {
|
||||
$("#dlnow").addClass("hide");
|
||||
$("#box").toggleClass("show");
|
||||
if ($("#box").hasClass("hide") && $("#skipper").hasClass("hide")) {
|
||||
$("#skipper").removeClass("hide");
|
||||
$("#skipper").addClass("show");
|
||||
} else {
|
||||
$("#box").toggleClass("hide");
|
||||
$("#skipper").toggleClass("hide");
|
||||
$("#skipper").toggleClass("show");
|
||||
}
|
||||
}
|
||||
verck();
|
||||
function update(sel) {
|
||||
$("#box").toggleClass("show");
|
||||
$("#box").toggleClass("hide");
|
||||
$("#dlnow").toggleClass("hide");
|
||||
$("#dlnow").toggleClass("show");
|
||||
$("#prog").text("");
|
||||
var bit = localStorage.getItem("bit");
|
||||
var start = "https://thedesk.top/ver.json";
|
||||
fetch(start, {
|
||||
method: 'GET',
|
||||
headers: { 'content-type': 'application/json' },
|
||||
}).then(function (response) {
|
||||
return response.json();
|
||||
}).catch(function (error) {
|
||||
todo(error);
|
||||
console.error(error);
|
||||
}).then(function (json) {
|
||||
if (sel == "install") {
|
||||
if (bit == "x64") {
|
||||
var url = json["winx64"];
|
||||
var file = "TheDesk-setup.exe";
|
||||
} else if (bit == "ia32") {
|
||||
var url = json["winia32"];
|
||||
var file = "TheDesk-setup-ia32.exe";
|
||||
}
|
||||
} else if (sel == "portable") {
|
||||
if (bit == "x64") {
|
||||
var url = json["winx64p"];
|
||||
var file = "TheDesk.exe";
|
||||
} else if (bit == "ia32") {
|
||||
var url = json["winia32p"];
|
||||
var file = "TheDesk-ia32.exe";
|
||||
}
|
||||
} else if (sel == "linux") {
|
||||
if (bit == "x64") {
|
||||
var url = json["linuxx64"];
|
||||
var file = "TheDesk-linux-x64.zip";
|
||||
} else if (bit == "ia32") {
|
||||
var url = json["linuxia64"];
|
||||
var file = "TheDesk-linux-ia32.zip";
|
||||
}
|
||||
} else if (sel == "mac") {
|
||||
var url = json["mac"];
|
||||
shell.openExternal(url);
|
||||
return false;
|
||||
}
|
||||
postMessage(["downloadButton", [url, file]], "*")
|
||||
});
|
||||
|
||||
}
|
||||
function quit() {
|
||||
postMessage(["sendSinmpleIpc", "quit"], "*")
|
||||
}
|
||||
function updateProg(arg) {
|
||||
console.log(arg);
|
||||
$(".determinate").css("width", arg * 100 + "%");
|
||||
$("#prog").text(Math.floor(arg * 100) + "%");
|
||||
}
|
||||
function updateMess(arg) {
|
||||
console.log(arg);
|
||||
$("#prog").text(arg);
|
||||
}
|
||||
function verck() {
|
||||
var platform = localStorage.getItem("platform");
|
||||
var bit = localStorage.getItem("bit");
|
||||
if (platform == "win32") {
|
||||
$('.windows').removeClass("hide")
|
||||
} else if (platform == "linux") {
|
||||
$('.linux').removeClass("hide")
|
||||
} else if (platform == "darwin") {
|
||||
$('.mac').removeClass("hide")
|
||||
}
|
||||
var start = "https://thedesk.top/ver.json";
|
||||
fetch(start, {
|
||||
method: 'GET',
|
||||
headers: { 'content-type': 'application/json' },
|
||||
}).then(function (response) {
|
||||
return response.json();
|
||||
}).catch(function (error) {
|
||||
todo(error);
|
||||
console.error(error);
|
||||
}).then(function (json) {
|
||||
console.log(json);
|
||||
if (platform == "win32") {
|
||||
$("#ver").text(json.desk);
|
||||
localStorage.setItem("next-ver", json.desk);
|
||||
} else if (platform == "linux") {
|
||||
$("#ver").text(json.desk_linux);
|
||||
localStorage.setItem("next-ver", json.desk_linux);
|
||||
} else if (platform == "darwin") {
|
||||
$("#ver").text(json.desk_mac);
|
||||
localStorage.setItem("next-ver", json.desk_mac);
|
||||
}
|
||||
var lang = "bg";
|
||||
if (lang == "ja") {
|
||||
$("#det").html(json.detail);
|
||||
} else {
|
||||
$("#det").html(json.detail_en);
|
||||
}
|
||||
|
||||
$("#now").text(localStorage.getItem("ver"));
|
||||
|
||||
});
|
||||
}
|
||||
function nextv() {
|
||||
localStorage.setItem("new-ver-skip", "true");
|
||||
window.close();
|
||||
}
|
||||
function enc(ver) {
|
||||
var ver = ver.replace(/\s/g, "");
|
||||
var ver = ver.replace(/\(/g, "-");
|
||||
var ver = ver.replace(/\)/g, "");
|
||||
var ver = ver.replace(/\[/g, "_");
|
||||
var ver = ver.replace(/\]/g, "");
|
||||
return ver;
|
||||
}
|
||||
</script>
|
Reference in New Issue
Block a user