2018-07-30 03:35:29 +10:00
|
|
|
<!doctype html>
|
2019-05-06 20:10:03 +10:00
|
|
|
<html lang="@@lang@@">
|
2018-07-30 03:35:29 +10:00
|
|
|
<head>
|
|
|
|
<title>Update - TheDesk</title>
|
2018-09-12 02:49:41 +10:00
|
|
|
<link href="../../css/materialize.css" type="text/css" rel="stylesheet">
|
|
|
|
<link href="../../css/master.css" type="text/css" rel="stylesheet">
|
2018-07-30 03:35:29 +10:00
|
|
|
<link href="https://fonts.googleapis.com/icon?family=Material+Icons|Open+Sans:300" rel="stylesheet">
|
|
|
|
<meta charset="utf-8">
|
2019-05-06 20:10:03 +10:00
|
|
|
@@comment-start@@
|
2019-02-05 13:33:32 +11:00
|
|
|
<script type="text/javascript">
|
|
|
|
var _jipt = [];
|
|
|
|
_jipt.push(['project', 'thedesk']);
|
|
|
|
</script>
|
|
|
|
<script type="text/javascript" src="https://cdn.crowdin.com/jipt/jipt.js"></script>
|
2019-05-06 20:10:03 +10:00
|
|
|
@@comment-end@@
|
2018-07-30 03:35:29 +10:00
|
|
|
</head>
|
|
|
|
<body>
|
2018-08-24 01:15:57 +10:00
|
|
|
<style>
|
|
|
|
body{
|
2018-07-30 03:35:29 +10:00
|
|
|
font-family:'Open Sans';
|
|
|
|
-webkit-app-region: drag;
|
|
|
|
cursor: move;
|
|
|
|
padding:10px;
|
2018-08-24 01:15:57 +10:00
|
|
|
text-align:right;
|
2018-07-30 03:35:29 +10:00
|
|
|
}
|
2018-08-24 01:15:57 +10:00
|
|
|
#start{
|
|
|
|
display: flex;
|
|
|
|
justify-content: center;
|
|
|
|
align-items: center;
|
|
|
|
width:100vw;
|
|
|
|
height: calc(100vh - 2.5rem);
|
|
|
|
text-align:center;
|
|
|
|
}
|
|
|
|
#checkbox{
|
|
|
|
text-align:left;
|
|
|
|
}
|
|
|
|
a,button,input,label,i{
|
2018-07-30 03:35:29 +10:00
|
|
|
-webkit-app-region: no-drag;
|
2018-08-24 01:15:57 +10:00
|
|
|
}
|
|
|
|
#updskip{
|
|
|
|
display: flex;
|
|
|
|
justify-content: center;
|
|
|
|
align-items: center;
|
|
|
|
}
|
|
|
|
.skipbtn{
|
|
|
|
display:block;
|
|
|
|
float:left;
|
|
|
|
width:200px;
|
|
|
|
height:200px;
|
|
|
|
border:1px solid;
|
|
|
|
margin-left:5px;
|
|
|
|
display: flex;
|
|
|
|
justify-content: center;
|
|
|
|
align-items: center;
|
|
|
|
border: 1px solid;
|
|
|
|
overflow: hidden;
|
|
|
|
}
|
|
|
|
.skipbtn:hover{
|
|
|
|
background-color: #b3e5fc;
|
|
|
|
transition: all 0.3s ease-in-out;
|
|
|
|
}
|
|
|
|
#prog{
|
|
|
|
font-size:200%;
|
|
|
|
}
|
|
|
|
</style>
|
2018-09-12 02:49:41 +10:00
|
|
|
<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>
|
2018-08-24 01:15:57 +10:00
|
|
|
<i class="material-icons pointer waves-effect" onclick="about();">info</i>
|
|
|
|
<i class="material-icons pointer waves-effect" onclick="skipper();">clear</i>
|
|
|
|
<!--a href="update.html">Reload</a-->
|
|
|
|
<div id="start">
|
|
|
|
<div id="box" class="show">
|
|
|
|
<h2>TheDesk</h2>
|
2019-05-06 20:10:03 +10:00
|
|
|
<p>@@updatehere@@</p>
|
2018-08-24 01:15:57 +10:00
|
|
|
<span id="now"></span>→<b id="ver"></b><br>
|
|
|
|
<span id="det"></span><br>
|
2019-05-06 20:10:03 +10:00
|
|
|
<button class="waves-effect btn windows hide" onclick="update('install')" style="margin-left:15px;">@@installer@@</button>
|
|
|
|
<button class="waves-effect btn windows hide" onclick="update('portable')" style="margin-left:15px;">@@portable@@</button>
|
|
|
|
<button class="waves-effect btn linux hide" onclick="update('linux')" style="margin-left:15px;">@@download@@</button>
|
|
|
|
<button class="waves-effect btn mac hide" onclick="update('mac')" style="margin-left:15px;">@@download@@</button>
|
2019-02-27 03:51:37 +11:00
|
|
|
<br>
|
2019-05-06 20:10:03 +10:00
|
|
|
@@problem1@@<br>@@problem2@@
|
2018-08-24 01:15:57 +10:00
|
|
|
</div>
|
|
|
|
<div id="skipper" class="hide">
|
2019-05-06 20:10:03 +10:00
|
|
|
<h4>@@sureupd@@</h4>
|
|
|
|
@@skipupd@@<br>
|
2018-08-24 01:15:57 +10:00
|
|
|
<div id="updskip">
|
2019-05-06 20:10:03 +10:00
|
|
|
<a onclick="window.close();" class="pointer skipbtn waves-effect waves-light"><div>@@nexttl@@</div></a>
|
|
|
|
<a onclick="nextv();" class="pointer skipbtn waves-effect waves-light"><div>@@nextver@@</div></a>
|
2018-08-24 01:15:57 +10:00
|
|
|
</div>
|
2019-05-06 20:10:03 +10:00
|
|
|
<a class="pointer waves-effect" onclick="skipper();" style="margin-top:5px">@@continue@@</a>
|
2018-08-24 01:15:57 +10:00
|
|
|
</div>
|
|
|
|
<div id="dlnow" class="hide">
|
2019-05-06 20:10:03 +10:00
|
|
|
<h4>@@dlnow@@</h4>
|
2018-08-24 01:15:57 +10:00
|
|
|
<h4 id="prog"></h4>
|
|
|
|
</div>
|
|
|
|
</div>
|
2018-09-12 02:49:41 +10:00
|
|
|
<script type="text/javascript" src="../../js/common/about.js"></script>
|
|
|
|
<script type="text/javascript" src="../../js/platform/end.js"></script>
|
2018-07-30 03:35:29 +10:00
|
|
|
<script>
|
2018-08-24 01:15:57 +10:00
|
|
|
function skipper(){
|
|
|
|
$("#dlnow").addClass("hide");
|
|
|
|
$("#box").toggleClass("show");
|
|
|
|
if($("#box").hasClass("hide") && $("#skipper").hasClass("hide")){
|
|
|
|
$("#skipper").removeClass("hide");
|
|
|
|
$("#skipper").addClass("show");
|
|
|
|
}else{
|
|
|
|
$("#box").toggleClass("hide");
|
|
|
|
$("#skipper").toggleClass("hide");
|
|
|
|
$("#skipper").toggleClass("show");
|
|
|
|
}
|
|
|
|
}
|
2018-07-30 03:35:29 +10:00
|
|
|
var electron = require("electron");
|
|
|
|
var ipc = electron.ipcRenderer;
|
2019-05-19 16:17:05 +10:00
|
|
|
const shell=electron.shell;
|
2018-07-30 03:35:29 +10:00
|
|
|
verck();
|
2018-08-24 01:15:57 +10:00
|
|
|
function update(sel){
|
|
|
|
$("#box").toggleClass("show");
|
|
|
|
$("#box").toggleClass("hide");
|
|
|
|
$("#dlnow").toggleClass("hide");
|
|
|
|
$("#dlnow").toggleClass("show");
|
|
|
|
$("#prog").text("");
|
2019-02-27 03:51:37 +11:00
|
|
|
var remote=electron.remote;
|
|
|
|
var bit=process.arch;
|
|
|
|
var start="https://thedesk.top/ver.json";
|
|
|
|
fetch(start, {
|
|
|
|
method: 'GET',
|
|
|
|
headers: {'content-type': 'application/json'},
|
|
|
|
}).then(function(response) {
|
|
|
|
return response.json();
|
|
|
|
}).catch(function(error) {
|
|
|
|
todo(error);
|
|
|
|
console.error(error);
|
|
|
|
}).then(function(json) {
|
2019-02-27 12:58:29 +11:00
|
|
|
if(sel=="install"){
|
|
|
|
if(bit=="x64"){
|
2019-02-27 03:51:37 +11:00
|
|
|
var url=json["winx64"];
|
2019-02-27 12:17:35 +11:00
|
|
|
var file="TheDesk-setup.exe";
|
2019-02-27 12:58:29 +11:00
|
|
|
}else if(bit=="ia32"){
|
2019-02-27 03:51:37 +11:00
|
|
|
var url=json["winia32"];
|
2019-02-27 12:17:35 +11:00
|
|
|
var file="TheDesk-setup-ia32.exe";
|
2019-02-27 03:51:37 +11:00
|
|
|
}
|
|
|
|
}else if(sel=="portable"){
|
2019-02-27 12:58:29 +11:00
|
|
|
if(bit=="x64"){
|
2019-02-27 03:51:37 +11:00
|
|
|
var url=json["winx64p"];
|
2019-02-27 12:17:35 +11:00
|
|
|
var file="TheDesk.exe";
|
2019-02-27 12:58:29 +11:00
|
|
|
}else if(bit=="ia32"){
|
2019-02-27 03:51:37 +11:00
|
|
|
var url=json["winia32p"];
|
2019-02-27 12:17:35 +11:00
|
|
|
var file="TheDesk-ia32.exe";
|
2019-02-27 03:51:37 +11:00
|
|
|
}
|
2019-02-27 12:17:35 +11:00
|
|
|
}else if(sel=="linux"){
|
2019-02-27 12:58:29 +11:00
|
|
|
if(bit=="x64"){
|
2019-02-27 12:17:35 +11:00
|
|
|
var url=json["linuxx64"];
|
|
|
|
var file="TheDesk-linux-x64.zip";
|
2019-02-27 12:58:29 +11:00
|
|
|
}else if(bit=="ia32"){
|
2019-02-27 12:17:35 +11:00
|
|
|
var url=json["linuxia64"];
|
|
|
|
var file="TheDesk-linux-ia32.zip";
|
|
|
|
}
|
|
|
|
}else if(sel=="mac"){
|
|
|
|
var url=json["mac"];
|
2019-05-19 16:17:05 +10:00
|
|
|
shell.openExternal(url);
|
2019-02-27 03:51:37 +11:00
|
|
|
}
|
2019-02-27 12:17:35 +11:00
|
|
|
ipc.send('download-btn', [url,file]);
|
2019-02-27 03:51:37 +11:00
|
|
|
});
|
|
|
|
|
2018-08-24 01:15:57 +10:00
|
|
|
}
|
2018-07-30 03:35:29 +10:00
|
|
|
function quit(){
|
|
|
|
ipc.send('quit', 'go');
|
|
|
|
}
|
|
|
|
ipc.on('prog', function (event, arg) {
|
2018-08-24 01:15:57 +10:00
|
|
|
console.log(arg);
|
|
|
|
$("body").css('background','linear-gradient(#fff 0%,#fff '+(1-arg)*100+'%, #d7ccc8 '+(1-arg)*100+'%, #d7ccc8 100%)');
|
|
|
|
$("#prog").text(Math.floor(arg*100)+"%");
|
2018-07-30 03:35:29 +10:00
|
|
|
})
|
|
|
|
ipc.on('mess', function (event, arg) {
|
|
|
|
console.log(arg);
|
|
|
|
$("#prog").text(arg);
|
|
|
|
})
|
|
|
|
function verck(){
|
2018-08-24 01:15:57 +10:00
|
|
|
var remote=electron.remote;
|
2019-02-27 03:51:37 +11:00
|
|
|
var platform=remote.process.platform;
|
|
|
|
var bit=process.arch;
|
2019-03-29 04:12:25 +11:00
|
|
|
if(platform=="win32"){
|
|
|
|
$('.windows').removeClass("hide")
|
|
|
|
}else if(platform=="linux"){
|
|
|
|
$('.linux').removeClass("hide")
|
|
|
|
}else if(platform=="darwin"){
|
|
|
|
$('.mac').removeClass("hide")
|
2018-08-24 01:15:57 +10:00
|
|
|
}
|
2018-07-30 03:35:29 +10:00
|
|
|
var start="https://thedesk.top/ver.json";
|
|
|
|
fetch(start, {
|
|
|
|
method: 'GET',
|
|
|
|
headers: {'content-type': 'application/json'},
|
|
|
|
}).then(function(response) {
|
|
|
|
return response.json();
|
|
|
|
}).catch(function(error) {
|
|
|
|
todo(error);
|
|
|
|
console.error(error);
|
|
|
|
}).then(function(json) {
|
2019-04-23 00:16:57 +10:00
|
|
|
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);
|
|
|
|
}
|
2019-05-06 20:10:03 +10:00
|
|
|
var lang="@@lang@@";
|
2019-04-23 00:16:57 +10:00
|
|
|
if(lang=="ja"){
|
|
|
|
$("#det").html(json.detail);
|
|
|
|
}else{
|
|
|
|
$("#det").html(json.detail_en);
|
|
|
|
}
|
|
|
|
|
2019-02-27 03:51:37 +11:00
|
|
|
$("#now").text(localStorage.getItem("ver"));
|
|
|
|
|
2018-07-30 03:35:29 +10:00
|
|
|
});
|
|
|
|
}
|
|
|
|
function nextv(){
|
|
|
|
localStorage.setItem("new-ver-skip","true");
|
|
|
|
window.close();
|
|
|
|
}
|
|
|
|
function enc(ver){
|
|
|
|
var ver = ver.replace( /\s/g , "" );
|
|
|
|
var ver = ver.replace( /\(/g , "-" );
|
|
|
|
var ver = ver.replace( /\)/g , "" );
|
|
|
|
var ver = ver.replace( /\[/g , "_" );
|
|
|
|
var ver = ver.replace( /\]/g , "" );
|
|
|
|
return ver;
|
|
|
|
}
|
2018-08-24 01:15:57 +10:00
|
|
|
</script>
|