Added {1} for username in agent privacy bar & notifications.

Ylian Saint-Hilaire committed Jul 13, 2020 at 11:30 UTC ff661d1feb550aea931bec009ba34e33f2d099ea
1 file changed +17 -12
agents/meshcore.js
+17 -12
@@ -1638,11 +1638,12 @@ function createMeshCore(agent) {
1638 }
1639 } else {
1640 for (var i in this.httprequest.desktop.kvm.users) {
1641 - if (this.httprequest.desktop.kvm.users[i] == this.httprequest.username && this.httprequest.desktop.kvm.connectionBar) {
1641 + if ((this.httprequest.desktop.kvm.users[i] == this.httprequest.username) && this.httprequest.desktop.kvm.connectionBar) {
1642 + for (var j in this.httprequest.desktop.kvm.rusers) { if (this.httprequest.desktop.kvm.rusers[j] == this.httprequest.realname) { this.httprequest.desktop.kvm.rusers.splice(j, 1); break; } }
1643 this.httprequest.desktop.kvm.users.splice(i, 1);
1644 this.httprequest.desktop.kvm.connectionBar.removeAllListeners('close');
1645 this.httprequest.desktop.kvm.connectionBar.close();
1645 - this.httprequest.desktop.kvm.connectionBar = require('notifybar-desktop')(this.httprequest.privacybartext.replace('{0}', this.httprequest.desktop.kvm.users.sort().join(', ')), require('MeshAgent')._tsid);
1646 + this.httprequest.desktop.kvm.connectionBar = require('notifybar-desktop')(this.httprequest.privacybartext.replace('{0}', this.httprequest.desktop.kvm.users.join(', ')).replace('{1}', this.httprequest.desktop.kvm.rusers.join(', ')), require('MeshAgent')._tsid);
1647 this.httprequest.desktop.kvm.connectionBar.httprequest = this.httprequest;
1648 this.httprequest.desktop.kvm.connectionBar.on('close', function () {
1649 MeshServerLog("Remote Desktop Connection forcefully closed by local user (" + this.httprequest.remoteaddr + ")", this.httprequest);
@@ -1658,10 +1659,14 @@ function createMeshCore(agent) {
1659 };
1660 if (this.httprequest.desktop.kvm.hasOwnProperty('connectionCount')) {
1661 this.httprequest.desktop.kvm.connectionCount++;
1661 - this.httprequest.desktop.kvm.users.push(this.httprequest.realname);
1662 + this.httprequest.desktop.kvm.rusers.push(this.httprequest.realname);
1663 + this.httprequest.desktop.kvm.users.push(this.httprequest.username);
1664 + this.httprequest.desktop.kvm.rusers.sort();
1665 + this.httprequest.desktop.kvm.users.sort();
1666 } else {
1667 this.httprequest.desktop.kvm.connectionCount = 1;
1664 - this.httprequest.desktop.kvm.users = [this.httprequest.realname];
1668 + this.httprequest.desktop.kvm.rusers = [this.httprequest.realname];
1669 + this.httprequest.desktop.kvm.users = [this.httprequest.username];
1670 }
1671
1672 if ((this.httprequest.rights == 0xFFFFFFFF) || (((this.httprequest.rights & MESHRIGHT_REMOTECONTROL) != 0) && ((this.httprequest.rights & MESHRIGHT_REMOTEVIEW) == 0))) {
@@ -1682,7 +1687,7 @@ function createMeshCore(agent) {
1687 var consentMessage = this.httprequest.realname + " requesting remote desktop access. Grant access?", consentTitle = 'MeshCentral';
1688 if (this.httprequest.soptions != null) {
1689 if (this.httprequest.soptions.consentTitle != null) { consentTitle = this.httprequest.soptions.consentTitle; }
1685 - if (this.httprequest.soptions.consentMsgDesktop != null) { consentMessage = this.httprequest.soptions.consentMsgDesktop.replace('{0}', this.httprequest.realname); }
1690 + if (this.httprequest.soptions.consentMsgDesktop != null) { consentMessage = this.httprequest.soptions.consentMsgDesktop.replace('{0}', this.httprequest.realname).replace('{1}', this.httprequest.username); }
1691 }
1692 var pr = require('message-box').create(consentTitle, consentMessage, 30, null, tsid);
1693 pr.ws = this;
@@ -1701,7 +1706,7 @@ function createMeshCore(agent) {
1706 var notifyMessage = this.ws.httprequest.realname + " started a remote desktop session.", notifyTitle = "MeshCentral";
1707 if (this.ws.httprequest.soptions != null) {
1708 if (this.ws.httprequest.soptions.notifyTitle != null) { notifyTitle = this.ws.httprequest.soptions.notifyTitle; }
1704 - if (this.ws.httprequest.soptions.notifyMsgDesktop != null) { notifyMessage = this.ws.httprequest.soptions.notifyMsgDesktop.replace('{0}', this.ws.httprequest.realname); }
1709 + if (this.ws.httprequest.soptions.notifyMsgDesktop != null) { notifyMessage = this.ws.httprequest.soptions.notifyMsgDesktop.replace('{0}', this.ws.httprequest.realname).replace('{1}', this.ws.httprequest.username); }
1710 }
1711 try { require('toaster').Toast(notifyTitle, notifyMessage, tsid); } catch (ex) { }
1712 }
@@ -1712,7 +1717,7 @@ function createMeshCore(agent) {
1717 this.ws.httprequest.desktop.kvm.connectionBar.close();
1718 }
1719 try {
1715 - this.ws.httprequest.desktop.kvm.connectionBar = require('notifybar-desktop')(this.ws.httprequest.privacybartext.replace('{0}', this.ws.httprequest.desktop.kvm.users.sort().join(', ')), require('MeshAgent')._tsid);
1720 + this.ws.httprequest.desktop.kvm.connectionBar = require('notifybar-desktop')(this.ws.httprequest.privacybartext.replace('{0}', this.ws.httprequest.desktop.kvm.users.join(', ')).replace('{1}', this.ws.httprequest.desktop.kvm.rusers.join(', ')), require('MeshAgent')._tsid);
1721 MeshServerLog("Remote Desktop Connection Bar Activated/Updated (" + this.ws.httprequest.remoteaddr + ")", this.ws.httprequest);
1722 }
1723 catch (xx) {
@@ -1750,7 +1755,7 @@ function createMeshCore(agent) {
1755 var notifyMessage = this.httprequest.realname + " started a remote desktop session.", notifyTitle = "MeshCentral";
1756 if (this.httprequest.soptions != null) {
1757 if (this.httprequest.soptions.notifyTitle != null) { notifyTitle = this.httprequest.soptions.notifyTitle; }
1753 - if (this.httprequest.soptions.notifyMsgDesktop != null) { notifyMessage = this.httprequest.soptions.notifyMsgDesktop.replace('{0}', this.httprequest.realname); }
1758 + if (this.httprequest.soptions.notifyMsgDesktop != null) { notifyMessage = this.httprequest.soptions.notifyMsgDesktop.replace('{0}', this.httprequest.realname).replace('{1}', this.httprequest.username); }
1759 }
1760 try { require('toaster').Toast(notifyTitle, notifyMessage, tsid); } catch (ex) { }
1761 } else {
@@ -1763,7 +1768,7 @@ function createMeshCore(agent) {
1768 this.httprequest.desktop.kvm.connectionBar.close();
1769 }
1770 try {
1766 - this.httprequest.desktop.kvm.connectionBar = require('notifybar-desktop')(this.httprequest.privacybartext.replace('{0}', this.httprequest.desktop.kvm.users.sort().join(', ')), require('MeshAgent')._tsid);
1771 + this.httprequest.desktop.kvm.connectionBar = require('notifybar-desktop')(this.httprequest.privacybartext.replace('{0}', this.httprequest.desktop.kvm.rusers.join(', ')).replace('{1}', this.httprequest.desktop.kvm.users.join(', ')), require('MeshAgent')._tsid);
1772 MeshServerLog("Remote Desktop Connection Bar Activated/Updated (" + this.httprequest.remoteaddr + ")", this.httprequest);
1773 }
1774 catch (xx) {
@@ -1826,7 +1831,7 @@ function createMeshCore(agent) {
1831 var consentMessage = this.httprequest.realname + " requesting remote file Access. Grant access?", consentTitle = 'MeshCentral';
1832 if (this.httprequest.soptions != null) {
1833 if (this.httprequest.soptions.consentTitle != null) { consentTitle = this.httprequest.soptions.consentTitle; }
1829 - if (this.httprequest.soptions.consentMsgFiles != null) { consentMessage = this.httprequest.soptions.consentMsgFiles.replace('{0}', this.httprequest.realname); }
1834 + if (this.httprequest.soptions.consentMsgFiles != null) { consentMessage = this.httprequest.soptions.consentMsgFiles.replace('{0}', this.httprequest.realname).replace('{1}', this.httprequest.username); }
1835 }
1836 var pr = require('message-box').create(consentTitle, consentMessage, 30);
1837 pr.ws = this;
@@ -1845,7 +1850,7 @@ function createMeshCore(agent) {
1850 var notifyMessage = this.ws.httprequest.realname + " started a remote file session.", notifyTitle = "MeshCentral";
1851 if (this.ws.httprequest.soptions != null) {
1852 if (this.ws.httprequest.soptions.notifyTitle != null) { notifyTitle = this.ws.httprequest.soptions.notifyTitle; }
1848 - if (this.ws.httprequest.soptions.notifyMsgFiles != null) { notifyMessage = this.ws.httprequest.soptions.notifyMsgFiles.replace('{0}', this.ws.httprequest.realname); }
1853 + if (this.ws.httprequest.soptions.notifyMsgFiles != null) { notifyMessage = this.ws.httprequest.soptions.notifyMsgFiles.replace('{0}', this.ws.httprequest.realname).replace('{1}', this.ws.httprequest.username); }
1854 }
1855 try { require('toaster').Toast(notifyTitle, notifyMessage); } catch (ex) { }
1856 }
@@ -1866,7 +1871,7 @@ function createMeshCore(agent) {
1871 var notifyMessage = this.httprequest.realname + " started a remote file session.", notifyTitle = "MeshCentral";
1872 if (this.httprequest.soptions != null) {
1873 if (this.httprequest.soptions.notifyTitle != null) { notifyTitle = this.httprequest.soptions.notifyTitle; }
1869 - if (this.httprequest.soptions.notifyMsgFiles != null) { notifyMessage = this.httprequest.soptions.notifyMsgFiles.replace('{0}', this.httprequest.realname); }
1874 + if (this.httprequest.soptions.notifyMsgFiles != null) { notifyMessage = this.httprequest.soptions.notifyMsgFiles.replace('{0}', this.httprequest.realname).replace('{1}', this.httprequest.username); }
1875 }
1876 try { require('toaster').Toast(notifyTitle, notifyMessage); } catch (ex) { }
1877 } else {