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

sync updates

This commit is contained in:
Luke Pulverenti 2015-01-20 00:19:13 -05:00
parent cd5a8f06b3
commit 40fc62a233
15 changed files with 95 additions and 95 deletions

View file

@ -135,4 +135,4 @@
.imgNotificationWarning .imgNotificationInner { .imgNotificationWarning .imgNotificationInner {
background-image: url(images/notifications/error.png); background-image: url(images/notifications/error.png);
} }

View file

@ -1040,3 +1040,11 @@ h1 + .accentButton {
font-weight: normal; font-weight: normal;
margin: 0 .7em; margin: 0 .7em;
} }
.dashboardFooter .appLinks a {
margin: .25em;
}
.dashboardFooter .appLinks img {
height: 16px;
}

View file

@ -21,9 +21,6 @@
</p> </p>
</div> </div>
<p class="supporterIconContainer">
</p>
<div class="readOnlyContent dashboardHomeLeftColumn"> <div class="readOnlyContent dashboardHomeLeftColumn">
<div data-role="collapsible" data-collapsed="false"> <div data-role="collapsible" data-collapsed="false">
@ -51,6 +48,7 @@
<p class="localUrl"></p> <p class="localUrl"></p>
<p class="externalUrl"></p> <p class="externalUrl"></p>
<div style="margin-top: 1em;"> <div style="margin-top: 1em;">
<button class="btnRestartContainer hide" id="btnRestartServer" type="button" data-icon="refresh" data-mini="true" data-inline="true" onclick="DashboardPage.restart();">${ButtonRestart}</button> <button class="btnRestartContainer hide" id="btnRestartServer" type="button" data-icon="refresh" data-mini="true" data-inline="true" onclick="DashboardPage.restart();">${ButtonRestart}</button>
<button id="btnShutdown" type="button" data-icon="delete" data-mini="true" data-inline="true" onclick="DashboardPage.shutdown();">${ButtonShutdown}</button> <button id="btnShutdown" type="button" data-icon="delete" data-mini="true" data-inline="true" onclick="DashboardPage.shutdown();">${ButtonShutdown}</button>
@ -58,6 +56,8 @@
</div> </div>
</div> </div>
<p class="supporterIconContainer" style="padding-left: .5em;margin: 1em 0 0;">
</p>
<div id="collapsiblePendingInstallations" data-role="collapsible" data-collapsed="false" style="margin-top: 2em; display: none;"> <div id="collapsiblePendingInstallations" data-role="collapsible" data-collapsed="false" style="margin-top: 2em; display: none;">
<h3>${HeaderPendingInstallations}</h3> <h3>${HeaderPendingInstallations}</h3>
<p>${LabelComponentsUpdated}</p> <p>${LabelComponentsUpdated}</p>
@ -108,46 +108,6 @@
</p> </p>
</div> </div>
</div> </div>
<div id="contribute" style="margin-top: 2em; display: none;">
<h2 style="margin: 0 0 .35em;">${HeaderHelpImproveMediaBrowser}</h2>
<div>
<a data-role="button" data-icon="mail" data-mini="true" href="supporter.html">${ButtonDonate}</a>
<a href="https://github.com/MediaBrowser/MediaBrowser/wiki" data-role="button" target="_blank" data-icon="user" data-mini="true">Join the Development Team</a>
<p class="appLinks" style="padding-left: 5px;">
<a href="http://www.amazon.com/Mark-Linton-Mediabrowser-Android-Client/dp/B00GVH9O0I" target="_blank">
<img src="css/images/clients/amazon.png" title="Android via Amazon App Store" />
</a>
<a href="https://play.google.com/store/apps/details?id=com.mb.android&hl=en" target="_blank">
<img src="css/images/clients/playstore.png" title="Android via Google Play Store" />
</a>
<a href="https://itunes.apple.com/us/app/media-browser-for-ios/id705058087" target="_blank">
<img src="css/images/clients/ios.png" title="iOS" />
</a>
<a href="http://www.roku.com/channels/#!details/44191/media-browser-for-roku" target="_blank">
<img src="css/images/clients/roku.jpg" title="Roku" />
</a>
<a href="http://www.windowsphone.com/s?appid=f4971ed9-f651-4bf6-84bb-94fd98613b86" target="_blank">
<img src="css/images/clients/windowsphone.png" title="Windows Phone" />
</a>
<a href="http://apps.microsoft.com/windows/en-us/app/media-browser/ad55a2f0-9897-47bd-8944-bed3aefd5d06" target="_blank">
<img src="css/images/clients/windowsrt.png" title="Windows 8.1" />
</a>
<a href="http://mediabrowser.tv" target="_blank" title="Windows Media Center">
<img src="css/images/clients/mbc.png" />
</a>
<a href="http://mediabrowser.tv/download" target="_blank" title="XBMB3C">
<img src="css/images/clients/kodi.png" />
</a>
<a href="http://forum.team-mediaportal.com/threads/plugin-mediabrowser-for-mediaportal-v0-13-beta-2013-10-21.119513" target="_blank" title="Media Portal">
<img src="css/images/clients/mediaportal.png" />
</a>
</p>
<br />
</div>
</div>
</div> </div>
<div class="readOnlyContent dashboardHomeRightColumn firstDashboardHomeRightColumn"> <div class="readOnlyContent dashboardHomeRightColumn firstDashboardHomeRightColumn">

View file

@ -24,12 +24,6 @@
Dashboard.getPluginSecurityInfo().done(function (pluginSecurityInfo) { Dashboard.getPluginSecurityInfo().done(function (pluginSecurityInfo) {
if (pluginSecurityInfo.IsMBSupporter) {
$('#contribute', page).hide();
} else {
$('#contribute', page).show();
}
DashboardPage.renderSupporterIcon(page, pluginSecurityInfo); DashboardPage.renderSupporterIcon(page, pluginSecurityInfo);
}); });
@ -795,17 +789,15 @@
if (pluginSecurityInfo.IsMBSupporter) { if (pluginSecurityInfo.IsMBSupporter) {
imgUrl = "css/images/supporter/supporterbadge.png"; imgUrl = "css/images/supporter/supporterbadge.png";
text = "Thank you for supporting Media Browser."; text = Globalize.translate('MessageThankYouForSupporting');
$('.supporterIconContainer', page).html('<a class="imageLink supporterIcon" href="supporter.html" title="' + text + '"><img src="' + imgUrl + '" style="height:32px;vertical-align: middle; margin-right: .5em;" /></a><span style="position:relative;top:2px;text-decoration:none;">' + text + '</span>'); $('.supporterIconContainer', page).html('<a class="imageLink supporterIcon" href="supporter.html" title="' + text + '"><img src="' + imgUrl + '" style="height:32px;vertical-align: middle; margin-right: .5em;" /></a><span style="position:relative;top:2px;text-decoration:none;">' + text + '</span>');
$('.supporterIconContainer', page).hide();
} else { } else {
imgUrl = "css/images/supporter/nonsupporterbadge.png"; imgUrl = "css/images/supporter/nonsupporterbadge.png";
text = "Please support Media Browser."; text = Globalize.translate('MessagePleaseSupportMediaBrowser');
$('.supporterIconContainer', page).html('<a class="imageLink supporterIcon" href="supporter.html" title="' + text + '"><img src="' + imgUrl + '" style="height:32px;vertical-align: middle; margin-right: .5em;" /><span style="position:relative;top:2px;text-decoration:none;">' + text + '</span></a>'); $('.supporterIconContainer', page).html('<a class="imageLink supporterIcon" href="supporter.html" title="' + text + '"><img src="' + imgUrl + '" style="height:32px;vertical-align: middle; margin-right: .5em;" /><span style="position:relative;top:2px;text-decoration:none;">' + text + '</span></a>');
$('.supporterIconContainer', page).hide();
} }
}, },

View file

@ -79,7 +79,7 @@
ApiClient.getJSON(ApiClient.getUrl('Devices', { ApiClient.getJSON(ApiClient.getUrl('Devices', {
SupportsUniqueIdentifier: true SupportsPersistentIdentifier: true
})).done(function (result) { })).done(function (result) {

View file

@ -492,10 +492,6 @@
return "itemlist.html?parentId=" + item.Id; return "itemlist.html?parentId=" + item.Id;
} }
if (item.CollectionType == 'movies') {
return 'movieslatest.html?topParentId=' + item.Id;
}
if (item.CollectionType == 'tvshows') { if (item.CollectionType == 'tvshows') {
return 'tvrecommended.html?topParentId=' + item.Id; return 'tvrecommended.html?topParentId=' + item.Id;
} }

View file

@ -73,7 +73,7 @@
self.isFlyout = true; self.isFlyout = true;
var startIndex = 0; var startIndex = 0;
var limit = 40; var limit = 5;
var elem = $('.notificationsFlyoutlist'); var elem = $('.notificationsFlyoutlist');
refreshNotifications(startIndex, limit, elem, null, false).done(function() { refreshNotifications(startIndex, limit, elem, null, false).done(function() {
@ -177,16 +177,18 @@
html += '<div class="notificationContent">'; html += '<div class="notificationContent">';
html += '<p style="margin: .4em 0 .25em;" class="notificationName">' + notification.Name + '</p>'; html += '<p style="font-size:16px;margin: .5em 0 .5em;" class="notificationName">';
if (notification.Url) {
html += '<a href="' + notification.Url + '" target="_blank" style="text-decoration:none;">' + notification.Name + '</a>';
} else {
html += notification.Name;
}
html += '</p>';
html += '<p class="notificationTime" style="margin: .25em 0;">' + humane_date(notification.Date) + '</p>'; html += '<p class="notificationTime" style="margin: .5em 0;">' + humane_date(notification.Date) + '</p>';
if (notification.Description) { if (notification.Description) {
html += '<p style="margin: .25em 0;">' + notification.Description + '</p>'; html += '<p style="margin: .5em 0;max-height:100px;overflow:hidden;text-overflow:ellipsis;">' + notification.Description + '</p>';
}
if (notification.Url) {
html += '<p style="margin: .25em 0;"><a href="' + notification.Url + '" target="_blank">' + Globalize.translate('ButtonMoreInformation') + '</a></p>';
} }
html += '</div>'; html += '</div>';

View file

@ -1318,7 +1318,7 @@ var Dashboard = {
PlayableMediaTypes: "Audio,Video", PlayableMediaTypes: "Audio,Video",
SupportedCommands: Dashboard.getSupportedRemoteCommands().join(','), SupportedCommands: Dashboard.getSupportedRemoteCommands().join(','),
SupportsUniqueIdentifier: false SupportsPersistentIdentifier: false
}; };
window.ConnectionManager = new MediaBrowser.ConnectionManager(jQuery, Logger, credentialProvider, appName, appVersion, deviceName, deviceId, capabilities); window.ConnectionManager = new MediaBrowser.ConnectionManager(jQuery, Logger, credentialProvider, appName, appVersion, deviceName, deviceId, capabilities);

View file

@ -5,12 +5,12 @@
var html = ''; var html = '';
html += '<p>'; html += '<p>';
html += '<label>' + Globalize.translate('LabelName') + '</label>'; html += '<label for="txtJobName">' + Globalize.translate('LabelName') + '</label>';
html += '<input id="txtJobName" type="text" required="required" />'; html += '<input id="txtJobName" type="text" required="required" />';
html += '</p>'; html += '</p>';
html += '<p>'; html += '<p>';
html += '<label>' + Globalize.translate('LabelSyncTo') + '</label>'; html += '<label for="txtTargetName">' + Globalize.translate('LabelSyncTo') + '</label>';
html += '<input id="txtTargetName" type="text" readonly="readonly" />'; html += '<input id="txtTargetName" type="text" readonly="readonly" />';
html += '</p>'; html += '</p>';

View file

@ -6,7 +6,7 @@
html += '<fieldset data-role="controlgroup">'; html += '<fieldset data-role="controlgroup">';
html += '<legend>' + Globalize.translate('HeaderLibraryAccess') + '</legend>'; html += '<legend>' + Globalize.translate('HeaderLibraries') + '</legend>';
for (var i = 0, length = mediaFolders.length; i < length; i++) { for (var i = 0, length = mediaFolders.length; i < length; i++) {
@ -14,15 +14,17 @@
var id = 'mediaFolder' + i; var id = 'mediaFolder' + i;
var checkedAttribute = user.Policy.BlockedMediaFolders.indexOf(folder.Id) == -1 && user.Policy.BlockedMediaFolders.indexOf(folder.Name) == -1 ? ' checked="checked"' : ''; var checkedAttribute = user.Policy.EnableAllFolders || user.Policy.EnabledFolders.indexOf(folder.Id) != -1 ? ' checked="checked"' : '';
html += '<input class="chkMediaFolder" data-foldername="' + folder.Id + '" type="checkbox" id="' + id + '"' + checkedAttribute + ' />'; html += '<input class="chkFolder" data-id="' + folder.Id + '" type="checkbox" id="' + id + '"' + checkedAttribute + ' />';
html += '<label for="' + id + '">' + folder.Name + '</label>'; html += '<label for="' + id + '">' + folder.Name + '</label>';
} }
html += '</fieldset>'; html += '</fieldset>';
$('.mediaFolderAccess', page).html(html).trigger('create'); $('.folderAccess', page).html(html).trigger('create');
$('#chkEnableAllFolders', page).checked(user.Policy.EnableAllFolders).checkboxradio('refresh').trigger('change');
} }
function loadChannels(page, user, channels) { function loadChannels(page, user, channels) {
@ -110,11 +112,14 @@
function saveUser(user, page) { function saveUser(user, page) {
user.Policy.BlockedMediaFolders = $('.chkMediaFolder:not(:checked)', page).map(function () { user.Policy.EnableAllFolders = $('#chkEnableAllFolders', page).checked();
user.Policy.EnabledFolders = user.Policy.EnableAllFolders ?
[] :
$('.chkFolder:checked', page).map(function () {
return this.getAttribute('data-foldername'); return this.getAttribute('data-id');
}).get(); }).get();
user.Policy.EnableAllChannels = $('#chkEnableAllChannels', page).checked(); user.Policy.EnableAllChannels = $('#chkEnableAllChannels', page).checked();
user.Policy.EnabledChannels = user.Policy.EnableAllChannels ? user.Policy.EnabledChannels = user.Policy.EnableAllChannels ?
@ -182,6 +187,16 @@
}); });
$('#chkEnableAllFolders', page).on('change', function () {
if (this.checked) {
$('.folderAccessListContainer', page).hide();
} else {
$('.folderAccessListContainer', page).show();
}
});
}).on('pageshow', "#userLibraryAccessPage", function () { }).on('pageshow', "#userLibraryAccessPage", function () {
var page = this; var page = this;
@ -210,7 +225,7 @@
var promise4 = ApiClient.getJSON(ApiClient.getUrl("Library/MediaFolders", { IsHidden: false })); var promise4 = ApiClient.getJSON(ApiClient.getUrl("Library/MediaFolders", { IsHidden: false }));
var promise5 = ApiClient.getJSON(ApiClient.getUrl("Channels")); var promise5 = ApiClient.getJSON(ApiClient.getUrl("Channels"));
var promise6 = ApiClient.getJSON(ApiClient.getUrl('Devices', { var promise6 = ApiClient.getJSON(ApiClient.getUrl('Devices', {
SupportsUniqueIdentifier: true SupportsPersistentIdentifier: true
})); }));
$.when(promise1, promise2, promise4, promise5, promise6).done(function (response1, response2, response4, response5, response6) { $.when(promise1, promise2, promise4, promise5, promise6).done(function (response1, response2, response4, response5, response6) {

View file

@ -6,7 +6,7 @@
html += '<fieldset data-role="controlgroup">'; html += '<fieldset data-role="controlgroup">';
html += '<legend>' + Globalize.translate('HeaderMediaFolders') + '</legend>'; html += '<legend>' + Globalize.translate('HeaderLibraries') + '</legend>';
for (var i = 0, length = mediaFolders.length; i < length; i++) { for (var i = 0, length = mediaFolders.length; i < length; i++) {
@ -16,13 +16,15 @@
var checkedAttribute = ' checked="checked"'; var checkedAttribute = ' checked="checked"';
html += '<input class="chkMediaFolder" data-id="' + folder.Id + '" type="checkbox" id="' + id + '"' + checkedAttribute + ' />'; html += '<input class="chkFolder" data-id="' + folder.Id + '" type="checkbox" id="' + id + '"' + checkedAttribute + ' />';
html += '<label for="' + id + '">' + folder.Name + '</label>'; html += '<label for="' + id + '">' + folder.Name + '</label>';
} }
html += '</fieldset>'; html += '</fieldset>';
$('.mediaFolderAccess', page).html(html).trigger('create'); $('.folderAccess', page).html(html).trigger('create');
$('#chkEnableAllFolders', page).checked(true).checkboxradio('refresh').trigger('change');
} }
function loadChannels(page, channels) { function loadChannels(page, channels) {
@ -83,11 +85,14 @@
ApiClient.createUser(name).done(function (user) { ApiClient.createUser(name).done(function (user) {
user.Policy.BlockedMediaFolders = $('.chkMediaFolder:not(:checked)', page).map(function () { user.Policy.EnableAllFolders = $('#chkEnableAllFolders', page).checked();
user.Policy.EnabledFolders = user.Policy.EnableAllFolders ?
[] :
$('.chkFolder:checked', page).map(function () {
return this.getAttribute('data-id'); return this.getAttribute('data-id');
}).get(); }).get();
user.Policy.EnableAllChannels = $('#chkEnableAllChannels', page).checked(); user.Policy.EnableAllChannels = $('#chkEnableAllChannels', page).checked();
user.Policy.EnabledChannels = user.Policy.EnableAllChannels ? user.Policy.EnabledChannels = user.Policy.EnableAllChannels ?
@ -142,6 +147,16 @@
}); });
$('#chkEnableAllFolders', page).on('change', function () {
if (this.checked) {
$('.folderAccessListContainer', page).hide();
} else {
$('.folderAccessListContainer', page).show();
}
});
}).on('pageshow', "#newUserPage", function () { }).on('pageshow', "#newUserPage", function () {
var page = this; var page = this;

View file

@ -341,7 +341,7 @@
ApiClient.getJSON(ApiClient.getUrl("Channels", {})).done(function (channelsResult) { ApiClient.getJSON(ApiClient.getUrl("Channels", {})).done(function (channelsResult) {
var shareExcludes = $(".chkShareFolder:not(:checked)", page).get().map(function (i) { var shareExcludes = $(".chkShareFolder:checked", page).get().map(function (i) {
return i.getAttribute('data-folderid'); return i.getAttribute('data-folderid');
}); });
@ -355,7 +355,7 @@
data: { data: {
ConnectUsername: $('#txtConnectUsername', page).val(), ConnectUsername: $('#txtConnectUsername', page).val(),
ExcludedLibraries: shareExcludes.join(','), EnabledLibraries: shareExcludes.join(','),
SendingUserId: Dashboard.getCurrentUserId(), SendingUserId: Dashboard.getCurrentUserId(),
EnableLiveTv: false EnableLiveTv: false
} }

View file

@ -16,10 +16,18 @@
</div> </div>
<form class="userLibraryAccessForm"> <form class="userLibraryAccessForm">
<div> <div class="folderAccessContainer">
<div class="mediaFolderAccess"> <div class="ui-controlgroup-label">${HeaderLibraryAccess}</div>
<div>
<label for="chkEnableAllFolders">${OptionEnableAccessToAllLibraries}</label>
<input type="checkbox" id="chkEnableAllFolders" />
<div class="fieldDescription">${LibraryAccessHelp}</div>
</div>
<div class="folderAccessListContainer">
<br />
<div class="folderAccess">
</div>
</div> </div>
<div class="fieldDescription">${LibraryAccessHelp}</div>
</div> </div>
<br /> <br />
<br /> <br />

View file

@ -18,14 +18,17 @@
</li> </li>
</ul> </ul>
<div data-role="collapsible"> <div class="folderAccessContainer">
<h2>${HeaderLibraryAccess}</h2> <div class="ui-controlgroup-label">${HeaderLibraryAccess}</div>
<div> <div>
<br /> <label for="chkEnableAllFolders">${OptionEnableAccessToAllLibraries}</label>
<div class="mediaFolderAccess"> <input type="checkbox" id="chkEnableAllFolders" />
</div>
<div class="fieldDescription">${LibraryAccessHelp}</div> <div class="fieldDescription">${LibraryAccessHelp}</div>
</div>
<div class="folderAccessListContainer">
<br /> <br />
<div class="folderAccess">
</div>
</div> </div>
</div> </div>
<br /> <br />
@ -44,6 +47,7 @@
</div> </div>
</div> </div>
<br />
<br /> <br />
<ul data-role="listview" class="ulForm"> <ul data-role="listview" class="ulForm">
<li> <li>

View file

@ -30,7 +30,7 @@
<img src="css/images/clients/windowsrt.png" title="Windows 8.1" /></a> <img src="css/images/clients/windowsrt.png" title="Windows 8.1" /></a>
<a href="http://mediabrowser.tv" target="_blank" title="Windows Media Center"> <a href="http://mediabrowser.tv" target="_blank" title="Windows Media Center">
<img src="css/images/clients/mbc.png" /></a> <img src="css/images/clients/mbc.png" /></a>
<a href="http://mediabrowser.tv/download" target="_blank" title="XBMB3C"> <a href="http://mediabrowser.tv/download" target="_blank" title="Kodi">
<img src="css/images/clients/kodi.png" /> <img src="css/images/clients/kodi.png" />
</a> </a>
<a href="http://forum.team-mediaportal.com/threads/plugin-mediabrowser-for-mediaportal-v0-13-beta-2013-10-21.119513" target="_blank" title="Media Portal"> <a href="http://forum.team-mediaportal.com/threads/plugin-mediabrowser-for-mediaportal-v0-13-beta-2013-10-21.119513" target="_blank" title="Media Portal">