diff --git a/web/pgadmin/__init__.py b/web/pgadmin/__init__.py
index 8850796e3..93a25394d 100644
--- a/web/pgadmin/__init__.py
+++ b/web/pgadmin/__init__.py
@@ -59,6 +59,13 @@ class PgAdmin(Flask):
stylesheets.extend(getattr(module, "stylesheets", []))
return stylesheets
+ @property
+ def messages(self):
+ messages = dict()
+ for module in self.submodules:
+ messages.update(getattr(module, "messages", dict()))
+ return messages
+
@property
def javascripts(self):
scripts = []
diff --git a/web/pgadmin/browser/templates/browser/js/messages.js b/web/pgadmin/browser/templates/browser/js/messages.js
index f3e60df67..2af0752bf 100644
--- a/web/pgadmin/browser/templates/browser/js/messages.js
+++ b/web/pgadmin/browser/templates/browser/js/messages.js
@@ -7,7 +7,7 @@ function(_, S, pgAdmin) {
if (pgBrowser.messages)
return pgBrowser.messages;
- pgBrowser.messages = {
+ var messages = pgBrowser.messages = {
'SERVER_LOST': '{{ _('Connection to the server has been lost!') }}',
'CLICK_FOR_DETAILED_MSG': '%s
' + '{{ _('Click here for details.')|safe }}',
'GENERAL_CATEGORY': '{{ _("General")|safe }}',
@@ -27,6 +27,9 @@ function(_, S, pgAdmin) {
'NOTE_CTRL_LABEL': "{{ _("Note") }}",
};
+ {% for key, val in current_app.messages.iteritems() %}messages['{{ key|safe }}'] = '{{ val|safe }}';
+ {% endfor %}
+
return pgBrowser.messages;
});
diff --git a/web/pgadmin/utils/__init__.py b/web/pgadmin/utils/__init__.py
index 6d1eaa74e..010750939 100644
--- a/web/pgadmin/utils/__init__.py
+++ b/web/pgadmin/utils/__init__.py
@@ -66,6 +66,14 @@ class PgAdminModule(Blueprint):
"""
return []
+ def get_own_messages(self):
+ """
+ Returns:
+ dict: the i18n messages used by this module, not including any
+ messages needed by the submodules.
+ """
+ return dict()
+
def get_own_javascripts(self):
"""
Returns:
@@ -96,6 +104,14 @@ class PgAdminModule(Blueprint):
stylesheets.extend(module.stylesheets)
return stylesheets
+ @property
+ def messages(self):
+ res = self.get_own_messages()
+
+ for module in self.submodules:
+ res.update(module.messages)
+ return res
+
@property
def javascripts(self):
javascripts = self.get_own_javascripts()