Compare commits
21 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
1f597a9d4a | ||
|
5cd72a538c | ||
|
d439169c63 | ||
|
da39e0ded6 | ||
|
823fae5eac | ||
|
4f3a7c47e3 | ||
|
bd8d480e07 | ||
|
a09c031dbe | ||
|
1fee94846d | ||
|
4fb37525d5 | ||
|
8f25557f20 | ||
|
cb47eabed9 | ||
|
f8823a4c5a | ||
|
7fdd5964cc | ||
|
3aadcaef0f | ||
|
edf1a6ec29 | ||
|
f58d4f349b | ||
|
9bb8ec0b66 | ||
|
ec9a14d63b | ||
|
82a00f4d1e | ||
|
af97f88d0a |
@@ -27,6 +27,8 @@ The icon is provided under [Creative Commons BY-NC-SA](https://creativecommons.o
|
||||
* [ico](https://dl.thedesk.top/press/TheDesk.ico)
|
||||
* [icns](https://dl.thedesk.top/press/TheDesk.icns)
|
||||
|
||||
The default sound of notifications is provided [Creative Commons BY](https://creativecommons.org/licenses/by/4.0/)
|
||||
|
||||
## Terms of Use/利用規約
|
||||
|
||||
* [利用規約(Terms of Use(ja))](https://thedesk.top/tos.html)
|
||||
|
@@ -76,7 +76,7 @@ a,button{
|
||||
<img src="./img/desk.png" style="max-width:70%;">
|
||||
<h5>TheDesk</h5>
|
||||
<div class='container'>
|
||||
<div class='area-name1'>External version</div>
|
||||
<div class='area-name1'>Display version</div>
|
||||
<div class='area-data1' id="now"></div>
|
||||
<div class='area-name2'>Internal version</div>
|
||||
<div class='area-data2' id="ver"></div>
|
||||
@@ -87,13 +87,17 @@ a,button{
|
||||
<div class='area-name5'>Node.js</div>
|
||||
<div class='area-data5' id="node"></div>
|
||||
</div>
|
||||
<div class="cp">Copyright © TheDesk 2018 All rights reserved.<br><a href="https://thedesk.top" target="_blank">Web site</a></div>
|
||||
<div class="cp">Copyright © <a href="https://kirishima.cloud/@Cutls" target="_blank">Cutls P</a> 2018 All rights reserved.<br>
|
||||
Thanks:<a href="https://minohdon.jp/@toneji" target="_blank">toneji</a>/<a href="https://popon.pptdn.jp/@popn_ja" target="_blank">popn_ja</a>/<a href="https://pawoo.net/@kPherox" target="_blank">kPherox</a> and all users
|
||||
<img draggable="false" style="width:0.8rem;top: 1px;margin-left: 1px;position: relative;" alt="❤️" title=":heart:" src="https://twemoji.maxcdn.com/2/72x72/2764.png">
|
||||
<br><a href="https://thedesk.top" target="_blank">Web site</a></div>
|
||||
<button onclick="window.close()" class="btn waves-effect indigo" style="width:calc(100% - 10px);"><i class="material-icons left">close</i>Close</button>
|
||||
<script type="text/javascript" src="./js/ui/theme.js"></script>
|
||||
<script>
|
||||
$("#now").text(localStorage.getItem("ver"));
|
||||
var electron = require("electron");
|
||||
var remote=electron.remote;
|
||||
const shell=electron.shell;
|
||||
//JSON.parse(fs.readFileSync(info_path, 'utf8'));
|
||||
console.log(process.versions);
|
||||
$("#node").text(process.version);
|
||||
@@ -104,6 +108,9 @@ a,button{
|
||||
var ver=m[1];
|
||||
$("#ver").text(ver);
|
||||
}
|
||||
|
||||
</script>
|
||||
<script type="text/javascript" src="./js/platform/end.js"></script>
|
||||
$(document).on('click', 'a', e => {
|
||||
var url = $(e.target).attr('href');
|
||||
shell.openExternal(url);
|
||||
return false;
|
||||
});
|
||||
</script>
|
@@ -30,6 +30,8 @@ option {
|
||||
}
|
||||
#mainView {
|
||||
padding: 10px;
|
||||
overflow:scroll;
|
||||
height: auto;
|
||||
}
|
||||
#message {
|
||||
display: none;
|
||||
|
@@ -249,6 +249,29 @@ grid-area: toot;
|
||||
margin:2px;
|
||||
grid-area: side;
|
||||
}
|
||||
|
||||
.quote-renote{
|
||||
display: grid;
|
||||
grid-template-columns: 43px 2fr 1fr;
|
||||
grid-template-areas: 'ricon ruser' 'ricon rtext';
|
||||
border: 1px solid;
|
||||
margin-top: 3px;
|
||||
padding: 1px;
|
||||
border-radius: 3px;
|
||||
}
|
||||
.renote-icon{
|
||||
grid-area: ricon;
|
||||
}
|
||||
.renote-icon img{
|
||||
width:43px;
|
||||
}
|
||||
.renote-user{
|
||||
grid-area: ruser;
|
||||
}
|
||||
.renote-text{
|
||||
grid-area: rtext;
|
||||
}
|
||||
|
||||
.btn-flat{
|
||||
color:var(--color);
|
||||
}
|
||||
|
@@ -190,7 +190,7 @@ function verck(ver) {
|
||||
}
|
||||
}
|
||||
if(show){
|
||||
Materialize.toast(obj.Text+toot+'<span class="sml grey-text">(スライドして消去)</span>', 86400);
|
||||
Materialize.toast(escapeHTML(obj.Text)+toot+'<span class="sml grey-text">(スライドして消去)</span>', 86400);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -211,9 +211,6 @@ function infowebsocket(){
|
||||
console.log(JSON.parse(mess.data));
|
||||
var obj=JSON.parse(mess.data);
|
||||
if(obj.type!="counter"){
|
||||
if(obj.id*1<=localStorage.getItem("last-notice-id")){
|
||||
|
||||
}else{
|
||||
localStorage.setItem("last-notice-id",obj.id)
|
||||
var show=true;
|
||||
if(obj.toot!=""){
|
||||
@@ -242,9 +239,8 @@ function infowebsocket(){
|
||||
}
|
||||
}
|
||||
if(show){
|
||||
Materialize.toast(obj.text+toot+'<span class="sml grey-text">(スライドして消去)</span>', 86400);
|
||||
Materialize.toast(escapeHTML(obj.Text)+toot+'<span class="sml grey-text">(スライドして消去)</span>', 86400);
|
||||
}
|
||||
}
|
||||
}else{
|
||||
$("#persons").text(obj.text);
|
||||
}
|
||||
|
@@ -189,7 +189,7 @@ var lang={
|
||||
"lang_parse_clientmute":"muted",
|
||||
"lang_parse_mute":" will be muted. You can remove on preferences.",
|
||||
"lang_parse_voted":"Voted",
|
||||
"lang_parse_vote":"Voted",
|
||||
"lang_parse_vote":"Vote",
|
||||
"lang_parse_unvoted":"Show the result without voting",
|
||||
"lang_parse_endedvote":"Expired",
|
||||
"lang_parse_thread":"Show thread",
|
||||
|
@@ -364,6 +364,28 @@ function misskeyLogin(url) {
|
||||
"reaction-write",
|
||||
"vote-read",
|
||||
"vote-write"
|
||||
/*
|
||||
"read:account",
|
||||
"write:account",
|
||||
"read:drive",
|
||||
"write:drive",
|
||||
"read:blocks",
|
||||
"write:blocks",
|
||||
"read:favorites",
|
||||
"write:favorites",
|
||||
"read:following",
|
||||
"write:following",
|
||||
"read:messaging",
|
||||
"write:messaging",
|
||||
"read:mutes",
|
||||
"write:mutes",
|
||||
"write:notes",
|
||||
"read:notifications",
|
||||
"write:notifications",
|
||||
"read:reactions",
|
||||
"write:reactions",
|
||||
"write:votes"
|
||||
*/
|
||||
]
|
||||
}));
|
||||
httpreq.onreadystatechange = function() {
|
||||
@@ -520,7 +542,7 @@ function getdata(domain, at) {
|
||||
console.log(json);
|
||||
if (json.error) {
|
||||
console.error("Error:" + json.error);
|
||||
Materialize.toast(lang.lang_fatalerroroccured+"Error:" + json.error,
|
||||
Materialize.toast(lang.lang_fatalerroroccured+"Error:" + escapeHTML(json.error),
|
||||
5000);
|
||||
return;
|
||||
}
|
||||
@@ -795,7 +817,7 @@ input.addEventListener("focus", function() {
|
||||
Object.keys(json.instances).forEach(function(key) {
|
||||
var url = json.instances[key];
|
||||
urls = urls + ' <a onclick="login(\'' + url.name +
|
||||
'\')" class="pointer">' + url.name + '</a> ';
|
||||
'\')" class="pointer">' +escapeHTML(url.name) + '</a> ';
|
||||
});
|
||||
$("#ins-suggest").html(urls);
|
||||
}
|
||||
|
@@ -181,4 +181,21 @@ const {
|
||||
} = require('electron');
|
||||
webviewDom.addEventListener('new-window', function(e) {
|
||||
shell.openExternal(e.url);
|
||||
});
|
||||
});
|
||||
function playSound() {
|
||||
window.AudioContext = window.AudioContext || window.webkitAudioContext;
|
||||
context = new AudioContext();
|
||||
context.createBufferSource().start(0);
|
||||
context.decodeAudioData(request.response, function (buf) {
|
||||
console.log(source)
|
||||
source.buffer = buf;
|
||||
source.loop = false;
|
||||
});
|
||||
source = context.createBufferSource();
|
||||
volumeControl = context.createGain();
|
||||
source.connect(volumeControl);
|
||||
volumeControl.connect(context.destination);
|
||||
volumeControl.gain.value=0.8
|
||||
console.log(volumeControl)
|
||||
source.start(0);
|
||||
}
|
@@ -62,7 +62,7 @@ function formattime(date){
|
||||
}else{
|
||||
str=str+date.getMinutes()
|
||||
}
|
||||
return str;
|
||||
return escapeHTML(str);
|
||||
}
|
||||
function formattimeutc(date){
|
||||
var str=date.getUTCFullYear()+"-";
|
||||
@@ -87,7 +87,7 @@ function formattimeutc(date){
|
||||
}else{
|
||||
str=str+date.getUTCMinutes()
|
||||
}
|
||||
return str;
|
||||
return escapeHTML(str);
|
||||
}
|
||||
var electron = require("electron");
|
||||
var ipc = electron.ipcRenderer;
|
||||
|
@@ -35,7 +35,7 @@ function emojiToggle(reaction) {
|
||||
|
||||
//絵文字リスト挿入
|
||||
function emojiGet(parse, started) {
|
||||
$('#emoji-list').html('Loading...');
|
||||
$('#emoji-list').text('Loading...');
|
||||
var acct_id = $("#post-acct-sel").val();
|
||||
var domain = localStorage.getItem("domain_" + acct_id);
|
||||
if (localStorage.getItem("mode_" + domain) != "misskey") {
|
||||
@@ -52,7 +52,7 @@ function emojiGet(parse, started) {
|
||||
console.error(error);
|
||||
}).then(function (json) {
|
||||
if (parse == "true") {
|
||||
$('#emoji-list').html('Parsing...');
|
||||
$('#emoji-list').text('Parsing...');
|
||||
//絵文字をマストドン公式と同順にソート
|
||||
json.sort(function (a, b) {
|
||||
if (a.shortcode < b.shortcode) return -1;
|
||||
@@ -96,7 +96,7 @@ function emojiGet(parse, started) {
|
||||
})
|
||||
});
|
||||
if (parse == "true") {
|
||||
$('#emoji-list').html('Parsing...');
|
||||
$('#emoji-list').text('Parsing...');
|
||||
//絵文字をマストドン公式と同順にソート
|
||||
md.sort(function (a, b) {
|
||||
if (a.shortcode < b.shortcode) return -1;
|
||||
|
@@ -234,7 +234,7 @@ function voterefresh(acct_id,id){
|
||||
}else{
|
||||
var myvote="";
|
||||
}
|
||||
poll=poll+'<div class="pointer vote" onclick="vote(\''+acct_id+'\',\''+json.id+'\','+choice.id+')">'+choice.text+'('+choice.votes+''+myvote+')</div>';
|
||||
poll=poll+'<div class="pointer vote" onclick="vote(\''+acct_id+'\',\''+json.id+'\','+choice.id+')">'+escapeHTML(choice.text)+'('+choice.votes+''+myvote+')</div>';
|
||||
});
|
||||
$(".vote_"+json.id).html(poll)
|
||||
}
|
||||
|
@@ -298,7 +298,7 @@ function clear() {
|
||||
$("#post-acct-sel").prop("disabled", false);
|
||||
$("#days_poll").val(0);
|
||||
$("#hours_poll").val(0);
|
||||
$("#mins_poll").val(0);
|
||||
$("#mins_poll").val(6);
|
||||
$(".mastodon-choice").map(function() {
|
||||
$(this).val("");
|
||||
});
|
||||
|
@@ -169,7 +169,7 @@ function cgNPs(q){
|
||||
var tags = "";
|
||||
Object.keys(json).forEach(function(key4) {
|
||||
var tag = json[key4];
|
||||
tags = tags + '<a onclick="cgNP(\''+json[key4]+'\')" class="pointer">' + json[key4] + '</a> ';
|
||||
tags = tags + '<a onclick="cgNP(\''+json[key4]+'\')" class="pointer">' + escapeHTML(json[key4]) + '</a> ';
|
||||
});
|
||||
$("#suggest").html("Cinderella NowPlaying:" + tags);
|
||||
}else{
|
||||
|
@@ -63,8 +63,8 @@ function additional(acct_id, tlid) {
|
||||
}).then(function(json) {
|
||||
if (json.title) {
|
||||
$("[toot-id=" + id + "] .additional").html(
|
||||
"<span class=\"gray\">URL"+lang.lang_cards_check+":<br>Title:" + json.title + "<br>" +
|
||||
json.description + "</span>");
|
||||
"<span class=\"gray\">URL"+lang.lang_cards_check+":<br>Title:" + escapeHTML(json.title) + "<br>" +
|
||||
escapeHTML(json.description) + "</span>");
|
||||
$("[toot-id=" + id + "] a:not(.parsed)").addClass("parsed");
|
||||
$("[toot-id=" + id + "]").addClass("parsed");
|
||||
}
|
||||
@@ -148,8 +148,8 @@ function additionalIndv(tlid, acct_id, id) {
|
||||
}).then(function(json) {
|
||||
if (json.title) {
|
||||
$("[toot-id=" + id + "] .additional").html(
|
||||
"<span class=\"gray\">URL"+lang.lang_cards_check+":<br>Title:" + json.title + "<br>" +
|
||||
json.description + "</span>");
|
||||
"<span class=\"gray\">URL"+lang.lang_cards_check+":<br>Title:" + escapeHTML(json.title) + "<br>" +
|
||||
escapeHTML(json.description) + "</span>");
|
||||
$("[toot-id=" + id + "] a:not(.parsed)").addClass("parsed");
|
||||
$("[toot-id=" + id + "]").addClass("parsed");
|
||||
}
|
||||
|
@@ -251,7 +251,7 @@ function dmListParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||
var via = '';
|
||||
viashow="hide";
|
||||
} else {
|
||||
var via = toot.application.name;
|
||||
var via = escapeHTML(toot.application.name);
|
||||
//強調チェック
|
||||
Object.keys(emp).forEach(function(key6) {
|
||||
var cli = emp[key6];
|
||||
@@ -432,7 +432,7 @@ function dmListParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||
if(word){
|
||||
var word=word.tag;
|
||||
var regExp = new RegExp( word, "g" ) ;
|
||||
content=content.replace(regExp,'<span class="emp">'+word+"</span>");
|
||||
content=content.replace(regExp,'<span class="emp">'+escapeHTML(word)+"</span>");
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -483,7 +483,7 @@ function dmListParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||
for( var i=0; i<tickerdata.length; i++) {
|
||||
var value=tickerdata[i];
|
||||
if(value.domain==thisdomain){
|
||||
var tickerdom='<div style="background:linear-gradient(to left,transparent, '+value.bg+' 96%) !important; color:'+value.text+';width:100%; height:0.9rem; font-size:0.8rem;"><img src="'+value.image+'" style="height:100%;"><span style="position:relative; top:-0.2rem;"> '+value.name+'</span></div>';
|
||||
var tickerdom='<div style="background:linear-gradient(to left,transparent, '+value.bg+' 96%) !important; color:'+value.text+';width:100%; height:0.9rem; font-size:0.8rem;"><img src="'+value.image+'" style="height:100%;"><span style="position:relative; top:-0.2rem;"> '+escapeHTML(value.name)+'</span></div>';
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@@ -30,7 +30,7 @@ function list(){
|
||||
var lists = "";
|
||||
Object.keys(json).forEach(function(key) {
|
||||
var list = json[key];
|
||||
lists = lists + list.title+':<a onclick="listShow(\'' + list.id + '\',\'' + list.title + '\',\'' + acct_id +
|
||||
lists = lists + escapeHTML(list.title)+':<a onclick="listShow(\'' + list.id + '\',\'' + escapeHTML(list.title) + '\',\'' + acct_id +
|
||||
'\')" class="pointer">'+lang.lang_list_show+'</a><br>';
|
||||
});
|
||||
$("#lists").html(lists);
|
||||
@@ -57,7 +57,7 @@ function list(){
|
||||
var lists = "";
|
||||
Object.keys(json).forEach(function(key) {
|
||||
var list = json[key];
|
||||
lists = lists + list.title+':<a onclick="listShow(\'' + list.id + '\',\'' + list.title + '\',\'' + acct_id +
|
||||
lists = lists + escapeHTML(list.title)+':<a onclick="listShow(\'' + list.id + '\',\'' + escapeHTML(list.title) + '\',\'' + acct_id +
|
||||
'\')" class="pointer">'+lang.lang_list_show+'</a>/<a onclick="listUser(\'' + list.id + '\',' + acct_id +
|
||||
')" class="pointer">'+lang.lang_list_users+'</a><br>';
|
||||
});
|
||||
@@ -193,7 +193,7 @@ function hisList(user,acct_id){
|
||||
Object.keys(json).forEach(function(key) {
|
||||
var list = json[key];
|
||||
lists = lists + '<a onclick="listRemove(\'' + list.id + '\',\'' + user + '\',\'' + acct_id +
|
||||
'\')" class="pointer">'+list.title+'</a><br> ';
|
||||
'\')" class="pointer">'+escapeHTML(list.title)+'</a><br> ';
|
||||
});
|
||||
$("#his-lists-b").html(lists);
|
||||
}else{
|
||||
@@ -217,7 +217,7 @@ function hisList(user,acct_id){
|
||||
var lists = "";
|
||||
Object.keys(json).forEach(function(key) {
|
||||
var list = json[key];
|
||||
lists = lists + list.title+':<a onclick="listShow(\'' + list.id + '\',\'' + list.title + '\',\'' + acct_id +
|
||||
lists = lists + list.title+':<a onclick="listShow(\'' + list.id + '\',\'' + escapeHTML(list.title) + '\',\'' + acct_id +
|
||||
'\')" class="pointer">'+lang.lang_list_show+'</a>/<a onclick="listAdd(\'' + list.id + '\',\'' + user + '\',\'' + acct_id +
|
||||
'\')" class="pointer">'+lang.lang_list_add+lang.lang_list_add_misskey+'</a><br>';
|
||||
});
|
||||
|
@@ -286,7 +286,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||
}
|
||||
var if_notf='data-notfIndv="'+acct_id+"_"+toot.id+'"';
|
||||
var toot = toot.note;
|
||||
var dis_name=escapeHTMLtemp(toot.user.name);
|
||||
var dis_name=escapeHTML(toot.user.name);
|
||||
}else{
|
||||
var if_notf="";
|
||||
if (toot.renote) {
|
||||
@@ -296,8 +296,10 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||
")<br>";
|
||||
var boostback = "shared";
|
||||
var uniqueid=toot.id;
|
||||
var toot = toot.renote;
|
||||
var dis_name=escapeHTMLtemp(toot.user.name);
|
||||
if(!toot.text){
|
||||
var toot = toot.renote;
|
||||
}
|
||||
var dis_name=escapeHTML(toot.user.name);
|
||||
var uniqueid=toot.id;
|
||||
var actemojick=false
|
||||
} else {
|
||||
@@ -340,7 +342,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||
if(toot.viaMobile){
|
||||
var via = '<span style="font-style: italic;">Mobile</span>';
|
||||
}else{
|
||||
var via = '<span style="font-style: italic;">Unknown</span>';
|
||||
var via = '';
|
||||
}
|
||||
} else {
|
||||
var via = toot.app.name;
|
||||
@@ -360,7 +362,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||
});
|
||||
}
|
||||
if ((toot.cw || toot.cw=="") && cw) {
|
||||
var content = toot.text;
|
||||
var content = escapeHTML(toot.text);
|
||||
var spoil = escapeHTMLtemp(toot.cw);
|
||||
var spoiler = "cw cw_hide_" + toot.id;
|
||||
var api_spoil = "gray";
|
||||
@@ -616,7 +618,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||
for( var i=0; i<tickerdata.length; i++) {
|
||||
var value=tickerdata[i];
|
||||
if(value.domain==thisdomain){
|
||||
var tickerdom='<div style="background:linear-gradient(to left,transparent, '+value.bg+' 96%) !important; color:'+value.text+';width:100%; height:0.9rem; font-size:0.8rem;"><img src="'+value.image+'" style="height:100%;"><span style="position:relative; top:-0.2rem;"> '+value.name+'</span></div>';
|
||||
var tickerdom='<div style="background:linear-gradient(to left,transparent, '+value.bg+' 96%) !important; color:'+value.text+';width:100%; height:0.9rem; font-size:0.8rem;"><img src="'+value.image+'" style="height:100%;"><span style="position:relative; top:-0.2rem;"> '+escapeHTML(value.name)+'</span></div>';
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -632,13 +634,15 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||
}else{
|
||||
var myvote="";
|
||||
}
|
||||
poll=poll+'<div class="pointer vote" onclick="vote(\''+acct_id+'\',\''+toot.id+'\','+choice.id+')">'+choice.text+'('+choice.votes+''+myvote+')</div>';
|
||||
poll=poll+'<div class="pointer vote" onclick="vote(\''+acct_id+'\',\''+toot.id+'\','+choice.id+')">'+escapeHTML(choice.text)+'('+choice.votes+''+myvote+')</div>';
|
||||
});
|
||||
poll='<div class="vote_'+toot.id+'">'+poll+'</div>';
|
||||
}
|
||||
/*
|
||||
|
||||
*/
|
||||
//引用Renote
|
||||
if(toot.renote){
|
||||
poll=poll+'<div class="quote-renote"><div class="renote-icon"><a onclick="udg(\'' + toot.renote.user.id +
|
||||
'\',' + acct_id + ');" user="' + toot.renote.user.username + '" class="udg"><img src="'+toot.renote.user.avatarUrl+'"></a></div><div class="renote-user">'+escapeHTML(toot.renote.user.name)+'</div><div class="renote-text">'+escapeHTML(toot.renote.text)+'</div></div>'
|
||||
}
|
||||
if(localStorage.getItem("emojiReaction_" + acct_id)=="disabled"){
|
||||
var freeReact="hide";
|
||||
}else{
|
||||
@@ -667,7 +671,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||
var emoji = obj[i];
|
||||
if (":"+emoji.shortcode+":"==keye) {
|
||||
if (emoji) {
|
||||
addReact=addReact+ '<span class="reaction "><a onclick="reaction(\''+keye+'\',\'' + toot.id + '\',' + acct_id +
|
||||
addReact=addReact+ '<span class="reaction"><a onclick="reaction(\''+keye+'\',\'' + toot.id + '\',' + acct_id +
|
||||
',\'' + tlid +'\')" class="waves-effect waves-dark btn-flat pointer" style="padding:0;margin-left:3px;"><img src="'+emoji.url+'" style="width:13px;"></a><span class="re-'+emoji.shortcode+'ct">'+thisReact+
|
||||
'</span></span>';
|
||||
}
|
||||
@@ -837,7 +841,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||
acct_id +
|
||||
')" class="waves-effect waves-dark btn-flat" style="padding:0" title="'+lang.lang_parse_redraft+'"><i class="material-icons">redo</i></a></div>'+trans+
|
||||
'<span class="cbadge viabadge waves-effect '+viashow+' '+mine_via+'" onclick="client(\''+$.strip_tagstemp(via)+'\')" title="via ' + $.strip_tagstemp(via) + '">via ' +
|
||||
via +
|
||||
escapeHTML(via) +
|
||||
'</span>'+
|
||||
'</div><div class="area-side '+mouseover+'"><div class="action ' + if_mine + ' '+noauth+'"><a onclick="toggleAction(\'' + toot.id + '\',\''+tlid+'\',\''+acct_id+'\')" class="waves-effect waves-dark btn-flat" style="padding:0"><i class="text-darken-3 material-icons act-icon">expand_more</i></a></div>' +
|
||||
'<div class="action '+noauth+'"><a onclick="details(\'' + toot.id + '\',' + acct_id +
|
||||
@@ -913,7 +917,7 @@ function misskeyUserparse(obj, auth, acct_id, tlid, popup) {
|
||||
var dis_name=escapeHTMLtemp(toot.name);
|
||||
dis_name=twemoji.parse(dis_name);
|
||||
}else{
|
||||
var dis_name=toot.name;
|
||||
var dis_name=toot.username;
|
||||
}
|
||||
templete = templete +
|
||||
'<div class="cvo" style="padding-top:5px;" user-id="' + toot.id + '"><div class="area-notice">' +
|
||||
|
@@ -94,12 +94,14 @@ function mixre(acct_id, tlid, TLtype, mute,delc,voice,mode) {
|
||||
websocketLocal[wslid] = new WebSocket(startLocal);
|
||||
websocketHome[wshid].onopen = function(mess) {
|
||||
localStorage.setItem("wssH_" + tlid, wshid);
|
||||
console.log("Connect Streaming API(Integrated:Home)");
|
||||
console.log(tlid + ":Connect Streaming API(Integrated:Home)");
|
||||
console.log(mess);
|
||||
$("#notice_icon_" + tlid).removeClass("red-text");
|
||||
}
|
||||
websocketLocal[wslid].onopen = function(mess) {
|
||||
localStorage.setItem("wssL_" + tlid, wslid);
|
||||
console.log("Connect Streaming API(Integrated:Local)");
|
||||
console.log(tlid + ":Connect Streaming API(Integrated:Local)");
|
||||
console.log(mess);
|
||||
$("#notice_icon_" + tlid).removeClass("red-text");
|
||||
}
|
||||
websocketLocal[wslid].onmessage = function(mess) {
|
||||
@@ -195,39 +197,57 @@ function mixre(acct_id, tlid, TLtype, mute,delc,voice,mode) {
|
||||
}
|
||||
}
|
||||
websocketLocal[wslid].onerror = function(error) {
|
||||
console.error('WebSocket Error ' + error);
|
||||
console.error('WebSocketLocal Error')
|
||||
console.error(error);
|
||||
if(mode=="error"){
|
||||
$("#notice_icon_" + tlid).addClass("red-text");
|
||||
todo('WebSocket Error ' + error);
|
||||
}else{
|
||||
reconnector(tlid,TLtype,acct_id,"","error");
|
||||
var errorct=localStorage.getItem("wserror_" + tlid)*1+1;
|
||||
localStorage.setItem("wserror_" + tlid,errorct);
|
||||
if(errorct<3){
|
||||
reconnector(tlid,TLtype,acct_id,"","error");
|
||||
}
|
||||
}
|
||||
};
|
||||
websocketLocal[wslid].onclose = function() {
|
||||
console.error('WebSocketLocal Closing by error:' + tlid);
|
||||
console.log('WebSocketLocal Closing:' + tlid);
|
||||
if(mode=="error"){
|
||||
$("#notice_icon_" + tlid).addClass("red-text");
|
||||
todo('WebSocket Closed');
|
||||
}else{
|
||||
reconnector(tlid,TLtype,acct_id,"","error");
|
||||
var errorct=localStorage.getItem("wserror_" + tlid)*1+1;
|
||||
localStorage.setItem("wserror_" + tlid,errorct);
|
||||
if(errorct<3){
|
||||
reconnector(tlid,TLtype,acct_id,"","error");
|
||||
}
|
||||
}
|
||||
};
|
||||
websocketHome[wshid].onerror = function(error) {
|
||||
console.error('WebSocket Error ' + error);
|
||||
console.error('WebSocketHome Error')
|
||||
console.error(error);
|
||||
if(mode=="error"){
|
||||
$("#notice_icon_" + tlid).addClass("red-text");
|
||||
todo('WebSocket Error ' + error);
|
||||
}else{
|
||||
reconnector(tlid,TLtype,acct_id,"","error");
|
||||
var errorct=localStorage.getItem("wserror_" + tlid)*1+1;
|
||||
localStorage.setItem("wserror_" + tlid,errorct);
|
||||
if(errorct<3){
|
||||
reconnector(tlid,TLtype,acct_id,"","error");
|
||||
}
|
||||
}
|
||||
};
|
||||
websocketHome[wshid].onclose = function() {
|
||||
console.error('WebSocketHome Closing by error:' + tlid);
|
||||
console.log('WebSocketHome Closing:' + tlid);
|
||||
if(mode=="error"){
|
||||
$("#notice_icon_" + tlid).addClass("red-text");
|
||||
todo('WebSocket Closed');
|
||||
}else{
|
||||
reconnector(tlid,TLtype,acct_id,"","error");
|
||||
var errorct=localStorage.getItem("wserror_" + tlid)*1+1;
|
||||
localStorage.setItem("wserror_" + tlid,errorct);
|
||||
if(errorct<3){
|
||||
reconnector(tlid,TLtype,acct_id,"","error");
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
|
@@ -112,73 +112,6 @@ function notfColumn(acct_id, tlid, sys){
|
||||
at;
|
||||
}
|
||||
|
||||
console.log(start);
|
||||
var wsid = websocketNotf.length;
|
||||
websocketNotf[acct_id] = new WebSocket(start);
|
||||
console.log(websocketNotf);
|
||||
websocketNotf[acct_id].onopen = function(mess) {
|
||||
console.log("Connect Streaming API(Notf):");
|
||||
console.log(mess);
|
||||
$("i[data-notf=" + acct_id +"]").removeClass("red-text");
|
||||
|
||||
}
|
||||
websocketNotf[acct_id].onmessage = function(mess) {
|
||||
console.log("Receive Streaming API(Notf):"+acct_id);
|
||||
var popup = localStorage.getItem("popup");
|
||||
if (!popup) {
|
||||
popup = 0;
|
||||
}
|
||||
console.log(domain)
|
||||
if(misskey){
|
||||
console.log("misskey")
|
||||
console.log(JSON.parse(mess.data));
|
||||
if (JSON.parse(mess.data).type == "notification") {
|
||||
var obj = JSON.parse(mess.data).body;
|
||||
console.log(obj);
|
||||
if(obj.type!="follow"){
|
||||
|
||||
templete = misskeyParse([obj], 'notf', acct_id, 'notf', popup);
|
||||
}else{
|
||||
templete = misskeyUserparse([obj], 'notf', acct_id, 'notf', popup);
|
||||
}
|
||||
if(obj.type=="reaction"){
|
||||
console.log("refresh")
|
||||
reactRefresh(acct_id,obj.note.id)
|
||||
}
|
||||
if(!$("div[data-notfIndv=" + acct_id +"_"+obj.id+"]").length){
|
||||
$("div[data-notf=" + acct_id +"]").prepend(templete);
|
||||
}
|
||||
jQuery("time.timeago").timeago();
|
||||
}else if(JSON.parse(mess.data).type == "note-updated"){
|
||||
var obj = JSON.parse(mess.data).body.note;
|
||||
reactRefreshCore(obj)
|
||||
}
|
||||
}else{
|
||||
var obj = JSON.parse(JSON.parse(mess.data).payload);
|
||||
console.log(obj);
|
||||
var type = JSON.parse(mess.data).event;
|
||||
if (type == "notification") {
|
||||
var templete="";
|
||||
localStorage.setItem("lastnotf_" + acct_id,obj.id);
|
||||
if(obj.type!="follow"){
|
||||
templete = parse([obj], 'notf', acct_id, 'notf', popup);
|
||||
}else{
|
||||
templete = userparse([obj], 'notf', acct_id, 'notf', popup);
|
||||
}
|
||||
if(!$("div[data-notfIndv=" + acct_id +"_"+obj.id+"]").length){
|
||||
$(".tl[data-notf=" + acct_id +"]").prepend(templete);
|
||||
}
|
||||
$(".notf-timeline[data-acct=" + acct_id +"]").prepend(templete);
|
||||
jQuery("time.timeago").timeago();
|
||||
} else if (type == "delete") {
|
||||
$("[toot-id=" + obj + "]").hide();
|
||||
$("[toot-id=" + obj + "]").remove();
|
||||
}
|
||||
}
|
||||
}
|
||||
websocketNotf[acct_id].onerror = function(error) {
|
||||
console.error('WebSocket Error ' + error);
|
||||
};
|
||||
}
|
||||
function notfCommon(acct_id, tlid, sys) {
|
||||
todo("Notifications Loading...");
|
||||
@@ -318,6 +251,7 @@ function notfCommon(acct_id, tlid, sys) {
|
||||
}
|
||||
if(!$("div[data-notfIndv=" + acct_id +"_"+obj.id+"]").length){
|
||||
$("div[data-notf=" + acct_id +"]").prepend(templete);
|
||||
$("div[data-const=notf_"+acct_id+"]").prepend(templete);
|
||||
}
|
||||
jQuery("time.timeago").timeago();
|
||||
}else if(JSON.parse(mess.data).type == "note-updated"){
|
||||
@@ -338,6 +272,7 @@ function notfCommon(acct_id, tlid, sys) {
|
||||
}
|
||||
if(!$("div[data-notfIndv=" + acct_id +"_"+obj.id+"]").length){
|
||||
$("div[data-notf=" + acct_id +"]").prepend(templete);
|
||||
$("div[data-const=notf_"+acct_id+"]").prepend(templete);
|
||||
}
|
||||
jQuery("time.timeago").timeago();
|
||||
} else if (type == "delete") {
|
||||
|
@@ -251,16 +251,28 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) {
|
||||
$(".notf-reply_" + acct_id).text(replyct*1-(-1));
|
||||
localStorage.setItem("notf-reply_" + acct_id,replyct*1-(-1))
|
||||
$(".notf-reply_" + acct_id).removeClass("hide")
|
||||
var sound=localStorage.getItem("replySound");
|
||||
if(sound=="default"){
|
||||
var file="../../source/notif3.wav"
|
||||
}
|
||||
}else if (toot.type == "reblog") {
|
||||
var btct=localStorage.getItem("notf-bt_" + acct_id)
|
||||
$(".notf-bt_" + acct_id).text(btct*1-(-1));
|
||||
localStorage.setItem("notf-bt_" + acct_id,btct*1-(-1))
|
||||
$(".notf-bt_" + acct_id).removeClass("hide")
|
||||
var sound=localStorage.getItem("btSound");
|
||||
if(sound=="default"){
|
||||
var file="../../source/notif2.wav"
|
||||
}
|
||||
}else if (toot.type == "favourite") {
|
||||
var favct=localStorage.getItem("notf-fav_" + acct_id)
|
||||
$(".notf-fav_" + acct_id).text(favct*1-(-1));
|
||||
localStorage.setItem("notf-fav_" + acct_id,favct*1-(-1))
|
||||
$(".notf-fav_" + acct_id).removeClass("hide")
|
||||
var sound=localStorage.getItem("favSound");
|
||||
if(sound=="default"){
|
||||
var file="../../source/notif.wav"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -268,6 +280,23 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) {
|
||||
if(popup>0){
|
||||
Materialize.toast("["+domain+"]"+escapeHTML(toot.account.display_name)+what, popup * 1000);
|
||||
}
|
||||
//通知音
|
||||
if(sound=="c1"){
|
||||
var file=localStorage.getItem("custom1");
|
||||
}else if(sound=="c2"){
|
||||
var file=localStorage.getItem("custom2");
|
||||
}else if(sound=="c3"){
|
||||
var file=localStorage.getItem("custom3");
|
||||
}else if(sound=="c4"){
|
||||
var file=localStorage.getItem("custom4");
|
||||
}
|
||||
if(file){
|
||||
request = new XMLHttpRequest();
|
||||
request.open("GET", file, true);
|
||||
request.responseType = "arraybuffer";
|
||||
request.onload = playSound;
|
||||
request.send();
|
||||
}
|
||||
if(native=="yes"){
|
||||
var electron = require("electron");
|
||||
var ipc = electron.ipcRenderer;
|
||||
@@ -395,7 +424,7 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) {
|
||||
var via = '';
|
||||
viashow="hide";
|
||||
} else {
|
||||
var via = toot.application.name;
|
||||
var via = escapeHTML(toot.application.name);
|
||||
//強調チェック
|
||||
Object.keys(emp).forEach(function(key6) {
|
||||
var cli = emp[key6];
|
||||
@@ -452,6 +481,40 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) {
|
||||
var viewer = "";
|
||||
var hasmedia = "";
|
||||
var youtube = "";
|
||||
//Poll
|
||||
var poll="";
|
||||
if(toot.poll){
|
||||
var choices=toot.poll.options;
|
||||
if(toot.poll.voted){
|
||||
var myvote=lang.lang_parse_voted;
|
||||
var result_hide="";
|
||||
}else{
|
||||
var myvote='<a onclick="voteMastodon(\''+acct_id+'\',\''+toot.poll.id+'\')" class="votebtn">'+lang.lang_parse_vote+'</a><br>';
|
||||
if(choices[0].votes_count===0 || choices[0].votes_count>0){
|
||||
myvote=myvote+'<a onclick="showResult(\''+acct_id+'\',\''+toot.poll.id+'\')" class="pointer">'+lang.lang_parse_unvoted+"</a>";
|
||||
}
|
||||
var result_hide="hide";
|
||||
}
|
||||
if(toot.poll.expired){
|
||||
var ended=lang.lang_parse_endedvote;
|
||||
}else{
|
||||
var ended=date(toot.poll.expires_at, datetype);
|
||||
}
|
||||
Object.keys(choices).forEach(function(keyc) {
|
||||
var choice = choices[keyc];
|
||||
if(!toot.poll.voted && !toot.poll.expired){
|
||||
var votesel='voteSelMastodon(\''+acct_id+'\',\''+toot.poll.id+'\','+keyc+','+toot.poll.multiple+')';
|
||||
var voteclass="pointer waves-effect waves-light";
|
||||
}else{
|
||||
var votesel="";
|
||||
var voteclass="";
|
||||
}
|
||||
poll=poll+'<div class="'+voteclass+' vote vote_'+acct_id+'_'+toot.poll.id+'_'+keyc+'" onclick="'+votesel+'">'+escapeHTML(choice.title)+'<span class="vote_'+acct_id+'_'+toot.poll.id+'_result '+result_hide+'">('+choice.votes_count+')</span></div>';
|
||||
});
|
||||
poll='<div class="vote_'+acct_id+'_'+toot.poll.id+'">'+poll+myvote+'<span class="cbadge cbadge-hover" title="' + date(toot.poll.expires_at, 'absolute') +
|
||||
'"><i class="far fa-calendar-times"></i>' +
|
||||
ended+ '</span></div>';
|
||||
}
|
||||
if(toot.emojis){
|
||||
var emojick = toot.emojis[0];
|
||||
}else{
|
||||
@@ -467,6 +530,7 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) {
|
||||
var regExp = new RegExp(":" + shortcode + ":", "g");
|
||||
content = content.replace(regExp, emoji_url);
|
||||
spoil = spoil.replace(regExp, emoji_url);
|
||||
poll = poll.replace(regExp, emoji_url);
|
||||
});
|
||||
}
|
||||
//ニコフレ絵文字
|
||||
@@ -485,6 +549,7 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) {
|
||||
var regExp = new RegExp(":" + shortcode + ":", "g");
|
||||
content = content.replace(regExp, emoji_url);
|
||||
spoil = spoil.replace(regExp, emoji_url);
|
||||
poll = poll.replace(regExp, emoji_url);
|
||||
});
|
||||
}
|
||||
//デフォ絵文字
|
||||
@@ -501,6 +566,9 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) {
|
||||
if(notice){
|
||||
notice=twemoji.parse(notice);
|
||||
}
|
||||
if(poll){
|
||||
poll=twemoji.parse(poll);
|
||||
}
|
||||
var mediack = toot.media_attachments[0];
|
||||
//メディアがあれば
|
||||
var media_ids="";
|
||||
@@ -698,45 +766,15 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) {
|
||||
for( var i=0; i<tickerdata.length; i++) {
|
||||
var value=tickerdata[i];
|
||||
if(value.domain==thisdomain){
|
||||
var tickerdom='<div style="background:linear-gradient(to left,transparent, '+value.bg+' 96%) !important; color:'+value.text+';width:100%; height:0.9rem; font-size:0.8rem;"><img draggable="false" src="'+value.image+'" style="height:100%;"><span style="position:relative; top:-0.2rem;"> '+value.name+'</span></div>';
|
||||
var tickerdom='<div style="background:linear-gradient(to left,transparent, '+value.bg+' 96%) !important; color:'+value.text+';width:100%; height:0.9rem; font-size:0.8rem;"><img draggable="false" src="'+value.image+'" style="height:100%;"><span style="position:relative; top:-0.2rem;"> '+escapeHTML(value.name)+'</span></div>';
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
//Poll
|
||||
var poll="";
|
||||
if(toot.poll){
|
||||
var choices=toot.poll.options;
|
||||
if(toot.poll.voted){
|
||||
var myvote=lang.lang_parse_voted;
|
||||
var result_hide="";
|
||||
}else{
|
||||
myvote='<a onclick="voteMastodon(\''+acct_id+'\',\''+toot.poll.id+'\')" class="votebtn">'+lang.lang_parse_vote+'</a><br>';
|
||||
if(choices[0].votes_count===0 || choices[0].votes_count>0){
|
||||
myvote=myvote+'<a onclick="showResult(\''+acct_id+'\',\''+toot.poll.id+'\')" class="pointer">'+lang.lang_parse_unvoted+"</a>";
|
||||
}
|
||||
var result_hide="hide";
|
||||
}
|
||||
if(toot.poll.expired){
|
||||
var ended=lang.lang_parse_endedvote;
|
||||
}else{
|
||||
var ended=date(toot.poll.expires_at, datetype);
|
||||
}
|
||||
Object.keys(choices).forEach(function(keyc) {
|
||||
var choice = choices[keyc];
|
||||
if(!toot.poll.voted && !toot.poll.expired){
|
||||
var votesel='voteSelMastodon(\''+acct_id+'\',\''+toot.poll.id+'\','+keyc+','+toot.poll.multiple+')';
|
||||
var voteclass="pointer waves-effect waves-light";
|
||||
}else{
|
||||
var votesel="";
|
||||
var voteclass="";
|
||||
}
|
||||
poll=poll+'<div class="'+voteclass+' vote vote_'+acct_id+'_'+toot.poll.id+'_'+keyc+'" onclick="'+votesel+'">'+escapeHTML(choice.title)+'<span class="vote_'+acct_id+'_'+toot.poll.id+'_result '+result_hide+'">('+choice.votes_count+')</span></div>';
|
||||
});
|
||||
poll='<div class="vote_'+acct_id+'_'+toot.poll.id+'">'+poll+myvote+'<span class="cbadge cbadge-hover" title="' + date(toot.poll.expires_at, 'absolute') +
|
||||
'"><i class="far fa-calendar-times"></i>' +
|
||||
ended+ '</span></div>';
|
||||
//Quote
|
||||
if(toot.quote){
|
||||
poll=poll+'<div class="quote-renote"><div class="renote-icon"><img src="'+toot.quote.account.avatar+'"></div><div class="renote-user">'+escapeHTML(toot.quote.account.display_name)+'</div><div class="renote-text">'+toot.quote.content+'</div></div>'
|
||||
}
|
||||
templete = templete + '<div id="pub_' + toot.id + '" class="cvo ' +
|
||||
boostback + ' ' + fav_app + ' ' + rt_app + ' ' + pin_app +
|
||||
@@ -760,8 +798,8 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) {
|
||||
'</div></div>' +
|
||||
'<div class="area-toot">'+tickerdom+'<span class="' +
|
||||
api_spoil + ' cw_text_' + toot.id + '"><span class="cw_text">' + spoil + "</span>" + spoiler_show +
|
||||
'</span><span class="toot ' + spoiler + '">' + content +poll+
|
||||
'</span>' +
|
||||
'</span><span class="toot ' + spoiler + '">' + content +
|
||||
'</span>' + poll +
|
||||
'' + viewer + '' +
|
||||
'</div><div class="area-additional"><span class="additional">' + analyze +
|
||||
'</span>' +
|
||||
@@ -791,7 +829,7 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter, type) {
|
||||
'</a></span></div>' +
|
||||
'<div class="' + if_mine + ' action '+disp["del"]+' '+noauth+'"><a onclick="del(\'' + toot.id + '\',' +
|
||||
acct_id +
|
||||
')" class="waves-effect waves-dark btn-flat" style="padding:0" title="'+lang.lang_parse_del+'"><i class="far fa-trash"></i></a></div>' +
|
||||
')" class="waves-effect waves-dark btn-flat" style="padding:0" title="'+lang.lang_parse_del+'"><i class="fas fa-trash"></i></a></div>' +
|
||||
'<div class="' + if_mine + ' action pin '+disp["pin"]+' '+noauth+'"><a onclick="pin(\'' + toot.id + '\',' +
|
||||
acct_id +
|
||||
')" class="waves-effect waves-dark btn-flat" style="padding:0" title="'+lang.lang_parse_pin+'"><i class="fas fa-map-pin pin_' + toot.id + ' '+if_pin+'"></i></a></div>'
|
||||
@@ -962,7 +1000,7 @@ function client(name) {
|
||||
if(!obj){
|
||||
var obj=[];
|
||||
obj.push(name);
|
||||
Materialize.toast(name+lang.lang_status_emphas, 2000);
|
||||
Materialize.toast(escapeHTML(name)+lang.lang_status_emphas, 2000);
|
||||
}else{
|
||||
var can;
|
||||
Object.keys(obj).forEach(function(key) {
|
||||
@@ -972,12 +1010,12 @@ function client(name) {
|
||||
}else{
|
||||
can=true;
|
||||
obj.splice(key, 1);
|
||||
Materialize.toast(name+lang.lang_status_unemphas, 2000);
|
||||
Materialize.toast(escapeHTML(name)+lang.lang_status_unemphas, 2000);
|
||||
}
|
||||
});
|
||||
if(!can){
|
||||
obj.push(name);
|
||||
Materialize.toast(name+lang.lang_status_emphas, 2000);
|
||||
Materialize.toast(escapeHTML(name)+lang.lang_status_emphas, 2000);
|
||||
}else{
|
||||
|
||||
}
|
||||
@@ -993,7 +1031,7 @@ function client(name) {
|
||||
obj.push(name);
|
||||
var json = JSON.stringify(obj);
|
||||
localStorage.setItem("client_mute", json);
|
||||
Materialize.toast(name+lang.lang_parse_mute, 2000);
|
||||
Materialize.toast(escapeHTML(name)+lang.lang_parse_mute, 2000);
|
||||
}else{
|
||||
return;
|
||||
}
|
||||
|
@@ -108,7 +108,7 @@ function voteMastodonrefresh(acct_id,id){
|
||||
if(!json.voted){
|
||||
votesel='voteSelMastodon(\''+acct_id+'\',\''+json.id+'\','+keyc+','+json.multiple+')';
|
||||
}
|
||||
poll=poll+'<div class="pointer vote vote_'+acct_id+'_'+json.id+'_'+keyc+'" onclick="'+votesel+'">'+choice.title+'<span class="vote_'+acct_id+'_'+json.id+'_result '+result_hide+'">('+choice.votes_count+')</span></div>';
|
||||
poll=poll+'<div class="pointer vote vote_'+acct_id+'_'+json.id+'_'+keyc+'" onclick="'+votesel+'">'+escapeHTML(choice.title)+'<span class="vote_'+acct_id+'_'+json.id+'_result '+result_hide+'">('+choice.votes_count+')</span></div>';
|
||||
});
|
||||
poll=poll+myvote+'<span class="cbadge cbadge-hover" title="' + date(json.expires_at, 'absolute') +
|
||||
'"><i class="far fa-calendar-times"></i>' +
|
||||
|
@@ -52,7 +52,7 @@ function src(mode) {
|
||||
var tag = json.hashtags[key4];
|
||||
if(mode){
|
||||
tags = tags + '<a onclick="tl(\'tag\',\'' + tag + '\',\'' + acct_id +
|
||||
'\',\'add\')" class="pointer">#' + tag + '</a><br> ';
|
||||
'\',\'add\')" class="pointer">#' + escapeHTML(tag) + '</a><br> ';
|
||||
}else{
|
||||
tags=tags+graphDraw(tag);
|
||||
}
|
||||
@@ -186,13 +186,13 @@ function graphDraw(tag){
|
||||
var zero=50-(his[0].uses/max*50);
|
||||
if(max===0){
|
||||
tags = '<br><br><svg version="1.1" viewbox="0 0 60 50" width="60" height="50">'+
|
||||
'</svg><span style="font-size:200%">'+his[0].uses+'</span>toots <a onclick="tl(\'tag\',\'' + tag.name + '\',\'' + acct_id +
|
||||
'\',\'add\')" class="pointer">#' + tag.name + '</a> '+his[0].accounts+lang.lang_src_people;
|
||||
'</svg><span style="font-size:200%">'+his[0].uses+'</span>toots <a onclick="tl(\'tag\',\'' + escapeHTML(tag.name) + '\',\'' + acct_id +
|
||||
'\',\'add\')" class="pointer">#' + escapeHTML(tag.name) + '</a> '+his[0].accounts+lang.lang_src_people;
|
||||
}else{
|
||||
tags = '<br><br><svg version="1.1" viewbox="0 0 60 50" width="60" height="50">'+
|
||||
'<g><path d="M0,'+six+' L10,'+five+' 20,'+four+' 30,'+three+' 40,'+two+' 50,'+one+' 60,'+zero+'" style="stroke: #9e9e9e; stroke-width: 1;fill: none;"></path></g>'+
|
||||
'</svg><span style="font-size:200%">'+his[0].uses+'</span>toots <a onclick="tl(\'tag\',\'' + tag.name + '\',\'' + acct_id +
|
||||
'\',\'add\')" class="pointer">#' + tag.name + '</a> '+his[0].accounts+lang.lang_src_people;
|
||||
'</svg><span style="font-size:200%">'+his[0].uses+'</span>toots <a onclick="tl(\'tag\',\'' + escapeHTML(tag.name) + '\',\'' + acct_id +
|
||||
'\',\'add\')" class="pointer">#' + escapeHTML(tag.name) + '</a> '+his[0].accounts+lang.lang_src_people;
|
||||
}
|
||||
|
||||
return tags;
|
||||
|
@@ -65,6 +65,7 @@ function favTag(){
|
||||
var ptt=lang.lang_tags_unrealtime;
|
||||
var nowon="("+lang.lang_tags_realtime+")";
|
||||
}
|
||||
tag=escapeHTML(tag);
|
||||
tags = tags + '<a onclick="tagShow(\'' + tag + '\')" class="pointer">#' + tag + '</a>'+nowon+'<span class="hide" data-tag="' + tag + '"> <a onclick="tagTL(\'tag\',\'' + tag + '\',false,\'add\')" class="pointer" title="' +lang.lang_parse_tagTL.replace("{{tag}}" ,'#'+tag)+ '">TL</a> <a onclick="brInsert(\'#' + tag + '\')" class="pointer" title="' + lang.lang_parse_tagtoot.replace("{{tag}}" ,'#'+tag) + '">Toot</a> '+
|
||||
'<a onclick="autoToot(\'' + tag + '\');" class="pointer" title="'+lang.lang_tags_always + lang.lang_parse_tagtoot.replace("{{tag}}" ,'#'+tag) + '">'+ptt+'</a> <a onclick="tagRemove(\'' + key + '\')" class="pointer" title="' +lang.lang_tags_tagunpin.replace("{{tag}}" ,'#'+tag)+ '">'+lang.lang_del+'</a></span> ';
|
||||
});
|
||||
@@ -96,6 +97,7 @@ function trendTag(){
|
||||
var tags="";
|
||||
json=json.score;
|
||||
Object.keys(json).forEach(function(tag) {
|
||||
tag=escapeHTML(tag);
|
||||
tags = tags + '<a onclick="tagShow(\'' + tag + '\')" class="pointer">#' + tag + '</a><span class="hide" data-tag="' + tag + '"> <a onclick="tagTL(\'tag\',\'' + tag + '\',false,\'add\')" class="pointer" title="#' + tag + 'のタイムライン">TL</a> <a onclick="show();brInsert(\'#' + tag + '\')" class="pointer" title="#' + tag + 'でトゥート">Toot</a></span> ';
|
||||
});
|
||||
$("#taglist").append('<div class="trendtag">アイマストドントレンドタグ<i class="material-icons pointer" onclick="trendTag()" style="font-size:12px">refresh</i>:' + tags+'</div>');
|
||||
@@ -115,6 +117,7 @@ function tagTL(a,b,c,d){
|
||||
tl(a,b,acct_id,d);
|
||||
}
|
||||
function autoToot(tag){
|
||||
tag=escapeHTML(tag)
|
||||
var nowPT=localStorage.getItem("stable")
|
||||
if(nowPT==tag){
|
||||
localStorage.removeItem("stable");
|
||||
|
@@ -337,8 +337,8 @@ function reload(type, cc, acct_id, tlid, data, mute, delc, voice, mode) {
|
||||
return false;
|
||||
};
|
||||
websocket[wsid].onclose = function() {
|
||||
console.error("Closing");
|
||||
console.error(tlid);
|
||||
console.log("Closing");
|
||||
console.log(tlid);
|
||||
if(mode=="error"){
|
||||
$("#notice_icon_" + tlid).addClass("red-text");
|
||||
todo('WebSocket Closed');
|
||||
@@ -660,7 +660,7 @@ function cap(type, data, acct_id) {
|
||||
var response="Federated TL(Media)";
|
||||
}
|
||||
} else if (type == "tag") {
|
||||
var response= "#" + data
|
||||
var response= "#" + escapeHTML(data)
|
||||
} else if (type == "list") {
|
||||
var ltitle=localStorage.getItem("list_"+data+"_"+acct_id);
|
||||
var response= "List(" + ltitle + ")"
|
||||
@@ -685,7 +685,7 @@ function cap(type, data, acct_id) {
|
||||
}else if (type == "webview") {
|
||||
var response="Twitter"
|
||||
}else if (type == "tootsearch") {
|
||||
var response="tootsearch(" + data + ")";
|
||||
var response="tootsearch(" + escapeHTML(data) + ")";
|
||||
}
|
||||
return response;
|
||||
}
|
||||
@@ -788,7 +788,7 @@ function strAliveInt(){
|
||||
}
|
||||
function reconnector(tlid,type,acct_id,data,mode){
|
||||
console.log("Reconnector:"+mode)
|
||||
if(type=="mix" || type=="plus"){
|
||||
if(type=="mix" || type=="integrated" || type=="plus"){
|
||||
if(localStorage.getItem("voice_" + tlid)){
|
||||
var voice=true;
|
||||
}else{
|
||||
@@ -801,10 +801,11 @@ function reconnector(tlid,type,acct_id,data,mode){
|
||||
}
|
||||
var wssh=localStorage.getItem("wssH_" + tlid);
|
||||
websocketHome[wssh].close();
|
||||
var wssh=localStorage.getItem("wssL_" + tlid);
|
||||
var wssl=localStorage.getItem("wssL_" + tlid);
|
||||
websocketLocal[wssl].close();
|
||||
mixre(acct_id, tlid, type, mute,"",voice,mode);
|
||||
}else if(type=="notf"){
|
||||
notfColumn(acct_id, tlid, "")
|
||||
}else{
|
||||
var wss=localStorage.getItem("wss_" + tlid);
|
||||
websocket[wss].close();
|
||||
|
@@ -28,6 +28,9 @@ function parseColumn() {
|
||||
$(".toot-reset").css("font-size", size + "px");
|
||||
$(".cont-series").css("font-size", size + "px");
|
||||
}
|
||||
if(localStorage.getItem("menu-done")){
|
||||
$("#fukidashi").addClass("hide")
|
||||
}
|
||||
tlCloser();
|
||||
var multi = localStorage.getItem("multi");
|
||||
if (multi) {
|
||||
@@ -198,8 +201,8 @@ function parseColumn() {
|
||||
key + '">On</span></a>'+lang.lang_layout_linkana +'<br><a onclick="voiceToggle(' + key +
|
||||
')" class="setting nex"><i class="material-icons waves-effect nex" title="'+lang.lang_layout_tts +'">hearing</i><span id="sta-voice-' +
|
||||
key + '">On</span></a>'+lang.lang_layout_tts +'TL<br><a onclick="reconnector(' + key +
|
||||
',\''+acct.type+'\',\''+acct.domain+'\',\''+acct.data+'\')" class="setting nex '+if_notf+'"><i class="material-icons waves-effect nex '+if_notf+'" title="'+lang.lang_layout_reconnect+'">low_priority</i></a><span class="'+if_notf+'">'+lang.lang_layout_reconnect+'</span><br>'+lang.lang_layout_headercolor +'<br><div id="picker_'+key+'" class="color-picker"></div></div><div class="tl-box" tlid="' + key + '"><div id="timeline_' + key +
|
||||
'" class="tl '+acct.type+'-timeline " tlid="' + key + '" data-type="' + acct.type + '" data-acct="'+acct.domain+'"><div id="landing_'+key+'" style="text-align:center">'+lang.lang_layout_nodata +'</div></div></div>'
|
||||
',\''+acct.type+'\',\''+acct.domain+'\',\''+escapeHTML(acct.data)+'\')" class="setting nex '+if_notf+'"><i class="material-icons waves-effect nex '+if_notf+'" title="'+lang.lang_layout_reconnect+'">low_priority</i></a><span class="'+if_notf+'">'+lang.lang_layout_reconnect+'</span><br>'+lang.lang_layout_headercolor +'<br><div id="picker_'+key+'" class="color-picker"></div></div><div class="tl-box" tlid="' + key + '"><div id="timeline_' + key +
|
||||
'" class="tl '+acct.type+'-timeline " tlid="' + key + '" data-type="' + acct.type + '" data-acct="'+acct.domain+'" data-const="' + acct.type + '_'+acct.domain+'"><div id="landing_'+key+'" style="text-align:center">'+lang.lang_layout_nodata +'</div></div></div>'
|
||||
$('#timeline_box_' + basekey + '_parentBox').append(html);
|
||||
localStorage.removeItem("pool_" + key);
|
||||
if (acct.data) {
|
||||
|
@@ -1,4 +1,6 @@
|
||||
function menu(){
|
||||
localStorage.setItem("menu-done",true);
|
||||
$("#fukidashi").addClass("hide")
|
||||
if(!$("#menu").hasClass("appear")){
|
||||
$("#menu").addClass("appear")
|
||||
var left=localStorage.getItem("menu-left");
|
||||
|
@@ -123,6 +123,10 @@ function load() {
|
||||
var font = "";
|
||||
}
|
||||
$("#font").val(font);
|
||||
$("#c1-file").text(localStorage.getItem("custom1"))
|
||||
$("#c2-file").text(localStorage.getItem("custom2"));
|
||||
$("#c3-file").text(localStorage.getItem("custom3"));
|
||||
$("#c4-file").text(localStorage.getItem("custom4"));
|
||||
}
|
||||
|
||||
function climute(){
|
||||
@@ -636,6 +640,22 @@ ipc.on('theme-json-create-complete', function (event, args) {
|
||||
$("#custom_import").val("");
|
||||
ctLoad()
|
||||
});
|
||||
function customSound(key){
|
||||
var electron = require("electron");
|
||||
var remote=electron.remote;
|
||||
var dialog=remote.dialog;
|
||||
dialog.showOpenDialog(null, {
|
||||
title: 'Custom sound',
|
||||
properties: ['openFile'],
|
||||
filters: [
|
||||
{name: 'Audio', extensions: ['mp3','aac','wav','flac','m4a']},
|
||||
{name: 'All', extensions: ['*']},
|
||||
]
|
||||
}, (fileNames) => {
|
||||
localStorage.setItem("custom"+key,fileNames[0]);
|
||||
$("#c1-file").text(fileNames[0])
|
||||
});
|
||||
}
|
||||
window.onload = function() {
|
||||
//最初に読む
|
||||
load();
|
||||
|
@@ -32,7 +32,7 @@ function sortload(){
|
||||
var acctdata=user+"@"+domain;
|
||||
}
|
||||
|
||||
var html='<li class="drag-content" data-id="'+key+'" data-flag="'+flag+'"'+insert+'><div class="sorticon"><i class="material-icons">'+icon(acct.type)+'</i></div><div class="sorttitle">'+cap(acct.type, acct.data,acct.domain)+'</div><div class="sortaction"><a onclick="goColumn(' + key +
|
||||
var html='<li class="drag-content" data-id="'+key+'" data-flag="'+flag+'"'+insert+'><div class="sorticon"><i class="material-icons">'+icon(acct.type)+'</i></div><div class="sorttitle">'+cap(acct.type, escapeHTML(acct.data),acct.domain)+'</div><div class="sortaction"><a onclick="goColumn(' + key +
|
||||
')" class="setting nex"><i class="material-icons waves-effect nex" title="'+lang.lang_sort_gothis+'">forward</i></a> <a onclick="removeColumn(' + key +
|
||||
')" class="setting nex"><i class="material-icons waves-effect nex" title="このカラムを削除">cancel</i></a></div><div class="sortacct">'+acctdata+'</div></li>';
|
||||
$("#sort").append(html);
|
||||
@@ -103,7 +103,7 @@ function sort(){
|
||||
var json = JSON.stringify(newobj);
|
||||
localStorage.setItem("column", json);
|
||||
$("#sort").html("");
|
||||
Materialize.toast("並べ替え完了。", 3000);
|
||||
Materialize.toast("Sorted", 3000);
|
||||
sortload();
|
||||
parseColumn();
|
||||
sortMenu()
|
||||
|
@@ -57,7 +57,7 @@ function startmem(){
|
||||
var use=arg[0];
|
||||
var cpu=arg[1];
|
||||
var total=arg[2]
|
||||
$("#tips-text").html(cpu+"<br>Memory:"+Math.floor(use/1024/1024/102.4)/10+"/"+Math.floor(total/1024/1024/102.4)/10+"GB("+Math.floor(use/total*100)+"%)")
|
||||
$("#tips-text").html(escapeHTML(cpu)+"<br>Memory:"+Math.floor(use/1024/1024/102.4)/10+"/"+Math.floor(total/1024/1024/102.4)/10+"GB("+Math.floor(use/total*100)+"%)")
|
||||
})
|
||||
}
|
||||
//トレンドタグ
|
||||
@@ -83,7 +83,7 @@ function trendTagonTip(){
|
||||
var tags="";
|
||||
json=json.score;
|
||||
Object.keys(json).forEach(function(tag) {
|
||||
tags = tags + '<a onclick="tagShow(\'' + tag + '\')" class="pointer">#' + tag + '</a><span class="hide" data-tag="' + tag + '"> <a onclick="tagTL(\'tag\',\'' + tag + '\',false,\'add\')" class="pointer" title="#' + tag + 'のタイムライン">TL</a> <a onclick="show();brInsert(\'#' + tag + '\')" class="pointer" title="#' + tag + 'でトゥート">Toot</a></span><br>';
|
||||
tags = tags + '<a onclick="tagShow(\'' + tag + '\')" class="pointer">#' + escapeHTML(tag) + '</a><span class="hide" data-tag="' + tag + '"> <a onclick="tagTL(\'tag\',\'' + tag + '\',false,\'add\')" class="pointer" title="#' + tag + 'のタイムライン">TL</a> <a onclick="show();brInsert(\'#' + tag + '\')" class="pointer" title="#' + tag + 'でトゥート">Toot</a></span><br>';
|
||||
});
|
||||
$("#tips-text").html('<div class="trendtag">トレンドタグ<i class="material-icons pointer" onclick="trendTagonTip()" style="font-size:12px">refresh</i>:<br>' + tags+'</div>');
|
||||
trendTagonTipInterval()
|
||||
|
@@ -571,9 +571,9 @@ function udAdd(start) {
|
||||
for(var i=0;i<fields.length;i++){
|
||||
if(fields[i].type=="IdentityProof"){
|
||||
if(fields[i].signatureAlgorithm=="keybase"){
|
||||
var html='<a href="https://keybase.io/'+fields[i].name+'" target="_blank" class="cbadge teal waves-effect" style="max-width:200px;" title="'+lang.lang_hisdata_key.replace("{{set}}",fields[i].signatureAlgorithm)+'"><i class="fas fa-key" aria-hidden="true"></i>'+fields[i].signatureAlgorithm+':'+fields[i].name+'</a>';
|
||||
var html='<a href="https://keybase.io/'+fields[i].name+'" target="_blank" class="cbadge teal waves-effect" style="max-width:200px;" title="'+lang.lang_hisdata_key.replace("{{set}}",escapeHTML(fields[i].signatureAlgorithm))+'"><i class="fas fa-key" aria-hidden="true"></i>'+escapeHTML(fields[i].signatureAlgorithm)+':'+escapeHTML(fields[i].name)+'</a>';
|
||||
}else{
|
||||
var html='<span class="cbadge teal" style="max-width:200px;" title="'+lang.lang_hisdata_key.replace("{{set}}",fields[i].signatureAlgorithm)+'"><i class="fas fa-key" aria-hidden="true"></i>'+fields[i].signatureAlgorithm+':'+fields[i].name+'</span>';
|
||||
var html='<span class="cbadge teal" style="max-width:200px;" title="'+lang.lang_hisdata_key.replace("{{set}}",escapeHTML(fields[i].signatureAlgorithm))+'"><i class="fas fa-key" aria-hidden="true"></i>'+escapeHTML(fields[i].signatureAlgorithm)+':'+escapeHTML(fields[i].name)+'</span>';
|
||||
}
|
||||
$("#his-proof-prof").append(html)
|
||||
}
|
||||
|
@@ -157,8 +157,7 @@ function udg(user, acct_id) {
|
||||
var when="";
|
||||
var color="inherit"
|
||||
}
|
||||
fval=twemoji.parse(fval);
|
||||
note=note+'<tr><td class="his-field-title">'+fname+'</td><td class="his-field-content" title="'+when+'" style="background-color:'+color+'">'+fval+'</td></tr>';
|
||||
note=note+'<tr><td class="his-field-title">'+twemoji.parse(escapeHTML(fname))+'</td><td class="his-field-content" title="'+when+'" style="background-color:'+color+'">'+twemoji.parse(fval)+'</td></tr>';
|
||||
}
|
||||
note=note+'</table>'
|
||||
$("#his-des").html(twemoji.parse(note));
|
||||
@@ -279,7 +278,7 @@ function misskeyUdg(user, acct_id) {
|
||||
$("#his-follow").text(json.followingCount);
|
||||
$("#his-follower").text(json.followersCount);
|
||||
$("#his-since").text(crat(json.createdAt));
|
||||
var note=json.description;
|
||||
var note=escapeHTML(json.description);
|
||||
$("#his-des").html(twemoji.parse(note));
|
||||
if(json.isCat){
|
||||
$("#his-bot").html("Cat"+twemoji.parse("😺"));
|
||||
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "thedesk",
|
||||
"version": "18.2.3",
|
||||
"version": "18.3.1",
|
||||
"description": "TheDesk is a Mastodon client for PC.",
|
||||
"repository": "https://github.com/cutls/TheDesk",
|
||||
"main": "main.js",
|
||||
@@ -35,7 +35,7 @@
|
||||
},
|
||||
{
|
||||
"name": "kPherox",
|
||||
"url": "https://www.kr-kp.com/",
|
||||
"url": "https://pawoo.net/@kPherox",
|
||||
"email": "admin@mail.kr-kp.com"
|
||||
}
|
||||
],
|
||||
|
BIN
app/source/notif.wav
Normal file
BIN
app/source/notif.wav
Normal file
Binary file not shown.
BIN
app/source/notif2.wav
Normal file
BIN
app/source/notif2.wav
Normal file
Binary file not shown.
BIN
app/source/notif3.wav
Normal file
BIN
app/source/notif3.wav
Normal file
Binary file not shown.
@@ -32,7 +32,7 @@
|
||||
<script type="text/javascript" src="../../js/common/modal.js"></script>
|
||||
<script type="text/javascript" src="../../js/ui/jquery-ui.min.js"></script>
|
||||
<script>
|
||||
var ver="Usamin (18.2.3)";
|
||||
var ver="Usamin (18.3.1)";
|
||||
//betaを入れるとバージョンチェックしない
|
||||
//GitHubに上げるときはindex.htmlをちゃんとする。(index.start.html)
|
||||
//var ver="beta";
|
||||
@@ -270,7 +270,7 @@ var tlid=0;
|
||||
<label for="poll-until">Hide 'votes' count until people vote it.</label><br>
|
||||
<input type="number" style="width:50px" id="days_poll" placeholder="d" value="0">day(s)
|
||||
<input type="number" style="width:50px" id="hours_poll" placeholder="h" value="0">hour(s)
|
||||
<input type="number" style="width:50px" id="mins_poll" placeholder="m" value="0">minute(s)
|
||||
<input type="number" style="width:50px" id="mins_poll" placeholder="m" value="6">minute(s)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -580,24 +580,17 @@ var tlid=0;
|
||||
<a href="https://thedesk.top" target="_blank">HP</a><br>
|
||||
<a href="https://github.com/cutls/TheDesk" target="_blank">GitHub</a><br>
|
||||
<br>
|
||||
<div id="release-Usamin_18-2-3" class="release-do" style="display:none; ">
|
||||
<div id="release-Usamin_18-3-1" class="release-do" style="display:none; ">
|
||||
<a href="https://code.cutls.com/thedesk-log/" target="_blank">開発の経緯</a><br>
|
||||
<a href="https://ja.mstdn.wiki/TheDesk" target="_blank">機能一覧</a><br>
|
||||
Entyでは支援者様限定で様々なTheDeskに関する記事をご覧いただけます。<br>
|
||||
困ったときは、<a href="https://docs.thedesk.top">TheDesk Docs</a>をご覧ください。
|
||||
<h5>Release Note Usamin (18.2.3)</h5>
|
||||
・バグの修正
|
||||
<h5>Release Note Usamin (18.2.0)</h5>
|
||||
・tootsearchをひとつのカラムにしてエゴサが捗る<br>
|
||||
・イントロダクション(初回起動時)の挙動修正<br>
|
||||
・リンクプレビューを最大1行ずつに省略(タイトルと本文)<br>
|
||||
・ブロックされたときのプロフィールの動作(Mastodon 2.8~)<br>
|
||||
・(Misskey)MFM追加flipやjumpなど<br>
|
||||
・(Misskey)リストに対応<br>
|
||||
・(Misskey)カスタム絵文字に対応。カスタム絵文字によるリアクションに対応(対応インスタンスに限る)。<br>
|
||||
・<b>カスタム絵文字をゼロ幅スペースによる挿入に変更する機能</b><br>
|
||||
・一部機能の統廃合とバグの修正<br>
|
||||
・best-friends.chatやキュアスタ!、misskey.devをサポートインスタンスに追加
|
||||
<h5>Release Note Usamin (18.3.1)</h5>
|
||||
・通知音が種別ごとに追加(すべて適当に自分で打ったやつです。)<br>
|
||||
・Integrated TLのタイムラインの再接続(kPherox)<br>
|
||||
・一部ロケーションの変更や投票に関するバグ(kPherox)<br>
|
||||
・バグと脆弱性の修正
|
||||
<br>
|
||||
</div>
|
||||
<div id="release-en">
|
||||
<h5>Let's make it native!</h5>
|
||||
@@ -606,9 +599,6 @@ var tlid=0;
|
||||
<br><br>
|
||||
<h3>Support TheDesk!</h3>
|
||||
TheDesk has no ad, you need no charge to unlock premium features. We need your friendly support!<br>
|
||||
<a class="btn-share btn waves-effect waves-light purple lighten-2" href="https://enty.jp/Cutls" target="_blank">
|
||||
Support on Enty
|
||||
</a>
|
||||
<a class="btn-share btn waves-effect waves-light red lighten-2" href="https://www.pixiv.net/fanbox/creator/28105985" target="_blank">
|
||||
Support on Pixiv FANBOX
|
||||
</a>
|
||||
@@ -812,6 +802,7 @@ var tlid=0;
|
||||
<a onclick="menu()" class="nex waves-effect" id="list-tgl">
|
||||
<i class="material-icons" title="List">apps</i>
|
||||
</a>
|
||||
<span id="fukidashi"><- Add TL</span>
|
||||
</div>
|
||||
</div></div>
|
||||
<div>
|
||||
|
@@ -1,5 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<html lang="en" style="overflow:scroll">
|
||||
|
||||
<head>
|
||||
<title>Settings - TheDesk</title>
|
||||
@@ -22,7 +22,6 @@
|
||||
input {
|
||||
max-height: 50px !important
|
||||
}
|
||||
|
||||
.pcr-result {
|
||||
height: 1rem !important;
|
||||
}
|
||||
@@ -56,8 +55,8 @@
|
||||
<div id="envView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if=item.text.desc>
|
||||
<templete v-html=item.text.desc></templete><br>
|
||||
<template v-if="item.text.desc">
|
||||
<templete v-html="item.text.desc"></templete><br>
|
||||
</template>
|
||||
<template v-if="item.id=='notf'"><a onclick="notftest()"
|
||||
class="pointer">Notification test</a><br></template>
|
||||
@@ -85,7 +84,7 @@
|
||||
</template>
|
||||
</div>
|
||||
<h5>Font</h5>
|
||||
Select your favorite font to 'Select'<br>
|
||||
Select your favorite font to 'Select'(Windows/ macOS only)<br>
|
||||
<button class="btn waves-effect" style="width:100px;" onclick="font()">Select</button><br>
|
||||
<div id="fonts" class="hide" style="overflow-y:scroll; width:300px; height:500px;"></div>
|
||||
<br>
|
||||
@@ -131,9 +130,9 @@
|
||||
<div class="input-field"><textarea style="width:300px" id="custom_desc" class="materialize-textarea"
|
||||
placeholder="About this theme..."></textarea></div>
|
||||
<h5>Color scheme</h5>
|
||||
<input class="with-gap" name="derection" type="radio" id="dark" value="dark" checked="true" />
|
||||
<input class="with-gap" name="direction" type="radio" id="dark" value="dark" checked="true" />
|
||||
<label for="dark">Dark</label>
|
||||
<input class="with-gap" name="derection" type="radio" id="light" value="light" />
|
||||
<input class="with-gap" name="direction" type="radio" id="light" value="light" />
|
||||
<label for="light">Light</label>
|
||||
<div id="pickers">
|
||||
<div>
|
||||
@@ -158,11 +157,11 @@
|
||||
<input type="hidden" id="color-picker2_value">
|
||||
</div>
|
||||
<div>
|
||||
<h5>Accent</h5>Background of boosts
|
||||
<div id="color-picker3-wrap">
|
||||
<div class="color-picker" id="color-picker3"></div>
|
||||
</div>
|
||||
<input type="hidden" id="color-picker3_value">
|
||||
<h5>Accent</h5>Background of boosts
|
||||
<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()">Change</button> <button
|
||||
@@ -184,8 +183,8 @@
|
||||
<div id="tlView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if=item.text.desc>
|
||||
<templete v-html=item.text.desc></templete><br>
|
||||
<template v-if="item.text.desc">
|
||||
<templete v-html="item.text.desc"></templete><br>
|
||||
</template>
|
||||
<template v-if="item.checkbox">
|
||||
<template v-for="(check, j) in item.text.checkbox">
|
||||
@@ -210,6 +209,11 @@
|
||||
</template><br>
|
||||
</template>
|
||||
</div>
|
||||
<h5>Custom sound</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>
|
||||
@@ -220,8 +224,8 @@
|
||||
<div id="postView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if=item.text.desc>
|
||||
<templete v-html=item.text.desc></templete><br>
|
||||
<template v-if="item.text.desc">
|
||||
<templete v-html="item.text.desc"></templete><br>
|
||||
</template>
|
||||
<template v-if="item.checkbox">
|
||||
<template v-for="(check, j) in item.text.checkbox">
|
||||
@@ -403,8 +407,6 @@
|
||||
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://enty.jp/Cutls" class="btn waves-effect purple lighten-2" style="width:100%; max-width:500px;"><i
|
||||
class="material-icons left">trending_up</i>Support(Enty)</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>Support(Pixiv FANBOX)</a>
|
||||
<a href="https://docs.thedesk.top" class="btn waves-effect blue darken-2" style="width:100%; max-width:500px;"><i
|
||||
@@ -420,7 +422,7 @@
|
||||
<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 All Rights Reserved.
|
||||
<span style="font-family:Open Sans;">Copyright © Cutls P 2018 All Rights Reserved.
|
||||
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>
|
||||
|
@@ -7,6 +7,27 @@ var yesno=[
|
||||
value:"no"
|
||||
}
|
||||
];
|
||||
var sound=[
|
||||
{
|
||||
text:"None",
|
||||
value:"none"
|
||||
},{
|
||||
text:"Default",
|
||||
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",
|
||||
@@ -286,6 +307,46 @@ var tlConstruction=[
|
||||
desc:"",
|
||||
checkbox:yesno
|
||||
}
|
||||
},{
|
||||
id:"replySound",
|
||||
storage:"replySound",
|
||||
checkbox:true,
|
||||
setValue:"none",
|
||||
text:{
|
||||
head:"Sound(Reply)",
|
||||
desc:"",
|
||||
checkbox:sound
|
||||
}
|
||||
},{
|
||||
id:"favSound",
|
||||
storage:"favSound",
|
||||
checkbox:true,
|
||||
setValue:"none",
|
||||
text:{
|
||||
head:"Sound(Fav)",
|
||||
desc:"",
|
||||
checkbox:sound
|
||||
}
|
||||
},{
|
||||
id:"btSound",
|
||||
storage:"btSound",
|
||||
checkbox:true,
|
||||
setValue:"none",
|
||||
text:{
|
||||
head:"Sound(Boost)",
|
||||
desc:"",
|
||||
checkbox:sound
|
||||
}
|
||||
},{
|
||||
id:"followSound",
|
||||
storage:"followSound",
|
||||
checkbox:true,
|
||||
setValue:"none",
|
||||
text:{
|
||||
head:"Sound(Follow)",
|
||||
desc:"",
|
||||
checkbox:sound
|
||||
}
|
||||
}
|
||||
];
|
||||
var postConstruction=[
|
||||
|
@@ -197,10 +197,24 @@ function verck(){
|
||||
todo(error);
|
||||
console.error(error);
|
||||
}).then(function(json) {
|
||||
console.log(json);
|
||||
$("#ver").text(json.desk);
|
||||
localStorage.setItem("next-ver",json.desk);
|
||||
$("#det").html(json.detail);
|
||||
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="en";
|
||||
if(lang=="ja"){
|
||||
$("#det").html(json.detail);
|
||||
}else{
|
||||
$("#det").html(json.detail_en);
|
||||
}
|
||||
|
||||
$("#now").text(localStorage.getItem("ver"));
|
||||
|
||||
});
|
||||
|
@@ -32,7 +32,7 @@
|
||||
<script type="text/javascript" src="../../js/common/modal.js"></script>
|
||||
<script type="text/javascript" src="../../js/ui/jquery-ui.min.js"></script>
|
||||
<script>
|
||||
var ver="Usamin (18.2.3)";
|
||||
var ver="Usamin (18.3.1)";
|
||||
//betaを入れるとバージョンチェックしない
|
||||
//GitHubに上げるときはindex.htmlをちゃんとする。(index.start.html)
|
||||
//var ver="beta";
|
||||
@@ -270,7 +270,7 @@ var tlid=0;
|
||||
<label for="poll-until">投票するまで票数を隠す</label><br>
|
||||
<input type="number" style="width:50px" id="days_poll" placeholder="d" value="0">日
|
||||
<input type="number" style="width:50px" id="hours_poll" placeholder="h" value="0">時間
|
||||
<input type="number" style="width:50px" id="mins_poll" placeholder="m" value="0">分
|
||||
<input type="number" style="width:50px" id="mins_poll" placeholder="m" value="6">分
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -580,24 +580,17 @@ var tlid=0;
|
||||
<a href="https://thedesk.top" target="_blank">HP</a><br>
|
||||
<a href="https://github.com/cutls/TheDesk" target="_blank">GitHub</a><br>
|
||||
<br>
|
||||
<div id="release-Usamin_18-2-3" class="release-do" style="display:none; ">
|
||||
<div id="release-Usamin_18-3-1" class="release-do" style="display:none; ">
|
||||
<a href="https://code.cutls.com/thedesk-log/" target="_blank">開発の経緯</a><br>
|
||||
<a href="https://ja.mstdn.wiki/TheDesk" target="_blank">機能一覧</a><br>
|
||||
Entyでは支援者様限定で様々なTheDeskに関する記事をご覧いただけます。<br>
|
||||
困ったときは、<a href="https://docs.thedesk.top">TheDesk Docs</a>をご覧ください。
|
||||
<h5>Release Note Usamin (18.2.3)</h5>
|
||||
・バグの修正
|
||||
<h5>Release Note Usamin (18.2.0)</h5>
|
||||
・tootsearchをひとつのカラムにしてエゴサが捗る<br>
|
||||
・イントロダクション(初回起動時)の挙動修正<br>
|
||||
・リンクプレビューを最大1行ずつに省略(タイトルと本文)<br>
|
||||
・ブロックされたときのプロフィールの動作(Mastodon 2.8~)<br>
|
||||
・(Misskey)MFM追加flipやjumpなど<br>
|
||||
・(Misskey)リストに対応<br>
|
||||
・(Misskey)カスタム絵文字に対応。カスタム絵文字によるリアクションに対応(対応インスタンスに限る)。<br>
|
||||
・<b>カスタム絵文字をゼロ幅スペースによる挿入に変更する機能</b><br>
|
||||
・一部機能の統廃合とバグの修正<br>
|
||||
・best-friends.chatやキュアスタ!、misskey.devをサポートインスタンスに追加
|
||||
<h5>Release Note Usamin (18.3.1)</h5>
|
||||
・通知音が種別ごとに追加(すべて適当に自分で打ったやつです。)<br>
|
||||
・Integrated TLのタイムラインの再接続(kPherox)<br>
|
||||
・一部ロケーションの変更や投票に関するバグ(kPherox)<br>
|
||||
・バグと脆弱性の修正
|
||||
<br>
|
||||
</div>
|
||||
<div id="release-en">
|
||||
<h5>Let's make it native!</h5>
|
||||
@@ -606,9 +599,6 @@ var tlid=0;
|
||||
<br><br>
|
||||
<h3>ご支援ください。</h3>
|
||||
TheDeskは営利目的ではないため、有料機能や広告は一切ありません。<br>皆様のあたたかいご支援のもとで製作されています。<br>
|
||||
<a class="btn-share btn waves-effect waves-light purple lighten-2" href="https://enty.jp/Cutls" target="_blank">
|
||||
Entyで支援
|
||||
</a>
|
||||
<a class="btn-share btn waves-effect waves-light red lighten-2" href="https://www.pixiv.net/fanbox/creator/28105985" target="_blank">
|
||||
Pixiv FANBOXで支援
|
||||
</a>
|
||||
@@ -812,6 +802,7 @@ var tlid=0;
|
||||
<a onclick="menu()" class="nex waves-effect" id="list-tgl">
|
||||
<i class="material-icons" title="リスト">apps</i>
|
||||
</a>
|
||||
<span id="fukidashi">←ここからTL追加</span>
|
||||
</div>
|
||||
</div></div>
|
||||
<div>
|
||||
|
@@ -1,5 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang="ja">
|
||||
<html lang="ja" style="overflow:scroll">
|
||||
|
||||
<head>
|
||||
<title>Settings - TheDesk</title>
|
||||
@@ -22,7 +22,6 @@
|
||||
input {
|
||||
max-height: 50px !important
|
||||
}
|
||||
|
||||
.pcr-result {
|
||||
height: 1rem !important;
|
||||
}
|
||||
@@ -56,8 +55,8 @@
|
||||
<div id="envView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if=item.text.desc>
|
||||
<templete v-html=item.text.desc></templete><br>
|
||||
<template v-if="item.text.desc">
|
||||
<templete v-html="item.text.desc"></templete><br>
|
||||
</template>
|
||||
<template v-if="item.id=='notf'"><a onclick="notftest()"
|
||||
class="pointer">通知テスト</a><br></template>
|
||||
@@ -85,7 +84,7 @@
|
||||
</template>
|
||||
</div>
|
||||
<h5>フォント</h5>
|
||||
「選択」を押してフォントを選んでください。<br>
|
||||
「選択」を押してフォントを選んでください。(Linuxでは動きません)<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>
|
||||
@@ -131,9 +130,9 @@
|
||||
<div class="input-field"><textarea style="width:300px" id="custom_desc" class="materialize-textarea"
|
||||
placeholder="説明..."></textarea></div>
|
||||
<h5>色の系統</h5>
|
||||
<input class="with-gap" name="derection" type="radio" id="dark" value="dark" checked="true" />
|
||||
<input class="with-gap" name="direction" type="radio" id="dark" value="dark" checked="true" />
|
||||
<label for="dark">Dark</label>
|
||||
<input class="with-gap" name="derection" type="radio" id="light" value="light" />
|
||||
<input class="with-gap" name="direction" type="radio" id="light" value="light" />
|
||||
<label for="light">Light</label>
|
||||
<div id="pickers">
|
||||
<div>
|
||||
@@ -158,11 +157,11 @@
|
||||
<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">
|
||||
<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
|
||||
@@ -184,8 +183,8 @@
|
||||
<div id="tlView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if=item.text.desc>
|
||||
<templete v-html=item.text.desc></templete><br>
|
||||
<template v-if="item.text.desc">
|
||||
<templete v-html="item.text.desc"></templete><br>
|
||||
</template>
|
||||
<template v-if="item.checkbox">
|
||||
<template v-for="(check, j) in item.text.checkbox">
|
||||
@@ -210,6 +209,11 @@
|
||||
</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>
|
||||
@@ -220,8 +224,8 @@
|
||||
<div id="postView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if=item.text.desc>
|
||||
<templete v-html=item.text.desc></templete><br>
|
||||
<template v-if="item.text.desc">
|
||||
<templete v-html="item.text.desc"></templete><br>
|
||||
</template>
|
||||
<template v-if="item.checkbox">
|
||||
<template v-for="(check, j) in item.text.checkbox">
|
||||
@@ -403,8 +407,6 @@
|
||||
class="material-icons left">info</i>このソフトについて</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>公式HP</a>
|
||||
<a href="https://enty.jp/Cutls" class="btn waves-effect purple lighten-2" style="width:100%; max-width:500px;"><i
|
||||
class="material-icons left">trending_up</i>支援(Enty)</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://docs.thedesk.top" class="btn waves-effect blue darken-2" style="width:100%; max-width:500px;"><i
|
||||
@@ -420,7 +422,7 @@
|
||||
<a onclick="localStorage.removeItem('new-ver-skip'); location.href='index.html';"
|
||||
class="pointer">アップデートを確認</a><br>
|
||||
<a href="oss.html">OSS License(オープンソースライセンス)</a><br>
|
||||
<span style="font-family:Open Sans;">Copyright © TheDesk 2018 All Rights Reserved.
|
||||
<span style="font-family:Open Sans;">Copyright © Cutls P 2018 All Rights Reserved.
|
||||
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>
|
||||
|
@@ -7,6 +7,27 @@ var yesno=[
|
||||
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",
|
||||
@@ -286,6 +307,46 @@ var tlConstruction=[
|
||||
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=[
|
||||
|
@@ -1,5 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<html lang="ja">
|
||||
<head>
|
||||
<title>Update - TheDesk</title>
|
||||
<link href="../../css/materialize.css" type="text/css" rel="stylesheet">
|
||||
@@ -197,10 +197,24 @@ function verck(){
|
||||
todo(error);
|
||||
console.error(error);
|
||||
}).then(function(json) {
|
||||
console.log(json);
|
||||
$("#ver").text(json.desk);
|
||||
localStorage.setItem("next-ver",json.desk);
|
||||
$("#det").html(json.detail);
|
||||
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="ja";
|
||||
if(lang=="ja"){
|
||||
$("#det").html(json.detail);
|
||||
}else{
|
||||
$("#det").html(json.detail_en);
|
||||
}
|
||||
|
||||
$("#now").text(localStorage.getItem("ver"));
|
||||
|
||||
});
|
||||
|
@@ -270,7 +270,7 @@ var tlid=0;
|
||||
<label for="poll-until">{{polluntil}}</label><br>
|
||||
<input type="number" style="width:50px" id="days_poll" placeholder="d" value="0">{{days}}
|
||||
<input type="number" style="width:50px" id="hours_poll" placeholder="h" value="0">{{hours}}
|
||||
<input type="number" style="width:50px" id="mins_poll" placeholder="m" value="0">{{mins}}
|
||||
<input type="number" style="width:50px" id="mins_poll" placeholder="m" value="6">{{mins}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -580,24 +580,17 @@ var tlid=0;
|
||||
<a href="https://thedesk.top" target="_blank">HP</a><br>
|
||||
<a href="https://github.com/cutls/TheDesk" target="_blank">GitHub</a><br>
|
||||
<br>
|
||||
<div id="release-Usamin_18-2-3" class="release-do" style="display:none; ">
|
||||
<div id="release-Usamin_18-3-1" class="release-do" style="display:none; ">
|
||||
<a href="https://code.cutls.com/thedesk-log/" target="_blank">開発の経緯</a><br>
|
||||
<a href="https://ja.mstdn.wiki/TheDesk" target="_blank">機能一覧</a><br>
|
||||
Entyでは支援者様限定で様々なTheDeskに関する記事をご覧いただけます。<br>
|
||||
困ったときは、<a href="https://docs.thedesk.top">TheDesk Docs</a>をご覧ください。
|
||||
<h5>Release Note Usamin (18.2.3)</h5>
|
||||
・バグの修正
|
||||
<h5>Release Note Usamin (18.2.0)</h5>
|
||||
・tootsearchをひとつのカラムにしてエゴサが捗る<br>
|
||||
・イントロダクション(初回起動時)の挙動修正<br>
|
||||
・リンクプレビューを最大1行ずつに省略(タイトルと本文)<br>
|
||||
・ブロックされたときのプロフィールの動作(Mastodon 2.8~)<br>
|
||||
・(Misskey)MFM追加flipやjumpなど<br>
|
||||
・(Misskey)リストに対応<br>
|
||||
・(Misskey)カスタム絵文字に対応。カスタム絵文字によるリアクションに対応(対応インスタンスに限る)。<br>
|
||||
・<b>カスタム絵文字をゼロ幅スペースによる挿入に変更する機能</b><br>
|
||||
・一部機能の統廃合とバグの修正<br>
|
||||
・best-friends.chatやキュアスタ!、misskey.devをサポートインスタンスに追加
|
||||
<h5>Release Note Usamin (18.3.1)</h5>
|
||||
・通知音が種別ごとに追加(すべて適当に自分で打ったやつです。)<br>
|
||||
・Integrated TLのタイムラインの再接続(kPherox)<br>
|
||||
・一部ロケーションの変更や投票に関するバグ(kPherox)<br>
|
||||
・バグと脆弱性の修正
|
||||
<br>
|
||||
</div>
|
||||
<div id="release-en">
|
||||
<h5>Let's make it native!</h5>
|
||||
@@ -606,9 +599,6 @@ var tlid=0;
|
||||
<br><br>
|
||||
<h3>{{supportme}}</h3>
|
||||
{{TheDeskDes}}<br>
|
||||
<a class="btn-share btn waves-effect waves-light purple lighten-2" href="https://enty.jp/Cutls" target="_blank">
|
||||
{{EntySupport}}
|
||||
</a>
|
||||
<a class="btn-share btn waves-effect waves-light red lighten-2" href="https://www.pixiv.net/fanbox/creator/28105985" target="_blank">
|
||||
{{PixivSupport}}
|
||||
</a>
|
||||
@@ -812,6 +802,7 @@ var tlid=0;
|
||||
<a onclick="menu()" class="nex waves-effect" id="list-tgl">
|
||||
<i class="material-icons" title="{{list}}">apps</i>
|
||||
</a>
|
||||
<span id="fukidashi">{{hereAddColumns}}</span>
|
||||
</div>
|
||||
</div></div>
|
||||
<div>
|
||||
|
@@ -158,5 +158,6 @@
|
||||
"ramTips":"RAM status",
|
||||
"changeTips":"Change Tips",
|
||||
"help":"Help",
|
||||
"about":"About TheDesk"
|
||||
"about":"About TheDesk",
|
||||
"hereAddColumns":"<- Add TL"
|
||||
}
|
@@ -158,5 +158,6 @@
|
||||
"ramTips":"システムメモリ容量",
|
||||
"changeTips":"Tips変更",
|
||||
"help":"ヘルプ",
|
||||
"about":"このソフトについて"
|
||||
"about":"このソフトについて",
|
||||
"hereAddColumns":"←ここからTL追加"
|
||||
}
|
@@ -3,6 +3,8 @@
|
||||
"set":"Save",
|
||||
"yes":"Yes",
|
||||
"no":"No",
|
||||
"none":"None",
|
||||
"default":"Default",
|
||||
"change":"Change",
|
||||
"select":"Select",
|
||||
"env":"System Preferences",
|
||||
@@ -25,7 +27,7 @@
|
||||
"fixwidthwarn":"",
|
||||
"above":"above",
|
||||
"font":"Font",
|
||||
"fontwarn":"Select your favorite font to 'Select'",
|
||||
"fontwarn":"Select your favorite font to 'Select'(Windows/ macOS only)",
|
||||
"fontsize":"Font size",
|
||||
"savefolder":"Folder to save",
|
||||
"savefolderwarn":"TheDesk uses this value when it try to save pictures or take screenshots.",
|
||||
@@ -85,6 +87,11 @@
|
||||
"ticker":"Enable #InstanceTicker",
|
||||
"tickerwarn":"Show colorful stickers about the server. <a href=\"https://cdn.weep.me/mastodon/\">About #InstanceTicker</a> Copyright 2018 weepjp, kyori19.",
|
||||
"animation":"Animation of timelines",
|
||||
"replySound":"Sound(Reply)",
|
||||
"favSound":"Sound(Fav)",
|
||||
"btSound":"Sound(Boost)",
|
||||
"followSound":"Sound(Follow)",
|
||||
"customSound":"Custom sound",
|
||||
"post":"Posting Preferences",
|
||||
"autocw":"Alert before posting a long toot.",
|
||||
"autocwwarn":"Show dialog whether you make too-long text hidden.",
|
||||
|
@@ -3,6 +3,8 @@
|
||||
"set":"設定",
|
||||
"yes":"はい",
|
||||
"no":"いいえ",
|
||||
"none":"なし",
|
||||
"default":"既定",
|
||||
"change":"変更",
|
||||
"select":"選択",
|
||||
"env":"環境設定",
|
||||
@@ -25,7 +27,7 @@
|
||||
"fixwidthwarn":"",
|
||||
"above":"以上",
|
||||
"font":"フォント",
|
||||
"fontwarn":"「選択」を押してフォントを選んでください。",
|
||||
"fontwarn":"「選択」を押してフォントを選んでください。(Linuxでは動きません)",
|
||||
"fontsize":"フォントサイズ",
|
||||
"savefolder":"デフォルトの保存先",
|
||||
"savefolderwarn":"画像ダウンロードやスクリーンショットに影響します。",
|
||||
@@ -85,6 +87,11 @@
|
||||
"ticker":"#InstanceTickerを使う",
|
||||
"tickerwarn":"トゥートした人の所属サーバーをわかりやすく彩ります(自サーバー以外のトゥート向け)。<a href=\"https://cdn.weep.me/mastodon/\">#InstanceTickerについて</a> Copyright 2018 weepjp, kyori19.",
|
||||
"animation":"タイムラインのアニメーション",
|
||||
"replySound":"リプライの通知音",
|
||||
"favSound":"お気に入り登録の通知音",
|
||||
"btSound":"ブーストの通知音",
|
||||
"followSound":"フォローの通知音",
|
||||
"customSound":"カスタム通知音",
|
||||
"post":"投稿設定",
|
||||
"autocw":"長文投稿時に警告",
|
||||
"autocwwarn":"下で指定した以上のトゥートを投稿するときにCWするかのダイアログを表示します。",
|
||||
|
@@ -1,5 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang="@@lang@@">
|
||||
<html lang="@@lang@@" style="overflow:scroll">
|
||||
|
||||
<head>
|
||||
<title>Settings - TheDesk</title>
|
||||
@@ -22,7 +22,6 @@
|
||||
input {
|
||||
max-height: 50px !important
|
||||
}
|
||||
|
||||
.pcr-result {
|
||||
height: 1rem !important;
|
||||
}
|
||||
@@ -56,8 +55,8 @@
|
||||
<div id="envView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if=item.text.desc>
|
||||
<templete v-html=item.text.desc></templete><br>
|
||||
<template v-if="item.text.desc">
|
||||
<templete v-html="item.text.desc"></templete><br>
|
||||
</template>
|
||||
<template v-if="item.id=='notf'"><a onclick="notftest()"
|
||||
class="pointer">@@nntest@@</a><br></template>
|
||||
@@ -131,9 +130,9 @@
|
||||
<div class="input-field"><textarea style="width:300px" id="custom_desc" class="materialize-textarea"
|
||||
placeholder="@@desc@@..."></textarea></div>
|
||||
<h5>@@customthemeDirection@@</h5>
|
||||
<input class="with-gap" name="derection" type="radio" id="dark" value="dark" checked="true" />
|
||||
<input class="with-gap" name="direction" type="radio" id="dark" value="dark" checked="true" />
|
||||
<label for="dark">Dark</label>
|
||||
<input class="with-gap" name="derection" type="radio" id="light" value="light" />
|
||||
<input class="with-gap" name="direction" type="radio" id="light" value="light" />
|
||||
<label for="light">Light</label>
|
||||
<div id="pickers">
|
||||
<div>
|
||||
@@ -158,11 +157,11 @@
|
||||
<input type="hidden" id="color-picker2_value">
|
||||
</div>
|
||||
<div>
|
||||
<h5>Accent</h5>@@accent@@
|
||||
<div id="color-picker3-wrap">
|
||||
<div class="color-picker" id="color-picker3"></div>
|
||||
</div>
|
||||
<input type="hidden" id="color-picker3_value">
|
||||
<h5>Accent</h5>@@accent@@
|
||||
<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()">@@change@@</button> <button
|
||||
@@ -184,8 +183,8 @@
|
||||
<div id="tlView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if=item.text.desc>
|
||||
<templete v-html=item.text.desc></templete><br>
|
||||
<template v-if="item.text.desc">
|
||||
<templete v-html="item.text.desc"></templete><br>
|
||||
</template>
|
||||
<template v-if="item.checkbox">
|
||||
<template v-for="(check, j) in item.text.checkbox">
|
||||
@@ -210,6 +209,11 @@
|
||||
</template><br>
|
||||
</template>
|
||||
</div>
|
||||
<h5>@@customSound@@</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>
|
||||
@@ -220,8 +224,8 @@
|
||||
<div id="postView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if=item.text.desc>
|
||||
<templete v-html=item.text.desc></templete><br>
|
||||
<template v-if="item.text.desc">
|
||||
<templete v-html="item.text.desc"></templete><br>
|
||||
</template>
|
||||
<template v-if="item.checkbox">
|
||||
<template v-for="(check, j) in item.text.checkbox">
|
||||
@@ -403,8 +407,6 @@
|
||||
class="material-icons left">info</i>@@about@@</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>@@hp@@</a>
|
||||
<a href="https://enty.jp/Cutls" class="btn waves-effect purple lighten-2" style="width:100%; max-width:500px;"><i
|
||||
class="material-icons left">trending_up</i>@@support@@(Enty)</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>@@support@@(Pixiv FANBOX)</a>
|
||||
<a href="https://docs.thedesk.top" class="btn waves-effect blue darken-2" style="width:100%; max-width:500px;"><i
|
||||
@@ -420,7 +422,7 @@
|
||||
<a onclick="localStorage.removeItem('new-ver-skip'); location.href='index.html';"
|
||||
class="pointer">@@checkup@@</a><br>
|
||||
<a href="oss.html">OSS License@@ossJP@@</a><br>
|
||||
<span style="font-family:Open Sans;">Copyright © TheDesk 2018 All Rights Reserved.
|
||||
<span style="font-family:Open Sans;">Copyright © Cutls P 2018 All Rights Reserved.
|
||||
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>
|
||||
|
@@ -7,6 +7,27 @@ var yesno=[
|
||||
value:"no"
|
||||
}
|
||||
];
|
||||
var sound=[
|
||||
{
|
||||
text:"@@none@@",
|
||||
value:"none"
|
||||
},{
|
||||
text:"@@default@@",
|
||||
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",
|
||||
@@ -286,6 +307,46 @@ var tlConstruction=[
|
||||
desc:"",
|
||||
checkbox:yesno
|
||||
}
|
||||
},{
|
||||
id:"replySound",
|
||||
storage:"replySound",
|
||||
checkbox:true,
|
||||
setValue:"none",
|
||||
text:{
|
||||
head:"@@replySound@@",
|
||||
desc:"",
|
||||
checkbox:sound
|
||||
}
|
||||
},{
|
||||
id:"favSound",
|
||||
storage:"favSound",
|
||||
checkbox:true,
|
||||
setValue:"none",
|
||||
text:{
|
||||
head:"@@favSound@@",
|
||||
desc:"",
|
||||
checkbox:sound
|
||||
}
|
||||
},{
|
||||
id:"btSound",
|
||||
storage:"btSound",
|
||||
checkbox:true,
|
||||
setValue:"none",
|
||||
text:{
|
||||
head:"@@btSound@@",
|
||||
desc:"",
|
||||
checkbox:sound
|
||||
}
|
||||
},{
|
||||
id:"followSound",
|
||||
storage:"followSound",
|
||||
checkbox:true,
|
||||
setValue:"none",
|
||||
text:{
|
||||
head:"@@followSound@@",
|
||||
desc:"",
|
||||
checkbox:sound
|
||||
}
|
||||
}
|
||||
];
|
||||
var postConstruction=[
|
||||
|
@@ -1,5 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<html lang="{{lang}}">
|
||||
<head>
|
||||
<title>Update - TheDesk</title>
|
||||
<link href="../../css/materialize.css" type="text/css" rel="stylesheet">
|
||||
@@ -197,10 +197,24 @@ function verck(){
|
||||
todo(error);
|
||||
console.error(error);
|
||||
}).then(function(json) {
|
||||
console.log(json);
|
||||
$("#ver").text(json.desk);
|
||||
localStorage.setItem("next-ver",json.desk);
|
||||
$("#det").html(json.detail);
|
||||
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="{{lang}}";
|
||||
if(lang=="ja"){
|
||||
$("#det").html(json.detail);
|
||||
}else{
|
||||
$("#det").html(json.detail_en);
|
||||
}
|
||||
|
||||
$("#now").text(localStorage.getItem("ver"));
|
||||
|
||||
});
|
||||
|
@@ -32,7 +32,7 @@
|
||||
<script type="text/javascript" src="../../js/common/modal.js"></script>
|
||||
<script type="text/javascript" src="../../js/ui/jquery-ui.min.js"></script>
|
||||
<script>
|
||||
var ver="Usamin (18.2.3)";
|
||||
var ver="Usamin (18.3.1)";
|
||||
//betaを入れるとバージョンチェックしない
|
||||
//GitHubに上げるときはindex.htmlをちゃんとする。(index.start.html)
|
||||
//var ver="beta";
|
||||
@@ -270,7 +270,7 @@ var tlid=0;
|
||||
<label for="poll-until">crwdns2412:0crwdne2412:0</label><br>
|
||||
<input type="number" style="width:50px" id="days_poll" placeholder="d" value="0">crwdns507:0crwdne507:0
|
||||
<input type="number" style="width:50px" id="hours_poll" placeholder="h" value="0">crwdns508:0crwdne508:0
|
||||
<input type="number" style="width:50px" id="mins_poll" placeholder="m" value="0">crwdns509:0crwdne509:0
|
||||
<input type="number" style="width:50px" id="mins_poll" placeholder="m" value="6">crwdns509:0crwdne509:0
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -580,24 +580,17 @@ var tlid=0;
|
||||
<a href="https://thedesk.top" target="_blank">HP</a><br>
|
||||
<a href="https://github.com/cutls/TheDesk" target="_blank">GitHub</a><br>
|
||||
<br>
|
||||
<div id="release-Usamin_18-2-3" class="release-do" style="display:none; ">
|
||||
<div id="release-Usamin_18-3-1" class="release-do" style="display:none; ">
|
||||
<a href="https://code.cutls.com/thedesk-log/" target="_blank">開発の経緯</a><br>
|
||||
<a href="https://ja.mstdn.wiki/TheDesk" target="_blank">機能一覧</a><br>
|
||||
Entyでは支援者様限定で様々なTheDeskに関する記事をご覧いただけます。<br>
|
||||
困ったときは、<a href="https://docs.thedesk.top">TheDesk Docs</a>をご覧ください。
|
||||
<h5>Release Note Usamin (18.2.3)</h5>
|
||||
・バグの修正
|
||||
<h5>Release Note Usamin (18.2.0)</h5>
|
||||
・tootsearchをひとつのカラムにしてエゴサが捗る<br>
|
||||
・イントロダクション(初回起動時)の挙動修正<br>
|
||||
・リンクプレビューを最大1行ずつに省略(タイトルと本文)<br>
|
||||
・ブロックされたときのプロフィールの動作(Mastodon 2.8~)<br>
|
||||
・(Misskey)MFM追加flipやjumpなど<br>
|
||||
・(Misskey)リストに対応<br>
|
||||
・(Misskey)カスタム絵文字に対応。カスタム絵文字によるリアクションに対応(対応インスタンスに限る)。<br>
|
||||
・<b>カスタム絵文字をゼロ幅スペースによる挿入に変更する機能</b><br>
|
||||
・一部機能の統廃合とバグの修正<br>
|
||||
・best-friends.chatやキュアスタ!、misskey.devをサポートインスタンスに追加
|
||||
<h5>Release Note Usamin (18.3.1)</h5>
|
||||
・通知音が種別ごとに追加(すべて適当に自分で打ったやつです。)<br>
|
||||
・Integrated TLのタイムラインの再接続(kPherox)<br>
|
||||
・一部ロケーションの変更や投票に関するバグ(kPherox)<br>
|
||||
・バグと脆弱性の修正
|
||||
<br>
|
||||
</div>
|
||||
<div id="release-en">
|
||||
<h5>Let's make it native!</h5>
|
||||
@@ -606,9 +599,6 @@ var tlid=0;
|
||||
<br><br>
|
||||
<h3>crwdns473:0crwdne473:0</h3>
|
||||
crwdns474:0crwdne474:0<br>
|
||||
<a class="btn-share btn waves-effect waves-light purple lighten-2" href="https://enty.jp/Cutls" target="_blank">
|
||||
crwdns475:0crwdne475:0
|
||||
</a>
|
||||
<a class="btn-share btn waves-effect waves-light red lighten-2" href="https://www.pixiv.net/fanbox/creator/28105985" target="_blank">
|
||||
{{PixivSupport}}
|
||||
</a>
|
||||
@@ -812,6 +802,7 @@ var tlid=0;
|
||||
<a onclick="menu()" class="nex waves-effect" id="list-tgl">
|
||||
<i class="material-icons" title="crwdns444:0crwdne444:0">apps</i>
|
||||
</a>
|
||||
<span id="fukidashi">{{hereAddColumns}}</span>
|
||||
</div>
|
||||
</div></div>
|
||||
<div>
|
||||
|
@@ -1,5 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang="ps">
|
||||
<html lang="ps" style="overflow:scroll">
|
||||
|
||||
<head>
|
||||
<title>Settings - TheDesk</title>
|
||||
@@ -22,7 +22,6 @@
|
||||
input {
|
||||
max-height: 50px !important
|
||||
}
|
||||
|
||||
.pcr-result {
|
||||
height: 1rem !important;
|
||||
}
|
||||
@@ -56,8 +55,8 @@
|
||||
<div id="envView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if=item.text.desc>
|
||||
<templete v-html=item.text.desc></templete><br>
|
||||
<template v-if="item.text.desc">
|
||||
<templete v-html="item.text.desc"></templete><br>
|
||||
</template>
|
||||
<template v-if="item.id=='notf'"><a onclick="notftest()"
|
||||
class="pointer">crwdns540:0crwdne540:0</a><br></template>
|
||||
@@ -131,9 +130,9 @@
|
||||
<div class="input-field"><textarea style="width:300px" id="custom_desc" class="materialize-textarea"
|
||||
placeholder="crwdns2440:0crwdne2440:0..."></textarea></div>
|
||||
<h5>crwdns2426:0crwdne2426:0</h5>
|
||||
<input class="with-gap" name="derection" type="radio" id="dark" value="dark" checked="true" />
|
||||
<input class="with-gap" name="direction" type="radio" id="dark" value="dark" checked="true" />
|
||||
<label for="dark">Dark</label>
|
||||
<input class="with-gap" name="derection" type="radio" id="light" value="light" />
|
||||
<input class="with-gap" name="direction" type="radio" id="light" value="light" />
|
||||
<label for="light">Light</label>
|
||||
<div id="pickers">
|
||||
<div>
|
||||
@@ -158,11 +157,11 @@
|
||||
<input type="hidden" id="color-picker2_value">
|
||||
</div>
|
||||
<div>
|
||||
<h5>Accent</h5>crwdns2434:0crwdne2434:0
|
||||
<div id="color-picker3-wrap">
|
||||
<div class="color-picker" id="color-picker3"></div>
|
||||
</div>
|
||||
<input type="hidden" id="color-picker3_value">
|
||||
<h5>Accent</h5>crwdns2434:0crwdne2434:0
|
||||
<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()">crwdns528:0crwdne528:0</button> <button
|
||||
@@ -184,8 +183,8 @@
|
||||
<div id="tlView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if=item.text.desc>
|
||||
<templete v-html=item.text.desc></templete><br>
|
||||
<template v-if="item.text.desc">
|
||||
<templete v-html="item.text.desc"></templete><br>
|
||||
</template>
|
||||
<template v-if="item.checkbox">
|
||||
<template v-for="(check, j) in item.text.checkbox">
|
||||
@@ -210,6 +209,11 @@
|
||||
</template><br>
|
||||
</template>
|
||||
</div>
|
||||
<h5>@@customSound@@</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>
|
||||
@@ -220,8 +224,8 @@
|
||||
<div id="postView">
|
||||
<template v-for="(item, i) in config">
|
||||
<h5>{{item.text.head}}</h5>
|
||||
<template v-if=item.text.desc>
|
||||
<templete v-html=item.text.desc></templete><br>
|
||||
<template v-if="item.text.desc">
|
||||
<templete v-html="item.text.desc"></templete><br>
|
||||
</template>
|
||||
<template v-if="item.checkbox">
|
||||
<template v-for="(check, j) in item.text.checkbox">
|
||||
@@ -403,8 +407,6 @@
|
||||
class="material-icons left">info</i>crwdns662:0crwdne662:0</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>crwdns663:0crwdne663:0</a>
|
||||
<a href="https://enty.jp/Cutls" class="btn waves-effect purple lighten-2" style="width:100%; max-width:500px;"><i
|
||||
class="material-icons left">trending_up</i>crwdns664:0crwdne664:0(Enty)</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>crwdns664:0crwdne664:0(Pixiv FANBOX)</a>
|
||||
<a href="https://docs.thedesk.top" class="btn waves-effect blue darken-2" style="width:100%; max-width:500px;"><i
|
||||
@@ -420,7 +422,7 @@
|
||||
<a onclick="localStorage.removeItem('new-ver-skip'); location.href='index.html';"
|
||||
class="pointer">crwdns667:0crwdne667:0</a><br>
|
||||
<a href="oss.html">OSS Licensecrwdns668:0crwdne668:0</a><br>
|
||||
<span style="font-family:Open Sans;">Copyright © TheDesk 2018 All Rights Reserved.
|
||||
<span style="font-family:Open Sans;">Copyright © Cutls P 2018 All Rights Reserved.
|
||||
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>
|
||||
|
@@ -7,6 +7,27 @@ var yesno=[
|
||||
value:"no"
|
||||
}
|
||||
];
|
||||
var sound=[
|
||||
{
|
||||
text:"@@none@@",
|
||||
value:"none"
|
||||
},{
|
||||
text:"@@default@@",
|
||||
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",
|
||||
@@ -286,6 +307,46 @@ var tlConstruction=[
|
||||
desc:"",
|
||||
checkbox:yesno
|
||||
}
|
||||
},{
|
||||
id:"replySound",
|
||||
storage:"replySound",
|
||||
checkbox:true,
|
||||
setValue:"none",
|
||||
text:{
|
||||
head:"@@replySound@@",
|
||||
desc:"",
|
||||
checkbox:sound
|
||||
}
|
||||
},{
|
||||
id:"favSound",
|
||||
storage:"favSound",
|
||||
checkbox:true,
|
||||
setValue:"none",
|
||||
text:{
|
||||
head:"@@favSound@@",
|
||||
desc:"",
|
||||
checkbox:sound
|
||||
}
|
||||
},{
|
||||
id:"btSound",
|
||||
storage:"btSound",
|
||||
checkbox:true,
|
||||
setValue:"none",
|
||||
text:{
|
||||
head:"@@btSound@@",
|
||||
desc:"",
|
||||
checkbox:sound
|
||||
}
|
||||
},{
|
||||
id:"followSound",
|
||||
storage:"followSound",
|
||||
checkbox:true,
|
||||
setValue:"none",
|
||||
text:{
|
||||
head:"@@followSound@@",
|
||||
desc:"",
|
||||
checkbox:sound
|
||||
}
|
||||
}
|
||||
];
|
||||
var postConstruction=[
|
||||
|
@@ -1,5 +1,5 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<html lang="ps">
|
||||
<head>
|
||||
<title>Update - TheDesk</title>
|
||||
<link href="../../css/materialize.css" type="text/css" rel="stylesheet">
|
||||
@@ -197,10 +197,24 @@ function verck(){
|
||||
todo(error);
|
||||
console.error(error);
|
||||
}).then(function(json) {
|
||||
console.log(json);
|
||||
$("#ver").text(json.desk);
|
||||
localStorage.setItem("next-ver",json.desk);
|
||||
$("#det").html(json.detail);
|
||||
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="ps";
|
||||
if(lang=="ja"){
|
||||
$("#det").html(json.detail);
|
||||
}else{
|
||||
$("#det").html(json.detail_en);
|
||||
}
|
||||
|
||||
$("#now").text(localStorage.getItem("ver"));
|
||||
|
||||
});
|
||||
|
Reference in New Issue
Block a user