mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
Merge upstream/master
This commit is contained in:
commit
48ce08d2aa
39 changed files with 229 additions and 195 deletions
|
@ -17,7 +17,6 @@
|
||||||
<div class="listTopPaging">
|
<div class="listTopPaging">
|
||||||
</div>
|
</div>
|
||||||
<button id="btnNewCollection" data-mini="true" data-icon="plus" data-inline="true" class="hide">New</button>
|
<button id="btnNewCollection" data-mini="true" data-icon="plus" data-inline="true" class="hide">New</button>
|
||||||
<div class="viewSummary"></div>
|
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -45,7 +44,7 @@
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
|
|
||||||
<form>
|
<form>
|
||||||
<div id="sortpanel">
|
<div id="sortpanel">
|
||||||
|
@ -76,7 +75,7 @@
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>Filters:
|
<legend>Filters:
|
||||||
|
|
|
@ -36,10 +36,6 @@
|
||||||
font-size: 90%;
|
font-size: 90%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.viewSummary {
|
|
||||||
padding: .5em 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.viewMenuLink {
|
.viewMenuLink {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
color: #ccc!important;
|
color: #ccc!important;
|
||||||
|
@ -432,7 +428,6 @@ a.itemTag:hover {
|
||||||
background-position: center 15%;
|
background-position: center 15%;
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
height: 550px;
|
height: 550px;
|
||||||
border-bottom: 1px solid #111;
|
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -771,6 +766,10 @@ a.itemTag:hover {
|
||||||
.lnkSibling:not(.hide) {
|
.lnkSibling:not(.hide) {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.itemBackdrop {
|
||||||
|
border-bottom: 1px solid #111;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@media all and (min-width: 1000px) {
|
@media all and (min-width: 1000px) {
|
||||||
|
@ -1122,6 +1121,12 @@ a.itemTag:hover {
|
||||||
padding: 1em;
|
padding: 1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.itemSelectionPanel .ui-checkbox {
|
||||||
|
max-width: 90px;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
.selectionCommandsControlGroup {
|
.selectionCommandsControlGroup {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
margin-left: .5em;
|
margin-left: .5em;
|
||||||
|
|
|
@ -683,7 +683,6 @@ h1 .imageLink {
|
||||||
z-index: 99997;
|
z-index: 99997;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
border: 0 !important;
|
border: 0 !important;
|
||||||
max-height: 220px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.footerNotification {
|
.footerNotification {
|
||||||
|
@ -700,10 +699,6 @@ h1 .imageLink {
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
}
|
}
|
||||||
|
|
||||||
#dashboardVersionWarning {
|
|
||||||
line-height: 50px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Gradient Shadow
|
* Gradient Shadow
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -24,14 +24,19 @@
|
||||||
<div class="viewControls" data-role="controlgroup" data-type="horizontal">
|
<div class="viewControls" data-role="controlgroup" data-type="horizontal">
|
||||||
<button data-mini="true" data-icon="sort" data-inline="true" data-iconpos="notext" title="Sort" onclick="$('#sortPanel', $(this).parents('.page')).panel( 'toggle' );">Sort</button>
|
<button data-mini="true" data-icon="sort" data-inline="true" data-iconpos="notext" title="Sort" onclick="$('#sortPanel', $(this).parents('.page')).panel( 'toggle' );">Sort</button>
|
||||||
<button data-mini="true" data-icon="filter" data-inline="true" data-iconpos="notext" title="Filter" onclick="$('#filterPanel', $(this).parents('.page')).panel( 'toggle' );">Filter</button>
|
<button data-mini="true" data-icon="filter" data-inline="true" data-iconpos="notext" title="Filter" onclick="$('#filterPanel', $(this).parents('.page')).panel( 'toggle' );">Filter</button>
|
||||||
|
<button data-mini="true" data-icon="check" data-inline="true" data-iconpos="notext" title="Select" class="btnToggleSelections">Select</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="listTopPaging">
|
<div class="listTopPaging">
|
||||||
</div>
|
</div>
|
||||||
<div class="viewSummary"></div>
|
<div class="selectionCommands" style="display: none;">
|
||||||
|
<div data-role="controlgroup" data-type="horizontal" class="selectionCommandsControlGroup">
|
||||||
|
<button class="btnMergeVersions" data-mini="true" data-icon="recycle" data-inline="true" title="Combine Versions">Group Versions</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
|
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
|
@ -83,7 +88,7 @@
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -22,13 +22,12 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="listTopPaging">
|
<div class="listTopPaging">
|
||||||
</div>
|
</div>
|
||||||
<div class="viewSummary"></div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
|
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
|
@ -68,7 +67,7 @@
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -131,6 +131,9 @@
|
||||||
<span id="trailerButtonContainer" style="display: none;">
|
<span id="trailerButtonContainer" style="display: none;">
|
||||||
<button id="btnPlayTrailer" type="button" data-icon="video" data-inline="true" data-mini="true">Trailer</button>
|
<button id="btnPlayTrailer" type="button" data-icon="video" data-inline="true" data-mini="true">Trailer</button>
|
||||||
</span>
|
</span>
|
||||||
|
<span id="externalTrailerButtonContainer" style="display: none;">
|
||||||
|
<a id="btnPlayExternalTrailer" data-role="button" data-icon="video" data-inline="true" data-mini="true" href="#" target="_blank">Trailer</a>
|
||||||
|
</span>
|
||||||
<span id="playExternalButtonContainer" style="display: none;">
|
<span id="playExternalButtonContainer" style="display: none;">
|
||||||
<a id="btnPlayExternal" data-role="button" data-icon="play" data-inline="true" data-mini="true" href="#" target="_blank">Play</a>
|
<a id="btnPlayExternal" data-role="button" data-icon="play" data-inline="true" data-mini="true" href="#" target="_blank">Play</a>
|
||||||
</span>
|
</span>
|
||||||
|
@ -156,7 +159,6 @@
|
||||||
<p id="itemPremiereDate"></p>
|
<p id="itemPremiereDate"></p>
|
||||||
<p id="itemBudget"></p>
|
<p id="itemBudget"></p>
|
||||||
<p id="itemRevenue"></p>
|
<p id="itemRevenue"></p>
|
||||||
<p id="awardSummary"></p>
|
|
||||||
<p class="itemStudios"></p>
|
<p class="itemStudios"></p>
|
||||||
<p class="itemExternalLinks"></p>
|
<p class="itemExternalLinks"></p>
|
||||||
<p class="itemTags"></p>
|
<p class="itemTags"></p>
|
||||||
|
@ -169,15 +171,10 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="childrenContent" class="detailSectionContent"></div>
|
<div id="childrenContent" class="detailSectionContent"></div>
|
||||||
</div>
|
</div>
|
||||||
<div id="trailersCollapsible" class="detailSection hide">
|
|
||||||
<div id="trailerSectionHeader" class="detailSectionHeader">
|
|
||||||
Trailers
|
|
||||||
</div>
|
|
||||||
<div id="trailersContent" class="detailSectionContent"></div>
|
|
||||||
</div>
|
|
||||||
<div id="alternateVersionsCollapsible" class="detailSection hide">
|
<div id="alternateVersionsCollapsible" class="detailSection hide">
|
||||||
<div class="detailSectionHeader">
|
<div class="detailSectionHeader" style="position: relative;">
|
||||||
Alternate Versions
|
Media Versions
|
||||||
|
<button type="button" class="btnSplitVersions" style="position: absolute; right: 0; top: 6px; margin-top: 0; margin-bottom: 0; display: none;" data-mini="true" data-inline="true" data-icon="delete" data-iconpos="notext" title="Split Versions Apart">Split Versions Apart</button>
|
||||||
</div>
|
</div>
|
||||||
<div id="alternateVersionsContent" class="detailSectionContent"></div>
|
<div id="alternateVersionsContent" class="detailSectionContent"></div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -219,10 +216,10 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="criticReviewsCollapsible" style="display: none;" class="detailSection">
|
<div id="criticReviewsCollapsible" style="display: none;" class="detailSection">
|
||||||
<div class="detailSectionHeader">
|
<div class="detailSectionHeader">
|
||||||
Movie Reviews From Rotten Tomatoes®
|
Awards and Reviews
|
||||||
</div>
|
</div>
|
||||||
|
<div style="padding: 0 .5em;">
|
||||||
<div style="padding: 0 1em;">
|
<p id="awardSummary"></p>
|
||||||
<div id="criticRatingSummary" class="criticReview criticRatingSummary" style="display: none;">
|
<div id="criticRatingSummary" class="criticReview criticRatingSummary" style="display: none;">
|
||||||
<p style="margin: 0 0 .5em -40px; font-weight: bold;">TOMATOMETER®</p>
|
<p style="margin: 0 0 .5em -40px; font-weight: bold;">TOMATOMETER®</p>
|
||||||
<div class="reviewScore">
|
<div class="reviewScore">
|
||||||
|
@ -231,7 +228,6 @@
|
||||||
<div class="criticRatingScore"></div>
|
<div class="criticRatingScore"></div>
|
||||||
<div class="criticRatingSummaryText"></div>
|
<div class="criticRatingSummaryText"></div>
|
||||||
</div>
|
</div>
|
||||||
<p>Top Critic Reviews</p>
|
|
||||||
<div id="criticReviewsContent" class="detailSectionContent"></div>
|
<div id="criticReviewsContent" class="detailSectionContent"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -29,11 +29,10 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="listTopPaging">
|
<div class="listTopPaging">
|
||||||
</div>
|
</div>
|
||||||
<div class="viewSummary"></div>
|
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
|
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
|
@ -79,7 +78,7 @@
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
<div id="items"></div>
|
<div id="items"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
|
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -32,21 +32,20 @@
|
||||||
<div class="viewControls" data-role="controlgroup" data-type="horizontal">
|
<div class="viewControls" data-role="controlgroup" data-type="horizontal">
|
||||||
<button data-mini="true" data-icon="sort" data-inline="true" data-iconpos="notext" title="Sort" onclick="$('#sortPanel', $(this).parents('.page')).panel( 'toggle' );">Sort</button>
|
<button data-mini="true" data-icon="sort" data-inline="true" data-iconpos="notext" title="Sort" onclick="$('#sortPanel', $(this).parents('.page')).panel( 'toggle' );">Sort</button>
|
||||||
<button data-mini="true" data-icon="filter" data-inline="true" data-iconpos="notext" title="Filter" onclick="$('#filterPanel', $(this).parents('.page')).panel( 'toggle' );">Filter</button>
|
<button data-mini="true" data-icon="filter" data-inline="true" data-iconpos="notext" title="Filter" onclick="$('#filterPanel', $(this).parents('.page')).panel( 'toggle' );">Filter</button>
|
||||||
<!-- <button data-mini="true" data-icon="check" data-inline="true" data-iconpos="notext" title="Select" class="btnToggleSelections">Select</button>-->
|
<button data-mini="true" data-icon="check" data-inline="true" data-iconpos="notext" title="Select" class="btnToggleSelections">Select</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="listTopPaging">
|
<div class="listTopPaging">
|
||||||
</div>
|
</div>
|
||||||
<div class="viewSummary"></div>
|
|
||||||
|
|
||||||
<div class="selectionCommands" style="display: none;">
|
<div class="selectionCommands" style="display: none;">
|
||||||
<div data-role="controlgroup" data-type="horizontal" class="selectionCommandsControlGroup">
|
<div data-role="controlgroup" data-type="horizontal" class="selectionCommandsControlGroup">
|
||||||
<button class="btnMergeVersions" data-mini="true" data-icon="recycle" data-inline="true" title="Combine Versions">Combine</button>
|
<button class="btnMergeVersions" data-mini="true" data-icon="recycle" data-inline="true" title="Combine Versions">Group Versions</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
|
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
|
@ -107,7 +106,7 @@
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
|
|
||||||
<fieldset data-role="controlgroup" data-type="horizontal" style="margin-bottom: 1em;">
|
<fieldset data-role="controlgroup" data-type="horizontal" style="margin-bottom: 1em;">
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -26,11 +26,10 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="listTopPaging">
|
<div class="listTopPaging">
|
||||||
</div>
|
</div>
|
||||||
<div class="viewSummary"></div>
|
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
|
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
|
@ -81,7 +80,7 @@
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -32,11 +32,10 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="listTopPaging">
|
<div class="listTopPaging">
|
||||||
</div>
|
</div>
|
||||||
<div class="viewSummary"></div>
|
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
|
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
|
@ -74,7 +73,7 @@
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -21,7 +21,6 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="listTopPaging">
|
<div class="listTopPaging">
|
||||||
</div>
|
</div>
|
||||||
<div class="viewSummary"></div>
|
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -26,11 +26,10 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="listTopPaging">
|
<div class="listTopPaging">
|
||||||
</div>
|
</div>
|
||||||
<div class="viewSummary"></div>
|
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
|
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
|
@ -85,7 +84,7 @@
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -28,16 +28,14 @@
|
||||||
|
|
||||||
updateFilterControls();
|
updateFilterControls();
|
||||||
|
|
||||||
var checkSortOption = $('.radioSortBy:checked', page);
|
|
||||||
$('.viewSummary', page).html(LibraryBrowser.getViewSummaryHtml(query, checkSortOption)).trigger('create');
|
|
||||||
|
|
||||||
html += LibraryBrowser.getPosterViewHtml({
|
html += LibraryBrowser.getPosterViewHtml({
|
||||||
items: result.Items,
|
items: result.Items,
|
||||||
useAverageAspectRatio: true,
|
useAverageAspectRatio: true,
|
||||||
shape: "backdrop",
|
shape: "backdrop",
|
||||||
showTitle: true,
|
showTitle: true,
|
||||||
showParentTitle: true,
|
showParentTitle: true,
|
||||||
overlayText: true
|
overlayText: true,
|
||||||
|
selectionPanel: true
|
||||||
});
|
});
|
||||||
|
|
||||||
$('.itemsContainer', page).removeClass('timelineItemsContainer');
|
$('.itemsContainer', page).removeClass('timelineItemsContainer');
|
||||||
|
@ -263,6 +261,12 @@
|
||||||
reloadItems(page);
|
reloadItems(page);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$('.itemsContainer', page).on('needsrefresh', function () {
|
||||||
|
|
||||||
|
reloadItems(page);
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
}).on('pagebeforeshow', "#episodesPage", function () {
|
}).on('pagebeforeshow', "#episodesPage", function () {
|
||||||
|
|
||||||
var limit = LibraryBrowser.getDefaultPageSize();
|
var limit = LibraryBrowser.getDefaultPageSize();
|
||||||
|
|
|
@ -27,9 +27,6 @@
|
||||||
|
|
||||||
updateFilterControls(page);
|
updateFilterControls(page);
|
||||||
|
|
||||||
var checkSortOption = $('.radioSortBy:checked', page);
|
|
||||||
$('.viewSummary', page).html(LibraryBrowser.getViewSummaryHtml(query, checkSortOption)).trigger('create');
|
|
||||||
|
|
||||||
html = LibraryBrowser.getPosterViewHtml({
|
html = LibraryBrowser.getPosterViewHtml({
|
||||||
items: result.Items,
|
items: result.Items,
|
||||||
shape: "auto",
|
shape: "auto",
|
||||||
|
|
|
@ -57,11 +57,27 @@
|
||||||
$('#playExternalButtonContainer', page).hide();
|
$('#playExternalButtonContainer', page).hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (item.LocalTrailerCount && item.LocationType !== "Offline" && item.PlayAccess == 'Full') {
|
if (item.LocalTrailerCount && item.PlayAccess == 'Full') {
|
||||||
$('#trailerButtonContainer', page).show();
|
$('#trailerButtonContainer', page).show();
|
||||||
} else {
|
} else {
|
||||||
$('#trailerButtonContainer', page).hide();
|
$('#trailerButtonContainer', page).hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!item.LocalTrailerCount && item.RemoteTrailers.length && item.PlayAccess == 'Full') {
|
||||||
|
$('#externalTrailerButtonContainer', page).show();
|
||||||
|
|
||||||
|
$('#btnPlayExternalTrailer', page).attr('href', item.RemoteTrailers[0].Url);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
$('#externalTrailerButtonContainer', page).hide();
|
||||||
|
$('#btnPlayExternalTrailer', page).attr('href', '#');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (user.Configuration.IsAdministrator) {
|
||||||
|
$('.btnSplitVersions', page).show();
|
||||||
|
} else {
|
||||||
|
$('.btnSplitVersions', page).hide();
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
if (item.LocationType == "Offline") {
|
if (item.LocationType == "Offline") {
|
||||||
|
@ -203,12 +219,7 @@
|
||||||
$('#scenesCollapsible', page).show();
|
$('#scenesCollapsible', page).show();
|
||||||
renderScenes(page, item, user, 4);
|
renderScenes(page, item, user, 4);
|
||||||
}
|
}
|
||||||
if (item.LocalTrailerCount || !item.RemoteTrailers.length || item.Type == "Trailer") {
|
|
||||||
$('#trailersCollapsible', page).addClass('hide');
|
|
||||||
} else {
|
|
||||||
$('#trailersCollapsible', page).removeClass('hide');
|
|
||||||
renderTrailers(page, item, user);
|
|
||||||
}
|
|
||||||
if (!item.SpecialFeatureCount || item.SpecialFeatureCount == 0 || item.Type == "Series") {
|
if (!item.SpecialFeatureCount || item.SpecialFeatureCount == 0 || item.Type == "Series") {
|
||||||
$('#specialsCollapsible', page).addClass('hide');
|
$('#specialsCollapsible', page).addClass('hide');
|
||||||
} else {
|
} else {
|
||||||
|
@ -745,7 +756,7 @@
|
||||||
|
|
||||||
ApiClient.getCriticReviews(item.Id, options).done(function (result) {
|
ApiClient.getCriticReviews(item.Id, options).done(function (result) {
|
||||||
|
|
||||||
if (result.TotalRecordCount || item.CriticRatingSummary) {
|
if (result.TotalRecordCount || item.CriticRatingSummary || item.AwardSummary) {
|
||||||
$('#criticReviewsCollapsible', page).show();
|
$('#criticReviewsCollapsible', page).show();
|
||||||
renderCriticReviewsContent(page, result, limit);
|
renderCriticReviewsContent(page, result, limit);
|
||||||
} else {
|
} else {
|
||||||
|
@ -897,27 +908,34 @@
|
||||||
|
|
||||||
function renderAlternateVersions(page, item, user) {
|
function renderAlternateVersions(page, item, user) {
|
||||||
|
|
||||||
var url = ApiClient.getUrl("Videos/" + item.Id + "/AlternateVersions", {
|
var url = ApiClient.getUrl("Videos/" + item.Id + "/Versions", {
|
||||||
userId: user.Id
|
userId: user.Id
|
||||||
});
|
});
|
||||||
|
|
||||||
$.getJSON(url).done(function (result) {
|
$.getJSON(url).done(function (items) {
|
||||||
|
|
||||||
if (result.Items.length) {
|
if (items.length) {
|
||||||
|
|
||||||
$('#alternateVersionsCollapsible', page).show();
|
$('#alternateVersionsCollapsible', page).show();
|
||||||
|
|
||||||
var html = LibraryBrowser.getPosterViewHtml({
|
var html = LibraryBrowser.getPosterViewHtml({
|
||||||
items: result.Items,
|
items: items.map(function (i) {
|
||||||
|
var extended = $.extend({}, item, i);
|
||||||
|
extended.Id = item.Id;
|
||||||
|
return extended;
|
||||||
|
}),
|
||||||
shape: "portrait",
|
shape: "portrait",
|
||||||
context: 'movies',
|
context: 'movies',
|
||||||
useAverageAspectRatio: true,
|
useAverageAspectRatio: true,
|
||||||
showTitle: true,
|
showTitle: true,
|
||||||
centerText: true,
|
centerText: true,
|
||||||
formatIndicators: true
|
formatIndicators: true,
|
||||||
|
linkItem: false,
|
||||||
|
showProgress: false,
|
||||||
|
showUnplayedIndicator: false
|
||||||
});
|
});
|
||||||
|
|
||||||
$('#alternateVersionsContent', page).html(html).trigger('create').createPosterItemMenus();
|
$('#alternateVersionsContent', page).html(html).trigger('create');
|
||||||
} else {
|
} else {
|
||||||
$('#alternateVersionsCollapsible', page).hide();
|
$('#alternateVersionsCollapsible', page).hide();
|
||||||
}
|
}
|
||||||
|
@ -1015,7 +1033,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
if (stream.Width || stream.Height) {
|
if (stream.Width || stream.Height) {
|
||||||
attributes.push('<span class="mediaInfoAttribute" id="mediaWidthHeight" data-width="' + stream.Width + '" data-height="' + stream.Height + '">' + stream.Width + 'x' + stream.Height + '</span>');
|
attributes.push('<span class="mediaInfoAttribute">' + stream.Width + 'x' + stream.Height + '</span>');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (stream.AspectRatio && stream.Codec != "mjpeg") {
|
if (stream.AspectRatio && stream.Codec != "mjpeg") {
|
||||||
|
@ -1122,38 +1140,6 @@
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function renderTrailers(page, item, user) {
|
|
||||||
|
|
||||||
if (item.Type == "Trailer") {
|
|
||||||
$('#trailerSectionHeader', page).html('More trailers');
|
|
||||||
} else {
|
|
||||||
$('#trailerSectionHeader', page).html('Trailers');
|
|
||||||
}
|
|
||||||
|
|
||||||
var remoteTrailersHtml = '';
|
|
||||||
|
|
||||||
for (var i = 0, length = item.RemoteTrailers.length; i < length; i++) {
|
|
||||||
|
|
||||||
var trailer = item.RemoteTrailers[i];
|
|
||||||
|
|
||||||
var id = getParameterByName('v', trailer.Url);
|
|
||||||
|
|
||||||
if (id) {
|
|
||||||
remoteTrailersHtml += '<iframe class="posterItem smallBackdropPosterItem" style="margin:0 3px;width:auto;" src="//www.youtube.com/embed/' + id + '?wmode=opaque" frameborder="0" allowfullscreen></iframe>';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
var elem = $('#trailersContent', page).html(remoteTrailersHtml).css({ "position": "relative", "z-index": 0 });
|
|
||||||
|
|
||||||
if (item.LocalTrailerCount) {
|
|
||||||
ApiClient.getLocalTrailers(user.Id, item.Id).done(function (trailers) {
|
|
||||||
|
|
||||||
elem.prepend(getVideosHtml(trailers, user));
|
|
||||||
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function renderCast(page, item, context, limit) {
|
function renderCast(page, item, context, limit) {
|
||||||
|
|
||||||
var html = '';
|
var html = '';
|
||||||
|
@ -1226,6 +1212,39 @@
|
||||||
MediaPlayer.play([currentItem], startPosition);
|
MediaPlayer.play([currentItem], startPosition);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function splitVersions(page) {
|
||||||
|
|
||||||
|
var id = getParameterByName('id');
|
||||||
|
|
||||||
|
Dashboard.confirm("Are you sure you wish to split the versions apart into separate items?", "Split Versions Apart", function (confirmResult) {
|
||||||
|
|
||||||
|
if (confirmResult) {
|
||||||
|
|
||||||
|
Dashboard.showLoadingMsg();
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type: "DELETE",
|
||||||
|
url: ApiClient.getUrl("Videos/" + id + "/AlternateVersions")
|
||||||
|
|
||||||
|
}).done(function () {
|
||||||
|
|
||||||
|
Dashboard.hideLoadingMsg();
|
||||||
|
|
||||||
|
reload(page);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function playTrailer(page) {
|
||||||
|
|
||||||
|
ApiClient.getLocalTrailers(Dashboard.getCurrentUserId(), currentItem.Id).done(function (trailers) {
|
||||||
|
|
||||||
|
MediaPlayer.play(trailers);
|
||||||
|
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
$(document).on('pageinit', "#itemDetailPage", function () {
|
$(document).on('pageinit', "#itemDetailPage", function () {
|
||||||
|
|
||||||
var page = this;
|
var page = this;
|
||||||
|
@ -1243,12 +1262,7 @@
|
||||||
});
|
});
|
||||||
|
|
||||||
$('#btnPlayTrailer', page).on('click', function () {
|
$('#btnPlayTrailer', page).on('click', function () {
|
||||||
|
playTrailer(page);
|
||||||
ApiClient.getLocalTrailers(Dashboard.getCurrentUserId(), currentItem.Id).done(function (trailers) {
|
|
||||||
|
|
||||||
MediaPlayer.play(trailers);
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
||||||
$('#btnPlayExternal', page).on('click', function () {
|
$('#btnPlayExternal', page).on('click', function () {
|
||||||
|
@ -1269,6 +1283,11 @@
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$('.btnSplitVersions', page).on('click', function () {
|
||||||
|
|
||||||
|
splitVersions(page);
|
||||||
|
});
|
||||||
|
|
||||||
}).on('pageshow', "#itemDetailPage", function () {
|
}).on('pageshow', "#itemDetailPage", function () {
|
||||||
|
|
||||||
var page = this;
|
var page = this;
|
||||||
|
|
|
@ -30,9 +30,6 @@
|
||||||
|
|
||||||
updateFilterControls(page);
|
updateFilterControls(page);
|
||||||
|
|
||||||
var checkSortOption = $('.radioSortBy:checked', page);
|
|
||||||
$('.viewSummary', page).html(LibraryBrowser.getViewSummaryHtml(query, checkSortOption)).trigger('create');
|
|
||||||
|
|
||||||
if (view == "Backdrop") {
|
if (view == "Backdrop") {
|
||||||
|
|
||||||
html = LibraryBrowser.getPosterViewHtml({
|
html = LibraryBrowser.getPosterViewHtml({
|
||||||
|
|
|
@ -665,7 +665,9 @@
|
||||||
|
|
||||||
cssClass += ' ' + options.shape + 'PosterItem';
|
cssClass += ' ' + options.shape + 'PosterItem';
|
||||||
|
|
||||||
html += '<a data-itemid="' + item.Id + '" class="' + cssClass + '" data-primaryversionid="' + (item.PrimaryVersionId || '') + '" data-locationtype="' + item.LocationType + '" data-mediatype="' + (item.MediaType || '') + '" href="' + LibraryBrowser.getHref(item, options.context) + '">';
|
var href = options.linkItem === false ? '#' : LibraryBrowser.getHref(item, options.context);
|
||||||
|
|
||||||
|
html += '<a data-itemid="' + item.Id + '" class="' + cssClass + '" data-alternateversioncount="' + (item.AlternateVersionCount || '0') + '" href="' + href + '">';
|
||||||
|
|
||||||
// Ribbon
|
// Ribbon
|
||||||
if (item.MediaType == "Video" && options.formatIndicators) {
|
if (item.MediaType == "Video" && options.formatIndicators) {
|
||||||
|
@ -706,7 +708,7 @@
|
||||||
imageCssClass += " coveredPosterItemImage";
|
imageCssClass += " coveredPosterItemImage";
|
||||||
}
|
}
|
||||||
|
|
||||||
var progressHtml = LibraryBrowser.getItemProgressBarHtml(item);
|
var progressHtml = options.showProgress === false ? '' : LibraryBrowser.getItemProgressBarHtml(item);
|
||||||
|
|
||||||
html += '<div class="' + imageCssClass + '" style="' + style + '">';
|
html += '<div class="' + imageCssClass + '" style="' + style + '">';
|
||||||
|
|
||||||
|
@ -731,7 +733,7 @@
|
||||||
var chkItemSelectId = 'chkItemSelect' + i;
|
var chkItemSelectId = 'chkItemSelect' + i;
|
||||||
|
|
||||||
// Render this pre-enhanced to save on jquery mobile dom manipulation
|
// Render this pre-enhanced to save on jquery mobile dom manipulation
|
||||||
html += '<div class="itemSelectionPanel" onclick="return false;"><div class="ui-checkbox"><label class="ui-btn ui-corner-all ui-btn-inherit ui-btn-icon-left ui-checkbox-off" for="' + chkItemSelectId + '">Select</label><input id="' + chkItemSelectId + '" type="checkbox" class="chkItemSelect" data-enhanced="true" /></div></div>';
|
html += '<div class="itemSelectionPanel" onclick="return false;" style="display:none;"><div class="ui-checkbox ui-mini"><label class="ui-btn ui-corner-all ui-btn-inherit ui-btn-icon-left ui-checkbox-off" for="' + chkItemSelectId + '">Select</label><input id="' + chkItemSelectId + '" type="checkbox" class="chkItemSelect" data-enhanced="true" /></div></div>';
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1158,21 +1160,6 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
getViewSummaryHtml: function (query, checkedSortOption) {
|
|
||||||
|
|
||||||
var html = '';
|
|
||||||
|
|
||||||
if (query.SortBy) {
|
|
||||||
|
|
||||||
var id = checkedSortOption[0].id;
|
|
||||||
var sortBy = checkedSortOption.siblings('label[for=' + id + ']').text();
|
|
||||||
|
|
||||||
html += 'Sorted by ' + sortBy.trim().toLowerCase() + ', ' + (query.SortOrder || 'ascending').toLowerCase();
|
|
||||||
}
|
|
||||||
|
|
||||||
return html;
|
|
||||||
},
|
|
||||||
|
|
||||||
getPagingHtml: function (query, totalRecordCount, updatePageSizeSetting, pageSizes, showLimit) {
|
getPagingHtml: function (query, totalRecordCount, updatePageSizeSetting, pageSizes, showLimit) {
|
||||||
|
|
||||||
if (query.Limit && updatePageSizeSetting !== false) {
|
if (query.Limit && updatePageSizeSetting !== false) {
|
||||||
|
|
|
@ -166,6 +166,34 @@
|
||||||
function onMenuCommand(command, elem) {
|
function onMenuCommand(command, elem) {
|
||||||
|
|
||||||
var id = elem.getAttribute('data-itemid');
|
var id = elem.getAttribute('data-itemid');
|
||||||
|
var page = $(elem).parents('.page');
|
||||||
|
|
||||||
|
if (command == 'SplitVersions') {
|
||||||
|
splitVersions(id, page);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function splitVersions(id, page) {
|
||||||
|
|
||||||
|
Dashboard.confirm("Are you sure you wish to split the versions apart into separate items?", "Split Versions Apart", function (confirmResult) {
|
||||||
|
|
||||||
|
if (confirmResult) {
|
||||||
|
|
||||||
|
Dashboard.showLoadingMsg();
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type: "DELETE",
|
||||||
|
url: ApiClient.getUrl("Videos/" + id + "/AlternateVersions")
|
||||||
|
|
||||||
|
}).done(function () {
|
||||||
|
|
||||||
|
Dashboard.hideLoadingMsg();
|
||||||
|
|
||||||
|
$('.itemsContainer', page).trigger('needsrefresh');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function getContextMenuOptions(elem) {
|
function getContextMenuOptions(elem) {
|
||||||
|
@ -173,7 +201,6 @@
|
||||||
var items = [];
|
var items = [];
|
||||||
|
|
||||||
var id = elem.getAttribute('data-itemid');
|
var id = elem.getAttribute('data-itemid');
|
||||||
var mediatype = elem.getAttribute('data-mediatype');
|
|
||||||
|
|
||||||
items.push({ type: 'header', text: 'Edit' });
|
items.push({ type: 'header', text: 'Edit' });
|
||||||
|
|
||||||
|
@ -181,12 +208,12 @@
|
||||||
|
|
||||||
items.push({ type: 'link', text: 'Images', url: 'edititemimages.html?id=' + id });
|
items.push({ type: 'link', text: 'Images', url: 'edititemimages.html?id=' + id });
|
||||||
|
|
||||||
//if (mediatype == 'Video' && elem.getAttribute('data-locationtype') == 'FileSystem' && !elem.getAttribute('data-primaryversionid')) {
|
if (elem.getAttribute('data-alternateversioncount') != '0') {
|
||||||
|
|
||||||
// items.push({ type: 'divider' });
|
items.push({ type: 'divider' });
|
||||||
// items.push({ type: 'header', text: 'Manage' });
|
items.push({ type: 'header', text: 'Manage' });
|
||||||
// items.push({ type: 'command', text: 'Alternate Versions', name: 'AlternateVersions' });
|
items.push({ type: 'command', text: 'Split Versions Apart', name: 'SplitVersions' });
|
||||||
//}
|
}
|
||||||
|
|
||||||
return items;
|
return items;
|
||||||
}
|
}
|
||||||
|
@ -201,7 +228,7 @@
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($('.itemSelectionPanel', elem).length) {
|
if ($('.itemSelectionPanel:visible', elem).length) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -260,11 +287,11 @@
|
||||||
|
|
||||||
if (user.Configuration.IsAdministrator) {
|
if (user.Configuration.IsAdministrator) {
|
||||||
|
|
||||||
//sequence.createContextMenu({
|
sequence.createContextMenu({
|
||||||
// getOptions: getContextMenuOptions,
|
getOptions: getContextMenuOptions,
|
||||||
// command: onMenuCommand,
|
command: onMenuCommand,
|
||||||
// selector: '.posterItem'
|
selector: '.posterItem'
|
||||||
//});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
@ -290,6 +317,8 @@
|
||||||
selectionCommands.show();
|
selectionCommands.show();
|
||||||
|
|
||||||
$('.itemSelectionPanel', page).show();
|
$('.itemSelectionPanel', page).show();
|
||||||
|
|
||||||
|
$('.chkItemSelect:checked', page).checked(false).checkboxradio('refresh');
|
||||||
}
|
}
|
||||||
|
|
||||||
Dashboard.hideLoadingMsg();
|
Dashboard.hideLoadingMsg();
|
||||||
|
@ -301,25 +330,25 @@
|
||||||
|
|
||||||
$('.itemSelectionPanel', page).hide();
|
$('.itemSelectionPanel', page).hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
function getSelectedItems(page) {
|
function getSelectedItems(page) {
|
||||||
|
|
||||||
var selection = $('.chkItemSelect:checked', page);
|
var selection = $('.chkItemSelect:checked', page);
|
||||||
|
|
||||||
return selection.parents('.posterItem')
|
return selection.parents('.posterItem')
|
||||||
.map(function() {
|
.map(function () {
|
||||||
|
|
||||||
return this.getAttribute('data-itemid');
|
return this.getAttribute('data-itemid');
|
||||||
|
|
||||||
}).get();
|
}).get();
|
||||||
}
|
}
|
||||||
|
|
||||||
function combineVersions(page) {
|
function combineVersions(page) {
|
||||||
|
|
||||||
var selection = getSelectedItems(page);
|
var selection = getSelectedItems(page);
|
||||||
|
|
||||||
if (selection.length < 2) {
|
if (selection.length < 2) {
|
||||||
|
|
||||||
Dashboard.alert({
|
Dashboard.alert({
|
||||||
message: "Please select two or more items to combine.",
|
message: "Please select two or more items to combine.",
|
||||||
title: "Error"
|
title: "Error"
|
||||||
|
@ -328,7 +357,36 @@
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
hideSelections();
|
var names = $('.chkItemSelect:checked', page).parents('.posterItem').get().reverse().map(function (e) {
|
||||||
|
|
||||||
|
return $('.posterItemText', e).html();
|
||||||
|
|
||||||
|
}).join('<br/>');
|
||||||
|
|
||||||
|
var msg = "The following titles will be grouped into one item:<br/><br/>" + names;
|
||||||
|
|
||||||
|
msg += "<br/><br/>Media Browser clients will automatically choose the optimal version to play based on device and network performance. Are you sure you wish to continue?";
|
||||||
|
|
||||||
|
Dashboard.confirm(msg, "Group Versions", function (confirmResult) {
|
||||||
|
|
||||||
|
if (confirmResult) {
|
||||||
|
|
||||||
|
Dashboard.showLoadingMsg();
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type: "POST",
|
||||||
|
url: ApiClient.getUrl("Videos/MergeVersions", { Ids: selection.join(',') })
|
||||||
|
|
||||||
|
}).done(function () {
|
||||||
|
|
||||||
|
Dashboard.hideLoadingMsg();
|
||||||
|
|
||||||
|
hideSelections();
|
||||||
|
|
||||||
|
$('.itemsContainer', page).trigger('needsrefresh');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
$(document).on('pageinit', ".libraryPage", function () {
|
$(document).on('pageinit', ".libraryPage", function () {
|
||||||
|
@ -339,10 +397,6 @@
|
||||||
toggleSelections(page);
|
toggleSelections(page);
|
||||||
});
|
});
|
||||||
|
|
||||||
$('.itemsContainer', page).on('listrender', function () {
|
|
||||||
hideSelections(page);
|
|
||||||
});
|
|
||||||
|
|
||||||
$('.btnMergeVersions', page).on('click', function () {
|
$('.btnMergeVersions', page).on('click', function () {
|
||||||
combineVersions(page);
|
combineVersions(page);
|
||||||
});
|
});
|
||||||
|
|
|
@ -28,9 +28,6 @@
|
||||||
|
|
||||||
if (result.TotalRecordCount) {
|
if (result.TotalRecordCount) {
|
||||||
|
|
||||||
var checkSortOption = $('.radioSortBy:checked', page);
|
|
||||||
$('.viewSummary', page).html(LibraryBrowser.getViewSummaryHtml(query, checkSortOption)).trigger('create');
|
|
||||||
|
|
||||||
html = LibraryBrowser.getPosterViewHtml({
|
html = LibraryBrowser.getPosterViewHtml({
|
||||||
items: result.Items,
|
items: result.Items,
|
||||||
shape: "portrait",
|
shape: "portrait",
|
||||||
|
|
|
@ -29,9 +29,6 @@
|
||||||
|
|
||||||
updateFilterControls(page);
|
updateFilterControls(page);
|
||||||
|
|
||||||
var checkSortOption = $('.radioSortBy:checked', page);
|
|
||||||
$('.viewSummary', page).html(LibraryBrowser.getViewSummaryHtml(query, checkSortOption)).trigger('create');
|
|
||||||
|
|
||||||
if (view == "Thumb") {
|
if (view == "Thumb") {
|
||||||
html = LibraryBrowser.getPosterViewHtml({
|
html = LibraryBrowser.getPosterViewHtml({
|
||||||
items: result.Items,
|
items: result.Items,
|
||||||
|
@ -70,7 +67,7 @@
|
||||||
|
|
||||||
html += LibraryBrowser.getPagingHtml(query, result.TotalRecordCount);
|
html += LibraryBrowser.getPagingHtml(query, result.TotalRecordCount);
|
||||||
|
|
||||||
$('#items', page).html(html).trigger('create').createPosterItemMenus().trigger('listrender');
|
$('#items', page).html(html).trigger('create').createPosterItemMenus();
|
||||||
|
|
||||||
$('.btnNextPage', page).on('click', function () {
|
$('.btnNextPage', page).on('click', function () {
|
||||||
query.StartIndex += query.Limit;
|
query.StartIndex += query.Limit;
|
||||||
|
@ -345,6 +342,12 @@
|
||||||
reloadItems(page);
|
reloadItems(page);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$('.itemsContainer', page).on('needsrefresh', function() {
|
||||||
|
|
||||||
|
reloadItems(page);
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
}).on('pagebeforeshow', "#moviesPage", function () {
|
}).on('pagebeforeshow', "#moviesPage", function () {
|
||||||
|
|
||||||
var page = this;
|
var page = this;
|
||||||
|
|
|
@ -26,9 +26,6 @@
|
||||||
|
|
||||||
updateFilterControls(page);
|
updateFilterControls(page);
|
||||||
|
|
||||||
var checkSortOption = $('.radioSortBy:checked', page);
|
|
||||||
$('.viewSummary', page).html(LibraryBrowser.getViewSummaryHtml(query, checkSortOption)).trigger('create');
|
|
||||||
|
|
||||||
html = LibraryBrowser.getPosterViewHtml({
|
html = LibraryBrowser.getPosterViewHtml({
|
||||||
items: result.Items,
|
items: result.Items,
|
||||||
shape: "portrait",
|
shape: "portrait",
|
||||||
|
|
|
@ -28,9 +28,6 @@
|
||||||
|
|
||||||
updateFilterControls(page);
|
updateFilterControls(page);
|
||||||
|
|
||||||
var checkSortOption = $('.radioSortBy:checked', page);
|
|
||||||
$('.viewSummary', page).html(LibraryBrowser.getViewSummaryHtml(query, checkSortOption)).trigger('create');
|
|
||||||
|
|
||||||
if (view == "Poster") {
|
if (view == "Poster") {
|
||||||
html = LibraryBrowser.getPosterViewHtml({
|
html = LibraryBrowser.getPosterViewHtml({
|
||||||
items: result.Items,
|
items: result.Items,
|
||||||
|
|
|
@ -26,9 +26,6 @@
|
||||||
|
|
||||||
updateFilterControls(page);
|
updateFilterControls(page);
|
||||||
|
|
||||||
var checkSortOption = $('.radioSortBy:checked', page);
|
|
||||||
$('.viewSummary', page).html(LibraryBrowser.getViewSummaryHtml(query, checkSortOption)).trigger('create');
|
|
||||||
|
|
||||||
html = LibraryBrowser.getPosterViewHtml({
|
html = LibraryBrowser.getPosterViewHtml({
|
||||||
items: result.Items,
|
items: result.Items,
|
||||||
shape: "square",
|
shape: "square",
|
||||||
|
|
|
@ -102,11 +102,11 @@
|
||||||
hours = 0;
|
hours = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
hours = hours.toFixed(0);
|
hours = Math.floor(hours);
|
||||||
|
|
||||||
ticks -= (hours * 36000000000);
|
ticks -= (hours * 36000000000);
|
||||||
|
|
||||||
var minutes = (ticks / 600000000).toFixed(0);
|
var minutes = Math.floor((ticks / 600000000));
|
||||||
|
|
||||||
var suffix = "am";
|
var suffix = "am";
|
||||||
|
|
||||||
|
|
|
@ -47,9 +47,6 @@
|
||||||
|
|
||||||
updateFilterControls(page);
|
updateFilterControls(page);
|
||||||
|
|
||||||
var checkSortOption = $('.radioSortBy:checked', page);
|
|
||||||
$('.viewSummary', page).html(LibraryBrowser.getViewSummaryHtml(query, checkSortOption)).trigger('create');
|
|
||||||
|
|
||||||
html += LibraryBrowser.getSongTableHtml(result.Items, {
|
html += LibraryBrowser.getSongTableHtml(result.Items, {
|
||||||
showAlbum: true,
|
showAlbum: true,
|
||||||
showArtist: true,
|
showArtist: true,
|
||||||
|
|
|
@ -28,9 +28,6 @@
|
||||||
|
|
||||||
updateFilterControls(page);
|
updateFilterControls(page);
|
||||||
|
|
||||||
var checkSortOption = $('.radioSortBy:checked', page);
|
|
||||||
$('.viewSummary', page).html(LibraryBrowser.getViewSummaryHtml(query, checkSortOption)).trigger('create');
|
|
||||||
|
|
||||||
if (view == "Thumb") {
|
if (view == "Thumb") {
|
||||||
|
|
||||||
html = LibraryBrowser.getPosterViewHtml({
|
html = LibraryBrowser.getPosterViewHtml({
|
||||||
|
|
|
@ -22,11 +22,10 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="listTopPaging">
|
<div class="listTopPaging">
|
||||||
</div>
|
</div>
|
||||||
<div class="viewSummary"></div>
|
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
|
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
|
@ -75,7 +74,7 @@
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
|
@ -34,11 +34,10 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="listTopPaging">
|
<div class="listTopPaging">
|
||||||
</div>
|
</div>
|
||||||
<div class="viewSummary"></div>
|
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="sortPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
|
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
|
@ -78,7 +77,7 @@
|
||||||
</fieldset>
|
</fieldset>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup" data-type="horizontal" style="margin-bottom: 1em;">
|
<fieldset data-role="controlgroup" data-type="horizontal" style="margin-bottom: 1em;">
|
||||||
<legend>Filters:</legend>
|
<legend>Filters:</legend>
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="items" class="itemsContainer"></div>
|
<div id="items" class="itemsContainer"></div>
|
||||||
</div>
|
</div>
|
||||||
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-theme="a" data-position-fixed="true">
|
<div data-role="panel" id="filterPanel" data-position="right" data-display="overlay" data-position-fixed="true">
|
||||||
<form>
|
<form>
|
||||||
<fieldset data-role="controlgroup">
|
<fieldset data-role="controlgroup">
|
||||||
<legend>
|
<legend>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue