2018-01-28 21:22:43 +09:00
|
|
|
//プラットフォーム別 最後に読むやつ
|
2019-11-08 22:52:54 +09:00
|
|
|
//リンクを外部で開くか内部で出すか
|
2019-05-19 16:39:30 +09:00
|
|
|
$(document).on('click', 'a', e => {
|
2019-11-08 22:52:54 +09:00
|
|
|
var $a = $(e.target)
|
|
|
|
var url = $a.attr('href')
|
2019-05-19 16:39:30 +09:00
|
|
|
if (!url) {
|
2019-11-08 22:52:54 +09:00
|
|
|
var url = $a.parent().attr('href')
|
2019-05-19 16:39:30 +09:00
|
|
|
}
|
2019-11-08 22:52:54 +09:00
|
|
|
var urls = []
|
2019-05-19 16:39:30 +09:00
|
|
|
if (url) {
|
2019-11-08 22:52:54 +09:00
|
|
|
urls = url.match(/https?:\/\/(.+)/)
|
2018-04-07 13:31:09 +09:00
|
|
|
//トゥートのURLぽかったら
|
2019-11-08 22:52:54 +09:00
|
|
|
toot = url.match(/https:\/\/([^+_]+)\/@([a-zA-Z0-9_]+)\/([0-9]+)/)
|
|
|
|
if (!toot) {
|
2019-07-12 23:16:27 +09:00
|
|
|
//Pleroma対策
|
2019-11-08 22:52:54 +09:00
|
|
|
toot = url.match(/https:\/\/([^+_]+)\/users\/([a-zA-Z0-9_]+)\/statuses\/([0-9]+)/)
|
2019-07-12 23:16:27 +09:00
|
|
|
}
|
2018-05-12 03:12:25 +09:00
|
|
|
//タグのURLぽかったら
|
2019-11-08 22:52:54 +09:00
|
|
|
var tags = []
|
|
|
|
tags = url.match(/https:\/\/([^+_]+)\/tags\/([_a-zA-Z0-9\&=+\%]+)/)
|
2018-05-12 03:12:25 +09:00
|
|
|
//メンションっぽかったら
|
2019-11-08 22:52:54 +09:00
|
|
|
var ats = []
|
|
|
|
ats = url.match(/https:\/\/([^+_]+)\/@([_a-zA-Z0-9\&=+\%]+)/)
|
2019-05-19 16:39:30 +09:00
|
|
|
if (toot) {
|
|
|
|
if (toot[1]) {
|
2019-11-08 22:52:54 +09:00
|
|
|
var acct_id = $a.parent().attr('data-acct')
|
2019-05-19 16:39:30 +09:00
|
|
|
if (!acct_id) {
|
2019-11-08 22:52:54 +09:00
|
|
|
acct_id = 0
|
2018-04-08 23:17:33 +09:00
|
|
|
}
|
2019-11-08 22:52:54 +09:00
|
|
|
$a.parent().addClass('loadp')
|
|
|
|
$a.parent().text('Loading...')
|
|
|
|
detEx(url, acct_id)
|
2018-04-07 13:31:09 +09:00
|
|
|
}
|
2019-05-19 16:39:30 +09:00
|
|
|
} else if (tags) {
|
|
|
|
if (tags[2]) {
|
2019-11-08 22:52:54 +09:00
|
|
|
var acct_id = $a.parent().attr('data-acct')
|
2019-05-19 16:39:30 +09:00
|
|
|
if (!acct_id) {
|
2019-11-08 22:52:54 +09:00
|
|
|
acct_id = 0
|
2019-04-14 01:42:18 +09:00
|
|
|
}
|
2019-05-19 16:39:30 +09:00
|
|
|
tl('tag', decodeURI(tags[2]), acct_id, 'add')
|
2018-05-12 03:12:25 +09:00
|
|
|
}
|
2019-05-19 16:39:30 +09:00
|
|
|
} else if (ats) {
|
|
|
|
if (ats[2]) {
|
2019-04-04 01:07:07 +09:00
|
|
|
//Quesdon判定
|
2019-11-08 22:52:54 +09:00
|
|
|
if (!~ats[2].indexOf('@')) {
|
|
|
|
udgEx(url, 'main')
|
2018-06-12 00:44:28 +09:00
|
|
|
return false
|
2019-05-19 16:39:30 +09:00
|
|
|
} else {
|
2020-02-08 00:58:21 +09:00
|
|
|
if(pwa) {
|
|
|
|
return true
|
|
|
|
} else {
|
|
|
|
postMessage(['openUrl', url], '*')
|
|
|
|
}
|
2018-06-12 00:44:28 +09:00
|
|
|
}
|
2018-09-11 03:59:44 +09:00
|
|
|
}
|
2018-02-18 03:44:20 +09:00
|
|
|
} else {
|
2020-02-08 00:58:21 +09:00
|
|
|
if(pwa) {
|
|
|
|
return true
|
|
|
|
}
|
2019-05-19 16:39:30 +09:00
|
|
|
//hrefがhttp/httpsならブラウザで
|
|
|
|
if (urls) {
|
|
|
|
if (urls[0]) {
|
2019-11-08 22:52:54 +09:00
|
|
|
if (~url.indexOf('thedeks.top')) {
|
2019-05-19 16:39:30 +09:00
|
|
|
//alert("If you recieve this alert, let the developer(Cutls@kirishima.cloud) know it with a screenshot.");
|
2019-11-08 22:52:54 +09:00
|
|
|
url = 'https://thedesk.top'
|
2019-05-19 16:39:30 +09:00
|
|
|
}
|
2019-11-08 22:52:54 +09:00
|
|
|
postMessage(['openUrl', url], '*')
|
2019-05-19 16:39:30 +09:00
|
|
|
} else {
|
2019-11-08 22:52:54 +09:00
|
|
|
location.href = url
|
2019-05-19 16:39:30 +09:00
|
|
|
}
|
|
|
|
} else {
|
2019-11-08 22:52:54 +09:00
|
|
|
location.href = url
|
2019-05-19 16:39:30 +09:00
|
|
|
}
|
2018-02-18 03:44:20 +09:00
|
|
|
}
|
2018-02-25 22:37:04 +09:00
|
|
|
}
|
2019-11-08 22:52:54 +09:00
|
|
|
return false
|
|
|
|
})
|
2019-05-19 16:39:30 +09:00
|
|
|
|
|
|
|
//よく使うライブラリ
|
2018-12-09 03:46:01 +09:00
|
|
|
|
2019-05-19 16:39:30 +09:00
|
|
|
//コピー
|
|
|
|
function execCopy(string) {
|
2019-11-08 22:52:54 +09:00
|
|
|
postMessage(['copy', string], '*')
|
|
|
|
return true
|
2019-05-19 16:39:30 +09:00
|
|
|
}
|
2018-04-17 02:10:35 +09:00
|
|
|
function progshow(e) {
|
|
|
|
if (e.lengthComputable) {
|
2019-11-08 22:52:54 +09:00
|
|
|
var percent = e.loaded / e.total
|
|
|
|
console.log('Progress: ' + percent * 100)
|
|
|
|
$('#imgsel').hide()
|
2019-05-19 16:39:30 +09:00
|
|
|
if (percent < 1) {
|
2019-11-08 22:52:54 +09:00
|
|
|
$('#imgup').text(Math.floor(percent * 100) + '%')
|
2019-05-19 16:39:30 +09:00
|
|
|
} else {
|
2019-11-08 22:52:54 +09:00
|
|
|
$('#imgup').text(lang.lang_progress)
|
2019-05-19 16:39:30 +09:00
|
|
|
}
|
2018-04-17 02:10:35 +09:00
|
|
|
}
|
2019-05-19 16:39:30 +09:00
|
|
|
}
|
|
|
|
function opendev() {
|
2019-11-08 22:52:54 +09:00
|
|
|
var webview = document.getElementById('webview')
|
|
|
|
webview.openDevTools()
|
2018-09-11 03:59:44 +09:00
|
|
|
/*webview.sendInputEvent({
|
2018-09-10 02:06:00 +09:00
|
|
|
type: "keyDown",
|
2018-09-11 03:59:44 +09:00
|
|
|
keyCode: '2'
|
2018-09-10 02:06:00 +09:00
|
|
|
});
|
2018-09-11 03:59:44 +09:00
|
|
|
*/
|
2019-02-28 02:02:23 +09:00
|
|
|
}
|
2019-09-17 00:59:25 +09:00
|
|
|
var soundFile
|
2019-04-15 00:45:04 +09:00
|
|
|
function playSound() {
|
2019-11-08 22:52:54 +09:00
|
|
|
window.AudioContext = window.AudioContext || window.webkitAudioContext
|
|
|
|
if (soundFile) {
|
2019-09-17 00:59:25 +09:00
|
|
|
soundFile.stop()
|
|
|
|
}
|
2019-11-08 22:52:54 +09:00
|
|
|
context = new AudioContext()
|
|
|
|
context.createBufferSource().start(0)
|
|
|
|
context.decodeAudioData(request.response, function(buf) {
|
2019-09-17 00:59:25 +09:00
|
|
|
//console.log("Playing:" , source)
|
2019-11-08 22:52:54 +09:00
|
|
|
source.buffer = buf
|
|
|
|
source.loop = false
|
|
|
|
})
|
|
|
|
source = context.createBufferSource()
|
|
|
|
volumeControl = context.createGain()
|
|
|
|
source.connect(volumeControl)
|
|
|
|
volumeControl.connect(context.destination)
|
|
|
|
var cvol = localStorage.getItem('customVol')
|
2019-09-17 00:59:25 +09:00
|
|
|
if (cvol) {
|
|
|
|
vol = cvol
|
2019-11-08 22:52:54 +09:00
|
|
|
} else {
|
2019-09-17 00:59:25 +09:00
|
|
|
vol = 0.8
|
|
|
|
}
|
|
|
|
volumeControl.gain.value = vol
|
2019-11-08 22:52:54 +09:00
|
|
|
source.start(0)
|
|
|
|
soundFile = source
|
2019-06-15 23:07:18 +09:00
|
|
|
}
|
2019-06-25 23:26:15 +09:00
|
|
|
function nano() {
|
2019-11-08 22:52:54 +09:00
|
|
|
postMessage(['nano', null], '*')
|
2019-06-25 23:26:15 +09:00
|
|
|
}
|
2019-11-08 22:52:54 +09:00
|
|
|
onmessage = function(e) {
|
|
|
|
if (e.data[0] == 'details') {
|
2019-06-22 01:06:32 +09:00
|
|
|
details(e.data[1][0], e.data[1][1])
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'udg') {
|
2019-06-22 01:06:32 +09:00
|
|
|
udg(e.data[1][0], e.data[1][1])
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'media') {
|
2019-12-14 01:54:40 +09:00
|
|
|
media(e.data[1][0], e.data[1][1], e.data[1][2], e.data[1][3])
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'post') {
|
|
|
|
post('pass')
|
|
|
|
} else if (e.data[0] == 'toastSaved') {
|
2020-05-03 22:27:11 +09:00
|
|
|
var showTxt = `${lang.lang_img_DLDone}${
|
2019-11-08 22:52:54 +09:00
|
|
|
e.data[1][0]
|
2019-12-12 00:17:22 +09:00
|
|
|
}<button class="btn-flat toast-action" onclick="openFinder('${e.data[1][1]}')">Show</button>`
|
2020-05-03 22:27:11 +09:00
|
|
|
M.toast({ html: showTxt, displayLength: 5000 })
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'parseColumn') {
|
2019-08-14 00:40:21 +09:00
|
|
|
parseColumn(e.data[1])
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'exportSettingsCore') {
|
2019-08-29 01:20:47 +09:00
|
|
|
var exp = exportSettingsCore()
|
2019-11-08 22:52:54 +09:00
|
|
|
postMessage(['exportSettingsCoreComplete', [e.data[1], exp]], '*')
|
|
|
|
} else if (e.data[0] == 'importSettingsCore') {
|
2019-08-29 01:20:47 +09:00
|
|
|
importSettingsCore(e.data[1])
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'fontList') {
|
2019-06-22 01:06:32 +09:00
|
|
|
fontList(e.data[1])
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'customSoundSave') {
|
2019-06-22 01:06:32 +09:00
|
|
|
customSoundSave(e.data[1][0], e.data[1][1])
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'ctLoadCore') {
|
2019-06-22 01:06:32 +09:00
|
|
|
ctLoadCore(e.data[1])
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'ctLoad') {
|
2019-06-22 01:06:32 +09:00
|
|
|
ctLoad()
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'customConnect') {
|
2019-06-22 01:06:32 +09:00
|
|
|
customConnect(e.data[1])
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'clearCustomImport') {
|
2019-06-22 01:06:32 +09:00
|
|
|
clearCustomImport()
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'npCore') {
|
|
|
|
npCore(e.data[1])
|
|
|
|
} else if (e.data[0] == 'renderMem') {
|
2019-06-22 01:06:32 +09:00
|
|
|
renderMem(e.data[1][0], e.data[1][1], e.data[1][2])
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'updateProg') {
|
|
|
|
updateProg(e.data[1])
|
|
|
|
} else if (e.data[0] == 'updateMess') {
|
|
|
|
updateMess(e.data[1])
|
|
|
|
} else if (e.data[0] == 'renderAbout') {
|
|
|
|
renderAbout(e.data[1])
|
|
|
|
} else if (e.data[0] == 'asRead') {
|
2019-09-22 19:55:59 +09:00
|
|
|
asRead()
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'asReadEnd') {
|
2019-09-22 19:55:59 +09:00
|
|
|
asReadEnd()
|
2020-04-29 15:08:42 +09:00
|
|
|
} else if (e.data[0] == 'accessibility') {
|
|
|
|
console.log('atrue')
|
|
|
|
$('body').addClass('accessibility')
|
|
|
|
$('.window-title').before('<div class="accessMark">Screen Reader Optimized</div>')
|
2019-11-08 22:52:54 +09:00
|
|
|
} else if (e.data[0] == 'logData') {
|
|
|
|
$('#logs').val(e.data[1])
|
|
|
|
var obj = document.getElementById('logs')
|
|
|
|
obj.scrollTop = obj.scrollHeight
|
|
|
|
} else if (e.data[0] == 'alert') {
|
2019-06-22 01:06:32 +09:00
|
|
|
Swal.fire({
|
|
|
|
type: 'info',
|
|
|
|
title: e.data[1]
|
|
|
|
})
|
|
|
|
}
|
2019-11-08 22:52:54 +09:00
|
|
|
}
|
2020-02-08 00:52:23 +09:00
|
|
|
/* PWA */
|
|
|
|
if(pwa) {
|
|
|
|
function postMessage(e) {
|
|
|
|
if (e[0] == 'openUrl') {
|
|
|
|
urls = e[1].match(/https?:\/\/(.+)/)
|
|
|
|
if (urls) {
|
|
|
|
Swal.fire({
|
|
|
|
title: 'Open URL',
|
|
|
|
icon: 'info',
|
|
|
|
html:
|
|
|
|
`If you are OK, click: <a href="${urls[0]}" target="_blank" class="btn waves-effect">Here</a>`,
|
|
|
|
showCloseButton: false,
|
|
|
|
showCancelButton: true,
|
|
|
|
focusConfirm: false,
|
2020-02-08 00:58:21 +09:00
|
|
|
confirmButtonText: 'Close'
|
2020-02-08 00:52:23 +09:00
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|