diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml new file mode 100644 index 00000000..f4bae68d --- /dev/null +++ b/.github/workflows/deploy-docs.yml @@ -0,0 +1,24 @@ +name: Deploy Docs +on: + push: + branches: + - master + paths: + - docs/** + +defaults: + run: + working-directory: docs + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-python@v2 + with: + python-version: 3.x + - run: pip install --upgrade pip + - run: pip install --upgrade setuptools wheel + - run: pip install mkdocs mkdocs-material pymdown-extensions + - run: mkdocs gh-deploy --force diff --git a/docs/docs/images/back.png b/docs/docs/images/back.png new file mode 100644 index 00000000..8dd12ef3 Binary files /dev/null and b/docs/docs/images/back.png differ diff --git a/docs/docs/images/favicon-303x303.png b/docs/docs/images/favicon-303x303.png new file mode 100644 index 00000000..71f5f781 Binary files /dev/null and b/docs/docs/images/favicon-303x303.png differ diff --git a/docs/docs/images/favicon.ico b/docs/docs/images/favicon.ico new file mode 100644 index 00000000..806ba7a8 Binary files /dev/null and b/docs/docs/images/favicon.ico differ diff --git a/docs/docs/mkdocs.yml b/docs/docs/mkdocs.yml deleted file mode 100644 index f537d96b..00000000 --- a/docs/docs/mkdocs.yml +++ /dev/null @@ -1,10 +0,0 @@ -site_name: "MeshCentral2 Documentation" -nav: - - Home: index.md -site_description: "A remote monitoring and management tool" -site_author: " Ylianst" -site_url: "https://git.meshcentral.com/" - -# Repository -repo_name: "Ylianst/MeshCentral" -repo_url: "https://github.com/Ylianst/MeshCentral" \ No newline at end of file diff --git a/docs/docs/stylesheets/extra.css b/docs/docs/stylesheets/extra.css new file mode 100644 index 00000000..27b95321 --- /dev/null +++ b/docs/docs/stylesheets/extra.css @@ -0,0 +1,63 @@ +.md-header { + background-color: #0b3e81 !important; + color: white !important; +} +.md-search__input { + background-color: white !important; +} +.md-search__icon[for=__search]{ + color: initial; +} +.md-container { + background-color: #0b3e81; +} +.md-footer-meta__inner { + background-color: #0b3e81; +} +.md-grid { +} +.md-nav__item .md-nav__link--active { + color: white; +} +.md-nav__link { + color: white; +} +.md-nav__link[data-md-state=blur] { + color: white; +} +.md-typeset a { + color: whitesmoke; + text-decoration: underline; + text-shadow: 4px 4px 8px black; +} +.md-typeset h1 { + color: white; + text-shadow: 4px 4px 8px black; +} +.md-typeset h2 { + color: white; + text-shadow: 4px 4px 8px black; +} +.md-typeset h3 { + color: white; + text-shadow: 4px 4px 8px black; +} +.md-typeset h4 { + color: white; + text-shadow: 4px 4px 8px black; +} +.md-typeset h5 { + color: white; + text-shadow: 4px 4px 8px black; +} +.md-main { + color: white !important; + background-color: #113962; + background: linear-gradient(to bottom, #104893 0%,#113962 100%); +} +a:link { + color: #c8c8c8; +} +.html { + background-color: #0b3e81; +} diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml new file mode 100644 index 00000000..c66ffe93 --- /dev/null +++ b/docs/mkdocs.yml @@ -0,0 +1,54 @@ +site_name: "MeshCentral2 Documentation" +nav: + - Home: index.md +site_description: "A remote monitoring and management tool" +site_author: " Ylianst" +site_url: "https://git.meshcentral.com/" + +# Repository +repo_name: "Ylianst/MeshCentral" +repo_url: "https://github.com/Ylianst/MeshCentral" +edit_uri: "" + +theme: + name: "material" + logo: "images/favicon.ico" + favicon: "images/favicon.ico" + language: "en" + palette: + primary: "white" + accent: "indigo" + features: +extra_css: + - stylesheets/extra.css + +markdown_extensions: + - pymdownx.keys + - pymdownx.inlinehilite + - pymdownx.arithmatex: + generic: true + - pymdownx.betterem: + smart_enable: all + - pymdownx.caret + - admonition + - pymdownx.details + - pymdownx.highlight + - pymdownx.inlinehilite + - pymdownx.keys + - pymdownx.mark + - pymdownx.smartsymbols + - pymdownx.highlight + - pymdownx.inlinehilite + - pymdownx.keys + - pymdownx.mark + - pymdownx.smartsymbols + - codehilite: + guess_lang: false + - toc: + permalink: true + - pymdownx.emoji: + emoji_index: !!python/name:materialx.emoji.twemoji + emoji_generator: !!python/name:materialx.emoji.to_svg + - pymdownx.superfences + - pymdownx.tabbed: + alternate_style: true diff --git a/translate/translate.json b/translate/translate.json index 4995be91..37edde8f 100644 --- a/translate/translate.json +++ b/translate/translate.json @@ -30301,7 +30301,7 @@ "ja": "入力", "ko": "입력", "nl": "Invoer", - "pl": "Wprowadzanie", + "pl": "Sterowanie", "pt": "Entrada", "pt-br": "Entrada", "ru": "Ввод", diff --git a/views/default.handlebars b/views/default.handlebars index 90975608..46a957a6 100644 --- a/views/default.handlebars +++ b/views/default.handlebars @@ -50,6 +50,9 @@
Events
Details
Console
+
Web-RDP
+
Web-VNC
+
Web-SSH

@@ -5749,12 +5752,16 @@ var terminalAccess = ((rights == 0xFFFFFFFF) || ((rights & 512) == 0)); var fileAccess = ((rights == 0xFFFFFFFF) || ((rights & 1024) == 0)); - QV('cxdesktop', (node.mtype != 4) && ((node.mtype == 1) || (node.agent == null) || (node.agent.caps == null) || ((node.agent.caps & 1) != 0) || (node.intelamt && (node.intelamt.state == 2))) && ((rights & 8) || (rights & 256)) && desktopAccess); - QV('cxterminal', (node.mtype != 4) && ((node.mtype == 1) || (node.agent == null) || (node.agent.caps == null) || ((node.agent.caps & 2) != 0) || (node.intelamt && (node.intelamt.state == 2))) && (rights & 8) && terminalAccess); + QV('cxdesktop', ((node.conn & 1) != 0) && (node.mtype != 4) && ((node.mtype == 1) || (node.agent == null) || (node.agent.caps == null) || ((node.agent.caps & 1) != 0) || (node.intelamt && (node.intelamt.state == 2))) && ((rights & 8) || (rights & 256)) && desktopAccess); + QV('cxterminal', ((node.conn & 1) != 0) && (node.mtype != 4) && ((node.mtype == 1) || (node.agent == null) || (node.agent.caps == null) || ((node.agent.caps & 2) != 0) || (node.intelamt && (node.intelamt.state == 2))) && (rights & 8) && terminalAccess); QV('cxfiles', (node.mtype != 4) && ((node.mtype == 2) && ((node.agent == null) || (node.agent.caps == null) || ((node.agent.caps & 4) != 0))) && (rights & 8) && fileAccess); QV('cxevents', (node.intelamt != null) && ((node.intelamt.state == 2) || (node.conn & 2)) && (rights & 8)); QV('cxdetails', node.mtype < 3); + QV('cxwebrdp', ((((node.conn & 1) != 0) || (node.mtype == 3)) && (node.agent) && ((rights & 8) != 0) && ((features & 0x20000000) == 0))); + QV('cxwebvnc', ((((node.conn & 1) != 0) || (node.mtype == 3)) && (node.agent) && ((rights & 8) != 0) && ((features & 0x40000000) == 0))); + QV('cxwebssh', ((features2 & 0x200) && (((node.conn & 1) != 0) || (node.mtype == 3)) && (node.agent) && ((rights & 8) != 0))); QV('cxconsole', (consoleRights && (node.mtype == 2) && ((node.agent == null) || (node.agent.caps == null) || ((node.agent.caps & 8) != 0))) && (rights & 8)); + QV('cxmgroupsplit', true); QV('cxstar', true); break; @@ -5780,7 +5787,7 @@ element.style.display = 'block'; } - function cmaction(action,event) { + function cmaction(action, event) { var nodeid; if (Q('viewselect').value == 1) { nodeid = contextelement.children[0].children[0].children[1].children[0].attributes.onclick.value; @@ -5819,6 +5826,9 @@ updateDeviceViewDevice(nodeid); if (Q('DevFilterSelect').value == 3) { mainUpdate(1); } } + else if (action == 11) { p10mstsc(nodeid); } // Web-RDP + else if (action == 12) { p10rfb(nodeid); } // Web-VNC + else if (action == 13) { p10ssh(nodeid); } // Web-SSH } function cmmeshaction(action) {