This commit is contained in:
Tommy Mikkelsen 2022-06-29 01:02:47 +02:00
parent be40666571
commit f1d370e0f0
5 changed files with 189 additions and 163 deletions

View file

@ -201,10 +201,12 @@
"Description": "@:Modules.ET.Name allows you to export detail information about the media in your libraries",
"Name": "ExportTools",
"ErrorServer": "No server",
"ttSettings": "Settings for @:Modules.ET.Name module",
"Settings": {
"Name": "@:Modules.ET.Name Settings",
"Description": "Here you can define the settings for @:Modules.ET.Name",
"Note": "Note: * Click here for general settings regarding export *",
"Return": "Return to @:Modules.ET.Name",
"ArraySep": "Delimiter for multiple info in same field",
"ColumnSep": "Delimiter between columns in CSV file (Use 9 for TAB)",
"TimeOut": "Timeout when requesting info from PMS in sec (Global setting)",
@ -494,8 +496,9 @@
"Name": "Find Media",
"Description": "@:Modules.PMS.FindMedia.Name module allows you search both filesystem and Plex database to locate medias missing from either of them",
"RunTask": "Run",
"TTSelectLibrary": "Select library to check for missing medias",
"MissingMapTitle": "Missing a mapped path",
"MissingMapDesc": "One or more defined paths for library is not defined. Goto '@:Modules.PMS.LibMapping.Name' to correct",
"MissingMapDesc": "One or more defined paths for library is not defined. Goto '@:Common.Menu.Sidebar.Settings.NavTitle' and select '@:Common.Settings.LibMapping.Name' to correct",
"ttSettings": "Settings for @:Modules.PMS.FindMedia.Name module",
"ScanningFS": "Scanning File System",
"ScanningLib": "Scanning Library",

View file

@ -54,15 +54,8 @@
title: this.$t("Common.Menu.Sidebar.ET.Custom"),
hidden: wtutils.hideMenu('etCustom'),
icon: 'fa fa-cog'
},
{
href: '/export/settings',
title: this.$t("Common.Menu.Sidebar.ET.Settings"),
hidden: wtutils.hideMenu('etSettings'),
icon: 'fa fa-cog'
}
]
},
// Plex.TV
{

View file

@ -1,119 +1,135 @@
<template>
<b-container fluid>
<div class="col-lg-10 col-md-12 col-xs-12">
<h3>{{ $t("Modules.ET.Name") }} <br>
<small>{{ $t("Modules.ET.Description") }}</small>
</h3>
<br />
<b-form-row> <!-- Select Export type -->
<b-col> <!-- Main type -->
<div class="d-flex align-items-center">
<b-form-group id="etLibTypeMainGroup" v-bind:label="$t('Modules.ET.optExpType.lblMainExp')" label-size="lg" label-class="font-weight-bold pt-0">
<b-tooltip target="etLibTypeMainGroup" triggers="hover">
{{ $t('Modules.ET.optExpType.ttExpType') }}
<div>
<!-- Settings button -->
<div class="text-right">
<div class="buttons">
<!-- Buttons -->
<div id="buttons">
<b-button-group id="settings">
<b-tooltip target="settings" triggers="hover">
{{ $t('Modules.ET.ttSettings') }}
</b-tooltip>
<b-form-select
v-model="selExpTypeMain"
id="selExpTypeMain"
:options="optExpTypeMain"
@change="selExpTypeMainChanged"
name="selExpTypeMain">
</b-form-select>
</b-form-group>
</div>
</b-col>
<b-col> <!-- Sec type -->
<div class="d-flex align-items-center">
<b-form-group id="etLibTypeSecGroup" v-bind:label="$t('Modules.ET.optExpType.lblSecExp')" label-size="lg" label-class="font-weight-bold pt-0">
<b-tooltip target="etLibTypeSecGroup" triggers="hover">
{{ $t('Modules.ET.optExpType.ttExpTypeSec') }}
</b-tooltip>
<b-form-select
v-model="selExpTypeSec"
id="selExpTypeSec"
:options="optExpTypeSec"
@change="selExpTypeSecChanged"
name="selExpTypeSec">
</b-form-select>
</b-form-group>
</div>
</b-col>
</b-form-row>
<b-form-row> <!-- Select Library -->
<b-col>
<div class="d-flex align-items-center">
<b-form-group id="etLibraryGroup" v-bind:label="$t('Modules.ET.optExpType.lblSelectSelection')" label-size="lg" label-class="font-weight-bold pt-0" :disabled=this.etLibraryGroupDisabled>
<div ref="libSpinner" id="libSpinner" :hidden="selLibraryWait">
<b-spinner id="libLoad" class="ml-auto text-danger"></b-spinner>
</div>
<b-tooltip target="etLibraryGroup" triggers="hover">
{{ $t('Modules.ET.optExpType.ttExpLibrary') }}
</b-tooltip>
<b-form-select
v-model="selLibrary"
id="selLibrary"
:options="selLibraryOptions"
@change="selLibraryChanged"
name="selLibrary">
</b-form-select>
</b-form-group>
</div>
</b-col>
</b-form-row>
<b-form-row> <!-- Select Export Level -->
<b-col>
<div>
<b-form-group id="etLevelGroup" v-bind:label="$t('Modules.ET.optExpType.lblExportLevel')" label-size="lg" label-class="font-weight-bold pt-0" :disabled=this.etLevelGroupDisabled>
<b-tooltip target="etLevelGroup" triggers="hover">
{{ $t('Modules.ET.optExpType.ttExpLevel') }}
</b-tooltip>
<b-form-select
class="form-control"
v-model="selLevel"
id="selLevel"
:options="exportLevels"
@change="selLevelChanged"
name="selLevel">
</b-form-select>
</b-form-group>
</div>
</b-col>
</b-form-row>
<div class="buttons"> <!-- Buttons -->
<b-button
type="is-primary"
@click="showStartEnd"
icon-left="fas fa-file-download"
icon-pack="fas"
:disabled="btnDisable == true"
variant="success"
>
{{ $t("Modules.ET.optExpType.lblBtnExportMedia") }}</b-button>
<button class="btn btn-outline-success" @click="showSettings"><i class="fa fa-cog"></i></button>
</b-button-group>
</div>
</div>
<br>
<statusDiv /> <!-- Status Div -->
<b-modal ref="startEnd" hide-footer v-bind:title=this.startEnd>
<div class="d-block">
{{ this.startEndBody }}
{{ this.startEndBody2 }}
<br>
{{ this.startEndBody3 }}
<br>
<br>
{{ this.startEndBody4 }}
<br>
<br>
<b-input-group id="itemStart" :prepend="$t('Modules.ET.optExpType.startStopStartingItem')" class="mt-3">
<b-form-input id="itemStartNo" name="itemStartNo" type="number" class="form-control" v-model="itemStartNo" :min=0 :max=this.sectionMaxItems.toString() :disabled=false @change.native="setItemStartNo()"></b-form-input>
</b-input-group>
<b-input-group id="itemEnd" :prepend="$t('Modules.ET.optExpType.startStopEndingItem')" class="mt-3">
<b-form-input id="itemEndNo" name="itemEndNo" type="number" class="form-control" v-model="itemEndNo" :disabled=false :min=this.itemStartNo.toString() :max=this.sectionMaxItems.toString() @change.native="setItemEndNo()"></b-form-input>
</b-input-group>
</div>
<b-button class="mt-3" variant="success" block @click="getMedia">{{ this.startEndBtn }}</b-button>
</b-modal>
</div>
</b-container>
<b-container fluid>
<div class="col-lg-10 col-md-12 col-xs-12">
<h3>{{ $t("Modules.ET.Name") }} <br>
<small>{{ $t("Modules.ET.Description") }}</small>
</h3>
<br />
<b-form-row> <!-- Select Export type -->
<b-col> <!-- Main type -->
<div class="d-flex align-items-center">
<b-form-group id="etLibTypeMainGroup" v-bind:label="$t('Modules.ET.optExpType.lblMainExp')" label-size="lg" label-class="font-weight-bold pt-0">
<b-tooltip target="etLibTypeMainGroup" triggers="hover">
{{ $t('Modules.ET.optExpType.ttExpType') }}
</b-tooltip>
<b-form-select
v-model="selExpTypeMain"
id="selExpTypeMain"
:options="optExpTypeMain"
@change="selExpTypeMainChanged"
name="selExpTypeMain">
</b-form-select>
</b-form-group>
</div>
</b-col>
<b-col> <!-- Sec type -->
<div class="d-flex align-items-center">
<b-form-group id="etLibTypeSecGroup" v-bind:label="$t('Modules.ET.optExpType.lblSecExp')" label-size="lg" label-class="font-weight-bold pt-0">
<b-tooltip target="etLibTypeSecGroup" triggers="hover">
{{ $t('Modules.ET.optExpType.ttExpTypeSec') }}
</b-tooltip>
<b-form-select
v-model="selExpTypeSec"
id="selExpTypeSec"
:options="optExpTypeSec"
@change="selExpTypeSecChanged"
name="selExpTypeSec">
</b-form-select>
</b-form-group>
</div>
</b-col>
</b-form-row>
<b-form-row> <!-- Select Library -->
<b-col>
<div class="d-flex align-items-center">
<b-form-group id="etLibraryGroup" v-bind:label="$t('Modules.ET.optExpType.lblSelectSelection')" label-size="lg" label-class="font-weight-bold pt-0" :disabled=this.etLibraryGroupDisabled>
<div ref="libSpinner" id="libSpinner" :hidden="selLibraryWait">
<b-spinner id="libLoad" class="ml-auto text-danger"></b-spinner>
</div>
<b-tooltip target="etLibraryGroup" triggers="hover">
{{ $t('Modules.ET.optExpType.ttExpLibrary') }}
</b-tooltip>
<b-form-select
v-model="selLibrary"
id="selLibrary"
:options="selLibraryOptions"
@change="selLibraryChanged"
name="selLibrary">
</b-form-select>
</b-form-group>
</div>
</b-col>
</b-form-row>
<b-form-row> <!-- Select Export Level -->
<b-col>
<div>
<b-form-group id="etLevelGroup" v-bind:label="$t('Modules.ET.optExpType.lblExportLevel')" label-size="lg" label-class="font-weight-bold pt-0" :disabled=this.etLevelGroupDisabled>
<b-tooltip target="etLevelGroup" triggers="hover">
{{ $t('Modules.ET.optExpType.ttExpLevel') }}
</b-tooltip>
<b-form-select
class="form-control"
v-model="selLevel"
id="selLevel"
:options="exportLevels"
@change="selLevelChanged"
name="selLevel">
</b-form-select>
</b-form-group>
</div>
</b-col>
</b-form-row>
<div class="buttons"> <!-- Buttons -->
<b-button
type="is-primary"
@click="showStartEnd"
icon-left="fas fa-file-download"
icon-pack="fas"
:disabled="btnDisable == true"
variant="success"
>
{{ $t("Modules.ET.optExpType.lblBtnExportMedia") }}</b-button>
</div>
<br>
<statusDiv /> <!-- Status Div -->
<b-modal ref="startEnd" hide-footer v-bind:title=this.startEnd>
<div class="d-block">
{{ this.startEndBody }}
{{ this.startEndBody2 }}
<br>
{{ this.startEndBody3 }}
<br>
<br>
{{ this.startEndBody4 }}
<br>
<br>
<b-input-group id="itemStart" :prepend="$t('Modules.ET.optExpType.startStopStartingItem')" class="mt-3">
<b-form-input id="itemStartNo" name="itemStartNo" type="number" class="form-control" v-model="itemStartNo" :min=0 :max=this.sectionMaxItems.toString() :disabled=false @change.native="setItemStartNo()"></b-form-input>
</b-input-group>
<b-input-group id="itemEnd" :prepend="$t('Modules.ET.optExpType.startStopEndingItem')" class="mt-3">
<b-form-input id="itemEndNo" name="itemEndNo" type="number" class="form-control" v-model="itemEndNo" :disabled=false :min=this.itemStartNo.toString() :max=this.sectionMaxItems.toString() @change.native="setItemEndNo()"></b-form-input>
</b-input-group>
</div>
<b-button class="mt-3" variant="success" block @click="getMedia">{{ this.startEndBtn }}</b-button>
</b-modal>
</div>
</b-container>
</div>
</template>
<script>
@ -247,6 +263,10 @@
},
},
methods: {
// Show Settings
showSettings(){
this.$router.push({ name: 'exportsettings' })
},
setItemStartNo: async function(){
// Update settings with new start value
etHelper.Settings.startItem = this.itemStartNo;

View file

@ -1,48 +1,54 @@
<template>
<b-container fluid>
<div class="col-lg-10 col-md-12 col-xs-12">
<p id="demo"></p>
<h1>{{ $t("Modules.ET.Settings.Name") }}</h1>
<p>{{ $t("Modules.ET.Settings.Description") }}</p>
<b-link id="general" to="/settings/export">{{ $t("Modules.ET.Settings.Note") }} </b-link>
<br>
<b-input-group id="PosterGrp" :prepend="$t('Modules.ET.Settings.Posters_Dimensions')" class="mt-3">
<b-tooltip target="PosterGrp" triggers="hover">
{{ $t('Modules.ET.Settings.Posters_Dimensions_TT') }}
</b-tooltip>
<b-form-input id="PosterDim" name="PosterDim" type="text" class="form-control" v-model="PosterDim" :disabled=false @change="setPosters_Dimensions()"></b-form-input>
</b-input-group>
<b-input-group id="ArtGrp" :prepend="$t('Modules.ET.Settings.Art_Dimensions')" class="mt-3">
<b-tooltip target="ArtGrp" triggers="hover">
{{ $t('Modules.ET.Settings.Art_Dimensions_TT') }}
</b-tooltip>
<b-form-input id="ArtDim" name="ArtDim" type="text" class="form-control" v-model="ArtDim" :disabled=false @change="setArt_Dimensions()"></b-form-input>
</b-input-group>
<b-form-group id="b-form-group">
<b-form-checkbox-group
stacked
:options="cbOptions"
v-model="cbSelected"
@change.native="filterTable">
</b-form-checkbox-group>
</b-form-group>
<b-form-group id="etSugMovieID" v-bind:label="$t('Modules.ET.Settings.MoviesUseId')" label-size="lg" label-class="font-weight-bold pt-0">
<b-tooltip target="etSugMovieID" triggers="hover">
{{ $t('Modules.ET.Settings.ttMoviesUseId') }}
</b-tooltip>
<b-form-select
class="form-control"
v-model="SelectedMoviesID"
id="SelectedMoviesID"
:options="SelectedMoviesIDOptions"
@change="SelectedMoviesIDChanged"
name="SugMovieID">
</b-form-select>
</b-form-group>
</div>
<p id="demo"></p>
<h1>{{ $t("Modules.ET.Settings.Name") }}</h1>
<p>{{ $t("Modules.ET.Settings.Description") }}</p>
<b-link id="general" to="/settings/export">{{ $t("Modules.ET.Settings.Note") }} </b-link>
<br>
<b-input-group id="PosterGrp" :prepend="$t('Modules.ET.Settings.Posters_Dimensions')" class="mt-3">
<b-tooltip target="PosterGrp" triggers="hover">
{{ $t('Modules.ET.Settings.Posters_Dimensions_TT') }}
</b-tooltip>
<b-form-input id="PosterDim" name="PosterDim" type="text" class="form-control" v-model="PosterDim" :disabled=false @change="setPosters_Dimensions()"></b-form-input>
</b-input-group>
<b-input-group id="ArtGrp" :prepend="$t('Modules.ET.Settings.Art_Dimensions')" class="mt-3">
<b-tooltip target="ArtGrp" triggers="hover">
{{ $t('Modules.ET.Settings.Art_Dimensions_TT') }}
</b-tooltip>
<b-form-input id="ArtDim" name="ArtDim" type="text" class="form-control" v-model="ArtDim" :disabled=false @change="setArt_Dimensions()"></b-form-input>
</b-input-group>
<b-form-group id="b-form-group">
<b-form-checkbox-group
stacked
:options="cbOptions"
v-model="cbSelected"
@change.native="filterTable">
</b-form-checkbox-group>
</b-form-group>
<b-form-group id="etSugMovieID" v-bind:label="$t('Modules.ET.Settings.MoviesUseId')" label-size="lg" label-class="font-weight-bold pt-0">
<b-tooltip target="etSugMovieID" triggers="hover">
{{ $t('Modules.ET.Settings.ttMoviesUseId') }}
</b-tooltip>
<b-form-select
class="form-control"
v-model="SelectedMoviesID"
id="SelectedMoviesID"
:options="SelectedMoviesIDOptions"
@change="SelectedMoviesIDChanged"
name="SugMovieID">
</b-form-select>
</b-form-group>
<!-- Buttons -->
<div class="buttons">
<!-- Buttons -->
<div id="buttons" class="text-center">
<b-button-group >
<b-button variant="success" class="mr-1" @click="jumpToET"> {{ $t('Modules.ET.Settings.Return') }} </b-button>
</b-button-group>
</div>
</div>
</div>
</b-container>
</template>
@ -77,6 +83,10 @@
};
},
methods: {
// Return to ET
jumpToET(){
this.$router.push({ name: 'export' })
},
showAlert(){
dialog.ShowMsg( i18n.t("Modules.ET.Name"), i18n.t("Common.Ok"), i18n.t("Common.AppName"), 'For this version, export to XLSX is currently disabled', 'info');
},

View file

@ -24,7 +24,7 @@
<div class="d-flex align-items-center">
<b-form-group id="SelLibGroup" v-bind:label="$t('Modules.ET.optExpType.lblSelectSelection')" label-size="lg" label-class="font-weight-bold pt-0">
<b-tooltip target="SelLibGroup" triggers="hover">
{{ $t('Modules.PMS.LibMapping.TTSelectLibrary') }}
{{ $t('Modules.PMS.FindMedia.TTSelectLibrary') }}
</b-tooltip>
<b-form-select
v-model="selLib"