TheDesk Mizuki (ver.1)

This commit is contained in:
cutls 2018-03-31 11:39:06 +09:00
parent e2a1b60d1f
commit ac4ea9fe9f
21 changed files with 1051 additions and 32 deletions

View File

@ -1,22 +1,24 @@
## For Astarte(kirishima.cloud), My Primary Instance ## For Astarte(kirishima.cloud), My Primary Instance
TheDesk :thedesk: Airi (ver.9) TheDesk :thedesk: Mizuki (ver.1)
本文コピー(各TLの公開範囲のボタンをクリック。) トゥート翻訳(By Google翻訳)
絵文字大幅拡充 ネイティブ通知
Local+ TL(ローカルTLに同一インスタンスのリプライやブーストを) faiconピッカー
Glance TL(認証しなくてもローカルTLが見れる) 画像貼り付け
ますとどんちほー(mstdn.kemono-friends.info)に対応 他アカウントでプロフを開く
独自ロケール拡充 誤爆防止措置
ほか ほか
https://thedesk.top https://thedesk.top
:github: https://github.com/cutls/TheDesk #Desk #DeskUpdate :github: https://github.com/cutls/TheDesk #Desk #DeskUpdate
## For Vanilla Instances ## For Vanilla Instances
Windows/LinuxクライアントTheDesk Airi (ver.9)リリース Windows/LinuxクライアントTheDesk Mizuki (ver.1)リリース
・本文コピー ・トゥート翻訳(By Google翻訳)
・絵文字大幅拡充 ・ネイティブ通知
・Local+ TL ・faiconピッカー
・Glance TL ・画像貼り付け
・他アカウントでプロフを開く
・誤爆防止措置
TheDeskはマルチカラムマルチアカウントはもちろんのことなにかとマストドンライフをシンプルに効率化するクライアントです。 TheDeskはマルチカラムマルチアカウントはもちろんのことなにかとマストドンライフをシンプルに効率化するクライアントです。
https://thedesk.top https://thedesk.top

View File

@ -63,7 +63,7 @@
} }
#default-emoji a{ #default-emoji a{
color:white; color:white;
margin-right:5px; margin-right:2px;
} }
/*black theme*/ /*black theme*/

View File

@ -76,7 +76,7 @@ iframe {
flex: 1; flex: 1;
border: thin solid gray; border: thin solid gray;
} }
.box .pin{ .box .pin,#his-data .pin{
display:none; display:none;
} }
.user{ .user{
@ -88,6 +88,9 @@ iframe {
vertical-align: middle; vertical-align: middle;
margin: -3px 0 0; margin: -3px 0 0;
} }
.faicon_FTL{
display:none;
}
.tl-box{ height:calc(100% - 40px); overflow-y:scroll; overflow-x:hidden } .tl-box{ height:calc(100% - 40px); overflow-y:scroll; overflow-x:hidden }
.additional { .additional {
overflow-x: scroll; overflow-x: scroll;

1
app/img/missing.svg Normal file
View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="61.076954mm" height="65.47831mm" viewBox="0 0 216.4144 232.00976"><path d="M211.80734 139.0875c-3.18125 16.36625-28.4925 34.2775-57.5625 37.74875-15.15875 1.80875-30.08375 3.47125-45.99875 2.74125-26.0275-1.1925-46.565-6.2125-46.565-6.2125 0 2.53375.15625 4.94625.46875 7.2025 3.38375 25.68625 25.47 27.225 46.39125 27.9425 21.11625.7225 39.91875-5.20625 39.91875-5.20625l.8675 19.09s-14.77 7.93125-41.08125 9.39c-14.50875.7975-32.52375-.365-53.50625-5.91875C9.23234 213.82 1.40609 165.31125.20859 116.09125c-.365-14.61375-.14-28.39375-.14-39.91875 0-50.33 32.97625-65.0825 32.97625-65.0825C49.67234 3.45375 78.20359.2425 107.86484 0h.72875c29.66125.2425 58.21125 3.45375 74.8375 11.09 0 0 32.975 14.7525 32.975 65.0825 0 0 .41375 37.13375-4.59875 62.915" fill="#bdbdbd"/><path d="M177.50984 80.077v60.94125h-24.14375v-59.15c0-12.46875-5.24625-18.7975-15.74-18.7975-11.6025 0-17.4175 7.5075-17.4175 22.3525v32.37625H96.20734V85.42325c0-14.845-5.81625-22.3525-17.41875-22.3525-10.49375 0-15.74 6.32875-15.74 18.7975v59.15H38.90484V80.077c0-12.455 3.17125-22.3525 9.54125-29.675 6.56875-7.3225 15.17125-11.07625 25.85-11.07625 12.355 0 21.71125 4.74875 27.8975 14.2475l6.01375 10.08125 6.015-10.08125c6.185-9.49875 15.54125-14.2475 27.8975-14.2475 10.6775 0 19.28 3.75375 25.85 11.07625 6.36875 7.3225 9.54 17.22 9.54 29.675" fill="#fff"/></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -26,7 +26,7 @@
<script type="text/javascript" src="./js/ui/jquery-ui.min.js"></script> <script type="text/javascript" src="./js/ui/jquery-ui.min.js"></script>
<script> <script>
//必ずアプデ時のremove instance消して //必ずアプデ時のremove instance消して
var ver="Airi (ver.9)"; var ver="Mizuki (ver.1)";
//betaを入れるとバージョンチェックしない //betaを入れるとバージョンチェックしない
//var ver="beta"; //var ver="beta";
var acct_id=0; var acct_id=0;
@ -240,8 +240,8 @@ var tlid=0;
<select id="post-acct-sel" class="acct-sel" onchange="mdCheck()"></select> <select id="post-acct-sel" class="acct-sel" onchange="mdCheck()"></select>
</div> </div>
<div class="mize" style="float:left;"> <div class="mize" style="float:left;">
<a onclick="profShow()" style="vertical-align:-1.5rem;"> <a onclick="profShow()" style="vertical-align:-2.5rem;" class="pointer">
<i class="material-icons nex pointer mize waves-effect" title="選択中のプロフィール表示(Ctrl+Shift+P)" data-trans-title="post_box_prof">account_circle</i> <img src="" id="acct-sel-prof" title="選択中のプロフィール表示(Ctrl+Shift+P)" data-trans-title="post_box_prof" width="24px">
</a> </a>
</div> </div>
<!--Markdown--> <!--Markdown-->
@ -367,7 +367,7 @@ var tlid=0;
</button> </button>
</div> </div>
<div id="default-emoji"> <div id="default-emoji">
<span id="now-emoji"></span>一覧を表示中<br><span class="gray sml">一部デフォルト絵文字は入力・描画できません。</span> <span id="now-emoji"></span>一覧を表示中<br><span class="gray sml">一部デフォルト絵文字は入力・描画できません。(国旗系など)</span>
<br> <br>
<a onclick="customEmoji()" class="pointer waves-effect" title="カスタム絵文字"> <a onclick="customEmoji()" class="pointer waves-effect" title="カスタム絵文字">
<i class="material-icons">add</i> <i class="material-icons">add</i>
@ -396,6 +396,9 @@ var tlid=0;
<a onclick="defaultEmoji('flag')" class="pointer waves-effect" title="国旗"> <a onclick="defaultEmoji('flag')" class="pointer waves-effect" title="国旗">
<i class="material-icons">flag</i> <i class="material-icons">flag</i>
</a> </a>
<a onclick="faicon()" class="pointer waves-effect" title="faicon" id="faicon-btn">
<i class="fa fa-fort-awesome"></i>
</a>
</div> </div>
</div> </div>
</div> </div>
@ -569,7 +572,9 @@ var tlid=0;
<div id="his-action" class="col s12 tab-content"> <div id="his-action" class="col s12 tab-content">
他のアカウントを使用してフォロー(解除はできません)<br> 他のアカウントを使用してフォロー(解除はできません)<br>
<div style="max-width:500px;"><select id="user-acct-sel" class="acct-sel"></select></div> <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> <a href="#!" class="waves-effect btn" onclick="follow('selector','true')">フォロー</a><br>
または<br>
<a href="#!" class="waves-effect btn" onclick="udgEx('selector', 'selector')">プロフを開く</a><br>
</div> </div>
<div id="his-fav-list" class="col s12 tab-content"> <div id="his-fav-list" class="col s12 tab-content">
<div id="his-fav-list-contents" class="cont-series"> <div id="his-fav-list-contents" class="cont-series">

View File

@ -50,4 +50,17 @@ function defEmoji(target){
console.log(emoji); console.log(emoji);
$("#textarea").val(newt); $("#textarea").val(newt);
$("#textarea").focus(); $("#textarea").focus();
}
function faicon(){
var json=faicons;
console.log(json);
var emojis="";
Object.keys(json).forEach(function(key) {
var emoji = json[key];
var eje = emoji.replace( /fa-/g , "" ) ;
emojis = emojis + '<a onclick="emojiInsert(\'[faicon]'+eje+'[/faicon]\')" class="pointer white-text" style="font-size:24px"><i class="fa '+emoji+'"></i></a>';
});
$("#emoji-list").html(emojis);
$("#now-emoji").text("faicon");
$(".emoji-control").addClass("hide");
} }

View File

@ -1493,3 +1493,791 @@ var symbol=[
{shortcode:"male_sign",css:"2.08333% 39.5833%"}, {shortcode:"male_sign",css:"2.08333% 39.5833%"},
{shortcode:"staff_of_aesculapius",css:"2.08333% 87.5%"} {shortcode:"staff_of_aesculapius",css:"2.08333% 87.5%"}
]; ];
var faicons=[
"fa-500px",
"fa-address-book",
"fa-address-book-o",
"fa-address-card",
"fa-address-card-o",
"fa-adjust",
"fa-adn",
"fa-align-center",
"fa-align-justify",
"fa-align-left",
"fa-align-right",
"fa-amazon",
"fa-ambulance",
"fa-american-sign-language-interpreting",
"fa-anchor",
"fa-android",
"fa-angellist",
"fa-angle-double-down",
"fa-angle-double-left",
"fa-angle-double-right",
"fa-angle-double-up",
"fa-angle-down",
"fa-angle-left",
"fa-angle-right",
"fa-angle-up",
"fa-apple",
"fa-archive",
"fa-area-chart",
"fa-arrow-circle-down",
"fa-arrow-circle-left",
"fa-arrow-circle-o-down",
"fa-arrow-circle-o-left",
"fa-arrow-circle-o-right",
"fa-arrow-circle-o-up",
"fa-arrow-circle-right",
"fa-arrow-circle-up",
"fa-arrow-down",
"fa-arrow-left",
"fa-arrow-right",
"fa-arrow-up",
"fa-arrows",
"fa-arrows-alt",
"fa-arrows-h",
"fa-arrows-v",
"fa-asl-interpreting",
"fa-assistive-listening-systems",
"fa-asterisk",
"fa-at",
"fa-audio-description",
"fa-automobile",
"fa-backward",
"fa-balance-scale",
"fa-ban",
"fa-bandcamp",
"fa-bank",
"fa-bar-chart",
"fa-bar-chart-o",
"fa-barcode",
"fa-bars",
"fa-bath",
"fa-bathtub",
"fa-battery",
"fa-battery-0",
"fa-battery-1",
"fa-battery-2",
"fa-battery-3",
"fa-battery-4",
"fa-battery-empty",
"fa-battery-full",
"fa-battery-half",
"fa-battery-quarter",
"fa-battery-three-quarters",
"fa-bed",
"fa-beer",
"fa-behance",
"fa-behance-square",
"fa-bell",
"fa-bell-o",
"fa-bell-slash",
"fa-bell-slash-o",
"fa-bicycle",
"fa-binoculars",
"fa-birthday-cake",
"fa-bitbucket",
"fa-bitbucket-square",
"fa-bitcoin",
"fa-black-tie",
"fa-blind",
"fa-bluetooth",
"fa-bluetooth-b",
"fa-bold",
"fa-bolt",
"fa-bomb",
"fa-book",
"fa-bookmark",
"fa-bookmark-o",
"fa-braille",
"fa-briefcase",
"fa-btc",
"fa-bug",
"fa-building",
"fa-building-o",
"fa-bullhorn",
"fa-bullseye",
"fa-bus",
"fa-buysellads",
"fa-cab",
"fa-calculator",
"fa-calendar",
"fa-calendar-check-o",
"fa-calendar-minus-o",
"fa-calendar-o",
"fa-calendar-plus-o",
"fa-calendar-times-o",
"fa-camera",
"fa-camera-retro",
"fa-car",
"fa-caret-down",
"fa-caret-left",
"fa-caret-right",
"fa-caret-square-o-down",
"fa-caret-square-o-left",
"fa-caret-square-o-right",
"fa-caret-square-o-up",
"fa-caret-up",
"fa-cart-arrow-down",
"fa-cart-plus",
"fa-cc",
"fa-cc-amex",
"fa-cc-diners-club",
"fa-cc-discover",
"fa-cc-jcb",
"fa-cc-mastercard",
"fa-cc-paypal",
"fa-cc-stripe",
"fa-cc-visa",
"fa-certificate",
"fa-chain",
"fa-chain-broken",
"fa-check",
"fa-check-circle",
"fa-check-circle-o",
"fa-check-square",
"fa-check-square-o",
"fa-chevron-circle-down",
"fa-chevron-circle-left",
"fa-chevron-circle-right",
"fa-chevron-circle-up",
"fa-chevron-down",
"fa-chevron-left",
"fa-chevron-right",
"fa-chevron-up",
"fa-child",
"fa-chrome",
"fa-circle",
"fa-circle-o",
"fa-circle-o-notch",
"fa-circle-thin",
"fa-clipboard",
"fa-clock-o",
"fa-clone",
"fa-close",
"fa-cloud",
"fa-cloud-download",
"fa-cloud-upload",
"fa-cny",
"fa-code",
"fa-code-fork",
"fa-codepen",
"fa-codiepie",
"fa-coffee",
"fa-cog",
"fa-cogs",
"fa-columns",
"fa-comment",
"fa-comment-o",
"fa-commenting",
"fa-commenting-o",
"fa-comments",
"fa-comments-o",
"fa-compass",
"fa-compress",
"fa-connectdevelop",
"fa-contao",
"fa-copy",
"fa-copyright",
"fa-creative-commons",
"fa-credit-card",
"fa-credit-card-alt",
"fa-crop",
"fa-crosshairs",
"fa-css3",
"fa-cube",
"fa-cubes",
"fa-cut",
"fa-cutlery",
"fa-dashboard",
"fa-dashcube",
"fa-database",
"fa-deaf",
"fa-deafness",
"fa-dedent",
"fa-delicious",
"fa-desktop",
"fa-deviantart",
"fa-diamond",
"fa-digg",
"fa-dollar",
"fa-dot-circle-o",
"fa-download",
"fa-dribbble",
"fa-drivers-license",
"fa-drivers-license-o",
"fa-dropbox",
"fa-drupal",
"fa-edge",
"fa-edit",
"fa-eercast",
"fa-eject",
"fa-ellipsis-h",
"fa-ellipsis-v",
"fa-empire",
"fa-envelope",
"fa-envelope-o",
"fa-envelope-open",
"fa-envelope-open-o",
"fa-envelope-square",
"fa-envira",
"fa-eraser",
"fa-etsy",
"fa-eur",
"fa-euro",
"fa-exchange",
"fa-exclamation",
"fa-exclamation-circle",
"fa-exclamation-triangle",
"fa-expand",
"fa-expeditedssl",
"fa-external-link",
"fa-external-link-square",
"fa-eye",
"fa-eye-slash",
"fa-eyedropper",
"fa-fa",
"fa-facebook",
"fa-facebook-f",
"fa-facebook-official",
"fa-facebook-square",
"fa-fast-backward",
"fa-fast-forward",
"fa-fax",
"fa-feed",
"fa-female",
"fa-fighter-jet",
"fa-file",
"fa-file-archive-o",
"fa-file-audio-o",
"fa-file-code-o",
"fa-file-excel-o",
"fa-file-image-o",
"fa-file-movie-o",
"fa-file-o",
"fa-file-pdf-o",
"fa-file-photo-o",
"fa-file-picture-o",
"fa-file-powerpoint-o",
"fa-file-sound-o",
"fa-file-text",
"fa-file-text-o",
"fa-file-video-o",
"fa-file-word-o",
"fa-file-zip-o",
"fa-files-o",
"fa-film",
"fa-filter",
"fa-fire",
"fa-fire-extinguisher",
"fa-firefox",
"fa-first-order",
"fa-flag",
"fa-flag-checkered",
"fa-flag-o",
"fa-flash",
"fa-flask",
"fa-flickr",
"fa-floppy-o",
"fa-folder",
"fa-folder-o",
"fa-folder-open",
"fa-folder-open-o",
"fa-font",
"fa-font-awesome",
"fa-fonticons",
"fa-fort-awesome",
"fa-forumbee",
"fa-forward",
"fa-foursquare",
"fa-free-code-camp",
"fa-frown-o",
"fa-futbol-o",
"fa-gamepad",
"fa-gavel",
"fa-gbp",
"fa-ge",
"fa-gear",
"fa-gears",
"fa-genderless",
"fa-get-pocket",
"fa-gg",
"fa-gg-circle",
"fa-gift",
"fa-git",
"fa-git-square",
"fa-github",
"fa-github-alt",
"fa-github-square",
"fa-gitlab",
"fa-gittip",
"fa-glass",
"fa-glide",
"fa-glide-g",
"fa-globe",
"fa-google",
"fa-google-plus",
"fa-google-plus-circle",
"fa-google-plus-official",
"fa-google-plus-square",
"fa-google-wallet",
"fa-graduation-cap",
"fa-gratipay",
"fa-grav",
"fa-group",
"fa-h-square",
"fa-hacker-news",
"fa-hand-grab-o",
"fa-hand-lizard-o",
"fa-hand-o-down",
"fa-hand-o-left",
"fa-hand-o-right",
"fa-hand-o-up",
"fa-hand-paper-o",
"fa-hand-peace-o",
"fa-hand-pointer-o",
"fa-hand-rock-o",
"fa-hand-scissors-o",
"fa-hand-spock-o",
"fa-hand-stop-o",
"fa-handshake-o",
"fa-hard-of-hearing",
"fa-hashtag",
"fa-hdd-o",
"fa-header",
"fa-headphones",
"fa-heart",
"fa-heart-o",
"fa-heartbeat",
"fa-history",
"fa-home",
"fa-hospital-o",
"fa-hotel",
"fa-hourglass",
"fa-hourglass-1",
"fa-hourglass-2",
"fa-hourglass-3",
"fa-hourglass-end",
"fa-hourglass-half",
"fa-hourglass-o",
"fa-hourglass-start",
"fa-houzz",
"fa-html5",
"fa-i-cursor",
"fa-id-badge",
"fa-id-card",
"fa-id-card-o",
"fa-ils",
"fa-image",
"fa-imdb",
"fa-inbox",
"fa-indent",
"fa-industry",
"fa-info",
"fa-info-circle",
"fa-inr",
"fa-instagram",
"fa-institution",
"fa-internet-explorer",
"fa-intersex",
"fa-ioxhost",
"fa-italic",
"fa-joomla",
"fa-jpy",
"fa-jsfiddle",
"fa-key",
"fa-keyboard-o",
"fa-krw",
"fa-language",
"fa-laptop",
"fa-lastfm",
"fa-lastfm-square",
"fa-leaf",
"fa-leanpub",
"fa-legal",
"fa-lemon-o",
"fa-level-down",
"fa-level-up",
"fa-life-bouy",
"fa-life-buoy",
"fa-life-ring",
"fa-life-saver",
"fa-lightbulb-o",
"fa-line-chart",
"fa-link",
"fa-linkedin",
"fa-linkedin-square",
"fa-linode",
"fa-linux",
"fa-list",
"fa-list-alt",
"fa-list-ol",
"fa-list-ul",
"fa-location-arrow",
"fa-lock",
"fa-long-arrow-down",
"fa-long-arrow-left",
"fa-long-arrow-right",
"fa-long-arrow-up",
"fa-low-vision",
"fa-magic",
"fa-magnet",
"fa-mail-forward",
"fa-mail-reply",
"fa-mail-reply-all",
"fa-male",
"fa-map",
"fa-map-marker",
"fa-map-o",
"fa-map-pin",
"fa-map-signs",
"fa-mars",
"fa-mars-double",
"fa-mars-stroke",
"fa-mars-stroke-h",
"fa-mars-stroke-v",
"fa-maxcdn",
"fa-meanpath",
"fa-medium",
"fa-medkit",
"fa-meetup",
"fa-meh-o",
"fa-mercury",
"fa-microchip",
"fa-microphone",
"fa-microphone-slash",
"fa-minus",
"fa-minus-circle",
"fa-minus-square",
"fa-minus-square-o",
"fa-mixcloud",
"fa-mobile",
"fa-mobile-phone",
"fa-modx",
"fa-money",
"fa-moon-o",
"fa-mortar-board",
"fa-motorcycle",
"fa-mouse-pointer",
"fa-music",
"fa-navicon",
"fa-neuter",
"fa-newspaper-o",
"fa-object-group",
"fa-object-ungroup",
"fa-odnoklassniki",
"fa-odnoklassniki-square",
"fa-opencart",
"fa-openid",
"fa-opera",
"fa-optin-monster",
"fa-outdent",
"fa-pagelines",
"fa-paint-brush",
"fa-paper-plane",
"fa-paper-plane-o",
"fa-paperclip",
"fa-paragraph",
"fa-paste",
"fa-pause",
"fa-pause-circle",
"fa-pause-circle-o",
"fa-paw",
"fa-paypal",
"fa-pencil",
"fa-pencil-square",
"fa-pencil-square-o",
"fa-percent",
"fa-phone",
"fa-phone-square",
"fa-photo",
"fa-picture-o",
"fa-pie-chart",
"fa-pied-piper",
"fa-pied-piper-alt",
"fa-pied-piper-pp",
"fa-pinterest",
"fa-pinterest-p",
"fa-pinterest-square",
"fa-plane",
"fa-play",
"fa-play-circle",
"fa-play-circle-o",
"fa-plug",
"fa-plus",
"fa-plus-circle",
"fa-plus-square",
"fa-plus-square-o",
"fa-podcast",
"fa-power-off",
"fa-print",
"fa-product-hunt",
"fa-puzzle-piece",
"fa-qq",
"fa-qrcode",
"fa-question",
"fa-question-circle",
"fa-question-circle-o",
"fa-quora",
"fa-quote-left",
"fa-quote-right",
"fa-ra",
"fa-random",
"fa-ravelry",
"fa-rebel",
"fa-recycle",
"fa-reddit",
"fa-reddit-alien",
"fa-reddit-square",
"fa-refresh",
"fa-registered",
"fa-remove",
"fa-renren",
"fa-reorder",
"fa-repeat",
"fa-reply",
"fa-reply-all",
"fa-resistance",
"fa-retweet",
"fa-rmb",
"fa-road",
"fa-rocket",
"fa-rotate-left",
"fa-rotate-right",
"fa-rouble",
"fa-rss",
"fa-rss-square",
"fa-rub",
"fa-ruble",
"fa-rupee",
"fa-s15",
"fa-safari",
"fa-save",
"fa-scissors",
"fa-scribd",
"fa-search",
"fa-search-minus",
"fa-search-plus",
"fa-sellsy",
"fa-send",
"fa-send-o",
"fa-server",
"fa-share",
"fa-share-alt",
"fa-share-alt-square",
"fa-share-square",
"fa-share-square-o",
"fa-shekel",
"fa-sheqel",
"fa-shield",
"fa-ship",
"fa-shirtsinbulk",
"fa-shopping-bag",
"fa-shopping-basket",
"fa-shopping-cart",
"fa-shower",
"fa-sign-in",
"fa-sign-language",
"fa-sign-out",
"fa-signal",
"fa-signing",
"fa-simplybuilt",
"fa-sitemap",
"fa-skyatlas",
"fa-skype",
"fa-slack",
"fa-sliders",
"fa-slideshare",
"fa-smile-o",
"fa-snapchat",
"fa-snapchat-ghost",
"fa-snapchat-square",
"fa-snowflake-o",
"fa-soccer-ball-o",
"fa-sort",
"fa-sort-alpha-asc",
"fa-sort-alpha-desc",
"fa-sort-amount-asc",
"fa-sort-amount-desc",
"fa-sort-asc",
"fa-sort-desc",
"fa-sort-down",
"fa-sort-numeric-asc",
"fa-sort-numeric-desc",
"fa-sort-up",
"fa-soundcloud",
"fa-space-shuttle",
"fa-spinner",
"fa-spoon",
"fa-spotify",
"fa-square",
"fa-square-o",
"fa-stack-exchange",
"fa-stack-overflow",
"fa-star",
"fa-star-half",
"fa-star-half-empty",
"fa-star-half-full",
"fa-star-half-o",
"fa-star-o",
"fa-steam",
"fa-steam-square",
"fa-step-backward",
"fa-step-forward",
"fa-stethoscope",
"fa-sticky-note",
"fa-sticky-note-o",
"fa-stop",
"fa-stop-circle",
"fa-stop-circle-o",
"fa-street-view",
"fa-strikethrough",
"fa-stumbleupon",
"fa-stumbleupon-circle",
"fa-subscript",
"fa-subway",
"fa-suitcase",
"fa-sun-o",
"fa-superpowers",
"fa-superscript",
"fa-support",
"fa-table",
"fa-tablet",
"fa-tachometer",
"fa-tag",
"fa-tags",
"fa-tasks",
"fa-taxi",
"fa-telegram",
"fa-television",
"fa-tencent-weibo",
"fa-terminal",
"fa-text-height",
"fa-text-width",
"fa-th",
"fa-th-large",
"fa-th-list",
"fa-themeisle",
"fa-thermometer",
"fa-thermometer-0",
"fa-thermometer-1",
"fa-thermometer-2",
"fa-thermometer-3",
"fa-thermometer-4",
"fa-thermometer-empty",
"fa-thermometer-full",
"fa-thermometer-half",
"fa-thermometer-quarter",
"fa-thermometer-three-quarters",
"fa-thumb-tack",
"fa-thumbs-down",
"fa-thumbs-o-down",
"fa-thumbs-o-up",
"fa-thumbs-up",
"fa-ticket",
"fa-times",
"fa-times-circle",
"fa-times-circle-o",
"fa-times-rectangle",
"fa-times-rectangle-o",
"fa-tint",
"fa-toggle-down",
"fa-toggle-left",
"fa-toggle-off",
"fa-toggle-on",
"fa-toggle-right",
"fa-toggle-up",
"fa-trademark",
"fa-train",
"fa-transgender",
"fa-transgender-alt",
"fa-trash",
"fa-trash-o",
"fa-tree",
"fa-trello",
"fa-tripadvisor",
"fa-trophy",
"fa-truck",
"fa-try",
"fa-tty",
"fa-tumblr",
"fa-tumblr-square",
"fa-turkish-lira",
"fa-tv",
"fa-twitch",
"fa-twitter",
"fa-twitter-square",
"fa-umbrella",
"fa-underline",
"fa-undo",
"fa-universal-access",
"fa-university",
"fa-unlink",
"fa-unlock",
"fa-unlock-alt",
"fa-unsorted",
"fa-upload",
"fa-usb",
"fa-usd",
"fa-user",
"fa-user-circle",
"fa-user-circle-o",
"fa-user-md",
"fa-user-o",
"fa-user-plus",
"fa-user-secret",
"fa-user-times",
"fa-users",
"fa-vcard",
"fa-vcard-o",
"fa-venus",
"fa-venus-double",
"fa-venus-mars",
"fa-viacoin",
"fa-viadeo",
"fa-viadeo-square",
"fa-video-camera",
"fa-vimeo",
"fa-vimeo-square",
"fa-vine",
"fa-vk",
"fa-volume-control-phone",
"fa-volume-down",
"fa-volume-off",
"fa-volume-up",
"fa-warning",
"fa-wechat",
"fa-weibo",
"fa-weixin",
"fa-whatsapp",
"fa-wheelchair",
"fa-wheelchair-alt",
"fa-wifi",
"fa-wikipedia-w",
"fa-window-close",
"fa-window-close-o",
"fa-window-maximize",
"fa-window-minimize",
"fa-window-restore",
"fa-windows",
"fa-won",
"fa-wordpress",
"fa-wpbeginner",
"fa-wpexplorer",
"fa-wpforms",
"fa-wrench",
"fa-xing",
"fa-xing-square",
"fa-y-combinator",
"fa-y-combinator-square",
"fa-yahoo",
"fa-yc",
"fa-yc-square",
"fa-yelp",
"fa-yen",
"fa-yoast",
"fa-youtube",
"fa-youtube-play",
"fa-youtube-square"
]

View File

@ -1,6 +1,7 @@
/*ログイン処理・認証までのJS*/ /*ログイン処理・認証までのJS*/
//最初に読むやつ //最初に読むやつ
//アスタルテ判定初期化 //アスタルテ判定初期化
localStorage.removeItem("kirishima") localStorage.removeItem("kirishima")
localStorage.removeItem("image"); localStorage.removeItem("image");
var idata={ var idata={
@ -58,6 +59,7 @@ var idata={
"mstdn.kemono-friends.info_public":"ジャパリパーク" "mstdn.kemono-friends.info_public":"ジャパリパーク"
}; };
localStorage.setItem("instance", JSON.stringify(idata)); localStorage.setItem("instance", JSON.stringify(idata));
function ck() { function ck() {
var domain = localStorage.getItem("domain_0"); var domain = localStorage.getItem("domain_0");
var at = localStorage.getItem(domain + "_at"); var at = localStorage.getItem(domain + "_at");
@ -73,6 +75,7 @@ function ck() {
} }
} }
if (at) { if (at) {
$("#tl").show(); $("#tl").show();
parseColumn(); parseColumn();
@ -211,12 +214,17 @@ function getdata() {
5000); 5000);
return; return;
} }
var avatar=json["avatar"];
//missingがmissingなやつ
if(avatar=="/avatars/original/missing.png"){
avatar="./img/missing.svg";
}
var obj = [{ var obj = [{
at: at, at: at,
name: json["display_name"], name: json["display_name"],
domain: domain, domain: domain,
user: json["acct"], user: json["acct"],
prof: json["avatar"] prof: avatar
}]; }];
var json = JSON.stringify(obj); var json = JSON.stringify(obj);
console.log(obj); console.log(obj);
@ -224,7 +232,7 @@ function getdata() {
localStorage.setItem("name_" + acct_id, json["display_name"]); localStorage.setItem("name_" + acct_id, json["display_name"]);
localStorage.setItem("user_" + acct_id, json["acct"]); localStorage.setItem("user_" + acct_id, json["acct"]);
localStorage.setItem("user-id_" + acct_id, json["id"]); localStorage.setItem("user-id_" + acct_id, json["id"]);
localStorage.setItem("prof_" + acct_id, json["avatar"]); localStorage.setItem("prof_" + acct_id, avatar);
$("#masara").hide(); $("#masara").hide();
$("#auth").hide(); $("#auth").hide();
$("#tl").show(); $("#tl").show();
@ -254,12 +262,17 @@ function getdataAdv(domain, at) {
5000); 5000);
return; return;
} }
var avatar=json["avatar"];
//missingがmissingなやつ
if(avatar=="/avatars/original/missing.png"){
avatar="./img/missing.svg";
}
var add = { var add = {
at: at, at: at,
name: json["display_name"], name: json["display_name"],
domain: domain, domain: domain,
user: json["acct"], user: json["acct"],
prof: json["avatar"], prof: avatar,
id: json["id"] id: json["id"]
}; };
var multi = localStorage.getItem("multi"); var multi = localStorage.getItem("multi");
@ -269,7 +282,7 @@ function getdataAdv(domain, at) {
localStorage.setItem("name_" + target, json["display_name"]); localStorage.setItem("name_" + target, json["display_name"]);
localStorage.setItem("user_" + target, json["acct"]); localStorage.setItem("user_" + target, json["acct"]);
localStorage.setItem("user-id_" + target, json["id"]); localStorage.setItem("user-id_" + target, json["id"]);
localStorage.setItem("prof_" + target, json["avatar"]); localStorage.setItem("prof_" + target, avatar);
console.log(obj); console.log(obj);
var json = JSON.stringify(obj); var json = JSON.stringify(obj);
localStorage.setItem("multi", json); localStorage.setItem("multi", json);
@ -382,6 +395,15 @@ function multi() {
var list = key * 1 + 1; var list = key * 1 + 1;
if (key == last) { if (key == last) {
sel = "selected"; sel = "selected";
var profimg=localStorage.getItem("prof_"+key);
var domain=localStorage.getItem("domain_"+key);
$("#acct-sel-prof").attr("src",profimg);
$("#toot-post-btn").text("トゥート("+domain+")");
if(domain=="kirishima.cloud"){
$("#faicon-btn").show();
}else{
$("#faicon-btn").hide();
}
} else { } else {
sel = ""; sel = "";
} }
@ -405,4 +427,4 @@ function enc(ver){
var ver = ver.replace( /\[/g , "_" ); var ver = ver.replace( /\[/g , "_" );
var ver = ver.replace( /\]/g , "" ); var ver = ver.replace( /\]/g , "" );
return ver; return ver;
} }

View File

@ -250,12 +250,17 @@ function getdata(domain, at) {
5000); 5000);
return; return;
} }
var avatar=json["avatar"];
//missingがmissingなやつ
if(avatar=="/avatars/original/missing.png"){
avatar="./img/missing.svg";
}
var add = { var add = {
at: at, at: at,
name: json["display_name"], name: json["display_name"],
domain: domain, domain: domain,
user: json["acct"], user: json["acct"],
prof: json["avatar"], prof: avatar,
id: json["id"] id: json["id"]
}; };
var multi = localStorage.getItem("multi"); var multi = localStorage.getItem("multi");
@ -265,7 +270,7 @@ function getdata(domain, at) {
localStorage.setItem("name_" + target, json["display_name"]); localStorage.setItem("name_" + target, json["display_name"]);
localStorage.setItem("user_" + target, json["acct"]); localStorage.setItem("user_" + target, json["acct"]);
localStorage.setItem("user-id_" + target, json["id"]); localStorage.setItem("user-id_" + target, json["id"]);
localStorage.setItem("prof_" + target, json["avatar"]); localStorage.setItem("prof_" + target, avatar);
console.log(obj); console.log(obj);
var json = JSON.stringify(obj); var json = JSON.stringify(obj);
localStorage.setItem("multi", json); localStorage.setItem("multi", json);
@ -299,12 +304,17 @@ function refresh(target) {
5000); 5000);
return; return;
} }
var avatar=json["avatar"];
//missingがmissingなやつ
if(avatar=="/avatars/original/missing.png"){
avatar="./img/missing.svg";
}
var ref = { var ref = {
at: obj[target].at, at: obj[target].at,
name: json["display_name"], name: json["display_name"],
domain: obj[target].domain, domain: obj[target].domain,
user: json["acct"], user: json["acct"],
prof: json["avatar"], prof: avatar,
id: json["id"] id: json["id"]
}; };
localStorage.setItem("name_" + target, json["display_name"]); localStorage.setItem("name_" + target, json["display_name"]);
@ -312,7 +322,7 @@ function refresh(target) {
localStorage.setItem("user-id_" + target, json["id"]); localStorage.setItem("user-id_" + target, json["id"]);
console.log("user-id_" + target+":"+json["id"]) console.log("user-id_" + target+":"+json["id"])
console.log(localStorage.getItem("user-id_"+target)); console.log(localStorage.getItem("user-id_"+target));
localStorage.setItem("prof_" + target, json["avatar"]); localStorage.setItem("prof_" + target, avatar);
obj[target] = ref; obj[target] = ref;
console.log(obj); console.log(obj);
var json = JSON.stringify(obj); var json = JSON.stringify(obj);

View File

@ -2,6 +2,9 @@
//アカウント変えた時にBBとかMDとか //アカウント変えた時にBBとかMDとか
function mdCheck(){ function mdCheck(){
var acct_id = $("#post-acct-sel").val(); var acct_id = $("#post-acct-sel").val();
var profimg=localStorage.getItem("prof_"+acct_id);
$("#acct-sel-prof").attr("src",profimg);
$("#toot-post-btn").text("トゥート("+localStorage.getItem("domain_"+acct_id)+")");
if(!localStorage.getItem("bb_"+acct_id) && !localStorage.getItem("md_"+acct_id)){ if(!localStorage.getItem("bb_"+acct_id) && !localStorage.getItem("md_"+acct_id)){
$(".markdown").addClass("hide"); $(".markdown").addClass("hide");
$(".anti-markdown").addClass("hide"); $(".anti-markdown").addClass("hide");
@ -20,6 +23,11 @@ function mdCheck(){
}else{ }else{
$("#private-button").text("非公開(Private)"); $("#private-button").text("非公開(Private)");
} }
if(domain=="kirishima.cloud"){
$("#faicon-btn").show();
}else{
$("#faicon-btn").hide();
}
} }
//BOXのトグルボタン //BOXのトグルボタン
function mdToggle(){ function mdToggle(){

View File

@ -202,4 +202,27 @@ function shot(){
var electron = require("electron"); var electron = require("electron");
var ipc = electron.ipcRenderer; var ipc = electron.ipcRenderer;
ipc.send('screen', [w,h,id]); ipc.send('screen', [w,h,id]);
}
//翻訳
function trans(tar){
var html=$("#toot-this .toot").html();
if(html.match(/^<p>(.+)<\/p>$/)){
html = html.match(/^<p>(.+)<\/p>$/)[1];
}
html = html.replace(/<br\s?\/?>/, "\n");
html = html.replace(/<p>/, "\n");
html = html.replace(/<\/p>/, "\n");
html=$.strip_tags(html);
$("#toot-this .additional").text("Loading...(Powered by Google Translate)");
var exec='https://script.google.com/macros/s/AKfycbz0ETqcUxwNlw961GjErNb7vr_X18N2s1AS5Xu5nFTbYXcdcRM/exec?text='+html+'&source='+tar+'&target=ja'
fetch(exec, {
method: 'GET',
}).then(function(response) {
return response.text();
}).catch(function(error) {
todo(error);
console.error(error);
}).then(function(text) {
$("#toot-this .additional").html('<span class="gray">'+text+'</span>');
});
} }

View File

@ -2,6 +2,10 @@
//取得+Streaming接続 //取得+Streaming接続
function notf(acct_id, tlid, sys) { function notf(acct_id, tlid, sys) {
todo("Notifications Loading..."); todo("Notifications Loading...");
var native=localStorage.getItem("nativenotf");
if(!native){
native="yes";
}
var domain = localStorage.getItem("domain_" + acct_id); var domain = localStorage.getItem("domain_" + acct_id);
var at = localStorage.getItem(domain + "_at"); var at = localStorage.getItem(domain + "_at");
var start = "https://" + domain + "/api/v1/notifications"; var start = "https://" + domain + "/api/v1/notifications";
@ -19,8 +23,19 @@ function notf(acct_id, tlid, sys) {
console.error(error); console.error(error);
}).then(function(json) { }).then(function(json) {
var templete=""; var templete="";
var lastnotf=localStorage.getItem("lastnotf_" + acct_id);
localStorage.setItem("lastnotf_" + acct_id,json[0].id);
Object.keys(json).forEach(function(key) { Object.keys(json).forEach(function(key) {
var obj = json[key]; var obj = json[key];
if(lastnotf==obj.id && key>0 && native=="yes"){
var ct=key+1;
if(key==14){
ct="15+";
}
var electron = require("electron");
var ipc = electron.ipcRenderer;
ipc.send('native-notf', ['TheDesk:'+domain,ct+"件の新しい通知",localStorage.getItem("prof_"+acct_id)]);
}
if(obj.type!="follow"){ if(obj.type!="follow"){
templete = templete+parse([obj], 'notf', acct_id, tlid, -1); templete = templete+parse([obj], 'notf', acct_id, tlid, -1);
}else{ }else{
@ -63,6 +78,7 @@ function notf(acct_id, tlid, sys) {
popup = 0; popup = 0;
} }
var templete=""; var templete="";
localStorage.setItem("lastnotf_" + acct_id,obj.id);
if(obj.type!="follow"){ if(obj.type!="follow"){
templete = templete+parse([obj], 'notf', acct_id, tlid, popup); templete = templete+parse([obj], 'notf', acct_id, tlid, popup);
}else{ }else{

View File

@ -12,6 +12,11 @@ function parse(obj, mix, acct_id, tlid, popup) {
if(locale=="yes"){ if(locale=="yes"){
var locale=false; var locale=false;
} }
//ネイティブ通知
var native=localStorage.getItem("nativenotf");
if(!native){
native="yes";
}
//クライアント強調 //クライアント強調
var emp = localStorage.getItem("client_emp"); var emp = localStorage.getItem("client_emp");
if(emp){ if(emp){
@ -118,6 +123,11 @@ function parse(obj, mix, acct_id, tlid, popup) {
if (popup >= 0 && obj.length < 5 && noticetext != memory) { if (popup >= 0 && obj.length < 5 && noticetext != memory) {
var domain = localStorage.getItem("domain_" + acct_id); var domain = localStorage.getItem("domain_" + acct_id);
if(popup>0){ if(popup>0){
if(native=="yes"){
var electron = require("electron");
var ipc = electron.ipcRenderer;
ipc.send('native-notf', ['TheDesk:'+domain,toot.account.display_name+"(" + toot.account.acct +")"+what+"\n\n"+$.strip_tags(toot.status.content),toot.account.avatar]);
}
Materialize.toast("["+domain+"より]"+escapeHTML(toot.account.display_name)+what, popup * 1000); Materialize.toast("["+domain+"より]"+escapeHTML(toot.account.display_name)+what, popup * 1000);
} }
$(".notf-icon_" + acct_id).addClass("red-text"); $(".notf-icon_" + acct_id).addClass("red-text");
@ -386,6 +396,12 @@ function parse(obj, mix, acct_id, tlid, popup) {
} }
}); });
} }
//日本語じゃない
if(toot.language!="ja"){
var trans='<div class="action pin"><a onclick="trans(\''+toot.language+'\')" class="waves-effect waves-dark btn-flat" style="padding:0" title="このトゥートを日本語に翻訳"><i class="material-icons">g_translate</i></a></div>';
}else{
var trans="";
}
templete = templete + '<div id="pub_' + toot.id + '" class="cvo ' + templete = templete + '<div id="pub_' + toot.id + '" class="cvo ' +
boostback + ' ' + fav_app + ' ' + rt_app + ' ' + pin_app + boostback + ' ' + fav_app + ' ' + rt_app + ' ' + pin_app +
' ' + hasmedia + '" toot-id="' + id + '" unixtime="' + date(obj[ ' ' + hasmedia + '" toot-id="' + id + '" unixtime="' + date(obj[
@ -434,7 +450,7 @@ function parse(obj, mix, acct_id, tlid, popup) {
')" class="waves-effect waves-dark btn-flat" style="padding:0" title="このトゥートを削除"><i class="fa fa-trash-o"></i></a></div>' + ')" class="waves-effect waves-dark btn-flat" style="padding:0" title="このトゥートを削除"><i class="fa fa-trash-o"></i></a></div>' +
'<div class="' + if_mine + ' action pin"><a onclick="pin(\'' + toot.id + '\',' + '<div class="' + if_mine + ' action pin"><a onclick="pin(\'' + toot.id + '\',' +
acct_id + acct_id +
')" class="waves-effect waves-dark btn-flat" style="padding:0" title="このトゥートをピン留め"><i class="fa fa-map-pin pin_' + toot.id + ' '+if_pin+'"></i></a></div>' + ')" class="waves-effect waves-dark btn-flat" style="padding:0" title="このトゥートをピン留め"><i class="fa fa-map-pin pin_' + toot.id + ' '+if_pin+'"></i></a></div>' +trans+
'<div class="action"><a onclick="details(\'' + toot.id + '\',' + acct_id + '<div class="action"><a onclick="details(\'' + toot.id + '\',' + acct_id +
','+tlid+')" class="waves-effect waves-dark btn-flat details" style="padding:0"><i class="text-darken-3 material-icons">more_vert</i></a></div>' + ','+tlid+')" class="waves-effect waves-dark btn-flat details" style="padding:0"><i class="text-darken-3 material-icons">more_vert</i></a></div>' +
'</div><div class="area-date_via">' + '</div><div class="area-date_via">' +

View File

@ -284,6 +284,36 @@ element.onmousewheel = function(e) {
zoom(0.9) zoom(0.9)
} }
} }
//画像を貼り付けたら…
var element = document.querySelector("#textarea");
element.addEventListener("paste", function(e){
// 画像の場合
// e.clipboardData.types.length == 0
// かつ
// e.clipboardData.types[0] == "Files"
// となっているので、それ以外を弾く
if (!e.clipboardData
|| !e.clipboardData.types
|| (e.clipboardData.types.length != 1)
|| (e.clipboardData.types[0] != "Files")) {
return true;
}
// ファイルとして得る
// (なぜかgetAsStringでは上手くいかなかった)
var imageFile = e.clipboardData.items[0].getAsFile();
// FileReaderで読み込む
var fr = new FileReader();
fr.onload = function(e) {
// onload内ではe.target.resultにbase64が入っているのであとは煮るなり焼くなり
var base64 = e.target.result;
beforeMedia(base64,"image/png");
};
fr.readAsDataURL(imageFile);
// 画像以外がペーストされたときのために、元に戻しておく
});
//当該トゥート //当該トゥート
function detFromImg(){ function detFromImg(){
var id=$("#imagemodal").attr("data-id"); var id=$("#imagemodal").attr("data-id");

View File

@ -112,6 +112,13 @@ function settings() {
Materialize.toast("独自ロケール設定を" + ult + "に設定しました。", 3000); Materialize.toast("独自ロケール設定を" + ult + "に設定しました。", 3000);
} }
localStorage.setItem("locale", uld); localStorage.setItem("locale", uld);
var ntd = $("[name=notf]:checked").val();
var ntt = $("[for=ntf_"+ntd+"]").text();
if (ntd != localStorage.getItem("nativenotf")) {
Materialize.toast("ネイティブ通知を" + ntt + "に設定しました。", 3000);
}
localStorage.setItem("nativenotf", ntd);
} }
//読み込み時の設定ロード //読み込み時の設定ロード
@ -218,6 +225,12 @@ function load() {
var uld = "yes"; var uld = "yes";
} }
$("#ul_" + uld).prop("checked", true); $("#ul_" + uld).prop("checked", true);
var nnd = localStorage.getItem("nativenotf");
if (!nnd) {
var nnd = "yes";
}
$("#ntf_" + nnd).prop("checked", true);
} }
//最初に読む //最初に読む
load(); load();

View File

@ -30,6 +30,9 @@ function utl(user, more, acct_id) {
console.error(error); console.error(error);
}).then(function(json) { }).then(function(json) {
var templete = parse(json, '', acct_id); var templete = parse(json, '', acct_id);
if(!json[0]){
templete="データはありません<br>";
}
var height = $("#his-data-content").height() - 245; var height = $("#his-data-content").height() - 245;
$(".tab-content").css('height', height); $(".tab-content").css('height', height);
if (more) { if (more) {
@ -66,6 +69,9 @@ function pinutl(before,user, acct_id) {
console.error(error); console.error(error);
}).then(function(json) { }).then(function(json) {
var templete = parse(json, '', acct_id); var templete = parse(json, '', acct_id);
if(!json[0]){
templete="データはありません<br>";
}
var height = $("#his-data-content").height() - 245; var height = $("#his-data-content").height() - 245;
$(".tab-content").css('height', height); $(".tab-content").css('height', height);
$("#his-tl-contents").html(templete+before); $("#his-tl-contents").html(templete+before);
@ -104,6 +110,9 @@ function flw(user, more, acct_id) {
console.error(error); console.error(error);
}).then(function(json) { }).then(function(json) {
var templete = userparse(json,'',acct_id); var templete = userparse(json,'',acct_id);
if(!json[0]){
templete="データはありません<br>";
}
if (more) { if (more) {
$("#his-follow-list-contents").append(templete); $("#his-follow-list-contents").append(templete);
} else { } else {
@ -145,6 +154,9 @@ function fer(user, more, acct_id) {
console.error(error); console.error(error);
}).then(function(json) { }).then(function(json) {
var templete = userparse(json,'',acct_id); var templete = userparse(json,'',acct_id);
if(!json[0]){
templete="データはありません<br>";
}
if (more) { if (more) {
$("#his-follower-list-contents").append(templete); $("#his-follower-list-contents").append(templete);
} else { } else {
@ -182,6 +194,9 @@ function showFav(more, acct_id) {
console.error(error); console.error(error);
}).then(function(json) { }).then(function(json) {
var templete = parse(json, '', acct_id); var templete = parse(json, '', acct_id);
if(!json[0]){
templete="データはありません<br>";
}
if (more) { if (more) {
$("#his-fav-list-contents").append(templete); $("#his-fav-list-contents").append(templete);
} else { } else {
@ -217,6 +232,9 @@ function showMut(more, acct_id) {
todo(error); todo(error);
console.error(error); console.error(error);
}).then(function(json) { }).then(function(json) {
if(!json[0]){
templete="データはありません<br>";
}
var templete = userparse(json,'',acct_id); var templete = userparse(json,'',acct_id);
if (more) { if (more) {
$("#his-muting-list-contents").append(templete); $("#his-muting-list-contents").append(templete);
@ -253,6 +271,9 @@ function showBlo(more, acct_id) {
todo(error); todo(error);
console.error(error); console.error(error);
}).then(function(json) { }).then(function(json) {
if(!json[0]){
templete="データはありません<br>";
}
var templete = userparse(json,'',acct_id); var templete = userparse(json,'',acct_id);
if (more) { if (more) {
$("#his-blocking-list-contents").append(templete); $("#his-blocking-list-contents").append(templete);
@ -290,6 +311,9 @@ function showReq(more, acct_id) {
console.error(error); console.error(error);
}).then(function(json) { }).then(function(json) {
var templete = userparse(json, 'true',acct_id); var templete = userparse(json, 'true',acct_id);
if(!json[0]){
templete="データはありません<br>";
}
if (more) { if (more) {
$("#his-request-list-contents").append(templete); $("#his-request-list-contents").append(templete);
} else { } else {
@ -327,6 +351,9 @@ function showDom(more, acct_id) {
console.error(error); console.error(error);
}).then(function(json) { }).then(function(json) {
var templete = ""; var templete = "";
if(!json[0]){
templete="データはありません<br>";
}
Object.keys(json).forEach(function(key) { Object.keys(json).forEach(function(key) {
var domain = json[key]; var domain = json[key];
templete = templete + domain + templete = templete + domain +

View File

@ -10,6 +10,13 @@ if(location.search){
} }
} }
function udgEx(user,acct_id){ function udgEx(user,acct_id){
if(user=="selector"){
user = $("#his-acct").attr('fullname');
}
if(acct_id=="selector"){
acct_id = $("#user-acct-sel").val();
}
console.log(user);
var domain = localStorage.getItem("domain_" + acct_id); var domain = localStorage.getItem("domain_" + acct_id);
var at = localStorage.getItem(domain + "_at"); var at = localStorage.getItem(domain + "_at");
var start = "https://" + domain + "/api/v1/search?resolve=true&q="+user var start = "https://" + domain + "/api/v1/search?resolve=true&q="+user
@ -26,7 +33,7 @@ function udgEx(user,acct_id){
console.error(error); console.error(error);
}).then(function(json) { }).then(function(json) {
var id=json.accounts[0].id; var id=json.accounts[0].id;
udg(id,0); udg(id,acct_id);
}); });
return; return;
} }

View File

@ -11,6 +11,11 @@ const path = require('path')
const Menu=electron.Menu const Menu=electron.Menu
// アプリケーションをコントロールするモジュール // アプリケーションをコントロールするモジュール
const app = electron.app; const app = electron.app;
const WindowsToaster = require('node-notifier').WindowsToaster;
var notifier = new WindowsToaster({
withFallback: false, // Fallback to Growl or Balloons?
customPath: void 0 // Relative path if you want to use your fork of toast.exe
});
// ウィンドウを作成するモジュール // ウィンドウを作成するモジュール
const BrowserWindow = electron.BrowserWindow; const BrowserWindow = electron.BrowserWindow;
@ -22,6 +27,7 @@ const join = require('path').join;
// メインウィンドウはGCされないようにグローバル宣言 // メインウィンドウはGCされないようにグローバル宣言
let mainWindow; let mainWindow;
var info_path = join(app.getPath("userData"), "window-size.json"); var info_path = join(app.getPath("userData"), "window-size.json");
var tmp_img = join(app.getPath("userData"), "tmp.png");
var window_size; var window_size;
try { try {
window_size = JSON.parse(fs.readFileSync(info_path, 'utf8')); window_size = JSON.parse(fs.readFileSync(info_path, 'utf8'));
@ -96,7 +102,26 @@ function createWindow() {
} }
// Electronの初期化完了後に実行 // Electronの初期化完了後に実行
app.on('ready', createWindow); app.on('ready', createWindow);
var onError = function(err,response){
console.error(err,response);
};
var ipc = electron.ipcMain; var ipc = electron.ipcMain;
ipc.on('native-notf', function(e, args) {
Jimp.read(args[2], function (err, lenna) {
if (err) throw err;
lenna.write(tmp_img);
notifier.notify({
message: args[1],
title: args[0],
sound: false,//"Bottle",
icon : tmp_img,
wait:false
}, function(error, response) {
});
});
});
ipc.on('update', function(e, x, y) { ipc.on('update', function(e, x, y) {
var platform=process.platform; var platform=process.platform;
var bit=process.arch; var bit=process.arch;
@ -115,6 +140,7 @@ ipc.on('update', function(e, x, y) {
return false; return false;
} }
}) })
ipc.on('screen', function(e, args) { ipc.on('screen', function(e, args) {
var window = new BrowserWindow({ var window = new BrowserWindow({
width: args[0], width: args[0],

View File

@ -31,6 +31,13 @@
<input type="text" style="width:50px" id="popup"> <input type="text" style="width:50px" id="popup">
<button class="btn waves-effect" style="width:100px;" onclick="settings()">設定</button> <button class="btn waves-effect" style="width:100px;" onclick="settings()">設定</button>
<br> <br>
<h5>ネイティブ通知設定</h5><a onclick="require('electron').ipcRenderer.send('native-notf', ['TheDesk通知テスト','通知テスト(画像はあなたのアカウントのアイコンです)',localStorage.getItem('prof_0')]);" class="pointer">通知テスト</a>
<br>
<input class="with-gap" onchange="settings()" name="notf" type="radio" id="ntf_yes" value="yes" />
<label for="ntf_yes">はい</label>
<input class="with-gap" onchange="settings()" name="notf" type="radio" id="ntf_no" value="no" />
<label for="ntf_no">いいえ</label>
<br>
<h5>マルチカラムの最低横幅</h5>画面全体の横幅÷コラム数がこの値を超えた時、横スクロールとなります。 <h5>マルチカラムの最低横幅</h5>画面全体の横幅÷コラム数がこの値を超えた時、横スクロールとなります。
<br> <br>
<input type="text" style="width:50px" id="width">px以上 <input type="text" style="width:50px" id="width">px以上

View File

@ -13,6 +13,7 @@
font-family:'Open Sans'; font-family:'Open Sans';
-webkit-app-region: drag; -webkit-app-region: drag;
cursor: move; cursor: move;
padding:10px;
} }
a,button{ a,button{
-webkit-app-region: no-drag; -webkit-app-region: no-drag;
@ -32,7 +33,8 @@ a,button{
アップデートはセキュアかつ高速なAmazon CloudFront CDNを通じて提供されます。<br> アップデートはセキュアかつ高速なAmazon CloudFront CDNを通じて提供されます。<br>
アップデート内容の詳細は<a href="https://github.com/cutls/TheDesk/blob/master/LATEST.md">GitHub</a>をご覧ください。<br><br> アップデート内容の詳細は<a href="https://github.com/cutls/TheDesk/blob/master/LATEST.md">GitHub</a>をご覧ください。<br><br>
<a onclick="window.close();" class="pointer">このアップデートを飛ばす</a>(次回TL表示時まで有効)<br><a onclick="quit()" class="pointer">このソフトを終了</a><br> <a onclick="window.close();" class="pointer">このアップデートを飛ばす</a>(次回TL表示時まで有効)<br><a onclick="quit()" class="pointer">このソフトを終了</a><br>
<a onclick="about()" class="pointer">このソフトについて</a> <a onclick="about()" class="pointer">このソフトについて</a><br>
アップデートに問題が生じる場合は<a href="https://thedesk.top">TheDesk HP</a>からのダウンロードをおためしください。
<script type="text/javascript" src="./js/common/about.js"></script> <script type="text/javascript" src="./js/common/about.js"></script>
<script type="text/javascript" src="./js/platform/end.js"></script> <script type="text/javascript" src="./js/platform/end.js"></script>
<script> <script>

View File

@ -1 +1 @@
{"warn":"これはGCPにアップして下さい","warn2":"これはGCPにアップして下さい","warn3":"これはGCPにアップして下さい","desk":"Airi (ver.9)","date":"2018-03-27","detail":"内部V:13.9.0|本文コピー・絵文字大幅拡充・Local+ TL・Glance TLほか"} {"warn":"これはGCPにアップして下さい","warn2":"これはGCPにアップして下さい","warn3":"これはGCPにアップして下さい","desk":"Mizuki (ver.1)","date":"2018-03-31","detail":"内部V:14.0.0|トゥート翻訳・ネイティブ通知・faiconピッカーほか"}