Adds i18n support for Javascript.
Uses Django's built-in client-side i18n machinery to support translation strings in javascript code as well. Various cleanup, etc. included to make translation file generation succeed and remove obsolete strings. Implements blueprint javascript-i18n. Change-Id: I62c237ae98b26307e1e7d8a7d913237530e7324f
This commit is contained in:
parent
05cf900492
commit
ee17b1588b
@ -73,11 +73,10 @@ class CreateSubnetInfoAction(workflows.Action):
|
||||
|
||||
class Meta:
|
||||
name = ("Subnet")
|
||||
help_text = _("You can create a subnet associated with the new "
|
||||
"network. \"Network Address\" must be specified. "
|
||||
"\n\n"
|
||||
"If you are creating a network WITHOUT a subnet, "
|
||||
"clear \"Create Subnet\" checkbox.")
|
||||
help_text = _('You can create a subnet associated with the new '
|
||||
'network, in which case "Network Address" must be '
|
||||
'specified. If you wish to create a network WITHOUT a '
|
||||
'subnet, uncheck the "Create Subnet" checkbox.')
|
||||
|
||||
def clean(self):
|
||||
cleaned_data = super(CreateSubnetInfoAction, self).clean()
|
||||
@ -110,7 +109,7 @@ class CreateNetwork(workflows.Workflow):
|
||||
slug = "create_network"
|
||||
name = _("Create Network")
|
||||
finalize_button_name = _("Create")
|
||||
success_message = _('Created new network "%s".')
|
||||
success_message = _('Created network "%s".')
|
||||
failure_message = _('Unable to create network "%s".')
|
||||
success_url = "horizon:nova:networks:index"
|
||||
default_steps = (CreateNetworkInfo,
|
||||
@ -127,10 +126,10 @@ class CreateNetwork(workflows.Workflow):
|
||||
name=data['net_name'])
|
||||
network.set_id_as_name_if_empty()
|
||||
self.context['net_id'] = network.id
|
||||
msg = _('Network %s was successfully created.') % network.name
|
||||
msg = _('Network "%s" was successfully created.') % network.name
|
||||
LOG.debug(msg)
|
||||
except:
|
||||
msg = _('Failed to create network %s') % data['net_name']
|
||||
msg = _('Failed to create network "%s".') % data['net_name']
|
||||
LOG.info(msg)
|
||||
redirect = reverse('horizon:nova:networks:index')
|
||||
exceptions.handle(request, msg, redirect=redirect)
|
||||
@ -140,7 +139,7 @@ class CreateNetwork(workflows.Workflow):
|
||||
if not data['with_subnet']:
|
||||
return True
|
||||
|
||||
# create the subnet
|
||||
# Create the subnet.
|
||||
try:
|
||||
params = {'network_id': network.id,
|
||||
'name': data['subnet_name'],
|
||||
@ -149,14 +148,14 @@ class CreateNetwork(workflows.Workflow):
|
||||
if data['gateway_ip']:
|
||||
params['gateway_ip'] = data['gateway_ip']
|
||||
api.quantum.subnet_create(request, **params)
|
||||
msg = _('Subnet %s was successfully created.') % data['cidr']
|
||||
msg = _('Subnet "%s" was successfully created.') % data['cidr']
|
||||
LOG.debug(msg)
|
||||
except Exception:
|
||||
msg = _('Failed to create subnet %s for network %s') % \
|
||||
(data['cidr'], network.id)
|
||||
LOG.info(msg)
|
||||
msg = _('Failed to create subnet "%(sub)s" for network "%(net)s".')
|
||||
redirect = reverse('horizon:nova:networks:index')
|
||||
exceptions.handle(request, msg, redirect=redirect)
|
||||
exceptions.handle(request,
|
||||
msg % {"sub": data['cidr'], "net": network.id},
|
||||
redirect=redirect)
|
||||
return False
|
||||
|
||||
return True
|
||||
|
File diff suppressed because it is too large
Load Diff
71
horizon/locale/en/LC_MESSAGES/djangojs.po
Normal file
71
horizon/locale/en/LC_MESSAGES/djangojs.po
Normal file
@ -0,0 +1,71 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:57
|
||||
msgid "Additional information here..."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:63
|
||||
#: static/horizon/js/horizon.projects.js:12
|
||||
msgid "Filter"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.instances.js:28
|
||||
msgid "There was a problem communicating with the server, please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:125
|
||||
msgid "There was an error submitting the form. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:159 static/horizon/js/horizon.tabs.js:9
|
||||
msgid "Loading"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:178
|
||||
msgid "An error occurred. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:9
|
||||
msgid "This project currently has no members."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:10
|
||||
msgid "No more available users to add."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:11
|
||||
msgid "No users found."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:52
|
||||
msgid "An error occurred while updating."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:130
|
||||
msgid "Confirm "
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:131
|
||||
msgid "Please confirm your selection. This action cannot be undone."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:145
|
||||
msgid "Working"
|
||||
msgstr ""
|
File diff suppressed because it is too large
Load Diff
72
horizon/locale/es/LC_MESSAGES/djangojs.po
Normal file
72
horizon/locale/es/LC_MESSAGES/djangojs.po
Normal file
@ -0,0 +1,72 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:57
|
||||
msgid "Additional information here..."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:63
|
||||
#: static/horizon/js/horizon.projects.js:12
|
||||
msgid "Filter"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.instances.js:28
|
||||
msgid "There was a problem communicating with the server, please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:125
|
||||
msgid "There was an error submitting the form. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:159 static/horizon/js/horizon.tabs.js:9
|
||||
msgid "Loading"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:178
|
||||
msgid "An error occurred. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:9
|
||||
msgid "This project currently has no members."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:10
|
||||
msgid "No more available users to add."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:11
|
||||
msgid "No users found."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:52
|
||||
msgid "An error occurred while updating."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:130
|
||||
msgid "Confirm "
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:131
|
||||
msgid "Please confirm your selection. This action cannot be undone."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:145
|
||||
msgid "Working"
|
||||
msgstr ""
|
File diff suppressed because it is too large
Load Diff
72
horizon/locale/fr/LC_MESSAGES/djangojs.po
Normal file
72
horizon/locale/fr/LC_MESSAGES/djangojs.po
Normal file
@ -0,0 +1,72 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1)\n"
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:57
|
||||
msgid "Additional information here..."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:63
|
||||
#: static/horizon/js/horizon.projects.js:12
|
||||
msgid "Filter"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.instances.js:28
|
||||
msgid "There was a problem communicating with the server, please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:125
|
||||
msgid "There was an error submitting the form. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:159 static/horizon/js/horizon.tabs.js:9
|
||||
msgid "Loading"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:178
|
||||
msgid "An error occurred. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:9
|
||||
msgid "This project currently has no members."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:10
|
||||
msgid "No more available users to add."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:11
|
||||
msgid "No users found."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:52
|
||||
msgid "An error occurred while updating."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:130
|
||||
msgid "Confirm "
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:131
|
||||
msgid "Please confirm your selection. This action cannot be undone."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:145
|
||||
msgid "Working"
|
||||
msgstr ""
|
File diff suppressed because it is too large
Load Diff
72
horizon/locale/ja/LC_MESSAGES/djangojs.po
Normal file
72
horizon/locale/ja/LC_MESSAGES/djangojs.po
Normal file
@ -0,0 +1,72 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0\n"
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:57
|
||||
msgid "Additional information here..."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:63
|
||||
#: static/horizon/js/horizon.projects.js:12
|
||||
msgid "Filter"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.instances.js:28
|
||||
msgid "There was a problem communicating with the server, please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:125
|
||||
msgid "There was an error submitting the form. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:159 static/horizon/js/horizon.tabs.js:9
|
||||
msgid "Loading"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:178
|
||||
msgid "An error occurred. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:9
|
||||
msgid "This project currently has no members."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:10
|
||||
msgid "No more available users to add."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:11
|
||||
msgid "No users found."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:52
|
||||
msgid "An error occurred while updating."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:130
|
||||
msgid "Confirm "
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:131
|
||||
msgid "Please confirm your selection. This action cannot be undone."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:145
|
||||
msgid "Working"
|
||||
msgstr ""
|
File diff suppressed because it is too large
Load Diff
73
horizon/locale/pl/LC_MESSAGES/djangojs.po
Normal file
73
horizon/locale/pl/LC_MESSAGES/djangojs.po
Normal file
@ -0,0 +1,73 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
|
||||
"|| n%100>=20) ? 1 : 2)\n"
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:57
|
||||
msgid "Additional information here..."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:63
|
||||
#: static/horizon/js/horizon.projects.js:12
|
||||
msgid "Filter"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.instances.js:28
|
||||
msgid "There was a problem communicating with the server, please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:125
|
||||
msgid "There was an error submitting the form. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:159 static/horizon/js/horizon.tabs.js:9
|
||||
msgid "Loading"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:178
|
||||
msgid "An error occurred. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:9
|
||||
msgid "This project currently has no members."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:10
|
||||
msgid "No more available users to add."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:11
|
||||
msgid "No users found."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:52
|
||||
msgid "An error occurred while updating."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:130
|
||||
msgid "Confirm "
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:131
|
||||
msgid "Please confirm your selection. This action cannot be undone."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:145
|
||||
msgid "Working"
|
||||
msgstr ""
|
File diff suppressed because it is too large
Load Diff
72
horizon/locale/pt/LC_MESSAGES/djangojs.po
Normal file
72
horizon/locale/pt/LC_MESSAGES/djangojs.po
Normal file
@ -0,0 +1,72 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:57
|
||||
msgid "Additional information here..."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:63
|
||||
#: static/horizon/js/horizon.projects.js:12
|
||||
msgid "Filter"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.instances.js:28
|
||||
msgid "There was a problem communicating with the server, please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:125
|
||||
msgid "There was an error submitting the form. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:159 static/horizon/js/horizon.tabs.js:9
|
||||
msgid "Loading"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:178
|
||||
msgid "An error occurred. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:9
|
||||
msgid "This project currently has no members."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:10
|
||||
msgid "No more available users to add."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:11
|
||||
msgid "No users found."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:52
|
||||
msgid "An error occurred while updating."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:130
|
||||
msgid "Confirm "
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:131
|
||||
msgid "Please confirm your selection. This action cannot be undone."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:145
|
||||
msgid "Working"
|
||||
msgstr ""
|
File diff suppressed because it is too large
Load Diff
72
horizon/locale/zh_CN/LC_MESSAGES/djangojs.po
Normal file
72
horizon/locale/zh_CN/LC_MESSAGES/djangojs.po
Normal file
@ -0,0 +1,72 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0\n"
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:57
|
||||
msgid "Additional information here..."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:63
|
||||
#: static/horizon/js/horizon.projects.js:12
|
||||
msgid "Filter"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.instances.js:28
|
||||
msgid "There was a problem communicating with the server, please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:125
|
||||
msgid "There was an error submitting the form. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:159 static/horizon/js/horizon.tabs.js:9
|
||||
msgid "Loading"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:178
|
||||
msgid "An error occurred. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:9
|
||||
msgid "This project currently has no members."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:10
|
||||
msgid "No more available users to add."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:11
|
||||
msgid "No users found."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:52
|
||||
msgid "An error occurred while updating."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:130
|
||||
msgid "Confirm "
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:131
|
||||
msgid "Please confirm your selection. This action cannot be undone."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:145
|
||||
msgid "Working"
|
||||
msgstr ""
|
File diff suppressed because it is too large
Load Diff
72
horizon/locale/zh_TW/LC_MESSAGES/djangojs.po
Normal file
72
horizon/locale/zh_TW/LC_MESSAGES/djangojs.po
Normal file
@ -0,0 +1,72 @@
|
||||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0\n"
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:57
|
||||
msgid "Additional information here..."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.forms.js:63
|
||||
#: static/horizon/js/horizon.projects.js:12
|
||||
msgid "Filter"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.instances.js:28
|
||||
msgid "There was a problem communicating with the server, please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:125
|
||||
msgid "There was an error submitting the form. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:159 static/horizon/js/horizon.tabs.js:9
|
||||
msgid "Loading"
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.modals.js:178
|
||||
msgid "An error occurred. Please try again."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:9
|
||||
msgid "This project currently has no members."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:10
|
||||
msgid "No more available users to add."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.projects.js:11
|
||||
msgid "No users found."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:52
|
||||
msgid "An error occurred while updating."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:130
|
||||
msgid "Confirm "
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:131
|
||||
msgid "Please confirm your selection. This action cannot be undone."
|
||||
msgstr ""
|
||||
|
||||
#: static/horizon/js/horizon.tables.js:145
|
||||
msgid "Working"
|
||||
msgstr ""
|
@ -28,7 +28,11 @@ urlpatterns = patterns('horizon.views',
|
||||
)
|
||||
|
||||
urlpatterns += patterns('',
|
||||
url(r'^i18n/setlang/$', 'django.views.i18n.set_language',
|
||||
url(r'^i18n/js/(?P<packages>\S+?)/$',
|
||||
'django.views.i18n.javascript_catalog',
|
||||
name='jsi18n'),
|
||||
url(r'^i18n/setlang/$',
|
||||
'django.views.i18n.set_language',
|
||||
name="set_language"),
|
||||
url(r'^i18n/', include('django.conf.urls.i18n'))
|
||||
)
|
||||
|
@ -50,6 +50,22 @@ horizon.forms.prevent_multiple_submission = function (el) {
|
||||
});
|
||||
};
|
||||
|
||||
horizon.forms.init_examples = function (el) {
|
||||
var $el = $(el);
|
||||
|
||||
// Generic examples.
|
||||
$el.find("#id_description").example(gettext("Additional information here..."));
|
||||
|
||||
// Update/create image form.
|
||||
$el.find("#create_image_form input#id_copy_from").example("http://example.com/image.iso");
|
||||
|
||||
// Table search box.
|
||||
$el.find(".table_search input").example(gettext("Filter"));
|
||||
|
||||
// Volume attachment form.
|
||||
$el.find("#attach_volume_form #id_device").example("/dev/vdc/");
|
||||
};
|
||||
|
||||
horizon.addInitFunction(function () {
|
||||
horizon.forms.prevent_multiple_submission($('body'));
|
||||
horizon.modals.addModalInitFunction(horizon.forms.prevent_multiple_submission);
|
||||
@ -57,6 +73,9 @@ horizon.addInitFunction(function () {
|
||||
horizon.forms.bind_add_item_handlers($("body"));
|
||||
horizon.modals.addModalInitFunction(horizon.forms.bind_add_item_handlers);
|
||||
|
||||
horizon.forms.init_examples($("body"));
|
||||
horizon.modals.addModalInitFunction(horizon.forms.init_examples);
|
||||
|
||||
horizon.forms.handle_source_group();
|
||||
horizon.forms.handle_snapshot_source();
|
||||
|
||||
@ -112,45 +131,4 @@ horizon.addInitFunction(function () {
|
||||
});
|
||||
// Hide the help text for js-capable browsers
|
||||
$('span.help-block').hide();
|
||||
|
||||
|
||||
/* Form examples */
|
||||
|
||||
// Update/create image form.
|
||||
$("#image_form input#id_name").example("ami-ubuntu");
|
||||
$("#image_form input#id_kernel").example("123");
|
||||
$("#image_form input#id_ramdisk").example("123");
|
||||
$("#image_form input#id_state").example("available");
|
||||
$("#image_form input#id_location").example("file:///var/lib/glance/images/123");
|
||||
$("#image_form input#id_architecture").example("x86_64");
|
||||
$("#image_form input#id_project_id").example("some");
|
||||
$("#image_form input#id_disk_format").example("ari");
|
||||
$("#image_form input#id_container_format").example("ari");
|
||||
$("#image_form input#id_ramdisk").example("123");
|
||||
|
||||
// Launch instance form.
|
||||
$("#launch_img input#id_name").example("YetAnotherInstance");
|
||||
$("#launch_img input#id_security_groups").example("group1,group2");
|
||||
|
||||
// Create flavor form.
|
||||
$("#flavor_form input#id_flavorid").example("1234");
|
||||
$("#flavor_form input#id_name").example("small");
|
||||
$("#flavor_form input#id_vcpus").example("256");
|
||||
$("#flavor_form input#id_memory_mb").example("256");
|
||||
$("#flavor_form input#id_disk_gb").example("256");
|
||||
|
||||
// Update/create tenant.
|
||||
$("#tenant_form input#id__id").example("YetAnotherTenant");
|
||||
$("#tenant_form textarea#id_description").example("One or two sentence description.");
|
||||
|
||||
// Update/create tenant.
|
||||
$("#user_form input#id_id").example("username");
|
||||
$("#user_form input#id_email").example("email@example.com");
|
||||
$("#user_form input#id_password").example("password");
|
||||
|
||||
// Table search box.
|
||||
$(".table_search input").example("Filter");
|
||||
|
||||
// Volume attachment form.
|
||||
$("#attach_volume_form #id_device").example("/dev/vdc/");
|
||||
});
|
||||
|
@ -25,7 +25,7 @@ horizon.instances = {
|
||||
error: function(response) {
|
||||
if(via_user_submit) {
|
||||
horizon.clearErrorMessages();
|
||||
horizon.alert('error', 'There was a problem communicating with the server, please try again.');
|
||||
horizon.alert('error', gettext('There was a problem communicating with the server, please try again.'));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
@ -122,7 +122,7 @@ horizon.addInitFunction(function() {
|
||||
},
|
||||
error: function (jqXHR, status, errorThrown) {
|
||||
$form.closest(".modal").modal("hide");
|
||||
horizon.alert("error", "There was an error submitting the form. Please try again.");
|
||||
horizon.alert("error", gettext("There was an error submitting the form. Please try again."));
|
||||
}
|
||||
});
|
||||
});
|
||||
@ -156,7 +156,7 @@ horizon.addInitFunction(function() {
|
||||
|
||||
horizon.modals._request = $.ajax($this.attr('href'), {
|
||||
beforeSend: function () {
|
||||
horizon.modals.modal_spinner("Loading");
|
||||
horizon.modals.modal_spinner(gettext("Loading"));
|
||||
},
|
||||
complete: function () {
|
||||
// Clear the global storage;
|
||||
@ -175,7 +175,7 @@ horizon.addInitFunction(function() {
|
||||
else {
|
||||
if (!horizon.ajax.get_messages(jqXHR)) {
|
||||
// Generic error handler. Really generic.
|
||||
horizon.alert("error", "An error occurred. Please try again.");
|
||||
horizon.alert("error", gettext("An error occurred. Please try again."));
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -6,11 +6,10 @@ horizon.projects = {
|
||||
roles: [],
|
||||
default_role_id: "",
|
||||
workflow_loaded: false,
|
||||
no_project_members: 'This project currently has no members.',
|
||||
no_available_users: 'No more available users to add.',
|
||||
no_filter_results: 'No users found.',
|
||||
filter_btn_text: 'Filter',
|
||||
|
||||
no_project_members: gettext('This project currently has no members.'),
|
||||
no_available_users: gettext('No more available users to add.'),
|
||||
no_filter_results: gettext('No users found.'),
|
||||
filter_btn_text: gettext('Filter'),
|
||||
|
||||
/* Parses the form field selector's ID to get either the
|
||||
* role or user id (i.e. returns "id12345" when
|
||||
@ -20,7 +19,6 @@ horizon.projects = {
|
||||
return id_string.slice(id_string.lastIndexOf("_") + 1);
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Gets the html select element associated with a given
|
||||
* role id for role_id.
|
||||
@ -29,7 +27,6 @@ horizon.projects = {
|
||||
return $('select[id^="id_role_' + role_id + '"]');
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Initializes all of the horizon.projects lists with
|
||||
* data parsed from the hidden form fields, as well as the
|
||||
@ -42,7 +39,6 @@ horizon.projects = {
|
||||
horizon.projects.init_current_membership();
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Initializes an associative array mapping user ids to user names.
|
||||
**/
|
||||
@ -52,7 +48,6 @@ horizon.projects = {
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Initializes an associative array mapping role ids to role names.
|
||||
**/
|
||||
@ -63,7 +58,6 @@ horizon.projects = {
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Initializes an associative array of lists of the current
|
||||
* members for each available role.
|
||||
@ -88,13 +82,12 @@ horizon.projects = {
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Checks to see whether a user is a member of the current project.
|
||||
* If they are, returns the id of their primary role.
|
||||
**/
|
||||
is_project_member: function(user_id) {
|
||||
for (role in horizon.projects.current_membership) {
|
||||
for (var role in horizon.projects.current_membership) {
|
||||
if ($.inArray(user_id, horizon.projects.current_membership[role]) >= 0) {
|
||||
return role;
|
||||
}
|
||||
@ -102,7 +95,6 @@ horizon.projects = {
|
||||
return false;
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Updates the selected values on the role_list's form field, as
|
||||
* well as the current_membership dictionary's list.
|
||||
@ -114,7 +106,6 @@ horizon.projects = {
|
||||
horizon.projects.current_membership[role_id] = new_list;
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Helper function for remove_user_from_role.
|
||||
**/
|
||||
@ -127,36 +118,34 @@ horizon.projects = {
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Searches through the role lists and removes a given user
|
||||
* from the lists.
|
||||
**/
|
||||
remove_user_from_role: function(user_id, role_id) {
|
||||
var role_list;
|
||||
if (role_id) {
|
||||
var role_list = horizon.projects.current_membership[role_id];
|
||||
horizon.projects.remove_user(user_id, role_id, role_list)
|
||||
role_list = horizon.projects.current_membership[role_id];
|
||||
horizon.projects.remove_user(user_id, role_id, role_list);
|
||||
}
|
||||
else {
|
||||
// search for membership in role lists
|
||||
for (var role in horizon.projects.current_membership) {
|
||||
var role_list = horizon.projects.current_membership[role];
|
||||
horizon.projects.remove_user(user_id, role, role_list)
|
||||
role_list = horizon.projects.current_membership[role];
|
||||
horizon.projects.remove_user(user_id, role, role_list);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Adds a given user to a given role list.
|
||||
**/
|
||||
add_user_to_role: function(user_id, role_id) {
|
||||
var role_list = horizon.projects.current_membership[role_id];
|
||||
role_list.push(user_id);
|
||||
horizon.projects.update_role_lists(role_id, role_list)
|
||||
horizon.projects.update_role_lists(role_id, role_list);
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Generates the HTML structure for a user that will be displayed
|
||||
* as a list item in the project member list.
|
||||
@ -191,6 +180,7 @@ horizon.projects = {
|
||||
* Generates the HTML structure for the project membership UI.
|
||||
**/
|
||||
generate_html: function() {
|
||||
var user;
|
||||
for (user in horizon.projects.users) {
|
||||
var user_id = user;
|
||||
var user_name = horizon.projects.users[user];
|
||||
@ -198,7 +188,7 @@ horizon.projects = {
|
||||
if (role_id) {
|
||||
$(".project_members").append(this.generate_user_element(user_name, user_id, "-"));
|
||||
var $selected_role = $("li[data-user-id$='" + user_id + "']").siblings('.dropdown').children('.dropdown-toggle').children('span');
|
||||
horizon.projects.set_selected_role($selected_role, role_id)
|
||||
horizon.projects.set_selected_role($selected_role, role_id);
|
||||
}
|
||||
else {
|
||||
$(".available_users").append(this.generate_user_element(user_name, user_id, "+"));
|
||||
@ -207,14 +197,13 @@ horizon.projects = {
|
||||
horizon.projects.detect_no_results();
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Triggers on click of link to add/remove member from the project.
|
||||
**/
|
||||
update_membership: function() {
|
||||
$(".available_users, .project_members").on('click', ".btn-group a[href='#add_remove']", function (evt) {
|
||||
var available = $(".available_users").has($(this)).length;
|
||||
var user_id = horizon.projects.get_field_id($(this).parent().siblings().attr('data-user-id'))
|
||||
var user_id = horizon.projects.get_field_id($(this).parent().siblings().attr('data-user-id'));
|
||||
|
||||
if (available) {
|
||||
$(this).text("-");
|
||||
@ -232,7 +221,7 @@ horizon.projects = {
|
||||
|
||||
// set the selection back to default role
|
||||
var $selected_role = $(this).parent().siblings('.dropdown').children('.dropdown-toggle').children('.selected_role');
|
||||
horizon.projects.set_selected_role($selected_role, horizon.projects.default_role_id)
|
||||
horizon.projects.set_selected_role($selected_role, horizon.projects.default_role_id);
|
||||
}
|
||||
|
||||
// update lists
|
||||
@ -244,21 +233,21 @@ horizon.projects = {
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Detects whether each list has members and if it does not
|
||||
* displays a message to the user.
|
||||
**/
|
||||
detect_no_results: function () {
|
||||
$('.filterable').each( function () {
|
||||
var filter = $(this).find('ul').attr('class');
|
||||
var filter = $(this).find('ul').attr('class'),
|
||||
text;
|
||||
if (filter == 'project_members')
|
||||
var text = horizon.projects.no_project_members;
|
||||
text = horizon.projects.no_project_members;
|
||||
else
|
||||
var text = horizon.projects.no_available_users;
|
||||
text = horizon.projects.no_available_users;
|
||||
|
||||
if ($('.' + filter).children('ul').length == 0) {
|
||||
$('#no_' + filter).text(text)
|
||||
if (!$('.' + filter).children('ul').length) {
|
||||
$('#no_' + filter).text(text);
|
||||
$('#no_' + filter).show();
|
||||
$("input[id='" + filter + "']").attr('disabled', 'disabled');
|
||||
}
|
||||
@ -269,14 +258,13 @@ horizon.projects = {
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Triggers on selection of new role for a member.
|
||||
**/
|
||||
select_member_role: function() {
|
||||
$(".available_users, .project_members").on('click', '.role_dropdown li', function (evt) {
|
||||
var $selected_el = $(this).parent().prev().children('.selected_role');
|
||||
$selected_el.text($(this).text())
|
||||
$selected_el.text($(this).text());
|
||||
|
||||
// get the newly selected role and the member's name
|
||||
var new_role_id = $(this).attr("data-role-id");
|
||||
@ -285,11 +273,10 @@ horizon.projects = {
|
||||
|
||||
// update role lists
|
||||
horizon.projects.remove_user_from_role(user_id, $selected_el.attr('data-role-id'));
|
||||
horizon.projects.add_user_to_role(user_id, new_role_id)
|
||||
horizon.projects.add_user_to_role(user_id, new_role_id);
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Triggers on the addition of a new user via the inline object creation field.
|
||||
**/
|
||||
@ -302,7 +289,7 @@ horizon.projects = {
|
||||
|
||||
// add the user to the hidden role lists and the users list
|
||||
horizon.projects.users[user_id] = user_name;
|
||||
$("select[multiple='multiple']").append("<option value='" + user_id + "'>" + horizon.projects.users[user_id] + "</option>")
|
||||
$("select[multiple='multiple']").append("<option value='" + user_id + "'>" + horizon.projects.users[user_id] + "</option>");
|
||||
horizon.projects.add_user_to_role(user_id, horizon.projects.default_role_id);
|
||||
|
||||
// remove option from hidden select
|
||||
@ -314,12 +301,11 @@ horizon.projects = {
|
||||
$("input.filter").val(horizon.projects.filter_btn_text);
|
||||
|
||||
// fix styling
|
||||
$(".project_members .btn-group").css('border-bottom','none')
|
||||
$(".project_members .btn-group:last").css('border-bottom','1px solid #ddd')
|
||||
$(".project_members .btn-group").css('border-bottom','none');
|
||||
$(".project_members .btn-group:last").css('border-bottom','1px solid #ddd');
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Style the inline object creation button, hide the associated field.
|
||||
**/
|
||||
@ -331,7 +317,6 @@ horizon.projects = {
|
||||
$(add_user_el).find("label, .input").addClass("add_user_btn");
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Fixes the striping of the fake table upon modification of the lists.
|
||||
**/
|
||||
@ -362,7 +347,6 @@ horizon.projects = {
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Sets up filtering for each list of users.
|
||||
**/
|
||||
@ -415,7 +399,6 @@ horizon.projects = {
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
/*
|
||||
* Calls set-up functions upon loading the workflow.
|
||||
**/
|
||||
@ -455,10 +438,8 @@ horizon.projects = {
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
|
||||
horizon.addInitFunction(function() {
|
||||
$('.btn').on('click', function (evt) {
|
||||
horizon.projects.workflow_loaded = false;
|
||||
|
@ -49,7 +49,7 @@ horizon.datatables = {
|
||||
break;
|
||||
default:
|
||||
if (horizon.conf.debug) {
|
||||
horizon.alert("error", "An error occurred while updating.");
|
||||
horizon.alert("error", gettext("An error occurred while updating."));
|
||||
}
|
||||
$row.removeClass("ajax-update");
|
||||
$row.find("i.ajax-updating").remove();
|
||||
@ -127,8 +127,8 @@ horizon.datatables.confirm = function (action) {
|
||||
return;
|
||||
}
|
||||
action_string = $action.text();
|
||||
title = "Confirm " + action_string;
|
||||
body = "Please confirm your selection. This action cannot be undone.";
|
||||
title = gettext("Confirm ") + action_string;
|
||||
body = gettext("Please confirm your selection. This action cannot be undone.");
|
||||
modal = horizon.modals.create(title, body, action_string);
|
||||
modal.modal();
|
||||
if($modal_parent.length) {
|
||||
@ -142,7 +142,7 @@ horizon.datatables.confirm = function (action) {
|
||||
form.append("<input type='hidden' name='" + $action.attr('name') + "' value='" + $action.attr('value') + "'/>");
|
||||
form.submit();
|
||||
modal.modal('hide');
|
||||
horizon.modals.modal_spinner("Working");
|
||||
horizon.modals.modal_spinner(gettext("Working"));
|
||||
return false;
|
||||
});
|
||||
return modal;
|
||||
|
@ -6,7 +6,7 @@ horizon.tabs.load_tab = function (evt) {
|
||||
tab_pane = $(tab_id);
|
||||
|
||||
// FIXME(gabriel): This style mucking shouldn't be in the javascript.
|
||||
tab_pane.append("<span style='margin-left: 30px;'>loading…</span>");
|
||||
tab_pane.append("<span style='margin-left: 30px;'>" + gettext("Loading") + "…</span>");
|
||||
tab_pane.spin(horizon.conf.spinner_options.inline);
|
||||
$(tab_pane.data().spinner.el).css('top', '9px');
|
||||
$(tab_pane.data().spinner.el).css('left', '15px');
|
||||
|
@ -1,5 +1,8 @@
|
||||
{% load compress %}
|
||||
|
||||
{% comment %} Django's JavaScript i18n Implementation {% endcomment %}
|
||||
<script type="text/javascript" src="{% url horizon:jsi18n 'horizon' %}"></script>
|
||||
|
||||
{% compress js %}
|
||||
{% comment %} jQuery and Plugins {% endcomment %}
|
||||
<script src='{{ STATIC_URL }}horizon/lib/jquery/jquery.min.js' type='text/javascript' charset="utf-8"></script>
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-07-09 02:29+0000\n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -17,39 +17,39 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: settings.py:136
|
||||
#: settings.py:141
|
||||
msgid "English"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:137
|
||||
#: settings.py:142
|
||||
msgid "Italiano"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:138
|
||||
#: settings.py:143
|
||||
msgid "Spanish"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:139
|
||||
#: settings.py:144
|
||||
msgid "French"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:140
|
||||
#: settings.py:145
|
||||
msgid "Japanese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:141
|
||||
#: settings.py:146
|
||||
msgid "Portuguese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:142
|
||||
#: settings.py:147
|
||||
msgid "Polish"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:143
|
||||
#: settings.py:148
|
||||
msgid "Simplified Chinese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:144
|
||||
#: settings.py:149
|
||||
msgid "Traditional Chinese"
|
||||
msgstr ""
|
||||
|
||||
@ -86,27 +86,3 @@ msgid ""
|
||||
"An unexpected error occurred while processing your request. Please try your "
|
||||
"request again."
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:3
|
||||
msgid "Logged in as"
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:4
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:5
|
||||
msgid "Sign Out"
|
||||
msgstr ""
|
||||
|
||||
#: templates/splash.html:7 templates/auth/login.html:4
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:4
|
||||
msgid "Log In"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:17
|
||||
msgid "Sign In"
|
||||
msgstr ""
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-07-09 02:29+0000\n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -18,39 +18,39 @@ msgstr ""
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: settings.py:136
|
||||
#: settings.py:141
|
||||
msgid "English"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:137
|
||||
#: settings.py:142
|
||||
msgid "Italiano"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:138
|
||||
#: settings.py:143
|
||||
msgid "Spanish"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:139
|
||||
#: settings.py:144
|
||||
msgid "French"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:140
|
||||
#: settings.py:145
|
||||
msgid "Japanese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:141
|
||||
#: settings.py:146
|
||||
msgid "Portuguese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:142
|
||||
#: settings.py:147
|
||||
msgid "Polish"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:143
|
||||
#: settings.py:148
|
||||
msgid "Simplified Chinese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:144
|
||||
#: settings.py:149
|
||||
msgid "Traditional Chinese"
|
||||
msgstr ""
|
||||
|
||||
@ -87,27 +87,3 @@ msgid ""
|
||||
"An unexpected error occurred while processing your request. Please try your "
|
||||
"request again."
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:3
|
||||
msgid "Logged in as"
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:4
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:5
|
||||
msgid "Sign Out"
|
||||
msgstr ""
|
||||
|
||||
#: templates/splash.html:7 templates/auth/login.html:4
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:4
|
||||
msgid "Log In"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:17
|
||||
msgid "Sign In"
|
||||
msgstr ""
|
||||
|
@ -6,7 +6,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openstack-dashboard\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-07-09 02:29+0000\n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: 2012-05-08 00:20+0100\n"
|
||||
"Last-Translator: Erwan Gallen <erwan@zinux.com>\n"
|
||||
"Language-Team: French <fr@zinux.com>\n"
|
||||
@ -16,39 +16,39 @@ msgstr ""
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1)\n"
|
||||
|
||||
#: settings.py:136
|
||||
#: settings.py:141
|
||||
msgid "English"
|
||||
msgstr "Anglais"
|
||||
|
||||
#: settings.py:137
|
||||
#: settings.py:142
|
||||
msgid "Italiano"
|
||||
msgstr "Italien"
|
||||
|
||||
#: settings.py:138
|
||||
#: settings.py:143
|
||||
msgid "Spanish"
|
||||
msgstr "Espagnol"
|
||||
|
||||
#: settings.py:139
|
||||
#: settings.py:144
|
||||
msgid "French"
|
||||
msgstr "Français"
|
||||
|
||||
#: settings.py:140
|
||||
#: settings.py:145
|
||||
msgid "Japanese"
|
||||
msgstr "Japonais"
|
||||
|
||||
#: settings.py:141
|
||||
#: settings.py:146
|
||||
msgid "Portuguese"
|
||||
msgstr "Portugais"
|
||||
|
||||
#: settings.py:142
|
||||
#: settings.py:147
|
||||
msgid "Polish"
|
||||
msgstr "Polonais"
|
||||
|
||||
#: settings.py:143
|
||||
#: settings.py:148
|
||||
msgid "Simplified Chinese"
|
||||
msgstr "Chinois simplifié"
|
||||
|
||||
#: settings.py:144
|
||||
#: settings.py:149
|
||||
msgid "Traditional Chinese"
|
||||
msgstr "Chinois traditionnel"
|
||||
|
||||
@ -88,28 +88,3 @@ msgid ""
|
||||
msgstr ""
|
||||
"Une erreur inattendue s'est produite lors du traitement de votre demande. "
|
||||
"Veuillez essayer à nouveau votre demande."
|
||||
|
||||
#: templates/_header.html:3
|
||||
msgid "Logged in as"
|
||||
msgstr "Connecté"
|
||||
|
||||
#: templates/_header.html:4
|
||||
msgid "Settings"
|
||||
msgstr "Réglages"
|
||||
|
||||
#: templates/_header.html:5
|
||||
msgid "Sign Out"
|
||||
msgstr "Déconnexion"
|
||||
|
||||
#: templates/splash.html:7 templates/auth/login.html:4
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:4
|
||||
msgid "Log In"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:17
|
||||
#, fuzzy
|
||||
msgid "Sign In"
|
||||
msgstr "Déconnexion"
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-07-09 02:29+0000\n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -18,39 +18,39 @@ msgstr ""
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0\n"
|
||||
|
||||
#: settings.py:136
|
||||
#: settings.py:141
|
||||
msgid "English"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:137
|
||||
#: settings.py:142
|
||||
msgid "Italiano"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:138
|
||||
#: settings.py:143
|
||||
msgid "Spanish"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:139
|
||||
#: settings.py:144
|
||||
msgid "French"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:140
|
||||
#: settings.py:145
|
||||
msgid "Japanese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:141
|
||||
#: settings.py:146
|
||||
msgid "Portuguese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:142
|
||||
#: settings.py:147
|
||||
msgid "Polish"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:143
|
||||
#: settings.py:148
|
||||
msgid "Simplified Chinese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:144
|
||||
#: settings.py:149
|
||||
msgid "Traditional Chinese"
|
||||
msgstr ""
|
||||
|
||||
@ -87,27 +87,3 @@ msgid ""
|
||||
"An unexpected error occurred while processing your request. Please try your "
|
||||
"request again."
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:3
|
||||
msgid "Logged in as"
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:4
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:5
|
||||
msgid "Sign Out"
|
||||
msgstr ""
|
||||
|
||||
#: templates/splash.html:7 templates/auth/login.html:4
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:4
|
||||
msgid "Log In"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:17
|
||||
msgid "Sign In"
|
||||
msgstr ""
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-07-09 02:29+0000\n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -19,39 +19,39 @@ msgstr ""
|
||||
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
|
||||
"|| n%100>=20) ? 1 : 2)\n"
|
||||
|
||||
#: settings.py:136
|
||||
#: settings.py:141
|
||||
msgid "English"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:137
|
||||
#: settings.py:142
|
||||
msgid "Italiano"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:138
|
||||
#: settings.py:143
|
||||
msgid "Spanish"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:139
|
||||
#: settings.py:144
|
||||
msgid "French"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:140
|
||||
#: settings.py:145
|
||||
msgid "Japanese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:141
|
||||
#: settings.py:146
|
||||
msgid "Portuguese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:142
|
||||
#: settings.py:147
|
||||
msgid "Polish"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:143
|
||||
#: settings.py:148
|
||||
msgid "Simplified Chinese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:144
|
||||
#: settings.py:149
|
||||
msgid "Traditional Chinese"
|
||||
msgstr ""
|
||||
|
||||
@ -88,27 +88,3 @@ msgid ""
|
||||
"An unexpected error occurred while processing your request. Please try your "
|
||||
"request again."
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:3
|
||||
msgid "Logged in as"
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:4
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:5
|
||||
msgid "Sign Out"
|
||||
msgstr ""
|
||||
|
||||
#: templates/splash.html:7 templates/auth/login.html:4
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:4
|
||||
msgid "Log In"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:17
|
||||
msgid "Sign In"
|
||||
msgstr ""
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-07-09 02:29+0000\n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -18,39 +18,39 @@ msgstr ""
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
|
||||
|
||||
#: settings.py:136
|
||||
#: settings.py:141
|
||||
msgid "English"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:137
|
||||
#: settings.py:142
|
||||
msgid "Italiano"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:138
|
||||
#: settings.py:143
|
||||
msgid "Spanish"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:139
|
||||
#: settings.py:144
|
||||
msgid "French"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:140
|
||||
#: settings.py:145
|
||||
msgid "Japanese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:141
|
||||
#: settings.py:146
|
||||
msgid "Portuguese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:142
|
||||
#: settings.py:147
|
||||
msgid "Polish"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:143
|
||||
#: settings.py:148
|
||||
msgid "Simplified Chinese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:144
|
||||
#: settings.py:149
|
||||
msgid "Traditional Chinese"
|
||||
msgstr ""
|
||||
|
||||
@ -87,27 +87,3 @@ msgid ""
|
||||
"An unexpected error occurred while processing your request. Please try your "
|
||||
"request again."
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:3
|
||||
msgid "Logged in as"
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:4
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:5
|
||||
msgid "Sign Out"
|
||||
msgstr ""
|
||||
|
||||
#: templates/splash.html:7 templates/auth/login.html:4
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:4
|
||||
msgid "Log In"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:17
|
||||
msgid "Sign In"
|
||||
msgstr ""
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-07-09 02:29+0000\n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -17,39 +17,39 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: settings.py:136
|
||||
#: settings.py:141
|
||||
msgid "English"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:137
|
||||
#: settings.py:142
|
||||
msgid "Italiano"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:138
|
||||
#: settings.py:143
|
||||
msgid "Spanish"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:139
|
||||
#: settings.py:144
|
||||
msgid "French"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:140
|
||||
#: settings.py:145
|
||||
msgid "Japanese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:141
|
||||
#: settings.py:146
|
||||
msgid "Portuguese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:142
|
||||
#: settings.py:147
|
||||
msgid "Polish"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:143
|
||||
#: settings.py:148
|
||||
msgid "Simplified Chinese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:144
|
||||
#: settings.py:149
|
||||
msgid "Traditional Chinese"
|
||||
msgstr ""
|
||||
|
||||
@ -86,27 +86,3 @@ msgid ""
|
||||
"An unexpected error occurred while processing your request. Please try your "
|
||||
"request again."
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:3
|
||||
msgid "Logged in as"
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:4
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
#: templates/_header.html:5
|
||||
msgid "Sign Out"
|
||||
msgstr ""
|
||||
|
||||
#: templates/splash.html:7 templates/auth/login.html:4
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:4
|
||||
msgid "Log In"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:17
|
||||
msgid "Sign In"
|
||||
msgstr ""
|
||||
|
@ -8,7 +8,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2012-07-09 02:29+0000\n"
|
||||
"POT-Creation-Date: 2012-08-12 21:48+0000\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
@ -17,39 +17,39 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: settings.py:136
|
||||
#: settings.py:141
|
||||
msgid "English"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:137
|
||||
#: settings.py:142
|
||||
msgid "Italiano"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:138
|
||||
#: settings.py:143
|
||||
msgid "Spanish"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:139
|
||||
#: settings.py:144
|
||||
msgid "French"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:140
|
||||
#: settings.py:145
|
||||
msgid "Japanese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:141
|
||||
#: settings.py:146
|
||||
msgid "Portuguese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:142
|
||||
#: settings.py:147
|
||||
msgid "Polish"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:143
|
||||
#: settings.py:148
|
||||
msgid "Simplified Chinese"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:144
|
||||
#: settings.py:149
|
||||
msgid "Traditional Chinese"
|
||||
msgstr ""
|
||||
|
||||
@ -86,27 +86,3 @@ msgid ""
|
||||
"An unexpected error occurred while processing your request. Please try your "
|
||||
"request again."
|
||||
msgstr "處理過程中發生無法預期的錯誤。請再嘗試。"
|
||||
|
||||
#: templates/_header.html:3
|
||||
msgid "Logged in as"
|
||||
msgstr "目前登入者"
|
||||
|
||||
#: templates/_header.html:4
|
||||
msgid "Settings"
|
||||
msgstr "設定"
|
||||
|
||||
#: templates/_header.html:5
|
||||
msgid "Sign Out"
|
||||
msgstr "登出"
|
||||
|
||||
#: templates/splash.html:7 templates/auth/login.html:4
|
||||
msgid "Login"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:4
|
||||
msgid "Log In"
|
||||
msgstr ""
|
||||
|
||||
#: templates/auth/_login.html:17
|
||||
msgid "Sign In"
|
||||
msgstr "登入"
|
||||
|
10
run_tests.sh
10
run_tests.sh
@ -301,13 +301,15 @@ function run_tests {
|
||||
|
||||
function run_makemessages {
|
||||
cd horizon
|
||||
${command_wrapper} $root/manage.py makemessages --all
|
||||
HORIZON_RESULT=$?
|
||||
${command_wrapper} $root/manage.py makemessages --all --no-obsolete
|
||||
HORIZON_PY_RESULT=$?
|
||||
${command_wrapper} $root/manage.py makemessages -d djangojs --all --no-obsolete
|
||||
HORIZON_JS_RESULT=$?
|
||||
cd ../openstack_dashboard
|
||||
${command_wrapper} $root/manage.py makemessages --all
|
||||
${command_wrapper} $root/manage.py makemessages --all --no-obsolete
|
||||
DASHBOARD_RESULT=$?
|
||||
cd ..
|
||||
exit $(($HORIZON_RESULT || $DASHBOARD_RESULT))
|
||||
exit $(($HORIZON_PY_RESULT || $HORIZON_JS_RESULT || $DASHBOARD_RESULT))
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user