Compare commits

...

11 Commits

Author SHA1 Message Date
wh1te909
78636c436f update reqs 2022-11-08 07:24:55 +00:00
wh1te909
d37122386f bump version 2022-10-25 22:02:23 +00:00
wh1te909
17d960fca9 update reqs 2022-10-25 06:36:07 +00:00
wh1te909
d2e0b8ad9b fix function call 2022-10-23 08:04:32 +00:00
wh1te909
776c27ec26 bump version 2022-10-19 22:33:09 +00:00
wh1te909
41c61ce152 update reqs 2022-10-19 06:50:50 +00:00
wh1te909
8e9de8b6b6 check if token expired 2022-10-19 06:47:16 +00:00
wh1te909
4cf5f7a3cb update reqs 2022-10-18 00:20:02 +00:00
wh1te909
9729492d1c make link readable in dark mode amidaware/tacticalrmm#1314 2022-10-14 02:06:15 +00:00
wh1te909
d6da8b4a96 bump version 2022-09-24 02:10:26 +00:00
wh1te909
9264cf4044 change dl command 2022-09-24 02:10:03 +00:00
9 changed files with 490 additions and 449 deletions

867
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{ {
"name": "web", "name": "web",
"version": "0.100.10-dev", "version": "0.101.6-dev",
"private": true, "private": true,
"productName": "Tactical RMM", "productName": "Tactical RMM",
"scripts": { "scripts": {
@@ -10,31 +10,31 @@
"format": "prettier --write \"**/*.{js,ts,vue,,html,md,json}\" --ignore-path .gitignore" "format": "prettier --write \"**/*.{js,ts,vue,,html,md,json}\" --ignore-path .gitignore"
}, },
"dependencies": { "dependencies": {
"@quasar/extras": "1.15.3", "@quasar/extras": "1.15.5",
"apexcharts": "3.35.5", "apexcharts": "3.35.5",
"axios": "0.27.2", "axios": "0.27.2",
"dotenv": "16.0.2", "dotenv": "16.0.3",
"qrcode.vue": "3.3.3", "qrcode.vue": "3.3.3",
"quasar": "2.8.4", "quasar": "2.10.1",
"vue": "3.2.39", "vue": "3.2.41",
"vue3-ace-editor": "2.2.2", "vue3-ace-editor": "2.2.2",
"vue3-apexcharts": "1.4.1", "vue3-apexcharts": "1.4.1",
"vuedraggable": "4.1.0", "vuedraggable": "4.1.0",
"vue-router": "4.1.5", "vue-router": "4.1.6",
"vuex": "4.0.2" "vuex": "4.1.0"
}, },
"devDependencies": { "devDependencies": {
"@quasar/cli": "^1.3.2", "@quasar/cli": "^1.3.2",
"@intlify/vite-plugin-vue-i18n": "^6.0.1", "@intlify/vite-plugin-vue-i18n": "^6.0.3",
"@quasar/app-vite": "^1.1.2", "@quasar/app-vite": "^1.1.3",
"@types/node": "^18.7.18", "@types/node": "^18.11.9",
"@typescript-eslint/eslint-plugin": "^5.38.0", "@typescript-eslint/eslint-plugin": "^5.42.1",
"@typescript-eslint/parser": "^5.38.0", "@typescript-eslint/parser": "^5.42.1",
"autoprefixer": "^10.4.11", "autoprefixer": "^10.4.12",
"eslint": "^8.21.0", "eslint": "^8.27.0",
"eslint-config-prettier": "^8.5.0", "eslint-config-prettier": "^8.5.0",
"eslint-plugin-vue": "^8.5.0", "eslint-plugin-vue": "^8.5.0",
"prettier": "^2.7.1", "prettier": "^2.7.1",
"typescript": "^4.8.3" "typescript": "^4.8.4"
} }
} }

View File

@@ -310,9 +310,10 @@ export default {
} }
function showUpdateDetails(update) { function showUpdateDetails(update) {
const color = $q.dark.isActive ? "white" : "";
let support_urls = ""; let support_urls = "";
update.more_info_urls.forEach((u) => { update.more_info_urls.forEach((u) => {
support_urls += `<a href='${u}' target='_blank'>${u}</a><br/>`; support_urls += `<a style='color: ${color}' href='${u}' target='_blank'>${u}</a><br/>`;
}); });
let cats = update.categories.join(", "); let cats = update.categories.join(", ");
$q.dialog({ $q.dialog({

View File

@@ -208,7 +208,7 @@ export default {
} }
// component lifecycle hooks // component lifecycle hooks
onMounted(getAPIKeys()); onMounted(getAPIKeys);
return { return {
// reactive data // reactive data
keys, keys,

View File

@@ -10,10 +10,13 @@
</q-card-actions> </q-card-actions>
</q-card-section> </q-card-section>
<q-card-section> <q-card-section>
<p class="text-subtitle1"> <p v-if="info.plat === 'windows'" class="text-subtitle1">
Download the agent then run the following command from an elevated Download the agent then run the following command from an elevated
command prompt on the device you want to add. command prompt on the device you want to add.
</p> </p>
<p v-else-if="info.plat === 'darwin'" class="text-subtitle1">
Run the following command from a terminal
</p>
<p> <p>
<q-field outlined :color="$q.dark.isActive ? 'white' : 'black'"> <q-field outlined :color="$q.dark.isActive ? 'white' : 'black'">
<code>{{ info.data.cmd }}</code> <code>{{ info.data.cmd }}</code>
@@ -86,12 +89,12 @@
<p class="text-italic"> <p class="text-italic">
Note: the auth token above will be valid for {{ info.expires }} hours. Note: the auth token above will be valid for {{ info.expires }} hours.
</p> </p>
<q-btn <q-btn v-if="info.plat === 'windows'"
type="a" type="a"
:href="info.data.url" :href="info.data.url"
color="primary" color="primary"
label="Download Agent" label="Download Agent"
/> ></q-btn>
</q-card-section> </q-card-section>
</q-card> </q-card>
</template> </template>

View File

@@ -867,7 +867,7 @@ export default {
} }
// component life cycle hooks // component life cycle hooks
onMounted(getScripts()); onMounted(getScripts);
return { return {
// reactive data // reactive data

View File

@@ -31,7 +31,7 @@ export function useUserDropdown(onMount = false) {
} }
if (onMount) { if (onMount) {
onMounted(getUserOptions()); onMounted(getUserOptions);
} }
return { return {

View File

@@ -14,6 +14,22 @@
@click="$store.dispatch('reload')" @click="$store.dispatch('reload')"
/> />
</q-banner> </q-banner>
<q-banner
v-if="!hosted && tokenExpired"
inline-actions
class="bg-yellow text-black text-center"
>
<q-icon size="xl" name="warning" />
<span><br />Your code signing token is no longer valid.<br/><br/>
If you have downgraded or cancelled your sponsorship, please delete your token from the Code Signing modal and refresh to get rid of this banner.<br/><br/>
For any issues or to renew your sponsorship please email support@amidaware.com<br/><br/></span>
<q-btn
color="dark"
icon="refresh"
label="Refresh"
@click="$store.dispatch('reload')"
/>
</q-banner>
<q-toolbar> <q-toolbar>
<q-btn <q-btn
dense dense
@@ -167,6 +183,7 @@ export default {
const needRefresh = computed(() => store.state.needrefresh); const needRefresh = computed(() => store.state.needrefresh);
const user = computed(() => store.state.username); const user = computed(() => store.state.username);
const hosted = computed(() => store.state.hosted); const hosted = computed(() => store.state.hosted);
const tokenExpired = computed(() => store.state.tokenExpired);
const latestReleaseURL = computed(() => { const latestReleaseURL = computed(() => {
return latestTRMMVersion.value return latestTRMMVersion.value
@@ -259,6 +276,8 @@ export default {
user, user,
needRefresh, needRefresh,
darkMode, darkMode,
hosted,
tokenExpired,
// methods // methods
showUserPreferences, showUserPreferences,

View File

@@ -17,6 +17,7 @@ export default function () {
agentPlatform: "windows", agentPlatform: "windows",
agentTableLoading: false, agentTableLoading: false,
needrefresh: false, needrefresh: false,
tokenExpired: false,
refreshSummaryTab: false, refreshSummaryTab: false,
tableHeight: "300px", tableHeight: "300px",
tabHeight: "300px", tabHeight: "300px",
@@ -83,6 +84,9 @@ export default function () {
SET_REFRESH_NEEDED(state, action) { SET_REFRESH_NEEDED(state, action) {
state.needrefresh = action; state.needrefresh = action;
}, },
SET_TOKEN_EXPIRED(state, action) {
state.tokenExpired = action;
},
SET_SPLITTER(state, val) { SET_SPLITTER(state, val) {
// top toolbar is 50px. Filebar is 40px and agent filter tabs are 44px // top toolbar is 50px. Filebar is 40px and agent filter tabs are 44px
state.tableHeight = `${Screen.height - 50 - 40 - 78 - val}px`; state.tableHeight = `${Screen.height - 50 - 40 - 78 - val}px`;
@@ -212,6 +216,7 @@ export default function () {
context.commit("SET_URL_ACTION", data.url_action); context.commit("SET_URL_ACTION", data.url_action);
context.commit("setShowCommunityScripts", data.show_community_scripts); context.commit("setShowCommunityScripts", data.show_community_scripts);
context.commit("SET_HOSTED", data.hosted); context.commit("SET_HOSTED", data.hosted);
context.commit("SET_TOKEN_EXPIRED", data.token_is_expired);
if (data.date_format && data.date_format !== "") if (data.date_format && data.date_format !== "")
context.commit("setDateFormat", data.date_format); context.commit("setDateFormat", data.date_format);