define(["listView"], function (listView) { "use strict"; function getFetchPlaylistItemsFn(itemId) { return function () { var query = { Fields: "PrimaryImageAspectRatio,UserData", EnableImageTypes: "Primary,Backdrop,Banner,Thumb", UserId: ApiClient.getCurrentUserId() }; return ApiClient.getJSON(ApiClient.getUrl("Playlists/" + itemId + "/Items", query)); }; } function getItemsHtmlFn(itemId) { return function (items) { return listView.getListViewHtml({ items: items, showIndex: false, showRemoveFromPlaylist: true, playFromHere: true, action: "playallfromhere", smallIcon: true, dragHandle: true, playlistId: itemId }); }; } function init(page, item) { var elem = page.querySelector("#childrenContent .itemsContainer"); elem.classList.add("vertical-list"); elem.classList.remove("vertical-wrap"); elem.enableDragReordering(true); elem.fetchData = getFetchPlaylistItemsFn(item.Id); elem.getItemsHtml = getItemsHtmlFn(item.Id); } window.PlaylistViewer = { render: function (page, item) { if (!page.playlistInit) { page.playlistInit = true; init(page, item); } page.querySelector("#childrenContent").classList.add("verticalSection-extrabottompadding"); page.querySelector("#childrenContent .itemsContainer").refreshItems(); } }; });