Fixed FELIX-3695 : When bundle filter doesn't match, the tool bars are duplicated
https://issues.apache.org/jira/browse/FELIX-3695
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1665413 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/webconsole/src/main/resources/OSGI-INF/l10n/bundle.properties b/webconsole/src/main/resources/OSGI-INF/l10n/bundle.properties
index 3383e15..ff30e62 100644
--- a/webconsole/src/main/resources/OSGI-INF/l10n/bundle.properties
+++ b/webconsole/src/main/resources/OSGI-INF/l10n/bundle.properties
@@ -151,6 +151,7 @@
bundles.filter.help=A string or RegExp expression which is matched againse bundle id, name, symbolic name or version. In case 'Filter All' is used, the value must be a valid LDAP string.
bundles.filter.ldap=Filter All
bundles.filter.ldap.tip=When clicked, a server-side matching is performed agains *all* bundle manifest headers. The expression is expected to be a valid OSGi Filter
+bundles.filter.no_match=There are no bundles matching the current filter
# states
bundles.state.1=Uninstalled
bundles.state.2=Installed
diff --git a/webconsole/src/main/resources/res/ui/bundles.js b/webconsole/src/main/resources/res/ui/bundles.js
index 0ff8d5b..a04426b 100644
--- a/webconsole/src/main/resources/res/ui/bundles.js
+++ b/webconsole/src/main/resources/res/ui/bundles.js
@@ -64,6 +64,10 @@
bundlesTable.trigger('sorton', [cv]);
}
+ if (bundlesBody.find('tr').size() == 0) {
+ bundlesBody.html('<tr><td colspan="6">' + i18n.filterNoMatch + '</td></tr>');
+ }
+
// show dialog on error
if (eventData.error) bundleOpError.dialog('open').find('pre').text(eventData.error)
}
diff --git a/webconsole/src/main/resources/templates/bundles.html b/webconsole/src/main/resources/templates/bundles.html
index 1ce0656..0a2a571 100644
--- a/webconsole/src/main/resources/templates/bundles.html
+++ b/webconsole/src/main/resources/templates/bundles.html
@@ -39,6 +39,7 @@
statlineResolved : '${bundles.statline.resolved}',
statlineInstalled : '${bundles.statline.installed}',
install_update : '${bundles.install_or_update}',
+ filterNoMatch : '${bundles.filter.no_match}',
state : {
1 : '${bundles.state.1}', // uninstalled
2 : '${bundles.state.2}', // installed