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

update photos

This commit is contained in:
Luke Pulverenti 2015-08-26 14:17:38 -04:00
parent 400202c5a0
commit 2b33df50a9
14 changed files with 75 additions and 270 deletions

View file

@ -213,7 +213,7 @@
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
border-right: 1px solid #161616; border-right: 1px solid #161616;
width: 189px; width: 199px;
background: #303030; background: #303030;
} }
@ -261,7 +261,7 @@
} }
.programGrid, .timeslotHeaders { .programGrid, .timeslotHeaders {
margin-left: 190px; margin-left: 200px;
} }
.timeslotHeader { .timeslotHeader {

View file

@ -75,39 +75,34 @@
var context = getParameterByName('context'); var context = getParameterByName('context');
if (context == 'home') { var posterOptions = {
context = 'folders'; items: result.Items,
} shape: "auto",
centerText: true,
lazy: true
};
if (view == "Backdrop") { if (view == "Backdrop") {
html = LibraryBrowser.getPosterViewHtml({ posterOptions.shape = 'backdrop';
items: result.Items, posterOptions.showTitle = true;
shape: "backdrop", posterOptions.preferBackdrop = true;
showTitle: true,
centerText: true, html = LibraryBrowser.getPosterViewHtml(posterOptions);
preferBackdrop: true,
context: context
});
} }
else if (view == "Poster") { else if (view == "Poster") {
html = LibraryBrowser.getPosterViewHtml({
items: result.Items, posterOptions.showTitle = context != 'photos';
shape: "auto",
showTitle: true, html = LibraryBrowser.getPosterViewHtml(posterOptions);
centerText: true,
context: context
});
} }
else if (view == "PosterCard") { else if (view == "PosterCard") {
html = LibraryBrowser.getPosterViewHtml({
items: result.Items, posterOptions.showTitle = true;
shape: "auto", posterOptions.showYear = true;
showTitle: true, posterOptions.cardLayout = true;
context: context,
cardLayout: true, html = LibraryBrowser.getPosterViewHtml(posterOptions);
showYear: true
});
} }
var elem = page.querySelector('#items'); var elem = page.querySelector('#items');
@ -276,6 +271,7 @@
} }
updateFilterControls(page); updateFilterControls(page);
LibraryMenu.setBackButtonVisible(getParameterByName('context'));
}).on('pagebeforehide', "#itemListPage", function () { }).on('pagebeforehide', "#itemListPage", function () {

View file

@ -785,8 +785,8 @@
return 'itemlist.html?topParentId=' + item.Id + '&parentid=' + item.Id; return 'itemlist.html?topParentId=' + item.Id + '&parentid=' + item.Id;
} }
if (item.Type == "PhotoAlbum" && context == 'photos') { if (item.Type == "PhotoAlbum") {
return "photos.html?parentId=" + id; return "itemlist.html?context=photos&parentId=" + id;
} }
if (item.Type == "Playlist") { if (item.Type == "Playlist") {
return "itemdetails.html?id=" + id; return "itemdetails.html?id=" + id;
@ -1688,10 +1688,7 @@
var mediaSourceCount = item.MediaSourceCount || 1; var mediaSourceCount = item.MediaSourceCount || 1;
var href = options.linkItem === false ? '#' : var href = options.linkItem === false ? '#' : LibraryBrowser.getHref(item, options.context);
(options.useSecondaryItemsPage && item.IsFolder) ?
('secondaryitems.html?parentid=' + item.Id) :
LibraryBrowser.getHref(item, options.context);
if (item.UserData) { if (item.UserData) {
cssClass += ' ' + LibraryBrowser.getUserDataCssClass(item.UserData.Key); cssClass += ' ' + LibraryBrowser.getUserDataCssClass(item.UserData.Key);

View file

@ -155,6 +155,7 @@
$('.btnChangeLayout', page).on('layoutchange', function (e, layout) { $('.btnChangeLayout', page).on('layoutchange', function (e, layout) {
getPageData().view = layout; getPageData().view = layout;
LibraryBrowser.saveViewSetting(getSavedQueryKey(), layout);
reloadItems(page); reloadItems(page);
}); });

View file

@ -136,6 +136,7 @@
$('.btnChangeLayout', page).on('layoutchange', function (e, layout) { $('.btnChangeLayout', page).on('layoutchange', function (e, layout) {
getPageData().view = layout; getPageData().view = layout;
LibraryBrowser.saveViewSetting(getSavedQueryKey(), layout);
reloadItems(page); reloadItems(page);
}); });

View file

@ -166,6 +166,7 @@
$('.btnChangeLayout', page).on('layoutchange', function (e, layout) { $('.btnChangeLayout', page).on('layoutchange', function (e, layout) {
getPageData().view = layout; getPageData().view = layout;
LibraryBrowser.saveViewSetting(getSavedQueryKey(), layout);
reloadItems(page); reloadItems(page);
}); });

View file

@ -63,7 +63,6 @@
overlayText: tabIndex != 0, overlayText: tabIndex != 0,
lazy: true, lazy: true,
coverImage: true, coverImage: true,
useSecondaryItemsPage: true,
showTitle: tabIndex == 0, showTitle: tabIndex == 0,
centerText: true centerText: true
}); });

View file

@ -159,6 +159,7 @@
$('.btnChangeLayout', page).on('layoutchange', function (e, layout) { $('.btnChangeLayout', page).on('layoutchange', function (e, layout) {
getPageData().view = layout; getPageData().view = layout;
LibraryBrowser.saveViewSetting(getSavedQueryKey(), layout);
reloadItems(page); reloadItems(page);
}); });

View file

@ -36,7 +36,7 @@
query: { query: {
SortBy: "SortName", SortBy: "SortName",
SortOrder: "Ascending", SortOrder: "Ascending",
Recursive: true, Recursive: getParameterByName('recursive') !== 'false',
Fields: "PrimaryImageAspectRatio,SortName,SyncInfo", Fields: "PrimaryImageAspectRatio,SortName,SyncInfo",
ImageTypeLimit: 1, ImageTypeLimit: 1,
EnableImageTypes: "Primary,Backdrop,Banner,Thumb", EnableImageTypes: "Primary,Backdrop,Banner,Thumb",

View file

@ -1,26 +1,44 @@
(function ($, document) { (function ($, document) {
var view = LibraryBrowser.getDefaultItemsView('Thumb', 'Thumb'); var data = {};
function getPageData() {
var key = getSavedQueryKey();
var pageData = data[key];
// The base query options if (!pageData) {
var query = { pageData = data[key] = {
query: {
SortBy: "SortName",
SortOrder: "Ascending",
IncludeItemTypes: "Series",
Recursive: true,
Fields: "DateCreated,SyncInfo,ItemCounts",
StartIndex: 0,
Limit: LibraryBrowser.getDefaultPageSize()
},
view: LibraryBrowser.getSavedView(key) || LibraryBrowser.getDefaultItemsView('Thumb', 'Thumb')
};
SortBy: "SortName", pageData.query.ParentId = LibraryMenu.getTopParentId();
SortOrder: "Ascending", LibraryBrowser.loadSavedQueryValues(key, pageData.query);
IncludeItemTypes: "Series", }
Recursive: true, return pageData;
Fields: "DateCreated,SyncInfo,ItemCounts", }
StartIndex: 0
}; function getQuery() {
return getPageData().query;
}
function getSavedQueryKey() { function getSavedQueryKey() {
return 'tvgenres' + (query.ParentId || ''); return getWindowUrl();
} }
function reloadItems(page) { function reloadItems(page) {
Dashboard.showLoadingMsg(); Dashboard.showLoadingMsg();
var query = getQuery();
ApiClient.getGenres(Dashboard.getCurrentUserId(), query).done(function (result) { ApiClient.getGenres(Dashboard.getCurrentUserId(), query).done(function (result) {
@ -29,16 +47,19 @@
var html = ''; var html = '';
var view = getPageData().view;
$('.listTopPaging', page).html(LibraryBrowser.getQueryPagingHtml({ $('.listTopPaging', page).html(LibraryBrowser.getQueryPagingHtml({
startIndex: query.StartIndex, startIndex: query.StartIndex,
limit: query.Limit, limit: query.Limit,
totalRecordCount: result.TotalRecordCount, totalRecordCount: result.TotalRecordCount,
viewButton: true, viewButton: false,
showLimit: false showLimit: false,
updatePageSizeSetting: false,
addLayoutButton: true,
currentLayout: view
})); }));
updateFilterControls(page);
if (view == "Thumb") { if (view == "Thumb") {
html = LibraryBrowser.getPosterViewHtml({ html = LibraryBrowser.getPosterViewHtml({
items: result.Items, items: result.Items,
@ -99,9 +120,9 @@
reloadItems(page); reloadItems(page);
}); });
$('.selectPageSize', page).on('change', function () { $('.btnChangeLayout', page).on('layoutchange', function (e, layout) {
query.Limit = parseInt(this.value); getPageData().view = layout;
query.StartIndex = 0; LibraryBrowser.saveViewSetting(getSavedQueryKey(), layout);
reloadItems(page); reloadItems(page);
}); });
@ -111,92 +132,10 @@
}); });
} }
function updateFilterControls(page) { $(document).on('pagebeforeshowready', "#tvGenresPage", function () {
$('.chkStandardFilter', page).each(function () {
var filters = "," + (query.Filters || "");
var filterName = this.getAttribute('data-filter');
this.checked = filters.indexOf(',' + filterName) != -1;
}).checkboxradio('refresh');
$('#selectPageSize', page).val(query.Limit).selectmenu('refresh');
$('#selectView', page).val(view).selectmenu('refresh');
}
$(document).on('pageinitdepends', "#tvGenresPage", function () {
var page = this; var page = this;
reloadItems(page);
$('.chkStandardFilter', this).on('change', function () {
var filterName = this.getAttribute('data-filter');
var filters = query.Filters || "";
filters = (',' + filters).replace(',' + filterName, '').substring(1);
if (this.checked) {
filters = filters ? (filters + ',' + filterName) : filterName;
}
query.StartIndex = 0;
query.Filters = filters;
reloadItems(page);
});
$('#selectPageSize', page).on('change', function () {
query.Limit = parseInt(this.value);
query.StartIndex = 0;
reloadItems(page);
});
$('#selectView', this).on('change', function () {
view = this.value;
if (view == "Timeline") {
query.SortBy = "PremiereDate";
query.SortOrder = "Descending";
query.StartIndex = 0;
$('#radioPremiereDate', page)[0].click();
} else {
reloadItems(page);
}
LibraryBrowser.saveViewSetting(getSavedQueryKey(), view);
});
}).on('pagebeforeshowready', "#tvGenresPage", function () {
query.ParentId = LibraryMenu.getTopParentId();
var page = this;
var limit = LibraryBrowser.getDefaultPageSize();
// If the default page size has changed, the start index will have to be reset
if (limit != query.Limit) {
query.Limit = limit;
query.StartIndex = 0;
}
var viewkey = getSavedQueryKey();
LibraryBrowser.loadSavedQueryValues(viewkey, query);
LibraryBrowser.getSavedViewSetting(viewkey).done(function (val) {
if (val) {
Events.trigger($('#selectView', page).val(val).selectmenu('refresh')[0], 'change');
} else {
reloadItems(page);
}
});
updateFilterControls(this);
}); });
})(jQuery, document); })(jQuery, document);

View file

@ -35,6 +35,7 @@
limit: query.Limit, limit: query.Limit,
totalRecordCount: result.TotalRecordCount, totalRecordCount: result.TotalRecordCount,
viewButton: true, viewButton: true,
viewIcon: 'filter-list',
showLimit: false showLimit: false
}); });

View file

@ -49,12 +49,9 @@
startIndex: query.StartIndex, startIndex: query.StartIndex,
limit: query.Limit, limit: query.Limit,
totalRecordCount: result.TotalRecordCount, totalRecordCount: result.TotalRecordCount,
viewButton: true,
showLimit: false showLimit: false
})); }));
updateFilterControls(page);
html += LibraryBrowser.getPosterViewHtml({ html += LibraryBrowser.getPosterViewHtml({
items: result.Items, items: result.Items,
shape: "backdrop", shape: "backdrop",
@ -88,62 +85,13 @@
}); });
} }
function updateFilterControls(page) { $(document).on('pagebeforeshowready', "#tvStudiosPage", function () {
var query = getQuery();
$('.chkStandardFilter', page).each(function () {
var filters = "," + (query.Filters || "");
var filterName = this.getAttribute('data-filter');
this.checked = filters.indexOf(',' + filterName) != -1;
}).checkboxradio('refresh');
$('#selectPageSize', page).val(query.Limit).selectmenu('refresh');
}
$(document).on('pageinitdepends', "#tvStudiosPage", function () {
var page = this;
$('.chkStandardFilter', this).on('change', function () {
var query = getQuery();
var filterName = this.getAttribute('data-filter');
var filters = query.Filters || "";
filters = (',' + filters).replace(',' + filterName, '').substring(1);
if (this.checked) {
filters = filters ? (filters + ',' + filterName) : filterName;
}
query.StartIndex = 0;
query.Filters = filters;
reloadItems(page);
});
$('#selectPageSize', page).on('change', function () {
var query = getQuery();
query.Limit = parseInt(this.value);
query.StartIndex = 0;
reloadItems(page);
});
}).on('pagebeforeshowready', "#tvStudiosPage", function () {
var page = this; var page = this;
if (LibraryBrowser.needsRefresh(page)) { if (LibraryBrowser.needsRefresh(page)) {
reloadItems(page); reloadItems(page);
} }
updateFilterControls(page);
}); });
})(jQuery, document); })(jQuery, document);

View file

@ -23,50 +23,6 @@
<div id="items" class="itemsContainer paddedItemsContainer"></div> <div id="items" class="itemsContainer paddedItemsContainer"></div>
</div> </div>
<div data-role="panel" class="viewPanel" data-theme="a" data-position="right" data-display="overlay" data-position-fixed="true">
<form>
<div data-role="controlgroup" data-type="horizontal" data-mini="true" class="viewPanelTabs">
<a href="#" data-role="button" class="viewTabButton" data-tab="tabView">${TabView}</a>
<a href="#" data-role="button" class="viewTabButton" data-tab="tabFilter">${TabFilter}</a>
</div>
<div class="tabView viewTab">
<div>
<label for="selectView">${LabelView}</label>
<select id="selectView">
<option value="Poster">${OptionPoster}</option>
<option value="Thumb">${OptionThumb}</option>
<option value="ThumbCard">${OptionThumbCard}</option>
</select>
</div>
<br />
<div>
<label for="selectPageSize">${LabelPageSize}</label>
<select id="selectPageSize" class="selectPageSize"></select>
</div>
</div>
<div class="tabFilter viewTab">
<fieldset data-role="controlgroup">
<legend>
${HeaderFilters}
</legend>
<input class="chkStandardFilter" type="checkbox" name="chkIsFavorite" id="chkIsFavorite" data-filter="IsFavorite" data-mini="true">
<label for="chkIsFavorite">${OptionFavorite}</label>
<input class="chkStandardFilter" type="checkbox" name="chkLikes" id="chkLikes" data-filter="Likes" data-mini="true">
<label for="chkLikes">${OptionLikes}</label>
<input class="chkStandardFilter" type="checkbox" name="chkDislikes" id="chkDislikes" data-filter="Dislikes" data-mini="true">
<label for="chkDislikes">${OptionDislikes}</label>
</fieldset>
</div>
</form>
</div>
</div> </div>
</body> </body>
</html> </html>

View file

@ -23,41 +23,6 @@
<div id="items" class="itemsContainer paddedItemsContainer" style="text-align:center;"></div> <div id="items" class="itemsContainer paddedItemsContainer" style="text-align:center;"></div>
</div> </div>
<div data-role="panel" class="viewPanel" data-theme="a" data-position="right" data-display="overlay" data-position-fixed="true">
<form>
<div data-role="controlgroup" data-type="horizontal" data-mini="true" class="viewPanelTabs">
<a href="#" data-role="button" class="viewTabButton" data-tab="tabView">${TabView}</a>
<a href="#" data-role="button" class="viewTabButton" data-tab="tabFilter">${TabFilter}</a>
</div>
<div class="tabView viewTab">
<div>
<label for="selectPageSize">${LabelPageSize}</label>
<select id="selectPageSize" class="selectPageSize"></select>
</div>
</div>
<div class="tabFilter viewTab">
<fieldset data-role="controlgroup">
<legend>
${HeaderFilters}
</legend>
<input class="chkStandardFilter" type="checkbox" name="chkIsFavorite" id="chkIsFavorite" data-filter="IsFavorite" data-mini="true">
<label for="chkIsFavorite">${OptionFavorite}</label>
<input class="chkStandardFilter" type="checkbox" name="chkLikes" id="chkLikes" data-filter="Likes" data-mini="true">
<label for="chkLikes">${OptionLikes}</label>
<input class="chkStandardFilter" type="checkbox" name="chkDislikes" id="chkDislikes" data-filter="Dislikes" data-mini="true">
<label for="chkDislikes">${OptionDislikes}</label>
</fieldset>
</div>
</form>
</div>
</div> </div>
</body> </body>
</html> </html>