diff --git a/.eslintrc.js b/.eslintrc.js
index 6a01fe5bf7..cd5dc01457 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -40,6 +40,7 @@ module.exports = {
'no-multiple-empty-lines': ["error", { "max": 1 }],
'no-trailing-spaces': ["error"],
'one-var': ["error", "never"],
+ 'quotes': ["error", "single", { "avoidEscape": true, "allowTemplateLiterals": false }],
'semi': ["error"],
'space-before-blocks': ["error"]
},
diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md
index aa3ec707e3..2eae7e6933 100644
--- a/CONTRIBUTORS.md
+++ b/CONTRIBUTORS.md
@@ -34,6 +34,7 @@
- [Ryan Hartzell](https://github.com/ryan-hartzell)
- [Thibault Nocchi](https://github.com/ThibaultNocchi)
- [MrTimscampi](https://github.com/MrTimscampi)
+ - [Sarab Singh](https://github.com/sarab97)
# Emby Contributors
diff --git a/gulpfile.js b/gulpfile.js
index 0e97324553..6c33167386 100644
--- a/gulpfile.js
+++ b/gulpfile.js
@@ -8,8 +8,8 @@ const htmlmin = require('gulp-htmlmin');
const imagemin = require('gulp-imagemin');
const sourcemaps = require('gulp-sourcemaps');
const mode = require('gulp-mode')({
- modes: ["development", "production"],
- default: "development",
+ modes: ['development', 'production'],
+ default: 'development',
verbose: false
});
const stream = require('webpack-stream');
@@ -55,7 +55,7 @@ const options = {
function serve() {
browserSync.init({
server: {
- baseDir: "./dist"
+ baseDir: './dist'
},
port: 8080
});
diff --git a/src/apikeys.html b/src/apikeys.html
index 6f766ae6c9..7ca490724b 100644
--- a/src/apikeys.html
+++ b/src/apikeys.html
@@ -4,7 +4,7 @@
';
@@ -1569,7 +1569,7 @@ import 'programStyles';
if (itemHelper.canMarkPlayed(item)) {
require(['emby-playstatebutton']);
- html += 'check ';
+ html += ' ';
}
if (itemHelper.canRate(item)) {
@@ -1577,10 +1577,10 @@ import 'programStyles';
const likes = userData.Likes == null ? '' : userData.Likes;
require(['emby-ratingbutton']);
- html += 'favorite ';
+ html += ' ';
}
- html += ' ';
+ html += ' ';
html += '
';
html += '';
@@ -1596,27 +1596,27 @@ import 'programStyles';
*/
export function getDefaultText(item, options) {
if (item.CollectionType) {
- return '';
html += items.map(function (filter) {
- var itemHtml = "";
- var checkedHtml = isCheckedFn(filter) ? " checked" : "";
- itemHtml += "";
+ var itemHtml = '';
+ var checkedHtml = isCheckedFn(filter) ? ' checked' : '';
+ itemHtml += '';
itemHtml += ' ';
- itemHtml += "" + filter + " ";
- itemHtml += " ";
+ itemHtml += '' + filter + ' ';
+ itemHtml += ' ';
return itemHtml;
- }).join("");
- html += "
";
- elem.querySelector(".filterOptions").innerHTML = html;
+ }).join('');
+ html += '';
+ elem.querySelector('.filterOptions').innerHTML = html;
}
function renderFilters(context, result, query) {
- renderOptions(context, ".genreFilters", "chkGenreFilter", result.Genres, function (i) {
- var delimeter = "|";
- return (delimeter + (query.Genres || "") + delimeter).indexOf(delimeter + i + delimeter) != -1;
+ renderOptions(context, '.genreFilters', 'chkGenreFilter', result.Genres, function (i) {
+ var delimeter = '|';
+ return (delimeter + (query.Genres || '') + delimeter).indexOf(delimeter + i + delimeter) != -1;
});
- renderOptions(context, ".officialRatingFilters", "chkOfficialRatingFilter", result.OfficialRatings, function (i) {
- var delimeter = "|";
- return (delimeter + (query.OfficialRatings || "") + delimeter).indexOf(delimeter + i + delimeter) != -1;
+ renderOptions(context, '.officialRatingFilters', 'chkOfficialRatingFilter', result.OfficialRatings, function (i) {
+ var delimeter = '|';
+ return (delimeter + (query.OfficialRatings || '') + delimeter).indexOf(delimeter + i + delimeter) != -1;
});
- renderOptions(context, ".tagFilters", "chkTagFilter", result.Tags, function (i) {
- var delimeter = "|";
- return (delimeter + (query.Tags || "") + delimeter).indexOf(delimeter + i + delimeter) != -1;
+ renderOptions(context, '.tagFilters', 'chkTagFilter', result.Tags, function (i) {
+ var delimeter = '|';
+ return (delimeter + (query.Tags || '') + delimeter).indexOf(delimeter + i + delimeter) != -1;
});
- renderOptions(context, ".yearFilters", "chkYearFilter", result.Years, function (i) {
- var delimeter = ",";
- return (delimeter + (query.Years || "") + delimeter).indexOf(delimeter + i + delimeter) != -1;
+ renderOptions(context, '.yearFilters', 'chkYearFilter', result.Years, function (i) {
+ var delimeter = ',';
+ return (delimeter + (query.Years || '') + delimeter).indexOf(delimeter + i + delimeter) != -1;
});
}
function loadDynamicFilters(context, apiClient, userId, itemQuery) {
- return apiClient.getJSON(apiClient.getUrl("Items/Filters", {
+ return apiClient.getJSON(apiClient.getUrl('Items/Filters', {
UserId: userId,
ParentId: itemQuery.ParentId,
IncludeItemTypes: itemQuery.IncludeItemTypes
@@ -58,98 +58,98 @@ define(["dom", "dialogHelper", "globalize", "connectionManager", "events", "brow
var length;
var query = options.query;
- if (options.mode == "livetvchannels") {
- context.querySelector(".chkFavorite").checked = query.IsFavorite == true;
- context.querySelector(".chkLikes").checked = query.IsLiked == true;
- context.querySelector(".chkDislikes").checked = query.IsDisliked == true;
+ if (options.mode == 'livetvchannels') {
+ context.querySelector('.chkFavorite').checked = query.IsFavorite == true;
+ context.querySelector('.chkLikes').checked = query.IsLiked == true;
+ context.querySelector('.chkDislikes').checked = query.IsDisliked == true;
} else {
- elems = context.querySelectorAll(".chkStandardFilter");
+ elems = context.querySelectorAll('.chkStandardFilter');
for (i = 0, length = elems.length; i < length; i++) {
var chkStandardFilter = elems[i];
- var filters = "," + (query.Filters || "");
- var filterName = chkStandardFilter.getAttribute("data-filter");
- chkStandardFilter.checked = filters.indexOf("," + filterName) != -1;
+ var filters = ',' + (query.Filters || '');
+ var filterName = chkStandardFilter.getAttribute('data-filter');
+ chkStandardFilter.checked = filters.indexOf(',' + filterName) != -1;
}
}
- elems = context.querySelectorAll(".chkVideoTypeFilter");
+ elems = context.querySelectorAll('.chkVideoTypeFilter');
for (i = 0, length = elems.length; i < length; i++) {
var chkVideoTypeFilter = elems[i];
- var filters = "," + (query.VideoTypes || "");
- var filterName = chkVideoTypeFilter.getAttribute("data-filter");
- chkVideoTypeFilter.checked = filters.indexOf("," + filterName) != -1;
+ var filters = ',' + (query.VideoTypes || '');
+ var filterName = chkVideoTypeFilter.getAttribute('data-filter');
+ chkVideoTypeFilter.checked = filters.indexOf(',' + filterName) != -1;
}
- context.querySelector(".chk3DFilter").checked = query.Is3D == true;
- context.querySelector(".chkHDFilter").checked = query.IsHD == true;
- context.querySelector(".chk4KFilter").checked = query.Is4K == true;
- context.querySelector(".chkSDFilter").checked = query.IsHD == true;
- context.querySelector("#chkSubtitle").checked = query.HasSubtitles == true;
- context.querySelector("#chkTrailer").checked = query.HasTrailer == true;
- context.querySelector("#chkThemeSong").checked = query.HasThemeSong == true;
- context.querySelector("#chkThemeVideo").checked = query.HasThemeVideo == true;
- context.querySelector("#chkSpecialFeature").checked = query.HasSpecialFeature == true;
- context.querySelector("#chkSpecialEpisode").checked = query.ParentIndexNumber == 0;
- context.querySelector("#chkMissingEpisode").checked = query.IsMissing == true;
- context.querySelector("#chkFutureEpisode").checked = query.IsUnaired == true;
+ context.querySelector('.chk3DFilter').checked = query.Is3D == true;
+ context.querySelector('.chkHDFilter').checked = query.IsHD == true;
+ context.querySelector('.chk4KFilter').checked = query.Is4K == true;
+ context.querySelector('.chkSDFilter').checked = query.IsHD == true;
+ context.querySelector('#chkSubtitle').checked = query.HasSubtitles == true;
+ context.querySelector('#chkTrailer').checked = query.HasTrailer == true;
+ context.querySelector('#chkThemeSong').checked = query.HasThemeSong == true;
+ context.querySelector('#chkThemeVideo').checked = query.HasThemeVideo == true;
+ context.querySelector('#chkSpecialFeature').checked = query.HasSpecialFeature == true;
+ context.querySelector('#chkSpecialEpisode').checked = query.ParentIndexNumber == 0;
+ context.querySelector('#chkMissingEpisode').checked = query.IsMissing == true;
+ context.querySelector('#chkFutureEpisode').checked = query.IsUnaired == true;
for (i = 0, length = elems.length; i < length; i++) {
var chkStatus = elems[i];
- var filters = "," + (query.SeriesStatus || "");
- var filterName = chkStatus.getAttribute("data-filter");
- chkStatus.checked = filters.indexOf("," + filterName) != -1;
+ var filters = ',' + (query.SeriesStatus || '');
+ var filterName = chkStatus.getAttribute('data-filter');
+ chkStatus.checked = filters.indexOf(',' + filterName) != -1;
}
}
function triggerChange(instance) {
- events.trigger(instance, "filterchange");
+ events.trigger(instance, 'filterchange');
}
function setVisibility(context, options) {
- if (options.mode == "livetvchannels" || options.mode == "albums" || options.mode == "artists" || options.mode == "albumartists" || options.mode == "songs") {
- hideByClass(context, "videoStandard");
+ if (options.mode == 'livetvchannels' || options.mode == 'albums' || options.mode == 'artists' || options.mode == 'albumartists' || options.mode == 'songs') {
+ hideByClass(context, 'videoStandard');
}
if (enableDynamicFilters(options.mode)) {
- context.querySelector(".genreFilters").classList.remove("hide");
- context.querySelector(".officialRatingFilters").classList.remove("hide");
- context.querySelector(".tagFilters").classList.remove("hide");
- context.querySelector(".yearFilters").classList.remove("hide");
+ context.querySelector('.genreFilters').classList.remove('hide');
+ context.querySelector('.officialRatingFilters').classList.remove('hide');
+ context.querySelector('.tagFilters').classList.remove('hide');
+ context.querySelector('.yearFilters').classList.remove('hide');
}
- if (options.mode == "movies" || options.mode == "episodes") {
- context.querySelector(".videoTypeFilters").classList.remove("hide");
+ if (options.mode == 'movies' || options.mode == 'episodes') {
+ context.querySelector('.videoTypeFilters').classList.remove('hide');
}
- if (options.mode == "movies" || options.mode == "series" || options.mode == "episodes") {
- context.querySelector(".features").classList.remove("hide");
+ if (options.mode == 'movies' || options.mode == 'series' || options.mode == 'episodes') {
+ context.querySelector('.features').classList.remove('hide');
}
- if (options.mode == "series") {
- context.querySelector(".seriesStatus").classList.remove("hide");
+ if (options.mode == 'series') {
+ context.querySelector('.seriesStatus').classList.remove('hide');
}
- if (options.mode == "episodes") {
- showByClass(context, "episodeFilter");
+ if (options.mode == 'episodes') {
+ showByClass(context, 'episodeFilter');
}
}
function showByClass(context, className) {
- var elems = context.querySelectorAll("." + className);
+ var elems = context.querySelectorAll('.' + className);
for (var i = 0, length = elems.length; i < length; i++) {
- elems[i].classList.remove("hide");
+ elems[i].classList.remove('hide');
}
}
function hideByClass(context, className) {
- var elems = context.querySelectorAll("." + className);
+ var elems = context.querySelectorAll('.' + className);
for (var i = 0, length = elems.length; i < length; i++) {
- elems[i].classList.add("hide");
+ elems[i].classList.add('hide');
}
}
function enableDynamicFilters(mode) {
- return mode == "movies" || mode == "series" || mode == "albums" || mode == "albumartists" || mode == "artists" || mode == "songs" || mode == "episodes";
+ return mode == 'movies' || mode == 'series' || mode == 'albums' || mode == 'albumartists' || mode == 'artists' || mode == 'songs' || mode == 'episodes';
}
return function (options) {
@@ -162,12 +162,12 @@ define(["dom", "dialogHelper", "globalize", "connectionManager", "events", "brow
function onStandardFilterChange() {
var query = options.query;
- var filterName = this.getAttribute("data-filter");
- var filters = query.Filters || "";
- filters = ("," + filters).replace("," + filterName, "").substring(1);
+ var filterName = this.getAttribute('data-filter');
+ var filters = query.Filters || '';
+ filters = (',' + filters).replace(',' + filterName, '').substring(1);
if (this.checked) {
- filters = filters ? filters + "," + filterName : filterName;
+ filters = filters ? filters + ',' + filterName : filterName;
}
query.StartIndex = 0;
@@ -177,12 +177,12 @@ define(["dom", "dialogHelper", "globalize", "connectionManager", "events", "brow
function onVideoTypeFilterChange() {
var query = options.query;
- var filterName = this.getAttribute("data-filter");
- var filters = query.VideoTypes || "";
- filters = ("," + filters).replace("," + filterName, "").substring(1);
+ var filterName = this.getAttribute('data-filter');
+ var filters = query.VideoTypes || '';
+ filters = (',' + filters).replace(',' + filterName, '').substring(1);
if (this.checked) {
- filters = filters ? filters + "," + filterName : filterName;
+ filters = filters ? filters + ',' + filterName : filterName;
}
query.StartIndex = 0;
@@ -192,12 +192,12 @@ define(["dom", "dialogHelper", "globalize", "connectionManager", "events", "brow
function onStatusChange() {
var query = options.query;
- var filterName = this.getAttribute("data-filter");
- var filters = query.SeriesStatus || "";
- filters = ("," + filters).replace("," + filterName, "").substring(1);
+ var filterName = this.getAttribute('data-filter');
+ var filters = query.SeriesStatus || '';
+ filters = (',' + filters).replace(',' + filterName, '').substring(1);
if (this.checked) {
- filters = filters ? filters + "," + filterName : filterName;
+ filters = filters ? filters + ',' + filterName : filterName;
}
query.SeriesStatus = filters;
@@ -211,86 +211,86 @@ define(["dom", "dialogHelper", "globalize", "connectionManager", "events", "brow
var length;
var query = options.query;
- if (options.mode == "livetvchannels") {
- elems = context.querySelectorAll(".chkFavorite");
+ if (options.mode == 'livetvchannels') {
+ elems = context.querySelectorAll('.chkFavorite');
for (i = 0, length = elems.length; i < length; i++) {
- elems[i].addEventListener("change", onFavoriteChange);
+ elems[i].addEventListener('change', onFavoriteChange);
}
- context.querySelector(".chkLikes").addEventListener("change", function () {
+ context.querySelector('.chkLikes').addEventListener('change', function () {
query.StartIndex = 0;
query.IsLiked = this.checked ? true : null;
triggerChange(self);
});
- context.querySelector(".chkDislikes").addEventListener("change", function () {
+ context.querySelector('.chkDislikes').addEventListener('change', function () {
query.StartIndex = 0;
query.IsDisliked = this.checked ? true : null;
triggerChange(self);
});
} else {
- elems = context.querySelectorAll(".chkStandardFilter");
+ elems = context.querySelectorAll('.chkStandardFilter');
for (i = 0, length = elems.length; i < length; i++) {
- elems[i].addEventListener("change", onStandardFilterChange);
+ elems[i].addEventListener('change', onStandardFilterChange);
}
}
- elems = context.querySelectorAll(".chkVideoTypeFilter");
+ elems = context.querySelectorAll('.chkVideoTypeFilter');
for (i = 0, length = elems.length; i < length; i++) {
- elems[i].addEventListener("change", onVideoTypeFilterChange);
+ elems[i].addEventListener('change', onVideoTypeFilterChange);
}
- context.querySelector(".chk3DFilter").addEventListener("change", function () {
+ context.querySelector('.chk3DFilter').addEventListener('change', function () {
query.StartIndex = 0;
query.Is3D = this.checked ? true : null;
triggerChange(self);
});
- context.querySelector(".chk4KFilter").addEventListener("change", function () {
+ context.querySelector('.chk4KFilter').addEventListener('change', function () {
query.StartIndex = 0;
query.Is4K = this.checked ? true : null;
triggerChange(self);
});
- context.querySelector(".chkHDFilter").addEventListener("change", function () {
+ context.querySelector('.chkHDFilter').addEventListener('change', function () {
query.StartIndex = 0;
query.IsHD = this.checked ? true : null;
triggerChange(self);
});
- context.querySelector(".chkSDFilter").addEventListener("change", function () {
+ context.querySelector('.chkSDFilter').addEventListener('change', function () {
query.StartIndex = 0;
query.IsHD = this.checked ? false : null;
triggerChange(self);
});
- elems = context.querySelectorAll(".chkStatus");
+ elems = context.querySelectorAll('.chkStatus');
for (i = 0, length = elems.length; i < length; i++) {
- elems[i].addEventListener("change", onStatusChange);
+ elems[i].addEventListener('change', onStatusChange);
}
- context.querySelector("#chkTrailer").addEventListener("change", function () {
+ context.querySelector('#chkTrailer').addEventListener('change', function () {
query.StartIndex = 0;
query.HasTrailer = this.checked ? true : null;
triggerChange(self);
});
- context.querySelector("#chkThemeSong").addEventListener("change", function () {
+ context.querySelector('#chkThemeSong').addEventListener('change', function () {
query.StartIndex = 0;
query.HasThemeSong = this.checked ? true : null;
triggerChange(self);
});
- context.querySelector("#chkSpecialFeature").addEventListener("change", function () {
+ context.querySelector('#chkSpecialFeature').addEventListener('change', function () {
query.StartIndex = 0;
query.HasSpecialFeature = this.checked ? true : null;
triggerChange(self);
});
- context.querySelector("#chkThemeVideo").addEventListener("change", function () {
+ context.querySelector('#chkThemeVideo').addEventListener('change', function () {
query.StartIndex = 0;
query.HasThemeVideo = this.checked ? true : null;
triggerChange(self);
});
- context.querySelector("#chkMissingEpisode").addEventListener("change", function () {
+ context.querySelector('#chkMissingEpisode').addEventListener('change', function () {
query.StartIndex = 0;
query.IsMissing = this.checked ? true : false;
triggerChange(self);
});
- context.querySelector("#chkSpecialEpisode").addEventListener("change", function () {
+ context.querySelector('#chkSpecialEpisode').addEventListener('change', function () {
query.StartIndex = 0;
query.ParentIndexNumber = this.checked ? 0 : null;
triggerChange(self);
});
- context.querySelector("#chkFutureEpisode").addEventListener("change", function () {
+ context.querySelector('#chkFutureEpisode').addEventListener('change', function () {
query.StartIndex = 0;
if (this.checked) {
query.IsUnaired = true;
@@ -301,18 +301,18 @@ define(["dom", "dialogHelper", "globalize", "connectionManager", "events", "brow
}
triggerChange(self);
});
- context.querySelector("#chkSubtitle").addEventListener("change", function () {
+ context.querySelector('#chkSubtitle').addEventListener('change', function () {
query.StartIndex = 0;
query.HasSubtitles = this.checked ? true : null;
triggerChange(self);
});
- context.addEventListener("change", function (e) {
- var chkGenreFilter = dom.parentWithClass(e.target, "chkGenreFilter");
+ context.addEventListener('change', function (e) {
+ var chkGenreFilter = dom.parentWithClass(e.target, 'chkGenreFilter');
if (chkGenreFilter) {
- var filterName = chkGenreFilter.getAttribute("data-filter");
- var filters = query.Genres || "";
- var delimiter = "|";
- filters = (delimiter + filters).replace(delimiter + filterName, "").substring(1);
+ var filterName = chkGenreFilter.getAttribute('data-filter');
+ var filters = query.Genres || '';
+ var delimiter = '|';
+ filters = (delimiter + filters).replace(delimiter + filterName, '').substring(1);
if (chkGenreFilter.checked) {
filters = filters ? (filters + delimiter + filterName) : filterName;
}
@@ -321,12 +321,12 @@ define(["dom", "dialogHelper", "globalize", "connectionManager", "events", "brow
triggerChange(self);
return;
}
- var chkTagFilter = dom.parentWithClass(e.target, "chkTagFilter");
+ var chkTagFilter = dom.parentWithClass(e.target, 'chkTagFilter');
if (chkTagFilter) {
- var filterName = chkTagFilter.getAttribute("data-filter");
- var filters = query.Tags || "";
- var delimiter = "|";
- filters = (delimiter + filters).replace(delimiter + filterName, "").substring(1);
+ var filterName = chkTagFilter.getAttribute('data-filter');
+ var filters = query.Tags || '';
+ var delimiter = '|';
+ filters = (delimiter + filters).replace(delimiter + filterName, '').substring(1);
if (chkTagFilter.checked) {
filters = filters ? (filters + delimiter + filterName) : filterName;
}
@@ -335,12 +335,12 @@ define(["dom", "dialogHelper", "globalize", "connectionManager", "events", "brow
triggerChange(self);
return;
}
- var chkYearFilter = dom.parentWithClass(e.target, "chkYearFilter");
+ var chkYearFilter = dom.parentWithClass(e.target, 'chkYearFilter');
if (chkYearFilter) {
- var filterName = chkYearFilter.getAttribute("data-filter");
- var filters = query.Years || "";
- var delimiter = ",";
- filters = (delimiter + filters).replace(delimiter + filterName, "").substring(1);
+ var filterName = chkYearFilter.getAttribute('data-filter');
+ var filters = query.Years || '';
+ var delimiter = ',';
+ filters = (delimiter + filters).replace(delimiter + filterName, '').substring(1);
if (chkYearFilter.checked) {
filters = filters ? (filters + delimiter + filterName) : filterName;
}
@@ -349,12 +349,12 @@ define(["dom", "dialogHelper", "globalize", "connectionManager", "events", "brow
triggerChange(self);
return;
}
- var chkOfficialRatingFilter = dom.parentWithClass(e.target, "chkOfficialRatingFilter");
+ var chkOfficialRatingFilter = dom.parentWithClass(e.target, 'chkOfficialRatingFilter');
if (chkOfficialRatingFilter) {
- var filterName = chkOfficialRatingFilter.getAttribute("data-filter");
- var filters = query.OfficialRatings || "";
- var delimiter = "|";
- filters = (delimiter + filters).replace(delimiter + filterName, "").substring(1);
+ var filterName = chkOfficialRatingFilter.getAttribute('data-filter');
+ var filters = query.OfficialRatings || '';
+ var delimiter = '|';
+ filters = (delimiter + filters).replace(delimiter + filterName, '').substring(1);
if (chkOfficialRatingFilter.checked) {
filters = filters ? (filters + delimiter + filterName) : filterName;
}
@@ -370,23 +370,23 @@ define(["dom", "dialogHelper", "globalize", "connectionManager", "events", "brow
self.show = function () {
return new Promise(function (resolve, reject) {
- require(["text!./filterdialog.template.html"], function (template) {
+ require(['text!./filterdialog.template.html'], function (template) {
var dlg = dialogHelper.createDialog({
removeOnClose: true,
modal: false
});
- dlg.classList.add("ui-body-a");
- dlg.classList.add("background-theme-a");
- dlg.classList.add("formDialog");
- dlg.classList.add("filterDialog");
+ dlg.classList.add('ui-body-a');
+ dlg.classList.add('background-theme-a');
+ dlg.classList.add('formDialog');
+ dlg.classList.add('filterDialog');
dlg.innerHTML = globalize.translateDocument(template);
setVisibility(dlg, options);
dialogHelper.open(dlg);
- dlg.addEventListener("close", resolve);
+ dlg.addEventListener('close', resolve);
updateFilterControls(dlg, options);
bindEvents(dlg);
if (enableDynamicFilters(options.mode)) {
- dlg.classList.add("dynamicFilterDialog");
+ dlg.classList.add('dynamicFilterDialog');
var apiClient = connectionManager.getApiClient(options.serverId);
loadDynamicFilters(dlg, apiClient, apiClient.getCurrentUserId(), options.query);
}
diff --git a/src/components/filtermenu/filtermenu.js b/src/components/filtermenu/filtermenu.js
index 6b08ddab16..c189856e7b 100644
--- a/src/components/filtermenu/filtermenu.js
+++ b/src/components/filtermenu/filtermenu.js
@@ -279,7 +279,7 @@ define(['require', 'dom', 'focusManager', 'dialogHelper', 'loading', 'apphost',
var html = '';
html += '';
diff --git a/src/components/focusManager.js b/src/components/focusManager.js
index 1da58d75c8..f2022cc445 100644
--- a/src/components/focusManager.js
+++ b/src/components/focusManager.js
@@ -117,7 +117,7 @@ define(['dom', 'scrollManager'], function (dom, scrollManager) {
return false;
}
- if (elem.getAttribute('tabindex') === "-1") {
+ if (elem.getAttribute('tabindex') === '-1') {
return false;
}
diff --git a/src/components/groupedcards.js b/src/components/groupedcards.js
index ad638ecdd9..602c4310f4 100644
--- a/src/components/groupedcards.js
+++ b/src/components/groupedcards.js
@@ -1,28 +1,28 @@
-define(["dom", "appRouter", "connectionManager"], function (dom, appRouter, connectionManager) {
- "use strict";
+define(['dom', 'appRouter', 'connectionManager'], function (dom, appRouter, connectionManager) {
+ 'use strict';
function onGroupedCardClick(e, card) {
- var itemId = card.getAttribute("data-id");
- var serverId = card.getAttribute("data-serverid");
+ var itemId = card.getAttribute('data-id');
+ var serverId = card.getAttribute('data-serverid');
var apiClient = connectionManager.getApiClient(serverId);
var userId = apiClient.getCurrentUserId();
- var playedIndicator = card.querySelector(".playedIndicator");
+ var playedIndicator = card.querySelector('.playedIndicator');
var playedIndicatorHtml = playedIndicator ? playedIndicator.innerHTML : null;
var options = {
- Limit: parseInt(playedIndicatorHtml || "10"),
- Fields: "PrimaryImageAspectRatio,DateCreated",
+ Limit: parseInt(playedIndicatorHtml || '10'),
+ Fields: 'PrimaryImageAspectRatio,DateCreated',
ParentId: itemId,
GroupItems: false
};
- var actionableParent = dom.parentWithTag(e.target, ["A", "BUTTON", "INPUT"]);
+ var actionableParent = dom.parentWithTag(e.target, ['A', 'BUTTON', 'INPUT']);
- if (!actionableParent || actionableParent.classList.contains("cardContent")) {
- apiClient.getJSON(apiClient.getUrl("Users/" + userId + "/Items/Latest", options)).then(function (items) {
+ if (!actionableParent || actionableParent.classList.contains('cardContent')) {
+ apiClient.getJSON(apiClient.getUrl('Users/' + userId + '/Items/Latest', options)).then(function (items) {
if (1 === items.length) {
return void appRouter.showItem(items[0]);
}
- var url = "itemdetails.html?id=" + itemId + "&serverId=" + serverId;
+ var url = 'itemdetails.html?id=' + itemId + '&serverId=' + serverId;
Dashboard.navigate(url);
});
e.stopPropagation();
@@ -32,7 +32,7 @@ define(["dom", "appRouter", "connectionManager"], function (dom, appRouter, conn
}
function onItemsContainerClick(e) {
- var groupedCard = dom.parentWithClass(e.target, "groupedCard");
+ var groupedCard = dom.parentWithClass(e.target, 'groupedCard');
if (groupedCard) {
onGroupedCardClick(e, groupedCard);
diff --git a/src/components/guide/guide-settings.template.html b/src/components/guide/guide-settings.template.html
index 02701db3d2..6888ca80de 100644
--- a/src/components/guide/guide-settings.template.html
+++ b/src/components/guide/guide-settings.template.html
@@ -1,5 +1,5 @@
';
+ html += '';
- var moreIcon = '';
+ const moreIcon = 'more_horiz';
html += getTextLinesHtml(textlines, isLargeStyle);
@@ -475,15 +475,15 @@ define(['itemHelper', 'mediaInfo', 'indicators', 'connectionManager', 'layoutMan
if (!clickEntireItem) {
if (options.addToListButton) {
- html += '
';
+ html += '
';
}
if (options.moreButton !== false) {
- html += '
' + moreIcon + ' ';
+ html += '
';
}
if (options.infoButton) {
- html += '
';
+ html += '
';
}
if (options.rightButtons) {
@@ -496,11 +496,11 @@ define(['itemHelper', 'mediaInfo', 'indicators', 'connectionManager', 'layoutMan
var likes = userData.Likes == null ? '' : userData.Likes;
if (itemHelper.canMarkPlayed(item)) {
- html += '
check ';
+ html += '
';
}
if (itemHelper.canRate(item)) {
- html += '
favorite ';
+ html += '
';
}
}
}
diff --git a/src/components/loading/loading.js b/src/components/loading/loading.js
index d6c00347c7..9a9aa3ca7d 100644
--- a/src/components/loading/loading.js
+++ b/src/components/loading/loading.js
@@ -19,7 +19,7 @@ define(['components/loading/loadingLegacy', 'browser', 'css!./loading'], functio
if (!elem) {
- elem = document.createElement("div");
+ elem = document.createElement('div');
loadingElem = elem;
elem.classList.add('docspinner');
diff --git a/src/components/loading/loadingLegacy.js b/src/components/loading/loadingLegacy.js
index 757cea0160..d766a4aca4 100644
--- a/src/components/loading/loadingLegacy.js
+++ b/src/components/loading/loadingLegacy.js
@@ -7,7 +7,7 @@ define(['require', 'css!./loadingLegacy'], function (require) {
show: function () {
var elem = loadingElem;
if (!elem) {
- elem = document.createElement("img");
+ elem = document.createElement('img');
elem.src = require.toUrl('.').split('?')[0] + '/loader.gif';
loadingElem = elem;
diff --git a/src/components/logoscreensaver/plugin.js b/src/components/logoscreensaver/plugin.js
index 2becfad0c3..f9dd901982 100644
--- a/src/components/logoscreensaver/plugin.js
+++ b/src/components/logoscreensaver/plugin.js
@@ -1,12 +1,12 @@
-define(["pluginManager"], function (pluginManager) {
+define(['pluginManager'], function (pluginManager) {
return function () {
var self = this;
- self.name = "Logo ScreenSaver";
- self.type = "screensaver";
- self.id = "logoscreensaver";
+ self.name = 'Logo ScreenSaver';
+ self.type = 'screensaver';
+ self.id = 'logoscreensaver';
self.supportsAnonymous = true;
var interval;
@@ -24,7 +24,7 @@ define(["pluginManager"], function (pluginManager) {
rotateOut
];
- var elem = document.querySelector(".logoScreenSaverImage");
+ var elem = document.querySelector('.logoScreenSaverImage');
if (elem && elem.animate) {
var random = getRandomInt(0, animations.length - 1);
@@ -39,96 +39,96 @@ define(["pluginManager"], function (pluginManager) {
function bounceInLeft(elem, iterations) {
var keyframes = [
- { transform: "translate3d(-3000px, 0, 0)", opacity: "0", offset: 0 },
- { transform: "translate3d(25px, 0, 0)", opacity: "1", offset: 0.6 },
- { transform: "translate3d(-100px, 0, 0)", offset: 0.75 },
- { transform: "translate3d(5px, 0, 0)", offset: 0.9 },
- { transform: "none", opacity: "1", offset: 1 }];
- var timing = { duration: 900, iterations: iterations, easing: "cubic-bezier(0.215, 0.610, 0.355, 1.000)" };
+ { transform: 'translate3d(-3000px, 0, 0)', opacity: '0', offset: 0 },
+ { transform: 'translate3d(25px, 0, 0)', opacity: '1', offset: 0.6 },
+ { transform: 'translate3d(-100px, 0, 0)', offset: 0.75 },
+ { transform: 'translate3d(5px, 0, 0)', offset: 0.9 },
+ { transform: 'none', opacity: '1', offset: 1 }];
+ var timing = { duration: 900, iterations: iterations, easing: 'cubic-bezier(0.215, 0.610, 0.355, 1.000)' };
return elem.animate(keyframes, timing);
}
function bounceInRight(elem, iterations) {
var keyframes = [
- { transform: "translate3d(3000px, 0, 0)", opacity: "0", offset: 0 },
- { transform: "translate3d(-25px, 0, 0)", opacity: "1", offset: 0.6 },
- { transform: "translate3d(100px, 0, 0)", offset: 0.75 },
- { transform: "translate3d(-5px, 0, 0)", offset: 0.9 },
- { transform: "none", opacity: "1", offset: 1 }];
- var timing = { duration: 900, iterations: iterations, easing: "cubic-bezier(0.215, 0.610, 0.355, 1.000)" };
+ { transform: 'translate3d(3000px, 0, 0)', opacity: '0', offset: 0 },
+ { transform: 'translate3d(-25px, 0, 0)', opacity: '1', offset: 0.6 },
+ { transform: 'translate3d(100px, 0, 0)', offset: 0.75 },
+ { transform: 'translate3d(-5px, 0, 0)', offset: 0.9 },
+ { transform: 'none', opacity: '1', offset: 1 }];
+ var timing = { duration: 900, iterations: iterations, easing: 'cubic-bezier(0.215, 0.610, 0.355, 1.000)' };
return elem.animate(keyframes, timing);
}
function shake(elem, iterations) {
var keyframes = [
- { transform: "translate3d(0, 0, 0)", offset: 0 },
- { transform: "translate3d(-10px, 0, 0)", offset: 0.1 },
- { transform: "translate3d(10px, 0, 0)", offset: 0.2 },
- { transform: "translate3d(-10px, 0, 0)", offset: 0.3 },
- { transform: "translate3d(10px, 0, 0)", offset: 0.4 },
- { transform: "translate3d(-10px, 0, 0)", offset: 0.5 },
- { transform: "translate3d(10px, 0, 0)", offset: 0.6 },
- { transform: "translate3d(-10px, 0, 0)", offset: 0.7 },
- { transform: "translate3d(10px, 0, 0)", offset: 0.8 },
- { transform: "translate3d(-10px, 0, 0)", offset: 0.9 },
- { transform: "translate3d(0, 0, 0)", offset: 1 }];
+ { transform: 'translate3d(0, 0, 0)', offset: 0 },
+ { transform: 'translate3d(-10px, 0, 0)', offset: 0.1 },
+ { transform: 'translate3d(10px, 0, 0)', offset: 0.2 },
+ { transform: 'translate3d(-10px, 0, 0)', offset: 0.3 },
+ { transform: 'translate3d(10px, 0, 0)', offset: 0.4 },
+ { transform: 'translate3d(-10px, 0, 0)', offset: 0.5 },
+ { transform: 'translate3d(10px, 0, 0)', offset: 0.6 },
+ { transform: 'translate3d(-10px, 0, 0)', offset: 0.7 },
+ { transform: 'translate3d(10px, 0, 0)', offset: 0.8 },
+ { transform: 'translate3d(-10px, 0, 0)', offset: 0.9 },
+ { transform: 'translate3d(0, 0, 0)', offset: 1 }];
var timing = { duration: 900, iterations: iterations };
return elem.animate(keyframes, timing);
}
function swing(elem, iterations) {
var keyframes = [
- { transform: "translate(0%)", offset: 0 },
- { transform: "rotate3d(0, 0, 1, 15deg)", offset: 0.2 },
- { transform: "rotate3d(0, 0, 1, -10deg)", offset: 0.4 },
- { transform: "rotate3d(0, 0, 1, 5deg)", offset: 0.6 },
- { transform: "rotate3d(0, 0, 1, -5deg)", offset: 0.8 },
- { transform: "rotate3d(0, 0, 1, 0deg)", offset: 1 }];
+ { transform: 'translate(0%)', offset: 0 },
+ { transform: 'rotate3d(0, 0, 1, 15deg)', offset: 0.2 },
+ { transform: 'rotate3d(0, 0, 1, -10deg)', offset: 0.4 },
+ { transform: 'rotate3d(0, 0, 1, 5deg)', offset: 0.6 },
+ { transform: 'rotate3d(0, 0, 1, -5deg)', offset: 0.8 },
+ { transform: 'rotate3d(0, 0, 1, 0deg)', offset: 1 }];
var timing = { duration: 900, iterations: iterations };
return elem.animate(keyframes, timing);
}
function tada(elem, iterations) {
var keyframes = [
- { transform: "scale3d(1, 1, 1)", offset: 0 },
- { transform: "scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg)", offset: 0.1 },
- { transform: "scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg)", offset: 0.2 },
- { transform: "scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)", offset: 0.3 },
- { transform: "scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)", offset: 0.4 },
- { transform: "scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)", offset: 0.5 },
- { transform: "scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)", offset: 0.6 },
- { transform: "scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)", offset: 0.7 },
- { transform: "scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)", offset: 0.8 },
- { transform: "scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)", offset: 0.9 },
- { transform: "scale3d(1, 1, 1)", offset: 1 }];
+ { transform: 'scale3d(1, 1, 1)', offset: 0 },
+ { transform: 'scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg)', offset: 0.1 },
+ { transform: 'scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg)', offset: 0.2 },
+ { transform: 'scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)', offset: 0.3 },
+ { transform: 'scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)', offset: 0.4 },
+ { transform: 'scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)', offset: 0.5 },
+ { transform: 'scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)', offset: 0.6 },
+ { transform: 'scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)', offset: 0.7 },
+ { transform: 'scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)', offset: 0.8 },
+ { transform: 'scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)', offset: 0.9 },
+ { transform: 'scale3d(1, 1, 1)', offset: 1 }];
var timing = { duration: 900, iterations: iterations };
return elem.animate(keyframes, timing);
}
function wobble(elem, iterations) {
var keyframes = [
- { transform: "translate(0%)", offset: 0 },
- { transform: "translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg)", offset: 0.15 },
- { transform: "translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg)", offset: 0.45 },
- { transform: "translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg)", offset: 0.6 },
- { transform: "translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg)", offset: 0.75 },
- { transform: "translateX(0%)", offset: 1 }];
+ { transform: 'translate(0%)', offset: 0 },
+ { transform: 'translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg)', offset: 0.15 },
+ { transform: 'translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg)', offset: 0.45 },
+ { transform: 'translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg)', offset: 0.6 },
+ { transform: 'translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg)', offset: 0.75 },
+ { transform: 'translateX(0%)', offset: 1 }];
var timing = { duration: 900, iterations: iterations };
return elem.animate(keyframes, timing);
}
function rotateIn(elem, iterations) {
- var transformOrigin = elem.style["transform-origin"];
- var keyframes = [{ transform: "rotate3d(0, 0, 1, -200deg)", opacity: "0", transformOrigin: "center", offset: 0 },
- { transform: "none", opacity: "1", transformOrigin: "center", offset: 1 }];
+ var transformOrigin = elem.style['transform-origin'];
+ var keyframes = [{ transform: 'rotate3d(0, 0, 1, -200deg)', opacity: '0', transformOrigin: 'center', offset: 0 },
+ { transform: 'none', opacity: '1', transformOrigin: 'center', offset: 1 }];
var timing = { duration: 900, iterations: iterations };
return elem.animate(keyframes, timing);
}
function rotateOut(elem, iterations) {
- var transformOrigin = elem.style["transform-origin"];
- var keyframes = [{ transform: "none", opacity: "1", transformOrigin: "center", offset: 0 },
- { transform: "rotate3d(0, 0, 1, 200deg)", opacity: "0", transformOrigin: "center", offset: 1 }];
+ var transformOrigin = elem.style['transform-origin'];
+ var keyframes = [{ transform: 'none', opacity: '1', transformOrigin: 'center', offset: 0 },
+ { transform: 'rotate3d(0, 0, 1, 200deg)', opacity: '0', transformOrigin: 'center', offset: 1 }];
var timing = { duration: 900, iterations: iterations };
return elem.animate(keyframes, timing);
@@ -136,8 +136,8 @@ define(["pluginManager"], function (pluginManager) {
function fadeOut(elem, iterations) {
var keyframes = [
- { opacity: "1", offset: 0 },
- { opacity: "0", offset: 1 }];
+ { opacity: '1', offset: 0 },
+ { opacity: '0', offset: 1 }];
var timing = { duration: 400, iterations: iterations };
return elem.animate(keyframes, timing);
}
@@ -151,13 +151,13 @@ define(["pluginManager"], function (pluginManager) {
self.show = function () {
- require(["css!" + pluginManager.mapPath(self, "style.css")], function () {
+ require(['css!' + pluginManager.mapPath(self, 'style.css')], function () {
- var elem = document.querySelector(".logoScreenSaver");
+ var elem = document.querySelector('.logoScreenSaver');
if (!elem) {
- elem = document.createElement("div");
- elem.classList.add("logoScreenSaver");
+ elem = document.createElement('div');
+ elem.classList.add('logoScreenSaver');
document.body.appendChild(elem);
elem.innerHTML = '
';
@@ -172,7 +172,7 @@ define(["pluginManager"], function (pluginManager) {
stopInterval();
- var elem = document.querySelector(".logoScreenSaver");
+ var elem = document.querySelector('.logoScreenSaver');
if (elem) {
diff --git a/src/components/mediainfo/mediainfo.js b/src/components/mediainfo/mediainfo.js
index 188ea9a07c..0c9a87e800 100644
--- a/src/components/mediainfo/mediainfo.js
+++ b/src/components/mediainfo/mediainfo.js
@@ -6,7 +6,7 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
var status;
if (item.Type === 'SeriesTimer') {
- return '
';
+ return '
';
} else if (item.TimerId || item.SeriesTimerId) {
status = item.Status || 'Cancelled';
@@ -20,13 +20,13 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
if (item.SeriesTimerId) {
if (status !== 'Cancelled') {
- return '
';
+ return '
';
}
- return '
';
+ return '
';
}
- return '
';
+ return '
';
}
function getProgramInfoHtml(item, options) {
@@ -57,7 +57,7 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
miscInfo.push(text);
} catch (e) {
- console.error("error parsing date: " + item.StartDate);
+ console.error('error parsing date: ' + item.StartDate);
}
}
@@ -109,7 +109,7 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
var minutes;
var count;
- var showFolderRuntime = item.Type === "MusicAlbum" || item.MediaType === 'MusicArtist' || item.MediaType === 'Playlist' || item.MediaType === 'MusicGenre';
+ var showFolderRuntime = item.Type === 'MusicAlbum' || item.MediaType === 'MusicArtist' || item.MediaType === 'Playlist' || item.MediaType === 'MusicGenre';
if (showFolderRuntime) {
@@ -123,7 +123,7 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
if (item.RunTimeTicks) {
miscInfo.push(datetime.getDisplayRunningTime(item.RunTimeTicks));
}
- } else if (item.Type === "PhotoAlbum" || item.Type === "BoxSet") {
+ } else if (item.Type === 'PhotoAlbum' || item.Type === 'BoxSet') {
count = item.ChildCount;
@@ -133,7 +133,7 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
}
}
- if ((item.Type === "Episode" || item.MediaType === 'Photo') && options.originalAirDate !== false) {
+ if ((item.Type === 'Episode' || item.MediaType === 'Photo') && options.originalAirDate !== false) {
if (item.PremiereDate) {
@@ -143,7 +143,7 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
text = datetime.toLocaleDateString(date);
miscInfo.push(text);
} catch (e) {
- console.error("error parsing date: " + item.PremiereDate);
+ console.error('error parsing date: ' + item.PremiereDate);
}
}
}
@@ -171,18 +171,18 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
text = datetime.toLocaleDateString(date);
miscInfo.push(text);
- if (item.Type !== "Recording") {
+ if (item.Type !== 'Recording') {
text = datetime.getDisplayTime(date);
miscInfo.push(text);
}
} catch (e) {
- console.error("error parsing date: " + item.StartDate);
+ console.error('error parsing date: ' + item.StartDate);
}
}
- if (options.year !== false && item.ProductionYear && item.Type === "Series") {
+ if (options.year !== false && item.ProductionYear && item.Type === 'Series') {
- if (item.Status === "Continuing") {
+ if (item.Status === 'Continuing') {
miscInfo.push(globalize.translate('SeriesYearToPresent', item.ProductionYear));
} else if (item.ProductionYear) {
@@ -196,11 +196,11 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
var endYear = datetime.parseISO8601Date(item.EndDate).getFullYear();
if (endYear !== item.ProductionYear) {
- text += "-" + datetime.parseISO8601Date(item.EndDate).getFullYear();
+ text += '-' + datetime.parseISO8601Date(item.EndDate).getFullYear();
}
} catch (e) {
- console.error("error parsing date: " + item.EndDate);
+ console.error('error parsing date: ' + item.EndDate);
}
}
@@ -248,7 +248,7 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
text = globalize.translate('OriginalAirDateValue', datetime.toLocaleDateString(date));
miscInfo.push(text);
} catch (e) {
- console.error("error parsing date: " + item.PremiereDate);
+ console.error('error parsing date: ' + item.PremiereDate);
}
} else if (item.ProductionYear) {
miscInfo.push(item.ProductionYear);
@@ -256,7 +256,7 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
}
if (options.year !== false) {
- if (item.Type !== "Series" && item.Type !== "Episode" && item.Type !== "Person" && item.MediaType !== 'Photo' && item.Type !== 'Program' && item.Type !== 'Season') {
+ if (item.Type !== 'Series' && item.Type !== 'Episode' && item.Type !== 'Person' && item.MediaType !== 'Photo' && item.Type !== 'Program' && item.Type !== 'Season') {
if (item.ProductionYear) {
@@ -267,15 +267,15 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
text = datetime.parseISO8601Date(item.PremiereDate).getFullYear();
miscInfo.push(text);
} catch (e) {
- console.error("error parsing date: " + item.PremiereDate);
+ console.error('error parsing date: ' + item.PremiereDate);
}
}
}
}
- if (item.RunTimeTicks && item.Type !== "Series" && item.Type !== 'Program' && !showFolderRuntime && options.runtime !== false) {
+ if (item.RunTimeTicks && item.Type !== 'Series' && item.Type !== 'Program' && !showFolderRuntime && options.runtime !== false) {
- if (item.Type === "Audio") {
+ if (item.Type === 'Audio') {
miscInfo.push(datetime.getDisplayRunningTime(item.RunTimeTicks));
@@ -284,11 +284,11 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
minutes = minutes || 1;
- miscInfo.push(Math.round(minutes) + " mins");
+ miscInfo.push(Math.round(minutes) + ' mins');
}
}
- if (item.OfficialRating && item.Type !== "Season" && item.Type !== "Episode") {
+ if (item.OfficialRating && item.Type !== 'Season' && item.Type !== 'Episode') {
miscInfo.push({
text: item.OfficialRating,
cssClass: 'mediaInfoOfficialRating'
@@ -296,11 +296,11 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
}
if (item.Video3DFormat) {
- miscInfo.push("3D");
+ miscInfo.push('3D');
}
if (item.MediaType === 'Photo' && item.Width && item.Height) {
- miscInfo.push(item.Width + "x" + item.Height);
+ miscInfo.push(item.Width + 'x' + item.Height);
}
if (options.container !== false && item.Type === 'Audio' && item.Container) {
@@ -390,7 +390,7 @@ define(['datetime', 'globalize', 'appRouter', 'itemHelper', 'indicators', 'mater
if (item.CommunityRating) {
html += '
';
- html += 'star ';
+ html += ' ';
html += item.CommunityRating.toFixed(1);
html += '
';
}
diff --git a/src/components/medialibrarycreator/medialibrarycreator.js b/src/components/medialibrarycreator/medialibrarycreator.js
index 1665efe273..450f5a64e6 100644
--- a/src/components/medialibrarycreator/medialibrarycreator.js
+++ b/src/components/medialibrarycreator/medialibrarycreator.js
@@ -1,5 +1,5 @@
-define(["loading", "dialogHelper", "dom", "jQuery", "components/libraryoptionseditor/libraryoptionseditor", "globalize", "emby-toggle", "emby-input", "emby-select", "paper-icon-button-light", "listViewStyle", "formDialogStyle", "emby-button", "flexStyles"], function (loading, dialogHelper, dom, $, libraryoptionseditor, globalize) {
- "use strict";
+define(['loading', 'dialogHelper', 'dom', 'jQuery', 'components/libraryoptionseditor/libraryoptionseditor', 'globalize', 'emby-toggle', 'emby-input', 'emby-select', 'paper-icon-button-light', 'listViewStyle', 'formDialogStyle', 'emby-button', 'flexStyles'], function (loading, dialogHelper, dom, $, libraryoptionseditor, globalize) {
+ 'use strict';
function onAddLibrary() {
if (isCreating) {
@@ -7,10 +7,10 @@ define(["loading", "dialogHelper", "dom", "jQuery", "components/libraryoptionsed
}
if (pathInfos.length == 0) {
- require(["alert"], function (alert) {
+ require(['alert'], function (alert) {
alert({
- text: globalize.translate("PleaseAddAtLeastOneFolder"),
- type: "error"
+ text: globalize.translate('PleaseAddAtLeastOneFolder'),
+ type: 'error'
});
});
@@ -19,15 +19,15 @@ define(["loading", "dialogHelper", "dom", "jQuery", "components/libraryoptionsed
isCreating = true;
loading.show();
- var dlg = dom.parentWithClass(this, "dlg-librarycreator");
- var name = $("#txtValue", dlg).val();
- var type = $("#selectCollectionType", dlg).val();
+ var dlg = dom.parentWithClass(this, 'dlg-librarycreator');
+ var name = $('#txtValue', dlg).val();
+ var type = $('#selectCollectionType', dlg).val();
- if (type == "mixed") {
+ if (type == 'mixed') {
type = null;
}
- var libraryOptions = libraryoptionseditor.getLibraryOptions(dlg.querySelector(".libraryOptions"));
+ var libraryOptions = libraryoptionseditor.getLibraryOptions(dlg.querySelector('.libraryOptions'));
libraryOptions.PathInfos = pathInfos;
ApiClient.addVirtualFolder(name, type, currentOptions.refresh, libraryOptions).then(function () {
hasChanges = true;
@@ -35,8 +35,8 @@ define(["loading", "dialogHelper", "dom", "jQuery", "components/libraryoptionsed
loading.hide();
dialogHelper.close(dlg);
}, function () {
- require(["toast"], function (toast) {
- toast(globalize.translate("ErrorAddingMediaPathToVirtualFolder"));
+ require(['toast'], function (toast) {
+ toast(globalize.translate('ErrorAddingMediaPathToVirtualFolder'));
});
isCreating = false;
@@ -47,50 +47,50 @@ define(["loading", "dialogHelper", "dom", "jQuery", "components/libraryoptionsed
function getCollectionTypeOptionsHtml(collectionTypeOptions) {
return collectionTypeOptions.map(function (i) {
- return '
' + i.name + " ";
- }).join("");
+ return '
' + i.name + ' ';
+ }).join('');
}
function initEditor(page, collectionTypeOptions) {
- $("#selectCollectionType", page).html(getCollectionTypeOptionsHtml(collectionTypeOptions)).val("").on("change", function () {
+ $('#selectCollectionType', page).html(getCollectionTypeOptionsHtml(collectionTypeOptions)).val('').on('change', function () {
var value = this.value;
- var dlg = $(this).parents(".dialog")[0];
- libraryoptionseditor.setContentType(dlg.querySelector(".libraryOptions"), value == "mixed" ? "" : value);
+ var dlg = $(this).parents('.dialog')[0];
+ libraryoptionseditor.setContentType(dlg.querySelector('.libraryOptions'), value == 'mixed' ? '' : value);
if (value) {
- dlg.querySelector(".libraryOptions").classList.remove("hide");
+ dlg.querySelector('.libraryOptions').classList.remove('hide');
} else {
- dlg.querySelector(".libraryOptions").classList.add("hide");
+ dlg.querySelector('.libraryOptions').classList.add('hide');
}
- if (value != "mixed") {
+ if (value != 'mixed') {
var index = this.selectedIndex;
if (index != -1) {
- var name = this.options[index].innerHTML.replace("*", "").replace("&", "&");
- $("#txtValue", dlg).val(name);
+ var name = this.options[index].innerHTML.replace('*', '').replace('&', '&');
+ $('#txtValue', dlg).val(name);
var folderOption = collectionTypeOptions.filter(function (i) {
return i.value == value;
})[0];
- $(".collectionTypeFieldDescription", dlg).html(folderOption.message || "");
+ $('.collectionTypeFieldDescription', dlg).html(folderOption.message || '');
}
}
});
- page.querySelector(".btnAddFolder").addEventListener("click", onAddButtonClick);
- page.querySelector(".btnSubmit").addEventListener("click", onAddLibrary);
- page.querySelector(".folderList").addEventListener("click", onRemoveClick);
- page.querySelector(".chkAdvanced").addEventListener("change", onToggleAdvancedChange);
+ page.querySelector('.btnAddFolder').addEventListener('click', onAddButtonClick);
+ page.querySelector('.btnSubmit').addEventListener('click', onAddLibrary);
+ page.querySelector('.folderList').addEventListener('click', onRemoveClick);
+ page.querySelector('.chkAdvanced').addEventListener('change', onToggleAdvancedChange);
}
function onToggleAdvancedChange() {
- var dlg = dom.parentWithClass(this, "dlg-librarycreator");
- libraryoptionseditor.setAdvancedVisible(dlg.querySelector(".libraryOptions"), this.checked);
+ var dlg = dom.parentWithClass(this, 'dlg-librarycreator');
+ libraryoptionseditor.setAdvancedVisible(dlg.querySelector('.libraryOptions'), this.checked);
}
function onAddButtonClick() {
- var page = dom.parentWithClass(this, "dlg-librarycreator");
+ var page = dom.parentWithClass(this, 'dlg-librarycreator');
- require(["directorybrowser"], function (directoryBrowser) {
+ require(['directorybrowser'], function (directoryBrowser) {
var picker = new directoryBrowser();
picker.show({
enableNetworkSharePath: true,
@@ -106,30 +106,30 @@ define(["loading", "dialogHelper", "dom", "jQuery", "components/libraryoptionsed
}
function getFolderHtml(pathInfo, index) {
- var html = "";
+ var html = '';
html += '
';
- html += '
';
- html += '
' + pathInfo.Path + "
";
+ html += '
';
+ html += '
' + pathInfo.Path + '
';
if (pathInfo.NetworkPath) {
- html += '
' + pathInfo.NetworkPath + "
";
+ html += '
' + pathInfo.NetworkPath + '
';
}
- html += "
";
- html += '
remove_circle ';
- html += "
";
+ html += '
';
+ html += '
';
+ html += '
';
return html;
}
function renderPaths(page) {
- var foldersHtml = pathInfos.map(getFolderHtml).join("");
- var folderList = page.querySelector(".folderList");
+ var foldersHtml = pathInfos.map(getFolderHtml).join('');
+ var folderList = page.querySelector('.folderList');
folderList.innerHTML = foldersHtml;
if (foldersHtml) {
- folderList.classList.remove("hide");
+ folderList.classList.remove('hide');
} else {
- folderList.classList.add("hide");
+ folderList.classList.add('hide');
}
}
@@ -154,14 +154,14 @@ define(["loading", "dialogHelper", "dom", "jQuery", "components/libraryoptionsed
}
function onRemoveClick(e) {
- var button = dom.parentWithClass(e.target, "btnRemovePath");
- var index = parseInt(button.getAttribute("data-index"));
+ var button = dom.parentWithClass(e.target, 'btnRemovePath');
+ var index = parseInt(button.getAttribute('data-index'));
var location = pathInfos[index].Path;
var locationLower = location.toLowerCase();
pathInfos = pathInfos.filter(function (p) {
return p.Path.toLowerCase() != locationLower;
});
- renderPaths(dom.parentWithClass(button, "dlg-librarycreator"));
+ renderPaths(dom.parentWithClass(button, 'dlg-librarycreator'));
}
function onDialogClosed() {
@@ -169,9 +169,9 @@ define(["loading", "dialogHelper", "dom", "jQuery", "components/libraryoptionsed
}
function initLibraryOptions(dlg) {
- libraryoptionseditor.embed(dlg.querySelector(".libraryOptions")).then(function () {
- $("#selectCollectionType", dlg).trigger("change");
- onToggleAdvancedChange.call(dlg.querySelector(".chkAdvanced"));
+ libraryoptionseditor.embed(dlg.querySelector('.libraryOptions')).then(function () {
+ $('#selectCollectionType', dlg).trigger('change');
+ onToggleAdvancedChange.call(dlg.querySelector('.chkAdvanced'));
});
}
@@ -182,25 +182,25 @@ define(["loading", "dialogHelper", "dom", "jQuery", "components/libraryoptionsed
currentResolve = resolve;
hasChanges = false;
var xhr = new XMLHttpRequest();
- xhr.open("GET", "components/medialibrarycreator/medialibrarycreator.template.html", true);
+ xhr.open('GET', 'components/medialibrarycreator/medialibrarycreator.template.html', true);
xhr.onload = function (e) {
var template = this.response;
var dlg = dialogHelper.createDialog({
- size: "medium-tall",
+ size: 'medium-tall',
modal: false,
removeOnClose: true,
scrollY: false
});
- dlg.classList.add("ui-body-a");
- dlg.classList.add("background-theme-a");
- dlg.classList.add("dlg-librarycreator");
- dlg.classList.add("formDialog");
+ dlg.classList.add('ui-body-a');
+ dlg.classList.add('background-theme-a');
+ dlg.classList.add('dlg-librarycreator');
+ dlg.classList.add('formDialog');
dlg.innerHTML = globalize.translateDocument(template);
initEditor(dlg, options.collectionTypeOptions);
- dlg.addEventListener("close", onDialogClosed);
+ dlg.addEventListener('close', onDialogClosed);
dialogHelper.open(dlg);
- dlg.querySelector(".btnCancel").addEventListener("click", function () {
+ dlg.querySelector('.btnCancel').addEventListener('click', function () {
dialogHelper.close(dlg);
});
pathInfos = [];
diff --git a/src/components/medialibrarycreator/medialibrarycreator.template.html b/src/components/medialibrarycreator/medialibrarycreator.template.html
index 32c6b254b7..f92a63e403 100644
--- a/src/components/medialibrarycreator/medialibrarycreator.template.html
+++ b/src/components/medialibrarycreator/medialibrarycreator.template.html
@@ -1,5 +1,5 @@
@@ -26,7 +26,7 @@