1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

progress on editing page

This commit is contained in:
Luke Pulverenti 2013-05-22 18:01:37 -04:00
parent 057f6bfabf
commit 11c73466e6
3 changed files with 213 additions and 74 deletions

View file

@ -486,12 +486,12 @@ a.itemTag:hover {
.metadataFormFields {
float: left;
width: 70%;
width: 75%;
}
.metadataFormButtons {
float: right;
width: 28%;
width: 23%;
}
}

View file

@ -18,78 +18,135 @@
<form id="editItemMetadataForm" class="editMetadataForm">
<div class="metadataFormFields">
<div data-role="fieldcontain">
<label for="txtName">Name:</label>
<input type="text" id="txtName" name="txtName" required="required" data-mini="true" />
<div data-role="collapsible" data-collapsed="false">
<h3>Basics</h3>
<div>
<div data-role="fieldcontain">
<label for="txtName">Name:</label>
<input type="text" id="txtName" name="txtName" required="required" data-mini="true" />
</div>
<div data-role="fieldcontain">
<label for="txtSortName">Sort name:</label>
<input type="text" id="txtSortName" name="txtSortName" data-mini="true" />
</div>
<div data-role="fieldcontain">
<label for="txtDisplayMediaType">Display type:</label>
<input type="text" id="txtDisplayMediaType" name="txtDisplayMediaType" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldArtist" style="display: none;">
<label for="txtArtist">Artist:</label>
<input type="text" id="txtArtist" name="txtArtist" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldAlbumArtist" style="display: none;">
<label for="txtAlbumArtist">Album artist:</label>
<input type="text" id="txtAlbumArtist" name="txtAlbumArtist" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldAlbum" style="display: none;">
<label for="txtAlbum">Album:</label>
<input type="text" id="txtAlbum" name="txtAlbum" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldParentIndexNumber" style="display: none;">
<label id="lblParentIndexNumber" for="txtParentIndexNumber">Parent number:</label>
<input type="number" id="txtParentIndexNumber" name="txtParentIndexNumber" data-mini="true" pattern="[0-9]*" />
</div>
<div data-role="fieldcontain" id="fldIndexNumber" style="display: none;">
<label id="lblIndexNumber" for="txtIndexNumber">Number:</label>
<input type="number" id="txtIndexNumber" name="txtIndexNumber" data-mini="true" pattern="[0-9]*" />
</div>
<div data-role="fieldcontain">
<label for="txtCommunityRating">Community rating:</label>
<input type="number" id="txtCommunityRating" name="txtCommunityRating" step=".1" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldCriticRating" style="display: none;">
<label for="txtCriticRating">Critic rating:</label>
<input type="number" id="txtCriticRating" name="txtCriticRating" step=".1" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldCriticRatingSummary" style="display: none;">
<label for="txtCriticRatingSummary">Critic rating summary:</label>
<input type="text" id="txtCriticRatingSummary" name="txtCriticRatingSummary" data-mini="true" />
</div>
<div data-role="fieldcontain">
<label for="txtHomePageUrl">Website:</label>
<input type="url" id="txtHomePageUrl" name="txtHomePageUrl" data-mini="true" />
</div>
<div data-role="fieldcontain">
<label for="txtPremiereDate">Release date:</label>
<input type="date" id="txtPremiereDate" name="txtPremiereDate" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldEndDate" style="display: none;">
<label for="txtEndDate">End date:</label>
<input type="date" id="txtEndDate" name="txtEndDate" data-mini="true" />
</div>
<div data-role="fieldcontain">
<label for="txtProductionYear">Year:</label>
<input type="number" id="txtProductionYear" name="txtProductionYear" data-mini="true" />
</div>
<div data-role="fieldcontain">
<label for="selectOfficialRating">Official rating:</label>
<select name="selectOfficialRating" id="selectOfficialRating" data-mini="true"></select>
</div>
<div data-role="fieldcontain">
<label for="selectCustomRating">Custom rating:</label>
<select name="selectCustomRating" id="selectCustomRating" data-mini="true"></select>
</div>
<div data-role="fieldcontain" id="fldBudget" style="display: none;">
<label for="txtBudget">Budget ($):</label>
<input type="number" id="txtBudget" name="txtBudget" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldRevenue" style="display: none;">
<label for="txtRevenue">Revenue ($):</label>
<input type="number" id="txtRevenue" name="txtRevenue" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldOriginalAspectRatio" style="display: none;">
<label for="txtOriginalAspectRatio">Original aspect ratio:</label>
<input type="text" id="txtOriginalAspectRatio" name="txtOriginalAspectRatio" data-mini="true" />
</div>
<div data-role="fieldcontain" style="display: none;">
<label for="selectLanguage">Original language:</label>
<select name="selectLanguage" id="selectLanguage" data-mini="true"></select>
</div>
<div data-role="fieldcontain" id="fldPlayers" style="display: none;">
<label for="txtPlayers">Players:</label>
<input type="number" id="txtPlayers" name="txtPlayers" data-mini="true" />
</div>
</div>
</div>
<div data-role="fieldcontain">
<label for="txtSortName">Sort name:</label>
<input type="text" id="txtSortName" name="txtSortName" data-mini="true" />
</div>
<div data-role="fieldcontain">
<label for="txtDisplayMediaType">Display type:</label>
<input type="text" id="txtDisplayMediaType" name="txtDisplayMediaType" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldParentIndexNumber" style="display: none;">
<label id="lblParentIndexNumber" for="txtParentIndexNumber">Parent number:</label>
<input type="number" id="txtParentIndexNumber" name="txtParentIndexNumber" data-mini="true" pattern="[0-9]*" />
</div>
<div data-role="fieldcontain" id="fldIndexNumber" style="display: none;">
<label id="lblIndexNumber" for="txtIndexNumber">Number:</label>
<input type="number" id="txtIndexNumber" name="txtIndexNumber" data-mini="true" pattern="[0-9]*" />
</div>
<div data-role="fieldcontain">
<label for="txtCommunityRating">Community rating:</label>
<input type="number" id="txtCommunityRating" name="txtCommunityRating" step=".1" data-mini="true" />
</div>
<div data-role="fieldcontain">
<label for="txtCriticRating">Critic rating:</label>
<input type="number" id="txtCriticRating" name="txtCriticRating" step=".1" data-mini="true" />
</div>
<div data-role="fieldcontain">
<label for="txtCriticRatingSummary">Critic rating summary:</label>
<input type="text" id="txtCriticRatingSummary" name="txtCriticRatingSummary" data-mini="true" />
</div>
<div data-role="fieldcontain">
<label for="txtHomePageUrl">Website:</label>
<input type="url" id="txtHomePageUrl" name="txtHomePageUrl" data-mini="true" />
</div>
<div data-role="fieldcontain">
<label for="txtPremiereDate">Release date:</label>
<input type="date" id="txtPremiereDate" name="txtPremiereDate" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldEndDate" style="display: none;">
<label for="txtEndDate">End date:</label>
<input type="date" id="txtEndDate" name="txtEndDate" data-mini="true" />
</div>
<div data-role="fieldcontain">
<label for="txtProductionYear">Year:</label>
<input type="number" id="txtProductionYear" name="txtProductionYear" data-mini="true" />
</div>
<div data-role="fieldcontain">
<label for="selectOfficialRating">Official rating:</label>
<select name="selectOfficialRating" id="selectOfficialRating" data-mini="true"></select>
</div>
<div data-role="fieldcontain">
<label for="selectCustomRating">Custom rating:</label>
<select name="selectCustomRating" id="selectCustomRating" data-mini="true"></select>
</div>
<div data-role="fieldcontain" id="fldBudget" style="display: none;">
<label for="txtBudget">Budget ($):</label>
<input type="number" id="txtBudget" name="txtBudget" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldRevenue" style="display: none;">
<label for="txtRevenue">Revenue ($):</label>
<input type="number" id="txtRevenue" name="txtRevenue" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldOriginalAspectRatio" style="display: none;">
<label for="txtOriginalAspectRatio">Original aspect ratio:</label>
<input type="text" id="txtOriginalAspectRatio" name="txtOriginalAspectRatio" data-mini="true" />
</div>
<div data-role="fieldcontain" style="display: none;">
<label for="selectLanguage">Original language:</label>
<select name="selectLanguage" id="selectLanguage" data-mini="true"></select>
<div data-role="collapsible">
<h3>External Id's</h3>
<div>
<div data-role="fieldcontain" id="fldGamesDb" style="display: none;">
<label for="txtGamesDb">GamesDb:</label>
<input id="txtGamesDb" name="txtGamesDb" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldImdb" style="display: none;">
<label for="txtImdb">Imdb:</label>
<input id="txtImdb" name="txtImdb" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldMusicBrainz" style="display: none;">
<label for="txtMusicBrainz">MusicBrainz:</label>
<input id="txtMusicBrainz" name="txtMusicBrainz" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldRottenTomatoes" style="display: none;">
<label for="txtRottenTomatoes">Rotten Tomatoes:</label>
<input id="txtRottenTomatoes" name="txtRottenTomatoes" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldTmdb" style="display: none;">
<label for="txtTmdb">TheMovieDB:</label>
<input id="txtTmdb" name="txtTmdb" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldTvdb" style="display: none;">
<label for="txtTvdb">TheTVDB:</label>
<input id="txtTvdb" name="txtTvdb" data-mini="true" />
</div>
<div data-role="fieldcontain" id="fldTvCom" style="display: none;">
<label for="txtTvCom">TV.com:</label>
<input id="txtTvCom" name="txtTvCom" data-mini="true" />
</div>
</div>
</div>
<br />
<ul data-role="listview" class="ulForm">
<li>
<button type="submit" data-theme="b" data-icon="ok">
@ -100,7 +157,7 @@
</div>
<div class="metadataFormButtons">
<div data-role="collapsible" data-content-theme="a" data-collapsed="false" data-mini="true">
<div data-role="collapsible" data-content-theme="a" data-collapsed="false">
<h3>Refresh Metadata</h3>
<div>
<div id="refreshLoading" style="display: none;">
@ -108,6 +165,10 @@
<div class="circle1"></div>
<div style="margin-top: -15px;"></div>
</div>
<p id="fldRecursive" style="display: none;">
<label for="chkRecursive">Recursive</label>
<input type="checkbox" id="chkRecursive" name="chkRecursive" data-mini="true" />
</p>
<p>
<button id="btnRefresh" type="button" data-icon="refresh" data-mini="true" data-theme="b">Refresh</button>
</p>

View file

@ -10,6 +10,12 @@
ApiClient.getItem(Dashboard.getCurrentUserId(), id).done(function (item) {
if (item.IsFolder) {
$('#fldRecursive', page).show();
} else {
$('#fldRecursive', page).hide();
}
$('#btnRefresh', page).button('enable');
$('#refreshLoading', page).hide();
@ -42,6 +48,60 @@
$('#fldRevenue', page).hide();
}
if (item.MediaType == "Game") {
$('#fldPlayers', page).show();
$('#fldGamesDb', page).show();
} else {
$('#fldPlayers', page).hide();
$('#fldGamesDb', page).hide();
}
if (item.Type == "Movie" || item.Type == "Trailer") {
$('#fldCriticRating', page).show();
$('#fldCriticRatingSummary', page).show();
$('#fldRottenTomatoes', page).show();
} else {
$('#fldCriticRating', page).hide();
$('#fldCriticRatingSummary', page).hide();
$('#fldRottenTomatoes', page).hide();
}
if (item.Type == "Movie" || item.Type == "Trailer" || item.Type == "Person" || item.Type == "BoxSet") {
$('#fldTmdb', page).show();
} else {
$('#fldTmdb', page).hide();
}
if (item.Type == "Series" || item.Type == "Season" || item.Type == "Episode") {
$('#fldTvdb', page).show();
$('#fldTvCom', page).show();
} else {
$('#fldTvdb', page).hide();
$('#fldTvCom', page).hide();
}
if (item.Type == "Audio") {
$('#fldArtist', page).show();
$('#fldAlbum', page).show();
$('#fldAlbumArtist', page).show();
} else {
$('#fldArtist', page).hide();
$('#fldAlbum', page).hide();
$('#fldAlbumArtist', page).hide();
}
if (item.Type == "Movie" || item.Type == "Trailer" || item.Type == "Person" || item.Type == "Series" || item.Type == "Season" || item.Type == "Episode") {
$('#fldImdb', page).show();
} else {
$('#fldImdb', page).hide();
}
if (item.Type == "Audio" || item.Type == "Artist" || item.Type == "MusicArtist" || item.Type == "MusicAlbum") {
$('#fldMusicBrainz', page).show();
} else {
$('#fldMusicBrainz', page).hide();
}
if (item.MediaType == "Video") {
$('#fldOriginalAspectRatio', page).show();
} else {
@ -124,6 +184,13 @@
$('#txtIndexNumber', page).val(item.IndexNumber || "");
$('#txtParentIndexNumber', page).val(item.ParentIndexNumber || "");
$('#txtPlayers', page).val(item.Players || "");
$('#txtAlbum', page).val(item.Album || "");
$('#txtAlbumArtist', page).val(item.AlbumArtist || "");
var artists = item.Artists || [];
$('#txtArtist', page).val(artists.join(','));
var date;
@ -156,6 +223,17 @@
$('#txtProductionYear', page).val(item.ProductionYear || "");
$('#txtOriginalAspectRatio', page).val(item.AspectRatio || "");
var providerIds = item.ProviderIds || {};
$('#txtGamesDb', page).val(providerIds.Gamesdb || "");
$('#txtImdb', page).val(providerIds.Imdb || "");
$('#txtTmdb', page).val(providerIds.Tmdb || "");
$('#txtTvdb', page).val(providerIds.Tvdb || "");
$('#txtTvCom', page).val(providerIds.Tvcom || "");
$('#txtMusicBrainz', page).val(providerIds.Musicbrainz || "");
$('#txtRottenTomatoes', page).val(providerIds.RottenTomatoes || "");
}
function populateLanguages(allCultures, select) {
@ -224,7 +302,7 @@
$('#refreshLoading', page).show();
ApiClient.refreshItem(currentItem.Id, true, false).done(function () {
ApiClient.refreshItem(currentItem.Id, true, $('#fldRecursive', page).checked()).done(function () {
reload(page);