+
+
+
${MessageNoAvailablePlugins}
diff --git a/src/controllers/dashboard/plugins/available/index.js b/src/controllers/dashboard/plugins/available/index.js
index b10518bc74..095bbb8659 100644
--- a/src/controllers/dashboard/plugins/available/index.js
+++ b/src/controllers/dashboard/plugins/available/index.js
@@ -86,10 +86,37 @@ function populateList(options) {
options.noItemsElement.classList.remove('hide');
}
+ const searchBar = document.getElementById('txtSearchPlugins');
+ if (searchBar) {
+ searchBar.addEventListener('input', () => onSearchBarType(searchBar));
+ }
+
options.catalogElement.innerHTML = html;
loading.hide();
}
+function onSearchBarType(searchBar) {
+ const filter = searchBar.value.toLowerCase();
+ for (const header of document.querySelectorAll('div .verticalSection')) {
+ // keep track of shown cards after each search
+ let shown = 0;
+ for (const card of header.querySelectorAll('div .card')) {
+ if (filter && filter != '' && !card.textContent.toLowerCase().includes(filter)) {
+ card.style.display = 'none';
+ } else {
+ card.style.display = 'unset';
+ shown++;
+ }
+ }
+ // hide title if no cards are shown
+ if (shown <= 0) {
+ header.style.display = 'none';
+ } else {
+ header.style.display = 'unset';
+ }
+ }
+}
+
function getPluginHtml(plugin, options, installedPlugins) {
let html = '';
let href = plugin.externalUrl ? plugin.externalUrl : '#/addplugin.html?name=' + encodeURIComponent(plugin.name) + '&guid=' + plugin.guid;
diff --git a/src/controllers/dashboard/plugins/installed/index.html b/src/controllers/dashboard/plugins/installed/index.html
index d2b11592e9..4aedb8a9de 100644
--- a/src/controllers/dashboard/plugins/installed/index.html
+++ b/src/controllers/dashboard/plugins/installed/index.html
@@ -1,6 +1,9 @@
diff --git a/src/controllers/dashboard/plugins/installed/index.js b/src/controllers/dashboard/plugins/installed/index.js
index b8ddbbbf85..13d0132c94 100644
--- a/src/controllers/dashboard/plugins/installed/index.js
+++ b/src/controllers/dashboard/plugins/installed/index.js
@@ -112,7 +112,6 @@ function populateList(page, plugins, pluginConfigurationPages) {
if (plugin1.Name > plugin2.Name) {
return 1;
}
-
return -1;
});
@@ -136,6 +135,12 @@ function populateList(page, plugins, pluginConfigurationPages) {
html += '
';
}
+ // add search box listener
+ const searchBar = page.querySelector('#txtSearchPlugins');
+ if (searchBar) {
+ searchBar.addEventListener('input', () => onFilterType(page, searchBar));
+ }
+
installedPluginsElement.innerHTML = html;
loading.hide();
}
@@ -239,6 +244,17 @@ function onInstalledPluginsClick(e) {
}
}
+function onFilterType(page, searchBar) {
+ const filter = searchBar.value.toLowerCase();
+ for (const card of page.querySelectorAll('.card')) {
+ if (filter && filter != '' && !card.textContent.toLowerCase().includes(filter)) {
+ card.style.display = 'none';
+ } else {
+ card.style.display = 'unset';
+ }
+ }
+}
+
pageIdOn('pageshow', 'pluginsPage', function () {
libraryMenu.setTabs('plugins', 0, getTabs);
reloadList(this);
diff --git a/src/controllers/session/selectServer/index.js b/src/controllers/session/selectServer/index.js
index 75a0b0789d..3db27beb1f 100644
--- a/src/controllers/session/selectServer/index.js
+++ b/src/controllers/session/selectServer/index.js
@@ -28,24 +28,15 @@ import cardBuilder from '../../../components/cardbuilder/cardBuilder';
const items = servers.map(function (server) {
return {
name: server.Name,
- showIcon: true,
- icon: 'cast',
+ icon: 'storage',
cardType: '',
id: server.Id,
server: server
};
});
let html = items.map(function (item) {
- let cardImageContainer;
-
- if (item.showIcon) {
- cardImageContainer = '
';
- }
-
// TODO move card creation code to Card component
-
+ const cardImageContainer = '
';
let cssClass = 'card overflowSquareCard loginSquareCard scalableCard overflowSquareCard-scalable';
if (layoutManager.tv) {
diff --git a/src/controllers/user/menu/index.html b/src/controllers/user/menu/index.html
index 2741f89282..1c83bd9d68 100644
--- a/src/controllers/user/menu/index.html
+++ b/src/controllers/user/menu/index.html
@@ -14,7 +14,7 @@