update metadata manager
This commit is contained in:
parent
9ecfdc4e7c
commit
c3875ebe73
7 changed files with 390 additions and 362 deletions
|
@ -1,4 +1,4 @@
|
|||
define(['itemHelper', 'dialogHelper', 'datetime', 'loading', 'focusManager', 'connectionManager', 'globalize', 'require', 'emby-checkbox', 'emby-input', 'emby-select', 'listViewStyle', 'emby-textarea', 'emby-button', 'paper-icon-button-light'], function (itemHelper, dialogHelper, datetime, loading, focusManager, connectionManager, globalize, require) {
|
||||
define(['itemHelper', 'layoutManager', 'scrollHelper', 'dialogHelper', 'datetime', 'loading', 'focusManager', 'connectionManager', 'globalize', 'require', 'emby-checkbox', 'emby-input', 'emby-select', 'listViewStyle', 'emby-textarea', 'emby-button', 'paper-icon-button-light', 'css!./../formdialog'], function (itemHelper, layoutManager, scrollHelper, dialogHelper, datetime, loading, focusManager, connectionManager, globalize, require) {
|
||||
|
||||
var currentContext;
|
||||
var metadataEditorInfo;
|
||||
|
@ -1171,10 +1171,17 @@
|
|||
|
||||
require(['text!./metadataeditor.template.html'], function (template) {
|
||||
|
||||
var dlg = dialogHelper.createDialog({
|
||||
removeOnClose: true,
|
||||
size: 'medium'
|
||||
});
|
||||
var dialogOptions = {
|
||||
removeOnClose: true
|
||||
};
|
||||
|
||||
if (layoutManager.tv) {
|
||||
dialogOptions.size = 'fullscreen';
|
||||
} else {
|
||||
dialogOptions.size = 'medium';
|
||||
}
|
||||
|
||||
var dlg = dialogHelper.createDialog(dialogOptions);
|
||||
|
||||
dlg.classList.add('ui-body-b');
|
||||
dlg.classList.add('background-theme-b');
|
||||
|
@ -1188,6 +1195,10 @@
|
|||
dlg.innerHTML = html;
|
||||
document.body.appendChild(dlg);
|
||||
|
||||
if (layoutManager.tv) {
|
||||
scrollHelper.centerFocus.on(dlg.querySelector('.dialogContent'), false);
|
||||
}
|
||||
|
||||
dialogHelper.open(dlg);
|
||||
|
||||
dlg.addEventListener('close', function () {
|
||||
|
|
|
@ -1,11 +1,9 @@
|
|||
<div class="dialogHeader" style="margin:0 0 2em;">
|
||||
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1">
|
||||
<i class="md-icon"></i>
|
||||
</button>
|
||||
<div class="dialogHeader">
|
||||
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon"></i></button>
|
||||
<div class="dialogHeaderTitle">
|
||||
${ButtonEdit}
|
||||
</div>
|
||||
<div style="margin-left:auto; display: flex; align-items: center; justify-content: center;">
|
||||
<div style="margin-left: auto; display: flex; align-items: center; justify-content: center;">
|
||||
<button is="emby-button" type="button" class="btnHeaderSave accent autoSize" tabindex="-1">
|
||||
<i class="md-icon">check</i>
|
||||
<span>${ButtonSave}</span>
|
||||
|
@ -16,303 +14,307 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<form class="editItemMetadataForm editMetadataForm" style="margin:0;max-width:100%;">
|
||||
<div class="metadataFormFields">
|
||||
<div class="dialogContent smoothScrollY" style="padding-top:2em;">
|
||||
|
||||
<div style="padding: 0 0 10px;">
|
||||
<div id="fldContentType" class="selectContainer hide">
|
||||
<select is="emby-select" id="selectContentType" label="${LabelContentType}"></select>
|
||||
</div>
|
||||
<div id="fldPath" class="inputContainer">
|
||||
<input is="emby-input" id="txtPath" type="text" label="${LabelPath}" readonly />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtName" type="text" label="${LabelTitle}" required="required" />
|
||||
</div>
|
||||
<div id="fldOriginalName" class="inputContainer">
|
||||
<input is="emby-input" id="txtOriginalName" type="text" label="${LabelOriginalTitle}" />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtSortName" type="text" label="${LabelSortTitle}" />
|
||||
</div>
|
||||
<div id="fldDateAdded" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtDateAdded" type="date" label="${LabelDateAdded}" />
|
||||
<div class="fieldDescription">${ConfigureDateAdded}</div>
|
||||
</div>
|
||||
<div id="fldStatus" class="hide selectContainer">
|
||||
<select is="emby-select" id="selectStatus" label="${LabelStatus}"></select>
|
||||
</div>
|
||||
<div id="fldArtist" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtArtist" type="text" label="${LabelArtists}" />
|
||||
<div class="fieldDescription">${LabelArtistsHelp}</div>
|
||||
</div>
|
||||
<div id="fldAlbumArtist" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtAlbumArtist" type="text" label="${LabelAlbumArtists}" />
|
||||
<div class="fieldDescription">${LabelArtistsHelp}</div>
|
||||
</div>
|
||||
<div id="fldAlbum" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtAlbum" type="text" label="${LabelAlbum}" />
|
||||
</div>
|
||||
<div id="fldParentIndexNumber" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtParentIndexNumber" type="number" />
|
||||
</div>
|
||||
<div id="fldIndexNumber" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtIndexNumber" type="number" pattern="[0-9]*" />
|
||||
</div>
|
||||
<div id="fldCommunityRating" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtCommunityRating" type="number" step=".1" min="0" max="10" label="${LabelCommunityRating}" />
|
||||
</div>
|
||||
<div id="fldCommunityVoteCount" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtCommunityVoteCount" type="number" step="1" label="${LabelVoteCount}" />
|
||||
</div>
|
||||
<div id="fldMetascore" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtMetascore" type="number" step="1" min="0" max="100" label="${LabelMetascore}" />
|
||||
</div>
|
||||
<div id="fldCriticRating" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtCriticRating" type="number" step=".1" label="${LabelCriticRating}" />
|
||||
</div>
|
||||
<div id="fldCriticRatingSummary" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtCriticRatingSummary" type="text" label="${LabelCriticRatingSummary}" />
|
||||
</div>
|
||||
<div id="fldAwardSummary" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtAwardSummary" type="text" label="${LabelAwardSummary}" />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtHomePageUrl" type="text" label="${LabelWebsite}" />
|
||||
</div>
|
||||
<div id="fldTagline" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtTagline" type="text" label="${LabelTagline}" />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<textarea is="emby-textarea" id="txtOverview" label="${LabelOverview}"></textarea>
|
||||
</div>
|
||||
<div id="fldShortOverview" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtShortOverview" type="text" label="${LabelShortOverview}" />
|
||||
</div>
|
||||
<div id="fldPremiereDate" class="inputContainer">
|
||||
<input is="emby-input" id="txtPremiereDate" label="${LabelReleaseDate}" type="date" />
|
||||
</div>
|
||||
<div id="fldYear" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtProductionYear" type="number" label="${LabelYear}" />
|
||||
</div>
|
||||
<div id="fldPlaceOfBirth" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtPlaceOfBirth" type="text" label="${LabelPlaceOfBirth}" />
|
||||
</div>
|
||||
<div id="fldEndDate" class="inputContainer">
|
||||
<input is="emby-input" id="txtEndDate" label="${LabelEndDate}" type="date" />
|
||||
</div>
|
||||
<div id="fldAirDays" class="hide">
|
||||
<p>${LabelAirDays}</p>
|
||||
<form class="editItemMetadataForm editMetadataForm dialogContentInner centeredContent">
|
||||
<div class="metadataFormFields">
|
||||
|
||||
<div class="checkboxList">
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" class="chkAirDay" data-day="Sunday" />
|
||||
<span>${OptionSunday}</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" class="chkAirDay" data-day="Monday" />
|
||||
<span>${OptionMonday}</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" class="chkAirDay" data-day="Tuesday" />
|
||||
<span>${OptionTuesday}</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" class="chkAirDay" data-day="Wednesday" />
|
||||
<span>${OptionWednesday}</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" class="chkAirDay" data-day="Thursday" />
|
||||
<span>${OptionThursday}</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" class="chkAirDay" data-day="Friday" />
|
||||
<span>${OptionFriday}</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" class="chkAirDay" data-day="Saturday" />
|
||||
<span>${OptionSaturday}</span>
|
||||
</label>
|
||||
<div style="padding: 0 0 10px;">
|
||||
<div id="fldContentType" class="selectContainer hide">
|
||||
<select is="emby-select" id="selectContentType" label="${LabelContentType}"></select>
|
||||
</div>
|
||||
<br />
|
||||
<div id="fldPath" class="inputContainer">
|
||||
<input is="emby-input" id="txtPath" type="text" label="${LabelPath}" readonly />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtName" type="text" label="${LabelTitle}" required="required" />
|
||||
</div>
|
||||
<div id="fldOriginalName" class="inputContainer">
|
||||
<input is="emby-input" id="txtOriginalName" type="text" label="${LabelOriginalTitle}" />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtSortName" type="text" label="${LabelSortTitle}" />
|
||||
</div>
|
||||
<div id="fldDateAdded" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtDateAdded" type="date" label="${LabelDateAdded}" />
|
||||
<div class="fieldDescription">${ConfigureDateAdded}</div>
|
||||
</div>
|
||||
<div id="fldStatus" class="hide selectContainer">
|
||||
<select is="emby-select" id="selectStatus" label="${LabelStatus}"></select>
|
||||
</div>
|
||||
<div id="fldArtist" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtArtist" type="text" label="${LabelArtists}" />
|
||||
<div class="fieldDescription">${LabelArtistsHelp}</div>
|
||||
</div>
|
||||
<div id="fldAlbumArtist" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtAlbumArtist" type="text" label="${LabelAlbumArtists}" />
|
||||
<div class="fieldDescription">${LabelArtistsHelp}</div>
|
||||
</div>
|
||||
<div id="fldAlbum" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtAlbum" type="text" label="${LabelAlbum}" />
|
||||
</div>
|
||||
<div id="fldParentIndexNumber" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtParentIndexNumber" type="number" />
|
||||
</div>
|
||||
<div id="fldIndexNumber" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtIndexNumber" type="number" pattern="[0-9]*" />
|
||||
</div>
|
||||
<div id="fldCommunityRating" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtCommunityRating" type="number" step=".1" min="0" max="10" label="${LabelCommunityRating}" />
|
||||
</div>
|
||||
<div id="fldCommunityVoteCount" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtCommunityVoteCount" type="number" step="1" label="${LabelVoteCount}" />
|
||||
</div>
|
||||
<div id="fldMetascore" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtMetascore" type="number" step="1" min="0" max="100" label="${LabelMetascore}" />
|
||||
</div>
|
||||
<div id="fldCriticRating" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtCriticRating" type="number" step=".1" label="${LabelCriticRating}" />
|
||||
</div>
|
||||
<div id="fldCriticRatingSummary" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtCriticRatingSummary" type="text" label="${LabelCriticRatingSummary}" />
|
||||
</div>
|
||||
<div id="fldAwardSummary" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtAwardSummary" type="text" label="${LabelAwardSummary}" />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtHomePageUrl" type="text" label="${LabelWebsite}" />
|
||||
</div>
|
||||
<div id="fldTagline" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtTagline" type="text" label="${LabelTagline}" />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<textarea is="emby-textarea" id="txtOverview" label="${LabelOverview}"></textarea>
|
||||
</div>
|
||||
<div id="fldShortOverview" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtShortOverview" type="text" label="${LabelShortOverview}" />
|
||||
</div>
|
||||
<div id="fldPremiereDate" class="inputContainer">
|
||||
<input is="emby-input" id="txtPremiereDate" label="${LabelReleaseDate}" type="date" />
|
||||
</div>
|
||||
<div id="fldYear" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtProductionYear" type="number" label="${LabelYear}" />
|
||||
</div>
|
||||
<div id="fldPlaceOfBirth" class="hide inputContainer">
|
||||
<input is="emby-input" id="txtPlaceOfBirth" type="text" label="${LabelPlaceOfBirth}" />
|
||||
</div>
|
||||
<div id="fldEndDate" class="inputContainer">
|
||||
<input is="emby-input" id="txtEndDate" label="${LabelEndDate}" type="date" />
|
||||
</div>
|
||||
<div id="fldAirDays" class="hide">
|
||||
<p>${LabelAirDays}</p>
|
||||
|
||||
</div>
|
||||
<div id="fldAirTime" class="inputContainer hide">
|
||||
<input is="emby-input" id="txtAirTime" type="text" label="${LabelAirTime}" />
|
||||
</div>
|
||||
<div id="fldSeriesRuntime" class="inputContainer hide">
|
||||
<input is="emby-input" id="txtSeriesRuntime" type="number" label="${LabelRuntimeMinutes}" />
|
||||
</div>
|
||||
<div id="fldOfficialRating" class="selectContainer hide">
|
||||
<select is="emby-select" id="selectOfficialRating" label="${LabelParentalRating}"></select>
|
||||
</div>
|
||||
<div id="fldCustomRating" class="selectContainer hide">
|
||||
<select is="emby-select" id="selectCustomRating" label="${LabelCustomRating}"></select>
|
||||
</div>
|
||||
<div id="fldBudget" class="inputContainer hide">
|
||||
<input is="emby-input" id="txtBudget" type="number" label="${LabelBudget}" />
|
||||
</div>
|
||||
<div id="fldRevenue" class="inputContainer hide">
|
||||
<input is="emby-input" id="txtRevenue" type="number" label="${LabelRevenue}" />
|
||||
</div>
|
||||
<div id="fldOriginalAspectRatio" class="inputContainer hide">
|
||||
<input is="emby-input" id="txtOriginalAspectRatio" type="text" label="${LabelOriginalAspectRatio}" />
|
||||
</div>
|
||||
<div id="fldPlayers" class="inputContainer hide">
|
||||
<input is="emby-input" id="txtPlayers" type="number" pattern="[0-9]*" label="${LabelPlayers}" />
|
||||
</div>
|
||||
<div id="fld3dFormat" class="selectContainer hide">
|
||||
<select is="emby-select" id="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>
|
||||
<br />
|
||||
<div class="checkboxList">
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" class="chkAirDay" data-day="Sunday" />
|
||||
<span>${OptionSunday}</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" class="chkAirDay" data-day="Monday" />
|
||||
<span>${OptionMonday}</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" class="chkAirDay" data-day="Tuesday" />
|
||||
<span>${OptionTuesday}</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" class="chkAirDay" data-day="Wednesday" />
|
||||
<span>${OptionWednesday}</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" class="chkAirDay" data-day="Thursday" />
|
||||
<span>${OptionThursday}</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" class="chkAirDay" data-day="Friday" />
|
||||
<span>${OptionFriday}</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" is="emby-checkbox" class="chkAirDay" data-day="Saturday" />
|
||||
<span>${OptionSaturday}</span>
|
||||
</label>
|
||||
</div>
|
||||
<br />
|
||||
|
||||
<div class="detailSection hide" id="collapsibleDvdEpisodeInfo">
|
||||
<h1>
|
||||
${HeaderAlternateEpisodeNumbers}
|
||||
</h1>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtDvdSeasonNumber" type="number" pattern="[0-9]*" label="${LabelDvdSeasonNumber}" />
|
||||
</div>
|
||||
<div id="fldAirTime" class="inputContainer hide">
|
||||
<input is="emby-input" id="txtAirTime" type="text" label="${LabelAirTime}" />
|
||||
</div>
|
||||
<div id="fldSeriesRuntime" class="inputContainer hide">
|
||||
<input is="emby-input" id="txtSeriesRuntime" type="number" label="${LabelRuntimeMinutes}" />
|
||||
</div>
|
||||
<div id="fldOfficialRating" class="selectContainer hide">
|
||||
<select is="emby-select" id="selectOfficialRating" label="${LabelParentalRating}"></select>
|
||||
</div>
|
||||
<div id="fldCustomRating" class="selectContainer hide">
|
||||
<select is="emby-select" id="selectCustomRating" label="${LabelCustomRating}"></select>
|
||||
</div>
|
||||
<div id="fldBudget" class="inputContainer hide">
|
||||
<input is="emby-input" id="txtBudget" type="number" label="${LabelBudget}" />
|
||||
</div>
|
||||
<div id="fldRevenue" class="inputContainer hide">
|
||||
<input is="emby-input" id="txtRevenue" type="number" label="${LabelRevenue}" />
|
||||
</div>
|
||||
<div id="fldOriginalAspectRatio" class="inputContainer hide">
|
||||
<input is="emby-input" id="txtOriginalAspectRatio" type="text" label="${LabelOriginalAspectRatio}" />
|
||||
</div>
|
||||
<div id="fldPlayers" class="inputContainer hide">
|
||||
<input is="emby-input" id="txtPlayers" type="number" pattern="[0-9]*" label="${LabelPlayers}" />
|
||||
</div>
|
||||
<div id="fld3dFormat" class="selectContainer hide">
|
||||
<select is="emby-select" id="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>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtDvdEpisodeNumber" type="number" pattern="[0-9]*" label="${LabelDvdEpisodeNumber}" />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtAbsoluteEpisodeNumber" type="number" pattern="[0-9]*" label="${LabelAbsoluteEpisodeNumber}" />
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
|
||||
<div class="detailSection hide" id="collapsibleSpecialEpisodeInfo">
|
||||
<h1>
|
||||
${HeaderSpecialEpisodeInfo}
|
||||
</h1>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtAirsBeforeSeason" type="number" pattern="[0-9]*" label="${LabelAirsBeforeSeason}" />
|
||||
<div class="detailSection hide" id="collapsibleDvdEpisodeInfo">
|
||||
<h1>
|
||||
${HeaderAlternateEpisodeNumbers}
|
||||
</h1>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtDvdSeasonNumber" type="number" pattern="[0-9]*" label="${LabelDvdSeasonNumber}" />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtDvdEpisodeNumber" type="number" pattern="[0-9]*" label="${LabelDvdEpisodeNumber}" />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtAbsoluteEpisodeNumber" type="number" pattern="[0-9]*" label="${LabelAbsoluteEpisodeNumber}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtAirsAfterSeason" type="number" pattern="[0-9]*" label="${LabelAirsAfterSeason}" />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtAirsBeforeEpisode" type="number" pattern="[0-9]*" label="${LabelAirsBeforeEpisode}" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="detailSection">
|
||||
<h1>
|
||||
${HeaderExternalIds}
|
||||
</h1>
|
||||
<div class="externalIds editorFieldset">
|
||||
<div class="detailSection hide" id="collapsibleSpecialEpisodeInfo">
|
||||
<h1>
|
||||
${HeaderSpecialEpisodeInfo}
|
||||
</h1>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtAirsBeforeSeason" type="number" pattern="[0-9]*" label="${LabelAirsBeforeSeason}" />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtAirsAfterSeason" type="number" pattern="[0-9]*" label="${LabelAirsAfterSeason}" />
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" id="txtAirsBeforeEpisode" type="number" pattern="[0-9]*" label="${LabelAirsBeforeEpisode}" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="detailSection hide" id="collapsibleDisplaySettings">
|
||||
<h1>
|
||||
${HeaderDisplaySettings}
|
||||
</h1>
|
||||
<div id="fldSourceType" class="hide fldDisplaySetting inputContainer">
|
||||
<input is="emby-input" id="txtDisplayMediaType" type="text" label="${LabelTreatImageAs}" />
|
||||
<div class="detailSection">
|
||||
<h1>
|
||||
${HeaderExternalIds}
|
||||
</h1>
|
||||
<div class="externalIds editorFieldset">
|
||||
</div>
|
||||
</div>
|
||||
<div id="fldDisplayOrder" class="fldDisplaySetting selectContainer">
|
||||
<select is="emby-select" id="selectDisplayOrder" label="${LabelDisplayOrder}"></select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="countriesCollapsible" class="editableListviewContainer hide" style="margin-top: 3em;">
|
||||
<h1 style="margin:.6em 0;vertical-align:middle;display:inline-block;">
|
||||
${HeaderCountries}
|
||||
</h1>
|
||||
<button is="emby-button" type="button" class="raised btnAddTextItem submit mini" style="margin-left:1em;" title="${ButtonAdd}">
|
||||
<i class="md-icon">add</i>
|
||||
<span>${ButtonAdd}</span>
|
||||
</button>
|
||||
<div class="paperList" id="listCountries"></div>
|
||||
</div>
|
||||
<div id="genresCollapsible" class="editableListviewContainer hide" style="margin-top: 3em;">
|
||||
<h1 style="margin:.6em 0;vertical-align:middle;display:inline-block;">
|
||||
${HeaderGenres}
|
||||
</h1>
|
||||
<button is="emby-button" type="button" class="raised btnAddTextItem submit mini" style="margin-left:1em;" title="${ButtonAdd}">
|
||||
<i class="md-icon">add</i>
|
||||
<span>${ButtonAdd}</span>
|
||||
</button>
|
||||
<div class="paperList" id="listGenres"></div>
|
||||
</div>
|
||||
<div id="peopleCollapsible" style="margin-top: 3em;" class="hide">
|
||||
<h1 style="margin:.6em 0;vertical-align:middle;display:inline-block;">
|
||||
${HeaderPeople}
|
||||
</h1>
|
||||
<button is="emby-button" type="button" id="btnAddPerson" class="raised btnAddPerson submit mini" style="margin-left:1em;" title="${ButtonAdd}">
|
||||
<i class="md-icon">add</i>
|
||||
<span>${ButtonAdd}</span>
|
||||
</button>
|
||||
<div id="peopleList" class="paperList">
|
||||
<div class="detailSection hide" id="collapsibleDisplaySettings">
|
||||
<h1>
|
||||
${HeaderDisplaySettings}
|
||||
</h1>
|
||||
<div id="fldSourceType" class="hide fldDisplaySetting inputContainer">
|
||||
<input is="emby-input" id="txtDisplayMediaType" type="text" label="${LabelTreatImageAs}" />
|
||||
</div>
|
||||
<div id="fldDisplayOrder" class="fldDisplaySetting selectContainer">
|
||||
<select is="emby-select" id="selectDisplayOrder" label="${LabelDisplayOrder}"></select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="keywordsCollapsible" class="editableListviewContainer hide" style="margin-top: 3em;">
|
||||
<h1 style="margin:.6em 0;vertical-align:middle;display:inline-block;">
|
||||
${HeaderPlotKeywords}
|
||||
</h1>
|
||||
<button is="emby-button" type="button" class="raised btnAddTextItem submit mini" style="margin-left:1em;" title="${ButtonAdd}">
|
||||
<i class="md-icon">add</i>
|
||||
<span>${ButtonAdd}</span>
|
||||
</button>
|
||||
<div class="paperList" id="listKeywords"></div>
|
||||
</div>
|
||||
<div id="studiosCollapsible" class="editableListviewContainer hide" style="margin-top: 3em;">
|
||||
<h1 style="margin:.6em 0;vertical-align:middle;display:inline-block;">
|
||||
${HeaderStudios}
|
||||
</h1>
|
||||
<button is="emby-button" type="button" class="raised btnAddTextItem submit mini" style="margin-left:1em;" title="${ButtonAdd}">
|
||||
<i class="md-icon">add</i>
|
||||
<span>${ButtonAdd}</span>
|
||||
</button>
|
||||
<div class="paperList" id="listStudios"></div>
|
||||
</div>
|
||||
<div id="tagsCollapsible" class="editableListviewContainer hide" style="margin-top: 3em;">
|
||||
<h1 style="margin:.6em 0;vertical-align:middle;display:inline-block;">
|
||||
${HeaderTags}
|
||||
</h1>
|
||||
<button is="emby-button" type="button" class="raised btnAddTextItem submit mini" style="margin-left:1em;" title="${ButtonAdd}">
|
||||
<i class="md-icon">add</i>
|
||||
<span>${ButtonAdd}</span>
|
||||
</button>
|
||||
<div class="paperList" id="listTags"></div>
|
||||
</div>
|
||||
<div id="metadataSettingsCollapsible" style="margin-top: 3em;" class="hide">
|
||||
<h1>${HeaderMetadataSettings}</h1>
|
||||
<div>
|
||||
<div class="selectContainer">
|
||||
<select is="emby-select" id="selectLanguage" label="${LabelMetadataDownloadLanguage}"></select>
|
||||
|
||||
<div id="countriesCollapsible" class="editableListviewContainer hide" style="margin-top: 3em;">
|
||||
<h1 style="margin:.6em 0;vertical-align:middle;display:inline-block;">
|
||||
${HeaderCountries}
|
||||
</h1>
|
||||
<button is="emby-button" type="button" class="raised btnAddTextItem submit mini" style="margin-left:1em;" title="${ButtonAdd}">
|
||||
<i class="md-icon">add</i>
|
||||
<span>${ButtonAdd}</span>
|
||||
</button>
|
||||
<div class="paperList" id="listCountries"></div>
|
||||
</div>
|
||||
<div id="genresCollapsible" class="editableListviewContainer hide" style="margin-top: 3em;">
|
||||
<h1 style="margin:.6em 0;vertical-align:middle;display:inline-block;">
|
||||
${HeaderGenres}
|
||||
</h1>
|
||||
<button is="emby-button" type="button" class="raised btnAddTextItem submit mini" style="margin-left:1em;" title="${ButtonAdd}">
|
||||
<i class="md-icon">add</i>
|
||||
<span>${ButtonAdd}</span>
|
||||
</button>
|
||||
<div class="paperList" id="listGenres"></div>
|
||||
</div>
|
||||
<div id="peopleCollapsible" style="margin-top: 3em;" class="hide">
|
||||
<h1 style="margin:.6em 0;vertical-align:middle;display:inline-block;">
|
||||
${HeaderPeople}
|
||||
</h1>
|
||||
<button is="emby-button" type="button" id="btnAddPerson" class="raised btnAddPerson submit mini" style="margin-left:1em;" title="${ButtonAdd}">
|
||||
<i class="md-icon">add</i>
|
||||
<span>${ButtonAdd}</span>
|
||||
</button>
|
||||
<div id="peopleList" class="paperList">
|
||||
</div>
|
||||
</div>
|
||||
<div id="keywordsCollapsible" class="editableListviewContainer hide" style="margin-top: 3em;">
|
||||
<h1 style="margin:.6em 0;vertical-align:middle;display:inline-block;">
|
||||
${HeaderPlotKeywords}
|
||||
</h1>
|
||||
<button is="emby-button" type="button" class="raised btnAddTextItem submit mini" style="margin-left:1em;" title="${ButtonAdd}">
|
||||
<i class="md-icon">add</i>
|
||||
<span>${ButtonAdd}</span>
|
||||
</button>
|
||||
<div class="paperList" id="listKeywords"></div>
|
||||
</div>
|
||||
<div id="studiosCollapsible" class="editableListviewContainer hide" style="margin-top: 3em;">
|
||||
<h1 style="margin:.6em 0;vertical-align:middle;display:inline-block;">
|
||||
${HeaderStudios}
|
||||
</h1>
|
||||
<button is="emby-button" type="button" class="raised btnAddTextItem submit mini" style="margin-left:1em;" title="${ButtonAdd}">
|
||||
<i class="md-icon">add</i>
|
||||
<span>${ButtonAdd}</span>
|
||||
</button>
|
||||
<div class="paperList" id="listStudios"></div>
|
||||
</div>
|
||||
<div id="tagsCollapsible" class="editableListviewContainer hide" style="margin-top: 3em;">
|
||||
<h1 style="margin:.6em 0;vertical-align:middle;display:inline-block;">
|
||||
${HeaderTags}
|
||||
</h1>
|
||||
<button is="emby-button" type="button" class="raised btnAddTextItem submit mini" style="margin-left:1em;" title="${ButtonAdd}">
|
||||
<i class="md-icon">add</i>
|
||||
<span>${ButtonAdd}</span>
|
||||
</button>
|
||||
<div class="paperList" id="listTags"></div>
|
||||
</div>
|
||||
<div id="metadataSettingsCollapsible" style="margin-top: 3em;" class="hide">
|
||||
<h1>${HeaderMetadataSettings}</h1>
|
||||
<div>
|
||||
<div class="selectContainer">
|
||||
<select is="emby-select" id="selectLanguage" label="${LabelMetadataDownloadLanguage}"></select>
|
||||
<div class="fieldDescription editorfieldDescription">${MessageLeaveEmptyToInherit}</div>
|
||||
</div>
|
||||
<div class="selectContainer">
|
||||
<select is="emby-select" id="selectCountry" label="${LabelCountry}"></select>
|
||||
</div>
|
||||
<div class="fieldDescription editorfieldDescription">${MessageLeaveEmptyToInherit}</div>
|
||||
</div>
|
||||
<div class="selectContainer">
|
||||
<select is="emby-select" id="selectCountry" label="${LabelCountry}"></select>
|
||||
</div>
|
||||
<div class="fieldDescription editorfieldDescription">${MessageLeaveEmptyToInherit}</div>
|
||||
|
||||
<br /><br />
|
||||
<label class="checkboxContainer">
|
||||
<input type="checkbox" is="emby-checkbox" id="chkLockData" />
|
||||
<span>${LabelLockItemToPreventChanges}</span>
|
||||
</label>
|
||||
<br /><br />
|
||||
<label class="checkboxContainer">
|
||||
<input type="checkbox" is="emby-checkbox" id="chkLockData" />
|
||||
<span>${LabelLockItemToPreventChanges}</span>
|
||||
</label>
|
||||
|
||||
<div class="providerSettingsContainer checkboxList hide">
|
||||
<div class="providerSettingsContainer checkboxList hide">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
<button is="emby-button" type="submit" class="raised submit block btnSave">
|
||||
<i class="md-icon">check</i>
|
||||
<span>${ButtonSave}</span>
|
||||
</button>
|
||||
</div>
|
||||
<br />
|
||||
<button is="emby-button" type="submit" class="raised submit block btnSave">
|
||||
<i class="md-icon">check</i>
|
||||
<span>${ButtonSave}</span>
|
||||
</button>
|
||||
</div>
|
||||
<br />
|
||||
<br />
|
||||
</form>
|
||||
<br />
|
||||
</form>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -1,14 +1,21 @@
|
|||
define(['dialogHelper', 'globalize', 'require', 'paper-icon-button-light', 'emby-input', 'emby-select'], function (dialogHelper, globalize, require) {
|
||||
define(['dialogHelper', 'layoutManager', 'scrollHelper', 'globalize', 'require', 'paper-icon-button-light', 'emby-input', 'emby-select', 'css!./../formdialog'], function (dialogHelper, layoutManager, scrollHelper, globalize, require) {
|
||||
|
||||
function show(person) {
|
||||
return new Promise(function (resolve, reject) {
|
||||
|
||||
require(['text!./personeditor.template.html'], function (template) {
|
||||
|
||||
var dlg = dialogHelper.createDialog({
|
||||
removeOnClose: true,
|
||||
size: 'medium'
|
||||
});
|
||||
var dialogOptions = {
|
||||
removeOnClose: true
|
||||
};
|
||||
|
||||
if (layoutManager.tv) {
|
||||
dialogOptions.size = 'fullscreen';
|
||||
} else {
|
||||
dialogOptions.size = 'medium';
|
||||
}
|
||||
|
||||
var dlg = dialogHelper.createDialog(dialogOptions);
|
||||
|
||||
dlg.classList.add('ui-body-b');
|
||||
dlg.classList.add('background-theme-b');
|
||||
|
@ -27,6 +34,10 @@
|
|||
dlg.querySelector('.selectPersonType', dlg).value = person.Type || '';
|
||||
dlg.querySelector('.txtPersonRole', dlg).value = person.Role || '';
|
||||
|
||||
if (layoutManager.tv) {
|
||||
scrollHelper.centerFocus.on(dlg.querySelector('.dialogContent'), false);
|
||||
}
|
||||
|
||||
dialogHelper.open(dlg);
|
||||
|
||||
dlg.addEventListener('close', function () {
|
||||
|
|
|
@ -1,35 +1,35 @@
|
|||
<div class="dialogHeader" style="margin:0 0 2em;">
|
||||
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1">
|
||||
<i class="md-icon"></i>
|
||||
</button>
|
||||
<div class="dialogHeader">
|
||||
<button is="paper-icon-button-light" class="btnCancel autoSize" tabindex="-1"><i class="md-icon"></i></button>
|
||||
<div class="dialogHeaderTitle">
|
||||
${ButtonEdit}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<form class="popupEditPersonForm" style="max-width: none;margin:0;">
|
||||
<div class="dialogContent smoothScrollY" style="padding-top:2em;">
|
||||
<form class="popupEditPersonForm dialogContentInner centeredContent">
|
||||
|
||||
<div class="inputContainer">
|
||||
<input type="text" is="emby-input" class="txtPersonName" required="required" label="${LabelName}" />
|
||||
</div>
|
||||
<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">${OptionActor}</option>
|
||||
<option value="Composer">${OptionComposer}</option>
|
||||
<option value="Director">${OptionDirector}</option>
|
||||
<option value="GuestStar">${OptionGuestStar}</option>
|
||||
<option value="Producer">${OptionProducer}</option>
|
||||
<option value="Writer">${OptionWriter}</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" type="text" class="txtPersonRole" label="${LabelPersonRole}" />
|
||||
<div class="fieldDescription">${LabelPersonRoleHelp}</div>
|
||||
</div>
|
||||
<button is="emby-button" type="submit" class="raised submit block">
|
||||
<i class="md-icon">check</i>
|
||||
<span>${ButtonOk}</span>
|
||||
</button>
|
||||
</form>
|
||||
<div class="selectContainer">
|
||||
<select is="emby-select" id="selectPersonType" class="selectPersonType" label="${LabelType}">
|
||||
<option value=""></option>
|
||||
<option value="Actor">${OptionActor}</option>
|
||||
<option value="Composer">${OptionComposer}</option>
|
||||
<option value="Director">${OptionDirector}</option>
|
||||
<option value="GuestStar">${OptionGuestStar}</option>
|
||||
<option value="Producer">${OptionProducer}</option>
|
||||
<option value="Writer">${OptionWriter}</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="inputContainer">
|
||||
<input is="emby-input" type="text" class="txtPersonRole" label="${LabelPersonRole}" />
|
||||
<div class="fieldDescription">${LabelPersonRoleHelp}</div>
|
||||
</div>
|
||||
<button is="emby-button" type="submit" class="raised submit block">
|
||||
<i class="md-icon">check</i>
|
||||
<span>${ButtonOk}</span>
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
|
@ -8,15 +8,6 @@ iron-icon {
|
|||
min-height: 24px;
|
||||
}
|
||||
|
||||
.ui-body-a select {
|
||||
background: none;
|
||||
border-color: #757575;
|
||||
}
|
||||
|
||||
.ui-body-a select option {
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.paperCheckboxFieldDescription {
|
||||
padding-left: 31px;
|
||||
padding-top: 5px;
|
||||
|
@ -42,25 +33,6 @@ paper-input + .fieldDescription {
|
|||
}
|
||||
}
|
||||
|
||||
.ui-body-a .emby-collapsible-button {
|
||||
border: 0;
|
||||
background-color: #e8e8e8;
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
.ui-body-a .emby-collapsible-title {
|
||||
margin: .25em 0;
|
||||
color: #000;
|
||||
padding: 0 0 0 .5em;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.ui-body-a .emby-collapsible-content, .ui-body-a .collapseContent {
|
||||
border-width: 0;
|
||||
padding: 1em 1.25em;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.dashboardDocument .lnkMySync {
|
||||
display: none !important;
|
||||
}
|
||||
|
@ -279,15 +251,7 @@ paper-textarea.mono textarea {
|
|||
border-color: #52B54B;
|
||||
}
|
||||
|
||||
.ui-body-a .inputLabel, .ui-body-a .textareaLabel {
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.ui-body-a .inputLabel.focused:not(.blank), .ui-body-a .textareaLabel.focused:not(.blank) {
|
||||
color: green;
|
||||
}
|
||||
|
||||
.ui-body-a .paper-input-container-0 .input-content.paper-input-container label, .ui-body-a .paper-input-container-0 .input-content.paper-input-container .paper-input-label, .ui-body-a paper-textarea label, .ui-body-a .selectLabel, .ui-body-a .paperListLabel, .ui-body-a .fieldDescription {
|
||||
.ui-body-a .paper-input-container-0 .input-content.paper-input-container label, .ui-body-a .paper-input-container-0 .input-content.paper-input-container .paper-input-label, .ui-body-a paper-textarea label {
|
||||
color: #555;
|
||||
}
|
||||
|
||||
|
|
|
@ -529,7 +529,7 @@ progress {
|
|||
}
|
||||
|
||||
.fullWidthContent .supporterPromotionContainer {
|
||||
position: static!important;
|
||||
position: static !important;
|
||||
}
|
||||
|
||||
@media all and (min-width: 800px) {
|
||||
|
@ -616,4 +616,44 @@ progress {
|
|||
border-width: 0;
|
||||
padding: 1em 1.25em;
|
||||
background-color: #222;
|
||||
}
|
||||
}
|
||||
|
||||
.ui-body-a select {
|
||||
background: none;
|
||||
border-color: #757575;
|
||||
}
|
||||
|
||||
.ui-body-a select option {
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.ui-body-a .emby-collapsible-button {
|
||||
border: 0;
|
||||
background-color: #e8e8e8;
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
.ui-body-a .emby-collapsible-title {
|
||||
margin: .25em 0;
|
||||
color: #000;
|
||||
padding: 0 0 0 .5em;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.ui-body-a .emby-collapsible-content, .ui-body-a .collapseContent {
|
||||
border-width: 0;
|
||||
padding: 1em 1.25em;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.ui-body-a .inputLabel, .ui-body-a .textareaLabel {
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.ui-body-a .inputLabel.focused:not(.blank), .ui-body-a .textareaLabel.focused:not(.blank) {
|
||||
color: green;
|
||||
}
|
||||
|
||||
.ui-body-a .selectLabel, .ui-body-a .paperListLabel, .ui-body-a .fieldDescription {
|
||||
color: #555;
|
||||
}
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
StartIndex: 0,
|
||||
Limit: LibraryBrowser.getDefaultPageSize()
|
||||
},
|
||||
view: LibraryBrowser.getSavedView(key) || LibraryBrowser.getDefaultItemsView('Poster', 'Poster')
|
||||
view: LibraryBrowser.getSavedView(key) || LibraryBrowser.getDefaultItemsView('PosterCard', 'PosterCard')
|
||||
};
|
||||
|
||||
pageData.query.ParentId = LibraryMenu.getTopParentId();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue