TheDesk Airi (ver.8)
This commit is contained in:
parent
d6acb0bebc
commit
a84a1da29b
16
LATEST.md
16
LATEST.md
|
@ -1,19 +1,19 @@
|
|||
## For Astarte(kirishima.cloud), My Primary Instance
|
||||
|
||||
TheDesk :thedesk: Airi (ver.7)
|
||||
TheDesk :thedesk: Airi (ver.8)
|
||||
・バグフィックス
|
||||
・カスタム絵文字検索
|
||||
・Pleroma暫定対応(投稿・表示のみ。)
|
||||
・個別インスタンスの対応
|
||||
・UI改善
|
||||
・キーボードショートカット追加・変更
|
||||
・他垢からふぁぼ・フォローなどが可能に
|
||||
https://thedesk.top
|
||||
:github: https://github.com/cutls/TheDesk #Desk #DeskUpdate
|
||||
|
||||
## For Vanilla Instances
|
||||
|
||||
Windows/LinuxクライアントTheDesk Airi (ver.7)リリース
|
||||
Windows/LinuxクライアントTheDesk Airi (ver.8)リリース
|
||||
・バグフィックス
|
||||
・カスタム絵文字検索
|
||||
・Pleroma暫定対応(投稿・表示のみ。)
|
||||
・個別インスタンスの対応
|
||||
・UI改善
|
||||
・キーボードショートカット追加・変更
|
||||
・他垢からふぁぼ・フォローなどが可能に
|
||||
TheDeskはマルチカラム,マルチアカウントはもちろんのこと,なにかとマストドンライフをシンプルに効率化するクライアントです。
|
||||
https://thedesk.top
|
|
@ -5,6 +5,7 @@
|
|||
</head>
|
||||
<body>
|
||||
<h1>503 Service Unavailable</h1>
|
||||
TheDeskは2017年12月30日 23:59に終了したCroudiaというSNSのクライアントから始まりました。<br>
|
||||
<u>4月1日</u>よりTheDeskはCroudiaクライアントとして生まれ変わりました。<br><br><br><br>
|
||||
TheDeskは2017年12月30日 23:59に終了したCroudiaというSNSのクライアントから始まりました。(Since 2016-5 as CroudiaDeck)<br>
|
||||
<a onclick="localStorage.setItem('sincere','true'); location.href='index.html';" style="cursor:pointer;">TheDeskに戻る</a>
|
||||
</body>
|
|
@ -27,7 +27,7 @@
|
|||
<script type="text/javascript" src="./js/ui/jquery-ui.min.js"></script>
|
||||
<script>
|
||||
//必ずアプデ時のremove instance消して!
|
||||
var ver="Airi (ver.7)";
|
||||
var ver="Airi (ver.8)";
|
||||
//betaを入れるとバージョンチェックしない
|
||||
//var ver="beta";
|
||||
var acct_id=0;
|
||||
|
@ -166,7 +166,7 @@ var tlid=0;
|
|||
</div>
|
||||
<div class="small-menu">
|
||||
<a href="setting.html" class="nex waves-effect">
|
||||
<i class="material-icons nex" title="設定" data-trans-title="setting">settings</i>
|
||||
<i class="material-icons nex" title="設定(Ctrl+Shift+S)" data-trans-title="setting">settings</i>
|
||||
<span class="side-label" data-trans="setting">設定</span>
|
||||
</a>
|
||||
</div>
|
||||
|
@ -190,7 +190,7 @@ var tlid=0;
|
|||
</div>
|
||||
<div class="small-menu">
|
||||
<a href="acct.html" class="nex waves-effect">
|
||||
<i class="material-icons" title="アカウントマネージャー" data-trans-title="manager">account_circle</i>
|
||||
<i class="material-icons" title="アカウントマネージャー(Ctrl+Shift+M)" data-trans-title="manager">account_circle</i>
|
||||
<span class="side-label" data-trans="manager_short">管理</span>
|
||||
</a>
|
||||
</div>
|
||||
|
@ -224,7 +224,7 @@ var tlid=0;
|
|||
</span>
|
||||
<br>
|
||||
<a id="clear" class="setting nex waves-effect">
|
||||
<i class="material-icons nex mize" title="トゥートボックスのクリア" data-trans-title="post_box_clear">clear</i>
|
||||
<i class="material-icons nex mize" title="トゥートボックスのクリア(Ctrl+Shit+C)" data-trans-title="post_box_clear">clear</i>
|
||||
</a>
|
||||
<a onclick="zoomBox()" class="setting nex waves-effect">
|
||||
<i class="material-icons nex mize" title="ボックスの拡大・縮小(E)" data-trans-title="post_box_zoom">zoom_out_map</i>
|
||||
|
@ -236,7 +236,7 @@ var tlid=0;
|
|||
</div>
|
||||
<span id="radio-sta" class="radio"></span>
|
||||
<div id="radio-view" class="hide radio mize">
|
||||
<a onclick="nowplaying()" class="pointer"><i class="fa fa-spotify"></i>NowPlaying</a>
|
||||
<a onclick="nowplaying()" class="pointer" title="Ctrl+Shift+N"><i class="fa fa-spotify"></i>NowPlaying</a>
|
||||
<span class="cbadge pointer waves-effect" onclick="Rplay('https://listen.moe/stream','Listen.moe')" data-name="Listen.moe">Listen.moe</span>
|
||||
<span class="cbadge pointer waves-effect" onclick="Rplay('http://itori.animenfo.com:443/;','AnimeNfo Radio')" data-name="AnimeNfo Radio">AnimeNfo Radio</span>
|
||||
<span class="cbadge pointer waves-effect" onclick="Rplay('http://hyades.shoutca.st:8043/stream','LoFi hip hop Radio')" data-name="LoFi hip hop Radio">LoFi hip hop Radio</span>
|
||||
|
@ -263,7 +263,7 @@ var tlid=0;
|
|||
</div>
|
||||
<div class="mize" style="float:left;">
|
||||
<a onclick="profShow()" style="vertical-align:-1.5rem;">
|
||||
<i class="material-icons nex pointer mize waves-effect" title="選択中のプロフィール表示" data-trans-title="post_box_prof">account_circle</i>
|
||||
<i class="material-icons nex pointer mize waves-effect" title="選択中のプロフィール表示(Ctrl+Shift+P)" data-trans-title="post_box_prof">account_circle</i>
|
||||
</a>
|
||||
</div>
|
||||
<!--Markdown-->
|
||||
|
@ -320,6 +320,7 @@ var tlid=0;
|
|||
<span class="sml gray pointer more-show anti-markdown hide mize">
|
||||
<a onclick="mdToggle()">Markdownエディタを表示</a>
|
||||
</span>
|
||||
|
||||
<br>
|
||||
<span id="suggest"></span>
|
||||
</div>
|
||||
|
@ -483,6 +484,21 @@ var tlid=0;
|
|||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
他のアカウントを使用(<i class="fa fa-retweet"></i>/<i class="fa fa-star"></i>の解除はできません)<br>
|
||||
<div class="row">
|
||||
<div class="col s4">
|
||||
<select id="status-acct-sel" class="acct-sel"></select>
|
||||
</div>
|
||||
<div class="col s2">
|
||||
<button class="dropdown-button btn waves-effect" style="width:100%;" onclick="staEx('reply')"><i class="fa fa-share left"></i>返信</button>
|
||||
</div>
|
||||
<div class="col s2">
|
||||
<button class="dropdown-button btn waves-effect indigo" style="width:100%;" onclick="staEx('rt')"><i class="fa fa-retweet left"></i>ブースト</button>
|
||||
</div>
|
||||
<div class="col s3">
|
||||
<button class="dropdown-button btn waves-effect orange" style="width:100%;" onclick="staEx('fav')"><i class="fa fa-star left"></i>お気に入り登録</button>
|
||||
</div>
|
||||
</div>
|
||||
<div id="toot-tools">
|
||||
</div>
|
||||
<div id="toot-after">
|
||||
|
@ -526,31 +542,34 @@ var tlid=0;
|
|||
<div class="col s12" id="my-data-nav">
|
||||
<ul class="custom-tabs transparent">
|
||||
<li class="custom-tab col my-data-width active-back">
|
||||
<a go="#his-tl">Timeline</a>
|
||||
<a go="#his-tl">タイムライン</a>
|
||||
</li>
|
||||
<li class="custom-tab col my-data-width">
|
||||
<a go="#his-follow-list">Follows</a>
|
||||
<a go="#his-follow-list">フォロー</a>
|
||||
</li>
|
||||
<li class="custom-tab col my-data-width">
|
||||
<a go="#his-follower-list">Followers</a>
|
||||
<a go="#his-follower-list">フォロワー</a>
|
||||
</li>
|
||||
<li class="custom-tab col my-data-width only-his-data">
|
||||
<a go="#his-action">他アカウントで操作</a>
|
||||
</li>
|
||||
<li class="custom-tab col my-data-width only-my-data">
|
||||
<a go="#his-fav-list">Favorites</a>
|
||||
<a go="#his-fav-list">お気に入り登録</a>
|
||||
</li>
|
||||
<li class="custom-tab col my-data-width only-my-data">
|
||||
<a go="#his-blocking-list">Blocking</a>
|
||||
<a go="#his-blocking-list">ブロック</a>
|
||||
</li>
|
||||
<li class="custom-tab col my-data-width only-my-data">
|
||||
<a go="#his-muting-list">Muting</a>
|
||||
<a go="#his-muting-list">ミュート</a>
|
||||
</li>
|
||||
<li class="custom-tab col my-data-width only-my-data">
|
||||
<a go="#his-domain-list">Domain Blocking</a>
|
||||
<a go="#his-domain-list">ドメインブロック</a>
|
||||
</li>
|
||||
<li class="custom-tab col my-data-width only-my-data">
|
||||
<a go="#his-prof-list">Edit Profile</a>
|
||||
<a go="#his-prof-list">プロフィール編集</a>
|
||||
</li>
|
||||
<li class="custom-tab col my-data-width only-my-data">
|
||||
<a go="#his-request-list">Follow Request</a>
|
||||
<a go="#his-request-list">フォローリクエスト</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
@ -564,11 +583,16 @@ var tlid=0;
|
|||
</div>
|
||||
<button class="btn waves-effect " style="width:100%; padding:0;" onclick="flw('--now','more')">もっと</button>
|
||||
</div>
|
||||
<div id="his-follower-list" class="col s12 tab-content">
|
||||
<div id="his-follower-list" class="col s12 tab-content">
|
||||
<div id="his-follower-list-contents" class="cont-series">
|
||||
</div>
|
||||
<button class="btn waves-effect " style="width:100%; padding:0;" onclick="fer('--now','more')">もっと</button>
|
||||
</div>
|
||||
<div id="his-action" class="col s12 tab-content">
|
||||
他のアカウントを使用してフォロー(解除はできません)<br>
|
||||
<div style="max-width:500px;"><select id="user-acct-sel" class="acct-sel"></select></div>で
|
||||
<a href="#!" class="waves-effect btn" onclick="follow('selector','true')">フォロー</a>
|
||||
</div>
|
||||
<div id="his-fav-list" class="col s12 tab-content">
|
||||
<div id="his-fav-list-contents" class="cont-series">
|
||||
</div>
|
||||
|
|
|
@ -42,6 +42,20 @@ $(function($) {
|
|||
}
|
||||
}
|
||||
}
|
||||
//Ctrl+Sift+C:全消し
|
||||
if (event.ctrlKey && event.shiftKey) {
|
||||
if (e.keyCode === 67) {
|
||||
clear();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
//Ctrl+Sift+N:NowPlaying
|
||||
if (event.ctrlKey && event.shiftKey) {
|
||||
if (e.keyCode === 78) {
|
||||
nowplaying()
|
||||
return false;
|
||||
}
|
||||
}
|
||||
//input/textareaにフォーカスなし時
|
||||
if (!hasFocus && !hasFocus2) {
|
||||
//X:開閉
|
||||
|
@ -74,10 +88,24 @@ $(function($) {
|
|||
return false;
|
||||
}
|
||||
}
|
||||
//Sift+C:全消し
|
||||
if (event.shiftKey) {
|
||||
if (e.keyCode === 67) {
|
||||
clear();
|
||||
//Ctrl+Sift+S:設定
|
||||
if (event.ctrlKey && event.shiftKey) {
|
||||
if (e.keyCode === 83) {
|
||||
location.href = "setting.html";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
//Ctrl+Sift+M:アカマネ
|
||||
if (event.ctrlKey && event.shiftKey) {
|
||||
if (e.keyCode === 77) {
|
||||
location.href = "acct.html";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
//Ctrl+Sift+P:プロフ
|
||||
if (event.ctrlKey && event.shiftKey) {
|
||||
if (e.keyCode === 80) {
|
||||
profShow()
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -377,9 +377,10 @@ function multi() {
|
|||
'" class="left circle" ' + sel + '>' + acct.user + '@' + acct.domain +
|
||||
'</option>';
|
||||
$(".acct-sel").append(templete);
|
||||
$("#src-acct-sel").append('<option value="tootsearch">Tootsearch</option>');
|
||||
$('select').material_select('update');
|
||||
|
||||
});
|
||||
$("#src-acct-sel").append('<option value="tootsearch">Tootsearch</option>');
|
||||
$('select').material_select('update');
|
||||
}
|
||||
|
||||
//バージョンエンコ
|
||||
|
|
|
@ -93,4 +93,4 @@ function nano(){
|
|||
var electron = require("electron");
|
||||
var ipc = electron.ipcRenderer;
|
||||
ipc.send('nano', "");
|
||||
}
|
||||
}
|
|
@ -16,9 +16,9 @@ function mdCheck(){
|
|||
}
|
||||
var domain = localStorage.getItem("domain_" + acct_id);
|
||||
if(domain=="mstdn.y-zu.org"){
|
||||
//$("#private-button").text("限定公開(Yづドン!)");
|
||||
$("#private-button").text("限定公開(Yづドン!)");
|
||||
}else{
|
||||
//$("#private-button").text("非公開(Private)");
|
||||
$("#private-button").text("非公開(Private)");
|
||||
}
|
||||
}
|
||||
//BOXのトグルボタン
|
||||
|
|
|
@ -26,7 +26,7 @@ function post() {
|
|||
var nsfw = "false";
|
||||
}
|
||||
var vis = $("#vis").text();
|
||||
if(vis!="public"){
|
||||
if(vis!="inherit"){
|
||||
toot.visibility=vis;
|
||||
}
|
||||
if ($("#cw").hasClass("cw-avail")) {
|
||||
|
|
|
@ -9,4 +9,11 @@ function re(id,at,acct_id,mode){
|
|||
$('select').material_select();
|
||||
$("#textarea").attr("placeholder","返信モードです。クリアするときはShift+Cを押してください。");
|
||||
vis(mode);
|
||||
}
|
||||
function reEx(id){
|
||||
$('#tootmodal').modal('close');
|
||||
var at=$("#tootmodal").attr("data-user");
|
||||
var acct_id = $("#status-acct-sel").val();
|
||||
var mode=$("#tootmodal .vis-data").attr("data-vis");
|
||||
re(id,at,acct_id,mode);
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
//お気に入り登録やブースト等、フォローやブロック等
|
||||
//お気に入り登録
|
||||
function fav(id, acct_id) {
|
||||
function fav(id, acct_id, remote) {
|
||||
if ($("#pub_" + id).hasClass("faved")) {
|
||||
var flag = "unfavourite";
|
||||
} else {
|
||||
|
@ -23,6 +23,7 @@ function fav(id, acct_id) {
|
|||
console.error(error);
|
||||
}).then(function(json) {
|
||||
console.log(json);
|
||||
if(!remote){
|
||||
//APIのふぁぼカウントがおかしい
|
||||
if ($("[toot-id=" + id + "] .fav_ct").text() == json.favourites_count){
|
||||
if(flag=="unfavourite"){
|
||||
|
@ -46,11 +47,14 @@ function fav(id, acct_id) {
|
|||
$("[toot-id=" + id +"]").addClass("faved");
|
||||
$(".fav_" + id).addClass("yellow-text");
|
||||
}
|
||||
}else{
|
||||
Materialize.toast("お気に入り登録しました。インスタンスが違うときは時間がかかる場合があります。", 1000);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//ブースト
|
||||
function rt(id, acct_id) {
|
||||
function rt(id, acct_id, remote) {
|
||||
if ($("#pub_" + id).hasClass("rted")) {
|
||||
var flag = "unreblog";
|
||||
} else {
|
||||
|
@ -73,6 +77,7 @@ function rt(id, acct_id) {
|
|||
console.error(error);
|
||||
}).then(function(json) {
|
||||
console.log(json);
|
||||
if(!remote){
|
||||
$("[toot-id=" + id + "] .fav_ct").text(json.favourites_count);
|
||||
if (!json.reblog) {
|
||||
if(flag=="unreblog"){
|
||||
|
@ -92,21 +97,28 @@ function rt(id, acct_id) {
|
|||
$("[toot-id=" + id +"]").addClass("rted");
|
||||
$(".rt_" + id).addClass("teal-text");
|
||||
}
|
||||
}else{
|
||||
Materialize.toast("ブーストしました。インスタンスが違うときは時間がかかる場合があります。", 1000);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//フォロー
|
||||
function follow(acct_id) {
|
||||
if (!acct_id) {
|
||||
function follow(acct_id,remote) {
|
||||
if (!acct_id && acct_id!="selector") {
|
||||
var acct_id = $('#his-data').attr("use-acct");
|
||||
}else if (acct_id=="selector") {
|
||||
var acct_id = $("#user-acct-sel").val();
|
||||
}
|
||||
var id = $("#his-data").attr("user-id");
|
||||
var remote = $("#his-data").attr("remote");
|
||||
if ($("#his-data").hasClass("following")) {
|
||||
if (!remote && $("#his-data").hasClass("following")) {
|
||||
var flag = "unfollow";
|
||||
} else {
|
||||
var flag = "follow";
|
||||
}
|
||||
var id = $("#his-data").attr("user-id");
|
||||
if(!remote){
|
||||
var remote = $("#his-data").attr("remote");
|
||||
}
|
||||
var domain = localStorage.getItem("domain_" + acct_id);
|
||||
var at = localStorage.getItem(domain + "_at");
|
||||
if(remote=="true" && flag=="follow"){
|
||||
|
@ -352,4 +364,35 @@ function empUser(){
|
|||
function tootUriCopy(url){
|
||||
execCopy(url);
|
||||
Materialize.toast("トゥートURLをコピーしました", 1500);
|
||||
}
|
||||
|
||||
//他のアカウントで…
|
||||
function staEx(mode){
|
||||
var url=$("#tootmodal").attr("data-url");
|
||||
var acct_id = $("#status-acct-sel").val();
|
||||
var domain = localStorage.getItem("domain_" + acct_id);
|
||||
var at = localStorage.getItem(domain + "_at");
|
||||
var start = "https://" + domain + "/api/v1/search?resolve=true&q="+url
|
||||
fetch(start, {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'content-type': 'application/json',
|
||||
'Authorization': 'Bearer ' + at
|
||||
}
|
||||
}).then(function(response) {
|
||||
return response.json();
|
||||
}).catch(function(error) {
|
||||
todo(error);
|
||||
console.error(error);
|
||||
}).then(function(json) {
|
||||
var id=json.statuses[0].id;
|
||||
if(mode=="rt"){
|
||||
rt(id, acct_id, 'remote')
|
||||
}else if(mode=="fav"){
|
||||
fav(id, acct_id, 'remote')
|
||||
}else if(mode=="reply"){
|
||||
reEx(id)
|
||||
}
|
||||
});
|
||||
return;
|
||||
}
|
|
@ -3,28 +3,6 @@ function details(id, acct_id, tlid) {
|
|||
$(".toot-reset").html("データなし");
|
||||
var html = $("#timeline_"+tlid+" #pub_" + id).html();
|
||||
$("#toot-this").html(html);
|
||||
if(!$("#timeline_"+tlid+" #pub_" + id).length){
|
||||
console.log("API Using");
|
||||
var domain = localStorage.getItem("domain_" + acct_id);
|
||||
var at = localStorage.getItem(domain + "_at");
|
||||
var start = "https://" + domain + "/api/v1/statuses/" + id;
|
||||
fetch(start, {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'content-type': 'application/json',
|
||||
'Authorization': 'Bearer ' + at
|
||||
},
|
||||
}).then(function(response) {
|
||||
return response.json();
|
||||
}).catch(function(error) {
|
||||
todo(error);
|
||||
console.error(error);
|
||||
}).then(function(json) {
|
||||
var html = parse([json]);
|
||||
$("#toot-this").html(html);
|
||||
jQuery("time.timeago").timeago();
|
||||
});
|
||||
}
|
||||
$('#tootmodal').modal('open');
|
||||
var domain = localStorage.getItem("domain_" + acct_id);
|
||||
var at = localStorage.getItem(domain + "_at");
|
||||
|
@ -41,10 +19,20 @@ function details(id, acct_id, tlid) {
|
|||
todo(error);
|
||||
console.error(error);
|
||||
}).then(function(json) {
|
||||
if(!$("#timeline_"+tlid+" #pub_" + id).length){
|
||||
var html = parse([json]);
|
||||
$("#toot-this").html(html);
|
||||
jQuery("time.timeago").timeago();
|
||||
}
|
||||
$("#toot-this .fav_ct").text(json.favourites_count);
|
||||
$("#toot-this .rt_ct").text(json.reblogs_count);
|
||||
$("#tootmodal").attr("data-url",json.url);
|
||||
$("#tootmodal").attr("data-id",json.id);
|
||||
if(json.account.acct==json.account.username){
|
||||
$("#tootmodal").attr("data-user",json.account.acct+"@"+domain);
|
||||
}else{
|
||||
$("#tootmodal").attr("data-user",json.account.acct);
|
||||
}
|
||||
if (json.in_reply_to_id) {
|
||||
replyTL(json.in_reply_to_id, acct_id);
|
||||
}
|
||||
|
|
|
@ -306,19 +306,19 @@ function parse(obj, mix, acct_id, tlid, popup) {
|
|||
var visen = toot.visibility;
|
||||
if (visen == "public") {
|
||||
var vis =
|
||||
'<i class="text-darken-3 material-icons gray sml" title="公開">public</i>';
|
||||
'<i class="text-darken-3 material-icons gray sml vis-data" title="公開" data-vis="public">public</i>';
|
||||
var can_rt = "";
|
||||
} else if (visen == "unlisted") {
|
||||
var vis =
|
||||
'<i class="text-darken-3 material-icons blue-text" title="未収載">lock_open</i>';
|
||||
'<i class="text-darken-3 material-icons blue-text vis-data" title="未収載" data-vis="unlisted">lock_open</i>';
|
||||
var can_rt = "";
|
||||
} else if (visen == "plivate") {
|
||||
var vis =
|
||||
'<i class="text-darken-3 material-icons orange-text" title="非公開">lock</i>';
|
||||
'<i class="text-darken-3 material-icons orange-text vis-data" title="非公開" data-vis="private">lock</i>';
|
||||
var can_rt = "hide";
|
||||
} else if (visen == "direct") {
|
||||
var vis =
|
||||
'<i class="text-darken-3 material-icons red-text" title="ダイレクト">mail</i>';
|
||||
'<i class="text-darken-3 material-icons red-text vis-data" title="ダイレクト" data-vis="direct">mail</i>';
|
||||
var can_rt = "hide";
|
||||
}
|
||||
if (toot.account.acct == localStorage.getItem("user_" + acct_id)) {
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
//タグ表示
|
||||
if(location.search){
|
||||
var m = location.search.match(/\?mode=([a-zA-Z-0-9]+)\&code=(.+)/);
|
||||
var mode=m[1];
|
||||
var codex=m[2];
|
||||
if(mode=="tag"){
|
||||
tl('tag',decodeURI(codex),0,'add');
|
||||
}
|
||||
}
|
||||
//よく使うタグ
|
||||
function tagShow(tag){
|
||||
$("[data-tag="+tag+"]").toggleClass("hide");
|
||||
|
|
|
@ -87,7 +87,7 @@
|
|||
')" class="setting nex" title="このアカウントの'+unique_notf+'"><i class="material-icons waves-effect nex notf-icon_' +
|
||||
acct.domain + '">notifications</i></a></div>'+
|
||||
'<div class="area-a2"><a onclick="removeColumn(' + key +
|
||||
')" class="setting nex"><i class="material-icons waves-effect nex" title="このカラムを削除">remove_circle</i></a></div>'+
|
||||
')" class="setting nex"><i class="material-icons waves-effect nex" title="このカラムを削除">cancel</i></a></div>'+
|
||||
'<div class="area-a3"><a onclick="mediaToggle(' + key +
|
||||
')" class="setting nex"><i class="material-icons waves-effect nex" title="メディアフィルター">perm_media</i><span id="sta-media-' +
|
||||
key + '">On</span></div>'+
|
||||
|
@ -157,6 +157,7 @@
|
|||
var json = JSON.stringify(obj);
|
||||
localStorage.setItem("column", json);
|
||||
parseColumn();
|
||||
sortload()
|
||||
}
|
||||
})
|
||||
}
|
||||
|
|
|
@ -190,7 +190,7 @@ function load() {
|
|||
|
||||
var size = localStorage.getItem("size");
|
||||
if (!size) {
|
||||
var size = "15";
|
||||
var size = "13";
|
||||
}
|
||||
$("#size").val(size);
|
||||
|
||||
|
|
|
@ -10,7 +10,8 @@ function sortload(){
|
|||
if(localStorage.getItem("card_" + key)=="true"){
|
||||
flag="true"
|
||||
}
|
||||
var html='<li class="drag-content" data-id="'+key+'" data-flag="'+flag+'">'+localStorage.getItem("domain_" + acct.domain)+" "+cap(acct.type, acct.data)+' TL</li>';
|
||||
var html='<li class="drag-content" data-id="'+key+'" data-flag="'+flag+'">'+localStorage.getItem("domain_" + acct.type)+localStorage.getItem("domain_" + acct.domain)+" "+cap(acct.type, acct.data)+' TL <a onclick="removeColumn(' + key +
|
||||
')" class="setting nex"><i class="material-icons waves-effect nex" title="このカラムを削除">cancel</i></a></li>';
|
||||
$("#sort").append(html);
|
||||
});
|
||||
drag();
|
||||
|
|
|
@ -6,9 +6,30 @@ if(location.search){
|
|||
var mode=m[1];
|
||||
var codex=m[2];
|
||||
if(mode=="user"){
|
||||
udg(codex,0);
|
||||
udgEx(codex,0);
|
||||
}
|
||||
}
|
||||
function udgEx(user,acct_id){
|
||||
var domain = localStorage.getItem("domain_" + acct_id);
|
||||
var at = localStorage.getItem(domain + "_at");
|
||||
var start = "https://" + domain + "/api/v1/search?resolve=true&q="+user
|
||||
fetch(start, {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'content-type': 'application/json',
|
||||
'Authorization': 'Bearer ' + at
|
||||
}
|
||||
}).then(function(response) {
|
||||
return response.json();
|
||||
}).catch(function(error) {
|
||||
todo(error);
|
||||
console.error(error);
|
||||
}).then(function(json) {
|
||||
var id=json.accounts[0].id;
|
||||
udg(id,0);
|
||||
});
|
||||
return;
|
||||
}
|
||||
function udg(user, acct_id) {
|
||||
reset();
|
||||
if (!user) {
|
||||
|
@ -90,9 +111,11 @@ function udg(user, acct_id) {
|
|||
$("#his-domain-btn").hide();
|
||||
$("#his-emp-btn").hide();
|
||||
$(".only-my-data").show();
|
||||
$(".only-his-data").hide();
|
||||
} else {
|
||||
relations(user, acct_id);
|
||||
$(".only-my-data").hide();
|
||||
$(".only-his-data").show();
|
||||
}
|
||||
}
|
||||
todc();
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "TheDesk",
|
||||
"version": "13.7.0",
|
||||
"version": "13.8.0",
|
||||
"description": "TheDesk on Mastodonはシンプルと多機能を両立したデスクトップ向けクライアントです",
|
||||
"main": "main.js",
|
||||
"scripts": {
|
||||
|
|
|
@ -5,10 +5,7 @@
|
|||
<meta content="width=device-width,initial-scale=1.0" name="viewport">
|
||||
<link href="./css/materialize.css" type="text/css" rel="stylesheet">
|
||||
<link href="./css/master.css" type="text/css" rel="stylesheet">
|
||||
<link href="./css/auth.css" type="text/css" rel="stylesheet">
|
||||
<link href='./css/font-awesome.css' rel='stylesheet' type='text/css'>
|
||||
<link href='./css/tl.css' rel='stylesheet' type='text/css'>
|
||||
<link href='./css/userdata.css' rel='stylesheet' type='text/css'>
|
||||
<link href="https://fonts.googleapis.com/icon?family=Material+Icons|Open+Sans:300" rel="stylesheet">
|
||||
<meta charset="utf-8">
|
||||
</head>
|
||||
|
@ -16,9 +13,6 @@
|
|||
<script type="text/javascript" src="./js/common/jquery.js"></script>
|
||||
<script type="text/javascript" src="./js/platform/first.js"></script>
|
||||
<script type="text/javascript" src="./js/common/materialize.js"></script>
|
||||
<script type="text/javascript" src="./js/ui/tips.js"></script>
|
||||
<script type="text/javascript" src="./js/common/time.js"></script>
|
||||
<script type="text/javascript" src="./js/common/modal.js"></script>
|
||||
<h4>設定</h4>
|
||||
<ul class="collapsible" data-collapsible="accordion">
|
||||
<li>
|
||||
|
@ -204,7 +198,15 @@
|
|||
</li>
|
||||
<li>E:投稿パネルの幅を切り替え
|
||||
</li>
|
||||
<li>Shift+C:入力内容を消す
|
||||
<li>Ctrl+Shift+C:入力内容を消す
|
||||
</li>
|
||||
<li>Ctrl+Shift+S:設定
|
||||
</li>
|
||||
<li>Ctrl+Shift+M:アカウントマネージャー
|
||||
</li>
|
||||
<li>Ctrl+Shift+N:NowPlaying(Spotify)
|
||||
</li>
|
||||
<li>Ctrl+Shift+P:現在選択中のプロフィール
|
||||
</li>
|
||||
<li>←/→:イメージビューワー起動時に画像切り替え
|
||||
</li>
|
||||
|
@ -227,7 +229,7 @@
|
|||
<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://trello.com/b/FZtwd1xx" class="btn waves-effect blue darken-2" style="width:100%; max-width:500px;"><i class="material-icons left">list</i>Trello(今後のToDo)</a>
|
||||
<a href="https://github.com/cutls/TheDesk" class="btn waves-effect black lighten-2" style="width:100%; max-width:500px;"><i class="fa fa-github left"></i>GitHub</a>
|
||||
<a href="index.html?mode=user&code=12336" class="btn waves-effect blue lighten-2" style="width:100%; max-width:500px;"><img src="./img/desk_full.svg" class="left" width="25" style="padding-top:5px;">Developer: Cutls@kirishima.cloud</a>
|
||||
<a href="index.html?mode=user&code=Cutls@kirishima.cloud" class="btn waves-effect blue lighten-2" style="width:100%; max-width:500px;"><img src="./img/desk_full.svg" class="left" width="25" style="padding-top:5px;">Developer: Cutls@kirishima.cloud</a>
|
||||
<br>
|
||||
寿司を投げる<br>
|
||||
<a href="https://osushi.love/Cutls_P" target="_blank">Osushi.love</a>(スマートフォンから)<br>
|
||||
|
@ -235,9 +237,11 @@
|
|||
<span style="font-family:Open Sans;">Copyright © TheDesk on Mastodon 2018 & Cutls.com 2015 All Rights Reserved.
|
||||
<a href="https://github.com/cutls/TheDesk/blob/master/LICENSE.md">TheDesk LICENSE (Latest Ver.)</a>
|
||||
<br>Developer: Cutls P(
|
||||
<a href="index.html?mode=user&code=12336">@Cutls@kirishima.cloud</a>)
|
||||
<a href="index.html?mode=user&code=Cutls@kirishima.cloud">@Cutls@kirishima.cloud</a>)
|
||||
<br>
|
||||
</span>
|
||||
</span><br>
|
||||
TheDeskおよびCutls Pは<a href="https://donken.org/">被災地支援のためのマストドン研究会</a>を応援しています。<br>
|
||||
<a href="index.html?mode=tag&code=被災地支援のためのマストドン研究会">#被災地支援のためのマストドン研究会</a><br>
|
||||
<script type="text/javascript" src="./js/common/about.js"></script>
|
||||
<script type="text/javascript" src="./js/platform/end.js"></script>
|
||||
<script type="text/javascript" src="./js/login/logout.js"></script>
|
||||
|
|
2
ver.json
2
ver.json
|
@ -1 +1 @@
|
|||
{"warn":"これはGCPにアップして下さい!!","warn2":"これはGCPにアップして下さい!!","warn3":"これはGCPにアップして下さい!!","desk":"Airi (ver.7)","date":"2018-03-20","detail":"内部V:13.7.0|バグフィックス,Pleroma暫定対応,カスタム絵文字検索など"}
|
||||
{"warn":"これはGCPにアップして下さい!!","warn2":"これはGCPにアップして下さい!!","warn3":"これはGCPにアップして下さい!!","desk":"Airi (ver.8)","date":"2018-03-20","detail":"内部V:13.8.0|バグフィックス,UI改善,キーボードショートカット追加・変更,他垢からふぁぼ・フォローなど"}
|
Loading…
Reference in New Issue
Block a user