Version 0.6.86
This commit is contained in:
parent
e72fcaca42
commit
22105f2af3
|
@ -2218,6 +2218,21 @@ function createMeshCore(agent) {
|
|||
try { fs.renameSync(oldfullpath, newfullpath); } catch (e) { console.log(e); }
|
||||
break;
|
||||
}
|
||||
case 'findfile': {
|
||||
// Search for files
|
||||
var r = require('file-search').find(cmd.path, cmd.filter);
|
||||
r.socket = this;
|
||||
r.socket.reqid = cmd.reqid; // Search request id. This is used to send responses and cancel the request.
|
||||
r.socket.path = cmd.path; // Search path
|
||||
r.on('result', function (str) { try { this.socket.write(Buffer.from(JSON.stringify({ action: 'findfile', r: str.substring(this.socket.path.length), reqid: this.socket.reqid }))); } catch (ex) { } });
|
||||
r.then(function () { try { this.socket.write(Buffer.from(JSON.stringify({ action: 'findfile', r: null, reqid: this.socket.reqid }))); } catch (ex) { } });
|
||||
break;
|
||||
}
|
||||
case 'cancelfindfile': {
|
||||
// TODO: Cancel a search for files
|
||||
// cmd.reqid <-- Cancel this reqid
|
||||
sendConsoleText('cancelfindfile: ' + cmd.reqid);
|
||||
}
|
||||
case 'download': {
|
||||
// Download a file
|
||||
var sendNextBlock = 0;
|
||||
|
|
|
@ -11,5 +11,5 @@
|
|||
<p style="margin-left:30px">
|
||||
<a href="[[[SERVERURL]]]/checkmail?c=[[[COOKIE]]][[[URLARGS2]]]">Cliquez ici pour vérifier votre adresse e-mail.</a>
|
||||
</p>
|
||||
Si vous n'avez pas initié cette demande, veuillez ignorer cet e-mail.
|
||||
Si vous n'avez pas initié cette demande, veuillez ignorer ce courrier.
|
||||
</div></body></html>
|
|
@ -1,6 +1,6 @@
|
|||
[[[SERVERNAME]]] - Vérification E-mail
|
||||
Bonjour [[[USERNAME]]], [[[SERVERNAME]]] ([[[SERVERURL]]][[[URLARGS1]]]) effectue une vérification par e-mail. Accédez au lien suivant pour terminer le processus :
|
||||
Bonjour [[[USERNAME]]], [[[SERVERNAME]]] ([[[SERVERURL]]][[[URLARGS1]]]) effectue une vérification par e-mail. Accédez au lien suivant pour terminer le processus:
|
||||
~
|
||||
~[[[SERVERURL]]]/checkmail?c=[[[COOKIE]]][[[URLARGS2]]]
|
||||
~
|
||||
Si vous n'avez pas initié cette demande, veuillez ignorer cet e-mail.
|
||||
Si vous n'avez pas initié cette demande, veuillez ignorer ce courrier.
|
|
@ -7,10 +7,10 @@
|
|||
</td>
|
||||
</tr>
|
||||
</tbody></table>
|
||||
<p>Un compte a été créé pour vous sur le serveur <a href="[[[SERVERURL]]][[[URLARGS1]]]" notrans="1">[[[SERVERNAME]]]</a>, vous pouvez y accéder maintenant avec :</p>
|
||||
<p>Un compte a été créé pour vous sur le serveur <a href="[[[SERVERURL]]][[[URLARGS1]]]" notrans="1">[[[SERVERNAME]]]</a>, vous pouvez y accéder maintenant avec:</p>
|
||||
<p>
|
||||
Nom d'utilisateur : <b notrans="1">[[[ACCOUNTNAME]]]</b><br>
|
||||
Mot de passe : <b notrans="1">[[[PASSWORD]]]</b>
|
||||
Nom d'utilisateur: <b notrans="1">[[[ACCOUNTNAME]]]</b><br>
|
||||
Mot de passe: <b notrans="1">[[[PASSWORD]]]</b>
|
||||
</p>
|
||||
Meilleures salutations,
|
||||
<br>
|
||||
|
|
|
@ -7,6 +7,6 @@
|
|||
</td>
|
||||
</tr>
|
||||
</tbody></table>
|
||||
<p>Votre jeton de connexion est : [[[TOKEN]]]</p>
|
||||
<p>Votre jeton de connexion est: [[[TOKEN]]]</p>
|
||||
<p>Ce jeton ne peut être utilisé qu'une seule fois et est valide pendant 5 minutes.</p>
|
||||
</div></body></html>
|
|
@ -1,4 +1,4 @@
|
|||
[[[SERVERNAME]]] - Connexion au compte
|
||||
Votre jeton de connexion est : [[[TOKEN]]]
|
||||
Votre jeton de connexion est: [[[TOKEN]]]
|
||||
~
|
||||
Ce jeton ne peut être utilisé qu'une seule fois et est valide pendant 5 minutes.
|
|
@ -11,5 +11,5 @@
|
|||
<p style="margin-left:30px">
|
||||
<a href="[[[SERVERURL]]]/checkmail?c=[[[COOKIE]]][[[URLARGS2]]]">Cliquez ici pour réinitialiser le mot de passe de votre compte.</a>
|
||||
</p>
|
||||
Si vous n'avez pas initié cette demande, veuillez ignorer cet e-mail.
|
||||
Si vous n'avez pas initié cette demande, veuillez ignorer ce courrier.
|
||||
</div></body></html>
|
|
@ -1,6 +1,6 @@
|
|||
[[[SERVERNAME]]] - Réinitialisation du compte
|
||||
Bonjour [[[USERNAME]]], [[[SERVERNAME]]] ([[[SERVERURL]]][[[URLARGS1]]]) demande une réinitialisation du mot de passe du compte. Accédez au lien suivant pour terminer le processus :
|
||||
Bonjour [[[USERNAME]]], [[[SERVERNAME]]] ([[[SERVERURL]]][[[URLARGS1]]]) demande une réinitialisation du mot de passe du compte. Accédez au lien suivant pour terminer le processus:
|
||||
~
|
||||
~[[[SERVERURL]]]/checkmail?c=[[[COOKIE]]][[[URLARGS2]]]
|
||||
~
|
||||
Si vous n'avez pas initié cette demande, veuillez ignorer cet e-mail.
|
||||
Si vous n'avez pas initié cette demande, veuillez ignorer ce courrier.
|
|
@ -15,7 +15,7 @@
|
|||
<p>Utilisateur [[[USERNAME]]] sur le serveur <a href="[[[SERVERURL]]]">[[[SERVERNAME]]]</a> vous demande d'installer un logiciel pour démarrer une session de contrôle à distance.</p>
|
||||
<area-msg>
|
||||
<p>
|
||||
Message : <b notrans="1">[[[MSG]]]</b>
|
||||
Message: <b notrans="1">[[[MSG]]]</b>
|
||||
</p>
|
||||
</area-msg>
|
||||
<area-windows>
|
||||
|
@ -28,7 +28,7 @@
|
|||
</area-osx>
|
||||
<area-linux>
|
||||
<p>
|
||||
Pour Linux, copiez et collez les éléments suivants dans un terminal pour installer l'agent :<br>
|
||||
Pour Linux, copiez et collez les éléments suivants dans un terminal pour installer l'agent:<br>
|
||||
</p><pre style="margin-left:30px" notrans="1">wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'</pre>
|
||||
<p></p>
|
||||
</area-linux>
|
||||
|
@ -37,6 +37,6 @@
|
|||
Pour installer le logiciel, <a href="[[[SERVERURL]]][[[LINKURL]]]">cliquez ici</a> et suivez les instructions.
|
||||
</p>
|
||||
</area-link>
|
||||
<p>Si vous n'avez pas initié cette demande, veuillez ignorer cet e-mail.</p>
|
||||
<p>Si vous n'avez pas initié cette demande, veuillez ignorer ce courrier.</p>
|
||||
Meilleures salutations,<br>[[[USERNAME]]]<br>
|
||||
</div></body></html>
|
|
@ -5,23 +5,23 @@ Bonjour [[[NAME]]],
|
|||
L'utilisateur [[[USERNAME]]] sur le serveur [[[SERVERNAME]]] ([[[SERVERURL]]]/[[[URLARGS1]]]) vous demande d'installer un logiciel pour démarrer la session de contrôle à distance.
|
||||
~<area-msg>
|
||||
~
|
||||
Message : [[[MSG]]]
|
||||
Message: [[[MSG]]]
|
||||
~
|
||||
~</area-msg>
|
||||
~<area-windows>
|
||||
Pour Windows, accédez au lien suivant pour terminer le processus :
|
||||
Pour Windows, accédez au lien suivant pour terminer le processus:
|
||||
~
|
||||
~[[[SERVERURL]]]/meshagents?id=4&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
|
||||
~
|
||||
~</area-windows>
|
||||
~<area-osx>
|
||||
Pour Apple OSX, accédez au lien suivant pour terminer le processus :
|
||||
Pour Apple OSX, accédez au lien suivant pour terminer le processus:
|
||||
~
|
||||
~[[[SERVERURL]]]/meshosxagent?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
|
||||
~
|
||||
~</area-osx>
|
||||
~<area-linux>
|
||||
Pour Linux, copiez et collez les éléments suivants dans un terminal pour installer l'agent :
|
||||
Pour Linux, copiez et collez les éléments suivants dans un terminal pour installer l'agent:
|
||||
~
|
||||
~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] '[[[MESHIDHEX]]]'
|
||||
~
|
||||
|
@ -29,7 +29,7 @@ Pour Linux, copiez et collez les éléments suivants dans un terminal pour insta
|
|||
~<area-link>
|
||||
Pour installer le logiciel, accédez à [[[SERVERURL]]][[[LINKURL]]][[[URLARGS2]]] et suivez les instructions.
|
||||
~</area-link>
|
||||
Si vous n'avez pas initié cette demande, veuillez ignorer cet e-mail.
|
||||
Si vous n'avez pas initié cette demande, veuillez ignorer ce courrier.
|
||||
~
|
||||
Meilleures salutations,
|
||||
~[[[USERNAME]]]
|
|
@ -1,2 +1,2 @@
|
|||
[[0]] le code de vérification est : [[1]]
|
||||
[[0]] le jeton d'accès est : [[1]]
|
||||
[[0]] le code de vérification est: [[1]]
|
||||
[[0]] le jeton d'accès est: [[1]]
|
||||
|
|
|
@ -2218,7 +2218,7 @@ function CreateMeshCentralServer(config, args) {
|
|||
26: { id: 26, localname: 'meshagent_arm64', rname: 'meshagent', desc: 'Linux ARMv8-64', update: true, amt: false, platform: 'linux', core: 'linux-noamt', rcore: 'linux-recovery', arcore: 'linux-agentrecovery' }, // "aarch64"
|
||||
27: { id: 27, localname: 'meshagent_armhf2', rname: 'meshagent', desc: 'Linux ARM - HardFloat', update: true, amt: false, platform: 'linux', core: 'linux-noamt', rcore: 'linux-recovery', arcore: 'linux-agentrecovery' }, // Raspbian 7 2015-02-02 for old Raspberry Pi.
|
||||
28: { id: 28, localname: 'meshagent_mips24kc', rname: 'meshagent', desc: 'Linux MIPS24KC (OpenWRT)', update: true, amt: false, platform: 'linux', core: 'linux-noamt', rcore: 'linux-recovery', arcore: 'linux-agentrecovery' }, // MIPS Router with OpenWRT
|
||||
29: { id: 29, localname: 'meshagent_osx-arm-64', rname: 'meshagent', desc: 'Apple OSX ARM-64', update: true, amt: false, platform: 'osx', core: 'linux-noamt', rcore: 'linux-recovery', arcore: 'linux-agentrecovery' }, // Apple Silicon
|
||||
29: { id: 29, localname: 'meshagent_osx-arm-any', rname: 'meshagent', desc: 'Apple OSX ARM-Any', update: true, amt: false, platform: 'osx', core: 'linux-noamt', rcore: 'linux-recovery', arcore: 'linux-agentrecovery' }, // Apple Silicon
|
||||
30: { id: 30, localname: 'meshagent_freebsd_x86-64', rname: 'meshagent', desc: 'FreeBSD x86-64', update: true, amt: false, platform: 'freebsd', core: 'linux-noamt', rcore: 'linux-recovery', arcore: 'linux-agentrecovery' }, // FreeBSD x64
|
||||
10003: { id: 3, localname: 'MeshService.exe', rname: 'meshagent.exe', desc: 'Windows x86-32 service', update: true, amt: true, platform: 'win32', core: 'windows-amt', rcore: 'linux-recovery', arcore: 'linux-agentrecovery' }, // Unsigned version of the Windows MeshAgent x86
|
||||
10004: { id: 4, localname: 'MeshService64.exe', rname: 'meshagent.exe', desc: 'Windows x86-64 service', update: true, amt: true, platform: 'win32', core: 'windows-amt', rcore: 'linux-recovery', arcore: 'linux-agentrecovery' } // Unsigned version of the Windows MeshAgent x64
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "meshcentral",
|
||||
"version": "0.6.85",
|
||||
"version": "0.6.86",
|
||||
"keywords": [
|
||||
"Remote Device Management",
|
||||
"Remote Device Monitoring",
|
||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -762,6 +762,7 @@
|
|||
<input type=button id=p13PasteButton disabled="disabled" value="Paste" onclick="p13pasteFile()" />
|
||||
<input type=button id=p13ZipButton disabled="disabled" value="Zip" onclick="p13zipFiles()" />
|
||||
<input type=button id=p13RefreshButton disabled="disabled" value="Refresh" onclick="p13folderup(9999)" />
|
||||
<input type=button id=p13FindButton disabled="disabled" value="Find" onclick="p13findfile()" />
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
|
@ -8028,6 +8029,12 @@
|
|||
data = JSON.parse(decode_utf8(data));
|
||||
if (data.action == 'download') { p13gotDownloadCommand(data); return; }
|
||||
|
||||
// Find file result
|
||||
if (data.action == 'findfile') {
|
||||
if (xxdialogTag == data.reqid) { if (data.r == null) { QE('d2findFilter', true); QE('filefind_dlgOkButton', true); xxdialogTag = null; } else { QA('d2findResults', '<div style=white-space:nowrap>' + EscapeHtml(data.r) + '</div>'); } }
|
||||
return;
|
||||
}
|
||||
|
||||
// Process file upload commands
|
||||
if ((data.action != null) && (data.action.startsWith('upload'))) { p13gotUploadData(data); return; }
|
||||
|
||||
|
@ -8149,6 +8156,38 @@
|
|||
return false;
|
||||
}
|
||||
|
||||
function p13findfile() {
|
||||
if (xxdialogMode) return;
|
||||
var x = addHtmlValue("Filter", '<input id=d2findFilter style="width:230px" onkeyup=p13findfileValidate() placeholder="*.txt"></input>');
|
||||
x += '<div id=d2findResults style="width:100%;height:184px;background-color:white;border:1px solid black;padding:3px;overflow:scroll;margin-top:8px"></div>';
|
||||
x += '<div style=margin-top:8px><input id=filefind_dlgCancelButton type=button value=' + "Cancel" + ' style=float:right;width:80px;margin-left:5px onclick=p13findfileCancel()>';
|
||||
x += '<input id=filefind_dlgOkButton type=submit value=' + "OK" + ' style=float:right;width:80px onclick=p13findfileEx()><br /><br /></div>';
|
||||
setDialogMode(2, "File Files", 0, null, x);
|
||||
Q('d2findResults').focus();
|
||||
p13findfileValidate();
|
||||
}
|
||||
|
||||
function p13findfileValidate() {
|
||||
QE('filefind_dlgOkButton', Q('d2findFilter').value.length > 0);
|
||||
}
|
||||
|
||||
function p13findfileCancel() {
|
||||
if (xxdialogTag != null) { files.sendText({ action: 'cancelfindfile', reqid: xxdialogTag }); }
|
||||
dialogclose(0)
|
||||
}
|
||||
|
||||
function p13findfileEx(b, t) {
|
||||
var winagent = ((currentNode.agent.id > 0) && (currentNode.agent.id < 5));
|
||||
var slash = winagent ? '\\' : '/';
|
||||
var path = p13filetreelocation.join(slash) + slash;
|
||||
if (!winagent) { path = slash + path; }
|
||||
xxdialogTag = 'find:' + Math.random();
|
||||
files.sendText({ action: 'findfile', reqid: xxdialogTag, path: path, filter: Q('d2findFilter').value });
|
||||
QH('d2findResults', '');
|
||||
QE('d2findFilter', false);
|
||||
QE('filefind_dlgOkButton', false);
|
||||
}
|
||||
|
||||
var p13sortorder;
|
||||
function p13sort_filename(a, b) { if (a.ln > b.ln) return (1 * p13sortorder); if (a.ln < b.ln) return (-1 * p13sortorder); return 0; }
|
||||
function p13sort_timestamp(a, b) { if (a.d > b.d) return (1 * p13sortorder); if (a.d < b.d) return (-1 * p13sortorder); return 0; }
|
||||
|
@ -8175,6 +8214,7 @@
|
|||
QE('p13SelectAllButton', false);
|
||||
Q('p13SelectAllButton').value = "Select All";
|
||||
QE('p13RefreshButton', false);
|
||||
QE('p13FindButton', false);
|
||||
QE('p13CutButton', false);
|
||||
QE('p13CopyButton', false);
|
||||
QE('p13ZipButton', false);
|
||||
|
@ -8190,6 +8230,7 @@
|
|||
QE('p13SelectAllButton', tc > 0);
|
||||
Q('p13SelectAllButton').value = (cc > 0 ? "Select None" : "Select All");
|
||||
QE('p13RefreshButton', true);
|
||||
QE('p13FindButton', ((p13filetreelocation.length > 0) || (winAgent == false)));
|
||||
QE('p13CutButton', (cc > 0) && (cc == sfc) && ((p13filetreelocation.length > 0) || (winAgent == false)));
|
||||
QE('p13CopyButton', (cc > 0) && (cc == sfc) && ((p13filetreelocation.length > 0) || (winAgent == false)));
|
||||
QE('p13ZipButton', (cc > 0) && ((p13filetreelocation.length > 0) || (winAgent == false)));
|
||||
|
|
Loading…
Reference in New Issue