This commit is contained in:
root
2023-08-31 15:30:17 +02:00
commit dea16b40a8
833 changed files with 142024 additions and 0 deletions

View File

@@ -0,0 +1 @@
.checkboxContainer-lockedfield{margin-bottom:0!important;width:auto!important}.checkboxContainer-lockedfield-standalone{-webkit-margin-start:auto;margin-inline-start:auto}.checkboxLabel-lockedfield{-webkit-padding-end:0!important;padding-inline-end:0!important;width:2.8em;height:2.8em;-webkit-margin-end:0!important;margin-inline-end:0!important;margin-top:0!important}.checkboxLabel-lockedfield-embeddedintofield{width:3.2em;height:2.35em;box-sizing:border-box;border-top-left-radius:0!important;border-bottom-left-radius:0!important;border-start-start-radius:0!important;border-end-start-radius:0!important;border-inline-start-width:.15em!important;border-inline-end-width:0!important;border-inline-start-style:solid;border-top-style:solid;border-bottom-style:solid;border-top-color:transparent!important;border-bottom-color:transparent!important}.checkboxLabel-lockedfield-embeddedintoselect{height:2.575em}.checkboxLabel-lockedfield::before{display:none!important}.checkboxLabel-lockedfield::after{display:none!important}.checkboxLabel-lockedfield-standalone{border-radius:100em!important;border-width:0!important}.txtInput-withlockedfield,.select-withlockedfield{border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-start-end-radius:0!important;border-end-end-radius:0!important}.lockedfield-lockicon{position:absolute;font-size:124%;top:0;bottom:0;left:0;right:0;inset-inline-start:0;inset-inline-end:0;display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;cursor:pointer;z-index:2}.chkLockedField:not(:checked)~.lockedfield-lockicon-lock{display:none}.chkLockedField:checked~.lockedfield-lockicon-unlock{display:none}.chkLockedField~.emby-checkbox-focusoutline{display:none!important}.chkLockedField:checked~.lockedfield-lockicon{color:#fff!important}.inputContainer-withlockedfield{margin-bottom:0!important}

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,323 @@
<div class="formDialogHeader">
<button is="paper-icon-button-light" class="btnCancel hide-mouse-idle-tv" tabindex="-1"><i class="md-icon autortl">&#xE5C4;</i></button>
<h3 class="formDialogHeaderTitle">
${Edit}
</h3>
<div style="margin-left: auto;" class="flex align-items-center justify-content-center">
<button is="emby-button" type="button" class="btnHeaderSave button-link hide" tabindex="-1">
<i class="md-icon">&#xe5ca;</i>
<span>${Save}</span>
</button>
<button is="paper-icon-button-light" class="btnMore" tabindex="-1">
<i class="md-icon">more_horiz</i>
</button>
</div>
</div>
<div is="emby-scroller" data-horizontal="false" data-forcescrollbar="true" data-focusscroll="true" class="formDialogContent">
<div class="scrollSlider">
<form class="editItemMetadataForm editMetadataForm dialogContentInner dialog-content-centered padded-left padded-right">
<div class="metadataFormFields">
<div class="fldPath inputContainer">
<div class="inputLabel inputLabelUnfocused">${LabelPath}</div>
<div class="txtPath fieldDescription"></div>
</div>
<div class="inputContainer flex align-items-flex-end">
<div class="inputContainer flex-grow inputContainer-withlockedfield">
<input is="emby-input" class="txtName txtInput-withlockedfield" type="text" label="${LabelTitle}" required="required" />
</div>
<label class="checkboxContainer checkboxContainer-lockedfield" title="${LockThisField}">
<input type="checkbox" is="emby-checkbox" class="chkLockedField" data-field="Name" aria-label="${LockThisField}" />
<span class="checkboxLabel-lockedfield checkboxLabel-lockedfield-embeddedintofield"></span>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-lock secondaryText">lock</i>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-unlock secondaryText">lock_open</i>
</label>
</div>
<div class="fldOriginalName inputContainer flex align-items-flex-end">
<div class="inputContainer flex-grow inputContainer-withlockedfield">
<input is="emby-input" class="txtOriginalName txtInput-withlockedfield" type="text" label="${LabelOriginalTitle}" />
</div>
<label class="checkboxContainer checkboxContainer-lockedfield" title="${LockThisField}">
<input type="checkbox" is="emby-checkbox" class="chkLockedField" data-field="OriginalTitle" aria-label="${LockThisField}" />
<span class="checkboxLabel-lockedfield checkboxLabel-lockedfield-embeddedintofield"></span>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-lock secondaryText">lock</i>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-unlock secondaryText">lock_open</i>
</label>
</div>
<div class="inputContainer flex align-items-flex-end fldSortName hide">
<div class="inputContainer flex-grow inputContainer-withlockedfield">
<input is="emby-input" class="txtSortName txtInput-withlockedfield" type="text" label="${LabelSortTitle}" required="required" />
</div>
<label class="checkboxContainer checkboxContainer-lockedfield" title="${LockThisField}">
<input type="checkbox" is="emby-checkbox" class="chkLockedField" data-field="SortName" aria-label="${LockThisField}" />
<span class="checkboxLabel-lockedfield checkboxLabel-lockedfield-embeddedintofield"></span>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-lock secondaryText">lock</i>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-unlock secondaryText">lock_open</i>
</label>
</div>
<div class="inputContainer flex align-items-flex-end fldChannelNumber hide">
<div class="inputContainer flex-grow inputContainer-withlockedfield">
<input is="emby-input" class="txtChannelNumber txtInput-withlockedfield" type="text" label="${LabelChannelNumber}" />
</div>
<label class="checkboxContainer checkboxContainer-lockedfield" title="${LockThisField}">
<input type="checkbox" is="emby-checkbox" class="chkLockedField" data-field="ChannelNumber" aria-label="${LockThisField}" />
<span class="checkboxLabel-lockedfield checkboxLabel-lockedfield-embeddedintofield"></span>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-lock secondaryText">lock</i>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-unlock secondaryText">lock_open</i>
</label>
</div>
<div class="fldDateAdded hide inputContainer">
<input is="emby-input" class="txtDateAdded" type="datetime-local" label="${LabelDateAdded}" step="1" />
<div class="fieldDescription">${ConfigureDateAdded}</div>
</div>
<div class="fldStatus hide selectContainer">
<select is="emby-select" class="selectStatus" label="${LabelStatus}"></select>
</div>
<div class="fldArtist hide inputContainer">
<input is="emby-input" class="txtArtist" type="text" label="${LabelArtists}" />
<div class="fieldDescription">${LabelArtistsHelp}</div>
</div>
<div class="fldAlbumArtist hide inputContainer">
<input is="emby-input" class="txtAlbumArtist" type="text" label="${LabelAlbumArtists}" />
<div class="fieldDescription">${LabelArtistsHelp}</div>
</div>
<div class="fldAlbum hide inputContainer">
<input is="emby-input" class="txtAlbum" type="text" label="${LabelAlbum}" />
</div>
<div class="fldParentIndexNumber hide inputContainer">
<input is="emby-input" class="txtParentIndexNumber" type="number" />
</div>
<div class="fldIndexNumber hide inputContainer">
<input is="emby-input" class="txtIndexNumber" type="number" pattern="[0-9]*" />
</div>
<div class="fldCommunityRating inputContainer flex align-items-flex-end">
<div class="inputContainer flex-grow inputContainer-withlockedfield">
<input is="emby-input" class="txtCommunityRating txtInput-withlockedfield" type="number" step=".1" min="0" max="10" label="${LabelCommunityRating}" />
</div>
<label class="checkboxContainer checkboxContainer-lockedfield" title="${LockThisField}">
<input type="checkbox" is="emby-checkbox" class="chkLockedField" data-field="CommunityRating" aria-label="${LockThisField}" />
<span class="checkboxLabel-lockedfield checkboxLabel-lockedfield-embeddedintofield"></span>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-lock secondaryText">lock</i>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-unlock secondaryText">lock_open</i>
</label>
</div>
<div class="fldCriticRating inputContainer flex align-items-flex-end">
<div class="inputContainer flex-grow inputContainer-withlockedfield">
<input is="emby-input" class="txtCriticRating txtInput-withlockedfield" type="number" step=".1" label="${LabelCriticRating}" />
</div>
<label class="checkboxContainer checkboxContainer-lockedfield" title="${LockThisField}">
<input type="checkbox" is="emby-checkbox" class="chkLockedField" data-field="CriticRating" aria-label="${LockThisField}" />
<span class="checkboxLabel-lockedfield checkboxLabel-lockedfield-embeddedintofield"></span>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-lock secondaryText">lock</i>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-unlock secondaryText">lock_open</i>
</label>
</div>
<div class="fldTagline hide inputContainer">
<input is="emby-input" class="txtTagline" type="text" label="${LabelTagline}" />
</div>
<div class="inputContainer overviewContainer hide">
<label>
<textarea is="emby-textarea" class="txtOverview" label="${LabelOverview}"></textarea>
</label>
</div>
<div class="fldPremiereDate inputContainer">
<input is="emby-input" class="txtPremiereDate" label="${LabelReleaseDate}" type="date" />
</div>
<div class="fldYear hide inputContainer">
<input is="emby-input" class="txtProductionYear" type="number" label="${LabelYear}" />
</div>
<div class="fldPlaceOfBirth hide inputContainer">
<input is="emby-input" class="txtPlaceOfBirth" type="text" label="${LabelPlaceOfBirth}" />
</div>
<div class="fldEndDate inputContainer">
<input is="emby-input" class="txtEndDate" label="${LabelEndDate}" type="date" />
</div>
<div class="fldSeriesRuntime inputContainer hide">
<input is="emby-input" class="txtSeriesRuntime" type="number" label="${LabelRuntimeMinutes}" />
</div>
<div class="fldOfficialRating inputContainer flex align-items-flex-end hide">
<div class="selectContainer flex-grow inputContainer-withlockedfield">
<select is="emby-select" class="selectOfficialRating select-withlockedfield" label="${LabelParentalRating}"></select>
</div>
<label class="checkboxContainer checkboxContainer-lockedfield" title="${LockThisField}">
<input type="checkbox" is="emby-checkbox" class="chkLockedField" data-field="OfficialRating" aria-label="${LockThisField}" />
<span class="checkboxLabel-lockedfield checkboxLabel-lockedfield-embeddedintofield checkboxLabel-lockedfield-embeddedintoselect"></span>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-lock secondaryText">lock</i>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-unlock secondaryText">lock_open</i>
</label>
</div>
<div class="fldCustomRating selectContainer hide">
<select is="emby-select" class="selectCustomRating" label="${LabelCustomRating}"></select>
<div class="fieldDescription">${CustomRatingHelp}</div>
</div>
<div class="fld3dFormat selectContainer hide">
<select is="emby-select" class="select3dFormat" label="${Label3DFormat}">
<option value=""></option>
<option value="HalfSideBySide">HSBS</option>
<option value="HalfTopAndBottom">HTAB</option>
<option value="FullSideBySide">FSBS</option>
<option value="FullTopAndBottom">FTAB</option>
<option value="MVC">MVC</option>
</select>
</div>
<div class="fldDisplayOrder fldDisplaySetting selectContainer hide">
<select is="emby-select" class="selectDisplayOrder" label="${LabelDisplayOrder}"></select>
<div class="fieldDescription seriesDisplayOrderDescription">${SeriesDisplayOrderHelp}</div>
</div>
<div class="detailSection channelMappingSection hide">
<div class="selectContainer">
<select is="emby-select" class="selectGuideDataProvider" label="${LabelGuideDataSource}"></select>
</div>
<div class="selectContainer fldGuideChannelId hide">
<select is="emby-select" class="selectGuideChannel" label="${LabelGuideDataChannel}"></select>
</div>
</div>
<div class="detailSection hide collapsibleSpecialEpisodeInfo">
<h2>
${HeaderSpecialEpisodeInfo}
</h2>
<div class="specialEpisodeNumbers">
<div class="inputContainer flex align-items-flex-end">
<div class="inputContainer flex-grow inputContainer-withlockedfield">
<input is="emby-input" class="txtDisplaySeason txtInput-withlockedfield" type="text" label="${LabelAirsDuringSeason}" />
</div>
<label class="checkboxContainer checkboxContainer-lockedfield" title="${LockThisField}">
<input type="checkbox" is="emby-checkbox" class="chkLockedField" data-field="SortParentIndexNumber" aria-label="${LockThisField}" />
<span class="checkboxLabel-lockedfield checkboxLabel-lockedfield-embeddedintofield"></span>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-lock secondaryText">lock</i>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-unlock secondaryText">lock_open</i>
</label>
</div>
<div class="inputContainer flex align-items-flex-end">
<div class="inputContainer flex-grow inputContainer-withlockedfield">
<input is="emby-input" class="txtDisplayEpisode txtInput-withlockedfield" type="text" label="${LabelAirsBeforeEpisode}" />
</div>
<label class="checkboxContainer checkboxContainer-lockedfield" title="${LockThisField}">
<input type="checkbox" is="emby-checkbox" class="chkLockedField" data-field="SortIndexNumber" aria-label="${LockThisField}" />
<span class="checkboxLabel-lockedfield checkboxLabel-lockedfield-embeddedintofield"></span>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-lock secondaryText">lock</i>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-unlock secondaryText">lock_open</i>
</label>
</div>
</div>
</div>
<div class="detailSection externalIdsSection hide">
<h2>
${HeaderExternalIds}
</h2>
<div class="externalIds editorFieldset">
</div>
</div>
<div class="genresCollapsible editableListviewContainer hide" style="margin-top: 2em;">
<div class="flex align-items-center padded-bottom">
<h2 style="margin:0;">
${Genres}
</h2>
<button is="emby-button" type="button" class="fab btnAddTextItem submit" style="margin-left:1em;" title="${Add}" aria-label="${Add}">
<i class="md-icon">&#xE145;</i>
</button>
<label class="checkboxContainer checkboxContainer-lockedfield checkboxContainer-lockedfield-standalone" title="${LockThisField}">
<input type="checkbox" is="emby-checkbox" class="chkLockedField" data-field="Genres" aria-label="${LockThisField}" />
<span class="checkboxLabel-lockedfield checkboxLabel-lockedfield-standalone"></span>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-lock secondaryText">lock</i>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-unlock secondaryText">lock_open</i>
</label>
</div>
<div class="editorList listGenres"></div>
</div>
<div class="peopleCollapsible hide" style="margin-top: 3em;">
<div class="flex align-items-center padded-bottom">
<h2 style="margin:0;">
${People}
</h2>
<button is="emby-button" type="button" class="btnAddPerson fab btnAddPerson" style="margin-left:1em;" title="${Add}" aria-label="${Add}">
<i class="md-icon">&#xE145;</i>
</button>
<label class="checkboxContainer checkboxContainer-lockedfield checkboxContainer-lockedfield-standalone" title="${LockThisField}">
<input type="checkbox" is="emby-checkbox" class="chkLockedField" data-field="People" aria-label="${LockThisField}" />
<span class="checkboxLabel-lockedfield checkboxLabel-lockedfield-standalone"></span>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-lock secondaryText">lock</i>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-unlock secondaryText">lock_open</i>
</label>
</div>
<div class="peopleList editorList">
</div>
</div>
<div class="studiosCollapsible editableListviewContainer hide" style="margin-top: 2em;">
<div class="flex align-items-center padded-bottom">
<h2 style="margin:0;">
${Studios}
</h2>
<button is="emby-button" type="button" class="fab btnAddTextItem submit" style="margin-left:1em;" title="${Add}" aria-label="${Add}">
<i class="md-icon">&#xE145;</i>
</button>
<label class="checkboxContainer checkboxContainer-lockedfield checkboxContainer-lockedfield-standalone" title="${LockThisField}">
<input type="checkbox" is="emby-checkbox" class="chkLockedField" data-field="Studios" aria-label="${LockThisField}" />
<span class="checkboxLabel-lockedfield checkboxLabel-lockedfield-standalone"></span>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-lock secondaryText">lock</i>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-unlock secondaryText">lock_open</i>
</label>
</div>
<div class="editorList listStudios"></div>
</div>
<div class="tagsCollapsible editableListviewContainer hide" style="margin-top: 2em;">
<div class="flex align-items-center padded-bottom">
<h2 style="margin:0;">
${Tags}
</h2>
<button is="emby-button" type="button" class="fab btnAddTextItem submit" style="margin-left:1em;" title="${Add}" aria-label="${Add}">
<i class="md-icon">&#xE145;</i>
</button>
<label class="checkboxContainer checkboxContainer-lockedfield checkboxContainer-lockedfield-standalone" title="${LockThisField}">
<input type="checkbox" is="emby-checkbox" class="chkLockedField" data-field="Tags" aria-label="${LockThisField}" />
<span class="checkboxLabel-lockedfield checkboxLabel-lockedfield-standalone"></span>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-lock secondaryText">lock</i>
<i class="md-icon lockedfield-lockicon lockedfield-lockicon-unlock secondaryText">lock_open</i>
</label>
</div>
<div class="editorList listTags"></div>
</div>
<div class="metadataSettingsCollapsible hide" style="margin-top: 2em;">
<h2>${HeaderMetadataSettings}</h2>
<div>
<div class="selectContainer">
<select is="emby-select" class="selectLanguage" label="${LabelMetadataDownloadLanguage}"></select>
<div class="fieldDescription editorfieldDescription">${MessageLeaveEmptyToInherit}</div>
</div>
<div class="selectContainer">
<select is="emby-select" class="selectCountry" label="${LabelCountry}"></select>
<div class="fieldDescription editorfieldDescription">${MessageLeaveEmptyToInherit}</div>
</div>
<label class="checkboxContainer">
<input type="checkbox" is="emby-checkbox" class="chkLockData" />
<span>${LabelLockItemToPreventChanges}</span>
</label>
<div class="providerSettingsContainer checkboxList hide">
</div>
</div>
</div>
<div class="formDialogFooter hide">
<button is="emby-button" type="submit" class="raised button-submit block btnSave formDialogFooterItem">
<span>${Save}</span>
</button>
</div>
</div>
</form>
</div>
</div>

View File

@@ -0,0 +1 @@
define(["exports","./../dialoghelper/dialoghelper.js","./../layoutmanager.js","./../common/globalize.js","./../emby-elements/emby-input/emby-input.js","./../emby-elements/emby-select/emby-select.js","./../emby-elements/emby-button/emby-button.js","./../emby-elements/emby-button/paper-icon-button-light.js","./../emby-elements/emby-scroller/emby-scroller.js"],function(_exports,_dialoghelper,_layoutmanager,_globalize,_embyInput,_embySelect,_embyButton,_paperIconButtonLight,_embyScroller){Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,require(["formDialogStyle"]),_exports.default={show:function(person){return new Promise(function(resolve,reject){require(["text!modules/metadataeditor/personeditor.template.html"],function(template){var dialogOptions={removeOnClose:!0,scrollY:!1},dlg=(_layoutmanager.default.tv?dialogOptions.size="fullscreen":dialogOptions.size="medium-tall",_dialoghelper.default.createDialog(dialogOptions)),dialogOptions=(dlg.classList.add("formDialog"),""),submitted=!1;dialogOptions+=_globalize.default.translateDocument(template,"sharedcomponents"),dlg.innerHTML=dialogOptions,dlg.querySelector(".txtPersonName",dlg).value=person.Name||"",dlg.querySelector(".selectPersonType",dlg).value=person.Type||"",dlg.querySelector(".txtPersonRole",dlg).value=person.Role||"",_dialoghelper.default.open(dlg),dlg.addEventListener("close",function(){submitted?resolve(person):reject()}),dlg.querySelector(".selectPersonType").addEventListener("change",function(e){"Actor"===this.value?dlg.querySelector(".fldRole").classList.remove("hide"):dlg.querySelector(".fldRole").classList.add("hide")}),dlg.querySelector(".btnCancel").addEventListener("click",function(e){_dialoghelper.default.close(dlg)}),dlg.querySelector("form").addEventListener("submit",function(e){return submitted=!0,person.Name=dlg.querySelector(".txtPersonName",dlg).value,person.Type=dlg.querySelector(".selectPersonType",dlg).value,person.Role=dlg.querySelector(".txtPersonRole",dlg).value||null,_dialoghelper.default.close(dlg),e.preventDefault(),!1}),dlg.querySelector(".selectPersonType").dispatchEvent(new CustomEvent("change",{bubbles:!0}))})})}}});

View File

@@ -0,0 +1,40 @@
<div class="formDialogHeader">
<button is="paper-icon-button-light" class="btnCancel hide-mouse-idle-tv" tabindex="-1"><i class="md-icon autortl">&#xE5C4;</i></button>
<h3 class="formDialogHeaderTitle">
${Edit}
</h3>
</div>
<div is="emby-scroller" data-horizontal="false" data-forcescrollbar="true" data-focusscroll="true" class="formDialogContent">
<div class="scrollSlider">
<form class="popupEditPersonForm dialogContentInner dialog-content-centered padded-left padded-right">
<div class="inputContainer">
<input type="text" is="emby-input" class="txtPersonName" required="required" label="${LabelName}" />
</div>
<div class="selectContainer">
<select is="emby-select" id="selectPersonType" class="selectPersonType" label="${LabelType}">
<option value=""></option>
<option value="Actor">${Actor}</option>
<option value="Composer">${Composer}</option>
<option value="Director">${Director}</option>
<option value="GuestStar">${GuestStar}</option>
<option value="Producer">${Producer}</option>
<option value="Writer">${Writer}</option>
</select>
</div>
<div class="inputContainer fldRole hide">
<input is="emby-input" type="text" class="txtPersonRole" label="${LabelPersonRole}" />
<div class="fieldDescription">${LabelPersonRoleHelp}</div>
</div>
<div class="formDialogFooter">
<button is="emby-button" type="submit" class="raised button-submit block formDialogFooterItem">
<span>${Save}</span>
</button>
</div>
</form>
</div>
</div>