#459 Refactoring

This commit is contained in:
Tommy Mikkelsen 2022-04-22 01:59:12 +02:00
parent 00be78aaa1
commit d04b7f211d
5 changed files with 46 additions and 52 deletions

View file

@ -407,15 +407,16 @@
"selMissingDevice": "The selected backup file is missing devices",
"selDeviceAlreadyUsed": "The device is in use with an existing DVR"
},
"WiewState": {
"Name": "Wiew State Copy",
"Description": "@:Modules.PMS.WiewState.Name module allows you to copy a users list of seen medias to another user on the same server. Note: It's important, that both users has access to the medias",
"ViewState": {
"Name": "View State Copy",
"Description": "@:Modules.PMS.ViewState.Name module allows you to copy a users list of seen medias to another user on the same server. Note: It's important, that both users has access to the medias",
"selSourceUsr": "Select User to copy from",
"ttSelSourceUsr": "Here you select the user you wants to copy view states from",
"selTargetUsr": "Select User to copy to",
"ttSelTargetUsr": "Here you select the user you wants to copy view states to",
"Owner": "Server owner",
"Managed": "Managed User",
"lblBtnCopy": "Copy",
"Status": {
"Msg": {
"CollectUserInfo": "Collecting user info...Please wait"

View file

@ -79,9 +79,9 @@
}
,
{
href: { path: '/pms/wiewstate' },
title: this.$t("Modules.PMS.WiewState.Name"),
hidden: wtutils.hideMenu('pmsWiewState'),
href: { path: '/pms/viewstate' },
title: this.$t("Modules.PMS.ViewState.Name"),
hidden: wtutils.hideMenu('pmsViewState'),
icon: 'fas fa-tv',
}
]

View file

@ -1,14 +1,14 @@
<template>
<b-container fluid>
<div class="col-lg-10 col-md-12 col-xs-12">
<h1>{{ $t("Modules.PMS.WiewState.Name") }}</h1>
<p>{{ $t("Modules.PMS.WiewState.Description") }}</p>
<h1>{{ $t("Modules.PMS.ViewState.Name") }}</h1>
<p>{{ $t("Modules.PMS.ViewState.Description") }}</p>
</div>
<div class="d-flex align-items-center">
<b-form-group id="WiewStateSelSourceUsrGroup" v-bind:label="$t('Modules.PMS.WiewState.selSourceUsr')" label-size="lg" label-class="font-weight-bold pt-0" name="WiewStateSelSourceUsrGroup">
<b-tooltip target="WiewStateSelSourceUsrGroup" triggers="hover">
{{ $t('Modules.PMS.WiewState.ttSelSourceUsr') }}
<b-form-group id="ViewStateSelSourceUsrGroup" v-bind:label="$t('Modules.PMS.ViewState.selSourceUsr')" label-size="lg" label-class="font-weight-bold pt-0" name="ViewStateSelSourceUsrGroup">
<b-tooltip target="ViewStateSelSourceUsrGroup" triggers="hover">
{{ $t('Modules.PMS.ViewState.ttSelSourceUsr') }}
</b-tooltip>
<b-form-select
v-model="selSrcUsr"
@ -23,9 +23,9 @@
</div>
<div class="d-flex align-items-center">
<b-form-group id="WiewStateSelTargetUsrGroup" v-bind:label="$t('Modules.PMS.WiewState.selTargetUsr')" label-size="lg" label-class="font-weight-bold pt-0" name="WiewStateSelTargetUsrGroup">
<b-tooltip target="WiewStateSelTargetUsrGroup" triggers="hover">
{{ $t('Modules.PMS.WiewState.ttSelTargetUsr') }}
<b-form-group id="ViewStateSelTargetUsrGroup" v-bind:label="$t('Modules.PMS.ViewState.selTargetUsr')" label-size="lg" label-class="font-weight-bold pt-0" name="ViewStateSelTargetUsrGroup">
<b-tooltip target="ViewStateSelTargetUsrGroup" triggers="hover">
{{ $t('Modules.PMS.ViewState.ttSelTargetUsr') }}
</b-tooltip>
<b-form-select
v-model="selTargetUsr"
@ -50,7 +50,7 @@
:disabled="this.DisableCopy"
variant="success"
>
{{ $t("Modules.PMS.DVR.lblBtnBackup") }}
{{ $t("Modules.PMS.ViewState.lblBtnCopy") }}
</b-button>
</b-button-group>
</div>
@ -59,12 +59,12 @@
<b-container fluid> <!-- Status -->
<b-row>
<b-col sm="2">
<label for="status">{{ $t('Modules.PMS.WiewState.Status.Names.Status') }}:</label>
<label for="status">{{ $t('Modules.PMS.ViewState.Status.Names.Status') }}:</label>
</b-col>
<b-col sm="10">
<b-form-textarea
id="status"
v-bind:placeholder="$t('Modules.PMS.WiewState.Status.Names.Status')"
v-bind:placeholder="$t('Modules.PMS.ViewState.Status.Names.Status')"
v-model="statusMsg"
:disabled=true
rows="1"
@ -83,9 +83,7 @@
import i18n from '../../../../i18n';
import store from '../../../../store';
//import { wtconfig } from '../General/wtutils';
import { wiewstate } from "./scripts/wiewstate";
i18n, wiewstate
import { viewstate } from "./scripts/viewstate";
const log = require("electron-log");
export default {
@ -101,13 +99,13 @@
};
},
async created() {
log.info("[WiesState.vue] WiewState Created");
log.info("[ViewState.vue] viewState Created");
this.serverSelected();
if (store.getters.getSelectedServer != 'none'){
this.WaitForUsers = false;
await wiewstate.getUsers();
this.optselSrcUsr = wiewstate.viewStateUsers;
this.optSelTargetUsr = wiewstate.viewStateUsers;
await viewstate.getUsers();
this.optselSrcUsr = viewstate.viewStateUsers;
this.optSelTargetUsr = viewstate.viewStateUsers;
this.WaitForUsers = true;
}
},
@ -115,17 +113,17 @@
// Watch for when selected server address is updated
selectedServerAddress: async function(){
log.info("DVR Selected server changed");
wiewstate.updateStatusMsg(1, i18n.t("Modules.PMS.WiewState.Status.Msg.CollectUserInfo"));
viewstate.updateStatusMsg(1, i18n.t("Modules.PMS.ViewState.Status.Msg.CollectUserInfo"));
this.serverIsSelected = ( this.$store.getters.getSelectedServer != "none" );
this.WaitForUsers = false;
await wiewstate.getServerToken();
await wiewstate.getUsers();
this.optselSrcUsr = wiewstate.viewStateUsers;
this.optSelTargetUsr = wiewstate.viewStateUsers;
await viewstate.getServerToken();
await viewstate.getUsers();
this.optselSrcUsr = viewstate.viewStateUsers;
this.optSelTargetUsr = viewstate.viewStateUsers;
this.selSrcUsr = '';
this.selTargetUsr = '',
this.WaitForUsers = true;
wiewstate.updateStatusMsg(1, "idle");
viewstate.updateStatusMsg(1, "idle");
},
// Watch for status update
viewStateStatus: function() {
@ -164,18 +162,8 @@
}
},
async copyViewState(){
viewstate.copyViewState();
console.log('Ged 1 copyViewState')
wiewstate.updateStatusMsg(1, "Hello and starting")
},
async getServerToken() {
await wiewstate.getServerToken();
}
}
};

View file

@ -9,14 +9,14 @@ import i18n from '../../../../../i18n';
import store from '../../../../../store';
import axios from 'axios';
const wiewstate = new class WiewState {
const viewstate = new class ViewState {
// Private Fields
#_FieldHeader = [];
#_StartTime = null;
#_EndTime = null;
#_statusmsg = {};
#_msgType = {
1: i18n.t("Modules.PMS.WiewState.Status.Names.Status")
1: i18n.t("Modules.PMS.ViewState.Status.Names.Status")
}
constructor() {
@ -24,6 +24,12 @@ const wiewstate = new class WiewState {
this.viewStateUsers = []
}
async copyViewState(){
log.info('[viewstate.js] Starting copyViewState');
this.updateStatusMsg(1, "Hello and starting")
}
// Update status msg
async updateStatusMsg(msgType, msg)
{
@ -41,7 +47,6 @@ const wiewstate = new class WiewState {
store.commit("UPDATE_viewStateStatus", newMsg);
}
// Here we get the server token for the selected server
async getServerToken(){
// Start by finding selected servers clientIdentifier
@ -90,7 +95,7 @@ const wiewstate = new class WiewState {
})
.then((response) => {
log.debug('[viewState.js] Response from getShareList recieved');
log.silly(`getShareList returned as: ${JSON.stringify(response.data)}`);
log.silly(`[viewState.js] getShareList returned as: ${JSON.stringify(response.data)}`);
retVal = JSON.stringify(response.data)
})
.catch(function (error) {
@ -127,16 +132,16 @@ const wiewstate = new class WiewState {
}
if (!Users[sharedUsr['id']]["email"])
{
name = `${name} ***( ${i18n.t("Modules.PMS.WiewState.Managed")} )***`
name = `${name} ***( ${i18n.t("Modules.PMS.ViewState.Managed")} )***`
}
let usr = { value: { "id": sharedUsr['id'], "libs": sharedUsr['librarySections']}, text: name };
this.viewStateUsers.push(usr);
}
// Now we need to add Server Owner
let usr = { value: { "id": store.getters.getMeId, "libs": "PMSOwner"}, text: `${store.getters.getPlexName} ***( ${i18n.t("Modules.PMS.WiewState.Owner")} )***` };
let usr = { value: { "id": store.getters.getMeId, "libs": "PMSOwner"}, text: `${store.getters.getPlexName} ***( ${i18n.t("Modules.PMS.ViewState.Owner")} )***` };
this.viewStateUsers.push(usr);
}
}
export { wiewstate };
export { viewstate };

View file

@ -12,7 +12,7 @@ import Butler from '../components/modules/PMS/Butler/butler';
import Language from '../components/modules/Main/Language.vue';
import GlobalSettings from '../components/modules/Main/GlobalSettings';
import DVR from '../components/modules/PMS/DVR/DVR';
import WiewState from '../components/modules/PMS/WiewState/WiewState';
import ViewState from '../components/modules/PMS/ViewState/ViewState';
import About from '../components/modules/Main/About';
import Store from '../store/index.js';
@ -78,9 +78,9 @@ Vue.use(VueRouter)
meta: {requiresAuth: true}
},
{
path: '/pms/wiewstate',
name: "wiewstate",
component: WiewState,
path: '/pms/viewstate',
name: "viewstate",
component: ViewState,
meta: {requiresAuth: true}
},
{