From ee17b1588ba265666ef716401ab39f53e4a9464e Mon Sep 17 00:00:00 2001 From: Gabriel Hurley Date: Sun, 12 Aug 2012 14:48:51 -0700 Subject: [PATCH] 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 --- horizon/dashboards/nova/networks/workflows.py | 27 +- horizon/locale/en/LC_MESSAGES/django.po | 1766 +++++++++++----- horizon/locale/en/LC_MESSAGES/djangojs.po | 71 + horizon/locale/es/LC_MESSAGES/django.po | 1766 +++++++++++----- horizon/locale/es/LC_MESSAGES/djangojs.po | 72 + horizon/locale/fr/LC_MESSAGES/django.po | 1861 ++++++++++++----- horizon/locale/fr/LC_MESSAGES/djangojs.po | 72 + horizon/locale/ja/LC_MESSAGES/django.po | 1846 +++++++++++----- horizon/locale/ja/LC_MESSAGES/djangojs.po | 72 + horizon/locale/pl/LC_MESSAGES/django.po | 1845 +++++++++++----- horizon/locale/pl/LC_MESSAGES/djangojs.po | 73 + horizon/locale/pt/LC_MESSAGES/django.po | 1771 +++++++++++----- horizon/locale/pt/LC_MESSAGES/djangojs.po | 72 + horizon/locale/zh_CN/LC_MESSAGES/django.po | 1855 +++++++++++----- horizon/locale/zh_CN/LC_MESSAGES/djangojs.po | 72 + horizon/locale/zh_TW/LC_MESSAGES/django.po | 1858 +++++++++++----- horizon/locale/zh_TW/LC_MESSAGES/djangojs.po | 72 + horizon/site_urls.py | 6 +- horizon/static/horizon/js/horizon.forms.js | 60 +- .../static/horizon/js/horizon.instances.js | 2 +- horizon/static/horizon/js/horizon.modals.js | 6 +- horizon/static/horizon/js/horizon.projects.js | 71 +- horizon/static/horizon/js/horizon.tables.js | 8 +- horizon/static/horizon/js/horizon.tabs.js | 2 +- horizon/templates/horizon/_scripts.html | 3 + .../locale/en/LC_MESSAGES/django.po | 44 +- .../locale/es/LC_MESSAGES/django.po | 44 +- .../locale/fr/LC_MESSAGES/django.po | 45 +- .../locale/ja/LC_MESSAGES/django.po | 44 +- .../locale/pl/LC_MESSAGES/django.po | 44 +- .../locale/pt/LC_MESSAGES/django.po | 44 +- .../locale/zh_CN/LC_MESSAGES/django.po | 44 +- .../locale/zh_TW/LC_MESSAGES/django.po | 44 +- run_tests.sh | 10 +- 34 files changed, 11181 insertions(+), 4511 deletions(-) create mode 100644 horizon/locale/en/LC_MESSAGES/djangojs.po create mode 100644 horizon/locale/es/LC_MESSAGES/djangojs.po create mode 100644 horizon/locale/fr/LC_MESSAGES/djangojs.po create mode 100644 horizon/locale/ja/LC_MESSAGES/djangojs.po create mode 100644 horizon/locale/pl/LC_MESSAGES/djangojs.po create mode 100644 horizon/locale/pt/LC_MESSAGES/djangojs.po create mode 100644 horizon/locale/zh_CN/LC_MESSAGES/djangojs.po create mode 100644 horizon/locale/zh_TW/LC_MESSAGES/djangojs.po diff --git a/horizon/dashboards/nova/networks/workflows.py b/horizon/dashboards/nova/networks/workflows.py index 1837694ba..82a6f8e23 100644 --- a/horizon/dashboards/nova/networks/workflows.py +++ b/horizon/dashboards/nova/networks/workflows.py @@ -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 diff --git a/horizon/locale/en/LC_MESSAGES/django.po b/horizon/locale/en/LC_MESSAGES/django.po index 5a5d69efd..4438e34c5 100644 --- a/horizon/locale/en/LC_MESSAGES/django.po +++ b/horizon/locale/en/LC_MESSAGES/django.po @@ -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:47+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -30,7 +30,7 @@ msgstr "" msgid "You are not authorized to access %s" msgstr "" -#: exceptions.py:299 +#: exceptions.py:270 msgid "Unauthorized. Please try logging in again." msgstr "" @@ -39,21 +39,21 @@ msgstr "" msgid "%(type)s (%(backend)s backend)" msgstr "" -#: api/nova.py:185 +#: api/nova.py:186 #, python-format msgid "ALLOW %(from)s:%(to)s from %(group)s" msgstr "" -#: api/nova.py:190 +#: api/nova.py:191 #, python-format msgid "ALLOW %(from)s:%(to)s from %(cidr)s" msgstr "" -#: api/nova.py:502 +#: api/nova.py:514 msgid "Unknown instance" msgstr "" -#: api/swift.py:155 +#: api/swift.py:154 msgid "Unicode is not currently supported for object copy." msgstr "" @@ -61,51 +61,52 @@ msgstr "" msgid "Manage Compute" msgstr "" -#: dashboards/nova/dashboard.py:34 +#: dashboards/nova/dashboard.py:35 msgid "Object Store" msgstr "" -#: dashboards/nova/dashboard.py:39 dashboards/nova/instances/workflows.py:32 -#: dashboards/syspanel/projects/tables.py:52 tests/workflows_tests.py:39 +#: dashboards/nova/dashboard.py:40 dashboards/nova/instances/workflows.py:37 +#: dashboards/syspanel/networks/forms.py:37 +#: dashboards/syspanel/networks/tables.py:66 +#: dashboards/syspanel/projects/tables.py:65 tests/workflows_tests.py:39 msgid "Project" msgstr "" #: dashboards/nova/access_and_security/panel.py:25 -#: dashboards/nova/instances/workflows.py:328 +#: dashboards/nova/instances/workflows.py:345 msgid "Access & Security" msgstr "" -#: dashboards/nova/access_and_security/views.py:51 +#: dashboards/nova/access_and_security/views.py:50 msgid "Unable to retrieve keypair list." msgstr "" -#: dashboards/nova/access_and_security/views.py:60 -#: dashboards/nova/access_and_security/security_groups/views.py:64 +#: dashboards/nova/access_and_security/views.py:59 +#: dashboards/nova/access_and_security/security_groups/views.py:72 msgid "Unable to retrieve security groups." msgstr "" -#: dashboards/nova/access_and_security/views.py:69 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:44 +#: dashboards/nova/access_and_security/views.py:68 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:48 msgid "Unable to retrieve floating IP addresses." msgstr "" -#: dashboards/nova/access_and_security/views.py:76 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:60 +#: dashboards/nova/access_and_security/views.py:75 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:64 #: dashboards/syspanel/instances/views.py:58 msgid "Unable to retrieve instance list." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/forms.py:38 +#: dashboards/nova/access_and_security/floating_ips/forms.py:31 msgid "Pool" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/forms.py:53 +#: dashboards/nova/access_and_security/floating_ips/forms.py:42 #, python-format -msgid "" -"Successfully allocated Floating IP \"%(ip)s\" to project \"%(project)s\"" +msgid "Allocated Floating IP %(ip)s." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/forms.py:57 +#: dashboards/nova/access_and_security/floating_ips/forms.py:46 msgid "Unable to allocate Floating IP." msgstr "" @@ -128,7 +129,7 @@ msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:49 #: dashboards/nova/access_and_security/floating_ips/tables.py:132 -#: dashboards/syspanel/projects/forms.py:119 +#: dashboards/syspanel/projects/workflows.py:42 msgid "Floating IPs" msgstr "" @@ -158,20 +159,20 @@ msgid "%(INSTANCE_NAME)s (%(INSTANCE_ID)s)" msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:115 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:28 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:34 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:31 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:38 #: dashboards/nova/instances/tables.py:270 #: dashboards/syspanel/instances/tables.py:74 msgid "IP Address" msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:118 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:31 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:35 #: dashboards/nova/instances/tables.py:62 #: dashboards/nova/instances/tables.py:79 #: dashboards/nova/instances/tables.py:94 #: dashboards/nova/instances/tables.py:122 -#: dashboards/nova/volumes/tables.py:195 tests/workflows_tests.py:58 +#: dashboards/nova/volumes/tables.py:197 tests/workflows_tests.py:58 msgid "Instance" msgstr "" @@ -179,81 +180,81 @@ msgstr "" msgid "Floating IP Pool" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/views.py:60 +#: dashboards/nova/access_and_security/floating_ips/views.py:64 +msgid "Unable to retrieve floating IP pools." +msgstr "" + +#: dashboards/nova/access_and_security/floating_ips/views.py:67 msgid "No floating IP pools available." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:35 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:39 msgid "Select the IP address you wish to associate with the selected instance." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:48 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:52 msgid "Select an IP address" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:50 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:54 msgid "No IP addresses available" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:77 -#: dashboards/nova/volumes/forms.py:92 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:81 +#: dashboards/nova/volumes/forms.py:160 msgid "Select an instance" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:79 -#: dashboards/nova/volumes/forms.py:94 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:83 +#: dashboards/nova/volumes/forms.py:162 msgid "No instances available" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:98 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:102 msgid "Manage Floating IP Associations" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:99 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:103 msgid "Associate" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:100 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:104 #, python-format msgid "IP address %s associated." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:101 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:105 #, python-format msgid "Unable to associate IP address %s." msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:40 -#: dashboards/nova/access_and_security/keypairs/forms.py:58 +#: dashboards/nova/access_and_security/keypairs/forms.py:38 +#: dashboards/nova/access_and_security/keypairs/forms.py:49 #: dashboards/nova/access_and_security/keypairs/tables.py:51 msgid "Keypair Name" msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:42 +#: dashboards/nova/access_and_security/keypairs/forms.py:40 msgid "" "Keypair names may only contain letters, numbers, underscores and hyphens." msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:53 -msgid "Unable to create keypair." -msgstr "" - -#: dashboards/nova/access_and_security/keypairs/forms.py:60 +#: dashboards/nova/access_and_security/keypairs/forms.py:51 msgid "Public Key" msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:68 +#: dashboards/nova/access_and_security/keypairs/forms.py:60 #, python-format msgid "Successfully imported public key: %s" msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:74 +#: dashboards/nova/access_and_security/keypairs/forms.py:65 msgid "Unable to import keypair." msgstr "" #: dashboards/nova/access_and_security/keypairs/tables.py:29 -#: dashboards/nova/instances/tables.py:272 -#: dashboards/nova/instances/workflows.py:316 +#: dashboards/nova/instances/tables.py:274 +#: dashboards/nova/instances/workflows.py:332 msgid "Keypair" msgstr "" @@ -280,31 +281,43 @@ msgstr "" msgid "Fingerprint" msgstr "" -#: dashboards/nova/access_and_security/keypairs/views.py:64 +#: dashboards/nova/access_and_security/keypairs/views.py:73 #, python-format msgid "Unable to create keypair: %(exc)s" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:40 +#: dashboards/nova/access_and_security/security_groups/forms.py:35 #: dashboards/nova/access_and_security/security_groups/tables.py:57 -#: dashboards/nova/images_and_snapshots/images/forms.py:42 -#: dashboards/nova/images_and_snapshots/images/forms.py:120 +#: dashboards/nova/images_and_snapshots/images/forms.py:39 +#: dashboards/nova/images_and_snapshots/images/forms.py:114 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:9 -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:46 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:63 #: dashboards/nova/instances/templates/instances/_detail_overview.html:9 #: dashboards/nova/instances/templates/instances/_launch_details_help.html:9 -#: dashboards/nova/volumes/tables.py:135 dashboards/nova/volumes/tables.py:153 +#: dashboards/nova/networks/forms.py:36 dashboards/nova/networks/tables.py:82 +#: dashboards/nova/networks/ports/tables.py:40 +#: dashboards/nova/networks/subnets/forms.py:42 +#: dashboards/nova/networks/subnets/forms.py:101 +#: dashboards/nova/networks/subnets/tables.py:69 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:7 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:9 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:9 +#: dashboards/nova/volumes/tables.py:135 dashboards/nova/volumes/tables.py:155 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:9 #: dashboards/syspanel/flavors/forms.py:37 -#: dashboards/syspanel/projects/forms.py:60 -#: dashboards/syspanel/projects/forms.py:85 -#: dashboards/syspanel/projects/tables.py:74 +#: dashboards/syspanel/networks/forms.py:35 +#: dashboards/syspanel/networks/ports/forms.py:39 +#: dashboards/syspanel/networks/ports/forms.py:71 +#: dashboards/syspanel/networks/ports/tables.py:73 +#: dashboards/syspanel/networks/subnets/tables.py:69 +#: dashboards/syspanel/projects/tables.py:87 +#: dashboards/syspanel/projects/workflows.py:66 #: dashboards/syspanel/services/tables.py:38 #: dashboards/syspanel/volumes/tables.py:10 msgid "Name" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:42 +#: dashboards/nova/access_and_security/security_groups/forms.py:37 #: dashboards/nova/access_and_security/security_groups/tables.py:58 #: dashboards/nova/access_and_security/templates/access_and_security/keypairs/_create.html:16 #: dashboards/nova/access_and_security/templates/access_and_security/keypairs/_import.html:16 @@ -312,18 +325,23 @@ msgstr "" #: dashboards/nova/containers/templates/containers/_copy.html:16 #: dashboards/nova/containers/templates/containers/_create.html:16 #: dashboards/nova/containers/templates/containers/_upload.html:17 -#: dashboards/nova/volumes/forms.py:25 dashboards/nova/volumes/forms.py:125 +#: dashboards/nova/networks/templates/networks/_create.html:16 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:17 +#: dashboards/nova/volumes/forms.py:28 dashboards/nova/volumes/forms.py:195 #: dashboards/nova/volumes/tables.py:138 #: dashboards/nova/volumes/templates/volumes/_create.html:18 #: dashboards/nova/volumes/templates/volumes/_create_snapshot.html:17 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:14 #: dashboards/syspanel/flavors/templates/flavors/_create.html:17 #: dashboards/syspanel/images/templates/images/_update.html:17 -#: dashboards/syspanel/projects/forms.py:63 -#: dashboards/syspanel/projects/forms.py:88 -#: dashboards/syspanel/projects/tables.py:76 +#: dashboards/syspanel/networks/templates/networks/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:17 +#: dashboards/syspanel/projects/tables.py:89 +#: dashboards/syspanel/projects/workflows.py:69 #: dashboards/syspanel/projects/templates/projects/_add_user.html:17 #: dashboards/syspanel/projects/templates/projects/_create.html:17 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:17 #: dashboards/syspanel/projects/templates/projects/_quotas.html:16 #: dashboards/syspanel/projects/templates/projects/_update.html:17 #: dashboards/syspanel/users/templates/users/_create.html:16 @@ -331,20 +349,24 @@ msgstr "" msgid "Description" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:50 +#: dashboards/nova/access_and_security/security_groups/forms.py:45 #, python-format msgid "Successfully created security group: %s" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:53 +#: dashboards/nova/access_and_security/security_groups/forms.py:51 msgid "Unable to create security group." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:58 +#: dashboards/nova/access_and_security/security_groups/forms.py:56 #: dashboards/nova/access_and_security/security_groups/tables.py:92 msgid "IP Protocol" msgstr "" +#: dashboards/nova/access_and_security/security_groups/forms.py:60 +msgid "The protocol which this rule should be applied to." +msgstr "" + #: dashboards/nova/access_and_security/security_groups/forms.py:64 #: dashboards/nova/access_and_security/security_groups/forms.py:70 #: dashboards/nova/access_and_security/security_groups/tables.py:94 @@ -382,54 +404,62 @@ msgstr "" msgid "Source Group" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:84 +#: dashboards/nova/access_and_security/security_groups/forms.py:85 +msgid "" +"To specify an allowed IP range, select CIDR. To allow access from all " +"members of another security group select Source Group." +msgstr "" + +#: dashboards/nova/access_and_security/security_groups/forms.py:90 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:15 +#: dashboards/syspanel/networks/subnets/tables.py:71 msgid "CIDR" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:87 +#: dashboards/nova/access_and_security/security_groups/forms.py:93 msgid "Classless Inter-Domain Routing (e.g. 192.168.0.0/24)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:116 +#: dashboards/nova/access_and_security/security_groups/forms.py:120 msgid "The ICMP type is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:119 +#: dashboards/nova/access_and_security/security_groups/forms.py:123 msgid "The ICMP code is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:122 +#: dashboards/nova/access_and_security/security_groups/forms.py:126 msgid "The ICMP type not in range (-1, 255)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:125 +#: dashboards/nova/access_and_security/security_groups/forms.py:129 msgid "The ICMP code not in range (-1, 255)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:129 +#: dashboards/nova/access_and_security/security_groups/forms.py:133 msgid "The \"from\" port number is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:132 +#: dashboards/nova/access_and_security/security_groups/forms.py:136 msgid "The \"to\" port number is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:135 +#: dashboards/nova/access_and_security/security_groups/forms.py:139 msgid "" "The \"to\" port number must be greater than or equal to the \"from\" port " "number." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:141 +#: dashboards/nova/access_and_security/security_groups/forms.py:145 msgid "Either CIDR or Source Group may be specified, but not both." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:163 +#: dashboards/nova/access_and_security/security_groups/forms.py:167 #, python-format msgid "Successfully added rule: %s" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:166 +#: dashboards/nova/access_and_security/security_groups/forms.py:172 msgid "Unable to add rule to security group." msgstr "" @@ -439,7 +469,7 @@ msgstr "" #: dashboards/nova/access_and_security/security_groups/tables.py:31 #: dashboards/nova/access_and_security/security_groups/tables.py:65 -#: dashboards/nova/instances/workflows.py:320 +#: dashboards/nova/instances/workflows.py:337 #: dashboards/nova/instances/templates/instances/_detail_overview.html:49 msgid "Security Groups" msgstr "" @@ -471,10 +501,15 @@ msgstr "" msgid "Security Group Rules" msgstr "" -#: dashboards/nova/access_and_security/security_groups/views.py:55 +#: dashboards/nova/access_and_security/security_groups/views.py:58 msgid "Unable to retrieve security group." msgstr "" +#: dashboards/nova/access_and_security/security_groups/views.py:78 +#, python-format +msgid "%s (current)" +msgstr "" + #: dashboards/nova/access_and_security/templates/access_and_security/index.html:6 msgid "Access & Security" msgstr "" @@ -489,9 +524,14 @@ msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_update.html:16 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:17 #: dashboards/nova/instances/templates/instances/_update.html:16 +#: dashboards/nova/networks/templates/networks/_update.html:16 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:25 #: dashboards/settings/ec2/templates/ec2/download_form.html:17 #: dashboards/settings/project/templates/project/_openrc.html:24 #: dashboards/settings/user/templates/user/_settings.html:17 +#: dashboards/syspanel/networks/templates/networks/_update.html:16 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:21 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:25 msgid "Description:" msgstr "" @@ -520,7 +560,11 @@ msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_update.html:23 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:24 #: dashboards/nova/instances/templates/instances/_update.html:23 -#: dashboards/nova/volumes/templates/volumes/_attach.html:20 +#: dashboards/nova/networks/templates/networks/_create.html:23 +#: dashboards/nova/networks/templates/networks/_update.html:23 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:24 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:32 +#: dashboards/nova/volumes/templates/volumes/_attach.html:24 #: dashboards/nova/volumes/templates/volumes/_create.html:56 #: dashboards/nova/volumes/templates/volumes/_create_snapshot.html:24 #: dashboards/settings/ec2/templates/ec2/download_form.html:24 @@ -528,8 +572,15 @@ msgstr "" #: dashboards/settings/user/templates/user/_settings.html:24 #: dashboards/syspanel/flavors/templates/flavors/_create.html:24 #: dashboards/syspanel/images/templates/images/_update.html:24 +#: dashboards/syspanel/networks/templates/networks/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/_update.html:23 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:28 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:32 #: dashboards/syspanel/projects/templates/projects/_add_user.html:24 #: dashboards/syspanel/projects/templates/projects/_create.html:24 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:24 #: dashboards/syspanel/projects/templates/projects/_quotas.html:23 #: dashboards/syspanel/projects/templates/projects/_update.html:24 #: dashboards/syspanel/users/templates/users/_create.html:23 @@ -582,157 +633,151 @@ msgstr "" msgid "Add Rule" msgstr "" -#: dashboards/nova/containers/forms.py:38 +#: dashboards/nova/containers/browsers.py:30 +msgid "Swift" +msgstr "" + +#: dashboards/nova/containers/forms.py:37 msgid "Slash is not an allowed character." msgstr "" -#: dashboards/nova/containers/forms.py:48 -#: dashboards/nova/containers/tables.py:91 +#: dashboards/nova/containers/forms.py:47 +#: dashboards/nova/containers/tables.py:125 msgid "Container Name" msgstr "" -#: dashboards/nova/containers/forms.py:56 +#: dashboards/nova/containers/forms.py:55 msgid "Container created successfully." msgstr "" -#: dashboards/nova/containers/forms.py:67 +#: dashboards/nova/containers/forms.py:66 msgid "Folder created successfully." msgstr "" -#: dashboards/nova/containers/forms.py:75 +#: dashboards/nova/containers/forms.py:69 msgid "Unable to create container." msgstr "" -#: dashboards/nova/containers/forms.py:85 -#: dashboards/nova/containers/tables.py:157 +#: dashboards/nova/containers/forms.py:77 +#: dashboards/nova/containers/tables.py:253 msgid "Object Name" msgstr "" -#: dashboards/nova/containers/forms.py:87 +#: dashboards/nova/containers/forms.py:79 msgid "File" msgstr "" -#: dashboards/nova/containers/forms.py:103 +#: dashboards/nova/containers/forms.py:95 msgid "Object was successfully uploaded." msgstr "" -#: dashboards/nova/containers/forms.py:105 +#: dashboards/nova/containers/forms.py:98 msgid "Unable to upload object." msgstr "" -#: dashboards/nova/containers/forms.py:111 +#: dashboards/nova/containers/forms.py:102 msgid "Destination container" msgstr "" -#: dashboards/nova/containers/forms.py:115 +#: dashboards/nova/containers/forms.py:106 msgid "Destination object name" msgstr "" -#: dashboards/nova/containers/forms.py:145 -#: dashboards/nova/containers/forms.py:169 +#: dashboards/nova/containers/forms.py:136 +#: dashboards/nova/containers/forms.py:162 msgid "Unable to copy object." msgstr "" -#: dashboards/nova/containers/forms.py:161 +#: dashboards/nova/containers/forms.py:152 #, python-format msgid "Copied \"%(orig)s\" to \"%(dest)s\" as \"%(new)s\"." msgstr "" #: dashboards/nova/containers/panel.py:28 -#: dashboards/nova/containers/tables.py:35 -#: dashboards/nova/containers/tables.py:102 -#: dashboards/nova/containers/templates/containers/index.html:6 +#: dashboards/nova/containers/tables.py:41 +#: dashboards/nova/containers/tables.py:132 msgid "Containers" msgstr "" -#: dashboards/nova/containers/tables.py:34 -#: dashboards/nova/containers/templates/containers/detail.html:7 +#: dashboards/nova/containers/tables.py:40 +#: dashboards/nova/containers/templates/containers/index.html:7 msgid "Container" msgstr "" -#: dashboards/nova/containers/tables.py:42 +#: dashboards/nova/containers/tables.py:49 msgid "Containers must be empty before deletion." msgstr "" -#: dashboards/nova/containers/tables.py:48 +#: dashboards/nova/containers/tables.py:67 #: dashboards/nova/containers/templates/containers/_create.html:7 #: dashboards/nova/containers/templates/containers/_create.html:22 #: dashboards/nova/containers/templates/containers/create.html:6 msgid "Create Container" msgstr "" -#: dashboards/nova/containers/tables.py:55 +#: dashboards/nova/containers/tables.py:74 msgid "View Container" msgstr "" -#: dashboards/nova/containers/tables.py:62 +#: dashboards/nova/containers/tables.py:86 #: dashboards/nova/containers/templates/containers/_upload.html:23 #: dashboards/nova/containers/templates/containers/upload.html:3 msgid "Upload Object" msgstr "" -#: dashboards/nova/containers/tables.py:93 -#: dashboards/nova/containers/tables.py:109 -#: dashboards/nova/containers/tables.py:169 -#: dashboards/nova/containers/templates/containers/detail.html:3 +#: dashboards/nova/containers/tables.py:140 +#: dashboards/nova/containers/tables.py:159 +msgid "Object" +msgstr "" + +#: dashboards/nova/containers/tables.py:141 +#: dashboards/nova/containers/tables.py:160 +#: dashboards/nova/containers/tables.py:263 msgid "Objects" msgstr "" -#: dashboards/nova/containers/tables.py:95 -#: dashboards/nova/containers/tables.py:160 +#: dashboards/nova/containers/tables.py:152 +msgid "Folder" +msgstr "" + +#: dashboards/nova/containers/tables.py:153 +msgid "Folders" +msgstr "" + +#: dashboards/nova/containers/tables.py:166 +msgid "Copy" +msgstr "" + +#: dashboards/nova/containers/tables.py:178 +msgid "Download" +msgstr "" + +#: dashboards/nova/containers/tables.py:232 +msgid "Create Folder" +msgstr "" + +#: dashboards/nova/containers/tables.py:256 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:30 -#: dashboards/nova/instances/tables.py:271 -#: dashboards/nova/volumes/tables.py:140 +#: dashboards/nova/instances/tables.py:272 +#: dashboards/nova/volumes/tables.py:141 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:26 #: dashboards/syspanel/instances/tables.py:76 msgid "Size" msgstr "" -#: dashboards/nova/containers/tables.py:108 -msgid "Object" -msgstr "" - -#: dashboards/nova/containers/tables.py:119 -msgid "Copy" -msgstr "" - -#: dashboards/nova/containers/tables.py:130 -msgid "Download" -msgstr "" - -#: dashboards/nova/containers/tables.py:181 -msgid "Create Folder" -msgstr "" - -#: dashboards/nova/containers/tables.py:193 -msgid "Folder" -msgstr "" - -#: dashboards/nova/containers/tables.py:194 -msgid "Folders" -msgstr "" - -#: dashboards/nova/containers/tables.py:200 -msgid "Subfolder Name" -msgstr "" - -#: dashboards/nova/containers/tables.py:208 -msgid "Subfolders" -msgstr "" - -#: dashboards/nova/containers/views.py:58 +#: dashboards/nova/containers/views.py:52 msgid "Unable to retrieve container list." msgstr "" -#: dashboards/nova/containers/views.py:103 +#: dashboards/nova/containers/views.py:80 msgid "Unable to retrieve object list." msgstr "" -#: dashboards/nova/containers/views.py:161 +#: dashboards/nova/containers/views.py:175 msgid "Unable to retrieve object." msgstr "" -#: dashboards/nova/containers/views.py:183 +#: dashboards/nova/containers/views.py:204 msgid "Unable to list containers." msgstr "" @@ -782,117 +827,118 @@ msgstr "" msgid "Images & Snapshots" msgstr "" -#: dashboards/nova/images_and_snapshots/views.py:60 +#: dashboards/nova/images_and_snapshots/views.py:61 msgid "Unable to retrieve images." msgstr "" -#: dashboards/nova/images_and_snapshots/views.py:71 +#: dashboards/nova/images_and_snapshots/views.py:72 msgid "Unable to retrieve snapshots." msgstr "" -#: dashboards/nova/images_and_snapshots/views.py:79 +#: dashboards/nova/images_and_snapshots/views.py:80 +#: dashboards/nova/volumes/forms.py:65 msgid "Unable to retrieve volume snapshots." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:44 +#: dashboards/nova/images_and_snapshots/images/forms.py:41 msgid "Image Location" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:45 -msgid "An external (HTTP) URL where the image should be loaded from." +#: dashboards/nova/images_and_snapshots/images/forms.py:42 +msgid "An external (HTTP) URL to load the image from." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:48 -#: dashboards/nova/images_and_snapshots/images/forms.py:135 +#: dashboards/nova/images_and_snapshots/images/forms.py:45 +#: dashboards/nova/images_and_snapshots/images/forms.py:129 #: dashboards/nova/images_and_snapshots/images/tables.py:125 msgid "Format" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:52 +#: dashboards/nova/images_and_snapshots/images/forms.py:49 msgid "AKI - Amazon Kernel Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:55 +#: dashboards/nova/images_and_snapshots/images/forms.py:52 msgid "AMI - Amazon Machine Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:58 +#: dashboards/nova/images_and_snapshots/images/forms.py:55 msgid "ARI - Amazon Ramdisk Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:61 +#: dashboards/nova/images_and_snapshots/images/forms.py:58 msgid "ISO - Optical Disk Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:63 +#: dashboards/nova/images_and_snapshots/images/forms.py:60 msgid "QCOW2 - QEMU Emulator" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:70 +#: dashboards/nova/images_and_snapshots/images/forms.py:67 msgid "Minimum Disk (GB)" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:71 -#: dashboards/nova/images_and_snapshots/images/forms.py:78 +#: dashboards/nova/images_and_snapshots/images/forms.py:68 +#: dashboards/nova/images_and_snapshots/images/forms.py:75 msgid "" "The minimum disk size required to boot the image. If unspecified, this value " "defaults to 0 (no minimum)." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:77 +#: dashboards/nova/images_and_snapshots/images/forms.py:74 msgid "Minimum Ram (MB)" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:84 -#: dashboards/nova/images_and_snapshots/images/forms.py:139 +#: dashboards/nova/images_and_snapshots/images/forms.py:81 +#: dashboards/nova/images_and_snapshots/images/forms.py:133 #: dashboards/nova/images_and_snapshots/images/tables.py:122 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:15 msgid "Public" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:108 +#: dashboards/nova/images_and_snapshots/images/forms.py:105 #, python-format msgid "Your image %s has been queued for creation." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:111 +#: dashboards/nova/images_and_snapshots/images/forms.py:109 msgid "Unable to create new image." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:121 +#: dashboards/nova/images_and_snapshots/images/forms.py:115 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:48 msgid "Kernel ID" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:126 +#: dashboards/nova/images_and_snapshots/images/forms.py:120 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:52 msgid "Ramdisk ID" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:131 +#: dashboards/nova/images_and_snapshots/images/forms.py:125 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:44 msgid "Architecture" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:144 +#: dashboards/nova/images_and_snapshots/images/forms.py:137 #, python-format msgid "Unable to update image \"%s\"." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:163 +#: dashboards/nova/images_and_snapshots/images/forms.py:161 msgid "Image was successfully updated." msgstr "" #: dashboards/nova/images_and_snapshots/images/tables.py:33 #: dashboards/nova/images_and_snapshots/snapshots/tables.py:32 -#: dashboards/nova/instances/workflows.py:394 +#: dashboards/nova/instances/workflows.py:451 msgid "Launch" msgstr "" #: dashboards/nova/images_and_snapshots/images/tables.py:45 #: dashboards/nova/images_and_snapshots/images/tables.py:81 -#: dashboards/nova/instances/workflows.py:162 #: dashboards/nova/instances/workflows.py:167 +#: dashboards/nova/instances/workflows.py:172 msgid "Image" msgstr "" @@ -911,7 +957,7 @@ msgid "Create Image" msgstr "" #: dashboards/nova/images_and_snapshots/images/tables.py:67 -#: dashboards/syspanel/users/tables.py:30 +#: dashboards/syspanel/users/tables.py:31 msgid "Edit" msgstr "" @@ -923,18 +969,29 @@ msgstr "" #: dashboards/nova/images_and_snapshots/images/tables.py:118 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:13 -#: dashboards/nova/instances/tables.py:275 +#: dashboards/nova/instances/tables.py:277 #: dashboards/nova/instances/templates/instances/_detail_overview.html:13 -#: dashboards/nova/volumes/tables.py:143 +#: dashboards/nova/networks/tables.py:86 +#: dashboards/nova/networks/ports/tables.py:44 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:13 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:30 +#: dashboards/nova/volumes/tables.py:145 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:17 -#: dashboards/syspanel/instances/tables.py:80 +#: dashboards/syspanel/instances/tables.py:81 +#: dashboards/syspanel/networks/tables.py:71 +#: dashboards/syspanel/networks/ports/tables.py:77 msgid "Status" msgstr "" #: dashboards/nova/images_and_snapshots/images/tabs.py:26 -#: dashboards/nova/instances/tabs.py:25 dashboards/nova/overview/panel.py:28 +#: dashboards/nova/instances/tabs.py:25 +#: dashboards/nova/networks/ports/tabs.py:29 +#: dashboards/nova/networks/subnets/tabs.py:31 +#: dashboards/nova/overview/panel.py:28 #: dashboards/nova/overview/templates/overview/usage.html:6 -#: dashboards/nova/volumes/tabs.py:26 dashboards/syspanel/overview/panel.py:28 +#: dashboards/nova/volumes/tabs.py:26 +#: dashboards/syspanel/networks/ports/tabs.py:29 +#: dashboards/syspanel/overview/panel.py:28 #: dashboards/syspanel/overview/templates/overview/usage.html:6 msgid "Overview" msgstr "" @@ -943,16 +1000,16 @@ msgstr "" msgid "Unable to retrieve image details." msgstr "" -#: dashboards/nova/images_and_snapshots/images/views.py:57 +#: dashboards/nova/images_and_snapshots/images/views.py:60 msgid "Unable to retrieve image." msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:38 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:36 msgid "Instance ID" msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:41 -#: dashboards/nova/volumes/forms.py:123 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:39 +#: dashboards/nova/volumes/forms.py:193 msgid "Snapshot Name" msgstr "" @@ -961,14 +1018,13 @@ msgstr "" msgid "Snapshot \"%(name)s\" created for instance \"%(inst)s\"" msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:56 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:55 msgid "Unable to create snapshot." msgstr "" #: dashboards/nova/images_and_snapshots/snapshots/tables.py:47 -#: dashboards/nova/instances/tables.py:162 -#: dashboards/nova/instances/workflows.py:101 -#: dashboards/nova/instances/workflows.py:163 +#: dashboards/nova/instances/workflows.py:106 +#: dashboards/nova/instances/workflows.py:168 msgid "Snapshot" msgstr "" @@ -980,15 +1036,10 @@ msgstr "" msgid "Instance Snapshots" msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/views.py:50 +#: dashboards/nova/images_and_snapshots/snapshots/views.py:52 msgid "Unable to retrieve instance." msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/views.py:53 -#, python-format -msgid "To create a snapshot, the instance must be in the \"%s\" state." -msgstr "" - #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/index.html:3 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/index.html:6 msgid "Images & Snapshots" @@ -1033,8 +1084,14 @@ msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:11 #: dashboards/nova/instances/templates/instances/_detail_overview.html:11 +#: dashboards/nova/networks/forms.py:38 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:9 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:12 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:11 -#: dashboards/syspanel/projects/forms.py:83 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:12 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:12 #: dashboards/syspanel/users/forms.py:113 msgid "ID" msgstr "" @@ -1075,7 +1132,9 @@ msgid "Euca2ools state" msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:60 -#: dashboards/syspanel/projects/tables.py:77 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:15 +#: dashboards/syspanel/projects/tables.py:90 msgid "Project ID" msgstr "" @@ -1106,6 +1165,7 @@ msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:8 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:23 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/create.html:3 +#: dashboards/nova/instances/tables.py:162 #: dashboards/nova/volumes/tables.py:67 msgid "Create Snapshot" msgstr "" @@ -1118,17 +1178,24 @@ msgstr "" msgid "Create a Snapshot" msgstr "" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:30 -#: dashboards/nova/instances/workflows.py:70 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:32 +#: dashboards/nova/instances/workflows.py:75 msgid "Volume Snapshot" msgstr "" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:31 -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:52 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:33 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:69 msgid "Volume Snapshots" msgstr "" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:48 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:41 +#: dashboards/nova/volumes/tables.py:50 +#: dashboards/nova/volumes/templates/volumes/_create.html:8 +#: dashboards/nova/volumes/templates/volumes/_create.html:55 +msgid "Create Volume" +msgstr "" + +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:65 msgid "Volume ID" msgstr "" @@ -1137,7 +1204,7 @@ msgstr "" msgid "Instance \"%s\" updated." msgstr "" -#: dashboards/nova/instances/forms.py:46 +#: dashboards/nova/instances/forms.py:49 msgid "Unable to update instance." msgstr "" @@ -1146,13 +1213,13 @@ msgstr "" #: dashboards/nova/instances/tables.py:80 #: dashboards/nova/instances/tables.py:95 #: dashboards/nova/instances/tables.py:123 -#: dashboards/nova/instances/tables.py:290 +#: dashboards/nova/instances/tables.py:292 #: dashboards/nova/instances/templates/instances/index.html:3 #: dashboards/nova/instances/templates/instances/index.html:6 #: dashboards/syspanel/instances/panel.py:28 -#: dashboards/syspanel/instances/tables.py:95 +#: dashboards/syspanel/instances/tables.py:96 #: dashboards/syspanel/instances/templates/instances/index.html:3 -#: dashboards/syspanel/projects/forms.py:115 +#: dashboards/syspanel/projects/workflows.py:35 msgid "Instances" msgstr "" @@ -1205,7 +1272,7 @@ msgid "Resumed" msgstr "" #: dashboards/nova/instances/tables.py:148 -#: dashboards/nova/instances/workflows.py:393 +#: dashboards/nova/instances/workflows.py:450 #: dashboards/nova/instances/templates/instances/launch.html:3 #: dashboards/nova/instances/templates/instances/launch.html:6 msgid "Launch Instance" @@ -1235,17 +1302,17 @@ msgid "Not available" msgstr "" #: dashboards/nova/instances/tables.py:269 -#: dashboards/syspanel/instances/tables.py:73 usage/tables.py:56 +#: dashboards/syspanel/instances/tables.py:73 usage/tables.py:57 msgid "Instance Name" msgstr "" -#: dashboards/nova/instances/tables.py:279 -#: dashboards/syspanel/instances/tables.py:84 +#: dashboards/nova/instances/tables.py:281 +#: dashboards/syspanel/instances/tables.py:85 msgid "Task" msgstr "" -#: dashboards/nova/instances/tables.py:286 -#: dashboards/syspanel/instances/tables.py:91 +#: dashboards/nova/instances/tables.py:288 +#: dashboards/syspanel/instances/tables.py:92 msgid "Power State" msgstr "" @@ -1276,224 +1343,276 @@ msgstr "" msgid "Unable to retrieve instance size information." msgstr "" -#: dashboards/nova/instances/views.py:137 +#: dashboards/nova/instances/views.py:143 msgid "Unable to retrieve instance details." msgstr "" -#: dashboards/nova/instances/views.py:172 +#: dashboards/nova/instances/views.py:178 #, python-format msgid "Unable to retrieve details for instance \"%s\"." msgstr "" -#: dashboards/nova/instances/workflows.py:33 -#: dashboards/syspanel/projects/tables.py:92 -#: dashboards/syspanel/users/tables.py:39 -#: dashboards/syspanel/users/tables.py:73 tests/workflows_tests.py:40 +#: dashboards/nova/instances/workflows.py:38 +#: dashboards/syspanel/projects/tables.py:106 +#: dashboards/syspanel/users/tables.py:40 +#: dashboards/syspanel/users/tables.py:74 tests/workflows_tests.py:40 msgid "User" msgstr "" -#: dashboards/nova/instances/workflows.py:47 +#: dashboards/nova/instances/workflows.py:52 msgid "Project & User" msgstr "" -#: dashboards/nova/instances/workflows.py:49 +#: dashboards/nova/instances/workflows.py:54 msgid "" "Admin users may optionally select the project and user for whom the instance " "should be created." msgstr "" -#: dashboards/nova/instances/workflows.py:60 +#: dashboards/nova/instances/workflows.py:65 msgid "Don't boot from a volume." msgstr "" -#: dashboards/nova/instances/workflows.py:61 +#: dashboards/nova/instances/workflows.py:66 msgid "Boot from volume." msgstr "" -#: dashboards/nova/instances/workflows.py:62 +#: dashboards/nova/instances/workflows.py:67 msgid "Boot from volume snapshot (creates a new volume)." msgstr "" -#: dashboards/nova/instances/workflows.py:66 -#: dashboards/nova/instances/workflows.py:84 +#: dashboards/nova/instances/workflows.py:71 +#: dashboards/nova/instances/workflows.py:89 msgid "Volume Options" msgstr "" -#: dashboards/nova/instances/workflows.py:69 -#: dashboards/nova/instances/workflows.py:104 +#: dashboards/nova/instances/workflows.py:74 +#: dashboards/nova/instances/workflows.py:109 #: dashboards/nova/instances/templates/instances/_detail_overview.html:93 -#: dashboards/nova/volumes/tables.py:36 dashboards/nova/volumes/tables.py:171 +#: dashboards/nova/volumes/tables.py:36 dashboards/nova/volumes/tables.py:173 msgid "Volume" msgstr "" -#: dashboards/nova/instances/workflows.py:72 +#: dashboards/nova/instances/workflows.py:77 +#: dashboards/nova/volumes/forms.py:126 msgid "Device Name" msgstr "" -#: dashboards/nova/instances/workflows.py:75 +#: dashboards/nova/instances/workflows.py:80 msgid "Volume mount point (e.g. 'vda' mounts at '/dev/vda')." msgstr "" -#: dashboards/nova/instances/workflows.py:77 +#: dashboards/nova/instances/workflows.py:82 msgid "Delete on Terminate" msgstr "" -#: dashboards/nova/instances/workflows.py:80 +#: dashboards/nova/instances/workflows.py:85 msgid "Delete volume on instance terminate" msgstr "" -#: dashboards/nova/instances/workflows.py:111 +#: dashboards/nova/instances/workflows.py:116 msgid "Select Volume" msgstr "" -#: dashboards/nova/instances/workflows.py:119 +#: dashboards/nova/instances/workflows.py:124 msgid "Unable to retrieve list of volumes." msgstr "" -#: dashboards/nova/instances/workflows.py:123 +#: dashboards/nova/instances/workflows.py:128 msgid "Select Volume Snapshot" msgstr "" -#: dashboards/nova/instances/workflows.py:132 +#: dashboards/nova/instances/workflows.py:137 msgid "Unable to retrieve list of volume snapshots." msgstr "" -#: dashboards/nova/instances/workflows.py:165 +#: dashboards/nova/instances/workflows.py:170 msgid "Instance Source" msgstr "" -#: dashboards/nova/instances/workflows.py:168 +#: dashboards/nova/instances/workflows.py:173 msgid "Instance Snapshot" msgstr "" -#: dashboards/nova/instances/workflows.py:170 +#: dashboards/nova/instances/workflows.py:175 msgid "Server Name" msgstr "" -#: dashboards/nova/instances/workflows.py:171 +#: dashboards/nova/instances/workflows.py:176 #: dashboards/nova/instances/templates/instances/_detail_overview.html:22 #: dashboards/syspanel/flavors/tables.py:13 msgid "Flavor" msgstr "" -#: dashboards/nova/instances/workflows.py:172 +#: dashboards/nova/instances/workflows.py:177 msgid "Size of image to launch." msgstr "" -#: dashboards/nova/instances/workflows.py:173 +#: dashboards/nova/instances/workflows.py:178 msgid "Instance Count" msgstr "" -#: dashboards/nova/instances/workflows.py:176 +#: dashboards/nova/instances/workflows.py:181 msgid "Number of instances to launch." msgstr "" -#: dashboards/nova/instances/workflows.py:179 +#: dashboards/nova/instances/workflows.py:184 msgid "Details" msgstr "" -#: dashboards/nova/instances/workflows.py:198 +#: dashboards/nova/instances/workflows.py:197 +msgid "" +"There are no image sources available; you must first create an image before " +"attempting to launch an instance." +msgstr "" + +#: dashboards/nova/instances/workflows.py:202 +msgid "Please select an option for the instance source." +msgstr "" + +#: dashboards/nova/instances/workflows.py:211 msgid "" "Launching multiple instances is only supported for images and instance " "snapshots." msgstr "" -#: dashboards/nova/instances/workflows.py:214 +#: dashboards/nova/instances/workflows.py:227 msgid "Unable to retrieve public images." msgstr "" -#: dashboards/nova/instances/workflows.py:228 +#: dashboards/nova/instances/workflows.py:241 msgid "Unable to retrieve images for the current project." msgstr "" -#: dashboards/nova/instances/workflows.py:251 +#: dashboards/nova/instances/workflows.py:264 msgid "Select Image" msgstr "" -#: dashboards/nova/instances/workflows.py:253 +#: dashboards/nova/instances/workflows.py:266 msgid "No images available." msgstr "" -#: dashboards/nova/instances/workflows.py:262 +#: dashboards/nova/instances/workflows.py:275 msgid "Select Instance Snapshot" msgstr "" -#: dashboards/nova/instances/workflows.py:264 +#: dashboards/nova/instances/workflows.py:277 msgid "No snapshots available." msgstr "" -#: dashboards/nova/instances/workflows.py:275 +#: dashboards/nova/instances/workflows.py:288 msgid "Unable to retrieve instance flavors." msgstr "" -#: dashboards/nova/instances/workflows.py:288 +#: dashboards/nova/instances/workflows.py:301 msgid "Unable to retrieve quota information." msgstr "" -#: dashboards/nova/instances/workflows.py:318 +#: dashboards/nova/instances/workflows.py:334 msgid "Which keypair to use for authentication." msgstr "" -#: dashboards/nova/instances/workflows.py:324 +#: dashboards/nova/instances/workflows.py:341 msgid "Launch instance in these security groups." msgstr "" -#: dashboards/nova/instances/workflows.py:329 +#: dashboards/nova/instances/workflows.py:346 msgid "" "Control access to your instance via keypairs, security groups, and other " "mechanisms." msgstr "" -#: dashboards/nova/instances/workflows.py:339 +#: dashboards/nova/instances/workflows.py:356 msgid "Unable to retrieve keypairs." msgstr "" -#: dashboards/nova/instances/workflows.py:341 +#: dashboards/nova/instances/workflows.py:358 msgid "Select a keypair" msgstr "" -#: dashboards/nova/instances/workflows.py:343 +#: dashboards/nova/instances/workflows.py:360 msgid "No keypairs available." msgstr "" -#: dashboards/nova/instances/workflows.py:352 +#: dashboards/nova/instances/workflows.py:369 msgid "Unable to retrieve list of security groups" msgstr "" -#: dashboards/nova/instances/workflows.py:372 +#: dashboards/nova/instances/workflows.py:389 msgid "Customization Script" msgstr "" -#: dashboards/nova/instances/workflows.py:374 +#: dashboards/nova/instances/workflows.py:391 msgid "" "A script or set of commands to be executed after the instance has been built " "(max 16kb)." msgstr "" -#: dashboards/nova/instances/workflows.py:381 +#: dashboards/nova/instances/workflows.py:398 msgid "Post-Creation" msgstr "" -#: dashboards/nova/instances/workflows.py:395 +#: dashboards/nova/instances/workflows.py:409 +#: dashboards/nova/networks/panel.py:24 dashboards/nova/networks/tables.py:32 +#: dashboards/nova/networks/tables.py:92 +#: dashboards/nova/networks/templates/networks/index.html:3 +#: dashboards/nova/networks/templates/networks/index.html:6 +#: dashboards/syspanel/networks/panel.py:24 +#: dashboards/syspanel/networks/tables.py:34 +#: dashboards/syspanel/networks/tables.py:77 +#: dashboards/syspanel/networks/templates/networks/index.html:3 +#: dashboards/syspanel/networks/templates/networks/index.html:6 +msgid "Networks" +msgstr "" + +#: dashboards/nova/instances/workflows.py:412 +msgid "Launch instance withthese networks" +msgstr "" + +#: dashboards/nova/instances/workflows.py:416 +msgid "Networking" +msgstr "" + +#: dashboards/nova/instances/workflows.py:418 +msgid "Select networks for your instance." +msgstr "" + +#: dashboards/nova/instances/workflows.py:429 +msgid "Unable to retrieve networks." +msgstr "" + +#: dashboards/nova/instances/workflows.py:452 #, python-format msgid "Launched %(count)s named \"%(name)s\"." msgstr "" -#: dashboards/nova/instances/workflows.py:396 +#: dashboards/nova/instances/workflows.py:453 #, python-format msgid "Unable to launch %(count)s named \"%(name)s\"." msgstr "" -#: dashboards/nova/instances/workflows.py:408 +#: dashboards/nova/instances/workflows.py:466 #, python-format msgid "%s instances" msgstr "" -#: dashboards/nova/instances/workflows.py:411 +#: dashboards/nova/instances/workflows.py:469 msgid "instance" msgstr "" +#: dashboards/nova/instances/templates/instances/_detail_log.html:4 +msgid "Instance Console Log" +msgstr "" + #: dashboards/nova/instances/templates/instances/_detail_log.html:7 +msgid "Log Length" +msgstr "" + +#: dashboards/nova/instances/templates/instances/_detail_log.html:9 +msgid "Go" +msgstr "" + +#: dashboards/nova/instances/templates/instances/_detail_log.html:11 msgid "View Full Log" msgstr "" @@ -1510,8 +1629,8 @@ msgstr "" #: dashboards/nova/instances/templates/instances/_detail_overview.html:26 #: dashboards/nova/instances/templates/instances/_launch_details_help.html:10 #: dashboards/syspanel/flavors/forms.py:38 -#: dashboards/syspanel/flavors/tables.py:30 -#: dashboards/syspanel/projects/forms.py:114 usage/tables.py:19 +#: dashboards/syspanel/flavors/tables.py:34 +#: dashboards/syspanel/projects/workflows.py:34 usage/tables.py:19 msgid "VCPUs" msgstr "" @@ -1553,7 +1672,7 @@ msgid "Volumes Attached" msgstr "" #: dashboards/nova/instances/templates/instances/_detail_overview.html:88 -#: dashboards/nova/volumes/tables.py:156 +#: dashboards/nova/volumes/tables.py:158 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:38 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:45 msgid "Attached To" @@ -1617,12 +1736,12 @@ msgid "Flavor Details" msgstr "" #: dashboards/nova/instances/templates/instances/_launch_details_help.html:11 -#: dashboards/syspanel/flavors/tables.py:32 +#: dashboards/syspanel/flavors/tables.py:38 msgid "Root Disk" msgstr "" #: dashboards/nova/instances/templates/instances/_launch_details_help.html:12 -#: dashboards/syspanel/flavors/tables.py:34 +#: dashboards/syspanel/flavors/tables.py:40 msgid "Ephemeral Disk" msgstr "" @@ -1658,6 +1777,11 @@ msgid "You may update the editable properties of your instance here." msgstr "" #: dashboards/nova/instances/templates/instances/_update.html:22 +#: dashboards/nova/networks/templates/networks/_update.html:22 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:31 +#: dashboards/syspanel/networks/templates/networks/_update.html:22 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:27 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:31 msgid "Save Changes" msgstr "" @@ -1670,6 +1794,434 @@ msgstr "" msgid "Update Instance" msgstr "" +#: dashboards/nova/networks/forms.py:47 +#, python-format +msgid "Network %s was successfully updated." +msgstr "" + +#: dashboards/nova/networks/forms.py:52 +#, python-format +msgid "Failed to update network %s" +msgstr "" + +#: dashboards/nova/networks/tables.py:31 +#: dashboards/nova/networks/templates/networks/subnets/index.html:3 +#: dashboards/nova/networks/templates/networks/subnets/index.html:6 +#: dashboards/syspanel/networks/tables.py:33 +msgid "Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:47 +#: dashboards/syspanel/networks/tables.py:40 +#, python-format +msgid "Failed to delete network %s" +msgstr "" + +#: dashboards/nova/networks/tables.py:55 +#: dashboards/nova/networks/workflows.py:110 +#: dashboards/nova/networks/templates/networks/_create.html:7 +#: dashboards/nova/networks/templates/networks/_create.html:22 +#: dashboards/nova/networks/templates/networks/create.html:3 +#: dashboards/nova/networks/templates/networks/create.html:6 +#: dashboards/syspanel/networks/tables.py:48 +#: dashboards/syspanel/networks/templates/networks/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/create.html:3 +#: dashboards/syspanel/networks/templates/networks/create.html:6 +msgid "Create Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:62 +#: dashboards/nova/networks/templates/networks/_update.html:7 +#: dashboards/syspanel/networks/tables.py:55 +#: dashboards/syspanel/networks/templates/networks/_update.html:7 +msgid "Edit Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:69 +msgid "Add Subnet" +msgstr "" + +#: dashboards/nova/networks/tables.py:85 +#: dashboards/syspanel/networks/tables.py:70 +msgid "Subnets Associated" +msgstr "" + +#: dashboards/nova/networks/tables.py:88 +#: dashboards/nova/networks/ports/tables.py:46 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:15 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:32 +#: dashboards/syspanel/networks/tables.py:73 +#: dashboards/syspanel/networks/ports/tables.py:79 +msgid "Admin State" +msgstr "" + +#: dashboards/nova/networks/views.py:55 +#: dashboards/syspanel/networks/views.py:60 +msgid "Network list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:89 +msgid "Unable to retrieve network details." +msgstr "" + +#: dashboards/nova/networks/views.py:112 +#: dashboards/syspanel/networks/views.py:91 +msgid "Subnet list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:124 +#: dashboards/syspanel/networks/views.py:103 +msgid "Port list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:137 +#: dashboards/syspanel/networks/views.py:118 +#, python-format +msgid "Unable to retrieve details for network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:36 +msgid "Network Name (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:41 +msgid "" +"From here you can create a new network.\n" +"In addition a subnet associated with the network can be created in the next " +"panel." +msgstr "" + +#: dashboards/nova/networks/workflows.py:52 +#: dashboards/nova/networks/subnets/tables.py:48 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:8 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:23 +#: dashboards/nova/networks/templates/networks/subnets/create.html:3 +#: dashboards/nova/networks/templates/networks/subnets/create.html:6 +#: dashboards/syspanel/networks/subnets/tables.py:48 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/subnets/create.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/create.html:6 +msgid "Create Subnet" +msgstr "" + +#: dashboards/nova/networks/workflows.py:55 +msgid "Subnet Name (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:57 +#: dashboards/nova/networks/subnets/forms.py:44 +#: dashboards/nova/networks/subnets/tables.py:71 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:14 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:14 +msgid "Network Address" +msgstr "" + +#: dashboards/nova/networks/workflows.py:60 +#: dashboards/nova/networks/subnets/forms.py:47 +msgid "Network address in CIDR format (e.g. 192.168.0.0/24)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:65 +#: dashboards/nova/networks/subnets/forms.py:52 +#: dashboards/nova/networks/subnets/tables.py:72 +#: dashboards/syspanel/networks/subnets/tables.py:72 +msgid "IP Version" +msgstr "" + +#: dashboards/nova/networks/workflows.py:66 +msgid "Gateway IP (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:69 +#: dashboards/nova/networks/subnets/forms.py:56 +#: dashboards/nova/networks/subnets/forms.py:106 +msgid "IP address of Gateway (e.g. 192.168.0.1)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:76 +msgid "" +"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." +msgstr "" + +#: dashboards/nova/networks/workflows.py:88 +msgid "Specify \"Network Address\" or clear \"Create Subnet\" checkbox." +msgstr "" + +#: dashboards/nova/networks/workflows.py:93 +#: dashboards/nova/networks/subnets/forms.py:69 +msgid "Network Address and IP version are inconsistent." +msgstr "" + +#: dashboards/nova/networks/workflows.py:97 +#: dashboards/nova/networks/subnets/forms.py:73 +#: dashboards/nova/networks/subnets/forms.py:118 +msgid "Gateway IP and IP version are inconsistent." +msgstr "" + +#: dashboards/nova/networks/workflows.py:111 +msgid "Create" +msgstr "" + +#: dashboards/nova/networks/workflows.py:112 +#, python-format +msgid "Created network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:113 +#, python-format +msgid "Unable to create network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:129 +#, python-format +msgid "Network \"%s\" was successfully created." +msgstr "" + +#: dashboards/nova/networks/workflows.py:132 +#, python-format +msgid "Failed to create network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:151 +#, python-format +msgid "Subnet \"%s\" was successfully created." +msgstr "" + +#: dashboards/nova/networks/workflows.py:154 +#, python-format +msgid "Failed to create subnet \"%(sub)s\" for network \"%(net)s\"." +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:35 +msgid "Attached" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:35 +msgid "Detached" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:42 +#: dashboards/syspanel/networks/ports/tables.py:75 +msgid "Fixed IPs" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:43 +#: dashboards/syspanel/networks/ports/tables.py:76 +msgid "Device Attached" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:53 +#: dashboards/syspanel/networks/ports/tables.py:35 +#: dashboards/syspanel/networks/ports/tables.py:83 +msgid "Ports" +msgstr "" + +#: dashboards/nova/networks/ports/tabs.py:39 +#: dashboards/syspanel/networks/ports/tabs.py:39 +msgid "Unable to retrieve port details." +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:34 +#: dashboards/syspanel/networks/tables.py:67 +#: dashboards/syspanel/networks/ports/forms.py:32 +msgid "Network Name" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:38 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:13 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:13 +#: dashboards/syspanel/networks/ports/forms.py:35 +msgid "Network ID" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:53 +#: dashboards/nova/networks/subnets/forms.py:103 +#: dashboards/nova/networks/subnets/tables.py:73 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:19 +#: dashboards/syspanel/networks/subnets/tables.py:73 +msgid "Gateway IP" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:84 +#, python-format +msgid "Subnet %s was successfully created." +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:89 +#, python-format +msgid "Failed to create subnet %s" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:130 +#, python-format +msgid "Subnet %s was successfully updated." +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:135 +#, python-format +msgid "Failed to update subnet %s" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:31 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:6 +#: dashboards/syspanel/networks/subnets/tables.py:31 +msgid "Subnet" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:32 +#: dashboards/nova/networks/subnets/tables.py:77 +#: dashboards/syspanel/networks/subnets/tables.py:32 +#: dashboards/syspanel/networks/subnets/tables.py:80 +msgid "Subnets" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:38 +#: dashboards/syspanel/networks/ports/tables.py:41 +#: dashboards/syspanel/networks/subnets/tables.py:38 +#, python-format +msgid "Failed to delete subnet %s" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:59 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:7 +#: dashboards/syspanel/networks/subnets/tables.py:59 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:7 +msgid "Edit Subnet" +msgstr "" + +#: dashboards/nova/networks/subnets/tabs.py:41 +msgid "Unable to retrieve subnet details." +msgstr "" + +#: dashboards/nova/networks/subnets/views.py:52 +#: dashboards/syspanel/networks/ports/views.py:48 +#: dashboards/syspanel/networks/subnets/views.py:47 +msgid "Unable to retrieve network." +msgstr "" + +#: dashboards/nova/networks/subnets/views.py:84 +#: dashboards/syspanel/networks/subnets/views.py:80 +msgid "Unable to retrieve subnet details" +msgstr "" + +#: dashboards/nova/networks/templates/networks/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/_create.html:18 +msgid "Select a name for your network." +msgstr "" + +#: dashboards/nova/networks/templates/networks/_detail_overview.html:3 +msgid "Network Overview" +msgstr "" + +#: dashboards/nova/networks/templates/networks/_update.html:17 +#: dashboards/syspanel/networks/templates/networks/_update.html:17 +msgid "You may update the editable properties of your network here." +msgstr "" + +#: dashboards/nova/networks/templates/networks/detail.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/index.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/index.html:6 +msgid "Network Detail" +msgstr "" + +#: dashboards/nova/networks/templates/networks/detail.html:6 +msgid "Network Detail: " +msgstr "" + +#: dashboards/nova/networks/templates/networks/update.html:3 +#: dashboards/nova/networks/templates/networks/update.html:6 +#: dashboards/syspanel/networks/templates/networks/update.html:3 +#: dashboards/syspanel/networks/templates/networks/update.html:6 +msgid "Update Network" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:3 +msgid "Port Overview" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:6 +#: dashboards/syspanel/networks/ports/tables.py:34 +msgid "Port" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:17 +msgid "Fixed IP" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:21 +msgid "IP address:" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:22 +msgid "Subnet ID" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:28 +msgid "Mac Address" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:34 +#: dashboards/syspanel/networks/ports/forms.py:41 +#: dashboards/syspanel/networks/ports/forms.py:73 +msgid "Device ID" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/detail.html:3 +#: dashboards/nova/networks/templates/networks/ports/detail.html:6 +msgid "Port Detail" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_create.html:18 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:18 +msgid "" +"You can create a subnet for the network. Any network address can be " +"specified unless the network address does not overlap other subnets in the " +"network." +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:3 +msgid "Subnet Overview" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:17 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:16 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:16 +msgid "IP version" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:21 +msgid "IP allocation pool" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:24 +msgid "Start" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:25 +msgid " - End" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_update.html:26 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:26 +msgid "You may update the editable properties of your subnet here." +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/detail.html:3 +#: dashboards/nova/networks/templates/networks/subnets/detail.html:6 +msgid "Subnet Detail" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/update.html:3 +#: dashboards/nova/networks/templates/networks/subnets/update.html:6 +#: dashboards/syspanel/networks/templates/networks/subnets/update.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/update.html:6 +msgid "Update Subnet" +msgstr "" + #: dashboards/nova/templates/nova/_warning.html:6 msgid "You currently have the power to damage your OpenStack cloud..." msgstr "" @@ -1758,52 +2310,86 @@ msgstr "" msgid "Learn More" msgstr "" -#: dashboards/nova/volumes/forms.py:40 +#: dashboards/nova/volumes/forms.py:26 +msgid "Volume Name" +msgstr "" + +#: dashboards/nova/volumes/forms.py:29 +msgid "Size (GB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:30 +msgid "Use snapshot as a source" +msgstr "" + +#: dashboards/nova/volumes/forms.py:49 +#, python-format +msgid "Volume size must be equal to or greater than the snapshot size (%sGB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:54 +msgid "Unable to load the specified snapshot." +msgstr "" + +#: dashboards/nova/volumes/forms.py:59 +msgid "Choose a snapshot" +msgstr "" + +#: dashboards/nova/volumes/forms.py:83 +#, python-format +msgid "The volume size cannot be less than the snapshot size (%sGB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:92 #, python-format msgid "" "A volume of %(req)iGB cannot be created as you only have %(avail)iGB of your " "quota available." msgstr "" -#: dashboards/nova/volumes/forms.py:47 +#: dashboards/nova/volumes/forms.py:99 msgid "You are already using all of your available volumes." msgstr "" -#: dashboards/nova/volumes/forms.py:60 +#: dashboards/nova/volumes/forms.py:115 msgid "Unable to create volume." msgstr "" -#: dashboards/nova/volumes/forms.py:67 +#: dashboards/nova/volumes/forms.py:123 +msgid "Attach to Instance" +msgstr "" + +#: dashboards/nova/volumes/forms.py:124 msgid "Select an instance to attach to." msgstr "" -#: dashboards/nova/volumes/forms.py:100 +#: dashboards/nova/volumes/forms.py:168 msgid "Unknown instance (None)" msgstr "" -#: dashboards/nova/volumes/forms.py:111 +#: dashboards/nova/volumes/forms.py:179 #, python-format msgid "Attaching volume %(vol)s to instance %(inst)s on %(dev)s." msgstr "" -#: dashboards/nova/volumes/forms.py:118 +#: dashboards/nova/volumes/forms.py:188 msgid "Unable to attach volume." msgstr "" -#: dashboards/nova/volumes/forms.py:142 +#: dashboards/nova/volumes/forms.py:212 #, python-format msgid "Creating volume snapshot \"%s\"" msgstr "" -#: dashboards/nova/volumes/forms.py:146 +#: dashboards/nova/volumes/forms.py:218 msgid "Unable to create volume snapshot." msgstr "" #: dashboards/nova/volumes/panel.py:24 dashboards/nova/volumes/tables.py:37 -#: dashboards/nova/volumes/tables.py:160 dashboards/nova/volumes/tables.py:172 +#: dashboards/nova/volumes/tables.py:162 dashboards/nova/volumes/tables.py:174 #: dashboards/nova/volumes/templates/volumes/index.html:3 #: dashboards/nova/volumes/templates/volumes/index.html:6 -#: dashboards/syspanel/projects/forms.py:116 +#: dashboards/syspanel/projects/workflows.py:39 #: dashboards/syspanel/volumes/panel.py:9 #: dashboards/syspanel/volumes/tables.py:15 #: dashboards/syspanel/volumes/templates/volumes/index.html:3 @@ -1811,12 +2397,6 @@ msgstr "" msgid "Volumes" msgstr "" -#: dashboards/nova/volumes/tables.py:50 -#: dashboards/nova/volumes/templates/volumes/_create.html:8 -#: dashboards/nova/volumes/templates/volumes/_create.html:55 -msgid "Create Volume" -msgstr "" - #: dashboards/nova/volumes/tables.py:57 msgid "Edit Attachments" msgstr "" @@ -1826,7 +2406,7 @@ msgstr "" msgid "%sGB" msgstr "" -#: dashboards/nova/volumes/tables.py:97 +#: dashboards/nova/volumes/tables.py:97 dashboards/nova/volumes/views.py:140 msgid "Unable to retrieve attachment information." msgstr "" @@ -1835,15 +2415,15 @@ msgstr "" msgid "Attached to %(instance)s on %(dev)s" msgstr "" -#: dashboards/nova/volumes/tables.py:169 +#: dashboards/nova/volumes/tables.py:171 msgid "Detach" msgstr "" -#: dashboards/nova/volumes/tables.py:170 +#: dashboards/nova/volumes/tables.py:172 msgid "Detaching" msgstr "" -#: dashboards/nova/volumes/tables.py:205 +#: dashboards/nova/volumes/tables.py:207 #, python-format msgid "%(dev)s on instance %(instance_name)s" msgstr "" @@ -1852,15 +2432,15 @@ msgstr "" msgid "Unable to retrieve volume details." msgstr "" -#: dashboards/nova/volumes/views.py:50 +#: dashboards/nova/volumes/views.py:52 msgid "Unable to retrieve volume list." msgstr "" -#: dashboards/nova/volumes/views.py:56 +#: dashboards/nova/volumes/views.py:58 msgid "Unable to retrieve volume/instance attachment information" msgstr "" -#: dashboards/nova/volumes/views.py:114 dashboards/nova/volumes/views.py:124 +#: dashboards/nova/volumes/views.py:121 dashboards/nova/volumes/views.py:131 msgid "Unable to retrieve volume information." msgstr "" @@ -1869,11 +2449,11 @@ msgstr "" msgid "Manage Volume Attachments" msgstr "" -#: dashboards/nova/volumes/templates/volumes/_attach.html:12 +#: dashboards/nova/volumes/templates/volumes/_attach.html:13 msgid "Attach To Instance" msgstr "" -#: dashboards/nova/volumes/templates/volumes/_attach.html:19 +#: dashboards/nova/volumes/templates/volumes/_attach.html:22 msgid "Attach Volume" msgstr "" @@ -1930,7 +2510,7 @@ msgstr "" msgid "Volume Detail" msgstr "" -#: dashboards/settings/dashboard.py:24 +#: dashboards/settings/dashboard.py:24 templates/_header.html:4 msgid "Settings" msgstr "" @@ -1938,15 +2518,15 @@ msgstr "" msgid "Select a Project" msgstr "" -#: dashboards/settings/ec2/forms.py:51 +#: dashboards/settings/ec2/forms.py:45 msgid "Unable to retrieve tenant list." msgstr "" -#: dashboards/settings/ec2/forms.py:93 +#: dashboards/settings/ec2/forms.py:87 msgid "Unable to fetch EC2 credentials." msgstr "" -#: dashboards/settings/ec2/forms.py:106 +#: dashboards/settings/ec2/forms.py:100 #, python-format msgid "Error writing zipfile: %(exc)s" msgstr "" @@ -1969,7 +2549,7 @@ msgid "" "private key and certificate." msgstr "" -#: dashboards/settings/project/forms.py:76 +#: dashboards/settings/project/forms.py:70 #, python-format msgid "Error Downloading RC File: %s" msgstr "" @@ -2023,7 +2603,7 @@ msgid "From here you can modify dashboard settings for your user." msgstr "" #: dashboards/settings/user/templates/user/_settings.html:23 -#: workflows/base.py:510 +#: dashboards/syspanel/projects/workflows.py:243 workflows/base.py:538 msgid "Save" msgstr "" @@ -2051,14 +2631,18 @@ msgstr "" msgid "Ephemeral Disk GB" msgstr "" -#: dashboards/syspanel/flavors/forms.py:51 +#: dashboards/syspanel/flavors/forms.py:52 #, python-format msgid "%s was successfully added to flavors." msgstr "" +#: dashboards/syspanel/flavors/forms.py:56 +msgid "Unable to create flavor" +msgstr "" + #: dashboards/syspanel/flavors/panel.py:28 #: dashboards/syspanel/flavors/tables.py:14 -#: dashboards/syspanel/flavors/tables.py:38 +#: dashboards/syspanel/flavors/tables.py:44 #: dashboards/syspanel/flavors/templates/flavors/index.html:8 msgid "Flavors" msgstr "" @@ -2070,32 +2654,32 @@ msgstr "" msgid "Create Flavor" msgstr "" -#: dashboards/syspanel/flavors/tables.py:29 +#: dashboards/syspanel/flavors/tables.py:28 +#, python-format +msgid "%sMB" +msgstr "" + +#: dashboards/syspanel/flavors/tables.py:33 msgid "Flavor Name" msgstr "" -#: dashboards/syspanel/flavors/tables.py:31 +#: dashboards/syspanel/flavors/tables.py:36 msgid "Memory" msgstr "" #: dashboards/syspanel/flavors/views.py:48 -msgid "Unauthorized." -msgstr "" - -#: dashboards/syspanel/flavors/views.py:53 -#, python-format -msgid "Unable to get flavor list: %s" +msgid "Unable to retrieve flavor list." msgstr "" #: dashboards/syspanel/flavors/templates/flavors/_create.html:18 msgid "From here you can define the sizing of a new flavor." msgstr "" -#: dashboards/syspanel/images/views.py:52 +#: dashboards/syspanel/images/views.py:53 msgid "Unable to retrieve image list." msgstr "" -#: dashboards/syspanel/instances/tables.py:62 usage/tables.py:29 +#: dashboards/syspanel/instances/tables.py:62 usage/tables.py:30 msgid "Project Name" msgstr "" @@ -2105,6 +2689,7 @@ msgid "Host" msgstr "" #: dashboards/syspanel/instances/views.py:72 +#: dashboards/syspanel/networks/views.py:48 msgid "Unable to retrieve instance tenant information." msgstr "" @@ -2112,6 +2697,78 @@ msgstr "" msgid "All Instances" msgstr "" +#: dashboards/syspanel/networks/forms.py:45 +#: dashboards/syspanel/users/forms.py:41 +msgid "Select a project" +msgstr "" + +#: dashboards/syspanel/networks/forms.py:56 +#, python-format +msgid "Network %s was successfully created." +msgstr "" + +#: dashboards/syspanel/networks/forms.py:62 +#, python-format +msgid "Failed to create network %s" +msgstr "" + +#: dashboards/syspanel/networks/ports/forms.py:53 +#, python-format +msgid "Port %s was successfully created." +msgstr "" + +#: dashboards/syspanel/networks/ports/forms.py:58 +#, python-format +msgid "Failed to create a port for network %s" +msgstr "" + +#: dashboards/syspanel/networks/ports/forms.py:83 +#, python-format +msgid "Port %s was successfully updated." +msgstr "" + +#: dashboards/syspanel/networks/ports/forms.py:88 +#, python-format +msgid "Failed to update port %s" +msgstr "" + +#: dashboards/syspanel/networks/ports/tables.py:51 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/ports/create.html:3 +#: dashboards/syspanel/networks/templates/networks/ports/create.html:6 +msgid "Create Port" +msgstr "" + +#: dashboards/syspanel/networks/ports/tables.py:62 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:7 +msgid "Edit Port" +msgstr "" + +#: dashboards/syspanel/networks/ports/views.py:81 +msgid "Unable to retrieve port details" +msgstr "" + +#: dashboards/syspanel/networks/subnets/forms.py:42 +#, python-format +msgid "Failed to retrieve network %s for a subnet" +msgstr "" + +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:18 +msgid "" +"You can create a port for the network. If you specify device ID to be " +"attached, the device specified will be attached to the port created." +msgstr "" + +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:22 +msgid "You may update the editable properties of your port here." +msgstr "" + +#: dashboards/syspanel/networks/templates/networks/ports/update.html:3 +#: dashboards/syspanel/networks/templates/networks/ports/update.html:6 +msgid "Update Port" +msgstr "" + #: dashboards/syspanel/overview/templates/overview/usage.html:3 msgid "Usage Overview" msgstr "" @@ -2120,91 +2777,14 @@ msgstr "" msgid "Monitoring" msgstr "" -#: dashboards/syspanel/projects/forms.py:38 -#: dashboards/syspanel/users/forms.py:75 -msgid "Role" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:52 -msgid "Successfully added user to project." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:54 -msgid "Unable to add user to project." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:64 -#: dashboards/syspanel/projects/forms.py:89 -#: dashboards/syspanel/projects/tables.py:78 -#: dashboards/syspanel/services/tables.py:42 -#: dashboards/syspanel/users/tables.py:38 -#: dashboards/syspanel/users/tables.py:112 -msgid "Enabled" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:75 -#, python-format -msgid "%s was successfully created." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:78 -msgid "Unable to create project." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:100 -#, python-format -msgid "%s was successfully updated." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:103 -msgid "Unable to update project." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:108 -msgid "ID (name)" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:110 -msgid "Metadata Items" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:111 -msgid "Injected Files" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:112 -msgid "Injected File Content Bytes" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:117 -msgid "Gigabytes" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:118 -msgid "RAM (in MB)" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:136 -#, python-format -msgid "Quotas for %s were successfully updated." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:139 -msgid "Unable to update quotas." -msgstr "" - #: dashboards/syspanel/projects/panel.py:28 -#: dashboards/syspanel/projects/tables.py:53 -#: dashboards/syspanel/projects/tables.py:82 +#: dashboards/syspanel/projects/tables.py:66 +#: dashboards/syspanel/projects/tables.py:95 #: dashboards/syspanel/projects/templates/projects/index.html:8 msgid "Projects" msgstr "" -#: dashboards/syspanel/projects/tables.py:18 -msgid "Modify Quotas" -msgstr "" - -#: dashboards/syspanel/projects/tables.py:25 +#: dashboards/syspanel/projects/tables.py:19 msgid "Modify Users" msgstr "" @@ -2213,64 +2793,186 @@ msgid "View Usage" msgstr "" #: dashboards/syspanel/projects/tables.py:39 -msgid "Edit Project" +#: dashboards/syspanel/projects/templates/projects/_create.html:8 +#: dashboards/syspanel/projects/templates/projects/_create.html:23 +#: dashboards/syspanel/projects/templates/projects/create.html:6 +msgid "Create Project" msgstr "" #: dashboards/syspanel/projects/tables.py:46 -msgid "Create New Project" -msgstr "" - -#: dashboards/syspanel/projects/tables.py:90 -msgid "Remove" +#: dashboards/syspanel/projects/workflows.py:242 +#: dashboards/syspanel/projects/templates/projects/update.html:3 +#: dashboards/syspanel/projects/templates/projects/update.html:6 +msgid "Edit Project" msgstr "" #: dashboards/syspanel/projects/tables.py:91 +#: dashboards/syspanel/projects/workflows.py:71 +#: dashboards/syspanel/projects/workflows.py:134 +#: dashboards/syspanel/services/tables.py:42 +#: dashboards/syspanel/users/tables.py:39 +#: dashboards/syspanel/users/tables.py:114 +msgid "Enabled" +msgstr "" + +#: dashboards/syspanel/projects/tables.py:104 +msgid "Remove" +msgstr "" + +#: dashboards/syspanel/projects/tables.py:105 msgid "Removed" msgstr "" -#: dashboards/syspanel/projects/tables.py:93 +#: dashboards/syspanel/projects/tables.py:107 #: dashboards/syspanel/users/panel.py:28 -#: dashboards/syspanel/users/tables.py:40 -#: dashboards/syspanel/users/tables.py:74 -#: dashboards/syspanel/users/tables.py:119 +#: dashboards/syspanel/users/tables.py:41 +#: dashboards/syspanel/users/tables.py:75 +#: dashboards/syspanel/users/tables.py:121 #: dashboards/syspanel/users/templates/users/index.html:8 msgid "Users" msgstr "" -#: dashboards/syspanel/projects/tables.py:111 +#: dashboards/syspanel/projects/tables.py:125 msgid "Unable to retrieve role information." msgstr "" -#: dashboards/syspanel/projects/tables.py:116 +#: dashboards/syspanel/projects/tables.py:130 msgid "Roles" msgstr "" -#: dashboards/syspanel/projects/tables.py:120 +#: dashboards/syspanel/projects/tables.py:134 msgid "Users For Project" msgstr "" -#: dashboards/syspanel/projects/tables.py:128 +#: dashboards/syspanel/projects/tables.py:142 msgid "Add To Project" msgstr "" -#: dashboards/syspanel/projects/tables.py:140 +#: dashboards/syspanel/projects/tables.py:154 msgid "Add New Users" msgstr "" -#: dashboards/syspanel/projects/views.py:49 +#: dashboards/syspanel/projects/views.py:67 +msgid "Unable to retrieve project information." +msgstr "" + +#: dashboards/syspanel/projects/views.py:87 msgid "Unable to retrieve project list." msgstr "" -#: dashboards/syspanel/projects/views.py:71 -msgid "Unable to retrieve project." -msgstr "" - -#: dashboards/syspanel/projects/views.py:100 +#: dashboards/syspanel/projects/views.py:110 msgid "Unable to retrieve users." msgstr "" -#: dashboards/syspanel/projects/views.py:143 -msgid "Unable to retrieve roles." +#: dashboards/syspanel/projects/views.py:154 +msgid "Unable to retrieve default quota values." +msgstr "" + +#: dashboards/syspanel/projects/views.py:182 +msgid "Unable to retrieve project details." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:32 +msgid "Injected File Content Bytes" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:33 +msgid "Metadata Items" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:36 +msgid "Injected Files" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:40 +msgid "Gigabytes" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:41 +msgid "RAM (MB)" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:45 +msgid "Quota" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:47 +msgid "From here you can set quotas (max limits) for the project." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:76 +#: dashboards/syspanel/projects/workflows.py:137 +msgid "Project Info" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:77 +#: dashboards/syspanel/projects/templates/projects/_create.html:18 +msgid "From here you can create a new project to organize users." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:91 +msgid "Add Project" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:92 +msgid "Finish" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:93 +#, python-format +msgid "Created new project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:94 +#, python-format +msgid "Unable to create project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:129 +msgid "Unable to set project quotas." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:139 +msgid "From here you can edit the project details." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:161 +msgid "Unable to retrieve user list. Please try again later." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:167 +msgid "Create New User" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:217 +#: dashboards/syspanel/projects/templates/projects/_update_members.html:16 +msgid "Project Members" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:231 +#: dashboards/syspanel/users/views.py:46 +msgid "Unable to retrieve user list." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:244 +#, python-format +msgid "Modified project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:245 +#, python-format +msgid "Unable to modify project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:315 +#, python-format +msgid "Failed to modify %s project members and update project quotas." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:336 +msgid "" +"Modified project information and members, but unable to modify project " +"quotas." msgstr "" #: dashboards/syspanel/projects/templates/projects/_add_user.html:8 @@ -2287,14 +2989,21 @@ msgstr "" msgid "Add" msgstr "" -#: dashboards/syspanel/projects/templates/projects/_create.html:8 -#: dashboards/syspanel/projects/templates/projects/_create.html:23 -#: dashboards/syspanel/projects/templates/projects/create.html:6 -msgid "Create Project" +#: dashboards/syspanel/projects/templates/projects/_create_user.html:7 +#, python-format +msgid "Create User for project '%(tenant_name)s'." msgstr "" -#: dashboards/syspanel/projects/templates/projects/_create.html:18 -msgid "From here you can create a new project to organize users." +#: dashboards/syspanel/projects/templates/projects/_create_user.html:18 +msgid "From here you can create a new user to add to this project." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/_create_user.html:23 +#: dashboards/syspanel/users/tables.py:19 +#: dashboards/syspanel/users/templates/users/_create.html:7 +#: dashboards/syspanel/users/templates/users/_create.html:22 +#: dashboards/syspanel/users/templates/users/create.html:7 +msgid "Create User" msgstr "" #: dashboards/syspanel/projects/templates/projects/_quotas.html:7 @@ -2311,7 +3020,6 @@ msgstr "" #: dashboards/syspanel/projects/templates/projects/_update.html:8 #: dashboards/syspanel/projects/templates/projects/_update.html:23 #: dashboards/syspanel/projects/templates/projects/quotas.html:6 -#: dashboards/syspanel/projects/templates/projects/update.html:6 msgid "Update Project" msgstr "" @@ -2319,6 +3027,26 @@ msgstr "" msgid "From here you can edit a project." msgstr "" +#: dashboards/syspanel/projects/templates/projects/_update_members.html:7 +msgid "" +"From here you can add and remove members to this project from the list of " +"all available users." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/_update_members.html:10 +msgid "All Users" +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/_update_members.html:25 +#: dashboards/syspanel/projects/templates/projects/_update_members.html:32 +msgid "No users found." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/create_user.html:3 +#: dashboards/syspanel/projects/templates/projects/create_user.html:6 +msgid "Add New User" +msgstr "" + #: dashboards/syspanel/projects/templates/projects/usage.html:3 msgid "Project Usage Overview" msgstr "" @@ -2344,7 +3072,7 @@ msgstr "" msgid "Limit" msgstr "" -#: dashboards/syspanel/quotas/views.py:44 +#: dashboards/syspanel/quotas/views.py:45 msgid "Unable to get quota info." msgstr "" @@ -2366,115 +3094,109 @@ msgstr "" msgid "Service" msgstr "" -#: dashboards/syspanel/users/forms.py:42 -msgid "Select a project" -msgstr "" - -#: dashboards/syspanel/users/forms.py:58 +#: dashboards/syspanel/users/forms.py:53 msgid "Passwords do not match." msgstr "" -#: dashboards/syspanel/users/forms.py:63 +#: dashboards/syspanel/users/forms.py:61 #: dashboards/syspanel/users/forms.py:114 -#: dashboards/syspanel/users/tables.py:106 +#: dashboards/syspanel/users/tables.py:107 msgid "User Name" msgstr "" -#: dashboards/syspanel/users/forms.py:64 +#: dashboards/syspanel/users/forms.py:62 #: dashboards/syspanel/users/forms.py:115 -#: dashboards/syspanel/users/tables.py:107 +#: dashboards/syspanel/users/tables.py:108 msgid "Email" msgstr "" -#: dashboards/syspanel/users/forms.py:66 +#: dashboards/syspanel/users/forms.py:64 #: dashboards/syspanel/users/forms.py:116 msgid "Password" msgstr "" -#: dashboards/syspanel/users/forms.py:71 +#: dashboards/syspanel/users/forms.py:69 #: dashboards/syspanel/users/forms.py:123 msgid "Confirm Password" msgstr "" -#: dashboards/syspanel/users/forms.py:74 +#: dashboards/syspanel/users/forms.py:72 #: dashboards/syspanel/users/forms.py:126 msgid "Primary Project" msgstr "" -#: dashboards/syspanel/users/forms.py:96 +#: dashboards/syspanel/users/forms.py:74 +msgid "Role" +msgstr "" + +#: dashboards/syspanel/users/forms.py:95 #, python-format msgid "User \"%s\" was successfully created." msgstr "" #: dashboards/syspanel/users/forms.py:105 -msgid "Unable to add user to primary project." +msgid "Unable to add userto primary project." msgstr "" -#: dashboards/syspanel/users/forms.py:108 +#: dashboards/syspanel/users/forms.py:109 msgid "Unable to create user." msgstr "" -#: dashboards/syspanel/users/forms.py:151 +#: dashboards/syspanel/users/forms.py:150 msgid "name" msgstr "" -#: dashboards/syspanel/users/forms.py:151 +#: dashboards/syspanel/users/forms.py:150 msgid "email" msgstr "" -#: dashboards/syspanel/users/forms.py:160 +#: dashboards/syspanel/users/forms.py:159 msgid "primary project" msgstr "" #: dashboards/syspanel/users/forms.py:172 +#, python-format +msgid "The user %s has no role defined for" +msgstr "" + +#: dashboards/syspanel/users/forms.py:180 msgid "password" msgstr "" -#: dashboards/syspanel/users/forms.py:181 +#: dashboards/syspanel/users/forms.py:189 msgid "User has been updated successfully." msgstr "" -#: dashboards/syspanel/users/forms.py:185 +#: dashboards/syspanel/users/forms.py:193 #, python-format msgid "Unable to update %(attributes)s for the user." msgstr "" -#: dashboards/syspanel/users/tables.py:18 -#: dashboards/syspanel/users/templates/users/_create.html:7 -#: dashboards/syspanel/users/templates/users/_create.html:22 -#: dashboards/syspanel/users/templates/users/create.html:7 -msgid "Create User" -msgstr "" - -#: dashboards/syspanel/users/tables.py:37 +#: dashboards/syspanel/users/tables.py:38 msgid "Enable" msgstr "" -#: dashboards/syspanel/users/tables.py:37 +#: dashboards/syspanel/users/tables.py:38 msgid "Disable" msgstr "" -#: dashboards/syspanel/users/tables.py:38 +#: dashboards/syspanel/users/tables.py:39 msgid "Disabled" msgstr "" -#: dashboards/syspanel/users/tables.py:61 +#: dashboards/syspanel/users/tables.py:62 msgid "You cannot disable the user you are currently logged in as." msgstr "" -#: dashboards/syspanel/users/tables.py:111 +#: dashboards/syspanel/users/tables.py:113 msgid "User ID" msgstr "" -#: dashboards/syspanel/users/views.py:46 -msgid "Unable to retrieve user list." -msgstr "" - -#: dashboards/syspanel/users/views.py:67 +#: dashboards/syspanel/users/views.py:69 msgid "Unable to update user." msgstr "" -#: dashboards/syspanel/users/views.py:93 +#: dashboards/syspanel/users/views.py:103 msgid "Unable to retrieve user roles." msgstr "" @@ -2493,55 +3215,83 @@ msgid "" "From here you can edit the user's details, including their default project." msgstr "" -#: tables/actions.py:299 +#: tables/actions.py:338 msgid "Filter" msgstr "" -#: tables/actions.py:461 +#: tables/actions.py:502 +msgid "N/A" +msgstr "" + +#: tables/actions.py:526 #, python-format msgid "You do not have permission to %(action)s: %(objs)s" msgstr "" -#: tables/actions.py:467 +#: tables/actions.py:532 #, python-format msgid "Unable to %(action)s: %(objs)s" msgstr "" -#: tables/actions.py:473 +#: tables/actions.py:538 #, python-format msgid "%(action)s: %(objs)s" msgstr "" -#: tables/actions.py:483 +#: tables/actions.py:548 msgid "Delete" msgstr "" -#: tables/actions.py:484 +#: tables/actions.py:549 msgid "Deleted" msgstr "" -#: tables/base.py:257 +#: tables/base.py:266 #, python-format msgid "The attribute %(attr)s doesn't exist on %(obj)s." msgstr "" -#: tables/base.py:743 +#: tables/base.py:819 msgid "Actions" msgstr "" -#: tables/base.py:891 +#: tables/base.py:981 msgid "No items to display." msgstr "" -#: tables/base.py:908 +#: tables/base.py:998 #, python-format msgid "No match returned for the id \"%s\"." msgstr "" -#: tables/base.py:1015 +#: tables/base.py:1128 msgid "Please select a row before taking that action." msgstr "" +#: templates/_header.html:3 +msgid "Logged in as" +msgstr "" + +#: templates/_header.html:6 +msgid "Help" +msgstr "" + +#: templates/_header.html:8 +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 "" + #: templates/horizon/_messages.html:7 msgid "Info: " msgstr "" @@ -2558,15 +3308,11 @@ msgstr "" msgid "Error: " msgstr "" -#: templates/horizon/client_side/_loading.html:9 -msgid "Loading…" -msgstr "" - -#: templates/horizon/common/_data_table.html:33 +#: templates/horizon/common/_data_table.html:36 msgid "Summary" msgstr "" -#: templates/horizon/common/_data_table.html:42 +#: templates/horizon/common/_data_table.html:45 #, python-format msgid "Displaying %(counter)s item" msgid_plural "Displaying %(counter)s items" @@ -2601,6 +3347,10 @@ msgstr "" msgid "This Month's GB-Hours" msgstr "" +#: templatetags/branding.py:35 +msgid "Horizon" +msgstr "" + #: templatetags/horizon.py:108 msgid "No Limit" msgstr "" @@ -2664,38 +3414,42 @@ msgstr "" msgid "Giant ants are attacking San Francisco!" msgstr "" -#: tests/table_tests.py:104 +#: tests/table_tests.py:106 msgid "Batch" msgstr "" -#: tests/table_tests.py:105 +#: tests/table_tests.py:107 msgid "Batched" msgstr "" -#: tests/table_tests.py:106 tests/table_tests.py:117 +#: tests/table_tests.py:108 tests/table_tests.py:119 msgid "Item" msgstr "" -#: tests/table_tests.py:107 tests/table_tests.py:118 +#: tests/table_tests.py:109 tests/table_tests.py:120 msgid "Items" msgstr "" -#: tests/table_tests.py:115 +#: tests/table_tests.py:117 msgid "Down" msgstr "" -#: tests/table_tests.py:115 +#: tests/table_tests.py:117 msgid "Up" msgstr "" -#: tests/table_tests.py:116 +#: tests/table_tests.py:118 msgid "Downed" msgstr "" -#: tests/table_tests.py:116 +#: tests/table_tests.py:118 msgid "Upped" msgstr "" +#: tests/table_tests.py:185 +msgid "No Actions Table" +msgstr "" + #: tests/tabs_tests.py:36 msgid "Tab One" msgstr "" @@ -2720,7 +3474,7 @@ msgstr "" msgid "Recoverable Error Tab" msgstr "" -#: tests/testsettings.py:111 +#: tests/testsettings.py:118 msgid "Password must be between 8 and 18 characters." msgstr "" @@ -2786,31 +3540,31 @@ msgstr "" msgid "Download CSV Summary" msgstr "" -#: usage/tables.py:24 +#: usage/tables.py:25 msgid "VCPU Hours" msgstr "" -#: usage/tables.py:31 +#: usage/tables.py:32 msgid "Disk GB Hours" msgstr "" -#: usage/tables.py:39 usage/tables.py:67 +#: usage/tables.py:40 usage/tables.py:68 msgid "Usage Summary" msgstr "" -#: usage/tables.py:59 +#: usage/tables.py:60 msgid "Uptime" msgstr "" -#: utils/fields.py:43 +#: utils/fields.py:46 msgid "Incorrect format for IP address" msgstr "" -#: utils/fields.py:44 +#: utils/fields.py:47 msgid "Invalid version for IP address" msgstr "" -#: utils/fields.py:45 +#: utils/fields.py:48 msgid "Invalid subnet mask" msgstr "" @@ -2818,16 +3572,16 @@ msgstr "" msgid "Password is not accepted" msgstr "" -#: workflows/base.py:69 +#: workflows/base.py:70 msgid "Processing..." msgstr "" -#: workflows/base.py:511 +#: workflows/base.py:539 #, python-format msgid "%s completed successfully." msgstr "" -#: workflows/base.py:512 +#: workflows/base.py:540 #, python-format msgid "%s did not complete." msgstr "" diff --git a/horizon/locale/en/LC_MESSAGES/djangojs.po b/horizon/locale/en/LC_MESSAGES/djangojs.po new file mode 100644 index 000000000..93525ace4 --- /dev/null +++ b/horizon/locale/en/LC_MESSAGES/djangojs.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 "" diff --git a/horizon/locale/es/LC_MESSAGES/django.po b/horizon/locale/es/LC_MESSAGES/django.po index f0056c54d..2a9af7066 100644 --- a/horizon/locale/es/LC_MESSAGES/django.po +++ b/horizon/locale/es/LC_MESSAGES/django.po @@ -8,7 +8,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:47+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -31,7 +31,7 @@ msgstr "" msgid "You are not authorized to access %s" msgstr "" -#: exceptions.py:299 +#: exceptions.py:270 msgid "Unauthorized. Please try logging in again." msgstr "" @@ -40,21 +40,21 @@ msgstr "" msgid "%(type)s (%(backend)s backend)" msgstr "" -#: api/nova.py:185 +#: api/nova.py:186 #, python-format msgid "ALLOW %(from)s:%(to)s from %(group)s" msgstr "" -#: api/nova.py:190 +#: api/nova.py:191 #, python-format msgid "ALLOW %(from)s:%(to)s from %(cidr)s" msgstr "" -#: api/nova.py:502 +#: api/nova.py:514 msgid "Unknown instance" msgstr "" -#: api/swift.py:155 +#: api/swift.py:154 msgid "Unicode is not currently supported for object copy." msgstr "" @@ -62,51 +62,52 @@ msgstr "" msgid "Manage Compute" msgstr "" -#: dashboards/nova/dashboard.py:34 +#: dashboards/nova/dashboard.py:35 msgid "Object Store" msgstr "" -#: dashboards/nova/dashboard.py:39 dashboards/nova/instances/workflows.py:32 -#: dashboards/syspanel/projects/tables.py:52 tests/workflows_tests.py:39 +#: dashboards/nova/dashboard.py:40 dashboards/nova/instances/workflows.py:37 +#: dashboards/syspanel/networks/forms.py:37 +#: dashboards/syspanel/networks/tables.py:66 +#: dashboards/syspanel/projects/tables.py:65 tests/workflows_tests.py:39 msgid "Project" msgstr "" #: dashboards/nova/access_and_security/panel.py:25 -#: dashboards/nova/instances/workflows.py:328 +#: dashboards/nova/instances/workflows.py:345 msgid "Access & Security" msgstr "" -#: dashboards/nova/access_and_security/views.py:51 +#: dashboards/nova/access_and_security/views.py:50 msgid "Unable to retrieve keypair list." msgstr "" -#: dashboards/nova/access_and_security/views.py:60 -#: dashboards/nova/access_and_security/security_groups/views.py:64 +#: dashboards/nova/access_and_security/views.py:59 +#: dashboards/nova/access_and_security/security_groups/views.py:72 msgid "Unable to retrieve security groups." msgstr "" -#: dashboards/nova/access_and_security/views.py:69 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:44 +#: dashboards/nova/access_and_security/views.py:68 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:48 msgid "Unable to retrieve floating IP addresses." msgstr "" -#: dashboards/nova/access_and_security/views.py:76 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:60 +#: dashboards/nova/access_and_security/views.py:75 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:64 #: dashboards/syspanel/instances/views.py:58 msgid "Unable to retrieve instance list." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/forms.py:38 +#: dashboards/nova/access_and_security/floating_ips/forms.py:31 msgid "Pool" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/forms.py:53 +#: dashboards/nova/access_and_security/floating_ips/forms.py:42 #, python-format -msgid "" -"Successfully allocated Floating IP \"%(ip)s\" to project \"%(project)s\"" +msgid "Allocated Floating IP %(ip)s." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/forms.py:57 +#: dashboards/nova/access_and_security/floating_ips/forms.py:46 msgid "Unable to allocate Floating IP." msgstr "" @@ -129,7 +130,7 @@ msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:49 #: dashboards/nova/access_and_security/floating_ips/tables.py:132 -#: dashboards/syspanel/projects/forms.py:119 +#: dashboards/syspanel/projects/workflows.py:42 msgid "Floating IPs" msgstr "" @@ -159,20 +160,20 @@ msgid "%(INSTANCE_NAME)s (%(INSTANCE_ID)s)" msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:115 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:28 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:34 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:31 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:38 #: dashboards/nova/instances/tables.py:270 #: dashboards/syspanel/instances/tables.py:74 msgid "IP Address" msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:118 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:31 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:35 #: dashboards/nova/instances/tables.py:62 #: dashboards/nova/instances/tables.py:79 #: dashboards/nova/instances/tables.py:94 #: dashboards/nova/instances/tables.py:122 -#: dashboards/nova/volumes/tables.py:195 tests/workflows_tests.py:58 +#: dashboards/nova/volumes/tables.py:197 tests/workflows_tests.py:58 msgid "Instance" msgstr "" @@ -180,81 +181,81 @@ msgstr "" msgid "Floating IP Pool" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/views.py:60 +#: dashboards/nova/access_and_security/floating_ips/views.py:64 +msgid "Unable to retrieve floating IP pools." +msgstr "" + +#: dashboards/nova/access_and_security/floating_ips/views.py:67 msgid "No floating IP pools available." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:35 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:39 msgid "Select the IP address you wish to associate with the selected instance." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:48 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:52 msgid "Select an IP address" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:50 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:54 msgid "No IP addresses available" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:77 -#: dashboards/nova/volumes/forms.py:92 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:81 +#: dashboards/nova/volumes/forms.py:160 msgid "Select an instance" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:79 -#: dashboards/nova/volumes/forms.py:94 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:83 +#: dashboards/nova/volumes/forms.py:162 msgid "No instances available" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:98 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:102 msgid "Manage Floating IP Associations" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:99 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:103 msgid "Associate" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:100 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:104 #, python-format msgid "IP address %s associated." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:101 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:105 #, python-format msgid "Unable to associate IP address %s." msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:40 -#: dashboards/nova/access_and_security/keypairs/forms.py:58 +#: dashboards/nova/access_and_security/keypairs/forms.py:38 +#: dashboards/nova/access_and_security/keypairs/forms.py:49 #: dashboards/nova/access_and_security/keypairs/tables.py:51 msgid "Keypair Name" msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:42 +#: dashboards/nova/access_and_security/keypairs/forms.py:40 msgid "" "Keypair names may only contain letters, numbers, underscores and hyphens." msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:53 -msgid "Unable to create keypair." -msgstr "" - -#: dashboards/nova/access_and_security/keypairs/forms.py:60 +#: dashboards/nova/access_and_security/keypairs/forms.py:51 msgid "Public Key" msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:68 +#: dashboards/nova/access_and_security/keypairs/forms.py:60 #, python-format msgid "Successfully imported public key: %s" msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:74 +#: dashboards/nova/access_and_security/keypairs/forms.py:65 msgid "Unable to import keypair." msgstr "" #: dashboards/nova/access_and_security/keypairs/tables.py:29 -#: dashboards/nova/instances/tables.py:272 -#: dashboards/nova/instances/workflows.py:316 +#: dashboards/nova/instances/tables.py:274 +#: dashboards/nova/instances/workflows.py:332 msgid "Keypair" msgstr "" @@ -281,31 +282,43 @@ msgstr "" msgid "Fingerprint" msgstr "" -#: dashboards/nova/access_and_security/keypairs/views.py:64 +#: dashboards/nova/access_and_security/keypairs/views.py:73 #, python-format msgid "Unable to create keypair: %(exc)s" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:40 +#: dashboards/nova/access_and_security/security_groups/forms.py:35 #: dashboards/nova/access_and_security/security_groups/tables.py:57 -#: dashboards/nova/images_and_snapshots/images/forms.py:42 -#: dashboards/nova/images_and_snapshots/images/forms.py:120 +#: dashboards/nova/images_and_snapshots/images/forms.py:39 +#: dashboards/nova/images_and_snapshots/images/forms.py:114 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:9 -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:46 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:63 #: dashboards/nova/instances/templates/instances/_detail_overview.html:9 #: dashboards/nova/instances/templates/instances/_launch_details_help.html:9 -#: dashboards/nova/volumes/tables.py:135 dashboards/nova/volumes/tables.py:153 +#: dashboards/nova/networks/forms.py:36 dashboards/nova/networks/tables.py:82 +#: dashboards/nova/networks/ports/tables.py:40 +#: dashboards/nova/networks/subnets/forms.py:42 +#: dashboards/nova/networks/subnets/forms.py:101 +#: dashboards/nova/networks/subnets/tables.py:69 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:7 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:9 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:9 +#: dashboards/nova/volumes/tables.py:135 dashboards/nova/volumes/tables.py:155 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:9 #: dashboards/syspanel/flavors/forms.py:37 -#: dashboards/syspanel/projects/forms.py:60 -#: dashboards/syspanel/projects/forms.py:85 -#: dashboards/syspanel/projects/tables.py:74 +#: dashboards/syspanel/networks/forms.py:35 +#: dashboards/syspanel/networks/ports/forms.py:39 +#: dashboards/syspanel/networks/ports/forms.py:71 +#: dashboards/syspanel/networks/ports/tables.py:73 +#: dashboards/syspanel/networks/subnets/tables.py:69 +#: dashboards/syspanel/projects/tables.py:87 +#: dashboards/syspanel/projects/workflows.py:66 #: dashboards/syspanel/services/tables.py:38 #: dashboards/syspanel/volumes/tables.py:10 msgid "Name" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:42 +#: dashboards/nova/access_and_security/security_groups/forms.py:37 #: dashboards/nova/access_and_security/security_groups/tables.py:58 #: dashboards/nova/access_and_security/templates/access_and_security/keypairs/_create.html:16 #: dashboards/nova/access_and_security/templates/access_and_security/keypairs/_import.html:16 @@ -313,18 +326,23 @@ msgstr "" #: dashboards/nova/containers/templates/containers/_copy.html:16 #: dashboards/nova/containers/templates/containers/_create.html:16 #: dashboards/nova/containers/templates/containers/_upload.html:17 -#: dashboards/nova/volumes/forms.py:25 dashboards/nova/volumes/forms.py:125 +#: dashboards/nova/networks/templates/networks/_create.html:16 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:17 +#: dashboards/nova/volumes/forms.py:28 dashboards/nova/volumes/forms.py:195 #: dashboards/nova/volumes/tables.py:138 #: dashboards/nova/volumes/templates/volumes/_create.html:18 #: dashboards/nova/volumes/templates/volumes/_create_snapshot.html:17 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:14 #: dashboards/syspanel/flavors/templates/flavors/_create.html:17 #: dashboards/syspanel/images/templates/images/_update.html:17 -#: dashboards/syspanel/projects/forms.py:63 -#: dashboards/syspanel/projects/forms.py:88 -#: dashboards/syspanel/projects/tables.py:76 +#: dashboards/syspanel/networks/templates/networks/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:17 +#: dashboards/syspanel/projects/tables.py:89 +#: dashboards/syspanel/projects/workflows.py:69 #: dashboards/syspanel/projects/templates/projects/_add_user.html:17 #: dashboards/syspanel/projects/templates/projects/_create.html:17 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:17 #: dashboards/syspanel/projects/templates/projects/_quotas.html:16 #: dashboards/syspanel/projects/templates/projects/_update.html:17 #: dashboards/syspanel/users/templates/users/_create.html:16 @@ -332,20 +350,24 @@ msgstr "" msgid "Description" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:50 +#: dashboards/nova/access_and_security/security_groups/forms.py:45 #, python-format msgid "Successfully created security group: %s" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:53 +#: dashboards/nova/access_and_security/security_groups/forms.py:51 msgid "Unable to create security group." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:58 +#: dashboards/nova/access_and_security/security_groups/forms.py:56 #: dashboards/nova/access_and_security/security_groups/tables.py:92 msgid "IP Protocol" msgstr "" +#: dashboards/nova/access_and_security/security_groups/forms.py:60 +msgid "The protocol which this rule should be applied to." +msgstr "" + #: dashboards/nova/access_and_security/security_groups/forms.py:64 #: dashboards/nova/access_and_security/security_groups/forms.py:70 #: dashboards/nova/access_and_security/security_groups/tables.py:94 @@ -383,54 +405,62 @@ msgstr "" msgid "Source Group" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:84 +#: dashboards/nova/access_and_security/security_groups/forms.py:85 +msgid "" +"To specify an allowed IP range, select CIDR. To allow access from all " +"members of another security group select Source Group." +msgstr "" + +#: dashboards/nova/access_and_security/security_groups/forms.py:90 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:15 +#: dashboards/syspanel/networks/subnets/tables.py:71 msgid "CIDR" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:87 +#: dashboards/nova/access_and_security/security_groups/forms.py:93 msgid "Classless Inter-Domain Routing (e.g. 192.168.0.0/24)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:116 +#: dashboards/nova/access_and_security/security_groups/forms.py:120 msgid "The ICMP type is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:119 +#: dashboards/nova/access_and_security/security_groups/forms.py:123 msgid "The ICMP code is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:122 +#: dashboards/nova/access_and_security/security_groups/forms.py:126 msgid "The ICMP type not in range (-1, 255)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:125 +#: dashboards/nova/access_and_security/security_groups/forms.py:129 msgid "The ICMP code not in range (-1, 255)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:129 +#: dashboards/nova/access_and_security/security_groups/forms.py:133 msgid "The \"from\" port number is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:132 +#: dashboards/nova/access_and_security/security_groups/forms.py:136 msgid "The \"to\" port number is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:135 +#: dashboards/nova/access_and_security/security_groups/forms.py:139 msgid "" "The \"to\" port number must be greater than or equal to the \"from\" port " "number." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:141 +#: dashboards/nova/access_and_security/security_groups/forms.py:145 msgid "Either CIDR or Source Group may be specified, but not both." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:163 +#: dashboards/nova/access_and_security/security_groups/forms.py:167 #, python-format msgid "Successfully added rule: %s" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:166 +#: dashboards/nova/access_and_security/security_groups/forms.py:172 msgid "Unable to add rule to security group." msgstr "" @@ -440,7 +470,7 @@ msgstr "" #: dashboards/nova/access_and_security/security_groups/tables.py:31 #: dashboards/nova/access_and_security/security_groups/tables.py:65 -#: dashboards/nova/instances/workflows.py:320 +#: dashboards/nova/instances/workflows.py:337 #: dashboards/nova/instances/templates/instances/_detail_overview.html:49 msgid "Security Groups" msgstr "" @@ -472,10 +502,15 @@ msgstr "" msgid "Security Group Rules" msgstr "" -#: dashboards/nova/access_and_security/security_groups/views.py:55 +#: dashboards/nova/access_and_security/security_groups/views.py:58 msgid "Unable to retrieve security group." msgstr "" +#: dashboards/nova/access_and_security/security_groups/views.py:78 +#, python-format +msgid "%s (current)" +msgstr "" + #: dashboards/nova/access_and_security/templates/access_and_security/index.html:6 msgid "Access & Security" msgstr "" @@ -490,9 +525,14 @@ msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_update.html:16 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:17 #: dashboards/nova/instances/templates/instances/_update.html:16 +#: dashboards/nova/networks/templates/networks/_update.html:16 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:25 #: dashboards/settings/ec2/templates/ec2/download_form.html:17 #: dashboards/settings/project/templates/project/_openrc.html:24 #: dashboards/settings/user/templates/user/_settings.html:17 +#: dashboards/syspanel/networks/templates/networks/_update.html:16 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:21 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:25 msgid "Description:" msgstr "" @@ -521,7 +561,11 @@ msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_update.html:23 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:24 #: dashboards/nova/instances/templates/instances/_update.html:23 -#: dashboards/nova/volumes/templates/volumes/_attach.html:20 +#: dashboards/nova/networks/templates/networks/_create.html:23 +#: dashboards/nova/networks/templates/networks/_update.html:23 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:24 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:32 +#: dashboards/nova/volumes/templates/volumes/_attach.html:24 #: dashboards/nova/volumes/templates/volumes/_create.html:56 #: dashboards/nova/volumes/templates/volumes/_create_snapshot.html:24 #: dashboards/settings/ec2/templates/ec2/download_form.html:24 @@ -529,8 +573,15 @@ msgstr "" #: dashboards/settings/user/templates/user/_settings.html:24 #: dashboards/syspanel/flavors/templates/flavors/_create.html:24 #: dashboards/syspanel/images/templates/images/_update.html:24 +#: dashboards/syspanel/networks/templates/networks/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/_update.html:23 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:28 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:32 #: dashboards/syspanel/projects/templates/projects/_add_user.html:24 #: dashboards/syspanel/projects/templates/projects/_create.html:24 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:24 #: dashboards/syspanel/projects/templates/projects/_quotas.html:23 #: dashboards/syspanel/projects/templates/projects/_update.html:24 #: dashboards/syspanel/users/templates/users/_create.html:23 @@ -583,157 +634,151 @@ msgstr "" msgid "Add Rule" msgstr "" -#: dashboards/nova/containers/forms.py:38 +#: dashboards/nova/containers/browsers.py:30 +msgid "Swift" +msgstr "" + +#: dashboards/nova/containers/forms.py:37 msgid "Slash is not an allowed character." msgstr "" -#: dashboards/nova/containers/forms.py:48 -#: dashboards/nova/containers/tables.py:91 +#: dashboards/nova/containers/forms.py:47 +#: dashboards/nova/containers/tables.py:125 msgid "Container Name" msgstr "" -#: dashboards/nova/containers/forms.py:56 +#: dashboards/nova/containers/forms.py:55 msgid "Container created successfully." msgstr "" -#: dashboards/nova/containers/forms.py:67 +#: dashboards/nova/containers/forms.py:66 msgid "Folder created successfully." msgstr "" -#: dashboards/nova/containers/forms.py:75 +#: dashboards/nova/containers/forms.py:69 msgid "Unable to create container." msgstr "" -#: dashboards/nova/containers/forms.py:85 -#: dashboards/nova/containers/tables.py:157 +#: dashboards/nova/containers/forms.py:77 +#: dashboards/nova/containers/tables.py:253 msgid "Object Name" msgstr "" -#: dashboards/nova/containers/forms.py:87 +#: dashboards/nova/containers/forms.py:79 msgid "File" msgstr "" -#: dashboards/nova/containers/forms.py:103 +#: dashboards/nova/containers/forms.py:95 msgid "Object was successfully uploaded." msgstr "" -#: dashboards/nova/containers/forms.py:105 +#: dashboards/nova/containers/forms.py:98 msgid "Unable to upload object." msgstr "" -#: dashboards/nova/containers/forms.py:111 +#: dashboards/nova/containers/forms.py:102 msgid "Destination container" msgstr "" -#: dashboards/nova/containers/forms.py:115 +#: dashboards/nova/containers/forms.py:106 msgid "Destination object name" msgstr "" -#: dashboards/nova/containers/forms.py:145 -#: dashboards/nova/containers/forms.py:169 +#: dashboards/nova/containers/forms.py:136 +#: dashboards/nova/containers/forms.py:162 msgid "Unable to copy object." msgstr "" -#: dashboards/nova/containers/forms.py:161 +#: dashboards/nova/containers/forms.py:152 #, python-format msgid "Copied \"%(orig)s\" to \"%(dest)s\" as \"%(new)s\"." msgstr "" #: dashboards/nova/containers/panel.py:28 -#: dashboards/nova/containers/tables.py:35 -#: dashboards/nova/containers/tables.py:102 -#: dashboards/nova/containers/templates/containers/index.html:6 +#: dashboards/nova/containers/tables.py:41 +#: dashboards/nova/containers/tables.py:132 msgid "Containers" msgstr "" -#: dashboards/nova/containers/tables.py:34 -#: dashboards/nova/containers/templates/containers/detail.html:7 +#: dashboards/nova/containers/tables.py:40 +#: dashboards/nova/containers/templates/containers/index.html:7 msgid "Container" msgstr "" -#: dashboards/nova/containers/tables.py:42 +#: dashboards/nova/containers/tables.py:49 msgid "Containers must be empty before deletion." msgstr "" -#: dashboards/nova/containers/tables.py:48 +#: dashboards/nova/containers/tables.py:67 #: dashboards/nova/containers/templates/containers/_create.html:7 #: dashboards/nova/containers/templates/containers/_create.html:22 #: dashboards/nova/containers/templates/containers/create.html:6 msgid "Create Container" msgstr "" -#: dashboards/nova/containers/tables.py:55 +#: dashboards/nova/containers/tables.py:74 msgid "View Container" msgstr "" -#: dashboards/nova/containers/tables.py:62 +#: dashboards/nova/containers/tables.py:86 #: dashboards/nova/containers/templates/containers/_upload.html:23 #: dashboards/nova/containers/templates/containers/upload.html:3 msgid "Upload Object" msgstr "" -#: dashboards/nova/containers/tables.py:93 -#: dashboards/nova/containers/tables.py:109 -#: dashboards/nova/containers/tables.py:169 -#: dashboards/nova/containers/templates/containers/detail.html:3 +#: dashboards/nova/containers/tables.py:140 +#: dashboards/nova/containers/tables.py:159 +msgid "Object" +msgstr "" + +#: dashboards/nova/containers/tables.py:141 +#: dashboards/nova/containers/tables.py:160 +#: dashboards/nova/containers/tables.py:263 msgid "Objects" msgstr "" -#: dashboards/nova/containers/tables.py:95 -#: dashboards/nova/containers/tables.py:160 +#: dashboards/nova/containers/tables.py:152 +msgid "Folder" +msgstr "" + +#: dashboards/nova/containers/tables.py:153 +msgid "Folders" +msgstr "" + +#: dashboards/nova/containers/tables.py:166 +msgid "Copy" +msgstr "" + +#: dashboards/nova/containers/tables.py:178 +msgid "Download" +msgstr "" + +#: dashboards/nova/containers/tables.py:232 +msgid "Create Folder" +msgstr "" + +#: dashboards/nova/containers/tables.py:256 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:30 -#: dashboards/nova/instances/tables.py:271 -#: dashboards/nova/volumes/tables.py:140 +#: dashboards/nova/instances/tables.py:272 +#: dashboards/nova/volumes/tables.py:141 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:26 #: dashboards/syspanel/instances/tables.py:76 msgid "Size" msgstr "" -#: dashboards/nova/containers/tables.py:108 -msgid "Object" -msgstr "" - -#: dashboards/nova/containers/tables.py:119 -msgid "Copy" -msgstr "" - -#: dashboards/nova/containers/tables.py:130 -msgid "Download" -msgstr "" - -#: dashboards/nova/containers/tables.py:181 -msgid "Create Folder" -msgstr "" - -#: dashboards/nova/containers/tables.py:193 -msgid "Folder" -msgstr "" - -#: dashboards/nova/containers/tables.py:194 -msgid "Folders" -msgstr "" - -#: dashboards/nova/containers/tables.py:200 -msgid "Subfolder Name" -msgstr "" - -#: dashboards/nova/containers/tables.py:208 -msgid "Subfolders" -msgstr "" - -#: dashboards/nova/containers/views.py:58 +#: dashboards/nova/containers/views.py:52 msgid "Unable to retrieve container list." msgstr "" -#: dashboards/nova/containers/views.py:103 +#: dashboards/nova/containers/views.py:80 msgid "Unable to retrieve object list." msgstr "" -#: dashboards/nova/containers/views.py:161 +#: dashboards/nova/containers/views.py:175 msgid "Unable to retrieve object." msgstr "" -#: dashboards/nova/containers/views.py:183 +#: dashboards/nova/containers/views.py:204 msgid "Unable to list containers." msgstr "" @@ -783,117 +828,118 @@ msgstr "" msgid "Images & Snapshots" msgstr "" -#: dashboards/nova/images_and_snapshots/views.py:60 +#: dashboards/nova/images_and_snapshots/views.py:61 msgid "Unable to retrieve images." msgstr "" -#: dashboards/nova/images_and_snapshots/views.py:71 +#: dashboards/nova/images_and_snapshots/views.py:72 msgid "Unable to retrieve snapshots." msgstr "" -#: dashboards/nova/images_and_snapshots/views.py:79 +#: dashboards/nova/images_and_snapshots/views.py:80 +#: dashboards/nova/volumes/forms.py:65 msgid "Unable to retrieve volume snapshots." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:44 +#: dashboards/nova/images_and_snapshots/images/forms.py:41 msgid "Image Location" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:45 -msgid "An external (HTTP) URL where the image should be loaded from." +#: dashboards/nova/images_and_snapshots/images/forms.py:42 +msgid "An external (HTTP) URL to load the image from." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:48 -#: dashboards/nova/images_and_snapshots/images/forms.py:135 +#: dashboards/nova/images_and_snapshots/images/forms.py:45 +#: dashboards/nova/images_and_snapshots/images/forms.py:129 #: dashboards/nova/images_and_snapshots/images/tables.py:125 msgid "Format" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:52 +#: dashboards/nova/images_and_snapshots/images/forms.py:49 msgid "AKI - Amazon Kernel Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:55 +#: dashboards/nova/images_and_snapshots/images/forms.py:52 msgid "AMI - Amazon Machine Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:58 +#: dashboards/nova/images_and_snapshots/images/forms.py:55 msgid "ARI - Amazon Ramdisk Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:61 +#: dashboards/nova/images_and_snapshots/images/forms.py:58 msgid "ISO - Optical Disk Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:63 +#: dashboards/nova/images_and_snapshots/images/forms.py:60 msgid "QCOW2 - QEMU Emulator" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:70 +#: dashboards/nova/images_and_snapshots/images/forms.py:67 msgid "Minimum Disk (GB)" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:71 -#: dashboards/nova/images_and_snapshots/images/forms.py:78 +#: dashboards/nova/images_and_snapshots/images/forms.py:68 +#: dashboards/nova/images_and_snapshots/images/forms.py:75 msgid "" "The minimum disk size required to boot the image. If unspecified, this value " "defaults to 0 (no minimum)." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:77 +#: dashboards/nova/images_and_snapshots/images/forms.py:74 msgid "Minimum Ram (MB)" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:84 -#: dashboards/nova/images_and_snapshots/images/forms.py:139 +#: dashboards/nova/images_and_snapshots/images/forms.py:81 +#: dashboards/nova/images_and_snapshots/images/forms.py:133 #: dashboards/nova/images_and_snapshots/images/tables.py:122 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:15 msgid "Public" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:108 +#: dashboards/nova/images_and_snapshots/images/forms.py:105 #, python-format msgid "Your image %s has been queued for creation." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:111 +#: dashboards/nova/images_and_snapshots/images/forms.py:109 msgid "Unable to create new image." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:121 +#: dashboards/nova/images_and_snapshots/images/forms.py:115 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:48 msgid "Kernel ID" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:126 +#: dashboards/nova/images_and_snapshots/images/forms.py:120 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:52 msgid "Ramdisk ID" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:131 +#: dashboards/nova/images_and_snapshots/images/forms.py:125 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:44 msgid "Architecture" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:144 +#: dashboards/nova/images_and_snapshots/images/forms.py:137 #, python-format msgid "Unable to update image \"%s\"." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:163 +#: dashboards/nova/images_and_snapshots/images/forms.py:161 msgid "Image was successfully updated." msgstr "" #: dashboards/nova/images_and_snapshots/images/tables.py:33 #: dashboards/nova/images_and_snapshots/snapshots/tables.py:32 -#: dashboards/nova/instances/workflows.py:394 +#: dashboards/nova/instances/workflows.py:451 msgid "Launch" msgstr "" #: dashboards/nova/images_and_snapshots/images/tables.py:45 #: dashboards/nova/images_and_snapshots/images/tables.py:81 -#: dashboards/nova/instances/workflows.py:162 #: dashboards/nova/instances/workflows.py:167 +#: dashboards/nova/instances/workflows.py:172 msgid "Image" msgstr "" @@ -912,7 +958,7 @@ msgid "Create Image" msgstr "" #: dashboards/nova/images_and_snapshots/images/tables.py:67 -#: dashboards/syspanel/users/tables.py:30 +#: dashboards/syspanel/users/tables.py:31 msgid "Edit" msgstr "" @@ -924,18 +970,29 @@ msgstr "" #: dashboards/nova/images_and_snapshots/images/tables.py:118 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:13 -#: dashboards/nova/instances/tables.py:275 +#: dashboards/nova/instances/tables.py:277 #: dashboards/nova/instances/templates/instances/_detail_overview.html:13 -#: dashboards/nova/volumes/tables.py:143 +#: dashboards/nova/networks/tables.py:86 +#: dashboards/nova/networks/ports/tables.py:44 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:13 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:30 +#: dashboards/nova/volumes/tables.py:145 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:17 -#: dashboards/syspanel/instances/tables.py:80 +#: dashboards/syspanel/instances/tables.py:81 +#: dashboards/syspanel/networks/tables.py:71 +#: dashboards/syspanel/networks/ports/tables.py:77 msgid "Status" msgstr "" #: dashboards/nova/images_and_snapshots/images/tabs.py:26 -#: dashboards/nova/instances/tabs.py:25 dashboards/nova/overview/panel.py:28 +#: dashboards/nova/instances/tabs.py:25 +#: dashboards/nova/networks/ports/tabs.py:29 +#: dashboards/nova/networks/subnets/tabs.py:31 +#: dashboards/nova/overview/panel.py:28 #: dashboards/nova/overview/templates/overview/usage.html:6 -#: dashboards/nova/volumes/tabs.py:26 dashboards/syspanel/overview/panel.py:28 +#: dashboards/nova/volumes/tabs.py:26 +#: dashboards/syspanel/networks/ports/tabs.py:29 +#: dashboards/syspanel/overview/panel.py:28 #: dashboards/syspanel/overview/templates/overview/usage.html:6 msgid "Overview" msgstr "" @@ -944,16 +1001,16 @@ msgstr "" msgid "Unable to retrieve image details." msgstr "" -#: dashboards/nova/images_and_snapshots/images/views.py:57 +#: dashboards/nova/images_and_snapshots/images/views.py:60 msgid "Unable to retrieve image." msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:38 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:36 msgid "Instance ID" msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:41 -#: dashboards/nova/volumes/forms.py:123 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:39 +#: dashboards/nova/volumes/forms.py:193 msgid "Snapshot Name" msgstr "" @@ -962,14 +1019,13 @@ msgstr "" msgid "Snapshot \"%(name)s\" created for instance \"%(inst)s\"" msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:56 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:55 msgid "Unable to create snapshot." msgstr "" #: dashboards/nova/images_and_snapshots/snapshots/tables.py:47 -#: dashboards/nova/instances/tables.py:162 -#: dashboards/nova/instances/workflows.py:101 -#: dashboards/nova/instances/workflows.py:163 +#: dashboards/nova/instances/workflows.py:106 +#: dashboards/nova/instances/workflows.py:168 msgid "Snapshot" msgstr "" @@ -981,15 +1037,10 @@ msgstr "" msgid "Instance Snapshots" msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/views.py:50 +#: dashboards/nova/images_and_snapshots/snapshots/views.py:52 msgid "Unable to retrieve instance." msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/views.py:53 -#, python-format -msgid "To create a snapshot, the instance must be in the \"%s\" state." -msgstr "" - #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/index.html:3 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/index.html:6 msgid "Images & Snapshots" @@ -1034,8 +1085,14 @@ msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:11 #: dashboards/nova/instances/templates/instances/_detail_overview.html:11 +#: dashboards/nova/networks/forms.py:38 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:9 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:12 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:11 -#: dashboards/syspanel/projects/forms.py:83 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:12 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:12 #: dashboards/syspanel/users/forms.py:113 msgid "ID" msgstr "" @@ -1076,7 +1133,9 @@ msgid "Euca2ools state" msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:60 -#: dashboards/syspanel/projects/tables.py:77 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:15 +#: dashboards/syspanel/projects/tables.py:90 msgid "Project ID" msgstr "" @@ -1107,6 +1166,7 @@ msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:8 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:23 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/create.html:3 +#: dashboards/nova/instances/tables.py:162 #: dashboards/nova/volumes/tables.py:67 msgid "Create Snapshot" msgstr "" @@ -1119,17 +1179,24 @@ msgstr "" msgid "Create a Snapshot" msgstr "" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:30 -#: dashboards/nova/instances/workflows.py:70 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:32 +#: dashboards/nova/instances/workflows.py:75 msgid "Volume Snapshot" msgstr "" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:31 -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:52 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:33 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:69 msgid "Volume Snapshots" msgstr "" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:48 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:41 +#: dashboards/nova/volumes/tables.py:50 +#: dashboards/nova/volumes/templates/volumes/_create.html:8 +#: dashboards/nova/volumes/templates/volumes/_create.html:55 +msgid "Create Volume" +msgstr "" + +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:65 msgid "Volume ID" msgstr "" @@ -1138,7 +1205,7 @@ msgstr "" msgid "Instance \"%s\" updated." msgstr "" -#: dashboards/nova/instances/forms.py:46 +#: dashboards/nova/instances/forms.py:49 msgid "Unable to update instance." msgstr "" @@ -1147,13 +1214,13 @@ msgstr "" #: dashboards/nova/instances/tables.py:80 #: dashboards/nova/instances/tables.py:95 #: dashboards/nova/instances/tables.py:123 -#: dashboards/nova/instances/tables.py:290 +#: dashboards/nova/instances/tables.py:292 #: dashboards/nova/instances/templates/instances/index.html:3 #: dashboards/nova/instances/templates/instances/index.html:6 #: dashboards/syspanel/instances/panel.py:28 -#: dashboards/syspanel/instances/tables.py:95 +#: dashboards/syspanel/instances/tables.py:96 #: dashboards/syspanel/instances/templates/instances/index.html:3 -#: dashboards/syspanel/projects/forms.py:115 +#: dashboards/syspanel/projects/workflows.py:35 msgid "Instances" msgstr "" @@ -1206,7 +1273,7 @@ msgid "Resumed" msgstr "" #: dashboards/nova/instances/tables.py:148 -#: dashboards/nova/instances/workflows.py:393 +#: dashboards/nova/instances/workflows.py:450 #: dashboards/nova/instances/templates/instances/launch.html:3 #: dashboards/nova/instances/templates/instances/launch.html:6 msgid "Launch Instance" @@ -1236,17 +1303,17 @@ msgid "Not available" msgstr "" #: dashboards/nova/instances/tables.py:269 -#: dashboards/syspanel/instances/tables.py:73 usage/tables.py:56 +#: dashboards/syspanel/instances/tables.py:73 usage/tables.py:57 msgid "Instance Name" msgstr "" -#: dashboards/nova/instances/tables.py:279 -#: dashboards/syspanel/instances/tables.py:84 +#: dashboards/nova/instances/tables.py:281 +#: dashboards/syspanel/instances/tables.py:85 msgid "Task" msgstr "" -#: dashboards/nova/instances/tables.py:286 -#: dashboards/syspanel/instances/tables.py:91 +#: dashboards/nova/instances/tables.py:288 +#: dashboards/syspanel/instances/tables.py:92 msgid "Power State" msgstr "" @@ -1277,224 +1344,276 @@ msgstr "" msgid "Unable to retrieve instance size information." msgstr "" -#: dashboards/nova/instances/views.py:137 +#: dashboards/nova/instances/views.py:143 msgid "Unable to retrieve instance details." msgstr "" -#: dashboards/nova/instances/views.py:172 +#: dashboards/nova/instances/views.py:178 #, python-format msgid "Unable to retrieve details for instance \"%s\"." msgstr "" -#: dashboards/nova/instances/workflows.py:33 -#: dashboards/syspanel/projects/tables.py:92 -#: dashboards/syspanel/users/tables.py:39 -#: dashboards/syspanel/users/tables.py:73 tests/workflows_tests.py:40 +#: dashboards/nova/instances/workflows.py:38 +#: dashboards/syspanel/projects/tables.py:106 +#: dashboards/syspanel/users/tables.py:40 +#: dashboards/syspanel/users/tables.py:74 tests/workflows_tests.py:40 msgid "User" msgstr "" -#: dashboards/nova/instances/workflows.py:47 +#: dashboards/nova/instances/workflows.py:52 msgid "Project & User" msgstr "" -#: dashboards/nova/instances/workflows.py:49 +#: dashboards/nova/instances/workflows.py:54 msgid "" "Admin users may optionally select the project and user for whom the instance " "should be created." msgstr "" -#: dashboards/nova/instances/workflows.py:60 +#: dashboards/nova/instances/workflows.py:65 msgid "Don't boot from a volume." msgstr "" -#: dashboards/nova/instances/workflows.py:61 +#: dashboards/nova/instances/workflows.py:66 msgid "Boot from volume." msgstr "" -#: dashboards/nova/instances/workflows.py:62 +#: dashboards/nova/instances/workflows.py:67 msgid "Boot from volume snapshot (creates a new volume)." msgstr "" -#: dashboards/nova/instances/workflows.py:66 -#: dashboards/nova/instances/workflows.py:84 +#: dashboards/nova/instances/workflows.py:71 +#: dashboards/nova/instances/workflows.py:89 msgid "Volume Options" msgstr "" -#: dashboards/nova/instances/workflows.py:69 -#: dashboards/nova/instances/workflows.py:104 +#: dashboards/nova/instances/workflows.py:74 +#: dashboards/nova/instances/workflows.py:109 #: dashboards/nova/instances/templates/instances/_detail_overview.html:93 -#: dashboards/nova/volumes/tables.py:36 dashboards/nova/volumes/tables.py:171 +#: dashboards/nova/volumes/tables.py:36 dashboards/nova/volumes/tables.py:173 msgid "Volume" msgstr "" -#: dashboards/nova/instances/workflows.py:72 +#: dashboards/nova/instances/workflows.py:77 +#: dashboards/nova/volumes/forms.py:126 msgid "Device Name" msgstr "" -#: dashboards/nova/instances/workflows.py:75 +#: dashboards/nova/instances/workflows.py:80 msgid "Volume mount point (e.g. 'vda' mounts at '/dev/vda')." msgstr "" -#: dashboards/nova/instances/workflows.py:77 +#: dashboards/nova/instances/workflows.py:82 msgid "Delete on Terminate" msgstr "" -#: dashboards/nova/instances/workflows.py:80 +#: dashboards/nova/instances/workflows.py:85 msgid "Delete volume on instance terminate" msgstr "" -#: dashboards/nova/instances/workflows.py:111 +#: dashboards/nova/instances/workflows.py:116 msgid "Select Volume" msgstr "" -#: dashboards/nova/instances/workflows.py:119 +#: dashboards/nova/instances/workflows.py:124 msgid "Unable to retrieve list of volumes." msgstr "" -#: dashboards/nova/instances/workflows.py:123 +#: dashboards/nova/instances/workflows.py:128 msgid "Select Volume Snapshot" msgstr "" -#: dashboards/nova/instances/workflows.py:132 +#: dashboards/nova/instances/workflows.py:137 msgid "Unable to retrieve list of volume snapshots." msgstr "" -#: dashboards/nova/instances/workflows.py:165 +#: dashboards/nova/instances/workflows.py:170 msgid "Instance Source" msgstr "" -#: dashboards/nova/instances/workflows.py:168 +#: dashboards/nova/instances/workflows.py:173 msgid "Instance Snapshot" msgstr "" -#: dashboards/nova/instances/workflows.py:170 +#: dashboards/nova/instances/workflows.py:175 msgid "Server Name" msgstr "" -#: dashboards/nova/instances/workflows.py:171 +#: dashboards/nova/instances/workflows.py:176 #: dashboards/nova/instances/templates/instances/_detail_overview.html:22 #: dashboards/syspanel/flavors/tables.py:13 msgid "Flavor" msgstr "" -#: dashboards/nova/instances/workflows.py:172 +#: dashboards/nova/instances/workflows.py:177 msgid "Size of image to launch." msgstr "" -#: dashboards/nova/instances/workflows.py:173 +#: dashboards/nova/instances/workflows.py:178 msgid "Instance Count" msgstr "" -#: dashboards/nova/instances/workflows.py:176 +#: dashboards/nova/instances/workflows.py:181 msgid "Number of instances to launch." msgstr "" -#: dashboards/nova/instances/workflows.py:179 +#: dashboards/nova/instances/workflows.py:184 msgid "Details" msgstr "" -#: dashboards/nova/instances/workflows.py:198 +#: dashboards/nova/instances/workflows.py:197 +msgid "" +"There are no image sources available; you must first create an image before " +"attempting to launch an instance." +msgstr "" + +#: dashboards/nova/instances/workflows.py:202 +msgid "Please select an option for the instance source." +msgstr "" + +#: dashboards/nova/instances/workflows.py:211 msgid "" "Launching multiple instances is only supported for images and instance " "snapshots." msgstr "" -#: dashboards/nova/instances/workflows.py:214 +#: dashboards/nova/instances/workflows.py:227 msgid "Unable to retrieve public images." msgstr "" -#: dashboards/nova/instances/workflows.py:228 +#: dashboards/nova/instances/workflows.py:241 msgid "Unable to retrieve images for the current project." msgstr "" -#: dashboards/nova/instances/workflows.py:251 +#: dashboards/nova/instances/workflows.py:264 msgid "Select Image" msgstr "" -#: dashboards/nova/instances/workflows.py:253 +#: dashboards/nova/instances/workflows.py:266 msgid "No images available." msgstr "" -#: dashboards/nova/instances/workflows.py:262 +#: dashboards/nova/instances/workflows.py:275 msgid "Select Instance Snapshot" msgstr "" -#: dashboards/nova/instances/workflows.py:264 +#: dashboards/nova/instances/workflows.py:277 msgid "No snapshots available." msgstr "" -#: dashboards/nova/instances/workflows.py:275 +#: dashboards/nova/instances/workflows.py:288 msgid "Unable to retrieve instance flavors." msgstr "" -#: dashboards/nova/instances/workflows.py:288 +#: dashboards/nova/instances/workflows.py:301 msgid "Unable to retrieve quota information." msgstr "" -#: dashboards/nova/instances/workflows.py:318 +#: dashboards/nova/instances/workflows.py:334 msgid "Which keypair to use for authentication." msgstr "" -#: dashboards/nova/instances/workflows.py:324 +#: dashboards/nova/instances/workflows.py:341 msgid "Launch instance in these security groups." msgstr "" -#: dashboards/nova/instances/workflows.py:329 +#: dashboards/nova/instances/workflows.py:346 msgid "" "Control access to your instance via keypairs, security groups, and other " "mechanisms." msgstr "" -#: dashboards/nova/instances/workflows.py:339 +#: dashboards/nova/instances/workflows.py:356 msgid "Unable to retrieve keypairs." msgstr "" -#: dashboards/nova/instances/workflows.py:341 +#: dashboards/nova/instances/workflows.py:358 msgid "Select a keypair" msgstr "" -#: dashboards/nova/instances/workflows.py:343 +#: dashboards/nova/instances/workflows.py:360 msgid "No keypairs available." msgstr "" -#: dashboards/nova/instances/workflows.py:352 +#: dashboards/nova/instances/workflows.py:369 msgid "Unable to retrieve list of security groups" msgstr "" -#: dashboards/nova/instances/workflows.py:372 +#: dashboards/nova/instances/workflows.py:389 msgid "Customization Script" msgstr "" -#: dashboards/nova/instances/workflows.py:374 +#: dashboards/nova/instances/workflows.py:391 msgid "" "A script or set of commands to be executed after the instance has been built " "(max 16kb)." msgstr "" -#: dashboards/nova/instances/workflows.py:381 +#: dashboards/nova/instances/workflows.py:398 msgid "Post-Creation" msgstr "" -#: dashboards/nova/instances/workflows.py:395 +#: dashboards/nova/instances/workflows.py:409 +#: dashboards/nova/networks/panel.py:24 dashboards/nova/networks/tables.py:32 +#: dashboards/nova/networks/tables.py:92 +#: dashboards/nova/networks/templates/networks/index.html:3 +#: dashboards/nova/networks/templates/networks/index.html:6 +#: dashboards/syspanel/networks/panel.py:24 +#: dashboards/syspanel/networks/tables.py:34 +#: dashboards/syspanel/networks/tables.py:77 +#: dashboards/syspanel/networks/templates/networks/index.html:3 +#: dashboards/syspanel/networks/templates/networks/index.html:6 +msgid "Networks" +msgstr "" + +#: dashboards/nova/instances/workflows.py:412 +msgid "Launch instance withthese networks" +msgstr "" + +#: dashboards/nova/instances/workflows.py:416 +msgid "Networking" +msgstr "" + +#: dashboards/nova/instances/workflows.py:418 +msgid "Select networks for your instance." +msgstr "" + +#: dashboards/nova/instances/workflows.py:429 +msgid "Unable to retrieve networks." +msgstr "" + +#: dashboards/nova/instances/workflows.py:452 #, python-format msgid "Launched %(count)s named \"%(name)s\"." msgstr "" -#: dashboards/nova/instances/workflows.py:396 +#: dashboards/nova/instances/workflows.py:453 #, python-format msgid "Unable to launch %(count)s named \"%(name)s\"." msgstr "" -#: dashboards/nova/instances/workflows.py:408 +#: dashboards/nova/instances/workflows.py:466 #, python-format msgid "%s instances" msgstr "" -#: dashboards/nova/instances/workflows.py:411 +#: dashboards/nova/instances/workflows.py:469 msgid "instance" msgstr "" +#: dashboards/nova/instances/templates/instances/_detail_log.html:4 +msgid "Instance Console Log" +msgstr "" + #: dashboards/nova/instances/templates/instances/_detail_log.html:7 +msgid "Log Length" +msgstr "" + +#: dashboards/nova/instances/templates/instances/_detail_log.html:9 +msgid "Go" +msgstr "" + +#: dashboards/nova/instances/templates/instances/_detail_log.html:11 msgid "View Full Log" msgstr "" @@ -1511,8 +1630,8 @@ msgstr "" #: dashboards/nova/instances/templates/instances/_detail_overview.html:26 #: dashboards/nova/instances/templates/instances/_launch_details_help.html:10 #: dashboards/syspanel/flavors/forms.py:38 -#: dashboards/syspanel/flavors/tables.py:30 -#: dashboards/syspanel/projects/forms.py:114 usage/tables.py:19 +#: dashboards/syspanel/flavors/tables.py:34 +#: dashboards/syspanel/projects/workflows.py:34 usage/tables.py:19 msgid "VCPUs" msgstr "" @@ -1554,7 +1673,7 @@ msgid "Volumes Attached" msgstr "" #: dashboards/nova/instances/templates/instances/_detail_overview.html:88 -#: dashboards/nova/volumes/tables.py:156 +#: dashboards/nova/volumes/tables.py:158 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:38 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:45 msgid "Attached To" @@ -1618,12 +1737,12 @@ msgid "Flavor Details" msgstr "" #: dashboards/nova/instances/templates/instances/_launch_details_help.html:11 -#: dashboards/syspanel/flavors/tables.py:32 +#: dashboards/syspanel/flavors/tables.py:38 msgid "Root Disk" msgstr "" #: dashboards/nova/instances/templates/instances/_launch_details_help.html:12 -#: dashboards/syspanel/flavors/tables.py:34 +#: dashboards/syspanel/flavors/tables.py:40 msgid "Ephemeral Disk" msgstr "" @@ -1659,6 +1778,11 @@ msgid "You may update the editable properties of your instance here." msgstr "" #: dashboards/nova/instances/templates/instances/_update.html:22 +#: dashboards/nova/networks/templates/networks/_update.html:22 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:31 +#: dashboards/syspanel/networks/templates/networks/_update.html:22 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:27 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:31 msgid "Save Changes" msgstr "" @@ -1671,6 +1795,434 @@ msgstr "" msgid "Update Instance" msgstr "" +#: dashboards/nova/networks/forms.py:47 +#, python-format +msgid "Network %s was successfully updated." +msgstr "" + +#: dashboards/nova/networks/forms.py:52 +#, python-format +msgid "Failed to update network %s" +msgstr "" + +#: dashboards/nova/networks/tables.py:31 +#: dashboards/nova/networks/templates/networks/subnets/index.html:3 +#: dashboards/nova/networks/templates/networks/subnets/index.html:6 +#: dashboards/syspanel/networks/tables.py:33 +msgid "Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:47 +#: dashboards/syspanel/networks/tables.py:40 +#, python-format +msgid "Failed to delete network %s" +msgstr "" + +#: dashboards/nova/networks/tables.py:55 +#: dashboards/nova/networks/workflows.py:110 +#: dashboards/nova/networks/templates/networks/_create.html:7 +#: dashboards/nova/networks/templates/networks/_create.html:22 +#: dashboards/nova/networks/templates/networks/create.html:3 +#: dashboards/nova/networks/templates/networks/create.html:6 +#: dashboards/syspanel/networks/tables.py:48 +#: dashboards/syspanel/networks/templates/networks/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/create.html:3 +#: dashboards/syspanel/networks/templates/networks/create.html:6 +msgid "Create Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:62 +#: dashboards/nova/networks/templates/networks/_update.html:7 +#: dashboards/syspanel/networks/tables.py:55 +#: dashboards/syspanel/networks/templates/networks/_update.html:7 +msgid "Edit Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:69 +msgid "Add Subnet" +msgstr "" + +#: dashboards/nova/networks/tables.py:85 +#: dashboards/syspanel/networks/tables.py:70 +msgid "Subnets Associated" +msgstr "" + +#: dashboards/nova/networks/tables.py:88 +#: dashboards/nova/networks/ports/tables.py:46 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:15 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:32 +#: dashboards/syspanel/networks/tables.py:73 +#: dashboards/syspanel/networks/ports/tables.py:79 +msgid "Admin State" +msgstr "" + +#: dashboards/nova/networks/views.py:55 +#: dashboards/syspanel/networks/views.py:60 +msgid "Network list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:89 +msgid "Unable to retrieve network details." +msgstr "" + +#: dashboards/nova/networks/views.py:112 +#: dashboards/syspanel/networks/views.py:91 +msgid "Subnet list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:124 +#: dashboards/syspanel/networks/views.py:103 +msgid "Port list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:137 +#: dashboards/syspanel/networks/views.py:118 +#, python-format +msgid "Unable to retrieve details for network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:36 +msgid "Network Name (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:41 +msgid "" +"From here you can create a new network.\n" +"In addition a subnet associated with the network can be created in the next " +"panel." +msgstr "" + +#: dashboards/nova/networks/workflows.py:52 +#: dashboards/nova/networks/subnets/tables.py:48 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:8 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:23 +#: dashboards/nova/networks/templates/networks/subnets/create.html:3 +#: dashboards/nova/networks/templates/networks/subnets/create.html:6 +#: dashboards/syspanel/networks/subnets/tables.py:48 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/subnets/create.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/create.html:6 +msgid "Create Subnet" +msgstr "" + +#: dashboards/nova/networks/workflows.py:55 +msgid "Subnet Name (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:57 +#: dashboards/nova/networks/subnets/forms.py:44 +#: dashboards/nova/networks/subnets/tables.py:71 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:14 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:14 +msgid "Network Address" +msgstr "" + +#: dashboards/nova/networks/workflows.py:60 +#: dashboards/nova/networks/subnets/forms.py:47 +msgid "Network address in CIDR format (e.g. 192.168.0.0/24)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:65 +#: dashboards/nova/networks/subnets/forms.py:52 +#: dashboards/nova/networks/subnets/tables.py:72 +#: dashboards/syspanel/networks/subnets/tables.py:72 +msgid "IP Version" +msgstr "" + +#: dashboards/nova/networks/workflows.py:66 +msgid "Gateway IP (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:69 +#: dashboards/nova/networks/subnets/forms.py:56 +#: dashboards/nova/networks/subnets/forms.py:106 +msgid "IP address of Gateway (e.g. 192.168.0.1)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:76 +msgid "" +"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." +msgstr "" + +#: dashboards/nova/networks/workflows.py:88 +msgid "Specify \"Network Address\" or clear \"Create Subnet\" checkbox." +msgstr "" + +#: dashboards/nova/networks/workflows.py:93 +#: dashboards/nova/networks/subnets/forms.py:69 +msgid "Network Address and IP version are inconsistent." +msgstr "" + +#: dashboards/nova/networks/workflows.py:97 +#: dashboards/nova/networks/subnets/forms.py:73 +#: dashboards/nova/networks/subnets/forms.py:118 +msgid "Gateway IP and IP version are inconsistent." +msgstr "" + +#: dashboards/nova/networks/workflows.py:111 +msgid "Create" +msgstr "" + +#: dashboards/nova/networks/workflows.py:112 +#, python-format +msgid "Created network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:113 +#, python-format +msgid "Unable to create network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:129 +#, python-format +msgid "Network \"%s\" was successfully created." +msgstr "" + +#: dashboards/nova/networks/workflows.py:132 +#, python-format +msgid "Failed to create network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:151 +#, python-format +msgid "Subnet \"%s\" was successfully created." +msgstr "" + +#: dashboards/nova/networks/workflows.py:154 +#, python-format +msgid "Failed to create subnet \"%(sub)s\" for network \"%(net)s\"." +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:35 +msgid "Attached" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:35 +msgid "Detached" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:42 +#: dashboards/syspanel/networks/ports/tables.py:75 +msgid "Fixed IPs" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:43 +#: dashboards/syspanel/networks/ports/tables.py:76 +msgid "Device Attached" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:53 +#: dashboards/syspanel/networks/ports/tables.py:35 +#: dashboards/syspanel/networks/ports/tables.py:83 +msgid "Ports" +msgstr "" + +#: dashboards/nova/networks/ports/tabs.py:39 +#: dashboards/syspanel/networks/ports/tabs.py:39 +msgid "Unable to retrieve port details." +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:34 +#: dashboards/syspanel/networks/tables.py:67 +#: dashboards/syspanel/networks/ports/forms.py:32 +msgid "Network Name" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:38 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:13 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:13 +#: dashboards/syspanel/networks/ports/forms.py:35 +msgid "Network ID" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:53 +#: dashboards/nova/networks/subnets/forms.py:103 +#: dashboards/nova/networks/subnets/tables.py:73 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:19 +#: dashboards/syspanel/networks/subnets/tables.py:73 +msgid "Gateway IP" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:84 +#, python-format +msgid "Subnet %s was successfully created." +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:89 +#, python-format +msgid "Failed to create subnet %s" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:130 +#, python-format +msgid "Subnet %s was successfully updated." +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:135 +#, python-format +msgid "Failed to update subnet %s" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:31 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:6 +#: dashboards/syspanel/networks/subnets/tables.py:31 +msgid "Subnet" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:32 +#: dashboards/nova/networks/subnets/tables.py:77 +#: dashboards/syspanel/networks/subnets/tables.py:32 +#: dashboards/syspanel/networks/subnets/tables.py:80 +msgid "Subnets" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:38 +#: dashboards/syspanel/networks/ports/tables.py:41 +#: dashboards/syspanel/networks/subnets/tables.py:38 +#, python-format +msgid "Failed to delete subnet %s" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:59 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:7 +#: dashboards/syspanel/networks/subnets/tables.py:59 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:7 +msgid "Edit Subnet" +msgstr "" + +#: dashboards/nova/networks/subnets/tabs.py:41 +msgid "Unable to retrieve subnet details." +msgstr "" + +#: dashboards/nova/networks/subnets/views.py:52 +#: dashboards/syspanel/networks/ports/views.py:48 +#: dashboards/syspanel/networks/subnets/views.py:47 +msgid "Unable to retrieve network." +msgstr "" + +#: dashboards/nova/networks/subnets/views.py:84 +#: dashboards/syspanel/networks/subnets/views.py:80 +msgid "Unable to retrieve subnet details" +msgstr "" + +#: dashboards/nova/networks/templates/networks/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/_create.html:18 +msgid "Select a name for your network." +msgstr "" + +#: dashboards/nova/networks/templates/networks/_detail_overview.html:3 +msgid "Network Overview" +msgstr "" + +#: dashboards/nova/networks/templates/networks/_update.html:17 +#: dashboards/syspanel/networks/templates/networks/_update.html:17 +msgid "You may update the editable properties of your network here." +msgstr "" + +#: dashboards/nova/networks/templates/networks/detail.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/index.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/index.html:6 +msgid "Network Detail" +msgstr "" + +#: dashboards/nova/networks/templates/networks/detail.html:6 +msgid "Network Detail: " +msgstr "" + +#: dashboards/nova/networks/templates/networks/update.html:3 +#: dashboards/nova/networks/templates/networks/update.html:6 +#: dashboards/syspanel/networks/templates/networks/update.html:3 +#: dashboards/syspanel/networks/templates/networks/update.html:6 +msgid "Update Network" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:3 +msgid "Port Overview" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:6 +#: dashboards/syspanel/networks/ports/tables.py:34 +msgid "Port" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:17 +msgid "Fixed IP" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:21 +msgid "IP address:" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:22 +msgid "Subnet ID" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:28 +msgid "Mac Address" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:34 +#: dashboards/syspanel/networks/ports/forms.py:41 +#: dashboards/syspanel/networks/ports/forms.py:73 +msgid "Device ID" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/detail.html:3 +#: dashboards/nova/networks/templates/networks/ports/detail.html:6 +msgid "Port Detail" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_create.html:18 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:18 +msgid "" +"You can create a subnet for the network. Any network address can be " +"specified unless the network address does not overlap other subnets in the " +"network." +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:3 +msgid "Subnet Overview" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:17 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:16 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:16 +msgid "IP version" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:21 +msgid "IP allocation pool" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:24 +msgid "Start" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:25 +msgid " - End" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_update.html:26 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:26 +msgid "You may update the editable properties of your subnet here." +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/detail.html:3 +#: dashboards/nova/networks/templates/networks/subnets/detail.html:6 +msgid "Subnet Detail" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/update.html:3 +#: dashboards/nova/networks/templates/networks/subnets/update.html:6 +#: dashboards/syspanel/networks/templates/networks/subnets/update.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/update.html:6 +msgid "Update Subnet" +msgstr "" + #: dashboards/nova/templates/nova/_warning.html:6 msgid "You currently have the power to damage your OpenStack cloud..." msgstr "" @@ -1759,52 +2311,86 @@ msgstr "" msgid "Learn More" msgstr "" -#: dashboards/nova/volumes/forms.py:40 +#: dashboards/nova/volumes/forms.py:26 +msgid "Volume Name" +msgstr "" + +#: dashboards/nova/volumes/forms.py:29 +msgid "Size (GB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:30 +msgid "Use snapshot as a source" +msgstr "" + +#: dashboards/nova/volumes/forms.py:49 +#, python-format +msgid "Volume size must be equal to or greater than the snapshot size (%sGB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:54 +msgid "Unable to load the specified snapshot." +msgstr "" + +#: dashboards/nova/volumes/forms.py:59 +msgid "Choose a snapshot" +msgstr "" + +#: dashboards/nova/volumes/forms.py:83 +#, python-format +msgid "The volume size cannot be less than the snapshot size (%sGB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:92 #, python-format msgid "" "A volume of %(req)iGB cannot be created as you only have %(avail)iGB of your " "quota available." msgstr "" -#: dashboards/nova/volumes/forms.py:47 +#: dashboards/nova/volumes/forms.py:99 msgid "You are already using all of your available volumes." msgstr "" -#: dashboards/nova/volumes/forms.py:60 +#: dashboards/nova/volumes/forms.py:115 msgid "Unable to create volume." msgstr "" -#: dashboards/nova/volumes/forms.py:67 +#: dashboards/nova/volumes/forms.py:123 +msgid "Attach to Instance" +msgstr "" + +#: dashboards/nova/volumes/forms.py:124 msgid "Select an instance to attach to." msgstr "" -#: dashboards/nova/volumes/forms.py:100 +#: dashboards/nova/volumes/forms.py:168 msgid "Unknown instance (None)" msgstr "" -#: dashboards/nova/volumes/forms.py:111 +#: dashboards/nova/volumes/forms.py:179 #, python-format msgid "Attaching volume %(vol)s to instance %(inst)s on %(dev)s." msgstr "" -#: dashboards/nova/volumes/forms.py:118 +#: dashboards/nova/volumes/forms.py:188 msgid "Unable to attach volume." msgstr "" -#: dashboards/nova/volumes/forms.py:142 +#: dashboards/nova/volumes/forms.py:212 #, python-format msgid "Creating volume snapshot \"%s\"" msgstr "" -#: dashboards/nova/volumes/forms.py:146 +#: dashboards/nova/volumes/forms.py:218 msgid "Unable to create volume snapshot." msgstr "" #: dashboards/nova/volumes/panel.py:24 dashboards/nova/volumes/tables.py:37 -#: dashboards/nova/volumes/tables.py:160 dashboards/nova/volumes/tables.py:172 +#: dashboards/nova/volumes/tables.py:162 dashboards/nova/volumes/tables.py:174 #: dashboards/nova/volumes/templates/volumes/index.html:3 #: dashboards/nova/volumes/templates/volumes/index.html:6 -#: dashboards/syspanel/projects/forms.py:116 +#: dashboards/syspanel/projects/workflows.py:39 #: dashboards/syspanel/volumes/panel.py:9 #: dashboards/syspanel/volumes/tables.py:15 #: dashboards/syspanel/volumes/templates/volumes/index.html:3 @@ -1812,12 +2398,6 @@ msgstr "" msgid "Volumes" msgstr "" -#: dashboards/nova/volumes/tables.py:50 -#: dashboards/nova/volumes/templates/volumes/_create.html:8 -#: dashboards/nova/volumes/templates/volumes/_create.html:55 -msgid "Create Volume" -msgstr "" - #: dashboards/nova/volumes/tables.py:57 msgid "Edit Attachments" msgstr "" @@ -1827,7 +2407,7 @@ msgstr "" msgid "%sGB" msgstr "" -#: dashboards/nova/volumes/tables.py:97 +#: dashboards/nova/volumes/tables.py:97 dashboards/nova/volumes/views.py:140 msgid "Unable to retrieve attachment information." msgstr "" @@ -1836,15 +2416,15 @@ msgstr "" msgid "Attached to %(instance)s on %(dev)s" msgstr "" -#: dashboards/nova/volumes/tables.py:169 +#: dashboards/nova/volumes/tables.py:171 msgid "Detach" msgstr "" -#: dashboards/nova/volumes/tables.py:170 +#: dashboards/nova/volumes/tables.py:172 msgid "Detaching" msgstr "" -#: dashboards/nova/volumes/tables.py:205 +#: dashboards/nova/volumes/tables.py:207 #, python-format msgid "%(dev)s on instance %(instance_name)s" msgstr "" @@ -1853,15 +2433,15 @@ msgstr "" msgid "Unable to retrieve volume details." msgstr "" -#: dashboards/nova/volumes/views.py:50 +#: dashboards/nova/volumes/views.py:52 msgid "Unable to retrieve volume list." msgstr "" -#: dashboards/nova/volumes/views.py:56 +#: dashboards/nova/volumes/views.py:58 msgid "Unable to retrieve volume/instance attachment information" msgstr "" -#: dashboards/nova/volumes/views.py:114 dashboards/nova/volumes/views.py:124 +#: dashboards/nova/volumes/views.py:121 dashboards/nova/volumes/views.py:131 msgid "Unable to retrieve volume information." msgstr "" @@ -1870,11 +2450,11 @@ msgstr "" msgid "Manage Volume Attachments" msgstr "" -#: dashboards/nova/volumes/templates/volumes/_attach.html:12 +#: dashboards/nova/volumes/templates/volumes/_attach.html:13 msgid "Attach To Instance" msgstr "" -#: dashboards/nova/volumes/templates/volumes/_attach.html:19 +#: dashboards/nova/volumes/templates/volumes/_attach.html:22 msgid "Attach Volume" msgstr "" @@ -1931,7 +2511,7 @@ msgstr "" msgid "Volume Detail" msgstr "" -#: dashboards/settings/dashboard.py:24 +#: dashboards/settings/dashboard.py:24 templates/_header.html:4 msgid "Settings" msgstr "" @@ -1939,15 +2519,15 @@ msgstr "" msgid "Select a Project" msgstr "" -#: dashboards/settings/ec2/forms.py:51 +#: dashboards/settings/ec2/forms.py:45 msgid "Unable to retrieve tenant list." msgstr "" -#: dashboards/settings/ec2/forms.py:93 +#: dashboards/settings/ec2/forms.py:87 msgid "Unable to fetch EC2 credentials." msgstr "" -#: dashboards/settings/ec2/forms.py:106 +#: dashboards/settings/ec2/forms.py:100 #, python-format msgid "Error writing zipfile: %(exc)s" msgstr "" @@ -1970,7 +2550,7 @@ msgid "" "private key and certificate." msgstr "" -#: dashboards/settings/project/forms.py:76 +#: dashboards/settings/project/forms.py:70 #, python-format msgid "Error Downloading RC File: %s" msgstr "" @@ -2024,7 +2604,7 @@ msgid "From here you can modify dashboard settings for your user." msgstr "" #: dashboards/settings/user/templates/user/_settings.html:23 -#: workflows/base.py:510 +#: dashboards/syspanel/projects/workflows.py:243 workflows/base.py:538 msgid "Save" msgstr "" @@ -2052,14 +2632,18 @@ msgstr "" msgid "Ephemeral Disk GB" msgstr "" -#: dashboards/syspanel/flavors/forms.py:51 +#: dashboards/syspanel/flavors/forms.py:52 #, python-format msgid "%s was successfully added to flavors." msgstr "" +#: dashboards/syspanel/flavors/forms.py:56 +msgid "Unable to create flavor" +msgstr "" + #: dashboards/syspanel/flavors/panel.py:28 #: dashboards/syspanel/flavors/tables.py:14 -#: dashboards/syspanel/flavors/tables.py:38 +#: dashboards/syspanel/flavors/tables.py:44 #: dashboards/syspanel/flavors/templates/flavors/index.html:8 msgid "Flavors" msgstr "" @@ -2071,32 +2655,32 @@ msgstr "" msgid "Create Flavor" msgstr "" -#: dashboards/syspanel/flavors/tables.py:29 +#: dashboards/syspanel/flavors/tables.py:28 +#, python-format +msgid "%sMB" +msgstr "" + +#: dashboards/syspanel/flavors/tables.py:33 msgid "Flavor Name" msgstr "" -#: dashboards/syspanel/flavors/tables.py:31 +#: dashboards/syspanel/flavors/tables.py:36 msgid "Memory" msgstr "" #: dashboards/syspanel/flavors/views.py:48 -msgid "Unauthorized." -msgstr "" - -#: dashboards/syspanel/flavors/views.py:53 -#, python-format -msgid "Unable to get flavor list: %s" +msgid "Unable to retrieve flavor list." msgstr "" #: dashboards/syspanel/flavors/templates/flavors/_create.html:18 msgid "From here you can define the sizing of a new flavor." msgstr "" -#: dashboards/syspanel/images/views.py:52 +#: dashboards/syspanel/images/views.py:53 msgid "Unable to retrieve image list." msgstr "" -#: dashboards/syspanel/instances/tables.py:62 usage/tables.py:29 +#: dashboards/syspanel/instances/tables.py:62 usage/tables.py:30 msgid "Project Name" msgstr "" @@ -2106,6 +2690,7 @@ msgid "Host" msgstr "" #: dashboards/syspanel/instances/views.py:72 +#: dashboards/syspanel/networks/views.py:48 msgid "Unable to retrieve instance tenant information." msgstr "" @@ -2113,6 +2698,78 @@ msgstr "" msgid "All Instances" msgstr "" +#: dashboards/syspanel/networks/forms.py:45 +#: dashboards/syspanel/users/forms.py:41 +msgid "Select a project" +msgstr "" + +#: dashboards/syspanel/networks/forms.py:56 +#, python-format +msgid "Network %s was successfully created." +msgstr "" + +#: dashboards/syspanel/networks/forms.py:62 +#, python-format +msgid "Failed to create network %s" +msgstr "" + +#: dashboards/syspanel/networks/ports/forms.py:53 +#, python-format +msgid "Port %s was successfully created." +msgstr "" + +#: dashboards/syspanel/networks/ports/forms.py:58 +#, python-format +msgid "Failed to create a port for network %s" +msgstr "" + +#: dashboards/syspanel/networks/ports/forms.py:83 +#, python-format +msgid "Port %s was successfully updated." +msgstr "" + +#: dashboards/syspanel/networks/ports/forms.py:88 +#, python-format +msgid "Failed to update port %s" +msgstr "" + +#: dashboards/syspanel/networks/ports/tables.py:51 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/ports/create.html:3 +#: dashboards/syspanel/networks/templates/networks/ports/create.html:6 +msgid "Create Port" +msgstr "" + +#: dashboards/syspanel/networks/ports/tables.py:62 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:7 +msgid "Edit Port" +msgstr "" + +#: dashboards/syspanel/networks/ports/views.py:81 +msgid "Unable to retrieve port details" +msgstr "" + +#: dashboards/syspanel/networks/subnets/forms.py:42 +#, python-format +msgid "Failed to retrieve network %s for a subnet" +msgstr "" + +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:18 +msgid "" +"You can create a port for the network. If you specify device ID to be " +"attached, the device specified will be attached to the port created." +msgstr "" + +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:22 +msgid "You may update the editable properties of your port here." +msgstr "" + +#: dashboards/syspanel/networks/templates/networks/ports/update.html:3 +#: dashboards/syspanel/networks/templates/networks/ports/update.html:6 +msgid "Update Port" +msgstr "" + #: dashboards/syspanel/overview/templates/overview/usage.html:3 msgid "Usage Overview" msgstr "" @@ -2121,91 +2778,14 @@ msgstr "" msgid "Monitoring" msgstr "" -#: dashboards/syspanel/projects/forms.py:38 -#: dashboards/syspanel/users/forms.py:75 -msgid "Role" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:52 -msgid "Successfully added user to project." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:54 -msgid "Unable to add user to project." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:64 -#: dashboards/syspanel/projects/forms.py:89 -#: dashboards/syspanel/projects/tables.py:78 -#: dashboards/syspanel/services/tables.py:42 -#: dashboards/syspanel/users/tables.py:38 -#: dashboards/syspanel/users/tables.py:112 -msgid "Enabled" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:75 -#, python-format -msgid "%s was successfully created." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:78 -msgid "Unable to create project." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:100 -#, python-format -msgid "%s was successfully updated." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:103 -msgid "Unable to update project." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:108 -msgid "ID (name)" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:110 -msgid "Metadata Items" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:111 -msgid "Injected Files" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:112 -msgid "Injected File Content Bytes" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:117 -msgid "Gigabytes" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:118 -msgid "RAM (in MB)" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:136 -#, python-format -msgid "Quotas for %s were successfully updated." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:139 -msgid "Unable to update quotas." -msgstr "" - #: dashboards/syspanel/projects/panel.py:28 -#: dashboards/syspanel/projects/tables.py:53 -#: dashboards/syspanel/projects/tables.py:82 +#: dashboards/syspanel/projects/tables.py:66 +#: dashboards/syspanel/projects/tables.py:95 #: dashboards/syspanel/projects/templates/projects/index.html:8 msgid "Projects" msgstr "" -#: dashboards/syspanel/projects/tables.py:18 -msgid "Modify Quotas" -msgstr "" - -#: dashboards/syspanel/projects/tables.py:25 +#: dashboards/syspanel/projects/tables.py:19 msgid "Modify Users" msgstr "" @@ -2214,64 +2794,186 @@ msgid "View Usage" msgstr "" #: dashboards/syspanel/projects/tables.py:39 -msgid "Edit Project" +#: dashboards/syspanel/projects/templates/projects/_create.html:8 +#: dashboards/syspanel/projects/templates/projects/_create.html:23 +#: dashboards/syspanel/projects/templates/projects/create.html:6 +msgid "Create Project" msgstr "" #: dashboards/syspanel/projects/tables.py:46 -msgid "Create New Project" -msgstr "" - -#: dashboards/syspanel/projects/tables.py:90 -msgid "Remove" +#: dashboards/syspanel/projects/workflows.py:242 +#: dashboards/syspanel/projects/templates/projects/update.html:3 +#: dashboards/syspanel/projects/templates/projects/update.html:6 +msgid "Edit Project" msgstr "" #: dashboards/syspanel/projects/tables.py:91 +#: dashboards/syspanel/projects/workflows.py:71 +#: dashboards/syspanel/projects/workflows.py:134 +#: dashboards/syspanel/services/tables.py:42 +#: dashboards/syspanel/users/tables.py:39 +#: dashboards/syspanel/users/tables.py:114 +msgid "Enabled" +msgstr "" + +#: dashboards/syspanel/projects/tables.py:104 +msgid "Remove" +msgstr "" + +#: dashboards/syspanel/projects/tables.py:105 msgid "Removed" msgstr "" -#: dashboards/syspanel/projects/tables.py:93 +#: dashboards/syspanel/projects/tables.py:107 #: dashboards/syspanel/users/panel.py:28 -#: dashboards/syspanel/users/tables.py:40 -#: dashboards/syspanel/users/tables.py:74 -#: dashboards/syspanel/users/tables.py:119 +#: dashboards/syspanel/users/tables.py:41 +#: dashboards/syspanel/users/tables.py:75 +#: dashboards/syspanel/users/tables.py:121 #: dashboards/syspanel/users/templates/users/index.html:8 msgid "Users" msgstr "" -#: dashboards/syspanel/projects/tables.py:111 +#: dashboards/syspanel/projects/tables.py:125 msgid "Unable to retrieve role information." msgstr "" -#: dashboards/syspanel/projects/tables.py:116 +#: dashboards/syspanel/projects/tables.py:130 msgid "Roles" msgstr "" -#: dashboards/syspanel/projects/tables.py:120 +#: dashboards/syspanel/projects/tables.py:134 msgid "Users For Project" msgstr "" -#: dashboards/syspanel/projects/tables.py:128 +#: dashboards/syspanel/projects/tables.py:142 msgid "Add To Project" msgstr "" -#: dashboards/syspanel/projects/tables.py:140 +#: dashboards/syspanel/projects/tables.py:154 msgid "Add New Users" msgstr "" -#: dashboards/syspanel/projects/views.py:49 +#: dashboards/syspanel/projects/views.py:67 +msgid "Unable to retrieve project information." +msgstr "" + +#: dashboards/syspanel/projects/views.py:87 msgid "Unable to retrieve project list." msgstr "" -#: dashboards/syspanel/projects/views.py:71 -msgid "Unable to retrieve project." -msgstr "" - -#: dashboards/syspanel/projects/views.py:100 +#: dashboards/syspanel/projects/views.py:110 msgid "Unable to retrieve users." msgstr "" -#: dashboards/syspanel/projects/views.py:143 -msgid "Unable to retrieve roles." +#: dashboards/syspanel/projects/views.py:154 +msgid "Unable to retrieve default quota values." +msgstr "" + +#: dashboards/syspanel/projects/views.py:182 +msgid "Unable to retrieve project details." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:32 +msgid "Injected File Content Bytes" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:33 +msgid "Metadata Items" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:36 +msgid "Injected Files" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:40 +msgid "Gigabytes" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:41 +msgid "RAM (MB)" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:45 +msgid "Quota" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:47 +msgid "From here you can set quotas (max limits) for the project." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:76 +#: dashboards/syspanel/projects/workflows.py:137 +msgid "Project Info" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:77 +#: dashboards/syspanel/projects/templates/projects/_create.html:18 +msgid "From here you can create a new project to organize users." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:91 +msgid "Add Project" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:92 +msgid "Finish" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:93 +#, python-format +msgid "Created new project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:94 +#, python-format +msgid "Unable to create project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:129 +msgid "Unable to set project quotas." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:139 +msgid "From here you can edit the project details." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:161 +msgid "Unable to retrieve user list. Please try again later." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:167 +msgid "Create New User" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:217 +#: dashboards/syspanel/projects/templates/projects/_update_members.html:16 +msgid "Project Members" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:231 +#: dashboards/syspanel/users/views.py:46 +msgid "Unable to retrieve user list." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:244 +#, python-format +msgid "Modified project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:245 +#, python-format +msgid "Unable to modify project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:315 +#, python-format +msgid "Failed to modify %s project members and update project quotas." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:336 +msgid "" +"Modified project information and members, but unable to modify project " +"quotas." msgstr "" #: dashboards/syspanel/projects/templates/projects/_add_user.html:8 @@ -2288,14 +2990,21 @@ msgstr "" msgid "Add" msgstr "" -#: dashboards/syspanel/projects/templates/projects/_create.html:8 -#: dashboards/syspanel/projects/templates/projects/_create.html:23 -#: dashboards/syspanel/projects/templates/projects/create.html:6 -msgid "Create Project" +#: dashboards/syspanel/projects/templates/projects/_create_user.html:7 +#, python-format +msgid "Create User for project '%(tenant_name)s'." msgstr "" -#: dashboards/syspanel/projects/templates/projects/_create.html:18 -msgid "From here you can create a new project to organize users." +#: dashboards/syspanel/projects/templates/projects/_create_user.html:18 +msgid "From here you can create a new user to add to this project." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/_create_user.html:23 +#: dashboards/syspanel/users/tables.py:19 +#: dashboards/syspanel/users/templates/users/_create.html:7 +#: dashboards/syspanel/users/templates/users/_create.html:22 +#: dashboards/syspanel/users/templates/users/create.html:7 +msgid "Create User" msgstr "" #: dashboards/syspanel/projects/templates/projects/_quotas.html:7 @@ -2312,7 +3021,6 @@ msgstr "" #: dashboards/syspanel/projects/templates/projects/_update.html:8 #: dashboards/syspanel/projects/templates/projects/_update.html:23 #: dashboards/syspanel/projects/templates/projects/quotas.html:6 -#: dashboards/syspanel/projects/templates/projects/update.html:6 msgid "Update Project" msgstr "" @@ -2320,6 +3028,26 @@ msgstr "" msgid "From here you can edit a project." msgstr "" +#: dashboards/syspanel/projects/templates/projects/_update_members.html:7 +msgid "" +"From here you can add and remove members to this project from the list of " +"all available users." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/_update_members.html:10 +msgid "All Users" +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/_update_members.html:25 +#: dashboards/syspanel/projects/templates/projects/_update_members.html:32 +msgid "No users found." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/create_user.html:3 +#: dashboards/syspanel/projects/templates/projects/create_user.html:6 +msgid "Add New User" +msgstr "" + #: dashboards/syspanel/projects/templates/projects/usage.html:3 msgid "Project Usage Overview" msgstr "" @@ -2345,7 +3073,7 @@ msgstr "" msgid "Limit" msgstr "" -#: dashboards/syspanel/quotas/views.py:44 +#: dashboards/syspanel/quotas/views.py:45 msgid "Unable to get quota info." msgstr "" @@ -2367,115 +3095,109 @@ msgstr "" msgid "Service" msgstr "" -#: dashboards/syspanel/users/forms.py:42 -msgid "Select a project" -msgstr "" - -#: dashboards/syspanel/users/forms.py:58 +#: dashboards/syspanel/users/forms.py:53 msgid "Passwords do not match." msgstr "" -#: dashboards/syspanel/users/forms.py:63 +#: dashboards/syspanel/users/forms.py:61 #: dashboards/syspanel/users/forms.py:114 -#: dashboards/syspanel/users/tables.py:106 +#: dashboards/syspanel/users/tables.py:107 msgid "User Name" msgstr "" -#: dashboards/syspanel/users/forms.py:64 +#: dashboards/syspanel/users/forms.py:62 #: dashboards/syspanel/users/forms.py:115 -#: dashboards/syspanel/users/tables.py:107 +#: dashboards/syspanel/users/tables.py:108 msgid "Email" msgstr "" -#: dashboards/syspanel/users/forms.py:66 +#: dashboards/syspanel/users/forms.py:64 #: dashboards/syspanel/users/forms.py:116 msgid "Password" msgstr "" -#: dashboards/syspanel/users/forms.py:71 +#: dashboards/syspanel/users/forms.py:69 #: dashboards/syspanel/users/forms.py:123 msgid "Confirm Password" msgstr "" -#: dashboards/syspanel/users/forms.py:74 +#: dashboards/syspanel/users/forms.py:72 #: dashboards/syspanel/users/forms.py:126 msgid "Primary Project" msgstr "" -#: dashboards/syspanel/users/forms.py:96 +#: dashboards/syspanel/users/forms.py:74 +msgid "Role" +msgstr "" + +#: dashboards/syspanel/users/forms.py:95 #, python-format msgid "User \"%s\" was successfully created." msgstr "" #: dashboards/syspanel/users/forms.py:105 -msgid "Unable to add user to primary project." +msgid "Unable to add userto primary project." msgstr "" -#: dashboards/syspanel/users/forms.py:108 +#: dashboards/syspanel/users/forms.py:109 msgid "Unable to create user." msgstr "" -#: dashboards/syspanel/users/forms.py:151 +#: dashboards/syspanel/users/forms.py:150 msgid "name" msgstr "" -#: dashboards/syspanel/users/forms.py:151 +#: dashboards/syspanel/users/forms.py:150 msgid "email" msgstr "" -#: dashboards/syspanel/users/forms.py:160 +#: dashboards/syspanel/users/forms.py:159 msgid "primary project" msgstr "" #: dashboards/syspanel/users/forms.py:172 +#, python-format +msgid "The user %s has no role defined for" +msgstr "" + +#: dashboards/syspanel/users/forms.py:180 msgid "password" msgstr "" -#: dashboards/syspanel/users/forms.py:181 +#: dashboards/syspanel/users/forms.py:189 msgid "User has been updated successfully." msgstr "" -#: dashboards/syspanel/users/forms.py:185 +#: dashboards/syspanel/users/forms.py:193 #, python-format msgid "Unable to update %(attributes)s for the user." msgstr "" -#: dashboards/syspanel/users/tables.py:18 -#: dashboards/syspanel/users/templates/users/_create.html:7 -#: dashboards/syspanel/users/templates/users/_create.html:22 -#: dashboards/syspanel/users/templates/users/create.html:7 -msgid "Create User" -msgstr "" - -#: dashboards/syspanel/users/tables.py:37 +#: dashboards/syspanel/users/tables.py:38 msgid "Enable" msgstr "" -#: dashboards/syspanel/users/tables.py:37 +#: dashboards/syspanel/users/tables.py:38 msgid "Disable" msgstr "" -#: dashboards/syspanel/users/tables.py:38 +#: dashboards/syspanel/users/tables.py:39 msgid "Disabled" msgstr "" -#: dashboards/syspanel/users/tables.py:61 +#: dashboards/syspanel/users/tables.py:62 msgid "You cannot disable the user you are currently logged in as." msgstr "" -#: dashboards/syspanel/users/tables.py:111 +#: dashboards/syspanel/users/tables.py:113 msgid "User ID" msgstr "" -#: dashboards/syspanel/users/views.py:46 -msgid "Unable to retrieve user list." -msgstr "" - -#: dashboards/syspanel/users/views.py:67 +#: dashboards/syspanel/users/views.py:69 msgid "Unable to update user." msgstr "" -#: dashboards/syspanel/users/views.py:93 +#: dashboards/syspanel/users/views.py:103 msgid "Unable to retrieve user roles." msgstr "" @@ -2494,55 +3216,83 @@ msgid "" "From here you can edit the user's details, including their default project." msgstr "" -#: tables/actions.py:299 +#: tables/actions.py:338 msgid "Filter" msgstr "" -#: tables/actions.py:461 +#: tables/actions.py:502 +msgid "N/A" +msgstr "" + +#: tables/actions.py:526 #, python-format msgid "You do not have permission to %(action)s: %(objs)s" msgstr "" -#: tables/actions.py:467 +#: tables/actions.py:532 #, python-format msgid "Unable to %(action)s: %(objs)s" msgstr "" -#: tables/actions.py:473 +#: tables/actions.py:538 #, python-format msgid "%(action)s: %(objs)s" msgstr "" -#: tables/actions.py:483 +#: tables/actions.py:548 msgid "Delete" msgstr "" -#: tables/actions.py:484 +#: tables/actions.py:549 msgid "Deleted" msgstr "" -#: tables/base.py:257 +#: tables/base.py:266 #, python-format msgid "The attribute %(attr)s doesn't exist on %(obj)s." msgstr "" -#: tables/base.py:743 +#: tables/base.py:819 msgid "Actions" msgstr "" -#: tables/base.py:891 +#: tables/base.py:981 msgid "No items to display." msgstr "" -#: tables/base.py:908 +#: tables/base.py:998 #, python-format msgid "No match returned for the id \"%s\"." msgstr "" -#: tables/base.py:1015 +#: tables/base.py:1128 msgid "Please select a row before taking that action." msgstr "" +#: templates/_header.html:3 +msgid "Logged in as" +msgstr "" + +#: templates/_header.html:6 +msgid "Help" +msgstr "" + +#: templates/_header.html:8 +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 "" + #: templates/horizon/_messages.html:7 msgid "Info: " msgstr "" @@ -2559,15 +3309,11 @@ msgstr "" msgid "Error: " msgstr "" -#: templates/horizon/client_side/_loading.html:9 -msgid "Loading…" -msgstr "" - -#: templates/horizon/common/_data_table.html:33 +#: templates/horizon/common/_data_table.html:36 msgid "Summary" msgstr "" -#: templates/horizon/common/_data_table.html:42 +#: templates/horizon/common/_data_table.html:45 #, python-format msgid "Displaying %(counter)s item" msgid_plural "Displaying %(counter)s items" @@ -2602,6 +3348,10 @@ msgstr "" msgid "This Month's GB-Hours" msgstr "" +#: templatetags/branding.py:35 +msgid "Horizon" +msgstr "" + #: templatetags/horizon.py:108 msgid "No Limit" msgstr "" @@ -2665,38 +3415,42 @@ msgstr "" msgid "Giant ants are attacking San Francisco!" msgstr "" -#: tests/table_tests.py:104 +#: tests/table_tests.py:106 msgid "Batch" msgstr "" -#: tests/table_tests.py:105 +#: tests/table_tests.py:107 msgid "Batched" msgstr "" -#: tests/table_tests.py:106 tests/table_tests.py:117 +#: tests/table_tests.py:108 tests/table_tests.py:119 msgid "Item" msgstr "" -#: tests/table_tests.py:107 tests/table_tests.py:118 +#: tests/table_tests.py:109 tests/table_tests.py:120 msgid "Items" msgstr "" -#: tests/table_tests.py:115 +#: tests/table_tests.py:117 msgid "Down" msgstr "" -#: tests/table_tests.py:115 +#: tests/table_tests.py:117 msgid "Up" msgstr "" -#: tests/table_tests.py:116 +#: tests/table_tests.py:118 msgid "Downed" msgstr "" -#: tests/table_tests.py:116 +#: tests/table_tests.py:118 msgid "Upped" msgstr "" +#: tests/table_tests.py:185 +msgid "No Actions Table" +msgstr "" + #: tests/tabs_tests.py:36 msgid "Tab One" msgstr "" @@ -2721,7 +3475,7 @@ msgstr "" msgid "Recoverable Error Tab" msgstr "" -#: tests/testsettings.py:111 +#: tests/testsettings.py:118 msgid "Password must be between 8 and 18 characters." msgstr "" @@ -2787,31 +3541,31 @@ msgstr "" msgid "Download CSV Summary" msgstr "" -#: usage/tables.py:24 +#: usage/tables.py:25 msgid "VCPU Hours" msgstr "" -#: usage/tables.py:31 +#: usage/tables.py:32 msgid "Disk GB Hours" msgstr "" -#: usage/tables.py:39 usage/tables.py:67 +#: usage/tables.py:40 usage/tables.py:68 msgid "Usage Summary" msgstr "" -#: usage/tables.py:59 +#: usage/tables.py:60 msgid "Uptime" msgstr "" -#: utils/fields.py:43 +#: utils/fields.py:46 msgid "Incorrect format for IP address" msgstr "" -#: utils/fields.py:44 +#: utils/fields.py:47 msgid "Invalid version for IP address" msgstr "" -#: utils/fields.py:45 +#: utils/fields.py:48 msgid "Invalid subnet mask" msgstr "" @@ -2819,16 +3573,16 @@ msgstr "" msgid "Password is not accepted" msgstr "" -#: workflows/base.py:69 +#: workflows/base.py:70 msgid "Processing..." msgstr "" -#: workflows/base.py:511 +#: workflows/base.py:539 #, python-format msgid "%s completed successfully." msgstr "" -#: workflows/base.py:512 +#: workflows/base.py:540 #, python-format msgid "%s did not complete." msgstr "" diff --git a/horizon/locale/es/LC_MESSAGES/djangojs.po b/horizon/locale/es/LC_MESSAGES/djangojs.po new file mode 100644 index 000000000..be384b17b --- /dev/null +++ b/horizon/locale/es/LC_MESSAGES/djangojs.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 "" diff --git a/horizon/locale/fr/LC_MESSAGES/django.po b/horizon/locale/fr/LC_MESSAGES/django.po index e787984db..318ab9d3d 100644 --- a/horizon/locale/fr/LC_MESSAGES/django.po +++ b/horizon/locale/fr/LC_MESSAGES/django.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: openstack-dashboard\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-07-09 02:28+0000\n" +"POT-Creation-Date: 2012-08-12 21:47+0000\n" "PO-Revision-Date: 2012-05-10 16:05+0100\n" "Last-Translator: Erwan Gallen \n" "Language-Team: French \n" @@ -29,7 +29,7 @@ msgstr "Merci de vous connecter pour continuer." msgid "You are not authorized to access %s" msgstr "Vous n'êtes pas autorisé à accéder à %s" -#: exceptions.py:299 +#: exceptions.py:270 msgid "Unauthorized. Please try logging in again." msgstr "Accès non autorisé. Merci de vous reconnecter." @@ -38,21 +38,21 @@ msgstr "Accès non autorisé. Merci de vous reconnecter." msgid "%(type)s (%(backend)s backend)" msgstr "%(type)s (%(backend)s backend)" -#: api/nova.py:185 +#: api/nova.py:186 #, python-format msgid "ALLOW %(from)s:%(to)s from %(group)s" msgstr "AUTORISE %(from)s:%(to)s de %(group)s" -#: api/nova.py:190 +#: api/nova.py:191 #, python-format msgid "ALLOW %(from)s:%(to)s from %(cidr)s" msgstr "AUTORISE %(from)s:%(to)s de %(cidr)s" -#: api/nova.py:502 +#: api/nova.py:514 msgid "Unknown instance" msgstr "" -#: api/swift.py:155 +#: api/swift.py:154 msgid "Unicode is not currently supported for object copy." msgstr "L'Unicode n'est actuellement pas supporté pour la copie d'objet." @@ -60,53 +60,53 @@ msgstr "L'Unicode n'est actuellement pas supporté pour la copie d'objet." msgid "Manage Compute" msgstr "Gestion Compute" -#: dashboards/nova/dashboard.py:34 +#: dashboards/nova/dashboard.py:35 msgid "Object Store" msgstr "Stockage d'objet" -#: dashboards/nova/dashboard.py:39 dashboards/nova/instances/workflows.py:32 -#: dashboards/syspanel/projects/tables.py:52 tests/workflows_tests.py:39 +#: dashboards/nova/dashboard.py:40 dashboards/nova/instances/workflows.py:37 +#: dashboards/syspanel/networks/forms.py:37 +#: dashboards/syspanel/networks/tables.py:66 +#: dashboards/syspanel/projects/tables.py:65 tests/workflows_tests.py:39 msgid "Project" msgstr "Projet" #: dashboards/nova/access_and_security/panel.py:25 -#: dashboards/nova/instances/workflows.py:328 +#: dashboards/nova/instances/workflows.py:345 msgid "Access & Security" msgstr "Accès & Sécurité" -#: dashboards/nova/access_and_security/views.py:51 +#: dashboards/nova/access_and_security/views.py:50 msgid "Unable to retrieve keypair list." msgstr "Impossible de récupérer la liste des clés." -#: dashboards/nova/access_and_security/views.py:60 -#: dashboards/nova/access_and_security/security_groups/views.py:64 +#: dashboards/nova/access_and_security/views.py:59 +#: dashboards/nova/access_and_security/security_groups/views.py:72 msgid "Unable to retrieve security groups." msgstr "Impossible de récupérer les groupes de sécurité." -#: dashboards/nova/access_and_security/views.py:69 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:44 +#: dashboards/nova/access_and_security/views.py:68 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:48 #, fuzzy msgid "Unable to retrieve floating IP addresses." msgstr "Impossible de récupérer les images." -#: dashboards/nova/access_and_security/views.py:76 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:60 +#: dashboards/nova/access_and_security/views.py:75 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:64 #: dashboards/syspanel/instances/views.py:58 msgid "Unable to retrieve instance list." msgstr "Impossible de récupérer la liste des instances." -#: dashboards/nova/access_and_security/floating_ips/forms.py:38 +#: dashboards/nova/access_and_security/floating_ips/forms.py:31 msgid "Pool" msgstr "Pool" -#: dashboards/nova/access_and_security/floating_ips/forms.py:53 -#, python-format -msgid "" -"Successfully allocated Floating IP \"%(ip)s\" to project \"%(project)s\"" -msgstr "" -"Succès de l'allocation de l'IP flottante \"%(ip)s\" au projet \"%(project)s\"" +#: dashboards/nova/access_and_security/floating_ips/forms.py:42 +#, fuzzy, python-format +msgid "Allocated Floating IP %(ip)s." +msgstr "Allouer une adresse IP flottante" -#: dashboards/nova/access_and_security/floating_ips/forms.py:57 +#: dashboards/nova/access_and_security/floating_ips/forms.py:46 msgid "Unable to allocate Floating IP." msgstr "Impossible d'allouer une adresse IP flottante." @@ -129,7 +129,7 @@ msgstr "IP flottante" #: dashboards/nova/access_and_security/floating_ips/tables.py:49 #: dashboards/nova/access_and_security/floating_ips/tables.py:132 -#: dashboards/syspanel/projects/forms.py:119 +#: dashboards/syspanel/projects/workflows.py:42 msgid "Floating IPs" msgstr "IPs flottantes" @@ -159,20 +159,20 @@ msgid "%(INSTANCE_NAME)s (%(INSTANCE_ID)s)" msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:115 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:28 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:34 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:31 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:38 #: dashboards/nova/instances/tables.py:270 #: dashboards/syspanel/instances/tables.py:74 msgid "IP Address" msgstr "Adresse IP" #: dashboards/nova/access_and_security/floating_ips/tables.py:118 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:31 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:35 #: dashboards/nova/instances/tables.py:62 #: dashboards/nova/instances/tables.py:79 #: dashboards/nova/instances/tables.py:94 #: dashboards/nova/instances/tables.py:122 -#: dashboards/nova/volumes/tables.py:195 tests/workflows_tests.py:58 +#: dashboards/nova/volumes/tables.py:197 tests/workflows_tests.py:58 msgid "Instance" msgstr "Instance" @@ -180,88 +180,88 @@ msgstr "Instance" msgid "Floating IP Pool" msgstr "Adresse IP flottante" -#: dashboards/nova/access_and_security/floating_ips/views.py:60 +#: dashboards/nova/access_and_security/floating_ips/views.py:64 +#, fuzzy +msgid "Unable to retrieve floating IP pools." +msgstr "Impossible de récupérer les images." + +#: dashboards/nova/access_and_security/floating_ips/views.py:67 msgid "No floating IP pools available." msgstr "Aucun pool d'adresses IP disponible." -#: dashboards/nova/access_and_security/floating_ips/workflows.py:35 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:39 msgid "Select the IP address you wish to associate with the selected instance." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:48 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:52 #, fuzzy msgid "Select an IP address" msgstr "Sélectionnez un projet" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:50 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:54 #, fuzzy msgid "No IP addresses available" msgstr "Aucune instance disponible" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:77 -#: dashboards/nova/volumes/forms.py:92 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:81 +#: dashboards/nova/volumes/forms.py:160 msgid "Select an instance" msgstr "Sélectionnez une instance" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:79 -#: dashboards/nova/volumes/forms.py:94 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:83 +#: dashboards/nova/volumes/forms.py:162 msgid "No instances available" msgstr "Aucune instance disponible" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:98 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:102 msgid "Manage Floating IP Associations" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:99 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:103 #, fuzzy msgid "Associate" msgstr "Associer une adresse IP" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:100 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:104 #, python-format msgid "IP address %s associated." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:101 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:105 #, fuzzy, python-format msgid "Unable to associate IP address %s." msgstr "Impossible d'associer l'adresse IP flottante." -#: dashboards/nova/access_and_security/keypairs/forms.py:40 -#: dashboards/nova/access_and_security/keypairs/forms.py:58 +#: dashboards/nova/access_and_security/keypairs/forms.py:38 +#: dashboards/nova/access_and_security/keypairs/forms.py:49 #: dashboards/nova/access_and_security/keypairs/tables.py:51 msgid "Keypair Name" msgstr "Nom de paire de clés." -#: dashboards/nova/access_and_security/keypairs/forms.py:42 +#: dashboards/nova/access_and_security/keypairs/forms.py:40 msgid "" "Keypair names may only contain letters, numbers, underscores and hyphens." msgstr "" "Les noms des paires de clés ne peuvent que contenir que des lettres, " "nombres, underscore et tirets." -#: dashboards/nova/access_and_security/keypairs/forms.py:53 -#, fuzzy -msgid "Unable to create keypair." -msgstr "Impossible récupérer les paires de clé." - -#: dashboards/nova/access_and_security/keypairs/forms.py:60 +#: dashboards/nova/access_and_security/keypairs/forms.py:51 msgid "Public Key" msgstr "Clé publique" -#: dashboards/nova/access_and_security/keypairs/forms.py:68 +#: dashboards/nova/access_and_security/keypairs/forms.py:60 #, python-format msgid "Successfully imported public key: %s" msgstr "Succès de l'import de la clé publique : %s" -#: dashboards/nova/access_and_security/keypairs/forms.py:74 +#: dashboards/nova/access_and_security/keypairs/forms.py:65 #, fuzzy msgid "Unable to import keypair." msgstr "Impossible récupérer les paires de clé." #: dashboards/nova/access_and_security/keypairs/tables.py:29 -#: dashboards/nova/instances/tables.py:272 -#: dashboards/nova/instances/workflows.py:316 +#: dashboards/nova/instances/tables.py:274 +#: dashboards/nova/instances/workflows.py:332 msgid "Keypair" msgstr "Paire de clés" @@ -288,31 +288,43 @@ msgstr "Création de paire de clés" msgid "Fingerprint" msgstr "Empreinte" -#: dashboards/nova/access_and_security/keypairs/views.py:64 +#: dashboards/nova/access_and_security/keypairs/views.py:73 #, python-format msgid "Unable to create keypair: %(exc)s" msgstr "Impossible de créer la paire de clés : %(exc)s" -#: dashboards/nova/access_and_security/security_groups/forms.py:40 +#: dashboards/nova/access_and_security/security_groups/forms.py:35 #: dashboards/nova/access_and_security/security_groups/tables.py:57 -#: dashboards/nova/images_and_snapshots/images/forms.py:42 -#: dashboards/nova/images_and_snapshots/images/forms.py:120 +#: dashboards/nova/images_and_snapshots/images/forms.py:39 +#: dashboards/nova/images_and_snapshots/images/forms.py:114 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:9 -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:46 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:63 #: dashboards/nova/instances/templates/instances/_detail_overview.html:9 #: dashboards/nova/instances/templates/instances/_launch_details_help.html:9 -#: dashboards/nova/volumes/tables.py:135 dashboards/nova/volumes/tables.py:153 +#: dashboards/nova/networks/forms.py:36 dashboards/nova/networks/tables.py:82 +#: dashboards/nova/networks/ports/tables.py:40 +#: dashboards/nova/networks/subnets/forms.py:42 +#: dashboards/nova/networks/subnets/forms.py:101 +#: dashboards/nova/networks/subnets/tables.py:69 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:7 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:9 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:9 +#: dashboards/nova/volumes/tables.py:135 dashboards/nova/volumes/tables.py:155 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:9 #: dashboards/syspanel/flavors/forms.py:37 -#: dashboards/syspanel/projects/forms.py:60 -#: dashboards/syspanel/projects/forms.py:85 -#: dashboards/syspanel/projects/tables.py:74 +#: dashboards/syspanel/networks/forms.py:35 +#: dashboards/syspanel/networks/ports/forms.py:39 +#: dashboards/syspanel/networks/ports/forms.py:71 +#: dashboards/syspanel/networks/ports/tables.py:73 +#: dashboards/syspanel/networks/subnets/tables.py:69 +#: dashboards/syspanel/projects/tables.py:87 +#: dashboards/syspanel/projects/workflows.py:66 #: dashboards/syspanel/services/tables.py:38 #: dashboards/syspanel/volumes/tables.py:10 msgid "Name" msgstr "Nom" -#: dashboards/nova/access_and_security/security_groups/forms.py:42 +#: dashboards/nova/access_and_security/security_groups/forms.py:37 #: dashboards/nova/access_and_security/security_groups/tables.py:58 #: dashboards/nova/access_and_security/templates/access_and_security/keypairs/_create.html:16 #: dashboards/nova/access_and_security/templates/access_and_security/keypairs/_import.html:16 @@ -320,18 +332,23 @@ msgstr "Nom" #: dashboards/nova/containers/templates/containers/_copy.html:16 #: dashboards/nova/containers/templates/containers/_create.html:16 #: dashboards/nova/containers/templates/containers/_upload.html:17 -#: dashboards/nova/volumes/forms.py:25 dashboards/nova/volumes/forms.py:125 +#: dashboards/nova/networks/templates/networks/_create.html:16 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:17 +#: dashboards/nova/volumes/forms.py:28 dashboards/nova/volumes/forms.py:195 #: dashboards/nova/volumes/tables.py:138 #: dashboards/nova/volumes/templates/volumes/_create.html:18 #: dashboards/nova/volumes/templates/volumes/_create_snapshot.html:17 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:14 #: dashboards/syspanel/flavors/templates/flavors/_create.html:17 #: dashboards/syspanel/images/templates/images/_update.html:17 -#: dashboards/syspanel/projects/forms.py:63 -#: dashboards/syspanel/projects/forms.py:88 -#: dashboards/syspanel/projects/tables.py:76 +#: dashboards/syspanel/networks/templates/networks/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:17 +#: dashboards/syspanel/projects/tables.py:89 +#: dashboards/syspanel/projects/workflows.py:69 #: dashboards/syspanel/projects/templates/projects/_add_user.html:17 #: dashboards/syspanel/projects/templates/projects/_create.html:17 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:17 #: dashboards/syspanel/projects/templates/projects/_quotas.html:16 #: dashboards/syspanel/projects/templates/projects/_update.html:17 #: dashboards/syspanel/users/templates/users/_create.html:16 @@ -339,20 +356,24 @@ msgstr "Nom" msgid "Description" msgstr "Description" -#: dashboards/nova/access_and_security/security_groups/forms.py:50 +#: dashboards/nova/access_and_security/security_groups/forms.py:45 #, fuzzy, python-format msgid "Successfully created security group: %s" msgstr "Succès de création du groupe de sécurité : %s" -#: dashboards/nova/access_and_security/security_groups/forms.py:53 +#: dashboards/nova/access_and_security/security_groups/forms.py:51 msgid "Unable to create security group." msgstr "Impossible de créer le groupe de sécurité." -#: dashboards/nova/access_and_security/security_groups/forms.py:58 +#: dashboards/nova/access_and_security/security_groups/forms.py:56 #: dashboards/nova/access_and_security/security_groups/tables.py:92 msgid "IP Protocol" msgstr "Protocole IP" +#: dashboards/nova/access_and_security/security_groups/forms.py:60 +msgid "The protocol which this rule should be applied to." +msgstr "" + #: dashboards/nova/access_and_security/security_groups/forms.py:64 #: dashboards/nova/access_and_security/security_groups/forms.py:70 #: dashboards/nova/access_and_security/security_groups/tables.py:94 @@ -394,41 +415,49 @@ msgstr "Code" msgid "Source Group" msgstr "Groupe source" -#: dashboards/nova/access_and_security/security_groups/forms.py:84 +#: dashboards/nova/access_and_security/security_groups/forms.py:85 +msgid "" +"To specify an allowed IP range, select CIDR. To allow access from all " +"members of another security group select Source Group." +msgstr "" + +#: dashboards/nova/access_and_security/security_groups/forms.py:90 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:15 +#: dashboards/syspanel/networks/subnets/tables.py:71 msgid "CIDR" msgstr "Adresse IP en notation CIDR" -#: dashboards/nova/access_and_security/security_groups/forms.py:87 +#: dashboards/nova/access_and_security/security_groups/forms.py:93 msgid "Classless Inter-Domain Routing (e.g. 192.168.0.0/24)" msgstr "Adresse IP en notation CIDR (par exemple 192.168.0.0/24)" -#: dashboards/nova/access_and_security/security_groups/forms.py:116 +#: dashboards/nova/access_and_security/security_groups/forms.py:120 #, fuzzy msgid "The ICMP type is invalid." msgstr "Le numéro de port \"to\" est invalide." -#: dashboards/nova/access_and_security/security_groups/forms.py:119 +#: dashboards/nova/access_and_security/security_groups/forms.py:123 #, fuzzy msgid "The ICMP code is invalid." msgstr "Le numéro de port \"to\" est invalide." -#: dashboards/nova/access_and_security/security_groups/forms.py:122 +#: dashboards/nova/access_and_security/security_groups/forms.py:126 msgid "The ICMP type not in range (-1, 255)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:125 +#: dashboards/nova/access_and_security/security_groups/forms.py:129 msgid "The ICMP code not in range (-1, 255)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:129 +#: dashboards/nova/access_and_security/security_groups/forms.py:133 msgid "The \"from\" port number is invalid." msgstr "Le numéro de port \"from\" est invalide." -#: dashboards/nova/access_and_security/security_groups/forms.py:132 +#: dashboards/nova/access_and_security/security_groups/forms.py:136 msgid "The \"to\" port number is invalid." msgstr "Le numéro de port \"to\" est invalide." -#: dashboards/nova/access_and_security/security_groups/forms.py:135 +#: dashboards/nova/access_and_security/security_groups/forms.py:139 msgid "" "The \"to\" port number must be greater than or equal to the \"from\" port " "number." @@ -436,17 +465,17 @@ msgstr "" "Le numéro de port \"to\" doit être supérieur ou égal au numéro de port \"from" "\"" -#: dashboards/nova/access_and_security/security_groups/forms.py:141 +#: dashboards/nova/access_and_security/security_groups/forms.py:145 msgid "Either CIDR or Source Group may be specified, but not both." msgstr "" "Soit le CIDR ou le groupe source doivent être spécifiés, mais pas les deux." -#: dashboards/nova/access_and_security/security_groups/forms.py:163 +#: dashboards/nova/access_and_security/security_groups/forms.py:167 #, python-format msgid "Successfully added rule: %s" msgstr "Succès de l'ajout de la règle : %s" -#: dashboards/nova/access_and_security/security_groups/forms.py:166 +#: dashboards/nova/access_and_security/security_groups/forms.py:172 #, fuzzy msgid "Unable to add rule to security group." msgstr "Impossible de créer le groupe de sécurité." @@ -457,7 +486,7 @@ msgstr "Groupe de sécurité" #: dashboards/nova/access_and_security/security_groups/tables.py:31 #: dashboards/nova/access_and_security/security_groups/tables.py:65 -#: dashboards/nova/instances/workflows.py:320 +#: dashboards/nova/instances/workflows.py:337 #: dashboards/nova/instances/templates/instances/_detail_overview.html:49 msgid "Security Groups" msgstr "Groupes de sécurité" @@ -489,10 +518,15 @@ msgstr "Source" msgid "Security Group Rules" msgstr "Règles de groupes de sécurité" -#: dashboards/nova/access_and_security/security_groups/views.py:55 +#: dashboards/nova/access_and_security/security_groups/views.py:58 msgid "Unable to retrieve security group." msgstr "Impossible de récupérer le groupe de sécurité." +#: dashboards/nova/access_and_security/security_groups/views.py:78 +#, python-format +msgid "%s (current)" +msgstr "" + #: dashboards/nova/access_and_security/templates/access_and_security/index.html:6 msgid "Access & Security" msgstr "Accès & sécurité" @@ -507,9 +541,14 @@ msgstr "Allouer une adresse IP flottante" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_update.html:16 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:17 #: dashboards/nova/instances/templates/instances/_update.html:16 +#: dashboards/nova/networks/templates/networks/_update.html:16 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:25 #: dashboards/settings/ec2/templates/ec2/download_form.html:17 #: dashboards/settings/project/templates/project/_openrc.html:24 #: dashboards/settings/user/templates/user/_settings.html:17 +#: dashboards/syspanel/networks/templates/networks/_update.html:16 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:21 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:25 msgid "Description:" msgstr "Description :" @@ -539,7 +578,11 @@ msgstr "Allouer une adresse IP" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_update.html:23 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:24 #: dashboards/nova/instances/templates/instances/_update.html:23 -#: dashboards/nova/volumes/templates/volumes/_attach.html:20 +#: dashboards/nova/networks/templates/networks/_create.html:23 +#: dashboards/nova/networks/templates/networks/_update.html:23 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:24 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:32 +#: dashboards/nova/volumes/templates/volumes/_attach.html:24 #: dashboards/nova/volumes/templates/volumes/_create.html:56 #: dashboards/nova/volumes/templates/volumes/_create_snapshot.html:24 #: dashboards/settings/ec2/templates/ec2/download_form.html:24 @@ -547,8 +590,15 @@ msgstr "Allouer une adresse IP" #: dashboards/settings/user/templates/user/_settings.html:24 #: dashboards/syspanel/flavors/templates/flavors/_create.html:24 #: dashboards/syspanel/images/templates/images/_update.html:24 +#: dashboards/syspanel/networks/templates/networks/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/_update.html:23 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:28 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:32 #: dashboards/syspanel/projects/templates/projects/_add_user.html:24 #: dashboards/syspanel/projects/templates/projects/_create.html:24 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:24 #: dashboards/syspanel/projects/templates/projects/_quotas.html:23 #: dashboards/syspanel/projects/templates/projects/_update.html:24 #: dashboards/syspanel/users/templates/users/_create.html:23 @@ -609,161 +659,154 @@ msgstr "Modifier les règles de groupe de sécurité" msgid "Add Rule" msgstr "Ajouter une règle" -#: dashboards/nova/containers/forms.py:38 +#: dashboards/nova/containers/browsers.py:30 +msgid "Swift" +msgstr "" + +#: dashboards/nova/containers/forms.py:37 msgid "Slash is not an allowed character." msgstr "Le caractère barre oblique n'est pas autorisé." -#: dashboards/nova/containers/forms.py:48 -#: dashboards/nova/containers/tables.py:91 +#: dashboards/nova/containers/forms.py:47 +#: dashboards/nova/containers/tables.py:125 msgid "Container Name" msgstr "Nom de conteneur" -#: dashboards/nova/containers/forms.py:56 +#: dashboards/nova/containers/forms.py:55 msgid "Container created successfully." msgstr "Succès de création du conteneur." -#: dashboards/nova/containers/forms.py:67 +#: dashboards/nova/containers/forms.py:66 #, fuzzy msgid "Folder created successfully." msgstr "Succès de création du conteneur." -#: dashboards/nova/containers/forms.py:75 +#: dashboards/nova/containers/forms.py:69 msgid "Unable to create container." msgstr "Impossible de créer le conteneur." -#: dashboards/nova/containers/forms.py:85 -#: dashboards/nova/containers/tables.py:157 +#: dashboards/nova/containers/forms.py:77 +#: dashboards/nova/containers/tables.py:253 msgid "Object Name" msgstr "Nom de l'objet" -#: dashboards/nova/containers/forms.py:87 +#: dashboards/nova/containers/forms.py:79 msgid "File" msgstr "Fichier" -#: dashboards/nova/containers/forms.py:103 +#: dashboards/nova/containers/forms.py:95 msgid "Object was successfully uploaded." msgstr "L'objet a été uploadé avec succès." -#: dashboards/nova/containers/forms.py:105 +#: dashboards/nova/containers/forms.py:98 msgid "Unable to upload object." msgstr "Impossible d'uploader l'objet." -#: dashboards/nova/containers/forms.py:111 +#: dashboards/nova/containers/forms.py:102 msgid "Destination container" msgstr "Conteneur de destination" -#: dashboards/nova/containers/forms.py:115 +#: dashboards/nova/containers/forms.py:106 msgid "Destination object name" msgstr "Nom d'objet de destination" -#: dashboards/nova/containers/forms.py:145 -#: dashboards/nova/containers/forms.py:169 +#: dashboards/nova/containers/forms.py:136 +#: dashboards/nova/containers/forms.py:162 msgid "Unable to copy object." msgstr "Impossible de copier l'objet." -#: dashboards/nova/containers/forms.py:161 +#: dashboards/nova/containers/forms.py:152 #, python-format msgid "Copied \"%(orig)s\" to \"%(dest)s\" as \"%(new)s\"." msgstr "" #: dashboards/nova/containers/panel.py:28 -#: dashboards/nova/containers/tables.py:35 -#: dashboards/nova/containers/tables.py:102 -#: dashboards/nova/containers/templates/containers/index.html:6 +#: dashboards/nova/containers/tables.py:41 +#: dashboards/nova/containers/tables.py:132 msgid "Containers" msgstr "Conteneurs" -#: dashboards/nova/containers/tables.py:34 -#: dashboards/nova/containers/templates/containers/detail.html:7 +#: dashboards/nova/containers/tables.py:40 +#: dashboards/nova/containers/templates/containers/index.html:7 msgid "Container" msgstr "Conteneur" -#: dashboards/nova/containers/tables.py:42 +#: dashboards/nova/containers/tables.py:49 msgid "Containers must be empty before deletion." msgstr "" -#: dashboards/nova/containers/tables.py:48 +#: dashboards/nova/containers/tables.py:67 #: dashboards/nova/containers/templates/containers/_create.html:7 #: dashboards/nova/containers/templates/containers/_create.html:22 #: dashboards/nova/containers/templates/containers/create.html:6 msgid "Create Container" msgstr "Création d'un conteneur" -#: dashboards/nova/containers/tables.py:55 +#: dashboards/nova/containers/tables.py:74 #, fuzzy msgid "View Container" msgstr "Conteneur" -#: dashboards/nova/containers/tables.py:62 +#: dashboards/nova/containers/tables.py:86 #: dashboards/nova/containers/templates/containers/_upload.html:23 #: dashboards/nova/containers/templates/containers/upload.html:3 msgid "Upload Object" msgstr "Uploader un objet" -#: dashboards/nova/containers/tables.py:93 -#: dashboards/nova/containers/tables.py:109 -#: dashboards/nova/containers/tables.py:169 -#: dashboards/nova/containers/templates/containers/detail.html:3 +#: dashboards/nova/containers/tables.py:140 +#: dashboards/nova/containers/tables.py:159 +msgid "Object" +msgstr "Objet" + +#: dashboards/nova/containers/tables.py:141 +#: dashboards/nova/containers/tables.py:160 +#: dashboards/nova/containers/tables.py:263 msgid "Objects" msgstr "Objets" -#: dashboards/nova/containers/tables.py:95 -#: dashboards/nova/containers/tables.py:160 +#: dashboards/nova/containers/tables.py:152 +msgid "Folder" +msgstr "" + +#: dashboards/nova/containers/tables.py:153 +msgid "Folders" +msgstr "" + +#: dashboards/nova/containers/tables.py:166 +msgid "Copy" +msgstr "Copie" + +#: dashboards/nova/containers/tables.py:178 +msgid "Download" +msgstr "Télécharger" + +#: dashboards/nova/containers/tables.py:232 +#, fuzzy +msgid "Create Folder" +msgstr "Créer un type d'instance" + +#: dashboards/nova/containers/tables.py:256 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:30 -#: dashboards/nova/instances/tables.py:271 -#: dashboards/nova/volumes/tables.py:140 +#: dashboards/nova/instances/tables.py:272 +#: dashboards/nova/volumes/tables.py:141 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:26 #: dashboards/syspanel/instances/tables.py:76 msgid "Size" msgstr "Taille" -#: dashboards/nova/containers/tables.py:108 -msgid "Object" -msgstr "Objet" - -#: dashboards/nova/containers/tables.py:119 -msgid "Copy" -msgstr "Copie" - -#: dashboards/nova/containers/tables.py:130 -msgid "Download" -msgstr "Télécharger" - -#: dashboards/nova/containers/tables.py:181 -#, fuzzy -msgid "Create Folder" -msgstr "Créer un type d'instance" - -#: dashboards/nova/containers/tables.py:193 -msgid "Folder" -msgstr "" - -#: dashboards/nova/containers/tables.py:194 -msgid "Folders" -msgstr "" - -#: dashboards/nova/containers/tables.py:200 -#, fuzzy -msgid "Subfolder Name" -msgstr "Nom du serveur" - -#: dashboards/nova/containers/tables.py:208 -msgid "Subfolders" -msgstr "" - -#: dashboards/nova/containers/views.py:58 +#: dashboards/nova/containers/views.py:52 msgid "Unable to retrieve container list." msgstr "Impossible de récupérer la liste des conteneurs." -#: dashboards/nova/containers/views.py:103 +#: dashboards/nova/containers/views.py:80 msgid "Unable to retrieve object list." msgstr "Impossible de récupérer la liste des objets." -#: dashboards/nova/containers/views.py:161 +#: dashboards/nova/containers/views.py:175 msgid "Unable to retrieve object." msgstr "Impossible de récupérer l'objet." -#: dashboards/nova/containers/views.py:183 +#: dashboards/nova/containers/views.py:204 msgid "Unable to list containers." msgstr "Impossible de lister les conteneurs." @@ -828,119 +871,120 @@ msgstr "Upload d'objets" msgid "Images & Snapshots" msgstr "Images & Instantanés" -#: dashboards/nova/images_and_snapshots/views.py:60 +#: dashboards/nova/images_and_snapshots/views.py:61 msgid "Unable to retrieve images." msgstr "Impossible de récupérer les images." -#: dashboards/nova/images_and_snapshots/views.py:71 +#: dashboards/nova/images_and_snapshots/views.py:72 msgid "Unable to retrieve snapshots." msgstr "Impossible de récupérer les instantanés." -#: dashboards/nova/images_and_snapshots/views.py:79 +#: dashboards/nova/images_and_snapshots/views.py:80 +#: dashboards/nova/volumes/forms.py:65 msgid "Unable to retrieve volume snapshots." msgstr "Impossible de récupérer les instantanés de volume." -#: dashboards/nova/images_and_snapshots/images/forms.py:44 +#: dashboards/nova/images_and_snapshots/images/forms.py:41 msgid "Image Location" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:45 -msgid "An external (HTTP) URL where the image should be loaded from." +#: dashboards/nova/images_and_snapshots/images/forms.py:42 +msgid "An external (HTTP) URL to load the image from." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:48 -#: dashboards/nova/images_and_snapshots/images/forms.py:135 +#: dashboards/nova/images_and_snapshots/images/forms.py:45 +#: dashboards/nova/images_and_snapshots/images/forms.py:129 #: dashboards/nova/images_and_snapshots/images/tables.py:125 #, fuzzy msgid "Format" msgstr "Formatage de disque" -#: dashboards/nova/images_and_snapshots/images/forms.py:52 +#: dashboards/nova/images_and_snapshots/images/forms.py:49 msgid "AKI - Amazon Kernel Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:55 +#: dashboards/nova/images_and_snapshots/images/forms.py:52 msgid "AMI - Amazon Machine Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:58 +#: dashboards/nova/images_and_snapshots/images/forms.py:55 msgid "ARI - Amazon Ramdisk Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:61 +#: dashboards/nova/images_and_snapshots/images/forms.py:58 msgid "ISO - Optical Disk Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:63 +#: dashboards/nova/images_and_snapshots/images/forms.py:60 msgid "QCOW2 - QEMU Emulator" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:70 +#: dashboards/nova/images_and_snapshots/images/forms.py:67 msgid "Minimum Disk (GB)" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:71 -#: dashboards/nova/images_and_snapshots/images/forms.py:78 +#: dashboards/nova/images_and_snapshots/images/forms.py:68 +#: dashboards/nova/images_and_snapshots/images/forms.py:75 msgid "" "The minimum disk size required to boot the image. If unspecified, this value " "defaults to 0 (no minimum)." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:77 +#: dashboards/nova/images_and_snapshots/images/forms.py:74 msgid "Minimum Ram (MB)" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:84 -#: dashboards/nova/images_and_snapshots/images/forms.py:139 +#: dashboards/nova/images_and_snapshots/images/forms.py:81 +#: dashboards/nova/images_and_snapshots/images/forms.py:133 #: dashboards/nova/images_and_snapshots/images/tables.py:122 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:15 msgid "Public" msgstr "Publique" -#: dashboards/nova/images_and_snapshots/images/forms.py:108 +#: dashboards/nova/images_and_snapshots/images/forms.py:105 #, python-format msgid "Your image %s has been queued for creation." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:111 +#: dashboards/nova/images_and_snapshots/images/forms.py:109 #, fuzzy msgid "Unable to create new image." msgstr "Impossible de récupérer les images." -#: dashboards/nova/images_and_snapshots/images/forms.py:121 +#: dashboards/nova/images_and_snapshots/images/forms.py:115 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:48 msgid "Kernel ID" msgstr "ID de Kernel" -#: dashboards/nova/images_and_snapshots/images/forms.py:126 +#: dashboards/nova/images_and_snapshots/images/forms.py:120 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:52 msgid "Ramdisk ID" msgstr "ID de Ramdisk" -#: dashboards/nova/images_and_snapshots/images/forms.py:131 +#: dashboards/nova/images_and_snapshots/images/forms.py:125 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:44 msgid "Architecture" msgstr "Architecture" -#: dashboards/nova/images_and_snapshots/images/forms.py:144 +#: dashboards/nova/images_and_snapshots/images/forms.py:137 #, python-format msgid "Unable to update image \"%s\"." msgstr "Impossible de mettre à jour l'image \"%s\"." -#: dashboards/nova/images_and_snapshots/images/forms.py:163 +#: dashboards/nova/images_and_snapshots/images/forms.py:161 msgid "Image was successfully updated." msgstr "L'image a été mise à jour avec succès." #: dashboards/nova/images_and_snapshots/images/tables.py:33 #: dashboards/nova/images_and_snapshots/snapshots/tables.py:32 -#: dashboards/nova/instances/workflows.py:394 +#: dashboards/nova/instances/workflows.py:451 msgid "Launch" msgstr "Lancer" #: dashboards/nova/images_and_snapshots/images/tables.py:45 #: dashboards/nova/images_and_snapshots/images/tables.py:81 -#: dashboards/nova/instances/workflows.py:162 #: dashboards/nova/instances/workflows.py:167 +#: dashboards/nova/instances/workflows.py:172 msgid "Image" msgstr "Image" @@ -960,7 +1004,7 @@ msgid "Create Image" msgstr "Mettre à jour l'image" #: dashboards/nova/images_and_snapshots/images/tables.py:67 -#: dashboards/syspanel/users/tables.py:30 +#: dashboards/syspanel/users/tables.py:31 msgid "Edit" msgstr "Editer" @@ -972,18 +1016,29 @@ msgstr "Nom d'image" #: dashboards/nova/images_and_snapshots/images/tables.py:118 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:13 -#: dashboards/nova/instances/tables.py:275 +#: dashboards/nova/instances/tables.py:277 #: dashboards/nova/instances/templates/instances/_detail_overview.html:13 -#: dashboards/nova/volumes/tables.py:143 +#: dashboards/nova/networks/tables.py:86 +#: dashboards/nova/networks/ports/tables.py:44 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:13 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:30 +#: dashboards/nova/volumes/tables.py:145 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:17 -#: dashboards/syspanel/instances/tables.py:80 +#: dashboards/syspanel/instances/tables.py:81 +#: dashboards/syspanel/networks/tables.py:71 +#: dashboards/syspanel/networks/ports/tables.py:77 msgid "Status" msgstr "Etat" #: dashboards/nova/images_and_snapshots/images/tabs.py:26 -#: dashboards/nova/instances/tabs.py:25 dashboards/nova/overview/panel.py:28 +#: dashboards/nova/instances/tabs.py:25 +#: dashboards/nova/networks/ports/tabs.py:29 +#: dashboards/nova/networks/subnets/tabs.py:31 +#: dashboards/nova/overview/panel.py:28 #: dashboards/nova/overview/templates/overview/usage.html:6 -#: dashboards/nova/volumes/tabs.py:26 dashboards/syspanel/overview/panel.py:28 +#: dashboards/nova/volumes/tabs.py:26 +#: dashboards/syspanel/networks/ports/tabs.py:29 +#: dashboards/syspanel/overview/panel.py:28 #: dashboards/syspanel/overview/templates/overview/usage.html:6 msgid "Overview" msgstr "Vue d'ensemble" @@ -992,17 +1047,17 @@ msgstr "Vue d'ensemble" msgid "Unable to retrieve image details." msgstr "Impossible de récupérer les détails de l'image." -#: dashboards/nova/images_and_snapshots/images/views.py:57 +#: dashboards/nova/images_and_snapshots/images/views.py:60 #, fuzzy msgid "Unable to retrieve image." msgstr "Impossible de récupérer les images." -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:38 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:36 msgid "Instance ID" msgstr "ID d'instance" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:41 -#: dashboards/nova/volumes/forms.py:123 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:39 +#: dashboards/nova/volumes/forms.py:193 msgid "Snapshot Name" msgstr "Nom d'instantané" @@ -1011,14 +1066,13 @@ msgstr "Nom d'instantané" msgid "Snapshot \"%(name)s\" created for instance \"%(inst)s\"" msgstr "Instantané \"%(name)s\" créé pour l'instance \"%(inst)s\"" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:56 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:55 msgid "Unable to create snapshot." msgstr "Impossible de créer l'instantané." #: dashboards/nova/images_and_snapshots/snapshots/tables.py:47 -#: dashboards/nova/instances/tables.py:162 -#: dashboards/nova/instances/workflows.py:101 -#: dashboards/nova/instances/workflows.py:163 +#: dashboards/nova/instances/workflows.py:106 +#: dashboards/nova/instances/workflows.py:168 msgid "Snapshot" msgstr "Instantané" @@ -1030,15 +1084,10 @@ msgstr "Instantanés" msgid "Instance Snapshots" msgstr "Instantané d'instance" -#: dashboards/nova/images_and_snapshots/snapshots/views.py:50 +#: dashboards/nova/images_and_snapshots/snapshots/views.py:52 msgid "Unable to retrieve instance." msgstr "Echec de récupération de l'instance." -#: dashboards/nova/images_and_snapshots/snapshots/views.py:53 -#, python-format -msgid "To create a snapshot, the instance must be in the \"%s\" state." -msgstr "Pour créer un instantané, l'instance doit être dans l'état \"%s\"." - #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/index.html:3 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/index.html:6 msgid "Images & Snapshots" @@ -1084,8 +1133,14 @@ msgstr "Info" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:11 #: dashboards/nova/instances/templates/instances/_detail_overview.html:11 +#: dashboards/nova/networks/forms.py:38 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:9 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:12 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:11 -#: dashboards/syspanel/projects/forms.py:83 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:12 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:12 #: dashboards/syspanel/users/forms.py:113 msgid "ID" msgstr "ID" @@ -1126,7 +1181,9 @@ msgid "Euca2ools state" msgstr "Etat Euca2ools" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:60 -#: dashboards/syspanel/projects/tables.py:77 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:15 +#: dashboards/syspanel/projects/tables.py:90 msgid "Project ID" msgstr "ID projet" @@ -1157,6 +1214,7 @@ msgstr "Détail d'une image" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:8 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:23 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/create.html:3 +#: dashboards/nova/instances/tables.py:162 #: dashboards/nova/volumes/tables.py:67 msgid "Create Snapshot" msgstr "Créer un instantané" @@ -1171,17 +1229,24 @@ msgstr "" msgid "Create a Snapshot" msgstr "Création d'un instantané" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:30 -#: dashboards/nova/instances/workflows.py:70 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:32 +#: dashboards/nova/instances/workflows.py:75 msgid "Volume Snapshot" msgstr "Instantané de volume" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:31 -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:52 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:33 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:69 msgid "Volume Snapshots" msgstr "Instantanés de volume" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:48 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:41 +#: dashboards/nova/volumes/tables.py:50 +#: dashboards/nova/volumes/templates/volumes/_create.html:8 +#: dashboards/nova/volumes/templates/volumes/_create.html:55 +msgid "Create Volume" +msgstr "Créer un volume" + +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:65 msgid "Volume ID" msgstr "ID de volume" @@ -1190,7 +1255,7 @@ msgstr "ID de volume" msgid "Instance \"%s\" updated." msgstr "Instance \"%s\" mise à jour." -#: dashboards/nova/instances/forms.py:46 +#: dashboards/nova/instances/forms.py:49 msgid "Unable to update instance." msgstr "Impossible de mettre à jour l'instance." @@ -1199,13 +1264,13 @@ msgstr "Impossible de mettre à jour l'instance." #: dashboards/nova/instances/tables.py:80 #: dashboards/nova/instances/tables.py:95 #: dashboards/nova/instances/tables.py:123 -#: dashboards/nova/instances/tables.py:290 +#: dashboards/nova/instances/tables.py:292 #: dashboards/nova/instances/templates/instances/index.html:3 #: dashboards/nova/instances/templates/instances/index.html:6 #: dashboards/syspanel/instances/panel.py:28 -#: dashboards/syspanel/instances/tables.py:95 +#: dashboards/syspanel/instances/tables.py:96 #: dashboards/syspanel/instances/templates/instances/index.html:3 -#: dashboards/syspanel/projects/forms.py:115 +#: dashboards/syspanel/projects/workflows.py:35 msgid "Instances" msgstr "Instances" @@ -1258,7 +1323,7 @@ msgid "Resumed" msgstr "Repris" #: dashboards/nova/instances/tables.py:148 -#: dashboards/nova/instances/workflows.py:393 +#: dashboards/nova/instances/workflows.py:450 #: dashboards/nova/instances/templates/instances/launch.html:3 #: dashboards/nova/instances/templates/instances/launch.html:6 #, fuzzy @@ -1289,17 +1354,17 @@ msgid "Not available" msgstr "Non disponible" #: dashboards/nova/instances/tables.py:269 -#: dashboards/syspanel/instances/tables.py:73 usage/tables.py:56 +#: dashboards/syspanel/instances/tables.py:73 usage/tables.py:57 msgid "Instance Name" msgstr "Nom de l'instance" -#: dashboards/nova/instances/tables.py:279 -#: dashboards/syspanel/instances/tables.py:84 +#: dashboards/nova/instances/tables.py:281 +#: dashboards/syspanel/instances/tables.py:85 msgid "Task" msgstr "Tâche" -#: dashboards/nova/instances/tables.py:286 -#: dashboards/syspanel/instances/tables.py:91 +#: dashboards/nova/instances/tables.py:288 +#: dashboards/syspanel/instances/tables.py:92 msgid "Power State" msgstr "Etat d'alimentation" @@ -1330,241 +1395,298 @@ msgstr "Echec de récupération des instances." msgid "Unable to retrieve instance size information." msgstr "Impossible de récupérer la taille de l'instance." -#: dashboards/nova/instances/views.py:137 +#: dashboards/nova/instances/views.py:143 msgid "Unable to retrieve instance details." msgstr "Impossible de récupérer le détail de l'instance." -#: dashboards/nova/instances/views.py:172 +#: dashboards/nova/instances/views.py:178 #, python-format msgid "Unable to retrieve details for instance \"%s\"." msgstr "Impossible de récupérer les informations sur l'instance \"%s\"." -#: dashboards/nova/instances/workflows.py:33 -#: dashboards/syspanel/projects/tables.py:92 -#: dashboards/syspanel/users/tables.py:39 -#: dashboards/syspanel/users/tables.py:73 tests/workflows_tests.py:40 +#: dashboards/nova/instances/workflows.py:38 +#: dashboards/syspanel/projects/tables.py:106 +#: dashboards/syspanel/users/tables.py:40 +#: dashboards/syspanel/users/tables.py:74 tests/workflows_tests.py:40 msgid "User" msgstr "Utilisateur" -#: dashboards/nova/instances/workflows.py:47 +#: dashboards/nova/instances/workflows.py:52 #, fuzzy msgid "Project & User" msgstr "Utilisation du projet" -#: dashboards/nova/instances/workflows.py:49 +#: dashboards/nova/instances/workflows.py:54 msgid "" "Admin users may optionally select the project and user for whom the instance " "should be created." msgstr "" -#: dashboards/nova/instances/workflows.py:60 +#: dashboards/nova/instances/workflows.py:65 msgid "Don't boot from a volume." msgstr "" -#: dashboards/nova/instances/workflows.py:61 +#: dashboards/nova/instances/workflows.py:66 msgid "Boot from volume." msgstr "" -#: dashboards/nova/instances/workflows.py:62 +#: dashboards/nova/instances/workflows.py:67 msgid "Boot from volume snapshot (creates a new volume)." msgstr "" -#: dashboards/nova/instances/workflows.py:66 -#: dashboards/nova/instances/workflows.py:84 +#: dashboards/nova/instances/workflows.py:71 +#: dashboards/nova/instances/workflows.py:89 #, fuzzy msgid "Volume Options" msgstr "Détails du volume" -#: dashboards/nova/instances/workflows.py:69 -#: dashboards/nova/instances/workflows.py:104 +#: dashboards/nova/instances/workflows.py:74 +#: dashboards/nova/instances/workflows.py:109 #: dashboards/nova/instances/templates/instances/_detail_overview.html:93 -#: dashboards/nova/volumes/tables.py:36 dashboards/nova/volumes/tables.py:171 +#: dashboards/nova/volumes/tables.py:36 dashboards/nova/volumes/tables.py:173 msgid "Volume" msgstr "Volume" -#: dashboards/nova/instances/workflows.py:72 +#: dashboards/nova/instances/workflows.py:77 +#: dashboards/nova/volumes/forms.py:126 msgid "Device Name" msgstr "Nom de périphérique" -#: dashboards/nova/instances/workflows.py:75 +#: dashboards/nova/instances/workflows.py:80 msgid "Volume mount point (e.g. 'vda' mounts at '/dev/vda')." msgstr "" "Point de montage de volume (exemple monter 'vda' à partir de '/dev/vda')." -#: dashboards/nova/instances/workflows.py:77 +#: dashboards/nova/instances/workflows.py:82 msgid "Delete on Terminate" msgstr "Supprimer après la mise à l'arrêt" -#: dashboards/nova/instances/workflows.py:80 +#: dashboards/nova/instances/workflows.py:85 msgid "Delete volume on instance terminate" msgstr "Supprimer le volume lors de la mise à l'arrêt de l'instance" -#: dashboards/nova/instances/workflows.py:111 +#: dashboards/nova/instances/workflows.py:116 msgid "Select Volume" msgstr "Sélectionner un volume" -#: dashboards/nova/instances/workflows.py:119 +#: dashboards/nova/instances/workflows.py:124 #, fuzzy msgid "Unable to retrieve list of volumes." msgstr "Echec de récupération de la liste des volumes" -#: dashboards/nova/instances/workflows.py:123 +#: dashboards/nova/instances/workflows.py:128 #, fuzzy msgid "Select Volume Snapshot" msgstr "Créer un instantané de Volume" -#: dashboards/nova/instances/workflows.py:132 +#: dashboards/nova/instances/workflows.py:137 #, fuzzy msgid "Unable to retrieve list of volume snapshots." msgstr "Impossible de récupérer les instantanés de volume." -#: dashboards/nova/instances/workflows.py:165 +#: dashboards/nova/instances/workflows.py:170 #, fuzzy msgid "Instance Source" msgstr "Nombre d'instances" -#: dashboards/nova/instances/workflows.py:168 +#: dashboards/nova/instances/workflows.py:173 #, fuzzy msgid "Instance Snapshot" msgstr "Instantané d'instance" -#: dashboards/nova/instances/workflows.py:170 +#: dashboards/nova/instances/workflows.py:175 msgid "Server Name" msgstr "Nom du serveur" -#: dashboards/nova/instances/workflows.py:171 +#: dashboards/nova/instances/workflows.py:176 #: dashboards/nova/instances/templates/instances/_detail_overview.html:22 #: dashboards/syspanel/flavors/tables.py:13 msgid "Flavor" msgstr "Type d'instance" -#: dashboards/nova/instances/workflows.py:172 +#: dashboards/nova/instances/workflows.py:177 msgid "Size of image to launch." msgstr "Taille de l'image à lancer." -#: dashboards/nova/instances/workflows.py:173 +#: dashboards/nova/instances/workflows.py:178 msgid "Instance Count" msgstr "Nombre d'instances" -#: dashboards/nova/instances/workflows.py:176 +#: dashboards/nova/instances/workflows.py:181 msgid "Number of instances to launch." msgstr "Nombre d'instances à lancer." -#: dashboards/nova/instances/workflows.py:179 +#: dashboards/nova/instances/workflows.py:184 #, fuzzy msgid "Details" msgstr "Détails du volume" -#: dashboards/nova/instances/workflows.py:198 +#: dashboards/nova/instances/workflows.py:197 +msgid "" +"There are no image sources available; you must first create an image before " +"attempting to launch an instance." +msgstr "" + +#: dashboards/nova/instances/workflows.py:202 +#, fuzzy +msgid "Please select an option for the instance source." +msgstr "Merci de sélectionner une ligne avant de faire cette action." + +#: dashboards/nova/instances/workflows.py:211 msgid "" "Launching multiple instances is only supported for images and instance " "snapshots." msgstr "" -#: dashboards/nova/instances/workflows.py:214 +#: dashboards/nova/instances/workflows.py:227 #, fuzzy msgid "Unable to retrieve public images." msgstr "Impossible de récupérer les images." -#: dashboards/nova/instances/workflows.py:228 +#: dashboards/nova/instances/workflows.py:241 #, fuzzy msgid "Unable to retrieve images for the current project." msgstr "Impossible de s'authentifier pour ce projet." -#: dashboards/nova/instances/workflows.py:251 +#: dashboards/nova/instances/workflows.py:264 #, fuzzy msgid "Select Image" msgstr "Sélectionnez la langue" -#: dashboards/nova/instances/workflows.py:253 +#: dashboards/nova/instances/workflows.py:266 #, fuzzy msgid "No images available." msgstr "Aucune instance disponible" -#: dashboards/nova/instances/workflows.py:262 +#: dashboards/nova/instances/workflows.py:275 #, fuzzy msgid "Select Instance Snapshot" msgstr "Instantané d'instance" -#: dashboards/nova/instances/workflows.py:264 +#: dashboards/nova/instances/workflows.py:277 #, fuzzy msgid "No snapshots available." msgstr "Aucune instance disponible" -#: dashboards/nova/instances/workflows.py:275 +#: dashboards/nova/instances/workflows.py:288 msgid "Unable to retrieve instance flavors." msgstr "Impossible de récupérer la liste des types d'instance." -#: dashboards/nova/instances/workflows.py:288 +#: dashboards/nova/instances/workflows.py:301 #, fuzzy msgid "Unable to retrieve quota information." msgstr "Impossible de récupérer les informations d'utilisation." -#: dashboards/nova/instances/workflows.py:318 +#: dashboards/nova/instances/workflows.py:334 msgid "Which keypair to use for authentication." msgstr "Quelle paire de clés utiliser pour l'authentification." -#: dashboards/nova/instances/workflows.py:324 +#: dashboards/nova/instances/workflows.py:341 msgid "Launch instance in these security groups." msgstr "Lancer une instance dans ce groupe de sécurité." -#: dashboards/nova/instances/workflows.py:329 +#: dashboards/nova/instances/workflows.py:346 msgid "" "Control access to your instance via keypairs, security groups, and other " "mechanisms." msgstr "" -#: dashboards/nova/instances/workflows.py:339 +#: dashboards/nova/instances/workflows.py:356 msgid "Unable to retrieve keypairs." msgstr "Impossible récupérer les paires de clé." -#: dashboards/nova/instances/workflows.py:341 +#: dashboards/nova/instances/workflows.py:358 msgid "Select a keypair" msgstr "Sélectionnez une paire de clés" -#: dashboards/nova/instances/workflows.py:343 +#: dashboards/nova/instances/workflows.py:360 msgid "No keypairs available." msgstr "Pas de paires de clés disponibles." -#: dashboards/nova/instances/workflows.py:352 +#: dashboards/nova/instances/workflows.py:369 msgid "Unable to retrieve list of security groups" msgstr "Impossible de récupérer la liste des groupes de sécurité" -#: dashboards/nova/instances/workflows.py:372 +#: dashboards/nova/instances/workflows.py:389 msgid "Customization Script" msgstr "" -#: dashboards/nova/instances/workflows.py:374 +#: dashboards/nova/instances/workflows.py:391 msgid "" "A script or set of commands to be executed after the instance has been built " "(max 16kb)." msgstr "" -#: dashboards/nova/instances/workflows.py:381 +#: dashboards/nova/instances/workflows.py:398 msgid "Post-Creation" msgstr "" -#: dashboards/nova/instances/workflows.py:395 +#: dashboards/nova/instances/workflows.py:409 +#: dashboards/nova/networks/panel.py:24 dashboards/nova/networks/tables.py:32 +#: dashboards/nova/networks/tables.py:92 +#: dashboards/nova/networks/templates/networks/index.html:3 +#: dashboards/nova/networks/templates/networks/index.html:6 +#: dashboards/syspanel/networks/panel.py:24 +#: dashboards/syspanel/networks/tables.py:34 +#: dashboards/syspanel/networks/tables.py:77 +#: dashboards/syspanel/networks/templates/networks/index.html:3 +#: dashboards/syspanel/networks/templates/networks/index.html:6 +msgid "Networks" +msgstr "" + +#: dashboards/nova/instances/workflows.py:412 +#, fuzzy +msgid "Launch instance withthese networks" +msgstr "Lancer une instance dans ce groupe de sécurité." + +#: dashboards/nova/instances/workflows.py:416 +msgid "Networking" +msgstr "" + +#: dashboards/nova/instances/workflows.py:418 +#, fuzzy +msgid "Select networks for your instance." +msgstr "Sélectionnez une instance" + +#: dashboards/nova/instances/workflows.py:429 +#, fuzzy +msgid "Unable to retrieve networks." +msgstr "Impossible de récupérer les utilisateurs." + +#: dashboards/nova/instances/workflows.py:452 #, python-format msgid "Launched %(count)s named \"%(name)s\"." msgstr "" -#: dashboards/nova/instances/workflows.py:396 +#: dashboards/nova/instances/workflows.py:453 #, fuzzy, python-format msgid "Unable to launch %(count)s named \"%(name)s\"." msgstr "Impossible de lancer l'instance: %(exc)s" -#: dashboards/nova/instances/workflows.py:408 +#: dashboards/nova/instances/workflows.py:466 #, fuzzy, python-format msgid "%s instances" msgstr "Instances" -#: dashboards/nova/instances/workflows.py:411 +#: dashboards/nova/instances/workflows.py:469 #, fuzzy msgid "instance" msgstr "Instance" +#: dashboards/nova/instances/templates/instances/_detail_log.html:4 +#, fuzzy +msgid "Instance Console Log" +msgstr "Console VNC de l'instance" + #: dashboards/nova/instances/templates/instances/_detail_log.html:7 +msgid "Log Length" +msgstr "" + +#: dashboards/nova/instances/templates/instances/_detail_log.html:9 +msgid "Go" +msgstr "" + +#: dashboards/nova/instances/templates/instances/_detail_log.html:11 msgid "View Full Log" msgstr "Visualiser les journaux complets" @@ -1581,8 +1703,8 @@ msgstr "Mémoire" #: dashboards/nova/instances/templates/instances/_detail_overview.html:26 #: dashboards/nova/instances/templates/instances/_launch_details_help.html:10 #: dashboards/syspanel/flavors/forms.py:38 -#: dashboards/syspanel/flavors/tables.py:30 -#: dashboards/syspanel/projects/forms.py:114 usage/tables.py:19 +#: dashboards/syspanel/flavors/tables.py:34 +#: dashboards/syspanel/projects/workflows.py:34 usage/tables.py:19 msgid "VCPUs" msgstr "VCPUs" @@ -1625,7 +1747,7 @@ msgid "Volumes Attached" msgstr "Pas de volume attaché." #: dashboards/nova/instances/templates/instances/_detail_overview.html:88 -#: dashboards/nova/volumes/tables.py:156 +#: dashboards/nova/volumes/tables.py:158 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:38 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:45 msgid "Attached To" @@ -1698,12 +1820,12 @@ msgid "Flavor Details" msgstr "ID de type d'instance" #: dashboards/nova/instances/templates/instances/_launch_details_help.html:11 -#: dashboards/syspanel/flavors/tables.py:32 +#: dashboards/syspanel/flavors/tables.py:38 msgid "Root Disk" msgstr "Disque racine" #: dashboards/nova/instances/templates/instances/_launch_details_help.html:12 -#: dashboards/syspanel/flavors/tables.py:34 +#: dashboards/syspanel/flavors/tables.py:40 msgid "Ephemeral Disk" msgstr "Disque éphémère" @@ -1743,6 +1865,11 @@ msgid "You may update the editable properties of your instance here." msgstr "Mise à jour du nom de votre instance" #: dashboards/nova/instances/templates/instances/_update.html:22 +#: dashboards/nova/networks/templates/networks/_update.html:22 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:31 +#: dashboards/syspanel/networks/templates/networks/_update.html:22 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:27 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:31 msgid "Save Changes" msgstr "" @@ -1755,6 +1882,469 @@ msgstr "Détail de l'instance" msgid "Update Instance" msgstr "Mettre à jour l'instance" +#: dashboards/nova/networks/forms.py:47 +#, fuzzy, python-format +msgid "Network %s was successfully updated." +msgstr "%s a été mis à jour avec succès." + +#: dashboards/nova/networks/forms.py:52 +#, fuzzy, python-format +msgid "Failed to update network %s" +msgstr "Impossible de mettre à jour l'image \"%s\"." + +#: dashboards/nova/networks/tables.py:31 +#: dashboards/nova/networks/templates/networks/subnets/index.html:3 +#: dashboards/nova/networks/templates/networks/subnets/index.html:6 +#: dashboards/syspanel/networks/tables.py:33 +msgid "Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:47 +#: dashboards/syspanel/networks/tables.py:40 +#, python-format +msgid "Failed to delete network %s" +msgstr "" + +#: dashboards/nova/networks/tables.py:55 +#: dashboards/nova/networks/workflows.py:110 +#: dashboards/nova/networks/templates/networks/_create.html:7 +#: dashboards/nova/networks/templates/networks/_create.html:22 +#: dashboards/nova/networks/templates/networks/create.html:3 +#: dashboards/nova/networks/templates/networks/create.html:6 +#: dashboards/syspanel/networks/tables.py:48 +#: dashboards/syspanel/networks/templates/networks/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/create.html:3 +#: dashboards/syspanel/networks/templates/networks/create.html:6 +#, fuzzy +msgid "Create Network" +msgstr "Créer un utilisateur" + +#: dashboards/nova/networks/tables.py:62 +#: dashboards/nova/networks/templates/networks/_update.html:7 +#: dashboards/syspanel/networks/tables.py:55 +#: dashboards/syspanel/networks/templates/networks/_update.html:7 +msgid "Edit Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:69 +#, fuzzy +msgid "Add Subnet" +msgstr "Ajouter une règle" + +#: dashboards/nova/networks/tables.py:85 +#: dashboards/syspanel/networks/tables.py:70 +#, fuzzy +msgid "Subnets Associated" +msgstr "Associer une adresse IP" + +#: dashboards/nova/networks/tables.py:88 +#: dashboards/nova/networks/ports/tables.py:46 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:15 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:32 +#: dashboards/syspanel/networks/tables.py:73 +#: dashboards/syspanel/networks/ports/tables.py:79 +#, fuzzy +msgid "Admin State" +msgstr "Administration" + +#: dashboards/nova/networks/views.py:55 +#: dashboards/syspanel/networks/views.py:60 +msgid "Network list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:89 +#, fuzzy +msgid "Unable to retrieve network details." +msgstr "Impossible de récupérer les détails de l'image." + +#: dashboards/nova/networks/views.py:112 +#: dashboards/syspanel/networks/views.py:91 +msgid "Subnet list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:124 +#: dashboards/syspanel/networks/views.py:103 +msgid "Port list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:137 +#: dashboards/syspanel/networks/views.py:118 +#, fuzzy, python-format +msgid "Unable to retrieve details for network \"%s\"." +msgstr "Impossible de récupérer les informations sur l'instance \"%s\"." + +#: dashboards/nova/networks/workflows.py:36 +msgid "Network Name (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:41 +msgid "" +"From here you can create a new network.\n" +"In addition a subnet associated with the network can be created in the next " +"panel." +msgstr "" + +#: dashboards/nova/networks/workflows.py:52 +#: dashboards/nova/networks/subnets/tables.py:48 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:8 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:23 +#: dashboards/nova/networks/templates/networks/subnets/create.html:3 +#: dashboards/nova/networks/templates/networks/subnets/create.html:6 +#: dashboards/syspanel/networks/subnets/tables.py:48 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/subnets/create.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/create.html:6 +#, fuzzy +msgid "Create Subnet" +msgstr "Créer un instantané" + +#: dashboards/nova/networks/workflows.py:55 +msgid "Subnet Name (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:57 +#: dashboards/nova/networks/subnets/forms.py:44 +#: dashboards/nova/networks/subnets/tables.py:71 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:14 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:14 +#, fuzzy +msgid "Network Address" +msgstr "Adresse IP" + +#: dashboards/nova/networks/workflows.py:60 +#: dashboards/nova/networks/subnets/forms.py:47 +#, fuzzy +msgid "Network address in CIDR format (e.g. 192.168.0.0/24)" +msgstr "Adresse IP en notation CIDR (par exemple 192.168.0.0/24)" + +#: dashboards/nova/networks/workflows.py:65 +#: dashboards/nova/networks/subnets/forms.py:52 +#: dashboards/nova/networks/subnets/tables.py:72 +#: dashboards/syspanel/networks/subnets/tables.py:72 +msgid "IP Version" +msgstr "" + +#: dashboards/nova/networks/workflows.py:66 +msgid "Gateway IP (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:69 +#: dashboards/nova/networks/subnets/forms.py:56 +#: dashboards/nova/networks/subnets/forms.py:106 +msgid "IP address of Gateway (e.g. 192.168.0.1)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:76 +msgid "" +"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." +msgstr "" + +#: dashboards/nova/networks/workflows.py:88 +msgid "Specify \"Network Address\" or clear \"Create Subnet\" checkbox." +msgstr "" + +#: dashboards/nova/networks/workflows.py:93 +#: dashboards/nova/networks/subnets/forms.py:69 +msgid "Network Address and IP version are inconsistent." +msgstr "" + +#: dashboards/nova/networks/workflows.py:97 +#: dashboards/nova/networks/subnets/forms.py:73 +#: dashboards/nova/networks/subnets/forms.py:118 +msgid "Gateway IP and IP version are inconsistent." +msgstr "" + +#: dashboards/nova/networks/workflows.py:111 +#, fuzzy +msgid "Create" +msgstr "Créé" + +#: dashboards/nova/networks/workflows.py:112 +#, python-format +msgid "Created network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:113 +#, fuzzy, python-format +msgid "Unable to create network \"%s\"." +msgstr "Impossible de récupérer les images." + +#: dashboards/nova/networks/workflows.py:129 +#, fuzzy, python-format +msgid "Network \"%s\" was successfully created." +msgstr "L'utilisateur \"%s\" a été créé avec succès." + +#: dashboards/nova/networks/workflows.py:132 +#, fuzzy, python-format +msgid "Failed to create network \"%s\"." +msgstr "Impossible de récupérer les images." + +#: dashboards/nova/networks/workflows.py:151 +#, fuzzy, python-format +msgid "Subnet \"%s\" was successfully created." +msgstr "L'utilisateur \"%s\" a été créé avec succès." + +#: dashboards/nova/networks/workflows.py:154 +#, python-format +msgid "Failed to create subnet \"%(sub)s\" for network \"%(net)s\"." +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:35 +#, fuzzy +msgid "Attached" +msgstr "Attaché à" + +#: dashboards/nova/networks/ports/tables.py:35 +#, fuzzy +msgid "Detached" +msgstr "Détacher" + +#: dashboards/nova/networks/ports/tables.py:42 +#: dashboards/syspanel/networks/ports/tables.py:75 +msgid "Fixed IPs" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:43 +#: dashboards/syspanel/networks/ports/tables.py:76 +#, fuzzy +msgid "Device Attached" +msgstr "Nom de périphérique" + +#: dashboards/nova/networks/ports/tables.py:53 +#: dashboards/syspanel/networks/ports/tables.py:35 +#: dashboards/syspanel/networks/ports/tables.py:83 +#, fuzzy +msgid "Ports" +msgstr "Jusqu'au port" + +#: dashboards/nova/networks/ports/tabs.py:39 +#: dashboards/syspanel/networks/ports/tabs.py:39 +#, fuzzy +msgid "Unable to retrieve port details." +msgstr "Impossible de récupérer le détail du volume." + +#: dashboards/nova/networks/subnets/forms.py:34 +#: dashboards/syspanel/networks/tables.py:67 +#: dashboards/syspanel/networks/ports/forms.py:32 +#, fuzzy +msgid "Network Name" +msgstr "Nom d'utilisateur" + +#: dashboards/nova/networks/subnets/forms.py:38 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:13 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:13 +#: dashboards/syspanel/networks/ports/forms.py:35 +msgid "Network ID" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:53 +#: dashboards/nova/networks/subnets/forms.py:103 +#: dashboards/nova/networks/subnets/tables.py:73 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:19 +#: dashboards/syspanel/networks/subnets/tables.py:73 +msgid "Gateway IP" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:84 +#, fuzzy, python-format +msgid "Subnet %s was successfully created." +msgstr "%s a été créé avec succès." + +#: dashboards/nova/networks/subnets/forms.py:89 +#, fuzzy, python-format +msgid "Failed to create subnet %s" +msgstr "Impossible de créer un utilisateur." + +#: dashboards/nova/networks/subnets/forms.py:130 +#, fuzzy, python-format +msgid "Subnet %s was successfully updated." +msgstr "%s a été mis à jour avec succès." + +#: dashboards/nova/networks/subnets/forms.py:135 +#, fuzzy, python-format +msgid "Failed to update subnet %s" +msgstr "Impossible de mettre à jour les quotas." + +#: dashboards/nova/networks/subnets/tables.py:31 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:6 +#: dashboards/syspanel/networks/subnets/tables.py:31 +msgid "Subnet" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:32 +#: dashboards/nova/networks/subnets/tables.py:77 +#: dashboards/syspanel/networks/subnets/tables.py:32 +#: dashboards/syspanel/networks/subnets/tables.py:80 +msgid "Subnets" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:38 +#: dashboards/syspanel/networks/ports/tables.py:41 +#: dashboards/syspanel/networks/subnets/tables.py:38 +#, python-format +msgid "Failed to delete subnet %s" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:59 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:7 +#: dashboards/syspanel/networks/subnets/tables.py:59 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:7 +#, fuzzy +msgid "Edit Subnet" +msgstr "Editer les règles" + +#: dashboards/nova/networks/subnets/tabs.py:41 +#, fuzzy +msgid "Unable to retrieve subnet details." +msgstr "Impossible de récupérer le détail de l'instance." + +#: dashboards/nova/networks/subnets/views.py:52 +#: dashboards/syspanel/networks/ports/views.py:48 +#: dashboards/syspanel/networks/subnets/views.py:47 +#, fuzzy +msgid "Unable to retrieve network." +msgstr "Impossible de récupérer les utilisateurs." + +#: dashboards/nova/networks/subnets/views.py:84 +#: dashboards/syspanel/networks/subnets/views.py:80 +#, fuzzy +msgid "Unable to retrieve subnet details" +msgstr "Impossible de récupérer le détail de l'instance." + +#: dashboards/nova/networks/templates/networks/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/_create.html:18 +#, fuzzy +msgid "Select a name for your network." +msgstr "Sélectionnez une instance à attacher." + +#: dashboards/nova/networks/templates/networks/_detail_overview.html:3 +#, fuzzy +msgid "Network Overview" +msgstr "Vue d'ensemble de l'image" + +#: dashboards/nova/networks/templates/networks/_update.html:17 +#: dashboards/syspanel/networks/templates/networks/_update.html:17 +#, fuzzy +msgid "You may update the editable properties of your network here." +msgstr "Mise à jour du nom de votre instance" + +#: dashboards/nova/networks/templates/networks/detail.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/index.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/index.html:6 +#, fuzzy +msgid "Network Detail" +msgstr "ID de type d'instance" + +#: dashboards/nova/networks/templates/networks/detail.html:6 +#, fuzzy +msgid "Network Detail: " +msgstr "Détail d'une image" + +#: dashboards/nova/networks/templates/networks/update.html:3 +#: dashboards/nova/networks/templates/networks/update.html:6 +#: dashboards/syspanel/networks/templates/networks/update.html:3 +#: dashboards/syspanel/networks/templates/networks/update.html:6 +#, fuzzy +msgid "Update Network" +msgstr "Mettre à jour l'utilisateur" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:3 +#, fuzzy +msgid "Port Overview" +msgstr "Vue d'ensemble" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:6 +#: dashboards/syspanel/networks/ports/tables.py:34 +#, fuzzy +msgid "Port" +msgstr "Jusqu'au port" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:17 +msgid "Fixed IP" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:21 +#, fuzzy +msgid "IP address:" +msgstr "Adresse IP" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:22 +msgid "Subnet ID" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:28 +#, fuzzy +msgid "Mac Address" +msgstr "Adresse IP" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:34 +#: dashboards/syspanel/networks/ports/forms.py:41 +#: dashboards/syspanel/networks/ports/forms.py:73 +#, fuzzy +msgid "Device ID" +msgstr "Nom de périphérique" + +#: dashboards/nova/networks/templates/networks/ports/detail.html:3 +#: dashboards/nova/networks/templates/networks/ports/detail.html:6 +#, fuzzy +msgid "Port Detail" +msgstr "ID de type d'instance" + +#: dashboards/nova/networks/templates/networks/subnets/_create.html:18 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:18 +msgid "" +"You can create a subnet for the network. Any network address can be " +"specified unless the network address does not overlap other subnets in the " +"network." +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:3 +#, fuzzy +msgid "Subnet Overview" +msgstr "Vue d'ensemble du volume" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:17 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:16 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:16 +msgid "IP version" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:21 +msgid "IP allocation pool" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:24 +msgid "Start" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:25 +msgid " - End" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_update.html:26 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:26 +#, fuzzy +msgid "You may update the editable properties of your subnet here." +msgstr "Mise à jour du nom de votre instance" + +#: dashboards/nova/networks/templates/networks/subnets/detail.html:3 +#: dashboards/nova/networks/templates/networks/subnets/detail.html:6 +#, fuzzy +msgid "Subnet Detail" +msgstr "Détail du volume" + +#: dashboards/nova/networks/templates/networks/subnets/update.html:3 +#: dashboards/nova/networks/templates/networks/subnets/update.html:6 +#: dashboards/syspanel/networks/templates/networks/subnets/update.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/update.html:6 +#, fuzzy +msgid "Update Subnet" +msgstr "Mettre à jour les quotas" + #: dashboards/nova/templates/nova/_warning.html:6 msgid "You currently have the power to damage your OpenStack cloud..." msgstr "" @@ -1843,56 +2433,95 @@ msgstr "" msgid "Learn More" msgstr "" -#: dashboards/nova/volumes/forms.py:40 +#: dashboards/nova/volumes/forms.py:26 +#, fuzzy +msgid "Volume Name" +msgstr "Volume" + +#: dashboards/nova/volumes/forms.py:29 +#, fuzzy +msgid "Size (GB)" +msgstr "Taille" + +#: dashboards/nova/volumes/forms.py:30 +msgid "Use snapshot as a source" +msgstr "" + +#: dashboards/nova/volumes/forms.py:49 +#, python-format +msgid "Volume size must be equal to or greater than the snapshot size (%sGB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:54 +#, fuzzy +msgid "Unable to load the specified snapshot." +msgstr "Impossible de créer l'instantané." + +#: dashboards/nova/volumes/forms.py:59 +#, fuzzy +msgid "Choose a snapshot" +msgstr "Création d'un instantané" + +#: dashboards/nova/volumes/forms.py:83 +#, python-format +msgid "The volume size cannot be less than the snapshot size (%sGB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:92 #, python-format msgid "" "A volume of %(req)iGB cannot be created as you only have %(avail)iGB of your " "quota available." msgstr "" -#: dashboards/nova/volumes/forms.py:47 +#: dashboards/nova/volumes/forms.py:99 #, fuzzy msgid "You are already using all of your available volumes." msgstr "Vous n'êtes pas autorisé pour tous les projets disponibles." -#: dashboards/nova/volumes/forms.py:60 +#: dashboards/nova/volumes/forms.py:115 #, fuzzy msgid "Unable to create volume." msgstr "Impossible de créer un utilisateur." -#: dashboards/nova/volumes/forms.py:67 +#: dashboards/nova/volumes/forms.py:123 +#, fuzzy +msgid "Attach to Instance" +msgstr "Attacher à une instance" + +#: dashboards/nova/volumes/forms.py:124 msgid "Select an instance to attach to." msgstr "Sélectionnez une instance à attacher." -#: dashboards/nova/volumes/forms.py:100 +#: dashboards/nova/volumes/forms.py:168 msgid "Unknown instance (None)" msgstr "" -#: dashboards/nova/volumes/forms.py:111 +#: dashboards/nova/volumes/forms.py:179 #, fuzzy, python-format msgid "Attaching volume %(vol)s to instance %(inst)s on %(dev)s." msgstr "Attache le volume %(vol)s à l'instance %(inst)s à partir de %(dev)s" -#: dashboards/nova/volumes/forms.py:118 +#: dashboards/nova/volumes/forms.py:188 #, fuzzy msgid "Unable to attach volume." msgstr "Echec de parcours des volumes : %s" -#: dashboards/nova/volumes/forms.py:142 +#: dashboards/nova/volumes/forms.py:212 #, python-format msgid "Creating volume snapshot \"%s\"" msgstr "Création de l'instantané de volume \"%s\"" -#: dashboards/nova/volumes/forms.py:146 +#: dashboards/nova/volumes/forms.py:218 #, fuzzy msgid "Unable to create volume snapshot." msgstr "Impossible de récupérer les instantanés de volume." #: dashboards/nova/volumes/panel.py:24 dashboards/nova/volumes/tables.py:37 -#: dashboards/nova/volumes/tables.py:160 dashboards/nova/volumes/tables.py:172 +#: dashboards/nova/volumes/tables.py:162 dashboards/nova/volumes/tables.py:174 #: dashboards/nova/volumes/templates/volumes/index.html:3 #: dashboards/nova/volumes/templates/volumes/index.html:6 -#: dashboards/syspanel/projects/forms.py:116 +#: dashboards/syspanel/projects/workflows.py:39 #: dashboards/syspanel/volumes/panel.py:9 #: dashboards/syspanel/volumes/tables.py:15 #: dashboards/syspanel/volumes/templates/volumes/index.html:3 @@ -1900,12 +2529,6 @@ msgstr "Impossible de récupérer les instantanés de volume." msgid "Volumes" msgstr "Volumes" -#: dashboards/nova/volumes/tables.py:50 -#: dashboards/nova/volumes/templates/volumes/_create.html:8 -#: dashboards/nova/volumes/templates/volumes/_create.html:55 -msgid "Create Volume" -msgstr "Créer un volume" - #: dashboards/nova/volumes/tables.py:57 msgid "Edit Attachments" msgstr "Modifier les attachements" @@ -1915,7 +2538,7 @@ msgstr "Modifier les attachements" msgid "%sGB" msgstr "" -#: dashboards/nova/volumes/tables.py:97 +#: dashboards/nova/volumes/tables.py:97 dashboards/nova/volumes/views.py:140 #, fuzzy msgid "Unable to retrieve attachment information." msgstr "Impossible de récupérer les informations d'utilisation." @@ -1925,16 +2548,16 @@ msgstr "Impossible de récupérer les informations d'utilisation." msgid "Attached to %(instance)s on %(dev)s" msgstr "Attache le volume %(vol)s à l'instance %(inst)s à partir de %(dev)s" -#: dashboards/nova/volumes/tables.py:169 +#: dashboards/nova/volumes/tables.py:171 msgid "Detach" msgstr "Détacher" -#: dashboards/nova/volumes/tables.py:170 +#: dashboards/nova/volumes/tables.py:172 #, fuzzy msgid "Detaching" msgstr "Détacher" -#: dashboards/nova/volumes/tables.py:205 +#: dashboards/nova/volumes/tables.py:207 #, python-format msgid "%(dev)s on instance %(instance_name)s" msgstr "" @@ -1943,17 +2566,17 @@ msgstr "" msgid "Unable to retrieve volume details." msgstr "Impossible de récupérer le détail du volume." -#: dashboards/nova/volumes/views.py:50 +#: dashboards/nova/volumes/views.py:52 #, fuzzy msgid "Unable to retrieve volume list." msgstr "Impossible de récupérer la liste des utilisateurs." -#: dashboards/nova/volumes/views.py:56 +#: dashboards/nova/volumes/views.py:58 #, fuzzy msgid "Unable to retrieve volume/instance attachment information" msgstr "Impossible de récupérer les informations des tenants d'instance." -#: dashboards/nova/volumes/views.py:114 dashboards/nova/volumes/views.py:124 +#: dashboards/nova/volumes/views.py:121 dashboards/nova/volumes/views.py:131 msgid "Unable to retrieve volume information." msgstr "Impossible de récupérer les informations du volume." @@ -1962,11 +2585,11 @@ msgstr "Impossible de récupérer les informations du volume." msgid "Manage Volume Attachments" msgstr "Gérer les attachements des volumes" -#: dashboards/nova/volumes/templates/volumes/_attach.html:12 +#: dashboards/nova/volumes/templates/volumes/_attach.html:13 msgid "Attach To Instance" msgstr "Attacher à une instance" -#: dashboards/nova/volumes/templates/volumes/_attach.html:19 +#: dashboards/nova/volumes/templates/volumes/_attach.html:22 msgid "Attach Volume" msgstr "Attacher un volume" @@ -2027,7 +2650,7 @@ msgstr "Détails du volume" msgid "Volume Detail" msgstr "Détail du volume" -#: dashboards/settings/dashboard.py:24 +#: dashboards/settings/dashboard.py:24 templates/_header.html:4 msgid "Settings" msgstr "Réglages" @@ -2035,15 +2658,15 @@ msgstr "Réglages" msgid "Select a Project" msgstr "Sélectionnez un projet" -#: dashboards/settings/ec2/forms.py:51 +#: dashboards/settings/ec2/forms.py:45 msgid "Unable to retrieve tenant list." msgstr "Impossible de récupérer la liste des tenants." -#: dashboards/settings/ec2/forms.py:93 +#: dashboards/settings/ec2/forms.py:87 msgid "Unable to fetch EC2 credentials." msgstr "Impossible de récupérer les informations d'identification d'EC2." -#: dashboards/settings/ec2/forms.py:106 +#: dashboards/settings/ec2/forms.py:100 #, python-format msgid "Error writing zipfile: %(exc)s" msgstr "Erreur d'écriture du fichier zip : %(exc)s" @@ -2069,7 +2692,7 @@ msgstr "" "télécharger un fichier zip qui contient un fichier RC avec vos informations " "d'accès/clés secrètes, ainsi que votre clé privée et le certificat X509." -#: dashboards/settings/project/forms.py:76 +#: dashboards/settings/project/forms.py:70 #, python-format msgid "Error Downloading RC File: %s" msgstr "Erreur de téléchargement du fichier RC : %s" @@ -2132,7 +2755,7 @@ msgstr "" "de bord." #: dashboards/settings/user/templates/user/_settings.html:23 -#: workflows/base.py:510 +#: dashboards/syspanel/projects/workflows.py:243 workflows/base.py:538 msgid "Save" msgstr "" @@ -2160,14 +2783,19 @@ msgstr "Disque racine GB" msgid "Ephemeral Disk GB" msgstr "Disque éphémère GB" -#: dashboards/syspanel/flavors/forms.py:51 +#: dashboards/syspanel/flavors/forms.py:52 #, python-format msgid "%s was successfully added to flavors." msgstr "%s a été ajouté avec succès aux types d'instance." +#: dashboards/syspanel/flavors/forms.py:56 +#, fuzzy +msgid "Unable to create flavor" +msgstr "Impossible de créer un utilisateur." + #: dashboards/syspanel/flavors/panel.py:28 #: dashboards/syspanel/flavors/tables.py:14 -#: dashboards/syspanel/flavors/tables.py:38 +#: dashboards/syspanel/flavors/tables.py:44 #: dashboards/syspanel/flavors/templates/flavors/index.html:8 msgid "Flavors" msgstr "Types d'instance" @@ -2179,33 +2807,34 @@ msgstr "Types d'instance" msgid "Create Flavor" msgstr "Créer un type d'instance" -#: dashboards/syspanel/flavors/tables.py:29 +#: dashboards/syspanel/flavors/tables.py:28 +#, python-format +msgid "%sMB" +msgstr "" + +#: dashboards/syspanel/flavors/tables.py:33 msgid "Flavor Name" msgstr "Nom de type d'instance" -#: dashboards/syspanel/flavors/tables.py:31 +#: dashboards/syspanel/flavors/tables.py:36 msgid "Memory" msgstr "Mémoire" #: dashboards/syspanel/flavors/views.py:48 -msgid "Unauthorized." -msgstr "Non autorisé." - -#: dashboards/syspanel/flavors/views.py:53 -#, python-format -msgid "Unable to get flavor list: %s" -msgstr "Impossible de récupérer la liste des types d'instance : %s" +#, fuzzy +msgid "Unable to retrieve flavor list." +msgstr "Impossible de récupérer la liste des utilisateurs." #: dashboards/syspanel/flavors/templates/flavors/_create.html:18 msgid "From here you can define the sizing of a new flavor." msgstr "" "D'ici vous pouvez définir la configuration d'un nouveau type d'instance." -#: dashboards/syspanel/images/views.py:52 +#: dashboards/syspanel/images/views.py:53 msgid "Unable to retrieve image list." msgstr "Impossible de récupérer la liste des images." -#: dashboards/syspanel/instances/tables.py:62 usage/tables.py:29 +#: dashboards/syspanel/instances/tables.py:62 usage/tables.py:30 #, fuzzy msgid "Project Name" msgstr "Utilisation du projet" @@ -2216,6 +2845,7 @@ msgid "Host" msgstr "Hôte" #: dashboards/syspanel/instances/views.py:72 +#: dashboards/syspanel/networks/views.py:48 msgid "Unable to retrieve instance tenant information." msgstr "Impossible de récupérer les informations des tenants d'instance." @@ -2223,6 +2853,83 @@ msgstr "Impossible de récupérer les informations des tenants d'instance." msgid "All Instances" msgstr "Toutes les instances" +#: dashboards/syspanel/networks/forms.py:45 +#: dashboards/syspanel/users/forms.py:41 +msgid "Select a project" +msgstr "Sélectionnez un projet" + +#: dashboards/syspanel/networks/forms.py:56 +#, fuzzy, python-format +msgid "Network %s was successfully created." +msgstr "%s a été créé avec succès." + +#: dashboards/syspanel/networks/forms.py:62 +#, fuzzy, python-format +msgid "Failed to create network %s" +msgstr "Impossible de récupérer les images." + +#: dashboards/syspanel/networks/ports/forms.py:53 +#, fuzzy, python-format +msgid "Port %s was successfully created." +msgstr "%s a été créé avec succès." + +#: dashboards/syspanel/networks/ports/forms.py:58 +#, fuzzy, python-format +msgid "Failed to create a port for network %s" +msgstr "Impossible de récupérer le projet." + +#: dashboards/syspanel/networks/ports/forms.py:83 +#, fuzzy, python-format +msgid "Port %s was successfully updated." +msgstr "%s a été mis à jour avec succès." + +#: dashboards/syspanel/networks/ports/forms.py:88 +#, fuzzy, python-format +msgid "Failed to update port %s" +msgstr "Impossible de mettre à jour les quotas." + +#: dashboards/syspanel/networks/ports/tables.py:51 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/ports/create.html:3 +#: dashboards/syspanel/networks/templates/networks/ports/create.html:6 +#, fuzzy +msgid "Create Port" +msgstr "Créer un projet" + +#: dashboards/syspanel/networks/ports/tables.py:62 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:7 +#, fuzzy +msgid "Edit Port" +msgstr "Modifier le projet" + +#: dashboards/syspanel/networks/ports/views.py:81 +#, fuzzy +msgid "Unable to retrieve port details" +msgstr "Impossible de récupérer le détail du volume." + +#: dashboards/syspanel/networks/subnets/forms.py:42 +#, fuzzy, python-format +msgid "Failed to retrieve network %s for a subnet" +msgstr "Impossible de récupérer les informations sur l'instance \"%s\"." + +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:18 +msgid "" +"You can create a port for the network. If you specify device ID to be " +"attached, the device specified will be attached to the port created." +msgstr "" + +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:22 +#, fuzzy +msgid "You may update the editable properties of your port here." +msgstr "Mise à jour du nom de votre instance" + +#: dashboards/syspanel/networks/templates/networks/ports/update.html:3 +#: dashboards/syspanel/networks/templates/networks/ports/update.html:6 +#, fuzzy +msgid "Update Port" +msgstr "Mettre à jour le projet" + #: dashboards/syspanel/overview/templates/overview/usage.html:3 msgid "Usage Overview" msgstr "Vue d'ensemble de l'utilisation" @@ -2231,95 +2938,14 @@ msgstr "Vue d'ensemble de l'utilisation" msgid "Monitoring" msgstr "Monitoring" -#: dashboards/syspanel/projects/forms.py:38 -#: dashboards/syspanel/users/forms.py:75 -msgid "Role" -msgstr "Rôle" - -#: dashboards/syspanel/projects/forms.py:52 -#, fuzzy -msgid "Successfully added user to project." -msgstr "Utilisateur ajouté avec succès au tenant." - -#: dashboards/syspanel/projects/forms.py:54 -#, fuzzy -msgid "Unable to add user to project." -msgstr "Impossible d'ajouter un utilisateur au projet principal." - -#: dashboards/syspanel/projects/forms.py:64 -#: dashboards/syspanel/projects/forms.py:89 -#: dashboards/syspanel/projects/tables.py:78 -#: dashboards/syspanel/services/tables.py:42 -#: dashboards/syspanel/users/tables.py:38 -#: dashboards/syspanel/users/tables.py:112 -msgid "Enabled" -msgstr "Activé" - -#: dashboards/syspanel/projects/forms.py:75 -#, python-format -msgid "%s was successfully created." -msgstr "%s a été créé avec succès." - -#: dashboards/syspanel/projects/forms.py:78 -#, fuzzy -msgid "Unable to create project." -msgstr "Impossible de récupérer le projet." - -#: dashboards/syspanel/projects/forms.py:100 -#, python-format -msgid "%s was successfully updated." -msgstr "%s a été mis à jour avec succès." - -#: dashboards/syspanel/projects/forms.py:103 -#, fuzzy -msgid "Unable to update project." -msgstr "Impossible de mettre à jour le tenant." - -#: dashboards/syspanel/projects/forms.py:108 -msgid "ID (name)" -msgstr "ID (nom)" - -#: dashboards/syspanel/projects/forms.py:110 -msgid "Metadata Items" -msgstr "Eléments des métadonnées" - -#: dashboards/syspanel/projects/forms.py:111 -msgid "Injected Files" -msgstr "Fichiers injectés" - -#: dashboards/syspanel/projects/forms.py:112 -msgid "Injected File Content Bytes" -msgstr "Octets de données des fichiers injectés" - -#: dashboards/syspanel/projects/forms.py:117 -msgid "Gigabytes" -msgstr "Gigaoctets" - -#: dashboards/syspanel/projects/forms.py:118 -msgid "RAM (in MB)" -msgstr "Mémoire (en Mo)" - -#: dashboards/syspanel/projects/forms.py:136 -#, python-format -msgid "Quotas for %s were successfully updated." -msgstr "Les quotas pour %s ont été mis à jour avec succès." - -#: dashboards/syspanel/projects/forms.py:139 -msgid "Unable to update quotas." -msgstr "Impossible de mettre à jour les quotas." - #: dashboards/syspanel/projects/panel.py:28 -#: dashboards/syspanel/projects/tables.py:53 -#: dashboards/syspanel/projects/tables.py:82 +#: dashboards/syspanel/projects/tables.py:66 +#: dashboards/syspanel/projects/tables.py:95 #: dashboards/syspanel/projects/templates/projects/index.html:8 msgid "Projects" msgstr "Projets" -#: dashboards/syspanel/projects/tables.py:18 -msgid "Modify Quotas" -msgstr "Modifier les quotas" - -#: dashboards/syspanel/projects/tables.py:25 +#: dashboards/syspanel/projects/tables.py:19 msgid "Modify Users" msgstr "Modifier les utilisateurs" @@ -2328,67 +2954,205 @@ msgid "View Usage" msgstr "Utilisation de la vue" #: dashboards/syspanel/projects/tables.py:39 +#: dashboards/syspanel/projects/templates/projects/_create.html:8 +#: dashboards/syspanel/projects/templates/projects/_create.html:23 +#: dashboards/syspanel/projects/templates/projects/create.html:6 +msgid "Create Project" +msgstr "Créer un projet" + +#: dashboards/syspanel/projects/tables.py:46 +#: dashboards/syspanel/projects/workflows.py:242 +#: dashboards/syspanel/projects/templates/projects/update.html:3 +#: dashboards/syspanel/projects/templates/projects/update.html:6 msgid "Edit Project" msgstr "Modifier le projet" -#: dashboards/syspanel/projects/tables.py:46 -msgid "Create New Project" -msgstr "Créer un nouveau projet" +#: dashboards/syspanel/projects/tables.py:91 +#: dashboards/syspanel/projects/workflows.py:71 +#: dashboards/syspanel/projects/workflows.py:134 +#: dashboards/syspanel/services/tables.py:42 +#: dashboards/syspanel/users/tables.py:39 +#: dashboards/syspanel/users/tables.py:114 +msgid "Enabled" +msgstr "Activé" -#: dashboards/syspanel/projects/tables.py:90 +#: dashboards/syspanel/projects/tables.py:104 msgid "Remove" msgstr "Supprimer" -#: dashboards/syspanel/projects/tables.py:91 +#: dashboards/syspanel/projects/tables.py:105 msgid "Removed" msgstr "Supprimé" -#: dashboards/syspanel/projects/tables.py:93 +#: dashboards/syspanel/projects/tables.py:107 #: dashboards/syspanel/users/panel.py:28 -#: dashboards/syspanel/users/tables.py:40 -#: dashboards/syspanel/users/tables.py:74 -#: dashboards/syspanel/users/tables.py:119 +#: dashboards/syspanel/users/tables.py:41 +#: dashboards/syspanel/users/tables.py:75 +#: dashboards/syspanel/users/tables.py:121 #: dashboards/syspanel/users/templates/users/index.html:8 msgid "Users" msgstr "Utilisateurs" -#: dashboards/syspanel/projects/tables.py:111 +#: dashboards/syspanel/projects/tables.py:125 #, fuzzy msgid "Unable to retrieve role information." msgstr "Impossible de récupérer les informations du volume." -#: dashboards/syspanel/projects/tables.py:116 +#: dashboards/syspanel/projects/tables.py:130 #, fuzzy msgid "Roles" msgstr "Rôle" -#: dashboards/syspanel/projects/tables.py:120 +#: dashboards/syspanel/projects/tables.py:134 msgid "Users For Project" msgstr "Utilisateurs du projet" -#: dashboards/syspanel/projects/tables.py:128 +#: dashboards/syspanel/projects/tables.py:142 msgid "Add To Project" msgstr "Ajouter au projet" -#: dashboards/syspanel/projects/tables.py:140 +#: dashboards/syspanel/projects/tables.py:154 msgid "Add New Users" msgstr "Ajouter des nouveaux utilisateurs" -#: dashboards/syspanel/projects/views.py:49 +#: dashboards/syspanel/projects/views.py:67 +#, fuzzy +msgid "Unable to retrieve project information." +msgstr "Impossible de récupérer les informations du volume." + +#: dashboards/syspanel/projects/views.py:87 msgid "Unable to retrieve project list." msgstr "Impossible de récupérer la liste des projets." -#: dashboards/syspanel/projects/views.py:71 -msgid "Unable to retrieve project." -msgstr "Impossible de récupérer le projet." - -#: dashboards/syspanel/projects/views.py:100 +#: dashboards/syspanel/projects/views.py:110 msgid "Unable to retrieve users." msgstr "Impossible de récupérer les utilisateurs." -#: dashboards/syspanel/projects/views.py:143 -msgid "Unable to retrieve roles." -msgstr "Impossible de récupérer les rôles." +#: dashboards/syspanel/projects/views.py:154 +#, fuzzy +msgid "Unable to retrieve default quota values." +msgstr "Echec de récupération de la liste des volumes" + +#: dashboards/syspanel/projects/views.py:182 +#, fuzzy +msgid "Unable to retrieve project details." +msgstr "Impossible de récupérer la liste des projets." + +#: dashboards/syspanel/projects/workflows.py:32 +msgid "Injected File Content Bytes" +msgstr "Octets de données des fichiers injectés" + +#: dashboards/syspanel/projects/workflows.py:33 +msgid "Metadata Items" +msgstr "Eléments des métadonnées" + +#: dashboards/syspanel/projects/workflows.py:36 +msgid "Injected Files" +msgstr "Fichiers injectés" + +#: dashboards/syspanel/projects/workflows.py:40 +msgid "Gigabytes" +msgstr "Gigaoctets" + +#: dashboards/syspanel/projects/workflows.py:41 +#, fuzzy +msgid "RAM (MB)" +msgstr "Mémoire (en Mo)" + +#: dashboards/syspanel/projects/workflows.py:45 +#, fuzzy +msgid "Quota" +msgstr "Quotas" + +#: dashboards/syspanel/projects/workflows.py:47 +#, fuzzy +msgid "From here you can set quotas (max limits) for the project." +msgstr "" +"D'ici vous pouvez modifier les quotas (limite maximum) pour le projet " +"%(tenant.name)s." + +#: dashboards/syspanel/projects/workflows.py:76 +#: dashboards/syspanel/projects/workflows.py:137 +#, fuzzy +msgid "Project Info" +msgstr "ID projet" + +#: dashboards/syspanel/projects/workflows.py:77 +#: dashboards/syspanel/projects/templates/projects/_create.html:18 +msgid "From here you can create a new project to organize users." +msgstr "" +"D'ici vous pouvez créer un nouveau projet pour organiser les utilisateurs." + +#: dashboards/syspanel/projects/workflows.py:91 +#, fuzzy +msgid "Add Project" +msgstr "Ajouter au projet" + +#: dashboards/syspanel/projects/workflows.py:92 +msgid "Finish" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:93 +#, fuzzy, python-format +msgid "Created new project \"%s\"." +msgstr "Créer un nouveau projet" + +#: dashboards/syspanel/projects/workflows.py:94 +#, fuzzy, python-format +msgid "Unable to create project \"%s\"." +msgstr "Impossible de récupérer le projet." + +#: dashboards/syspanel/projects/workflows.py:129 +#, fuzzy +msgid "Unable to set project quotas." +msgstr "Impossible de récupérer le projet." + +#: dashboards/syspanel/projects/workflows.py:139 +#, fuzzy +msgid "From here you can edit the project details." +msgstr "D'ici vous pouvez éditer un projet." + +#: dashboards/syspanel/projects/workflows.py:161 +#, fuzzy +msgid "Unable to retrieve user list. Please try again later." +msgstr "Impossible de récupérer la liste des utilisateurs." + +#: dashboards/syspanel/projects/workflows.py:167 +#, fuzzy +msgid "Create New User" +msgstr "Créer un utilisateur" + +#: dashboards/syspanel/projects/workflows.py:217 +#: dashboards/syspanel/projects/templates/projects/_update_members.html:16 +#, fuzzy +msgid "Project Members" +msgstr "Utilisation du projet" + +#: dashboards/syspanel/projects/workflows.py:231 +#: dashboards/syspanel/users/views.py:46 +msgid "Unable to retrieve user list." +msgstr "Impossible de récupérer la liste des utilisateurs." + +#: dashboards/syspanel/projects/workflows.py:244 +#, python-format +msgid "Modified project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:245 +#, fuzzy, python-format +msgid "Unable to modify project \"%s\"." +msgstr "Impossible de copier l'objet." + +#: dashboards/syspanel/projects/workflows.py:315 +#, python-format +msgid "Failed to modify %s project members and update project quotas." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:336 +msgid "" +"Modified project information and members, but unable to modify project " +"quotas." +msgstr "" #: dashboards/syspanel/projects/templates/projects/_add_user.html:8 #: dashboards/syspanel/projects/templates/projects/add_user.html:3 @@ -2404,16 +3168,24 @@ msgstr "Sélectionnez le rôle d'utilisateur pour le projet." msgid "Add" msgstr "Ajouter" -#: dashboards/syspanel/projects/templates/projects/_create.html:8 -#: dashboards/syspanel/projects/templates/projects/_create.html:23 -#: dashboards/syspanel/projects/templates/projects/create.html:6 -msgid "Create Project" -msgstr "Créer un projet" - -#: dashboards/syspanel/projects/templates/projects/_create.html:18 -msgid "From here you can create a new project to organize users." +#: dashboards/syspanel/projects/templates/projects/_create_user.html:7 +#, python-format +msgid "Create User for project '%(tenant_name)s'." msgstr "" -"D'ici vous pouvez créer un nouveau projet pour organiser les utilisateurs." + +#: dashboards/syspanel/projects/templates/projects/_create_user.html:18 +#, fuzzy +msgid "From here you can create a new user to add to this project." +msgstr "" +"D'ici vous pouvez créer un nouvel utilisateur et l'assigner à un projet." + +#: dashboards/syspanel/projects/templates/projects/_create_user.html:23 +#: dashboards/syspanel/users/tables.py:19 +#: dashboards/syspanel/users/templates/users/_create.html:7 +#: dashboards/syspanel/users/templates/users/_create.html:22 +#: dashboards/syspanel/users/templates/users/create.html:7 +msgid "Create User" +msgstr "Créer un utilisateur" #: dashboards/syspanel/projects/templates/projects/_quotas.html:7 #: dashboards/syspanel/projects/templates/projects/_quotas.html:22 @@ -2431,7 +3203,6 @@ msgstr "" #: dashboards/syspanel/projects/templates/projects/_update.html:8 #: dashboards/syspanel/projects/templates/projects/_update.html:23 #: dashboards/syspanel/projects/templates/projects/quotas.html:6 -#: dashboards/syspanel/projects/templates/projects/update.html:6 msgid "Update Project" msgstr "Mettre à jour le projet" @@ -2439,6 +3210,28 @@ msgstr "Mettre à jour le projet" msgid "From here you can edit a project." msgstr "D'ici vous pouvez éditer un projet." +#: dashboards/syspanel/projects/templates/projects/_update_members.html:7 +msgid "" +"From here you can add and remove members to this project from the list of " +"all available users." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/_update_members.html:10 +#, fuzzy +msgid "All Users" +msgstr "Utilisateurs" + +#: dashboards/syspanel/projects/templates/projects/_update_members.html:25 +#: dashboards/syspanel/projects/templates/projects/_update_members.html:32 +msgid "No users found." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/create_user.html:3 +#: dashboards/syspanel/projects/templates/projects/create_user.html:6 +#, fuzzy +msgid "Add New User" +msgstr "Ajouter des nouveaux utilisateurs" + #: dashboards/syspanel/projects/templates/projects/usage.html:3 msgid "Project Usage Overview" msgstr "Vue d'ensemble de l'utilisation du projet" @@ -2464,7 +3257,7 @@ msgstr "Nom de quota" msgid "Limit" msgstr "Limite" -#: dashboards/syspanel/quotas/views.py:44 +#: dashboards/syspanel/quotas/views.py:45 msgid "Unable to get quota info." msgstr "Impossible de récupérer les informations de quota." @@ -2486,119 +3279,114 @@ msgstr "Id" msgid "Service" msgstr "Service" -#: dashboards/syspanel/users/forms.py:42 -msgid "Select a project" -msgstr "Sélectionnez un projet" - -#: dashboards/syspanel/users/forms.py:58 +#: dashboards/syspanel/users/forms.py:53 msgid "Passwords do not match." msgstr "Les mots de passe ne correspondent pas." -#: dashboards/syspanel/users/forms.py:63 +#: dashboards/syspanel/users/forms.py:61 #: dashboards/syspanel/users/forms.py:114 -#: dashboards/syspanel/users/tables.py:106 +#: dashboards/syspanel/users/tables.py:107 msgid "User Name" msgstr "Nom d'utilisateur" -#: dashboards/syspanel/users/forms.py:64 +#: dashboards/syspanel/users/forms.py:62 #: dashboards/syspanel/users/forms.py:115 -#: dashboards/syspanel/users/tables.py:107 +#: dashboards/syspanel/users/tables.py:108 msgid "Email" msgstr "Email" -#: dashboards/syspanel/users/forms.py:66 +#: dashboards/syspanel/users/forms.py:64 #: dashboards/syspanel/users/forms.py:116 msgid "Password" msgstr "Mot de passe" -#: dashboards/syspanel/users/forms.py:71 +#: dashboards/syspanel/users/forms.py:69 #: dashboards/syspanel/users/forms.py:123 msgid "Confirm Password" msgstr "Confirmez le mot de passe" -#: dashboards/syspanel/users/forms.py:74 +#: dashboards/syspanel/users/forms.py:72 #: dashboards/syspanel/users/forms.py:126 msgid "Primary Project" msgstr "Projet principal." -#: dashboards/syspanel/users/forms.py:96 +#: dashboards/syspanel/users/forms.py:74 +msgid "Role" +msgstr "Rôle" + +#: dashboards/syspanel/users/forms.py:95 #, python-format msgid "User \"%s\" was successfully created." msgstr "L'utilisateur \"%s\" a été créé avec succès." #: dashboards/syspanel/users/forms.py:105 -msgid "Unable to add user to primary project." +#, fuzzy +msgid "Unable to add userto primary project." msgstr "Impossible d'ajouter un utilisateur au projet principal." -#: dashboards/syspanel/users/forms.py:108 +#: dashboards/syspanel/users/forms.py:109 msgid "Unable to create user." msgstr "Impossible de créer un utilisateur." -#: dashboards/syspanel/users/forms.py:151 +#: dashboards/syspanel/users/forms.py:150 msgid "name" msgstr "nom" -#: dashboards/syspanel/users/forms.py:151 +#: dashboards/syspanel/users/forms.py:150 msgid "email" msgstr "email" -#: dashboards/syspanel/users/forms.py:160 +#: dashboards/syspanel/users/forms.py:159 msgid "primary project" msgstr "projet principal" #: dashboards/syspanel/users/forms.py:172 +#, python-format +msgid "The user %s has no role defined for" +msgstr "" + +#: dashboards/syspanel/users/forms.py:180 msgid "password" msgstr "mot de passe" -#: dashboards/syspanel/users/forms.py:181 +#: dashboards/syspanel/users/forms.py:189 #, fuzzy msgid "User has been updated successfully." msgstr "Succès de création du conteneur." -#: dashboards/syspanel/users/forms.py:185 +#: dashboards/syspanel/users/forms.py:193 #, fuzzy, python-format msgid "Unable to update %(attributes)s for the user." msgstr "Impossible de mettre à jour %(attributes)s pour \"%(user)s\"." -#: dashboards/syspanel/users/tables.py:18 -#: dashboards/syspanel/users/templates/users/_create.html:7 -#: dashboards/syspanel/users/templates/users/_create.html:22 -#: dashboards/syspanel/users/templates/users/create.html:7 -msgid "Create User" -msgstr "Créer un utilisateur" - -#: dashboards/syspanel/users/tables.py:37 +#: dashboards/syspanel/users/tables.py:38 msgid "Enable" msgstr "Activer" -#: dashboards/syspanel/users/tables.py:37 +#: dashboards/syspanel/users/tables.py:38 msgid "Disable" msgstr "Désactiver" -#: dashboards/syspanel/users/tables.py:38 +#: dashboards/syspanel/users/tables.py:39 #, fuzzy msgid "Disabled" msgstr "Désactiver" -#: dashboards/syspanel/users/tables.py:61 +#: dashboards/syspanel/users/tables.py:62 msgid "You cannot disable the user you are currently logged in as." msgstr "" "Vous ne pouvez pas désactiver l'utilisateur avec lequel vous êtes connecté." -#: dashboards/syspanel/users/tables.py:111 +#: dashboards/syspanel/users/tables.py:113 #, fuzzy msgid "User ID" msgstr "Données de l'utilisateur" -#: dashboards/syspanel/users/views.py:46 -msgid "Unable to retrieve user list." -msgstr "Impossible de récupérer la liste des utilisateurs." - -#: dashboards/syspanel/users/views.py:67 +#: dashboards/syspanel/users/views.py:69 msgid "Unable to update user." msgstr "Impossible de mettre à jour l'utilisateur." -#: dashboards/syspanel/users/views.py:93 +#: dashboards/syspanel/users/views.py:103 #, fuzzy msgid "Unable to retrieve user roles." msgstr "Impossible de récupérer la liste des utilisateurs." @@ -2622,55 +3410,83 @@ msgstr "" "D'ici vous pouvez modifier l'utilisateur en changeant son nom, email, mot de " "passe et projet par défaut." -#: tables/actions.py:299 +#: tables/actions.py:338 msgid "Filter" msgstr "Filtre" -#: tables/actions.py:461 +#: tables/actions.py:502 +msgid "N/A" +msgstr "" + +#: tables/actions.py:526 #, python-format msgid "You do not have permission to %(action)s: %(objs)s" msgstr "Vous n'avez pas les droits pour %(action)s : %(objs)s" -#: tables/actions.py:467 +#: tables/actions.py:532 #, python-format msgid "Unable to %(action)s: %(objs)s" msgstr "Impossible de %(action)s : %(objs)s" -#: tables/actions.py:473 +#: tables/actions.py:538 #, python-format msgid "%(action)s: %(objs)s" msgstr "%(action)s : %(objs)s" -#: tables/actions.py:483 +#: tables/actions.py:548 msgid "Delete" msgstr "Supprimer" -#: tables/actions.py:484 +#: tables/actions.py:549 msgid "Deleted" msgstr "Supprimé" -#: tables/base.py:257 +#: tables/base.py:266 #, python-format msgid "The attribute %(attr)s doesn't exist on %(obj)s." msgstr "L'attribut %(attr)s n'existe pas sur %(obj)s." -#: tables/base.py:743 +#: tables/base.py:819 msgid "Actions" msgstr "Actions" -#: tables/base.py:891 +#: tables/base.py:981 msgid "No items to display." msgstr "Aucun élément à afficher." -#: tables/base.py:908 +#: tables/base.py:998 #, python-format msgid "No match returned for the id \"%s\"." msgstr "Aucun résultat retourné pour l'id \"%s\"." -#: tables/base.py:1015 +#: tables/base.py:1128 msgid "Please select a row before taking that action." msgstr "Merci de sélectionner une ligne avant de faire cette action." +#: templates/_header.html:3 +msgid "Logged in as" +msgstr "" + +#: templates/_header.html:6 +msgid "Help" +msgstr "" + +#: templates/_header.html:8 +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 "" + #: templates/horizon/_messages.html:7 msgid "Info: " msgstr "Information :" @@ -2687,16 +3503,12 @@ msgstr "Succès :" msgid "Error: " msgstr "Erreur :" -#: templates/horizon/client_side/_loading.html:9 -msgid "Loading…" -msgstr "" - -#: templates/horizon/common/_data_table.html:33 +#: templates/horizon/common/_data_table.html:36 #, fuzzy msgid "Summary" msgstr "Synthèse d'utilisation" -#: templates/horizon/common/_data_table.html:42 +#: templates/horizon/common/_data_table.html:45 #, python-format msgid "Displaying %(counter)s item" msgid_plural "Displaying %(counter)s items" @@ -2732,6 +3544,10 @@ msgstr "Heures-VCPU de ce mois" msgid "This Month's GB-Hours" msgstr "Heures-Go de ce mois" +#: templatetags/branding.py:35 +msgid "Horizon" +msgstr "" + #: templatetags/horizon.py:108 msgid "No Limit" msgstr "Pas de limite" @@ -2798,38 +3614,43 @@ msgstr "Administration" msgid "Giant ants are attacking San Francisco!" msgstr "" -#: tests/table_tests.py:104 +#: tests/table_tests.py:106 msgid "Batch" msgstr "Lot" -#: tests/table_tests.py:105 +#: tests/table_tests.py:107 msgid "Batched" msgstr "En lots" -#: tests/table_tests.py:106 tests/table_tests.py:117 +#: tests/table_tests.py:108 tests/table_tests.py:119 msgid "Item" msgstr "Elément" -#: tests/table_tests.py:107 tests/table_tests.py:118 +#: tests/table_tests.py:109 tests/table_tests.py:120 msgid "Items" msgstr "Eléments" -#: tests/table_tests.py:115 +#: tests/table_tests.py:117 msgid "Down" msgstr "Bas" -#: tests/table_tests.py:115 +#: tests/table_tests.py:117 msgid "Up" msgstr "Haut" -#: tests/table_tests.py:116 +#: tests/table_tests.py:118 msgid "Downed" msgstr "Mis en bas" -#: tests/table_tests.py:116 +#: tests/table_tests.py:118 msgid "Upped" msgstr "Mis en haut" +#: tests/table_tests.py:185 +#, fuzzy +msgid "No Actions Table" +msgstr "Actions" + #: tests/tabs_tests.py:36 msgid "Tab One" msgstr "Premier onglet" @@ -2854,7 +3675,7 @@ msgstr "Onglet avec mon tableau" msgid "Recoverable Error Tab" msgstr "Onglet avec erreur récupérable" -#: tests/testsettings.py:111 +#: tests/testsettings.py:118 msgid "Password must be between 8 and 18 characters." msgstr "Le mot de passe doit être entre 8 et 18 caractères." @@ -2923,32 +3744,32 @@ msgstr "" msgid "Download CSV Summary" msgstr "Télécharger CSV" -#: usage/tables.py:24 +#: usage/tables.py:25 msgid "VCPU Hours" msgstr "Heures-VCPU" -#: usage/tables.py:31 +#: usage/tables.py:32 msgid "Disk GB Hours" msgstr "Heures-Go disque" -#: usage/tables.py:39 usage/tables.py:67 +#: usage/tables.py:40 usage/tables.py:68 msgid "Usage Summary" msgstr "Synthèse d'utilisation" -#: usage/tables.py:59 +#: usage/tables.py:60 msgid "Uptime" msgstr "Temps de fonctionnement" -#: utils/fields.py:43 +#: utils/fields.py:46 msgid "Incorrect format for IP address" msgstr "" -#: utils/fields.py:44 +#: utils/fields.py:47 #, fuzzy msgid "Invalid version for IP address" msgstr "Nom d'utilisateur ou mot de passe invalide." -#: utils/fields.py:45 +#: utils/fields.py:48 msgid "Invalid subnet mask" msgstr "" @@ -2956,16 +3777,16 @@ msgstr "" msgid "Password is not accepted" msgstr "Le mot de passe n'est pas accepté" -#: workflows/base.py:69 +#: workflows/base.py:70 msgid "Processing..." msgstr "" -#: workflows/base.py:511 +#: workflows/base.py:539 #, fuzzy, python-format msgid "%s completed successfully." msgstr "Succès de création du conteneur." -#: workflows/base.py:512 +#: workflows/base.py:540 #, python-format msgid "%s did not complete." msgstr "" diff --git a/horizon/locale/fr/LC_MESSAGES/djangojs.po b/horizon/locale/fr/LC_MESSAGES/djangojs.po new file mode 100644 index 000000000..57aa76387 --- /dev/null +++ b/horizon/locale/fr/LC_MESSAGES/djangojs.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 "" diff --git a/horizon/locale/ja/LC_MESSAGES/django.po b/horizon/locale/ja/LC_MESSAGES/django.po index 3839fbea6..7b2fd1f78 100644 --- a/horizon/locale/ja/LC_MESSAGES/django.po +++ b/horizon/locale/ja/LC_MESSAGES/django.po @@ -8,7 +8,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:47+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Takeshi Nakajima \n" "Language-Team: LANGUAGE \n" @@ -32,7 +32,7 @@ msgstr "キー%sを削除できません。" msgid "You are not authorized to access %s" msgstr "" -#: exceptions.py:299 +#: exceptions.py:270 msgid "Unauthorized. Please try logging in again." msgstr "" @@ -41,21 +41,21 @@ msgstr "" msgid "%(type)s (%(backend)s backend)" msgstr "" -#: api/nova.py:185 +#: api/nova.py:186 #, python-format msgid "ALLOW %(from)s:%(to)s from %(group)s" msgstr "" -#: api/nova.py:190 +#: api/nova.py:191 #, python-format msgid "ALLOW %(from)s:%(to)s from %(cidr)s" msgstr "" -#: api/nova.py:502 +#: api/nova.py:514 msgid "Unknown instance" msgstr "" -#: api/swift.py:155 +#: api/swift.py:154 msgid "Unicode is not currently supported for object copy." msgstr "" @@ -63,57 +63,58 @@ msgstr "" msgid "Manage Compute" msgstr "" -#: dashboards/nova/dashboard.py:34 +#: dashboards/nova/dashboard.py:35 #, fuzzy msgid "Object Store" msgstr "ユーザ名" -#: dashboards/nova/dashboard.py:39 dashboards/nova/instances/workflows.py:32 -#: dashboards/syspanel/projects/tables.py:52 tests/workflows_tests.py:39 +#: dashboards/nova/dashboard.py:40 dashboards/nova/instances/workflows.py:37 +#: dashboards/syspanel/networks/forms.py:37 +#: dashboards/syspanel/networks/tables.py:66 +#: dashboards/syspanel/projects/tables.py:65 tests/workflows_tests.py:39 #, fuzzy msgid "Project" msgstr "プロジェクトを削除" #: dashboards/nova/access_and_security/panel.py:25 -#: dashboards/nova/instances/workflows.py:328 +#: dashboards/nova/instances/workflows.py:345 msgid "Access & Security" msgstr "" -#: dashboards/nova/access_and_security/views.py:51 +#: dashboards/nova/access_and_security/views.py:50 #, fuzzy msgid "Unable to retrieve keypair list." msgstr "キー%sを作成できません。" -#: dashboards/nova/access_and_security/views.py:60 -#: dashboards/nova/access_and_security/security_groups/views.py:64 +#: dashboards/nova/access_and_security/views.py:59 +#: dashboards/nova/access_and_security/security_groups/views.py:72 #, fuzzy msgid "Unable to retrieve security groups." msgstr "キー%sを作成できません。" -#: dashboards/nova/access_and_security/views.py:69 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:44 +#: dashboards/nova/access_and_security/views.py:68 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:48 #, fuzzy msgid "Unable to retrieve floating IP addresses." msgstr "%sをリボーク(無効化)できません。" -#: dashboards/nova/access_and_security/views.py:76 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:60 +#: dashboards/nova/access_and_security/views.py:75 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:64 #: dashboards/syspanel/instances/views.py:58 #, fuzzy msgid "Unable to retrieve instance list." msgstr "%sをリボーク(無効化)できません。" -#: dashboards/nova/access_and_security/floating_ips/forms.py:38 +#: dashboards/nova/access_and_security/floating_ips/forms.py:31 msgid "Pool" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/forms.py:53 +#: dashboards/nova/access_and_security/floating_ips/forms.py:42 #, fuzzy, python-format -msgid "" -"Successfully allocated Floating IP \"%(ip)s\" to project \"%(project)s\"" -msgstr "正常にVPNプロジェクト%(proj)sを開始しました。" +msgid "Allocated Floating IP %(ip)s." +msgstr "イメージ%sを更新できません。" -#: dashboards/nova/access_and_security/floating_ips/forms.py:57 +#: dashboards/nova/access_and_security/floating_ips/forms.py:46 #, fuzzy msgid "Unable to allocate Floating IP." msgstr "キー%sを作成できません。" @@ -139,7 +140,7 @@ msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:49 #: dashboards/nova/access_and_security/floating_ips/tables.py:132 -#: dashboards/syspanel/projects/forms.py:119 +#: dashboards/syspanel/projects/workflows.py:42 msgid "Floating IPs" msgstr "" @@ -170,20 +171,20 @@ msgid "%(INSTANCE_NAME)s (%(INSTANCE_ID)s)" msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:115 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:28 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:34 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:31 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:38 #: dashboards/nova/instances/tables.py:270 #: dashboards/syspanel/instances/tables.py:74 msgid "IP Address" msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:118 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:31 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:35 #: dashboards/nova/instances/tables.py:62 #: dashboards/nova/instances/tables.py:79 #: dashboards/nova/instances/tables.py:94 #: dashboards/nova/instances/tables.py:122 -#: dashboards/nova/volumes/tables.py:195 tests/workflows_tests.py:58 +#: dashboards/nova/volumes/tables.py:197 tests/workflows_tests.py:58 #, fuzzy msgid "Instance" msgstr "インスタンス" @@ -192,90 +193,90 @@ msgstr "インスタンス" msgid "Floating IP Pool" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/views.py:60 +#: dashboards/nova/access_and_security/floating_ips/views.py:64 +#, fuzzy +msgid "Unable to retrieve floating IP pools." +msgstr "%sをリボーク(無効化)できません。" + +#: dashboards/nova/access_and_security/floating_ips/views.py:67 msgid "No floating IP pools available." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:35 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:39 msgid "Select the IP address you wish to associate with the selected instance." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:48 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:52 #, fuzzy msgid "Select an IP address" msgstr "プロジェクトを削除" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:50 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:54 #, fuzzy msgid "No IP addresses available" msgstr "現在イメージがありません。" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:77 -#: dashboards/nova/volumes/forms.py:92 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:81 +#: dashboards/nova/volumes/forms.py:160 #, fuzzy msgid "Select an instance" msgstr "言語を選択" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:79 -#: dashboards/nova/volumes/forms.py:94 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:83 +#: dashboards/nova/volumes/forms.py:162 #, fuzzy msgid "No instances available" msgstr "現在イメージがありません。" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:98 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:102 msgid "Manage Floating IP Associations" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:99 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:103 #, fuzzy msgid "Associate" msgstr "インスタンスを更新" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:100 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:104 #, python-format msgid "IP address %s associated." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:101 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:105 #, fuzzy, python-format msgid "Unable to associate IP address %s." msgstr "イメージ%sを更新できません。" -#: dashboards/nova/access_and_security/keypairs/forms.py:40 -#: dashboards/nova/access_and_security/keypairs/forms.py:58 +#: dashboards/nova/access_and_security/keypairs/forms.py:38 +#: dashboards/nova/access_and_security/keypairs/forms.py:49 #: dashboards/nova/access_and_security/keypairs/tables.py:51 #, fuzzy msgid "Keypair Name" msgstr "キーペア" -#: dashboards/nova/access_and_security/keypairs/forms.py:42 +#: dashboards/nova/access_and_security/keypairs/forms.py:40 msgid "" "Keypair names may only contain letters, numbers, underscores and hyphens." msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:53 -#, fuzzy -msgid "Unable to create keypair." -msgstr "キー%sを作成できません。" - -#: dashboards/nova/access_and_security/keypairs/forms.py:60 +#: dashboards/nova/access_and_security/keypairs/forms.py:51 #, fuzzy msgid "Public Key" msgstr "公開する" -#: dashboards/nova/access_and_security/keypairs/forms.py:68 +#: dashboards/nova/access_and_security/keypairs/forms.py:60 #, python-format msgid "Successfully imported public key: %s" msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:74 +#: dashboards/nova/access_and_security/keypairs/forms.py:65 #, fuzzy msgid "Unable to import keypair." msgstr "キー%sを作成できません。" #: dashboards/nova/access_and_security/keypairs/tables.py:29 -#: dashboards/nova/instances/tables.py:272 -#: dashboards/nova/instances/workflows.py:316 +#: dashboards/nova/instances/tables.py:274 +#: dashboards/nova/instances/workflows.py:332 #, fuzzy msgid "Keypair" msgstr "キーペア" @@ -303,31 +304,43 @@ msgstr "キーペアを作成" msgid "Fingerprint" msgstr "" -#: dashboards/nova/access_and_security/keypairs/views.py:64 +#: dashboards/nova/access_and_security/keypairs/views.py:73 #, fuzzy, python-format msgid "Unable to create keypair: %(exc)s" msgstr "キー%sを作成できません。" -#: dashboards/nova/access_and_security/security_groups/forms.py:40 +#: dashboards/nova/access_and_security/security_groups/forms.py:35 #: dashboards/nova/access_and_security/security_groups/tables.py:57 -#: dashboards/nova/images_and_snapshots/images/forms.py:42 -#: dashboards/nova/images_and_snapshots/images/forms.py:120 +#: dashboards/nova/images_and_snapshots/images/forms.py:39 +#: dashboards/nova/images_and_snapshots/images/forms.py:114 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:9 -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:46 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:63 #: dashboards/nova/instances/templates/instances/_detail_overview.html:9 #: dashboards/nova/instances/templates/instances/_launch_details_help.html:9 -#: dashboards/nova/volumes/tables.py:135 dashboards/nova/volumes/tables.py:153 +#: dashboards/nova/networks/forms.py:36 dashboards/nova/networks/tables.py:82 +#: dashboards/nova/networks/ports/tables.py:40 +#: dashboards/nova/networks/subnets/forms.py:42 +#: dashboards/nova/networks/subnets/forms.py:101 +#: dashboards/nova/networks/subnets/tables.py:69 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:7 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:9 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:9 +#: dashboards/nova/volumes/tables.py:135 dashboards/nova/volumes/tables.py:155 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:9 #: dashboards/syspanel/flavors/forms.py:37 -#: dashboards/syspanel/projects/forms.py:60 -#: dashboards/syspanel/projects/forms.py:85 -#: dashboards/syspanel/projects/tables.py:74 +#: dashboards/syspanel/networks/forms.py:35 +#: dashboards/syspanel/networks/ports/forms.py:39 +#: dashboards/syspanel/networks/ports/forms.py:71 +#: dashboards/syspanel/networks/ports/tables.py:73 +#: dashboards/syspanel/networks/subnets/tables.py:69 +#: dashboards/syspanel/projects/tables.py:87 +#: dashboards/syspanel/projects/workflows.py:66 #: dashboards/syspanel/services/tables.py:38 #: dashboards/syspanel/volumes/tables.py:10 msgid "Name" msgstr "名前" -#: dashboards/nova/access_and_security/security_groups/forms.py:42 +#: dashboards/nova/access_and_security/security_groups/forms.py:37 #: dashboards/nova/access_and_security/security_groups/tables.py:58 #: dashboards/nova/access_and_security/templates/access_and_security/keypairs/_create.html:16 #: dashboards/nova/access_and_security/templates/access_and_security/keypairs/_import.html:16 @@ -335,18 +348,23 @@ msgstr "名前" #: dashboards/nova/containers/templates/containers/_copy.html:16 #: dashboards/nova/containers/templates/containers/_create.html:16 #: dashboards/nova/containers/templates/containers/_upload.html:17 -#: dashboards/nova/volumes/forms.py:25 dashboards/nova/volumes/forms.py:125 +#: dashboards/nova/networks/templates/networks/_create.html:16 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:17 +#: dashboards/nova/volumes/forms.py:28 dashboards/nova/volumes/forms.py:195 #: dashboards/nova/volumes/tables.py:138 #: dashboards/nova/volumes/templates/volumes/_create.html:18 #: dashboards/nova/volumes/templates/volumes/_create_snapshot.html:17 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:14 #: dashboards/syspanel/flavors/templates/flavors/_create.html:17 #: dashboards/syspanel/images/templates/images/_update.html:17 -#: dashboards/syspanel/projects/forms.py:63 -#: dashboards/syspanel/projects/forms.py:88 -#: dashboards/syspanel/projects/tables.py:76 +#: dashboards/syspanel/networks/templates/networks/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:17 +#: dashboards/syspanel/projects/tables.py:89 +#: dashboards/syspanel/projects/workflows.py:69 #: dashboards/syspanel/projects/templates/projects/_add_user.html:17 #: dashboards/syspanel/projects/templates/projects/_create.html:17 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:17 #: dashboards/syspanel/projects/templates/projects/_quotas.html:16 #: dashboards/syspanel/projects/templates/projects/_update.html:17 #: dashboards/syspanel/users/templates/users/_create.html:16 @@ -354,21 +372,25 @@ msgstr "名前" msgid "Description" msgstr "説明" -#: dashboards/nova/access_and_security/security_groups/forms.py:50 +#: dashboards/nova/access_and_security/security_groups/forms.py:45 #, fuzzy, python-format msgid "Successfully created security group: %s" msgstr "セキュリティグループ%sを作成できません。" -#: dashboards/nova/access_and_security/security_groups/forms.py:53 +#: dashboards/nova/access_and_security/security_groups/forms.py:51 #, fuzzy msgid "Unable to create security group." msgstr "セキュリティグループ" -#: dashboards/nova/access_and_security/security_groups/forms.py:58 +#: dashboards/nova/access_and_security/security_groups/forms.py:56 #: dashboards/nova/access_and_security/security_groups/tables.py:92 msgid "IP Protocol" msgstr "" +#: dashboards/nova/access_and_security/security_groups/forms.py:60 +msgid "The protocol which this rule should be applied to." +msgstr "" + #: dashboards/nova/access_and_security/security_groups/forms.py:64 #: dashboards/nova/access_and_security/security_groups/forms.py:70 #: dashboards/nova/access_and_security/security_groups/tables.py:94 @@ -407,54 +429,62 @@ msgstr "" msgid "Source Group" msgstr "セキュリティグループ" -#: dashboards/nova/access_and_security/security_groups/forms.py:84 +#: dashboards/nova/access_and_security/security_groups/forms.py:85 +msgid "" +"To specify an allowed IP range, select CIDR. To allow access from all " +"members of another security group select Source Group." +msgstr "" + +#: dashboards/nova/access_and_security/security_groups/forms.py:90 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:15 +#: dashboards/syspanel/networks/subnets/tables.py:71 msgid "CIDR" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:87 +#: dashboards/nova/access_and_security/security_groups/forms.py:93 msgid "Classless Inter-Domain Routing (e.g. 192.168.0.0/24)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:116 +#: dashboards/nova/access_and_security/security_groups/forms.py:120 msgid "The ICMP type is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:119 +#: dashboards/nova/access_and_security/security_groups/forms.py:123 msgid "The ICMP code is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:122 +#: dashboards/nova/access_and_security/security_groups/forms.py:126 msgid "The ICMP type not in range (-1, 255)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:125 +#: dashboards/nova/access_and_security/security_groups/forms.py:129 msgid "The ICMP code not in range (-1, 255)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:129 +#: dashboards/nova/access_and_security/security_groups/forms.py:133 msgid "The \"from\" port number is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:132 +#: dashboards/nova/access_and_security/security_groups/forms.py:136 msgid "The \"to\" port number is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:135 +#: dashboards/nova/access_and_security/security_groups/forms.py:139 msgid "" "The \"to\" port number must be greater than or equal to the \"from\" port " "number." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:141 +#: dashboards/nova/access_and_security/security_groups/forms.py:145 msgid "Either CIDR or Source Group may be specified, but not both." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:163 +#: dashboards/nova/access_and_security/security_groups/forms.py:167 #, fuzzy, python-format msgid "Successfully added rule: %s" msgstr "プロジェクト%(proj)sを正常に修正しました。" -#: dashboards/nova/access_and_security/security_groups/forms.py:166 +#: dashboards/nova/access_and_security/security_groups/forms.py:172 #, fuzzy msgid "Unable to add rule to security group." msgstr "セキュリティグループ" @@ -466,7 +496,7 @@ msgstr "セキュリティグループ" #: dashboards/nova/access_and_security/security_groups/tables.py:31 #: dashboards/nova/access_and_security/security_groups/tables.py:65 -#: dashboards/nova/instances/workflows.py:320 +#: dashboards/nova/instances/workflows.py:337 #: dashboards/nova/instances/templates/instances/_detail_overview.html:49 msgid "Security Groups" msgstr "セキュリティグループ" @@ -502,11 +532,16 @@ msgstr "" msgid "Security Group Rules" msgstr "セキュリティグループ" -#: dashboards/nova/access_and_security/security_groups/views.py:55 +#: dashboards/nova/access_and_security/security_groups/views.py:58 #, fuzzy msgid "Unable to retrieve security group." msgstr "キー%sを作成できません。" +#: dashboards/nova/access_and_security/security_groups/views.py:78 +#, python-format +msgid "%s (current)" +msgstr "" + #: dashboards/nova/access_and_security/templates/access_and_security/index.html:6 msgid "Access & Security" msgstr "" @@ -522,9 +557,14 @@ msgstr "イメージ%sを更新できません。" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_update.html:16 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:17 #: dashboards/nova/instances/templates/instances/_update.html:16 +#: dashboards/nova/networks/templates/networks/_update.html:16 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:25 #: dashboards/settings/ec2/templates/ec2/download_form.html:17 #: dashboards/settings/project/templates/project/_openrc.html:24 #: dashboards/settings/user/templates/user/_settings.html:17 +#: dashboards/syspanel/networks/templates/networks/_update.html:16 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:21 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:25 msgid "Description:" msgstr "説明:" @@ -554,7 +594,11 @@ msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_update.html:23 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:24 #: dashboards/nova/instances/templates/instances/_update.html:23 -#: dashboards/nova/volumes/templates/volumes/_attach.html:20 +#: dashboards/nova/networks/templates/networks/_create.html:23 +#: dashboards/nova/networks/templates/networks/_update.html:23 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:24 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:32 +#: dashboards/nova/volumes/templates/volumes/_attach.html:24 #: dashboards/nova/volumes/templates/volumes/_create.html:56 #: dashboards/nova/volumes/templates/volumes/_create_snapshot.html:24 #: dashboards/settings/ec2/templates/ec2/download_form.html:24 @@ -562,8 +606,15 @@ msgstr "" #: dashboards/settings/user/templates/user/_settings.html:24 #: dashboards/syspanel/flavors/templates/flavors/_create.html:24 #: dashboards/syspanel/images/templates/images/_update.html:24 +#: dashboards/syspanel/networks/templates/networks/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/_update.html:23 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:28 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:32 #: dashboards/syspanel/projects/templates/projects/_add_user.html:24 #: dashboards/syspanel/projects/templates/projects/_create.html:24 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:24 #: dashboards/syspanel/projects/templates/projects/_quotas.html:23 #: dashboards/syspanel/projects/templates/projects/_update.html:24 #: dashboards/syspanel/users/templates/users/_create.html:23 @@ -623,173 +674,166 @@ msgstr "セキュリティグループ" msgid "Add Rule" msgstr "" -#: dashboards/nova/containers/forms.py:38 +#: dashboards/nova/containers/browsers.py:30 +msgid "Swift" +msgstr "" + +#: dashboards/nova/containers/forms.py:37 msgid "Slash is not an allowed character." msgstr "" -#: dashboards/nova/containers/forms.py:48 -#: dashboards/nova/containers/tables.py:91 +#: dashboards/nova/containers/forms.py:47 +#: dashboards/nova/containers/tables.py:125 #, fuzzy msgid "Container Name" msgstr "ユーザ名" -#: dashboards/nova/containers/forms.py:56 +#: dashboards/nova/containers/forms.py:55 #, fuzzy msgid "Container created successfully." msgstr "ボリューム %(id)s %(name)s は正常に作成されました。" -#: dashboards/nova/containers/forms.py:67 +#: dashboards/nova/containers/forms.py:66 #, fuzzy msgid "Folder created successfully." msgstr "ボリューム %(id)s %(name)s は正常に作成されました。" -#: dashboards/nova/containers/forms.py:75 +#: dashboards/nova/containers/forms.py:69 #, fuzzy msgid "Unable to create container." msgstr "キー%sを作成できません。" -#: dashboards/nova/containers/forms.py:85 -#: dashboards/nova/containers/tables.py:157 +#: dashboards/nova/containers/forms.py:77 +#: dashboards/nova/containers/tables.py:253 #, fuzzy msgid "Object Name" msgstr "ユーザ名" -#: dashboards/nova/containers/forms.py:87 +#: dashboards/nova/containers/forms.py:79 msgid "File" msgstr "" -#: dashboards/nova/containers/forms.py:103 +#: dashboards/nova/containers/forms.py:95 #, fuzzy msgid "Object was successfully uploaded." msgstr "セキュリティグループ%sが正常に削除されました。" -#: dashboards/nova/containers/forms.py:105 +#: dashboards/nova/containers/forms.py:98 #, fuzzy msgid "Unable to upload object." msgstr "イメージ%sを更新できません。" -#: dashboards/nova/containers/forms.py:111 +#: dashboards/nova/containers/forms.py:102 msgid "Destination container" msgstr "" -#: dashboards/nova/containers/forms.py:115 +#: dashboards/nova/containers/forms.py:106 msgid "Destination object name" msgstr "" -#: dashboards/nova/containers/forms.py:145 -#: dashboards/nova/containers/forms.py:169 +#: dashboards/nova/containers/forms.py:136 +#: dashboards/nova/containers/forms.py:162 msgid "Unable to copy object." msgstr "" -#: dashboards/nova/containers/forms.py:161 +#: dashboards/nova/containers/forms.py:152 #, python-format msgid "Copied \"%(orig)s\" to \"%(dest)s\" as \"%(new)s\"." msgstr "" #: dashboards/nova/containers/panel.py:28 -#: dashboards/nova/containers/tables.py:35 -#: dashboards/nova/containers/tables.py:102 -#: dashboards/nova/containers/templates/containers/index.html:6 +#: dashboards/nova/containers/tables.py:41 +#: dashboards/nova/containers/tables.py:132 msgid "Containers" msgstr "" -#: dashboards/nova/containers/tables.py:34 -#: dashboards/nova/containers/templates/containers/detail.html:7 +#: dashboards/nova/containers/tables.py:40 +#: dashboards/nova/containers/templates/containers/index.html:7 #, fuzzy msgid "Container" msgstr "ユーザ名" -#: dashboards/nova/containers/tables.py:42 +#: dashboards/nova/containers/tables.py:49 msgid "Containers must be empty before deletion." msgstr "" -#: dashboards/nova/containers/tables.py:48 +#: dashboards/nova/containers/tables.py:67 #: dashboards/nova/containers/templates/containers/_create.html:7 #: dashboards/nova/containers/templates/containers/_create.html:22 #: dashboards/nova/containers/templates/containers/create.html:6 msgid "Create Container" msgstr "" -#: dashboards/nova/containers/tables.py:55 +#: dashboards/nova/containers/tables.py:74 #, fuzzy msgid "View Container" msgstr "ユーザ名" -#: dashboards/nova/containers/tables.py:62 +#: dashboards/nova/containers/tables.py:86 #: dashboards/nova/containers/templates/containers/_upload.html:23 #: dashboards/nova/containers/templates/containers/upload.html:3 msgid "Upload Object" msgstr "" -#: dashboards/nova/containers/tables.py:93 -#: dashboards/nova/containers/tables.py:109 -#: dashboards/nova/containers/tables.py:169 -#: dashboards/nova/containers/templates/containers/detail.html:3 +#: dashboards/nova/containers/tables.py:140 +#: dashboards/nova/containers/tables.py:159 +#, fuzzy +msgid "Object" +msgstr "ユーザ名" + +#: dashboards/nova/containers/tables.py:141 +#: dashboards/nova/containers/tables.py:160 +#: dashboards/nova/containers/tables.py:263 #, fuzzy msgid "Objects" msgstr "ユーザ名" -#: dashboards/nova/containers/tables.py:95 -#: dashboards/nova/containers/tables.py:160 +#: dashboards/nova/containers/tables.py:152 +msgid "Folder" +msgstr "" + +#: dashboards/nova/containers/tables.py:153 +msgid "Folders" +msgstr "" + +#: dashboards/nova/containers/tables.py:166 +msgid "Copy" +msgstr "" + +#: dashboards/nova/containers/tables.py:178 +msgid "Download" +msgstr "" + +#: dashboards/nova/containers/tables.py:232 +#, fuzzy +msgid "Create Folder" +msgstr "作成" + +#: dashboards/nova/containers/tables.py:256 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:30 -#: dashboards/nova/instances/tables.py:271 -#: dashboards/nova/volumes/tables.py:140 +#: dashboards/nova/instances/tables.py:272 +#: dashboards/nova/volumes/tables.py:141 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:26 #: dashboards/syspanel/instances/tables.py:76 msgid "Size" msgstr "" -#: dashboards/nova/containers/tables.py:108 -#, fuzzy -msgid "Object" -msgstr "ユーザ名" - -#: dashboards/nova/containers/tables.py:119 -msgid "Copy" -msgstr "" - -#: dashboards/nova/containers/tables.py:130 -msgid "Download" -msgstr "" - -#: dashboards/nova/containers/tables.py:181 -#, fuzzy -msgid "Create Folder" -msgstr "作成" - -#: dashboards/nova/containers/tables.py:193 -msgid "Folder" -msgstr "" - -#: dashboards/nova/containers/tables.py:194 -msgid "Folders" -msgstr "" - -#: dashboards/nova/containers/tables.py:200 -#, fuzzy -msgid "Subfolder Name" -msgstr "ユーザ名" - -#: dashboards/nova/containers/tables.py:208 -msgid "Subfolders" -msgstr "" - -#: dashboards/nova/containers/views.py:58 +#: dashboards/nova/containers/views.py:52 #, fuzzy msgid "Unable to retrieve container list." msgstr "キー%sを作成できません。" -#: dashboards/nova/containers/views.py:103 +#: dashboards/nova/containers/views.py:80 #, fuzzy msgid "Unable to retrieve object list." msgstr "キー%sを作成できません。" -#: dashboards/nova/containers/views.py:161 +#: dashboards/nova/containers/views.py:175 #, fuzzy msgid "Unable to retrieve object." msgstr "キー%sを作成できません。" -#: dashboards/nova/containers/views.py:183 +#: dashboards/nova/containers/views.py:204 #, fuzzy msgid "Unable to list containers." msgstr "キー%sを削除できません。" @@ -842,125 +886,126 @@ msgstr "" msgid "Images & Snapshots" msgstr "スナップショット" -#: dashboards/nova/images_and_snapshots/views.py:60 +#: dashboards/nova/images_and_snapshots/views.py:61 #, fuzzy msgid "Unable to retrieve images." msgstr "%sをリボーク(無効化)できません。" -#: dashboards/nova/images_and_snapshots/views.py:71 +#: dashboards/nova/images_and_snapshots/views.py:72 #, fuzzy msgid "Unable to retrieve snapshots." msgstr "キー%sを作成できません。" -#: dashboards/nova/images_and_snapshots/views.py:79 +#: dashboards/nova/images_and_snapshots/views.py:80 +#: dashboards/nova/volumes/forms.py:65 #, fuzzy msgid "Unable to retrieve volume snapshots." msgstr "ボリューム%sを作成できません。" -#: dashboards/nova/images_and_snapshots/images/forms.py:44 +#: dashboards/nova/images_and_snapshots/images/forms.py:41 #, fuzzy msgid "Image Location" msgstr "ロケーション" -#: dashboards/nova/images_and_snapshots/images/forms.py:45 -msgid "An external (HTTP) URL where the image should be loaded from." +#: dashboards/nova/images_and_snapshots/images/forms.py:42 +msgid "An external (HTTP) URL to load the image from." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:48 -#: dashboards/nova/images_and_snapshots/images/forms.py:135 +#: dashboards/nova/images_and_snapshots/images/forms.py:45 +#: dashboards/nova/images_and_snapshots/images/forms.py:129 #: dashboards/nova/images_and_snapshots/images/tables.py:125 msgid "Format" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:52 +#: dashboards/nova/images_and_snapshots/images/forms.py:49 msgid "AKI - Amazon Kernel Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:55 +#: dashboards/nova/images_and_snapshots/images/forms.py:52 msgid "AMI - Amazon Machine Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:58 +#: dashboards/nova/images_and_snapshots/images/forms.py:55 msgid "ARI - Amazon Ramdisk Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:61 +#: dashboards/nova/images_and_snapshots/images/forms.py:58 msgid "ISO - Optical Disk Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:63 +#: dashboards/nova/images_and_snapshots/images/forms.py:60 msgid "QCOW2 - QEMU Emulator" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:70 +#: dashboards/nova/images_and_snapshots/images/forms.py:67 msgid "Minimum Disk (GB)" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:71 -#: dashboards/nova/images_and_snapshots/images/forms.py:78 +#: dashboards/nova/images_and_snapshots/images/forms.py:68 +#: dashboards/nova/images_and_snapshots/images/forms.py:75 msgid "" "The minimum disk size required to boot the image. If unspecified, this value " "defaults to 0 (no minimum)." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:77 +#: dashboards/nova/images_and_snapshots/images/forms.py:74 msgid "Minimum Ram (MB)" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:84 -#: dashboards/nova/images_and_snapshots/images/forms.py:139 +#: dashboards/nova/images_and_snapshots/images/forms.py:81 +#: dashboards/nova/images_and_snapshots/images/forms.py:133 #: dashboards/nova/images_and_snapshots/images/tables.py:122 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:15 #, fuzzy msgid "Public" msgstr "公開する" -#: dashboards/nova/images_and_snapshots/images/forms.py:108 +#: dashboards/nova/images_and_snapshots/images/forms.py:105 #, python-format msgid "Your image %s has been queued for creation." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:111 +#: dashboards/nova/images_and_snapshots/images/forms.py:109 #, fuzzy msgid "Unable to create new image." msgstr "%sをリボーク(無効化)できません。" -#: dashboards/nova/images_and_snapshots/images/forms.py:121 +#: dashboards/nova/images_and_snapshots/images/forms.py:115 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:48 msgid "Kernel ID" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:126 +#: dashboards/nova/images_and_snapshots/images/forms.py:120 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:52 msgid "Ramdisk ID" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:131 +#: dashboards/nova/images_and_snapshots/images/forms.py:125 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:44 msgid "Architecture" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:144 +#: dashboards/nova/images_and_snapshots/images/forms.py:137 #, fuzzy, python-format msgid "Unable to update image \"%s\"." msgstr "イメージ%sを更新できません。" -#: dashboards/nova/images_and_snapshots/images/forms.py:163 +#: dashboards/nova/images_and_snapshots/images/forms.py:161 #, fuzzy msgid "Image was successfully updated." msgstr "イメージ%sが正常に登録削除されました。" #: dashboards/nova/images_and_snapshots/images/tables.py:33 #: dashboards/nova/images_and_snapshots/snapshots/tables.py:32 -#: dashboards/nova/instances/workflows.py:394 +#: dashboards/nova/instances/workflows.py:451 #, fuzzy msgid "Launch" msgstr "イメージを起動します。" #: dashboards/nova/images_and_snapshots/images/tables.py:45 #: dashboards/nova/images_and_snapshots/images/tables.py:81 -#: dashboards/nova/instances/workflows.py:162 #: dashboards/nova/instances/workflows.py:167 +#: dashboards/nova/instances/workflows.py:172 #, fuzzy msgid "Image" msgstr "イメージ" @@ -981,7 +1026,7 @@ msgid "Create Image" msgstr "イメージを更新" #: dashboards/nova/images_and_snapshots/images/tables.py:67 -#: dashboards/syspanel/users/tables.py:30 +#: dashboards/syspanel/users/tables.py:31 msgid "Edit" msgstr "編集" @@ -994,18 +1039,29 @@ msgstr "ユーザ名" #: dashboards/nova/images_and_snapshots/images/tables.py:118 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:13 -#: dashboards/nova/instances/tables.py:275 +#: dashboards/nova/instances/tables.py:277 #: dashboards/nova/instances/templates/instances/_detail_overview.html:13 -#: dashboards/nova/volumes/tables.py:143 +#: dashboards/nova/networks/tables.py:86 +#: dashboards/nova/networks/ports/tables.py:44 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:13 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:30 +#: dashboards/nova/volumes/tables.py:145 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:17 -#: dashboards/syspanel/instances/tables.py:80 +#: dashboards/syspanel/instances/tables.py:81 +#: dashboards/syspanel/networks/tables.py:71 +#: dashboards/syspanel/networks/ports/tables.py:77 msgid "Status" msgstr "ステータス" #: dashboards/nova/images_and_snapshots/images/tabs.py:26 -#: dashboards/nova/instances/tabs.py:25 dashboards/nova/overview/panel.py:28 +#: dashboards/nova/instances/tabs.py:25 +#: dashboards/nova/networks/ports/tabs.py:29 +#: dashboards/nova/networks/subnets/tabs.py:31 +#: dashboards/nova/overview/panel.py:28 #: dashboards/nova/overview/templates/overview/usage.html:6 -#: dashboards/nova/volumes/tabs.py:26 dashboards/syspanel/overview/panel.py:28 +#: dashboards/nova/volumes/tabs.py:26 +#: dashboards/syspanel/networks/ports/tabs.py:29 +#: dashboards/syspanel/overview/panel.py:28 #: dashboards/syspanel/overview/templates/overview/usage.html:6 msgid "Overview" msgstr "概要" @@ -1015,18 +1071,18 @@ msgstr "概要" msgid "Unable to retrieve image details." msgstr "%sをリボーク(無効化)できません。" -#: dashboards/nova/images_and_snapshots/images/views.py:57 +#: dashboards/nova/images_and_snapshots/images/views.py:60 #, fuzzy msgid "Unable to retrieve image." msgstr "%sをリボーク(無効化)できません。" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:38 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:36 #, fuzzy msgid "Instance ID" msgstr "インスタンスID:" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:41 -#: dashboards/nova/volumes/forms.py:123 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:39 +#: dashboards/nova/volumes/forms.py:193 #, fuzzy msgid "Snapshot Name" msgstr "スナップショット" @@ -1036,15 +1092,14 @@ msgstr "スナップショット" msgid "Snapshot \"%(name)s\" created for instance \"%(inst)s\"" msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:56 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:55 #, fuzzy msgid "Unable to create snapshot." msgstr "キー%sを作成できません。" #: dashboards/nova/images_and_snapshots/snapshots/tables.py:47 -#: dashboards/nova/instances/tables.py:162 -#: dashboards/nova/instances/workflows.py:101 -#: dashboards/nova/instances/workflows.py:163 +#: dashboards/nova/instances/workflows.py:106 +#: dashboards/nova/instances/workflows.py:168 msgid "Snapshot" msgstr "スナップショット" @@ -1057,16 +1112,11 @@ msgstr "スナップショット" msgid "Instance Snapshots" msgstr "スナップショット" -#: dashboards/nova/images_and_snapshots/snapshots/views.py:50 +#: dashboards/nova/images_and_snapshots/snapshots/views.py:52 #, fuzzy msgid "Unable to retrieve instance." msgstr "%sをリボーク(無効化)できません。" -#: dashboards/nova/images_and_snapshots/snapshots/views.py:53 -#, python-format -msgid "To create a snapshot, the instance must be in the \"%s\" state." -msgstr "" - #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/index.html:3 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/index.html:6 msgid "Images & Snapshots" @@ -1114,8 +1164,14 @@ msgstr "情報" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:11 #: dashboards/nova/instances/templates/instances/_detail_overview.html:11 +#: dashboards/nova/networks/forms.py:38 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:9 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:12 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:11 -#: dashboards/syspanel/projects/forms.py:83 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:12 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:12 #: dashboards/syspanel/users/forms.py:113 msgid "ID" msgstr "" @@ -1158,7 +1214,9 @@ msgid "Euca2ools state" msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:60 -#: dashboards/syspanel/projects/tables.py:77 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:15 +#: dashboards/syspanel/projects/tables.py:90 msgid "Project ID" msgstr "" @@ -1191,6 +1249,7 @@ msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:8 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:23 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/create.html:3 +#: dashboards/nova/instances/tables.py:162 #: dashboards/nova/volumes/tables.py:67 msgid "Create Snapshot" msgstr "" @@ -1203,19 +1262,27 @@ msgstr "" msgid "Create a Snapshot" msgstr "" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:30 -#: dashboards/nova/instances/workflows.py:70 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:32 +#: dashboards/nova/instances/workflows.py:75 #, fuzzy msgid "Volume Snapshot" msgstr "スナップショット" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:31 -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:52 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:33 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:69 #, fuzzy msgid "Volume Snapshots" msgstr "スナップショット" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:48 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:41 +#: dashboards/nova/volumes/tables.py:50 +#: dashboards/nova/volumes/templates/volumes/_create.html:8 +#: dashboards/nova/volumes/templates/volumes/_create.html:55 +#, fuzzy +msgid "Create Volume" +msgstr "作成" + +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:65 #, fuzzy msgid "Volume ID" msgstr "ボリューム" @@ -1225,7 +1292,7 @@ msgstr "ボリューム" msgid "Instance \"%s\" updated." msgstr "インスタンス%sが開始しました。" -#: dashboards/nova/instances/forms.py:46 +#: dashboards/nova/instances/forms.py:49 #, fuzzy msgid "Unable to update instance." msgstr "イメージ%sを更新できません。" @@ -1235,13 +1302,13 @@ msgstr "イメージ%sを更新できません。" #: dashboards/nova/instances/tables.py:80 #: dashboards/nova/instances/tables.py:95 #: dashboards/nova/instances/tables.py:123 -#: dashboards/nova/instances/tables.py:290 +#: dashboards/nova/instances/tables.py:292 #: dashboards/nova/instances/templates/instances/index.html:3 #: dashboards/nova/instances/templates/instances/index.html:6 #: dashboards/syspanel/instances/panel.py:28 -#: dashboards/syspanel/instances/tables.py:95 +#: dashboards/syspanel/instances/tables.py:96 #: dashboards/syspanel/instances/templates/instances/index.html:3 -#: dashboards/syspanel/projects/forms.py:115 +#: dashboards/syspanel/projects/workflows.py:35 msgid "Instances" msgstr "インスタンス" @@ -1295,7 +1362,7 @@ msgid "Resumed" msgstr "" #: dashboards/nova/instances/tables.py:148 -#: dashboards/nova/instances/workflows.py:393 +#: dashboards/nova/instances/workflows.py:450 #: dashboards/nova/instances/templates/instances/launch.html:3 #: dashboards/nova/instances/templates/instances/launch.html:6 msgid "Launch Instance" @@ -1326,18 +1393,18 @@ msgid "Not available" msgstr "現在イメージがありません。" #: dashboards/nova/instances/tables.py:269 -#: dashboards/syspanel/instances/tables.py:73 usage/tables.py:56 +#: dashboards/syspanel/instances/tables.py:73 usage/tables.py:57 #, fuzzy msgid "Instance Name" msgstr "インスタンス" -#: dashboards/nova/instances/tables.py:279 -#: dashboards/syspanel/instances/tables.py:84 +#: dashboards/nova/instances/tables.py:281 +#: dashboards/syspanel/instances/tables.py:85 msgid "Task" msgstr "" -#: dashboards/nova/instances/tables.py:286 -#: dashboards/syspanel/instances/tables.py:91 +#: dashboards/nova/instances/tables.py:288 +#: dashboards/syspanel/instances/tables.py:92 #, fuzzy msgid "Power State" msgstr "状態" @@ -1371,253 +1438,309 @@ msgstr "%sをリボーク(無効化)できません。" msgid "Unable to retrieve instance size information." msgstr "%sをリボーク(無効化)できません。" -#: dashboards/nova/instances/views.py:137 +#: dashboards/nova/instances/views.py:143 #, fuzzy msgid "Unable to retrieve instance details." msgstr "%sをリボーク(無効化)できません。" -#: dashboards/nova/instances/views.py:172 +#: dashboards/nova/instances/views.py:178 #, fuzzy, python-format msgid "Unable to retrieve details for instance \"%s\"." msgstr "%sをリボーク(無効化)できません。" -#: dashboards/nova/instances/workflows.py:33 -#: dashboards/syspanel/projects/tables.py:92 -#: dashboards/syspanel/users/tables.py:39 -#: dashboards/syspanel/users/tables.py:73 tests/workflows_tests.py:40 +#: dashboards/nova/instances/workflows.py:38 +#: dashboards/syspanel/projects/tables.py:106 +#: dashboards/syspanel/users/tables.py:40 +#: dashboards/syspanel/users/tables.py:74 tests/workflows_tests.py:40 msgid "User" msgstr "" -#: dashboards/nova/instances/workflows.py:47 +#: dashboards/nova/instances/workflows.py:52 #, fuzzy msgid "Project & User" msgstr "プロジェクトを削除" -#: dashboards/nova/instances/workflows.py:49 +#: dashboards/nova/instances/workflows.py:54 msgid "" "Admin users may optionally select the project and user for whom the instance " "should be created." msgstr "" -#: dashboards/nova/instances/workflows.py:60 +#: dashboards/nova/instances/workflows.py:65 msgid "Don't boot from a volume." msgstr "" -#: dashboards/nova/instances/workflows.py:61 +#: dashboards/nova/instances/workflows.py:66 msgid "Boot from volume." msgstr "" -#: dashboards/nova/instances/workflows.py:62 +#: dashboards/nova/instances/workflows.py:67 msgid "Boot from volume snapshot (creates a new volume)." msgstr "" -#: dashboards/nova/instances/workflows.py:66 -#: dashboards/nova/instances/workflows.py:84 +#: dashboards/nova/instances/workflows.py:71 +#: dashboards/nova/instances/workflows.py:89 #, fuzzy msgid "Volume Options" msgstr "ボリューム" -#: dashboards/nova/instances/workflows.py:69 -#: dashboards/nova/instances/workflows.py:104 +#: dashboards/nova/instances/workflows.py:74 +#: dashboards/nova/instances/workflows.py:109 #: dashboards/nova/instances/templates/instances/_detail_overview.html:93 -#: dashboards/nova/volumes/tables.py:36 dashboards/nova/volumes/tables.py:171 +#: dashboards/nova/volumes/tables.py:36 dashboards/nova/volumes/tables.py:173 #, fuzzy msgid "Volume" msgstr "ボリューム" -#: dashboards/nova/instances/workflows.py:72 +#: dashboards/nova/instances/workflows.py:77 +#: dashboards/nova/volumes/forms.py:126 #, fuzzy msgid "Device Name" msgstr "ユーザ名" -#: dashboards/nova/instances/workflows.py:75 +#: dashboards/nova/instances/workflows.py:80 msgid "Volume mount point (e.g. 'vda' mounts at '/dev/vda')." msgstr "" -#: dashboards/nova/instances/workflows.py:77 +#: dashboards/nova/instances/workflows.py:82 #, fuzzy msgid "Delete on Terminate" msgstr "削除" -#: dashboards/nova/instances/workflows.py:80 +#: dashboards/nova/instances/workflows.py:85 msgid "Delete volume on instance terminate" msgstr "" -#: dashboards/nova/instances/workflows.py:111 +#: dashboards/nova/instances/workflows.py:116 #, fuzzy msgid "Select Volume" msgstr "言語を選択" -#: dashboards/nova/instances/workflows.py:119 +#: dashboards/nova/instances/workflows.py:124 #, fuzzy msgid "Unable to retrieve list of volumes." msgstr "キー%sを作成できません。" -#: dashboards/nova/instances/workflows.py:123 +#: dashboards/nova/instances/workflows.py:128 #, fuzzy msgid "Select Volume Snapshot" msgstr "新規ボリュームを作成する。" -#: dashboards/nova/instances/workflows.py:132 +#: dashboards/nova/instances/workflows.py:137 #, fuzzy msgid "Unable to retrieve list of volume snapshots." msgstr "ボリューム%sを作成できません。" -#: dashboards/nova/instances/workflows.py:165 +#: dashboards/nova/instances/workflows.py:170 #, fuzzy msgid "Instance Source" msgstr "インスタンス" -#: dashboards/nova/instances/workflows.py:168 +#: dashboards/nova/instances/workflows.py:173 #, fuzzy msgid "Instance Snapshot" msgstr "スナップショット" -#: dashboards/nova/instances/workflows.py:170 +#: dashboards/nova/instances/workflows.py:175 #, fuzzy msgid "Server Name" msgstr "ユーザ名" -#: dashboards/nova/instances/workflows.py:171 +#: dashboards/nova/instances/workflows.py:176 #: dashboards/nova/instances/templates/instances/_detail_overview.html:22 #: dashboards/syspanel/flavors/tables.py:13 msgid "Flavor" msgstr "" -#: dashboards/nova/instances/workflows.py:172 +#: dashboards/nova/instances/workflows.py:177 msgid "Size of image to launch." msgstr "" -#: dashboards/nova/instances/workflows.py:173 +#: dashboards/nova/instances/workflows.py:178 #, fuzzy msgid "Instance Count" msgstr "インスタンス" -#: dashboards/nova/instances/workflows.py:176 +#: dashboards/nova/instances/workflows.py:181 msgid "Number of instances to launch." msgstr "" -#: dashboards/nova/instances/workflows.py:179 +#: dashboards/nova/instances/workflows.py:184 #, fuzzy msgid "Details" msgstr "ボリューム" -#: dashboards/nova/instances/workflows.py:198 +#: dashboards/nova/instances/workflows.py:197 +msgid "" +"There are no image sources available; you must first create an image before " +"attempting to launch an instance." +msgstr "" + +#: dashboards/nova/instances/workflows.py:202 +msgid "Please select an option for the instance source." +msgstr "" + +#: dashboards/nova/instances/workflows.py:211 msgid "" "Launching multiple instances is only supported for images and instance " "snapshots." msgstr "" -#: dashboards/nova/instances/workflows.py:214 +#: dashboards/nova/instances/workflows.py:227 #, fuzzy msgid "Unable to retrieve public images." msgstr "%sをリボーク(無効化)できません。" -#: dashboards/nova/instances/workflows.py:228 +#: dashboards/nova/instances/workflows.py:241 #, fuzzy msgid "Unable to retrieve images for the current project." msgstr "キー%sを作成できません。" -#: dashboards/nova/instances/workflows.py:251 +#: dashboards/nova/instances/workflows.py:264 #, fuzzy msgid "Select Image" msgstr "言語を選択" -#: dashboards/nova/instances/workflows.py:253 +#: dashboards/nova/instances/workflows.py:266 #, fuzzy msgid "No images available." msgstr "現在イメージがありません。" -#: dashboards/nova/instances/workflows.py:262 +#: dashboards/nova/instances/workflows.py:275 #, fuzzy msgid "Select Instance Snapshot" msgstr "スナップショット" -#: dashboards/nova/instances/workflows.py:264 +#: dashboards/nova/instances/workflows.py:277 #, fuzzy msgid "No snapshots available." msgstr "現在イメージがありません。" -#: dashboards/nova/instances/workflows.py:275 +#: dashboards/nova/instances/workflows.py:288 #, fuzzy msgid "Unable to retrieve instance flavors." msgstr "%sをリボーク(無効化)できません。" -#: dashboards/nova/instances/workflows.py:288 +#: dashboards/nova/instances/workflows.py:301 #, fuzzy msgid "Unable to retrieve quota information." msgstr "イメージ%sの登録削除ができませんでした。" -#: dashboards/nova/instances/workflows.py:318 +#: dashboards/nova/instances/workflows.py:334 msgid "Which keypair to use for authentication." msgstr "" -#: dashboards/nova/instances/workflows.py:324 +#: dashboards/nova/instances/workflows.py:341 #, fuzzy msgid "Launch instance in these security groups." msgstr "セキュリティグループ%sを作成できません。" -#: dashboards/nova/instances/workflows.py:329 +#: dashboards/nova/instances/workflows.py:346 msgid "" "Control access to your instance via keypairs, security groups, and other " "mechanisms." msgstr "" -#: dashboards/nova/instances/workflows.py:339 +#: dashboards/nova/instances/workflows.py:356 #, fuzzy msgid "Unable to retrieve keypairs." msgstr "キー%sを作成できません。" -#: dashboards/nova/instances/workflows.py:341 +#: dashboards/nova/instances/workflows.py:358 #, fuzzy msgid "Select a keypair" msgstr "プロジェクトを削除" -#: dashboards/nova/instances/workflows.py:343 +#: dashboards/nova/instances/workflows.py:360 #, fuzzy msgid "No keypairs available." msgstr "現在イメージがありません。" -#: dashboards/nova/instances/workflows.py:352 +#: dashboards/nova/instances/workflows.py:369 #, fuzzy msgid "Unable to retrieve list of security groups" msgstr "キー%sを作成できません。" -#: dashboards/nova/instances/workflows.py:372 +#: dashboards/nova/instances/workflows.py:389 msgid "Customization Script" msgstr "" -#: dashboards/nova/instances/workflows.py:374 +#: dashboards/nova/instances/workflows.py:391 msgid "" "A script or set of commands to be executed after the instance has been built " "(max 16kb)." msgstr "" -#: dashboards/nova/instances/workflows.py:381 +#: dashboards/nova/instances/workflows.py:398 msgid "Post-Creation" msgstr "" -#: dashboards/nova/instances/workflows.py:395 +#: dashboards/nova/instances/workflows.py:409 +#: dashboards/nova/networks/panel.py:24 dashboards/nova/networks/tables.py:32 +#: dashboards/nova/networks/tables.py:92 +#: dashboards/nova/networks/templates/networks/index.html:3 +#: dashboards/nova/networks/templates/networks/index.html:6 +#: dashboards/syspanel/networks/panel.py:24 +#: dashboards/syspanel/networks/tables.py:34 +#: dashboards/syspanel/networks/tables.py:77 +#: dashboards/syspanel/networks/templates/networks/index.html:3 +#: dashboards/syspanel/networks/templates/networks/index.html:6 +msgid "Networks" +msgstr "" + +#: dashboards/nova/instances/workflows.py:412 +#, fuzzy +msgid "Launch instance withthese networks" +msgstr "セキュリティグループ%sを作成できません。" + +#: dashboards/nova/instances/workflows.py:416 +msgid "Networking" +msgstr "" + +#: dashboards/nova/instances/workflows.py:418 +#, fuzzy +msgid "Select networks for your instance." +msgstr "言語を選択" + +#: dashboards/nova/instances/workflows.py:429 +#, fuzzy +msgid "Unable to retrieve networks." +msgstr "%sをリボーク(無効化)できません。" + +#: dashboards/nova/instances/workflows.py:452 #, python-format msgid "Launched %(count)s named \"%(name)s\"." msgstr "" -#: dashboards/nova/instances/workflows.py:396 +#: dashboards/nova/instances/workflows.py:453 #, fuzzy, python-format msgid "Unable to launch %(count)s named \"%(name)s\"." msgstr "イメージ%sを更新できません。" -#: dashboards/nova/instances/workflows.py:408 +#: dashboards/nova/instances/workflows.py:466 #, fuzzy, python-format msgid "%s instances" msgstr "インスタンス" -#: dashboards/nova/instances/workflows.py:411 +#: dashboards/nova/instances/workflows.py:469 #, fuzzy msgid "instance" msgstr "インスタンス" +#: dashboards/nova/instances/templates/instances/_detail_log.html:4 +#, fuzzy +msgid "Instance Console Log" +msgstr "インスタンス" + #: dashboards/nova/instances/templates/instances/_detail_log.html:7 +msgid "Log Length" +msgstr "" + +#: dashboards/nova/instances/templates/instances/_detail_log.html:9 +msgid "Go" +msgstr "" + +#: dashboards/nova/instances/templates/instances/_detail_log.html:11 msgid "View Full Log" msgstr "" @@ -1635,8 +1758,8 @@ msgstr "" #: dashboards/nova/instances/templates/instances/_detail_overview.html:26 #: dashboards/nova/instances/templates/instances/_launch_details_help.html:10 #: dashboards/syspanel/flavors/forms.py:38 -#: dashboards/syspanel/flavors/tables.py:30 -#: dashboards/syspanel/projects/forms.py:114 usage/tables.py:19 +#: dashboards/syspanel/flavors/tables.py:34 +#: dashboards/syspanel/projects/workflows.py:34 usage/tables.py:19 msgid "VCPUs" msgstr "" @@ -1680,7 +1803,7 @@ msgid "Volumes Attached" msgstr "ボリュームを付与する。" #: dashboards/nova/instances/templates/instances/_detail_overview.html:88 -#: dashboards/nova/volumes/tables.py:156 +#: dashboards/nova/volumes/tables.py:158 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:38 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:45 #, fuzzy @@ -1747,12 +1870,12 @@ msgid "Flavor Details" msgstr "インスタンスタイプ" #: dashboards/nova/instances/templates/instances/_launch_details_help.html:11 -#: dashboards/syspanel/flavors/tables.py:32 +#: dashboards/syspanel/flavors/tables.py:38 msgid "Root Disk" msgstr "" #: dashboards/nova/instances/templates/instances/_launch_details_help.html:12 -#: dashboards/syspanel/flavors/tables.py:34 +#: dashboards/syspanel/flavors/tables.py:40 msgid "Ephemeral Disk" msgstr "" @@ -1789,6 +1912,11 @@ msgid "You may update the editable properties of your instance here." msgstr "" #: dashboards/nova/instances/templates/instances/_update.html:22 +#: dashboards/nova/networks/templates/networks/_update.html:22 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:31 +#: dashboards/syspanel/networks/templates/networks/_update.html:22 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:27 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:31 msgid "Save Changes" msgstr "" @@ -1802,6 +1930,460 @@ msgstr "インスタンスID:" msgid "Update Instance" msgstr "インスタンスを更新" +#: dashboards/nova/networks/forms.py:47 +#, fuzzy, python-format +msgid "Network %s was successfully updated." +msgstr "キー%sは正常に削除されました。" + +#: dashboards/nova/networks/forms.py:52 +#, fuzzy, python-format +msgid "Failed to update network %s" +msgstr "イメージ%sを更新できません。" + +#: dashboards/nova/networks/tables.py:31 +#: dashboards/nova/networks/templates/networks/subnets/index.html:3 +#: dashboards/nova/networks/templates/networks/subnets/index.html:6 +#: dashboards/syspanel/networks/tables.py:33 +msgid "Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:47 +#: dashboards/syspanel/networks/tables.py:40 +#, python-format +msgid "Failed to delete network %s" +msgstr "" + +#: dashboards/nova/networks/tables.py:55 +#: dashboards/nova/networks/workflows.py:110 +#: dashboards/nova/networks/templates/networks/_create.html:7 +#: dashboards/nova/networks/templates/networks/_create.html:22 +#: dashboards/nova/networks/templates/networks/create.html:3 +#: dashboards/nova/networks/templates/networks/create.html:6 +#: dashboards/syspanel/networks/tables.py:48 +#: dashboards/syspanel/networks/templates/networks/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/create.html:3 +#: dashboards/syspanel/networks/templates/networks/create.html:6 +#, fuzzy +msgid "Create Network" +msgstr "新規ボリュームを作成する。" + +#: dashboards/nova/networks/tables.py:62 +#: dashboards/nova/networks/templates/networks/_update.html:7 +#: dashboards/syspanel/networks/tables.py:55 +#: dashboards/syspanel/networks/templates/networks/_update.html:7 +msgid "Edit Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:69 +msgid "Add Subnet" +msgstr "" + +#: dashboards/nova/networks/tables.py:85 +#: dashboards/syspanel/networks/tables.py:70 +#, fuzzy +msgid "Subnets Associated" +msgstr "インスタンスを更新" + +#: dashboards/nova/networks/tables.py:88 +#: dashboards/nova/networks/ports/tables.py:46 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:15 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:32 +#: dashboards/syspanel/networks/tables.py:73 +#: dashboards/syspanel/networks/ports/tables.py:79 +#, fuzzy +msgid "Admin State" +msgstr "ロケーション" + +#: dashboards/nova/networks/views.py:55 +#: dashboards/syspanel/networks/views.py:60 +msgid "Network list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:89 +#, fuzzy +msgid "Unable to retrieve network details." +msgstr "%sをリボーク(無効化)できません。" + +#: dashboards/nova/networks/views.py:112 +#: dashboards/syspanel/networks/views.py:91 +msgid "Subnet list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:124 +#: dashboards/syspanel/networks/views.py:103 +msgid "Port list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:137 +#: dashboards/syspanel/networks/views.py:118 +#, fuzzy, python-format +msgid "Unable to retrieve details for network \"%s\"." +msgstr "%sをリボーク(無効化)できません。" + +#: dashboards/nova/networks/workflows.py:36 +msgid "Network Name (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:41 +msgid "" +"From here you can create a new network.\n" +"In addition a subnet associated with the network can be created in the next " +"panel." +msgstr "" + +#: dashboards/nova/networks/workflows.py:52 +#: dashboards/nova/networks/subnets/tables.py:48 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:8 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:23 +#: dashboards/nova/networks/templates/networks/subnets/create.html:3 +#: dashboards/nova/networks/templates/networks/subnets/create.html:6 +#: dashboards/syspanel/networks/subnets/tables.py:48 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/subnets/create.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/create.html:6 +#, fuzzy +msgid "Create Subnet" +msgstr "作成" + +#: dashboards/nova/networks/workflows.py:55 +msgid "Subnet Name (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:57 +#: dashboards/nova/networks/subnets/forms.py:44 +#: dashboards/nova/networks/subnets/tables.py:71 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:14 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:14 +msgid "Network Address" +msgstr "" + +#: dashboards/nova/networks/workflows.py:60 +#: dashboards/nova/networks/subnets/forms.py:47 +msgid "Network address in CIDR format (e.g. 192.168.0.0/24)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:65 +#: dashboards/nova/networks/subnets/forms.py:52 +#: dashboards/nova/networks/subnets/tables.py:72 +#: dashboards/syspanel/networks/subnets/tables.py:72 +msgid "IP Version" +msgstr "" + +#: dashboards/nova/networks/workflows.py:66 +msgid "Gateway IP (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:69 +#: dashboards/nova/networks/subnets/forms.py:56 +#: dashboards/nova/networks/subnets/forms.py:106 +msgid "IP address of Gateway (e.g. 192.168.0.1)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:76 +msgid "" +"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." +msgstr "" + +#: dashboards/nova/networks/workflows.py:88 +msgid "Specify \"Network Address\" or clear \"Create Subnet\" checkbox." +msgstr "" + +#: dashboards/nova/networks/workflows.py:93 +#: dashboards/nova/networks/subnets/forms.py:69 +msgid "Network Address and IP version are inconsistent." +msgstr "" + +#: dashboards/nova/networks/workflows.py:97 +#: dashboards/nova/networks/subnets/forms.py:73 +#: dashboards/nova/networks/subnets/forms.py:118 +msgid "Gateway IP and IP version are inconsistent." +msgstr "" + +#: dashboards/nova/networks/workflows.py:111 +#, fuzzy +msgid "Create" +msgstr "作成" + +#: dashboards/nova/networks/workflows.py:112 +#, python-format +msgid "Created network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:113 +#, fuzzy, python-format +msgid "Unable to create network \"%s\"." +msgstr "%sをリボーク(無効化)できません。" + +#: dashboards/nova/networks/workflows.py:129 +#, fuzzy, python-format +msgid "Network \"%s\" was successfully created." +msgstr "キー%sは正常に削除されました。" + +#: dashboards/nova/networks/workflows.py:132 +#, fuzzy, python-format +msgid "Failed to create network \"%s\"." +msgstr "%sをリボーク(無効化)できません。" + +#: dashboards/nova/networks/workflows.py:151 +#, fuzzy, python-format +msgid "Subnet \"%s\" was successfully created." +msgstr "キー%sは正常に削除されました。" + +#: dashboards/nova/networks/workflows.py:154 +#, python-format +msgid "Failed to create subnet \"%(sub)s\" for network \"%(net)s\"." +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:35 +#, fuzzy +msgid "Attached" +msgstr "ボリュームを付与する。" + +#: dashboards/nova/networks/ports/tables.py:35 +#, fuzzy +msgid "Detached" +msgstr "ボリューム" + +#: dashboards/nova/networks/ports/tables.py:42 +#: dashboards/syspanel/networks/ports/tables.py:75 +msgid "Fixed IPs" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:43 +#: dashboards/syspanel/networks/ports/tables.py:76 +#, fuzzy +msgid "Device Attached" +msgstr "ユーザ名" + +#: dashboards/nova/networks/ports/tables.py:53 +#: dashboards/syspanel/networks/ports/tables.py:35 +#: dashboards/syspanel/networks/ports/tables.py:83 +msgid "Ports" +msgstr "" + +#: dashboards/nova/networks/ports/tabs.py:39 +#: dashboards/syspanel/networks/ports/tabs.py:39 +#, fuzzy +msgid "Unable to retrieve port details." +msgstr "ボリューム%sを作成できません。" + +#: dashboards/nova/networks/subnets/forms.py:34 +#: dashboards/syspanel/networks/tables.py:67 +#: dashboards/syspanel/networks/ports/forms.py:32 +#, fuzzy +msgid "Network Name" +msgstr "ユーザ名" + +#: dashboards/nova/networks/subnets/forms.py:38 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:13 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:13 +#: dashboards/syspanel/networks/ports/forms.py:35 +msgid "Network ID" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:53 +#: dashboards/nova/networks/subnets/forms.py:103 +#: dashboards/nova/networks/subnets/tables.py:73 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:19 +#: dashboards/syspanel/networks/subnets/tables.py:73 +msgid "Gateway IP" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:84 +#, fuzzy, python-format +msgid "Subnet %s was successfully created." +msgstr "キー%sは正常に削除されました。" + +#: dashboards/nova/networks/subnets/forms.py:89 +#, fuzzy, python-format +msgid "Failed to create subnet %s" +msgstr "ボリューム%sを作成できません。" + +#: dashboards/nova/networks/subnets/forms.py:130 +#, fuzzy, python-format +msgid "Subnet %s was successfully updated." +msgstr "キー%sは正常に削除されました。" + +#: dashboards/nova/networks/subnets/forms.py:135 +#, fuzzy, python-format +msgid "Failed to update subnet %s" +msgstr "イメージ%sを更新できません。" + +#: dashboards/nova/networks/subnets/tables.py:31 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:6 +#: dashboards/syspanel/networks/subnets/tables.py:31 +msgid "Subnet" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:32 +#: dashboards/nova/networks/subnets/tables.py:77 +#: dashboards/syspanel/networks/subnets/tables.py:32 +#: dashboards/syspanel/networks/subnets/tables.py:80 +msgid "Subnets" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:38 +#: dashboards/syspanel/networks/ports/tables.py:41 +#: dashboards/syspanel/networks/subnets/tables.py:38 +#, python-format +msgid "Failed to delete subnet %s" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:59 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:7 +#: dashboards/syspanel/networks/subnets/tables.py:59 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:7 +#, fuzzy +msgid "Edit Subnet" +msgstr "ユーザ資格の編集" + +#: dashboards/nova/networks/subnets/tabs.py:41 +#, fuzzy +msgid "Unable to retrieve subnet details." +msgstr "%sをリボーク(無効化)できません。" + +#: dashboards/nova/networks/subnets/views.py:52 +#: dashboards/syspanel/networks/ports/views.py:48 +#: dashboards/syspanel/networks/subnets/views.py:47 +#, fuzzy +msgid "Unable to retrieve network." +msgstr "%sをリボーク(無効化)できません。" + +#: dashboards/nova/networks/subnets/views.py:84 +#: dashboards/syspanel/networks/subnets/views.py:80 +#, fuzzy +msgid "Unable to retrieve subnet details" +msgstr "%sをリボーク(無効化)できません。" + +#: dashboards/nova/networks/templates/networks/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/_create.html:18 +msgid "Select a name for your network." +msgstr "" + +#: dashboards/nova/networks/templates/networks/_detail_overview.html:3 +#, fuzzy +msgid "Network Overview" +msgstr "概要" + +#: dashboards/nova/networks/templates/networks/_update.html:17 +#: dashboards/syspanel/networks/templates/networks/_update.html:17 +msgid "You may update the editable properties of your network here." +msgstr "" + +#: dashboards/nova/networks/templates/networks/detail.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/index.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/index.html:6 +#, fuzzy +msgid "Network Detail" +msgstr "インスタンスタイプ" + +#: dashboards/nova/networks/templates/networks/detail.html:6 +#, fuzzy +msgid "Network Detail: " +msgstr "インスタンスタイプ" + +#: dashboards/nova/networks/templates/networks/update.html:3 +#: dashboards/nova/networks/templates/networks/update.html:6 +#: dashboards/syspanel/networks/templates/networks/update.html:3 +#: dashboards/syspanel/networks/templates/networks/update.html:6 +#, fuzzy +msgid "Update Network" +msgstr "イメージを更新" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:3 +#, fuzzy +msgid "Port Overview" +msgstr "概要" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:6 +#: dashboards/syspanel/networks/ports/tables.py:34 +msgid "Port" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:17 +msgid "Fixed IP" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:21 +#, fuzzy +msgid "IP address:" +msgstr "プロジェクトを削除" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:22 +msgid "Subnet ID" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:28 +msgid "Mac Address" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:34 +#: dashboards/syspanel/networks/ports/forms.py:41 +#: dashboards/syspanel/networks/ports/forms.py:73 +#, fuzzy +msgid "Device ID" +msgstr "ユーザ名" + +#: dashboards/nova/networks/templates/networks/ports/detail.html:3 +#: dashboards/nova/networks/templates/networks/ports/detail.html:6 +#, fuzzy +msgid "Port Detail" +msgstr "インスタンスタイプ" + +#: dashboards/nova/networks/templates/networks/subnets/_create.html:18 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:18 +msgid "" +"You can create a subnet for the network. Any network address can be " +"specified unless the network address does not overlap other subnets in the " +"network." +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:3 +#, fuzzy +msgid "Subnet Overview" +msgstr "概要" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:17 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:16 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:16 +msgid "IP version" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:21 +msgid "IP allocation pool" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:24 +msgid "Start" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:25 +msgid " - End" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_update.html:26 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:26 +msgid "You may update the editable properties of your subnet here." +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/detail.html:3 +#: dashboards/nova/networks/templates/networks/subnets/detail.html:6 +#, fuzzy +msgid "Subnet Detail" +msgstr "ボリューム" + +#: dashboards/nova/networks/templates/networks/subnets/update.html:3 +#: dashboards/nova/networks/templates/networks/subnets/update.html:6 +#: dashboards/syspanel/networks/templates/networks/subnets/update.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/update.html:6 +#, fuzzy +msgid "Update Subnet" +msgstr "インスタンスを更新" + #: dashboards/nova/templates/nova/_warning.html:6 msgid "You currently have the power to damage your OpenStack cloud..." msgstr "" @@ -1891,55 +2473,93 @@ msgstr "" msgid "Learn More" msgstr "" -#: dashboards/nova/volumes/forms.py:40 +#: dashboards/nova/volumes/forms.py:26 +#, fuzzy +msgid "Volume Name" +msgstr "ボリューム" + +#: dashboards/nova/volumes/forms.py:29 +msgid "Size (GB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:30 +msgid "Use snapshot as a source" +msgstr "" + +#: dashboards/nova/volumes/forms.py:49 +#, python-format +msgid "Volume size must be equal to or greater than the snapshot size (%sGB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:54 +#, fuzzy +msgid "Unable to load the specified snapshot." +msgstr "キー%sを作成できません。" + +#: dashboards/nova/volumes/forms.py:59 +#, fuzzy +msgid "Choose a snapshot" +msgstr "スナップショット" + +#: dashboards/nova/volumes/forms.py:83 +#, python-format +msgid "The volume size cannot be less than the snapshot size (%sGB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:92 #, python-format msgid "" "A volume of %(req)iGB cannot be created as you only have %(avail)iGB of your " "quota available." msgstr "" -#: dashboards/nova/volumes/forms.py:47 +#: dashboards/nova/volumes/forms.py:99 msgid "You are already using all of your available volumes." msgstr "" -#: dashboards/nova/volumes/forms.py:60 +#: dashboards/nova/volumes/forms.py:115 #, fuzzy msgid "Unable to create volume." msgstr "ボリューム%sを作成できません。" -#: dashboards/nova/volumes/forms.py:67 +#: dashboards/nova/volumes/forms.py:123 +#, fuzzy +msgid "Attach to Instance" +msgstr "イメージを起動します。" + +#: dashboards/nova/volumes/forms.py:124 msgid "Select an instance to attach to." msgstr "" -#: dashboards/nova/volumes/forms.py:100 +#: dashboards/nova/volumes/forms.py:168 msgid "Unknown instance (None)" msgstr "" -#: dashboards/nova/volumes/forms.py:111 +#: dashboards/nova/volumes/forms.py:179 #, python-format msgid "Attaching volume %(vol)s to instance %(inst)s on %(dev)s." msgstr "" -#: dashboards/nova/volumes/forms.py:118 +#: dashboards/nova/volumes/forms.py:188 #, fuzzy msgid "Unable to attach volume." msgstr "ボリューム%sを付与できません。" -#: dashboards/nova/volumes/forms.py:142 +#: dashboards/nova/volumes/forms.py:212 #, fuzzy, python-format msgid "Creating volume snapshot \"%s\"" msgstr "ユーザ%sを作成中..." -#: dashboards/nova/volumes/forms.py:146 +#: dashboards/nova/volumes/forms.py:218 #, fuzzy msgid "Unable to create volume snapshot." msgstr "ボリューム%sを作成できません。" #: dashboards/nova/volumes/panel.py:24 dashboards/nova/volumes/tables.py:37 -#: dashboards/nova/volumes/tables.py:160 dashboards/nova/volumes/tables.py:172 +#: dashboards/nova/volumes/tables.py:162 dashboards/nova/volumes/tables.py:174 #: dashboards/nova/volumes/templates/volumes/index.html:3 #: dashboards/nova/volumes/templates/volumes/index.html:6 -#: dashboards/syspanel/projects/forms.py:116 +#: dashboards/syspanel/projects/workflows.py:39 #: dashboards/syspanel/volumes/panel.py:9 #: dashboards/syspanel/volumes/tables.py:15 #: dashboards/syspanel/volumes/templates/volumes/index.html:3 @@ -1947,13 +2567,6 @@ msgstr "ボリューム%sを作成できません。" msgid "Volumes" msgstr "ボリューム" -#: dashboards/nova/volumes/tables.py:50 -#: dashboards/nova/volumes/templates/volumes/_create.html:8 -#: dashboards/nova/volumes/templates/volumes/_create.html:55 -#, fuzzy -msgid "Create Volume" -msgstr "作成" - #: dashboards/nova/volumes/tables.py:57 #, fuzzy msgid "Edit Attachments" @@ -1964,7 +2577,7 @@ msgstr "ボリュームを付与する。" msgid "%sGB" msgstr "" -#: dashboards/nova/volumes/tables.py:97 +#: dashboards/nova/volumes/tables.py:97 dashboards/nova/volumes/views.py:140 #, fuzzy msgid "Unable to retrieve attachment information." msgstr "イメージ%sの登録削除ができませんでした。" @@ -1974,16 +2587,16 @@ msgstr "イメージ%sの登録削除ができませんでした。" msgid "Attached to %(instance)s on %(dev)s" msgstr "イメージを起動します。" -#: dashboards/nova/volumes/tables.py:169 +#: dashboards/nova/volumes/tables.py:171 msgid "Detach" msgstr "" -#: dashboards/nova/volumes/tables.py:170 +#: dashboards/nova/volumes/tables.py:172 #, fuzzy msgid "Detaching" msgstr "ボリューム" -#: dashboards/nova/volumes/tables.py:205 +#: dashboards/nova/volumes/tables.py:207 #, python-format msgid "%(dev)s on instance %(instance_name)s" msgstr "" @@ -1993,17 +2606,17 @@ msgstr "" msgid "Unable to retrieve volume details." msgstr "ボリューム%sを作成できません。" -#: dashboards/nova/volumes/views.py:50 +#: dashboards/nova/volumes/views.py:52 #, fuzzy msgid "Unable to retrieve volume list." msgstr "%sをリボーク(無効化)できません。" -#: dashboards/nova/volumes/views.py:56 +#: dashboards/nova/volumes/views.py:58 #, fuzzy msgid "Unable to retrieve volume/instance attachment information" msgstr "%sをリボーク(無効化)できません。" -#: dashboards/nova/volumes/views.py:114 dashboards/nova/volumes/views.py:124 +#: dashboards/nova/volumes/views.py:121 dashboards/nova/volumes/views.py:131 #, fuzzy msgid "Unable to retrieve volume information." msgstr "イメージ%sの登録削除ができませんでした。" @@ -2013,12 +2626,12 @@ msgstr "イメージ%sの登録削除ができませんでした。" msgid "Manage Volume Attachments" msgstr "" -#: dashboards/nova/volumes/templates/volumes/_attach.html:12 +#: dashboards/nova/volumes/templates/volumes/_attach.html:13 #, fuzzy msgid "Attach To Instance" msgstr "イメージを起動します。" -#: dashboards/nova/volumes/templates/volumes/_attach.html:19 +#: dashboards/nova/volumes/templates/volumes/_attach.html:22 #, fuzzy msgid "Attach Volume" msgstr "ボリュームを付与する。" @@ -2084,7 +2697,7 @@ msgstr "ボリューム" msgid "Volume Detail" msgstr "ボリューム" -#: dashboards/settings/dashboard.py:24 +#: dashboards/settings/dashboard.py:24 templates/_header.html:4 #, fuzzy msgid "Settings" msgstr "ダッシュボードの設定" @@ -2094,17 +2707,17 @@ msgstr "ダッシュボードの設定" msgid "Select a Project" msgstr "プロジェクトを削除" -#: dashboards/settings/ec2/forms.py:51 +#: dashboards/settings/ec2/forms.py:45 #, fuzzy msgid "Unable to retrieve tenant list." msgstr "キー%sを作成できません。" -#: dashboards/settings/ec2/forms.py:93 +#: dashboards/settings/ec2/forms.py:87 #, fuzzy msgid "Unable to fetch EC2 credentials." msgstr "X509資格情報生成する。" -#: dashboards/settings/ec2/forms.py:106 +#: dashboards/settings/ec2/forms.py:100 #, fuzzy, python-format msgid "Error writing zipfile: %(exc)s" msgstr "ユーザ%sを作成中..." @@ -2129,7 +2742,7 @@ msgid "" "private key and certificate." msgstr "" -#: dashboards/settings/project/forms.py:76 +#: dashboards/settings/project/forms.py:70 #, fuzzy, python-format msgid "Error Downloading RC File: %s" msgstr "イメージ%sを更新できません。" @@ -2188,7 +2801,7 @@ msgid "From here you can modify dashboard settings for your user." msgstr "ここより、ユーザとその資格を管理できます。" #: dashboards/settings/user/templates/user/_settings.html:23 -#: workflows/base.py:510 +#: dashboards/syspanel/projects/workflows.py:243 workflows/base.py:538 msgid "Save" msgstr "" @@ -2217,14 +2830,19 @@ msgstr "" msgid "Ephemeral Disk GB" msgstr "" -#: dashboards/syspanel/flavors/forms.py:51 +#: dashboards/syspanel/flavors/forms.py:52 #, fuzzy, python-format msgid "%s was successfully added to flavors." msgstr "キー%sは正常に削除されました。" +#: dashboards/syspanel/flavors/forms.py:56 +#, fuzzy +msgid "Unable to create flavor" +msgstr "ボリューム%sを作成できません。" + #: dashboards/syspanel/flavors/panel.py:28 #: dashboards/syspanel/flavors/tables.py:14 -#: dashboards/syspanel/flavors/tables.py:38 +#: dashboards/syspanel/flavors/tables.py:44 #: dashboards/syspanel/flavors/templates/flavors/index.html:8 msgid "Flavors" msgstr "インスタンスタイプ" @@ -2236,23 +2854,23 @@ msgstr "インスタンスタイプ" msgid "Create Flavor" msgstr "" -#: dashboards/syspanel/flavors/tables.py:29 +#: dashboards/syspanel/flavors/tables.py:28 +#, python-format +msgid "%sMB" +msgstr "" + +#: dashboards/syspanel/flavors/tables.py:33 #, fuzzy msgid "Flavor Name" msgstr "インスタンスタイプ" -#: dashboards/syspanel/flavors/tables.py:31 +#: dashboards/syspanel/flavors/tables.py:36 msgid "Memory" msgstr "" #: dashboards/syspanel/flavors/views.py:48 #, fuzzy -msgid "Unauthorized." -msgstr "%sを認証できません。" - -#: dashboards/syspanel/flavors/views.py:53 -#, fuzzy, python-format -msgid "Unable to get flavor list: %s" +msgid "Unable to retrieve flavor list." msgstr "%sをリボーク(無効化)できません。" #: dashboards/syspanel/flavors/templates/flavors/_create.html:18 @@ -2260,12 +2878,12 @@ msgstr "%sをリボーク(無効化)できません。" msgid "From here you can define the sizing of a new flavor." msgstr "ここより、ユーザとその資格を管理できます。" -#: dashboards/syspanel/images/views.py:52 +#: dashboards/syspanel/images/views.py:53 #, fuzzy msgid "Unable to retrieve image list." msgstr "キー%sを作成できません。" -#: dashboards/syspanel/instances/tables.py:62 usage/tables.py:29 +#: dashboards/syspanel/instances/tables.py:62 usage/tables.py:30 #, fuzzy msgid "Project Name" msgstr "ユーザ名" @@ -2276,6 +2894,7 @@ msgid "Host" msgstr "" #: dashboards/syspanel/instances/views.py:72 +#: dashboards/syspanel/networks/views.py:48 #, fuzzy msgid "Unable to retrieve instance tenant information." msgstr "%sをリボーク(無効化)できません。" @@ -2285,6 +2904,83 @@ msgstr "%sをリボーク(無効化)できません。" msgid "All Instances" msgstr "インスタンス" +#: dashboards/syspanel/networks/forms.py:45 +#: dashboards/syspanel/users/forms.py:41 +#, fuzzy +msgid "Select a project" +msgstr "プロジェクトを削除" + +#: dashboards/syspanel/networks/forms.py:56 +#, fuzzy, python-format +msgid "Network %s was successfully created." +msgstr "キー%sは正常に削除されました。" + +#: dashboards/syspanel/networks/forms.py:62 +#, fuzzy, python-format +msgid "Failed to create network %s" +msgstr "%sをリボーク(無効化)できません。" + +#: dashboards/syspanel/networks/ports/forms.py:53 +#, fuzzy, python-format +msgid "Port %s was successfully created." +msgstr "キー%sは正常に削除されました。" + +#: dashboards/syspanel/networks/ports/forms.py:58 +#, fuzzy, python-format +msgid "Failed to create a port for network %s" +msgstr "キー%sを作成できません。" + +#: dashboards/syspanel/networks/ports/forms.py:83 +#, fuzzy, python-format +msgid "Port %s was successfully updated." +msgstr "キー%sは正常に削除されました。" + +#: dashboards/syspanel/networks/ports/forms.py:88 +#, fuzzy, python-format +msgid "Failed to update port %s" +msgstr "イメージ%sを更新できません。" + +#: dashboards/syspanel/networks/ports/tables.py:51 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/ports/create.html:3 +#: dashboards/syspanel/networks/templates/networks/ports/create.html:6 +#, fuzzy +msgid "Create Port" +msgstr "プロジェクトを削除" + +#: dashboards/syspanel/networks/ports/tables.py:62 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:7 +#, fuzzy +msgid "Edit Port" +msgstr "プロジェクトを削除" + +#: dashboards/syspanel/networks/ports/views.py:81 +#, fuzzy +msgid "Unable to retrieve port details" +msgstr "ボリューム%sを作成できません。" + +#: dashboards/syspanel/networks/subnets/forms.py:42 +#, fuzzy, python-format +msgid "Failed to retrieve network %s for a subnet" +msgstr "%sをリボーク(無効化)できません。" + +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:18 +msgid "" +"You can create a port for the network. If you specify device ID to be " +"attached, the device specified will be attached to the port created." +msgstr "" + +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:22 +msgid "You may update the editable properties of your port here." +msgstr "" + +#: dashboards/syspanel/networks/templates/networks/ports/update.html:3 +#: dashboards/syspanel/networks/templates/networks/ports/update.html:6 +#, fuzzy +msgid "Update Port" +msgstr "プロジェクトを削除" + #: dashboards/syspanel/overview/templates/overview/usage.html:3 #, fuzzy msgid "Usage Overview" @@ -2294,97 +2990,15 @@ msgstr "概要" msgid "Monitoring" msgstr "" -#: dashboards/syspanel/projects/forms.py:38 -#: dashboards/syspanel/users/forms.py:75 -msgid "Role" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:52 -#, fuzzy -msgid "Successfully added user to project." -msgstr "プロジェクト%(proj)sを正常に修正しました。" - -#: dashboards/syspanel/projects/forms.py:54 -#, fuzzy -msgid "Unable to add user to project." -msgstr "イメージ%sを更新できません。" - -#: dashboards/syspanel/projects/forms.py:64 -#: dashboards/syspanel/projects/forms.py:89 -#: dashboards/syspanel/projects/tables.py:78 -#: dashboards/syspanel/services/tables.py:42 -#: dashboards/syspanel/users/tables.py:38 -#: dashboards/syspanel/users/tables.py:112 -msgid "Enabled" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:75 -#, fuzzy, python-format -msgid "%s was successfully created." -msgstr "キー%sは正常に削除されました。" - -#: dashboards/syspanel/projects/forms.py:78 -#, fuzzy -msgid "Unable to create project." -msgstr "キー%sを作成できません。" - -#: dashboards/syspanel/projects/forms.py:100 -#, fuzzy, python-format -msgid "%s was successfully updated." -msgstr "キー%sは正常に削除されました。" - -#: dashboards/syspanel/projects/forms.py:103 -#, fuzzy -msgid "Unable to update project." -msgstr "イメージ%sを更新できません。" - -#: dashboards/syspanel/projects/forms.py:108 -msgid "ID (name)" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:110 -msgid "Metadata Items" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:111 -msgid "Injected Files" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:112 -msgid "Injected File Content Bytes" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:117 -msgid "Gigabytes" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:118 -msgid "RAM (in MB)" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:136 -#, fuzzy, python-format -msgid "Quotas for %s were successfully updated." -msgstr "セキュリティグループ%sが正常に削除されました。" - -#: dashboards/syspanel/projects/forms.py:139 -#, fuzzy -msgid "Unable to update quotas." -msgstr "イメージ%sを更新できません。" - #: dashboards/syspanel/projects/panel.py:28 -#: dashboards/syspanel/projects/tables.py:53 -#: dashboards/syspanel/projects/tables.py:82 +#: dashboards/syspanel/projects/tables.py:66 +#: dashboards/syspanel/projects/tables.py:95 #: dashboards/syspanel/projects/templates/projects/index.html:8 #, fuzzy msgid "Projects" msgstr "プロジェクトを削除" -#: dashboards/syspanel/projects/tables.py:18 -msgid "Modify Quotas" -msgstr "" - -#: dashboards/syspanel/projects/tables.py:25 +#: dashboards/syspanel/projects/tables.py:19 msgid "Modify Users" msgstr "" @@ -2393,76 +3007,210 @@ msgid "View Usage" msgstr "" #: dashboards/syspanel/projects/tables.py:39 +#: dashboards/syspanel/projects/templates/projects/_create.html:8 +#: dashboards/syspanel/projects/templates/projects/_create.html:23 +#: dashboards/syspanel/projects/templates/projects/create.html:6 +#, fuzzy +msgid "Create Project" +msgstr "プロジェクトを削除" + +#: dashboards/syspanel/projects/tables.py:46 +#: dashboards/syspanel/projects/workflows.py:242 +#: dashboards/syspanel/projects/templates/projects/update.html:3 +#: dashboards/syspanel/projects/templates/projects/update.html:6 #, fuzzy msgid "Edit Project" msgstr "プロジェクトを削除" -#: dashboards/syspanel/projects/tables.py:46 -#, fuzzy -msgid "Create New Project" -msgstr "新規ボリュームを作成する。" +#: dashboards/syspanel/projects/tables.py:91 +#: dashboards/syspanel/projects/workflows.py:71 +#: dashboards/syspanel/projects/workflows.py:134 +#: dashboards/syspanel/services/tables.py:42 +#: dashboards/syspanel/users/tables.py:39 +#: dashboards/syspanel/users/tables.py:114 +msgid "Enabled" +msgstr "" -#: dashboards/syspanel/projects/tables.py:90 +#: dashboards/syspanel/projects/tables.py:104 #, fuzzy msgid "Remove" msgstr "イメージを削除する" -#: dashboards/syspanel/projects/tables.py:91 +#: dashboards/syspanel/projects/tables.py:105 #, fuzzy msgid "Removed" msgstr "イメージを削除する" -#: dashboards/syspanel/projects/tables.py:93 +#: dashboards/syspanel/projects/tables.py:107 #: dashboards/syspanel/users/panel.py:28 -#: dashboards/syspanel/users/tables.py:40 -#: dashboards/syspanel/users/tables.py:74 -#: dashboards/syspanel/users/tables.py:119 +#: dashboards/syspanel/users/tables.py:41 +#: dashboards/syspanel/users/tables.py:75 +#: dashboards/syspanel/users/tables.py:121 #: dashboards/syspanel/users/templates/users/index.html:8 msgid "Users" msgstr "ユーザー" -#: dashboards/syspanel/projects/tables.py:111 +#: dashboards/syspanel/projects/tables.py:125 #, fuzzy msgid "Unable to retrieve role information." msgstr "イメージ%sの登録削除ができませんでした。" -#: dashboards/syspanel/projects/tables.py:116 +#: dashboards/syspanel/projects/tables.py:130 msgid "Roles" msgstr "" -#: dashboards/syspanel/projects/tables.py:120 +#: dashboards/syspanel/projects/tables.py:134 #, fuzzy msgid "Users For Project" msgstr "プロジェクトからユーザを削除します。" -#: dashboards/syspanel/projects/tables.py:128 +#: dashboards/syspanel/projects/tables.py:142 msgid "Add To Project" msgstr "" -#: dashboards/syspanel/projects/tables.py:140 +#: dashboards/syspanel/projects/tables.py:154 #, fuzzy msgid "Add New Users" msgstr "新規ボリュームを作成する。" -#: dashboards/syspanel/projects/views.py:49 +#: dashboards/syspanel/projects/views.py:67 +#, fuzzy +msgid "Unable to retrieve project information." +msgstr "イメージ%sの登録削除ができませんでした。" + +#: dashboards/syspanel/projects/views.py:87 #, fuzzy msgid "Unable to retrieve project list." msgstr "キー%sを作成できません。" -#: dashboards/syspanel/projects/views.py:71 -#, fuzzy -msgid "Unable to retrieve project." -msgstr "キー%sを作成できません。" - -#: dashboards/syspanel/projects/views.py:100 +#: dashboards/syspanel/projects/views.py:110 #, fuzzy msgid "Unable to retrieve users." msgstr "%sをリボーク(無効化)できません。" -#: dashboards/syspanel/projects/views.py:143 +#: dashboards/syspanel/projects/views.py:154 #, fuzzy -msgid "Unable to retrieve roles." -msgstr "ボリューム%sを作成できません。" +msgid "Unable to retrieve default quota values." +msgstr "キー%sを作成できません。" + +#: dashboards/syspanel/projects/views.py:182 +#, fuzzy +msgid "Unable to retrieve project details." +msgstr "キー%sを作成できません。" + +#: dashboards/syspanel/projects/workflows.py:32 +msgid "Injected File Content Bytes" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:33 +msgid "Metadata Items" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:36 +msgid "Injected Files" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:40 +msgid "Gigabytes" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:41 +msgid "RAM (MB)" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:45 +#, fuzzy +msgid "Quota" +msgstr "クォータ" + +#: dashboards/syspanel/projects/workflows.py:47 +#, fuzzy +msgid "From here you can set quotas (max limits) for the project." +msgstr "ここで、複数のユーザ資格を編集できます。" + +#: dashboards/syspanel/projects/workflows.py:76 +#: dashboards/syspanel/projects/workflows.py:137 +#, fuzzy +msgid "Project Info" +msgstr "プロジェクトを削除" + +#: dashboards/syspanel/projects/workflows.py:77 +#: dashboards/syspanel/projects/templates/projects/_create.html:18 +#, fuzzy +msgid "From here you can create a new project to organize users." +msgstr "ここで、複数のユーザ資格を編集できます。" + +#: dashboards/syspanel/projects/workflows.py:91 +#, fuzzy +msgid "Add Project" +msgstr "プロジェクトを削除" + +#: dashboards/syspanel/projects/workflows.py:92 +msgid "Finish" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:93 +#, fuzzy, python-format +msgid "Created new project \"%s\"." +msgstr "新規ボリュームを作成する。" + +#: dashboards/syspanel/projects/workflows.py:94 +#, fuzzy, python-format +msgid "Unable to create project \"%s\"." +msgstr "キー%sを作成できません。" + +#: dashboards/syspanel/projects/workflows.py:129 +#, fuzzy +msgid "Unable to set project quotas." +msgstr "キー%sを作成できません。" + +#: dashboards/syspanel/projects/workflows.py:139 +#, fuzzy +msgid "From here you can edit the project details." +msgstr "ここで、複数のユーザ資格を編集できます。" + +#: dashboards/syspanel/projects/workflows.py:161 +#, fuzzy +msgid "Unable to retrieve user list. Please try again later." +msgstr "%sをリボーク(無効化)できません。" + +#: dashboards/syspanel/projects/workflows.py:167 +#, fuzzy +msgid "Create New User" +msgstr "新規ボリュームを作成する。" + +#: dashboards/syspanel/projects/workflows.py:217 +#: dashboards/syspanel/projects/templates/projects/_update_members.html:16 +#, fuzzy +msgid "Project Members" +msgstr "ユーザ名" + +#: dashboards/syspanel/projects/workflows.py:231 +#: dashboards/syspanel/users/views.py:46 +#, fuzzy +msgid "Unable to retrieve user list." +msgstr "%sをリボーク(無効化)できません。" + +#: dashboards/syspanel/projects/workflows.py:244 +#, python-format +msgid "Modified project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:245 +#, fuzzy, python-format +msgid "Unable to modify project \"%s\"." +msgstr "イメージ%sを更新できません。" + +#: dashboards/syspanel/projects/workflows.py:315 +#, python-format +msgid "Failed to modify %s project members and update project quotas." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:336 +msgid "" +"Modified project information and members, but unable to modify project " +"quotas." +msgstr "" #: dashboards/syspanel/projects/templates/projects/_add_user.html:8 #: dashboards/syspanel/projects/templates/projects/add_user.html:3 @@ -2479,18 +3227,24 @@ msgstr "" msgid "Add" msgstr "" -#: dashboards/syspanel/projects/templates/projects/_create.html:8 -#: dashboards/syspanel/projects/templates/projects/_create.html:23 -#: dashboards/syspanel/projects/templates/projects/create.html:6 -#, fuzzy -msgid "Create Project" -msgstr "プロジェクトを削除" +#: dashboards/syspanel/projects/templates/projects/_create_user.html:7 +#, python-format +msgid "Create User for project '%(tenant_name)s'." +msgstr "" -#: dashboards/syspanel/projects/templates/projects/_create.html:18 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:18 #, fuzzy -msgid "From here you can create a new project to organize users." +msgid "From here you can create a new user to add to this project." msgstr "ここで、複数のユーザ資格を編集できます。" +#: dashboards/syspanel/projects/templates/projects/_create_user.html:23 +#: dashboards/syspanel/users/tables.py:19 +#: dashboards/syspanel/users/templates/users/_create.html:7 +#: dashboards/syspanel/users/templates/users/_create.html:22 +#: dashboards/syspanel/users/templates/users/create.html:7 +msgid "Create User" +msgstr "" + #: dashboards/syspanel/projects/templates/projects/_quotas.html:7 #: dashboards/syspanel/projects/templates/projects/_quotas.html:22 #, fuzzy @@ -2506,7 +3260,6 @@ msgstr "ここで、複数のユーザ資格を編集できます。" #: dashboards/syspanel/projects/templates/projects/_update.html:8 #: dashboards/syspanel/projects/templates/projects/_update.html:23 #: dashboards/syspanel/projects/templates/projects/quotas.html:6 -#: dashboards/syspanel/projects/templates/projects/update.html:6 #, fuzzy msgid "Update Project" msgstr "プロジェクトを削除" @@ -2516,6 +3269,28 @@ msgstr "プロジェクトを削除" msgid "From here you can edit a project." msgstr "ここで、複数のユーザ資格を編集できます。" +#: dashboards/syspanel/projects/templates/projects/_update_members.html:7 +msgid "" +"From here you can add and remove members to this project from the list of " +"all available users." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/_update_members.html:10 +#, fuzzy +msgid "All Users" +msgstr "ユーザー" + +#: dashboards/syspanel/projects/templates/projects/_update_members.html:25 +#: dashboards/syspanel/projects/templates/projects/_update_members.html:32 +msgid "No users found." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/create_user.html:3 +#: dashboards/syspanel/projects/templates/projects/create_user.html:6 +#, fuzzy +msgid "Add New User" +msgstr "新規ボリュームを作成する。" + #: dashboards/syspanel/projects/templates/projects/usage.html:3 msgid "Project Usage Overview" msgstr "" @@ -2542,7 +3317,7 @@ msgstr "" msgid "Limit" msgstr "" -#: dashboards/syspanel/quotas/views.py:44 +#: dashboards/syspanel/quotas/views.py:45 #, fuzzy msgid "Unable to get quota info." msgstr "イメージ%sを公開できません。" @@ -2565,126 +3340,118 @@ msgstr "" msgid "Service" msgstr "" -#: dashboards/syspanel/users/forms.py:42 -#, fuzzy -msgid "Select a project" -msgstr "プロジェクトを削除" - -#: dashboards/syspanel/users/forms.py:58 +#: dashboards/syspanel/users/forms.py:53 msgid "Passwords do not match." msgstr "" -#: dashboards/syspanel/users/forms.py:63 +#: dashboards/syspanel/users/forms.py:61 #: dashboards/syspanel/users/forms.py:114 -#: dashboards/syspanel/users/tables.py:106 +#: dashboards/syspanel/users/tables.py:107 msgid "User Name" msgstr "ユーザ名" -#: dashboards/syspanel/users/forms.py:64 +#: dashboards/syspanel/users/forms.py:62 #: dashboards/syspanel/users/forms.py:115 -#: dashboards/syspanel/users/tables.py:107 +#: dashboards/syspanel/users/tables.py:108 msgid "Email" msgstr "" -#: dashboards/syspanel/users/forms.py:66 +#: dashboards/syspanel/users/forms.py:64 #: dashboards/syspanel/users/forms.py:116 msgid "Password" msgstr "パスワード" -#: dashboards/syspanel/users/forms.py:71 +#: dashboards/syspanel/users/forms.py:69 #: dashboards/syspanel/users/forms.py:123 #, fuzzy msgid "Confirm Password" msgstr "パスワード" -#: dashboards/syspanel/users/forms.py:74 +#: dashboards/syspanel/users/forms.py:72 #: dashboards/syspanel/users/forms.py:126 #, fuzzy msgid "Primary Project" msgstr "テナント" -#: dashboards/syspanel/users/forms.py:96 +#: dashboards/syspanel/users/forms.py:74 +msgid "Role" +msgstr "" + +#: dashboards/syspanel/users/forms.py:95 #, fuzzy, python-format msgid "User \"%s\" was successfully created." msgstr "キー%sは正常に削除されました。" #: dashboards/syspanel/users/forms.py:105 #, fuzzy -msgid "Unable to add user to primary project." +msgid "Unable to add userto primary project." msgstr "イメージ%sを更新できません。" -#: dashboards/syspanel/users/forms.py:108 +#: dashboards/syspanel/users/forms.py:109 #, fuzzy msgid "Unable to create user." msgstr "ボリューム%sを作成できません。" -#: dashboards/syspanel/users/forms.py:151 +#: dashboards/syspanel/users/forms.py:150 msgid "name" msgstr "" -#: dashboards/syspanel/users/forms.py:151 +#: dashboards/syspanel/users/forms.py:150 msgid "email" msgstr "" -#: dashboards/syspanel/users/forms.py:160 +#: dashboards/syspanel/users/forms.py:159 #, fuzzy msgid "primary project" msgstr "テナント" #: dashboards/syspanel/users/forms.py:172 +#, python-format +msgid "The user %s has no role defined for" +msgstr "" + +#: dashboards/syspanel/users/forms.py:180 #, fuzzy msgid "password" msgstr "パスワード" -#: dashboards/syspanel/users/forms.py:181 +#: dashboards/syspanel/users/forms.py:189 #, fuzzy msgid "User has been updated successfully." msgstr "ボリューム %(id)s %(name)s は正常に作成されました。" -#: dashboards/syspanel/users/forms.py:185 +#: dashboards/syspanel/users/forms.py:193 #, fuzzy, python-format msgid "Unable to update %(attributes)s for the user." msgstr "キー%sを削除できません。" -#: dashboards/syspanel/users/tables.py:18 -#: dashboards/syspanel/users/templates/users/_create.html:7 -#: dashboards/syspanel/users/templates/users/_create.html:22 -#: dashboards/syspanel/users/templates/users/create.html:7 -msgid "Create User" -msgstr "" - -#: dashboards/syspanel/users/tables.py:37 +#: dashboards/syspanel/users/tables.py:38 msgid "Enable" msgstr "" -#: dashboards/syspanel/users/tables.py:37 +#: dashboards/syspanel/users/tables.py:38 msgid "Disable" msgstr "" -#: dashboards/syspanel/users/tables.py:38 +#: dashboards/syspanel/users/tables.py:39 msgid "Disabled" msgstr "" -#: dashboards/syspanel/users/tables.py:61 +#: dashboards/syspanel/users/tables.py:62 msgid "You cannot disable the user you are currently logged in as." msgstr "" -#: dashboards/syspanel/users/tables.py:111 +#: dashboards/syspanel/users/tables.py:113 #, fuzzy msgid "User ID" msgstr "ユーザ名" -#: dashboards/syspanel/users/views.py:46 -#, fuzzy -msgid "Unable to retrieve user list." -msgstr "%sをリボーク(無効化)できません。" - -#: dashboards/syspanel/users/views.py:67 +#: dashboards/syspanel/users/views.py:69 #, fuzzy msgid "Unable to update user." msgstr "イメージ%sを更新できません。" -#: dashboards/syspanel/users/views.py:93 +#: dashboards/syspanel/users/views.py:103 #, fuzzy msgid "Unable to retrieve user roles." msgstr "%sをリボーク(無効化)できません。" @@ -2707,56 +3474,84 @@ msgid "" "From here you can edit the user's details, including their default project." msgstr "ここで、複数のユーザ資格を編集できます。" -#: tables/actions.py:299 +#: tables/actions.py:338 msgid "Filter" msgstr "" -#: tables/actions.py:461 +#: tables/actions.py:502 +msgid "N/A" +msgstr "" + +#: tables/actions.py:526 #, python-format msgid "You do not have permission to %(action)s: %(objs)s" msgstr "" -#: tables/actions.py:467 +#: tables/actions.py:532 #, fuzzy, python-format msgid "Unable to %(action)s: %(objs)s" msgstr "キー%sを削除できません。" -#: tables/actions.py:473 +#: tables/actions.py:538 #, python-format msgid "%(action)s: %(objs)s" msgstr "" -#: tables/actions.py:483 +#: tables/actions.py:548 msgid "Delete" msgstr "削除" -#: tables/actions.py:484 +#: tables/actions.py:549 #, fuzzy msgid "Deleted" msgstr "削除" -#: tables/base.py:257 +#: tables/base.py:266 #, python-format msgid "The attribute %(attr)s doesn't exist on %(obj)s." msgstr "" -#: tables/base.py:743 +#: tables/base.py:819 msgid "Actions" msgstr "アクション" -#: tables/base.py:891 +#: tables/base.py:981 msgid "No items to display." msgstr "" -#: tables/base.py:908 +#: tables/base.py:998 #, python-format msgid "No match returned for the id \"%s\"." msgstr "" -#: tables/base.py:1015 +#: tables/base.py:1128 msgid "Please select a row before taking that action." msgstr "" +#: templates/_header.html:3 +msgid "Logged in as" +msgstr "" + +#: templates/_header.html:6 +msgid "Help" +msgstr "" + +#: templates/_header.html:8 +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 "" + #: templates/horizon/_messages.html:7 #, fuzzy msgid "Info: " @@ -2774,15 +3569,11 @@ msgstr "" msgid "Error: " msgstr "" -#: templates/horizon/client_side/_loading.html:9 -msgid "Loading…" -msgstr "" - -#: templates/horizon/common/_data_table.html:33 +#: templates/horizon/common/_data_table.html:36 msgid "Summary" msgstr "" -#: templates/horizon/common/_data_table.html:42 +#: templates/horizon/common/_data_table.html:45 #, python-format msgid "Displaying %(counter)s item" msgid_plural "Displaying %(counter)s items" @@ -2818,6 +3609,10 @@ msgstr "" msgid "This Month's GB-Hours" msgstr "" +#: templatetags/branding.py:35 +msgid "Horizon" +msgstr "" + #: templatetags/horizon.py:108 msgid "No Limit" msgstr "" @@ -2880,38 +3675,43 @@ msgstr "" msgid "Giant ants are attacking San Francisco!" msgstr "" -#: tests/table_tests.py:104 +#: tests/table_tests.py:106 msgid "Batch" msgstr "" -#: tests/table_tests.py:105 +#: tests/table_tests.py:107 msgid "Batched" msgstr "" -#: tests/table_tests.py:106 tests/table_tests.py:117 +#: tests/table_tests.py:108 tests/table_tests.py:119 msgid "Item" msgstr "" -#: tests/table_tests.py:107 tests/table_tests.py:118 +#: tests/table_tests.py:109 tests/table_tests.py:120 msgid "Items" msgstr "" -#: tests/table_tests.py:115 +#: tests/table_tests.py:117 msgid "Down" msgstr "" -#: tests/table_tests.py:115 +#: tests/table_tests.py:117 msgid "Up" msgstr "" -#: tests/table_tests.py:116 +#: tests/table_tests.py:118 msgid "Downed" msgstr "" -#: tests/table_tests.py:116 +#: tests/table_tests.py:118 msgid "Upped" msgstr "" +#: tests/table_tests.py:185 +#, fuzzy +msgid "No Actions Table" +msgstr "アクション" + #: tests/tabs_tests.py:36 msgid "Tab One" msgstr "" @@ -2936,7 +3736,7 @@ msgstr "" msgid "Recoverable Error Tab" msgstr "" -#: tests/testsettings.py:111 +#: tests/testsettings.py:118 msgid "Password must be between 8 and 18 characters." msgstr "" @@ -3004,31 +3804,31 @@ msgstr "" msgid "Download CSV Summary" msgstr "" -#: usage/tables.py:24 +#: usage/tables.py:25 msgid "VCPU Hours" msgstr "" -#: usage/tables.py:31 +#: usage/tables.py:32 msgid "Disk GB Hours" msgstr "" -#: usage/tables.py:39 usage/tables.py:67 +#: usage/tables.py:40 usage/tables.py:68 msgid "Usage Summary" msgstr "" -#: usage/tables.py:59 +#: usage/tables.py:60 msgid "Uptime" msgstr "" -#: utils/fields.py:43 +#: utils/fields.py:46 msgid "Incorrect format for IP address" msgstr "" -#: utils/fields.py:44 +#: utils/fields.py:47 msgid "Invalid version for IP address" msgstr "" -#: utils/fields.py:45 +#: utils/fields.py:48 msgid "Invalid subnet mask" msgstr "" @@ -3036,16 +3836,16 @@ msgstr "" msgid "Password is not accepted" msgstr "" -#: workflows/base.py:69 +#: workflows/base.py:70 msgid "Processing..." msgstr "" -#: workflows/base.py:511 +#: workflows/base.py:539 #, fuzzy, python-format msgid "%s completed successfully." msgstr "ボリューム %(id)s %(name)s は正常に作成されました。" -#: workflows/base.py:512 +#: workflows/base.py:540 #, python-format msgid "%s did not complete." msgstr "" diff --git a/horizon/locale/ja/LC_MESSAGES/djangojs.po b/horizon/locale/ja/LC_MESSAGES/djangojs.po new file mode 100644 index 000000000..7502d161c --- /dev/null +++ b/horizon/locale/ja/LC_MESSAGES/djangojs.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 "" diff --git a/horizon/locale/pl/LC_MESSAGES/django.po b/horizon/locale/pl/LC_MESSAGES/django.po index 72b8e58f7..9afc8255d 100644 --- a/horizon/locale/pl/LC_MESSAGES/django.po +++ b/horizon/locale/pl/LC_MESSAGES/django.po @@ -7,7 +7,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:47+0000\n" "PO-Revision-Date: 2011-09-24 14:41+0100\n" "Last-Translator: Tomasz 'Zen' Napierala \n" "Language-Team: Polish OpenStack translations team , 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 \n" +"Language-Team: LANGUAGE \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 "" diff --git a/horizon/locale/pt/LC_MESSAGES/django.po b/horizon/locale/pt/LC_MESSAGES/django.po index 6ab682283..0c3aa8765 100644 --- a/horizon/locale/pt/LC_MESSAGES/django.po +++ b/horizon/locale/pt/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: openstack-dashboard\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-07-09 02:28+0000\n" +"POT-Creation-Date: 2012-08-12 21:47+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -30,7 +30,7 @@ msgstr "" msgid "You are not authorized to access %s" msgstr "" -#: exceptions.py:299 +#: exceptions.py:270 msgid "Unauthorized. Please try logging in again." msgstr "" @@ -39,21 +39,21 @@ msgstr "" msgid "%(type)s (%(backend)s backend)" msgstr "" -#: api/nova.py:185 +#: api/nova.py:186 #, python-format msgid "ALLOW %(from)s:%(to)s from %(group)s" msgstr "" -#: api/nova.py:190 +#: api/nova.py:191 #, python-format msgid "ALLOW %(from)s:%(to)s from %(cidr)s" msgstr "" -#: api/nova.py:502 +#: api/nova.py:514 msgid "Unknown instance" msgstr "" -#: api/swift.py:155 +#: api/swift.py:154 msgid "Unicode is not currently supported for object copy." msgstr "" @@ -61,51 +61,52 @@ msgstr "" msgid "Manage Compute" msgstr "" -#: dashboards/nova/dashboard.py:34 +#: dashboards/nova/dashboard.py:35 msgid "Object Store" msgstr "" -#: dashboards/nova/dashboard.py:39 dashboards/nova/instances/workflows.py:32 -#: dashboards/syspanel/projects/tables.py:52 tests/workflows_tests.py:39 +#: dashboards/nova/dashboard.py:40 dashboards/nova/instances/workflows.py:37 +#: dashboards/syspanel/networks/forms.py:37 +#: dashboards/syspanel/networks/tables.py:66 +#: dashboards/syspanel/projects/tables.py:65 tests/workflows_tests.py:39 msgid "Project" msgstr "" #: dashboards/nova/access_and_security/panel.py:25 -#: dashboards/nova/instances/workflows.py:328 +#: dashboards/nova/instances/workflows.py:345 msgid "Access & Security" msgstr "" -#: dashboards/nova/access_and_security/views.py:51 +#: dashboards/nova/access_and_security/views.py:50 msgid "Unable to retrieve keypair list." msgstr "" -#: dashboards/nova/access_and_security/views.py:60 -#: dashboards/nova/access_and_security/security_groups/views.py:64 +#: dashboards/nova/access_and_security/views.py:59 +#: dashboards/nova/access_and_security/security_groups/views.py:72 msgid "Unable to retrieve security groups." msgstr "" -#: dashboards/nova/access_and_security/views.py:69 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:44 +#: dashboards/nova/access_and_security/views.py:68 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:48 msgid "Unable to retrieve floating IP addresses." msgstr "" -#: dashboards/nova/access_and_security/views.py:76 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:60 +#: dashboards/nova/access_and_security/views.py:75 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:64 #: dashboards/syspanel/instances/views.py:58 msgid "Unable to retrieve instance list." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/forms.py:38 +#: dashboards/nova/access_and_security/floating_ips/forms.py:31 msgid "Pool" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/forms.py:53 -#, python-format -msgid "" -"Successfully allocated Floating IP \"%(ip)s\" to project \"%(project)s\"" -msgstr "" +#: dashboards/nova/access_and_security/floating_ips/forms.py:42 +#, fuzzy, python-format +msgid "Allocated Floating IP %(ip)s." +msgstr "Associado IP Flutuante" -#: dashboards/nova/access_and_security/floating_ips/forms.py:57 +#: dashboards/nova/access_and_security/floating_ips/forms.py:46 msgid "Unable to allocate Floating IP." msgstr "" @@ -128,7 +129,7 @@ msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:49 #: dashboards/nova/access_and_security/floating_ips/tables.py:132 -#: dashboards/syspanel/projects/forms.py:119 +#: dashboards/syspanel/projects/workflows.py:42 msgid "Floating IPs" msgstr "" @@ -158,20 +159,20 @@ msgid "%(INSTANCE_NAME)s (%(INSTANCE_ID)s)" msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:115 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:28 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:34 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:31 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:38 #: dashboards/nova/instances/tables.py:270 #: dashboards/syspanel/instances/tables.py:74 msgid "IP Address" msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:118 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:31 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:35 #: dashboards/nova/instances/tables.py:62 #: dashboards/nova/instances/tables.py:79 #: dashboards/nova/instances/tables.py:94 #: dashboards/nova/instances/tables.py:122 -#: dashboards/nova/volumes/tables.py:195 tests/workflows_tests.py:58 +#: dashboards/nova/volumes/tables.py:197 tests/workflows_tests.py:58 msgid "Instance" msgstr "" @@ -179,82 +180,82 @@ msgstr "" msgid "Floating IP Pool" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/views.py:60 +#: dashboards/nova/access_and_security/floating_ips/views.py:64 +msgid "Unable to retrieve floating IP pools." +msgstr "" + +#: dashboards/nova/access_and_security/floating_ips/views.py:67 msgid "No floating IP pools available." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:35 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:39 msgid "Select the IP address you wish to associate with the selected instance." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:48 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:52 msgid "Select an IP address" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:50 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:54 msgid "No IP addresses available" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:77 -#: dashboards/nova/volumes/forms.py:92 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:81 +#: dashboards/nova/volumes/forms.py:160 msgid "Select an instance" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:79 -#: dashboards/nova/volumes/forms.py:94 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:83 +#: dashboards/nova/volumes/forms.py:162 msgid "No instances available" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:98 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:102 msgid "Manage Floating IP Associations" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:99 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:103 #, fuzzy msgid "Associate" msgstr "Associado IP Flutuante" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:100 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:104 #, python-format msgid "IP address %s associated." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:101 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:105 #, python-format msgid "Unable to associate IP address %s." msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:40 -#: dashboards/nova/access_and_security/keypairs/forms.py:58 +#: dashboards/nova/access_and_security/keypairs/forms.py:38 +#: dashboards/nova/access_and_security/keypairs/forms.py:49 #: dashboards/nova/access_and_security/keypairs/tables.py:51 msgid "Keypair Name" msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:42 +#: dashboards/nova/access_and_security/keypairs/forms.py:40 msgid "" "Keypair names may only contain letters, numbers, underscores and hyphens." msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:53 -msgid "Unable to create keypair." -msgstr "" - -#: dashboards/nova/access_and_security/keypairs/forms.py:60 +#: dashboards/nova/access_and_security/keypairs/forms.py:51 msgid "Public Key" msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:68 +#: dashboards/nova/access_and_security/keypairs/forms.py:60 #, python-format msgid "Successfully imported public key: %s" msgstr "" -#: dashboards/nova/access_and_security/keypairs/forms.py:74 +#: dashboards/nova/access_and_security/keypairs/forms.py:65 msgid "Unable to import keypair." msgstr "" #: dashboards/nova/access_and_security/keypairs/tables.py:29 -#: dashboards/nova/instances/tables.py:272 -#: dashboards/nova/instances/workflows.py:316 +#: dashboards/nova/instances/tables.py:274 +#: dashboards/nova/instances/workflows.py:332 msgid "Keypair" msgstr "" @@ -281,31 +282,43 @@ msgstr "" msgid "Fingerprint" msgstr "" -#: dashboards/nova/access_and_security/keypairs/views.py:64 +#: dashboards/nova/access_and_security/keypairs/views.py:73 #, python-format msgid "Unable to create keypair: %(exc)s" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:40 +#: dashboards/nova/access_and_security/security_groups/forms.py:35 #: dashboards/nova/access_and_security/security_groups/tables.py:57 -#: dashboards/nova/images_and_snapshots/images/forms.py:42 -#: dashboards/nova/images_and_snapshots/images/forms.py:120 +#: dashboards/nova/images_and_snapshots/images/forms.py:39 +#: dashboards/nova/images_and_snapshots/images/forms.py:114 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:9 -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:46 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:63 #: dashboards/nova/instances/templates/instances/_detail_overview.html:9 #: dashboards/nova/instances/templates/instances/_launch_details_help.html:9 -#: dashboards/nova/volumes/tables.py:135 dashboards/nova/volumes/tables.py:153 +#: dashboards/nova/networks/forms.py:36 dashboards/nova/networks/tables.py:82 +#: dashboards/nova/networks/ports/tables.py:40 +#: dashboards/nova/networks/subnets/forms.py:42 +#: dashboards/nova/networks/subnets/forms.py:101 +#: dashboards/nova/networks/subnets/tables.py:69 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:7 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:9 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:9 +#: dashboards/nova/volumes/tables.py:135 dashboards/nova/volumes/tables.py:155 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:9 #: dashboards/syspanel/flavors/forms.py:37 -#: dashboards/syspanel/projects/forms.py:60 -#: dashboards/syspanel/projects/forms.py:85 -#: dashboards/syspanel/projects/tables.py:74 +#: dashboards/syspanel/networks/forms.py:35 +#: dashboards/syspanel/networks/ports/forms.py:39 +#: dashboards/syspanel/networks/ports/forms.py:71 +#: dashboards/syspanel/networks/ports/tables.py:73 +#: dashboards/syspanel/networks/subnets/tables.py:69 +#: dashboards/syspanel/projects/tables.py:87 +#: dashboards/syspanel/projects/workflows.py:66 #: dashboards/syspanel/services/tables.py:38 #: dashboards/syspanel/volumes/tables.py:10 msgid "Name" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:42 +#: dashboards/nova/access_and_security/security_groups/forms.py:37 #: dashboards/nova/access_and_security/security_groups/tables.py:58 #: dashboards/nova/access_and_security/templates/access_and_security/keypairs/_create.html:16 #: dashboards/nova/access_and_security/templates/access_and_security/keypairs/_import.html:16 @@ -313,18 +326,23 @@ msgstr "" #: dashboards/nova/containers/templates/containers/_copy.html:16 #: dashboards/nova/containers/templates/containers/_create.html:16 #: dashboards/nova/containers/templates/containers/_upload.html:17 -#: dashboards/nova/volumes/forms.py:25 dashboards/nova/volumes/forms.py:125 +#: dashboards/nova/networks/templates/networks/_create.html:16 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:17 +#: dashboards/nova/volumes/forms.py:28 dashboards/nova/volumes/forms.py:195 #: dashboards/nova/volumes/tables.py:138 #: dashboards/nova/volumes/templates/volumes/_create.html:18 #: dashboards/nova/volumes/templates/volumes/_create_snapshot.html:17 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:14 #: dashboards/syspanel/flavors/templates/flavors/_create.html:17 #: dashboards/syspanel/images/templates/images/_update.html:17 -#: dashboards/syspanel/projects/forms.py:63 -#: dashboards/syspanel/projects/forms.py:88 -#: dashboards/syspanel/projects/tables.py:76 +#: dashboards/syspanel/networks/templates/networks/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:17 +#: dashboards/syspanel/projects/tables.py:89 +#: dashboards/syspanel/projects/workflows.py:69 #: dashboards/syspanel/projects/templates/projects/_add_user.html:17 #: dashboards/syspanel/projects/templates/projects/_create.html:17 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:17 #: dashboards/syspanel/projects/templates/projects/_quotas.html:16 #: dashboards/syspanel/projects/templates/projects/_update.html:17 #: dashboards/syspanel/users/templates/users/_create.html:16 @@ -332,20 +350,24 @@ msgstr "" msgid "Description" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:50 +#: dashboards/nova/access_and_security/security_groups/forms.py:45 #, python-format msgid "Successfully created security group: %s" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:53 +#: dashboards/nova/access_and_security/security_groups/forms.py:51 msgid "Unable to create security group." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:58 +#: dashboards/nova/access_and_security/security_groups/forms.py:56 #: dashboards/nova/access_and_security/security_groups/tables.py:92 msgid "IP Protocol" msgstr "" +#: dashboards/nova/access_and_security/security_groups/forms.py:60 +msgid "The protocol which this rule should be applied to." +msgstr "" + #: dashboards/nova/access_and_security/security_groups/forms.py:64 #: dashboards/nova/access_and_security/security_groups/forms.py:70 #: dashboards/nova/access_and_security/security_groups/tables.py:94 @@ -383,54 +405,62 @@ msgstr "" msgid "Source Group" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:84 +#: dashboards/nova/access_and_security/security_groups/forms.py:85 +msgid "" +"To specify an allowed IP range, select CIDR. To allow access from all " +"members of another security group select Source Group." +msgstr "" + +#: dashboards/nova/access_and_security/security_groups/forms.py:90 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:15 +#: dashboards/syspanel/networks/subnets/tables.py:71 msgid "CIDR" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:87 +#: dashboards/nova/access_and_security/security_groups/forms.py:93 msgid "Classless Inter-Domain Routing (e.g. 192.168.0.0/24)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:116 +#: dashboards/nova/access_and_security/security_groups/forms.py:120 msgid "The ICMP type is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:119 +#: dashboards/nova/access_and_security/security_groups/forms.py:123 msgid "The ICMP code is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:122 +#: dashboards/nova/access_and_security/security_groups/forms.py:126 msgid "The ICMP type not in range (-1, 255)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:125 +#: dashboards/nova/access_and_security/security_groups/forms.py:129 msgid "The ICMP code not in range (-1, 255)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:129 +#: dashboards/nova/access_and_security/security_groups/forms.py:133 msgid "The \"from\" port number is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:132 +#: dashboards/nova/access_and_security/security_groups/forms.py:136 msgid "The \"to\" port number is invalid." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:135 +#: dashboards/nova/access_and_security/security_groups/forms.py:139 msgid "" "The \"to\" port number must be greater than or equal to the \"from\" port " "number." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:141 +#: dashboards/nova/access_and_security/security_groups/forms.py:145 msgid "Either CIDR or Source Group may be specified, but not both." msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:163 +#: dashboards/nova/access_and_security/security_groups/forms.py:167 #, python-format msgid "Successfully added rule: %s" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:166 +#: dashboards/nova/access_and_security/security_groups/forms.py:172 msgid "Unable to add rule to security group." msgstr "" @@ -440,7 +470,7 @@ msgstr "" #: dashboards/nova/access_and_security/security_groups/tables.py:31 #: dashboards/nova/access_and_security/security_groups/tables.py:65 -#: dashboards/nova/instances/workflows.py:320 +#: dashboards/nova/instances/workflows.py:337 #: dashboards/nova/instances/templates/instances/_detail_overview.html:49 msgid "Security Groups" msgstr "" @@ -472,10 +502,15 @@ msgstr "" msgid "Security Group Rules" msgstr "" -#: dashboards/nova/access_and_security/security_groups/views.py:55 +#: dashboards/nova/access_and_security/security_groups/views.py:58 msgid "Unable to retrieve security group." msgstr "" +#: dashboards/nova/access_and_security/security_groups/views.py:78 +#, python-format +msgid "%s (current)" +msgstr "" + #: dashboards/nova/access_and_security/templates/access_and_security/index.html:6 msgid "Access & Security" msgstr "" @@ -490,9 +525,14 @@ msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_update.html:16 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:17 #: dashboards/nova/instances/templates/instances/_update.html:16 +#: dashboards/nova/networks/templates/networks/_update.html:16 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:25 #: dashboards/settings/ec2/templates/ec2/download_form.html:17 #: dashboards/settings/project/templates/project/_openrc.html:24 #: dashboards/settings/user/templates/user/_settings.html:17 +#: dashboards/syspanel/networks/templates/networks/_update.html:16 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:21 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:25 msgid "Description:" msgstr "" @@ -521,7 +561,11 @@ msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_update.html:23 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:24 #: dashboards/nova/instances/templates/instances/_update.html:23 -#: dashboards/nova/volumes/templates/volumes/_attach.html:20 +#: dashboards/nova/networks/templates/networks/_create.html:23 +#: dashboards/nova/networks/templates/networks/_update.html:23 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:24 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:32 +#: dashboards/nova/volumes/templates/volumes/_attach.html:24 #: dashboards/nova/volumes/templates/volumes/_create.html:56 #: dashboards/nova/volumes/templates/volumes/_create_snapshot.html:24 #: dashboards/settings/ec2/templates/ec2/download_form.html:24 @@ -529,8 +573,15 @@ msgstr "" #: dashboards/settings/user/templates/user/_settings.html:24 #: dashboards/syspanel/flavors/templates/flavors/_create.html:24 #: dashboards/syspanel/images/templates/images/_update.html:24 +#: dashboards/syspanel/networks/templates/networks/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/_update.html:23 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:28 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:32 #: dashboards/syspanel/projects/templates/projects/_add_user.html:24 #: dashboards/syspanel/projects/templates/projects/_create.html:24 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:24 #: dashboards/syspanel/projects/templates/projects/_quotas.html:23 #: dashboards/syspanel/projects/templates/projects/_update.html:24 #: dashboards/syspanel/users/templates/users/_create.html:23 @@ -583,157 +634,151 @@ msgstr "" msgid "Add Rule" msgstr "" -#: dashboards/nova/containers/forms.py:38 +#: dashboards/nova/containers/browsers.py:30 +msgid "Swift" +msgstr "" + +#: dashboards/nova/containers/forms.py:37 msgid "Slash is not an allowed character." msgstr "" -#: dashboards/nova/containers/forms.py:48 -#: dashboards/nova/containers/tables.py:91 +#: dashboards/nova/containers/forms.py:47 +#: dashboards/nova/containers/tables.py:125 msgid "Container Name" msgstr "" -#: dashboards/nova/containers/forms.py:56 +#: dashboards/nova/containers/forms.py:55 msgid "Container created successfully." msgstr "" -#: dashboards/nova/containers/forms.py:67 +#: dashboards/nova/containers/forms.py:66 msgid "Folder created successfully." msgstr "" -#: dashboards/nova/containers/forms.py:75 +#: dashboards/nova/containers/forms.py:69 msgid "Unable to create container." msgstr "" -#: dashboards/nova/containers/forms.py:85 -#: dashboards/nova/containers/tables.py:157 +#: dashboards/nova/containers/forms.py:77 +#: dashboards/nova/containers/tables.py:253 msgid "Object Name" msgstr "" -#: dashboards/nova/containers/forms.py:87 +#: dashboards/nova/containers/forms.py:79 msgid "File" msgstr "" -#: dashboards/nova/containers/forms.py:103 +#: dashboards/nova/containers/forms.py:95 msgid "Object was successfully uploaded." msgstr "" -#: dashboards/nova/containers/forms.py:105 +#: dashboards/nova/containers/forms.py:98 msgid "Unable to upload object." msgstr "" -#: dashboards/nova/containers/forms.py:111 +#: dashboards/nova/containers/forms.py:102 msgid "Destination container" msgstr "" -#: dashboards/nova/containers/forms.py:115 +#: dashboards/nova/containers/forms.py:106 msgid "Destination object name" msgstr "" -#: dashboards/nova/containers/forms.py:145 -#: dashboards/nova/containers/forms.py:169 +#: dashboards/nova/containers/forms.py:136 +#: dashboards/nova/containers/forms.py:162 msgid "Unable to copy object." msgstr "" -#: dashboards/nova/containers/forms.py:161 +#: dashboards/nova/containers/forms.py:152 #, python-format msgid "Copied \"%(orig)s\" to \"%(dest)s\" as \"%(new)s\"." msgstr "" #: dashboards/nova/containers/panel.py:28 -#: dashboards/nova/containers/tables.py:35 -#: dashboards/nova/containers/tables.py:102 -#: dashboards/nova/containers/templates/containers/index.html:6 +#: dashboards/nova/containers/tables.py:41 +#: dashboards/nova/containers/tables.py:132 msgid "Containers" msgstr "" -#: dashboards/nova/containers/tables.py:34 -#: dashboards/nova/containers/templates/containers/detail.html:7 +#: dashboards/nova/containers/tables.py:40 +#: dashboards/nova/containers/templates/containers/index.html:7 msgid "Container" msgstr "" -#: dashboards/nova/containers/tables.py:42 +#: dashboards/nova/containers/tables.py:49 msgid "Containers must be empty before deletion." msgstr "" -#: dashboards/nova/containers/tables.py:48 +#: dashboards/nova/containers/tables.py:67 #: dashboards/nova/containers/templates/containers/_create.html:7 #: dashboards/nova/containers/templates/containers/_create.html:22 #: dashboards/nova/containers/templates/containers/create.html:6 msgid "Create Container" msgstr "" -#: dashboards/nova/containers/tables.py:55 +#: dashboards/nova/containers/tables.py:74 msgid "View Container" msgstr "" -#: dashboards/nova/containers/tables.py:62 +#: dashboards/nova/containers/tables.py:86 #: dashboards/nova/containers/templates/containers/_upload.html:23 #: dashboards/nova/containers/templates/containers/upload.html:3 msgid "Upload Object" msgstr "" -#: dashboards/nova/containers/tables.py:93 -#: dashboards/nova/containers/tables.py:109 -#: dashboards/nova/containers/tables.py:169 -#: dashboards/nova/containers/templates/containers/detail.html:3 +#: dashboards/nova/containers/tables.py:140 +#: dashboards/nova/containers/tables.py:159 +msgid "Object" +msgstr "" + +#: dashboards/nova/containers/tables.py:141 +#: dashboards/nova/containers/tables.py:160 +#: dashboards/nova/containers/tables.py:263 msgid "Objects" msgstr "" -#: dashboards/nova/containers/tables.py:95 -#: dashboards/nova/containers/tables.py:160 +#: dashboards/nova/containers/tables.py:152 +msgid "Folder" +msgstr "" + +#: dashboards/nova/containers/tables.py:153 +msgid "Folders" +msgstr "" + +#: dashboards/nova/containers/tables.py:166 +msgid "Copy" +msgstr "" + +#: dashboards/nova/containers/tables.py:178 +msgid "Download" +msgstr "" + +#: dashboards/nova/containers/tables.py:232 +msgid "Create Folder" +msgstr "" + +#: dashboards/nova/containers/tables.py:256 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:30 -#: dashboards/nova/instances/tables.py:271 -#: dashboards/nova/volumes/tables.py:140 +#: dashboards/nova/instances/tables.py:272 +#: dashboards/nova/volumes/tables.py:141 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:26 #: dashboards/syspanel/instances/tables.py:76 msgid "Size" msgstr "" -#: dashboards/nova/containers/tables.py:108 -msgid "Object" -msgstr "" - -#: dashboards/nova/containers/tables.py:119 -msgid "Copy" -msgstr "" - -#: dashboards/nova/containers/tables.py:130 -msgid "Download" -msgstr "" - -#: dashboards/nova/containers/tables.py:181 -msgid "Create Folder" -msgstr "" - -#: dashboards/nova/containers/tables.py:193 -msgid "Folder" -msgstr "" - -#: dashboards/nova/containers/tables.py:194 -msgid "Folders" -msgstr "" - -#: dashboards/nova/containers/tables.py:200 -msgid "Subfolder Name" -msgstr "" - -#: dashboards/nova/containers/tables.py:208 -msgid "Subfolders" -msgstr "" - -#: dashboards/nova/containers/views.py:58 +#: dashboards/nova/containers/views.py:52 msgid "Unable to retrieve container list." msgstr "" -#: dashboards/nova/containers/views.py:103 +#: dashboards/nova/containers/views.py:80 msgid "Unable to retrieve object list." msgstr "" -#: dashboards/nova/containers/views.py:161 +#: dashboards/nova/containers/views.py:175 msgid "Unable to retrieve object." msgstr "" -#: dashboards/nova/containers/views.py:183 +#: dashboards/nova/containers/views.py:204 msgid "Unable to list containers." msgstr "" @@ -783,117 +828,118 @@ msgstr "" msgid "Images & Snapshots" msgstr "" -#: dashboards/nova/images_and_snapshots/views.py:60 +#: dashboards/nova/images_and_snapshots/views.py:61 msgid "Unable to retrieve images." msgstr "" -#: dashboards/nova/images_and_snapshots/views.py:71 +#: dashboards/nova/images_and_snapshots/views.py:72 msgid "Unable to retrieve snapshots." msgstr "" -#: dashboards/nova/images_and_snapshots/views.py:79 +#: dashboards/nova/images_and_snapshots/views.py:80 +#: dashboards/nova/volumes/forms.py:65 msgid "Unable to retrieve volume snapshots." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:44 +#: dashboards/nova/images_and_snapshots/images/forms.py:41 msgid "Image Location" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:45 -msgid "An external (HTTP) URL where the image should be loaded from." +#: dashboards/nova/images_and_snapshots/images/forms.py:42 +msgid "An external (HTTP) URL to load the image from." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:48 -#: dashboards/nova/images_and_snapshots/images/forms.py:135 +#: dashboards/nova/images_and_snapshots/images/forms.py:45 +#: dashboards/nova/images_and_snapshots/images/forms.py:129 #: dashboards/nova/images_and_snapshots/images/tables.py:125 msgid "Format" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:52 +#: dashboards/nova/images_and_snapshots/images/forms.py:49 msgid "AKI - Amazon Kernel Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:55 +#: dashboards/nova/images_and_snapshots/images/forms.py:52 msgid "AMI - Amazon Machine Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:58 +#: dashboards/nova/images_and_snapshots/images/forms.py:55 msgid "ARI - Amazon Ramdisk Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:61 +#: dashboards/nova/images_and_snapshots/images/forms.py:58 msgid "ISO - Optical Disk Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:63 +#: dashboards/nova/images_and_snapshots/images/forms.py:60 msgid "QCOW2 - QEMU Emulator" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:70 +#: dashboards/nova/images_and_snapshots/images/forms.py:67 msgid "Minimum Disk (GB)" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:71 -#: dashboards/nova/images_and_snapshots/images/forms.py:78 +#: dashboards/nova/images_and_snapshots/images/forms.py:68 +#: dashboards/nova/images_and_snapshots/images/forms.py:75 msgid "" "The minimum disk size required to boot the image. If unspecified, this value " "defaults to 0 (no minimum)." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:77 +#: dashboards/nova/images_and_snapshots/images/forms.py:74 msgid "Minimum Ram (MB)" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:84 -#: dashboards/nova/images_and_snapshots/images/forms.py:139 +#: dashboards/nova/images_and_snapshots/images/forms.py:81 +#: dashboards/nova/images_and_snapshots/images/forms.py:133 #: dashboards/nova/images_and_snapshots/images/tables.py:122 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:15 msgid "Public" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:108 +#: dashboards/nova/images_and_snapshots/images/forms.py:105 #, python-format msgid "Your image %s has been queued for creation." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:111 +#: dashboards/nova/images_and_snapshots/images/forms.py:109 msgid "Unable to create new image." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:121 +#: dashboards/nova/images_and_snapshots/images/forms.py:115 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:48 msgid "Kernel ID" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:126 +#: dashboards/nova/images_and_snapshots/images/forms.py:120 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:52 msgid "Ramdisk ID" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:131 +#: dashboards/nova/images_and_snapshots/images/forms.py:125 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:44 msgid "Architecture" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:144 +#: dashboards/nova/images_and_snapshots/images/forms.py:137 #, python-format msgid "Unable to update image \"%s\"." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:163 +#: dashboards/nova/images_and_snapshots/images/forms.py:161 msgid "Image was successfully updated." msgstr "" #: dashboards/nova/images_and_snapshots/images/tables.py:33 #: dashboards/nova/images_and_snapshots/snapshots/tables.py:32 -#: dashboards/nova/instances/workflows.py:394 +#: dashboards/nova/instances/workflows.py:451 msgid "Launch" msgstr "" #: dashboards/nova/images_and_snapshots/images/tables.py:45 #: dashboards/nova/images_and_snapshots/images/tables.py:81 -#: dashboards/nova/instances/workflows.py:162 #: dashboards/nova/instances/workflows.py:167 +#: dashboards/nova/instances/workflows.py:172 msgid "Image" msgstr "" @@ -912,7 +958,7 @@ msgid "Create Image" msgstr "" #: dashboards/nova/images_and_snapshots/images/tables.py:67 -#: dashboards/syspanel/users/tables.py:30 +#: dashboards/syspanel/users/tables.py:31 msgid "Edit" msgstr "" @@ -924,18 +970,29 @@ msgstr "" #: dashboards/nova/images_and_snapshots/images/tables.py:118 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:13 -#: dashboards/nova/instances/tables.py:275 +#: dashboards/nova/instances/tables.py:277 #: dashboards/nova/instances/templates/instances/_detail_overview.html:13 -#: dashboards/nova/volumes/tables.py:143 +#: dashboards/nova/networks/tables.py:86 +#: dashboards/nova/networks/ports/tables.py:44 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:13 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:30 +#: dashboards/nova/volumes/tables.py:145 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:17 -#: dashboards/syspanel/instances/tables.py:80 +#: dashboards/syspanel/instances/tables.py:81 +#: dashboards/syspanel/networks/tables.py:71 +#: dashboards/syspanel/networks/ports/tables.py:77 msgid "Status" msgstr "" #: dashboards/nova/images_and_snapshots/images/tabs.py:26 -#: dashboards/nova/instances/tabs.py:25 dashboards/nova/overview/panel.py:28 +#: dashboards/nova/instances/tabs.py:25 +#: dashboards/nova/networks/ports/tabs.py:29 +#: dashboards/nova/networks/subnets/tabs.py:31 +#: dashboards/nova/overview/panel.py:28 #: dashboards/nova/overview/templates/overview/usage.html:6 -#: dashboards/nova/volumes/tabs.py:26 dashboards/syspanel/overview/panel.py:28 +#: dashboards/nova/volumes/tabs.py:26 +#: dashboards/syspanel/networks/ports/tabs.py:29 +#: dashboards/syspanel/overview/panel.py:28 #: dashboards/syspanel/overview/templates/overview/usage.html:6 msgid "Overview" msgstr "" @@ -944,16 +1001,16 @@ msgstr "" msgid "Unable to retrieve image details." msgstr "" -#: dashboards/nova/images_and_snapshots/images/views.py:57 +#: dashboards/nova/images_and_snapshots/images/views.py:60 msgid "Unable to retrieve image." msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:38 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:36 msgid "Instance ID" msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:41 -#: dashboards/nova/volumes/forms.py:123 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:39 +#: dashboards/nova/volumes/forms.py:193 msgid "Snapshot Name" msgstr "" @@ -962,14 +1019,13 @@ msgstr "" msgid "Snapshot \"%(name)s\" created for instance \"%(inst)s\"" msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:56 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:55 msgid "Unable to create snapshot." msgstr "" #: dashboards/nova/images_and_snapshots/snapshots/tables.py:47 -#: dashboards/nova/instances/tables.py:162 -#: dashboards/nova/instances/workflows.py:101 -#: dashboards/nova/instances/workflows.py:163 +#: dashboards/nova/instances/workflows.py:106 +#: dashboards/nova/instances/workflows.py:168 msgid "Snapshot" msgstr "" @@ -981,15 +1037,10 @@ msgstr "" msgid "Instance Snapshots" msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/views.py:50 +#: dashboards/nova/images_and_snapshots/snapshots/views.py:52 msgid "Unable to retrieve instance." msgstr "" -#: dashboards/nova/images_and_snapshots/snapshots/views.py:53 -#, python-format -msgid "To create a snapshot, the instance must be in the \"%s\" state." -msgstr "" - #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/index.html:3 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/index.html:6 msgid "Images & Snapshots" @@ -1034,8 +1085,14 @@ msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:11 #: dashboards/nova/instances/templates/instances/_detail_overview.html:11 +#: dashboards/nova/networks/forms.py:38 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:9 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:12 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:11 -#: dashboards/syspanel/projects/forms.py:83 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:12 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:12 #: dashboards/syspanel/users/forms.py:113 msgid "ID" msgstr "" @@ -1076,7 +1133,9 @@ msgid "Euca2ools state" msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:60 -#: dashboards/syspanel/projects/tables.py:77 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:15 +#: dashboards/syspanel/projects/tables.py:90 msgid "Project ID" msgstr "" @@ -1107,6 +1166,7 @@ msgstr "" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:8 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:23 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/create.html:3 +#: dashboards/nova/instances/tables.py:162 #: dashboards/nova/volumes/tables.py:67 msgid "Create Snapshot" msgstr "" @@ -1119,17 +1179,24 @@ msgstr "" msgid "Create a Snapshot" msgstr "" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:30 -#: dashboards/nova/instances/workflows.py:70 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:32 +#: dashboards/nova/instances/workflows.py:75 msgid "Volume Snapshot" msgstr "" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:31 -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:52 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:33 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:69 msgid "Volume Snapshots" msgstr "" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:48 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:41 +#: dashboards/nova/volumes/tables.py:50 +#: dashboards/nova/volumes/templates/volumes/_create.html:8 +#: dashboards/nova/volumes/templates/volumes/_create.html:55 +msgid "Create Volume" +msgstr "" + +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:65 msgid "Volume ID" msgstr "" @@ -1138,7 +1205,7 @@ msgstr "" msgid "Instance \"%s\" updated." msgstr "" -#: dashboards/nova/instances/forms.py:46 +#: dashboards/nova/instances/forms.py:49 msgid "Unable to update instance." msgstr "" @@ -1147,13 +1214,13 @@ msgstr "" #: dashboards/nova/instances/tables.py:80 #: dashboards/nova/instances/tables.py:95 #: dashboards/nova/instances/tables.py:123 -#: dashboards/nova/instances/tables.py:290 +#: dashboards/nova/instances/tables.py:292 #: dashboards/nova/instances/templates/instances/index.html:3 #: dashboards/nova/instances/templates/instances/index.html:6 #: dashboards/syspanel/instances/panel.py:28 -#: dashboards/syspanel/instances/tables.py:95 +#: dashboards/syspanel/instances/tables.py:96 #: dashboards/syspanel/instances/templates/instances/index.html:3 -#: dashboards/syspanel/projects/forms.py:115 +#: dashboards/syspanel/projects/workflows.py:35 msgid "Instances" msgstr "" @@ -1206,7 +1273,7 @@ msgid "Resumed" msgstr "" #: dashboards/nova/instances/tables.py:148 -#: dashboards/nova/instances/workflows.py:393 +#: dashboards/nova/instances/workflows.py:450 #: dashboards/nova/instances/templates/instances/launch.html:3 #: dashboards/nova/instances/templates/instances/launch.html:6 msgid "Launch Instance" @@ -1236,17 +1303,17 @@ msgid "Not available" msgstr "" #: dashboards/nova/instances/tables.py:269 -#: dashboards/syspanel/instances/tables.py:73 usage/tables.py:56 +#: dashboards/syspanel/instances/tables.py:73 usage/tables.py:57 msgid "Instance Name" msgstr "" -#: dashboards/nova/instances/tables.py:279 -#: dashboards/syspanel/instances/tables.py:84 +#: dashboards/nova/instances/tables.py:281 +#: dashboards/syspanel/instances/tables.py:85 msgid "Task" msgstr "" -#: dashboards/nova/instances/tables.py:286 -#: dashboards/syspanel/instances/tables.py:91 +#: dashboards/nova/instances/tables.py:288 +#: dashboards/syspanel/instances/tables.py:92 msgid "Power State" msgstr "" @@ -1277,224 +1344,276 @@ msgstr "" msgid "Unable to retrieve instance size information." msgstr "" -#: dashboards/nova/instances/views.py:137 +#: dashboards/nova/instances/views.py:143 msgid "Unable to retrieve instance details." msgstr "" -#: dashboards/nova/instances/views.py:172 +#: dashboards/nova/instances/views.py:178 #, python-format msgid "Unable to retrieve details for instance \"%s\"." msgstr "" -#: dashboards/nova/instances/workflows.py:33 -#: dashboards/syspanel/projects/tables.py:92 -#: dashboards/syspanel/users/tables.py:39 -#: dashboards/syspanel/users/tables.py:73 tests/workflows_tests.py:40 +#: dashboards/nova/instances/workflows.py:38 +#: dashboards/syspanel/projects/tables.py:106 +#: dashboards/syspanel/users/tables.py:40 +#: dashboards/syspanel/users/tables.py:74 tests/workflows_tests.py:40 msgid "User" msgstr "" -#: dashboards/nova/instances/workflows.py:47 +#: dashboards/nova/instances/workflows.py:52 msgid "Project & User" msgstr "" -#: dashboards/nova/instances/workflows.py:49 +#: dashboards/nova/instances/workflows.py:54 msgid "" "Admin users may optionally select the project and user for whom the instance " "should be created." msgstr "" -#: dashboards/nova/instances/workflows.py:60 +#: dashboards/nova/instances/workflows.py:65 msgid "Don't boot from a volume." msgstr "" -#: dashboards/nova/instances/workflows.py:61 +#: dashboards/nova/instances/workflows.py:66 msgid "Boot from volume." msgstr "" -#: dashboards/nova/instances/workflows.py:62 +#: dashboards/nova/instances/workflows.py:67 msgid "Boot from volume snapshot (creates a new volume)." msgstr "" -#: dashboards/nova/instances/workflows.py:66 -#: dashboards/nova/instances/workflows.py:84 +#: dashboards/nova/instances/workflows.py:71 +#: dashboards/nova/instances/workflows.py:89 msgid "Volume Options" msgstr "" -#: dashboards/nova/instances/workflows.py:69 -#: dashboards/nova/instances/workflows.py:104 +#: dashboards/nova/instances/workflows.py:74 +#: dashboards/nova/instances/workflows.py:109 #: dashboards/nova/instances/templates/instances/_detail_overview.html:93 -#: dashboards/nova/volumes/tables.py:36 dashboards/nova/volumes/tables.py:171 +#: dashboards/nova/volumes/tables.py:36 dashboards/nova/volumes/tables.py:173 msgid "Volume" msgstr "" -#: dashboards/nova/instances/workflows.py:72 +#: dashboards/nova/instances/workflows.py:77 +#: dashboards/nova/volumes/forms.py:126 msgid "Device Name" msgstr "" -#: dashboards/nova/instances/workflows.py:75 +#: dashboards/nova/instances/workflows.py:80 msgid "Volume mount point (e.g. 'vda' mounts at '/dev/vda')." msgstr "" -#: dashboards/nova/instances/workflows.py:77 +#: dashboards/nova/instances/workflows.py:82 msgid "Delete on Terminate" msgstr "" -#: dashboards/nova/instances/workflows.py:80 +#: dashboards/nova/instances/workflows.py:85 msgid "Delete volume on instance terminate" msgstr "" -#: dashboards/nova/instances/workflows.py:111 +#: dashboards/nova/instances/workflows.py:116 msgid "Select Volume" msgstr "" -#: dashboards/nova/instances/workflows.py:119 +#: dashboards/nova/instances/workflows.py:124 msgid "Unable to retrieve list of volumes." msgstr "" -#: dashboards/nova/instances/workflows.py:123 +#: dashboards/nova/instances/workflows.py:128 msgid "Select Volume Snapshot" msgstr "" -#: dashboards/nova/instances/workflows.py:132 +#: dashboards/nova/instances/workflows.py:137 msgid "Unable to retrieve list of volume snapshots." msgstr "" -#: dashboards/nova/instances/workflows.py:165 +#: dashboards/nova/instances/workflows.py:170 msgid "Instance Source" msgstr "" -#: dashboards/nova/instances/workflows.py:168 +#: dashboards/nova/instances/workflows.py:173 msgid "Instance Snapshot" msgstr "" -#: dashboards/nova/instances/workflows.py:170 +#: dashboards/nova/instances/workflows.py:175 msgid "Server Name" msgstr "" -#: dashboards/nova/instances/workflows.py:171 +#: dashboards/nova/instances/workflows.py:176 #: dashboards/nova/instances/templates/instances/_detail_overview.html:22 #: dashboards/syspanel/flavors/tables.py:13 msgid "Flavor" msgstr "" -#: dashboards/nova/instances/workflows.py:172 +#: dashboards/nova/instances/workflows.py:177 msgid "Size of image to launch." msgstr "" -#: dashboards/nova/instances/workflows.py:173 +#: dashboards/nova/instances/workflows.py:178 msgid "Instance Count" msgstr "" -#: dashboards/nova/instances/workflows.py:176 +#: dashboards/nova/instances/workflows.py:181 msgid "Number of instances to launch." msgstr "" -#: dashboards/nova/instances/workflows.py:179 +#: dashboards/nova/instances/workflows.py:184 msgid "Details" msgstr "" -#: dashboards/nova/instances/workflows.py:198 +#: dashboards/nova/instances/workflows.py:197 +msgid "" +"There are no image sources available; you must first create an image before " +"attempting to launch an instance." +msgstr "" + +#: dashboards/nova/instances/workflows.py:202 +msgid "Please select an option for the instance source." +msgstr "" + +#: dashboards/nova/instances/workflows.py:211 msgid "" "Launching multiple instances is only supported for images and instance " "snapshots." msgstr "" -#: dashboards/nova/instances/workflows.py:214 +#: dashboards/nova/instances/workflows.py:227 msgid "Unable to retrieve public images." msgstr "" -#: dashboards/nova/instances/workflows.py:228 +#: dashboards/nova/instances/workflows.py:241 msgid "Unable to retrieve images for the current project." msgstr "" -#: dashboards/nova/instances/workflows.py:251 +#: dashboards/nova/instances/workflows.py:264 msgid "Select Image" msgstr "" -#: dashboards/nova/instances/workflows.py:253 +#: dashboards/nova/instances/workflows.py:266 msgid "No images available." msgstr "" -#: dashboards/nova/instances/workflows.py:262 +#: dashboards/nova/instances/workflows.py:275 msgid "Select Instance Snapshot" msgstr "" -#: dashboards/nova/instances/workflows.py:264 +#: dashboards/nova/instances/workflows.py:277 msgid "No snapshots available." msgstr "" -#: dashboards/nova/instances/workflows.py:275 +#: dashboards/nova/instances/workflows.py:288 msgid "Unable to retrieve instance flavors." msgstr "" -#: dashboards/nova/instances/workflows.py:288 +#: dashboards/nova/instances/workflows.py:301 msgid "Unable to retrieve quota information." msgstr "" -#: dashboards/nova/instances/workflows.py:318 +#: dashboards/nova/instances/workflows.py:334 msgid "Which keypair to use for authentication." msgstr "" -#: dashboards/nova/instances/workflows.py:324 +#: dashboards/nova/instances/workflows.py:341 msgid "Launch instance in these security groups." msgstr "" -#: dashboards/nova/instances/workflows.py:329 +#: dashboards/nova/instances/workflows.py:346 msgid "" "Control access to your instance via keypairs, security groups, and other " "mechanisms." msgstr "" -#: dashboards/nova/instances/workflows.py:339 +#: dashboards/nova/instances/workflows.py:356 msgid "Unable to retrieve keypairs." msgstr "" -#: dashboards/nova/instances/workflows.py:341 +#: dashboards/nova/instances/workflows.py:358 msgid "Select a keypair" msgstr "" -#: dashboards/nova/instances/workflows.py:343 +#: dashboards/nova/instances/workflows.py:360 msgid "No keypairs available." msgstr "" -#: dashboards/nova/instances/workflows.py:352 +#: dashboards/nova/instances/workflows.py:369 msgid "Unable to retrieve list of security groups" msgstr "" -#: dashboards/nova/instances/workflows.py:372 +#: dashboards/nova/instances/workflows.py:389 msgid "Customization Script" msgstr "" -#: dashboards/nova/instances/workflows.py:374 +#: dashboards/nova/instances/workflows.py:391 msgid "" "A script or set of commands to be executed after the instance has been built " "(max 16kb)." msgstr "" -#: dashboards/nova/instances/workflows.py:381 +#: dashboards/nova/instances/workflows.py:398 msgid "Post-Creation" msgstr "" -#: dashboards/nova/instances/workflows.py:395 +#: dashboards/nova/instances/workflows.py:409 +#: dashboards/nova/networks/panel.py:24 dashboards/nova/networks/tables.py:32 +#: dashboards/nova/networks/tables.py:92 +#: dashboards/nova/networks/templates/networks/index.html:3 +#: dashboards/nova/networks/templates/networks/index.html:6 +#: dashboards/syspanel/networks/panel.py:24 +#: dashboards/syspanel/networks/tables.py:34 +#: dashboards/syspanel/networks/tables.py:77 +#: dashboards/syspanel/networks/templates/networks/index.html:3 +#: dashboards/syspanel/networks/templates/networks/index.html:6 +msgid "Networks" +msgstr "" + +#: dashboards/nova/instances/workflows.py:412 +msgid "Launch instance withthese networks" +msgstr "" + +#: dashboards/nova/instances/workflows.py:416 +msgid "Networking" +msgstr "" + +#: dashboards/nova/instances/workflows.py:418 +msgid "Select networks for your instance." +msgstr "" + +#: dashboards/nova/instances/workflows.py:429 +msgid "Unable to retrieve networks." +msgstr "" + +#: dashboards/nova/instances/workflows.py:452 #, python-format msgid "Launched %(count)s named \"%(name)s\"." msgstr "" -#: dashboards/nova/instances/workflows.py:396 +#: dashboards/nova/instances/workflows.py:453 #, python-format msgid "Unable to launch %(count)s named \"%(name)s\"." msgstr "" -#: dashboards/nova/instances/workflows.py:408 +#: dashboards/nova/instances/workflows.py:466 #, python-format msgid "%s instances" msgstr "" -#: dashboards/nova/instances/workflows.py:411 +#: dashboards/nova/instances/workflows.py:469 msgid "instance" msgstr "" +#: dashboards/nova/instances/templates/instances/_detail_log.html:4 +msgid "Instance Console Log" +msgstr "" + #: dashboards/nova/instances/templates/instances/_detail_log.html:7 +msgid "Log Length" +msgstr "" + +#: dashboards/nova/instances/templates/instances/_detail_log.html:9 +msgid "Go" +msgstr "" + +#: dashboards/nova/instances/templates/instances/_detail_log.html:11 msgid "View Full Log" msgstr "" @@ -1511,8 +1630,8 @@ msgstr "" #: dashboards/nova/instances/templates/instances/_detail_overview.html:26 #: dashboards/nova/instances/templates/instances/_launch_details_help.html:10 #: dashboards/syspanel/flavors/forms.py:38 -#: dashboards/syspanel/flavors/tables.py:30 -#: dashboards/syspanel/projects/forms.py:114 usage/tables.py:19 +#: dashboards/syspanel/flavors/tables.py:34 +#: dashboards/syspanel/projects/workflows.py:34 usage/tables.py:19 msgid "VCPUs" msgstr "" @@ -1554,7 +1673,7 @@ msgid "Volumes Attached" msgstr "" #: dashboards/nova/instances/templates/instances/_detail_overview.html:88 -#: dashboards/nova/volumes/tables.py:156 +#: dashboards/nova/volumes/tables.py:158 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:38 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:45 msgid "Attached To" @@ -1618,12 +1737,12 @@ msgid "Flavor Details" msgstr "" #: dashboards/nova/instances/templates/instances/_launch_details_help.html:11 -#: dashboards/syspanel/flavors/tables.py:32 +#: dashboards/syspanel/flavors/tables.py:38 msgid "Root Disk" msgstr "" #: dashboards/nova/instances/templates/instances/_launch_details_help.html:12 -#: dashboards/syspanel/flavors/tables.py:34 +#: dashboards/syspanel/flavors/tables.py:40 msgid "Ephemeral Disk" msgstr "" @@ -1659,6 +1778,11 @@ msgid "You may update the editable properties of your instance here." msgstr "" #: dashboards/nova/instances/templates/instances/_update.html:22 +#: dashboards/nova/networks/templates/networks/_update.html:22 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:31 +#: dashboards/syspanel/networks/templates/networks/_update.html:22 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:27 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:31 msgid "Save Changes" msgstr "" @@ -1671,6 +1795,435 @@ msgstr "" msgid "Update Instance" msgstr "" +#: dashboards/nova/networks/forms.py:47 +#, python-format +msgid "Network %s was successfully updated." +msgstr "" + +#: dashboards/nova/networks/forms.py:52 +#, python-format +msgid "Failed to update network %s" +msgstr "" + +#: dashboards/nova/networks/tables.py:31 +#: dashboards/nova/networks/templates/networks/subnets/index.html:3 +#: dashboards/nova/networks/templates/networks/subnets/index.html:6 +#: dashboards/syspanel/networks/tables.py:33 +msgid "Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:47 +#: dashboards/syspanel/networks/tables.py:40 +#, python-format +msgid "Failed to delete network %s" +msgstr "" + +#: dashboards/nova/networks/tables.py:55 +#: dashboards/nova/networks/workflows.py:110 +#: dashboards/nova/networks/templates/networks/_create.html:7 +#: dashboards/nova/networks/templates/networks/_create.html:22 +#: dashboards/nova/networks/templates/networks/create.html:3 +#: dashboards/nova/networks/templates/networks/create.html:6 +#: dashboards/syspanel/networks/tables.py:48 +#: dashboards/syspanel/networks/templates/networks/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/create.html:3 +#: dashboards/syspanel/networks/templates/networks/create.html:6 +msgid "Create Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:62 +#: dashboards/nova/networks/templates/networks/_update.html:7 +#: dashboards/syspanel/networks/tables.py:55 +#: dashboards/syspanel/networks/templates/networks/_update.html:7 +msgid "Edit Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:69 +msgid "Add Subnet" +msgstr "" + +#: dashboards/nova/networks/tables.py:85 +#: dashboards/syspanel/networks/tables.py:70 +#, fuzzy +msgid "Subnets Associated" +msgstr "Associado IP Flutuante" + +#: dashboards/nova/networks/tables.py:88 +#: dashboards/nova/networks/ports/tables.py:46 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:15 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:32 +#: dashboards/syspanel/networks/tables.py:73 +#: dashboards/syspanel/networks/ports/tables.py:79 +msgid "Admin State" +msgstr "" + +#: dashboards/nova/networks/views.py:55 +#: dashboards/syspanel/networks/views.py:60 +msgid "Network list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:89 +msgid "Unable to retrieve network details." +msgstr "" + +#: dashboards/nova/networks/views.py:112 +#: dashboards/syspanel/networks/views.py:91 +msgid "Subnet list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:124 +#: dashboards/syspanel/networks/views.py:103 +msgid "Port list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:137 +#: dashboards/syspanel/networks/views.py:118 +#, python-format +msgid "Unable to retrieve details for network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:36 +msgid "Network Name (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:41 +msgid "" +"From here you can create a new network.\n" +"In addition a subnet associated with the network can be created in the next " +"panel." +msgstr "" + +#: dashboards/nova/networks/workflows.py:52 +#: dashboards/nova/networks/subnets/tables.py:48 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:8 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:23 +#: dashboards/nova/networks/templates/networks/subnets/create.html:3 +#: dashboards/nova/networks/templates/networks/subnets/create.html:6 +#: dashboards/syspanel/networks/subnets/tables.py:48 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/subnets/create.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/create.html:6 +msgid "Create Subnet" +msgstr "" + +#: dashboards/nova/networks/workflows.py:55 +msgid "Subnet Name (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:57 +#: dashboards/nova/networks/subnets/forms.py:44 +#: dashboards/nova/networks/subnets/tables.py:71 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:14 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:14 +msgid "Network Address" +msgstr "" + +#: dashboards/nova/networks/workflows.py:60 +#: dashboards/nova/networks/subnets/forms.py:47 +msgid "Network address in CIDR format (e.g. 192.168.0.0/24)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:65 +#: dashboards/nova/networks/subnets/forms.py:52 +#: dashboards/nova/networks/subnets/tables.py:72 +#: dashboards/syspanel/networks/subnets/tables.py:72 +msgid "IP Version" +msgstr "" + +#: dashboards/nova/networks/workflows.py:66 +msgid "Gateway IP (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:69 +#: dashboards/nova/networks/subnets/forms.py:56 +#: dashboards/nova/networks/subnets/forms.py:106 +msgid "IP address of Gateway (e.g. 192.168.0.1)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:76 +msgid "" +"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." +msgstr "" + +#: dashboards/nova/networks/workflows.py:88 +msgid "Specify \"Network Address\" or clear \"Create Subnet\" checkbox." +msgstr "" + +#: dashboards/nova/networks/workflows.py:93 +#: dashboards/nova/networks/subnets/forms.py:69 +msgid "Network Address and IP version are inconsistent." +msgstr "" + +#: dashboards/nova/networks/workflows.py:97 +#: dashboards/nova/networks/subnets/forms.py:73 +#: dashboards/nova/networks/subnets/forms.py:118 +msgid "Gateway IP and IP version are inconsistent." +msgstr "" + +#: dashboards/nova/networks/workflows.py:111 +msgid "Create" +msgstr "" + +#: dashboards/nova/networks/workflows.py:112 +#, python-format +msgid "Created network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:113 +#, python-format +msgid "Unable to create network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:129 +#, python-format +msgid "Network \"%s\" was successfully created." +msgstr "" + +#: dashboards/nova/networks/workflows.py:132 +#, python-format +msgid "Failed to create network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:151 +#, python-format +msgid "Subnet \"%s\" was successfully created." +msgstr "" + +#: dashboards/nova/networks/workflows.py:154 +#, python-format +msgid "Failed to create subnet \"%(sub)s\" for network \"%(net)s\"." +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:35 +msgid "Attached" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:35 +msgid "Detached" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:42 +#: dashboards/syspanel/networks/ports/tables.py:75 +msgid "Fixed IPs" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:43 +#: dashboards/syspanel/networks/ports/tables.py:76 +msgid "Device Attached" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:53 +#: dashboards/syspanel/networks/ports/tables.py:35 +#: dashboards/syspanel/networks/ports/tables.py:83 +msgid "Ports" +msgstr "" + +#: dashboards/nova/networks/ports/tabs.py:39 +#: dashboards/syspanel/networks/ports/tabs.py:39 +msgid "Unable to retrieve port details." +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:34 +#: dashboards/syspanel/networks/tables.py:67 +#: dashboards/syspanel/networks/ports/forms.py:32 +msgid "Network Name" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:38 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:13 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:13 +#: dashboards/syspanel/networks/ports/forms.py:35 +msgid "Network ID" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:53 +#: dashboards/nova/networks/subnets/forms.py:103 +#: dashboards/nova/networks/subnets/tables.py:73 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:19 +#: dashboards/syspanel/networks/subnets/tables.py:73 +msgid "Gateway IP" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:84 +#, python-format +msgid "Subnet %s was successfully created." +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:89 +#, python-format +msgid "Failed to create subnet %s" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:130 +#, python-format +msgid "Subnet %s was successfully updated." +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:135 +#, python-format +msgid "Failed to update subnet %s" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:31 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:6 +#: dashboards/syspanel/networks/subnets/tables.py:31 +msgid "Subnet" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:32 +#: dashboards/nova/networks/subnets/tables.py:77 +#: dashboards/syspanel/networks/subnets/tables.py:32 +#: dashboards/syspanel/networks/subnets/tables.py:80 +msgid "Subnets" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:38 +#: dashboards/syspanel/networks/ports/tables.py:41 +#: dashboards/syspanel/networks/subnets/tables.py:38 +#, python-format +msgid "Failed to delete subnet %s" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:59 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:7 +#: dashboards/syspanel/networks/subnets/tables.py:59 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:7 +msgid "Edit Subnet" +msgstr "" + +#: dashboards/nova/networks/subnets/tabs.py:41 +msgid "Unable to retrieve subnet details." +msgstr "" + +#: dashboards/nova/networks/subnets/views.py:52 +#: dashboards/syspanel/networks/ports/views.py:48 +#: dashboards/syspanel/networks/subnets/views.py:47 +msgid "Unable to retrieve network." +msgstr "" + +#: dashboards/nova/networks/subnets/views.py:84 +#: dashboards/syspanel/networks/subnets/views.py:80 +msgid "Unable to retrieve subnet details" +msgstr "" + +#: dashboards/nova/networks/templates/networks/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/_create.html:18 +msgid "Select a name for your network." +msgstr "" + +#: dashboards/nova/networks/templates/networks/_detail_overview.html:3 +msgid "Network Overview" +msgstr "" + +#: dashboards/nova/networks/templates/networks/_update.html:17 +#: dashboards/syspanel/networks/templates/networks/_update.html:17 +msgid "You may update the editable properties of your network here." +msgstr "" + +#: dashboards/nova/networks/templates/networks/detail.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/index.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/index.html:6 +msgid "Network Detail" +msgstr "" + +#: dashboards/nova/networks/templates/networks/detail.html:6 +msgid "Network Detail: " +msgstr "" + +#: dashboards/nova/networks/templates/networks/update.html:3 +#: dashboards/nova/networks/templates/networks/update.html:6 +#: dashboards/syspanel/networks/templates/networks/update.html:3 +#: dashboards/syspanel/networks/templates/networks/update.html:6 +msgid "Update Network" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:3 +msgid "Port Overview" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:6 +#: dashboards/syspanel/networks/ports/tables.py:34 +msgid "Port" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:17 +msgid "Fixed IP" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:21 +msgid "IP address:" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:22 +msgid "Subnet ID" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:28 +msgid "Mac Address" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:34 +#: dashboards/syspanel/networks/ports/forms.py:41 +#: dashboards/syspanel/networks/ports/forms.py:73 +msgid "Device ID" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/detail.html:3 +#: dashboards/nova/networks/templates/networks/ports/detail.html:6 +msgid "Port Detail" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_create.html:18 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:18 +msgid "" +"You can create a subnet for the network. Any network address can be " +"specified unless the network address does not overlap other subnets in the " +"network." +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:3 +msgid "Subnet Overview" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:17 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:16 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:16 +msgid "IP version" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:21 +msgid "IP allocation pool" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:24 +msgid "Start" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:25 +msgid " - End" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_update.html:26 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:26 +msgid "You may update the editable properties of your subnet here." +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/detail.html:3 +#: dashboards/nova/networks/templates/networks/subnets/detail.html:6 +msgid "Subnet Detail" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/update.html:3 +#: dashboards/nova/networks/templates/networks/subnets/update.html:6 +#: dashboards/syspanel/networks/templates/networks/subnets/update.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/update.html:6 +msgid "Update Subnet" +msgstr "" + #: dashboards/nova/templates/nova/_warning.html:6 msgid "You currently have the power to damage your OpenStack cloud..." msgstr "" @@ -1759,52 +2312,86 @@ msgstr "" msgid "Learn More" msgstr "" -#: dashboards/nova/volumes/forms.py:40 +#: dashboards/nova/volumes/forms.py:26 +msgid "Volume Name" +msgstr "" + +#: dashboards/nova/volumes/forms.py:29 +msgid "Size (GB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:30 +msgid "Use snapshot as a source" +msgstr "" + +#: dashboards/nova/volumes/forms.py:49 +#, python-format +msgid "Volume size must be equal to or greater than the snapshot size (%sGB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:54 +msgid "Unable to load the specified snapshot." +msgstr "" + +#: dashboards/nova/volumes/forms.py:59 +msgid "Choose a snapshot" +msgstr "" + +#: dashboards/nova/volumes/forms.py:83 +#, python-format +msgid "The volume size cannot be less than the snapshot size (%sGB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:92 #, python-format msgid "" "A volume of %(req)iGB cannot be created as you only have %(avail)iGB of your " "quota available." msgstr "" -#: dashboards/nova/volumes/forms.py:47 +#: dashboards/nova/volumes/forms.py:99 msgid "You are already using all of your available volumes." msgstr "" -#: dashboards/nova/volumes/forms.py:60 +#: dashboards/nova/volumes/forms.py:115 msgid "Unable to create volume." msgstr "" -#: dashboards/nova/volumes/forms.py:67 +#: dashboards/nova/volumes/forms.py:123 +msgid "Attach to Instance" +msgstr "" + +#: dashboards/nova/volumes/forms.py:124 msgid "Select an instance to attach to." msgstr "" -#: dashboards/nova/volumes/forms.py:100 +#: dashboards/nova/volumes/forms.py:168 msgid "Unknown instance (None)" msgstr "" -#: dashboards/nova/volumes/forms.py:111 +#: dashboards/nova/volumes/forms.py:179 #, python-format msgid "Attaching volume %(vol)s to instance %(inst)s on %(dev)s." msgstr "" -#: dashboards/nova/volumes/forms.py:118 +#: dashboards/nova/volumes/forms.py:188 msgid "Unable to attach volume." msgstr "" -#: dashboards/nova/volumes/forms.py:142 +#: dashboards/nova/volumes/forms.py:212 #, python-format msgid "Creating volume snapshot \"%s\"" msgstr "" -#: dashboards/nova/volumes/forms.py:146 +#: dashboards/nova/volumes/forms.py:218 msgid "Unable to create volume snapshot." msgstr "" #: dashboards/nova/volumes/panel.py:24 dashboards/nova/volumes/tables.py:37 -#: dashboards/nova/volumes/tables.py:160 dashboards/nova/volumes/tables.py:172 +#: dashboards/nova/volumes/tables.py:162 dashboards/nova/volumes/tables.py:174 #: dashboards/nova/volumes/templates/volumes/index.html:3 #: dashboards/nova/volumes/templates/volumes/index.html:6 -#: dashboards/syspanel/projects/forms.py:116 +#: dashboards/syspanel/projects/workflows.py:39 #: dashboards/syspanel/volumes/panel.py:9 #: dashboards/syspanel/volumes/tables.py:15 #: dashboards/syspanel/volumes/templates/volumes/index.html:3 @@ -1812,12 +2399,6 @@ msgstr "" msgid "Volumes" msgstr "" -#: dashboards/nova/volumes/tables.py:50 -#: dashboards/nova/volumes/templates/volumes/_create.html:8 -#: dashboards/nova/volumes/templates/volumes/_create.html:55 -msgid "Create Volume" -msgstr "" - #: dashboards/nova/volumes/tables.py:57 msgid "Edit Attachments" msgstr "" @@ -1827,7 +2408,7 @@ msgstr "" msgid "%sGB" msgstr "" -#: dashboards/nova/volumes/tables.py:97 +#: dashboards/nova/volumes/tables.py:97 dashboards/nova/volumes/views.py:140 msgid "Unable to retrieve attachment information." msgstr "" @@ -1836,15 +2417,15 @@ msgstr "" msgid "Attached to %(instance)s on %(dev)s" msgstr "" -#: dashboards/nova/volumes/tables.py:169 +#: dashboards/nova/volumes/tables.py:171 msgid "Detach" msgstr "" -#: dashboards/nova/volumes/tables.py:170 +#: dashboards/nova/volumes/tables.py:172 msgid "Detaching" msgstr "" -#: dashboards/nova/volumes/tables.py:205 +#: dashboards/nova/volumes/tables.py:207 #, python-format msgid "%(dev)s on instance %(instance_name)s" msgstr "" @@ -1853,15 +2434,15 @@ msgstr "" msgid "Unable to retrieve volume details." msgstr "" -#: dashboards/nova/volumes/views.py:50 +#: dashboards/nova/volumes/views.py:52 msgid "Unable to retrieve volume list." msgstr "" -#: dashboards/nova/volumes/views.py:56 +#: dashboards/nova/volumes/views.py:58 msgid "Unable to retrieve volume/instance attachment information" msgstr "" -#: dashboards/nova/volumes/views.py:114 dashboards/nova/volumes/views.py:124 +#: dashboards/nova/volumes/views.py:121 dashboards/nova/volumes/views.py:131 msgid "Unable to retrieve volume information." msgstr "" @@ -1870,11 +2451,11 @@ msgstr "" msgid "Manage Volume Attachments" msgstr "" -#: dashboards/nova/volumes/templates/volumes/_attach.html:12 +#: dashboards/nova/volumes/templates/volumes/_attach.html:13 msgid "Attach To Instance" msgstr "" -#: dashboards/nova/volumes/templates/volumes/_attach.html:19 +#: dashboards/nova/volumes/templates/volumes/_attach.html:22 msgid "Attach Volume" msgstr "" @@ -1931,7 +2512,7 @@ msgstr "" msgid "Volume Detail" msgstr "" -#: dashboards/settings/dashboard.py:24 +#: dashboards/settings/dashboard.py:24 templates/_header.html:4 msgid "Settings" msgstr "" @@ -1939,15 +2520,15 @@ msgstr "" msgid "Select a Project" msgstr "" -#: dashboards/settings/ec2/forms.py:51 +#: dashboards/settings/ec2/forms.py:45 msgid "Unable to retrieve tenant list." msgstr "" -#: dashboards/settings/ec2/forms.py:93 +#: dashboards/settings/ec2/forms.py:87 msgid "Unable to fetch EC2 credentials." msgstr "" -#: dashboards/settings/ec2/forms.py:106 +#: dashboards/settings/ec2/forms.py:100 #, python-format msgid "Error writing zipfile: %(exc)s" msgstr "" @@ -1970,7 +2551,7 @@ msgid "" "private key and certificate." msgstr "" -#: dashboards/settings/project/forms.py:76 +#: dashboards/settings/project/forms.py:70 #, python-format msgid "Error Downloading RC File: %s" msgstr "" @@ -2024,7 +2605,7 @@ msgid "From here you can modify dashboard settings for your user." msgstr "" #: dashboards/settings/user/templates/user/_settings.html:23 -#: workflows/base.py:510 +#: dashboards/syspanel/projects/workflows.py:243 workflows/base.py:538 msgid "Save" msgstr "" @@ -2052,14 +2633,18 @@ msgstr "" msgid "Ephemeral Disk GB" msgstr "" -#: dashboards/syspanel/flavors/forms.py:51 +#: dashboards/syspanel/flavors/forms.py:52 #, python-format msgid "%s was successfully added to flavors." msgstr "" +#: dashboards/syspanel/flavors/forms.py:56 +msgid "Unable to create flavor" +msgstr "" + #: dashboards/syspanel/flavors/panel.py:28 #: dashboards/syspanel/flavors/tables.py:14 -#: dashboards/syspanel/flavors/tables.py:38 +#: dashboards/syspanel/flavors/tables.py:44 #: dashboards/syspanel/flavors/templates/flavors/index.html:8 msgid "Flavors" msgstr "" @@ -2071,32 +2656,32 @@ msgstr "" msgid "Create Flavor" msgstr "" -#: dashboards/syspanel/flavors/tables.py:29 +#: dashboards/syspanel/flavors/tables.py:28 +#, python-format +msgid "%sMB" +msgstr "" + +#: dashboards/syspanel/flavors/tables.py:33 msgid "Flavor Name" msgstr "" -#: dashboards/syspanel/flavors/tables.py:31 +#: dashboards/syspanel/flavors/tables.py:36 msgid "Memory" msgstr "" #: dashboards/syspanel/flavors/views.py:48 -msgid "Unauthorized." -msgstr "" - -#: dashboards/syspanel/flavors/views.py:53 -#, python-format -msgid "Unable to get flavor list: %s" +msgid "Unable to retrieve flavor list." msgstr "" #: dashboards/syspanel/flavors/templates/flavors/_create.html:18 msgid "From here you can define the sizing of a new flavor." msgstr "" -#: dashboards/syspanel/images/views.py:52 +#: dashboards/syspanel/images/views.py:53 msgid "Unable to retrieve image list." msgstr "" -#: dashboards/syspanel/instances/tables.py:62 usage/tables.py:29 +#: dashboards/syspanel/instances/tables.py:62 usage/tables.py:30 msgid "Project Name" msgstr "" @@ -2106,6 +2691,7 @@ msgid "Host" msgstr "" #: dashboards/syspanel/instances/views.py:72 +#: dashboards/syspanel/networks/views.py:48 msgid "Unable to retrieve instance tenant information." msgstr "" @@ -2113,6 +2699,78 @@ msgstr "" msgid "All Instances" msgstr "" +#: dashboards/syspanel/networks/forms.py:45 +#: dashboards/syspanel/users/forms.py:41 +msgid "Select a project" +msgstr "" + +#: dashboards/syspanel/networks/forms.py:56 +#, python-format +msgid "Network %s was successfully created." +msgstr "" + +#: dashboards/syspanel/networks/forms.py:62 +#, python-format +msgid "Failed to create network %s" +msgstr "" + +#: dashboards/syspanel/networks/ports/forms.py:53 +#, python-format +msgid "Port %s was successfully created." +msgstr "" + +#: dashboards/syspanel/networks/ports/forms.py:58 +#, python-format +msgid "Failed to create a port for network %s" +msgstr "" + +#: dashboards/syspanel/networks/ports/forms.py:83 +#, python-format +msgid "Port %s was successfully updated." +msgstr "" + +#: dashboards/syspanel/networks/ports/forms.py:88 +#, python-format +msgid "Failed to update port %s" +msgstr "" + +#: dashboards/syspanel/networks/ports/tables.py:51 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/ports/create.html:3 +#: dashboards/syspanel/networks/templates/networks/ports/create.html:6 +msgid "Create Port" +msgstr "" + +#: dashboards/syspanel/networks/ports/tables.py:62 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:7 +msgid "Edit Port" +msgstr "" + +#: dashboards/syspanel/networks/ports/views.py:81 +msgid "Unable to retrieve port details" +msgstr "" + +#: dashboards/syspanel/networks/subnets/forms.py:42 +#, python-format +msgid "Failed to retrieve network %s for a subnet" +msgstr "" + +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:18 +msgid "" +"You can create a port for the network. If you specify device ID to be " +"attached, the device specified will be attached to the port created." +msgstr "" + +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:22 +msgid "You may update the editable properties of your port here." +msgstr "" + +#: dashboards/syspanel/networks/templates/networks/ports/update.html:3 +#: dashboards/syspanel/networks/templates/networks/ports/update.html:6 +msgid "Update Port" +msgstr "" + #: dashboards/syspanel/overview/templates/overview/usage.html:3 msgid "Usage Overview" msgstr "" @@ -2121,91 +2779,14 @@ msgstr "" msgid "Monitoring" msgstr "" -#: dashboards/syspanel/projects/forms.py:38 -#: dashboards/syspanel/users/forms.py:75 -msgid "Role" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:52 -msgid "Successfully added user to project." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:54 -msgid "Unable to add user to project." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:64 -#: dashboards/syspanel/projects/forms.py:89 -#: dashboards/syspanel/projects/tables.py:78 -#: dashboards/syspanel/services/tables.py:42 -#: dashboards/syspanel/users/tables.py:38 -#: dashboards/syspanel/users/tables.py:112 -msgid "Enabled" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:75 -#, python-format -msgid "%s was successfully created." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:78 -msgid "Unable to create project." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:100 -#, python-format -msgid "%s was successfully updated." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:103 -msgid "Unable to update project." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:108 -msgid "ID (name)" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:110 -msgid "Metadata Items" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:111 -msgid "Injected Files" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:112 -msgid "Injected File Content Bytes" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:117 -msgid "Gigabytes" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:118 -msgid "RAM (in MB)" -msgstr "" - -#: dashboards/syspanel/projects/forms.py:136 -#, python-format -msgid "Quotas for %s were successfully updated." -msgstr "" - -#: dashboards/syspanel/projects/forms.py:139 -msgid "Unable to update quotas." -msgstr "" - #: dashboards/syspanel/projects/panel.py:28 -#: dashboards/syspanel/projects/tables.py:53 -#: dashboards/syspanel/projects/tables.py:82 +#: dashboards/syspanel/projects/tables.py:66 +#: dashboards/syspanel/projects/tables.py:95 #: dashboards/syspanel/projects/templates/projects/index.html:8 msgid "Projects" msgstr "" -#: dashboards/syspanel/projects/tables.py:18 -msgid "Modify Quotas" -msgstr "" - -#: dashboards/syspanel/projects/tables.py:25 +#: dashboards/syspanel/projects/tables.py:19 msgid "Modify Users" msgstr "" @@ -2214,64 +2795,186 @@ msgid "View Usage" msgstr "" #: dashboards/syspanel/projects/tables.py:39 -msgid "Edit Project" +#: dashboards/syspanel/projects/templates/projects/_create.html:8 +#: dashboards/syspanel/projects/templates/projects/_create.html:23 +#: dashboards/syspanel/projects/templates/projects/create.html:6 +msgid "Create Project" msgstr "" #: dashboards/syspanel/projects/tables.py:46 -msgid "Create New Project" -msgstr "" - -#: dashboards/syspanel/projects/tables.py:90 -msgid "Remove" +#: dashboards/syspanel/projects/workflows.py:242 +#: dashboards/syspanel/projects/templates/projects/update.html:3 +#: dashboards/syspanel/projects/templates/projects/update.html:6 +msgid "Edit Project" msgstr "" #: dashboards/syspanel/projects/tables.py:91 +#: dashboards/syspanel/projects/workflows.py:71 +#: dashboards/syspanel/projects/workflows.py:134 +#: dashboards/syspanel/services/tables.py:42 +#: dashboards/syspanel/users/tables.py:39 +#: dashboards/syspanel/users/tables.py:114 +msgid "Enabled" +msgstr "" + +#: dashboards/syspanel/projects/tables.py:104 +msgid "Remove" +msgstr "" + +#: dashboards/syspanel/projects/tables.py:105 msgid "Removed" msgstr "" -#: dashboards/syspanel/projects/tables.py:93 +#: dashboards/syspanel/projects/tables.py:107 #: dashboards/syspanel/users/panel.py:28 -#: dashboards/syspanel/users/tables.py:40 -#: dashboards/syspanel/users/tables.py:74 -#: dashboards/syspanel/users/tables.py:119 +#: dashboards/syspanel/users/tables.py:41 +#: dashboards/syspanel/users/tables.py:75 +#: dashboards/syspanel/users/tables.py:121 #: dashboards/syspanel/users/templates/users/index.html:8 msgid "Users" msgstr "" -#: dashboards/syspanel/projects/tables.py:111 +#: dashboards/syspanel/projects/tables.py:125 msgid "Unable to retrieve role information." msgstr "" -#: dashboards/syspanel/projects/tables.py:116 +#: dashboards/syspanel/projects/tables.py:130 msgid "Roles" msgstr "" -#: dashboards/syspanel/projects/tables.py:120 +#: dashboards/syspanel/projects/tables.py:134 msgid "Users For Project" msgstr "" -#: dashboards/syspanel/projects/tables.py:128 +#: dashboards/syspanel/projects/tables.py:142 msgid "Add To Project" msgstr "" -#: dashboards/syspanel/projects/tables.py:140 +#: dashboards/syspanel/projects/tables.py:154 msgid "Add New Users" msgstr "" -#: dashboards/syspanel/projects/views.py:49 +#: dashboards/syspanel/projects/views.py:67 +msgid "Unable to retrieve project information." +msgstr "" + +#: dashboards/syspanel/projects/views.py:87 msgid "Unable to retrieve project list." msgstr "" -#: dashboards/syspanel/projects/views.py:71 -msgid "Unable to retrieve project." -msgstr "" - -#: dashboards/syspanel/projects/views.py:100 +#: dashboards/syspanel/projects/views.py:110 msgid "Unable to retrieve users." msgstr "" -#: dashboards/syspanel/projects/views.py:143 -msgid "Unable to retrieve roles." +#: dashboards/syspanel/projects/views.py:154 +msgid "Unable to retrieve default quota values." +msgstr "" + +#: dashboards/syspanel/projects/views.py:182 +msgid "Unable to retrieve project details." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:32 +msgid "Injected File Content Bytes" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:33 +msgid "Metadata Items" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:36 +msgid "Injected Files" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:40 +msgid "Gigabytes" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:41 +msgid "RAM (MB)" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:45 +msgid "Quota" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:47 +msgid "From here you can set quotas (max limits) for the project." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:76 +#: dashboards/syspanel/projects/workflows.py:137 +msgid "Project Info" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:77 +#: dashboards/syspanel/projects/templates/projects/_create.html:18 +msgid "From here you can create a new project to organize users." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:91 +msgid "Add Project" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:92 +msgid "Finish" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:93 +#, python-format +msgid "Created new project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:94 +#, python-format +msgid "Unable to create project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:129 +msgid "Unable to set project quotas." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:139 +msgid "From here you can edit the project details." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:161 +msgid "Unable to retrieve user list. Please try again later." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:167 +msgid "Create New User" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:217 +#: dashboards/syspanel/projects/templates/projects/_update_members.html:16 +msgid "Project Members" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:231 +#: dashboards/syspanel/users/views.py:46 +msgid "Unable to retrieve user list." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:244 +#, python-format +msgid "Modified project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:245 +#, python-format +msgid "Unable to modify project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:315 +#, python-format +msgid "Failed to modify %s project members and update project quotas." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:336 +msgid "" +"Modified project information and members, but unable to modify project " +"quotas." msgstr "" #: dashboards/syspanel/projects/templates/projects/_add_user.html:8 @@ -2288,14 +2991,21 @@ msgstr "" msgid "Add" msgstr "" -#: dashboards/syspanel/projects/templates/projects/_create.html:8 -#: dashboards/syspanel/projects/templates/projects/_create.html:23 -#: dashboards/syspanel/projects/templates/projects/create.html:6 -msgid "Create Project" +#: dashboards/syspanel/projects/templates/projects/_create_user.html:7 +#, python-format +msgid "Create User for project '%(tenant_name)s'." msgstr "" -#: dashboards/syspanel/projects/templates/projects/_create.html:18 -msgid "From here you can create a new project to organize users." +#: dashboards/syspanel/projects/templates/projects/_create_user.html:18 +msgid "From here you can create a new user to add to this project." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/_create_user.html:23 +#: dashboards/syspanel/users/tables.py:19 +#: dashboards/syspanel/users/templates/users/_create.html:7 +#: dashboards/syspanel/users/templates/users/_create.html:22 +#: dashboards/syspanel/users/templates/users/create.html:7 +msgid "Create User" msgstr "" #: dashboards/syspanel/projects/templates/projects/_quotas.html:7 @@ -2312,7 +3022,6 @@ msgstr "" #: dashboards/syspanel/projects/templates/projects/_update.html:8 #: dashboards/syspanel/projects/templates/projects/_update.html:23 #: dashboards/syspanel/projects/templates/projects/quotas.html:6 -#: dashboards/syspanel/projects/templates/projects/update.html:6 msgid "Update Project" msgstr "" @@ -2320,6 +3029,26 @@ msgstr "" msgid "From here you can edit a project." msgstr "" +#: dashboards/syspanel/projects/templates/projects/_update_members.html:7 +msgid "" +"From here you can add and remove members to this project from the list of " +"all available users." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/_update_members.html:10 +msgid "All Users" +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/_update_members.html:25 +#: dashboards/syspanel/projects/templates/projects/_update_members.html:32 +msgid "No users found." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/create_user.html:3 +#: dashboards/syspanel/projects/templates/projects/create_user.html:6 +msgid "Add New User" +msgstr "" + #: dashboards/syspanel/projects/templates/projects/usage.html:3 msgid "Project Usage Overview" msgstr "" @@ -2345,7 +3074,7 @@ msgstr "" msgid "Limit" msgstr "" -#: dashboards/syspanel/quotas/views.py:44 +#: dashboards/syspanel/quotas/views.py:45 msgid "Unable to get quota info." msgstr "" @@ -2367,115 +3096,109 @@ msgstr "" msgid "Service" msgstr "" -#: dashboards/syspanel/users/forms.py:42 -msgid "Select a project" -msgstr "" - -#: dashboards/syspanel/users/forms.py:58 +#: dashboards/syspanel/users/forms.py:53 msgid "Passwords do not match." msgstr "" -#: dashboards/syspanel/users/forms.py:63 +#: dashboards/syspanel/users/forms.py:61 #: dashboards/syspanel/users/forms.py:114 -#: dashboards/syspanel/users/tables.py:106 +#: dashboards/syspanel/users/tables.py:107 msgid "User Name" msgstr "" -#: dashboards/syspanel/users/forms.py:64 +#: dashboards/syspanel/users/forms.py:62 #: dashboards/syspanel/users/forms.py:115 -#: dashboards/syspanel/users/tables.py:107 +#: dashboards/syspanel/users/tables.py:108 msgid "Email" msgstr "" -#: dashboards/syspanel/users/forms.py:66 +#: dashboards/syspanel/users/forms.py:64 #: dashboards/syspanel/users/forms.py:116 msgid "Password" msgstr "" -#: dashboards/syspanel/users/forms.py:71 +#: dashboards/syspanel/users/forms.py:69 #: dashboards/syspanel/users/forms.py:123 msgid "Confirm Password" msgstr "" -#: dashboards/syspanel/users/forms.py:74 +#: dashboards/syspanel/users/forms.py:72 #: dashboards/syspanel/users/forms.py:126 msgid "Primary Project" msgstr "" -#: dashboards/syspanel/users/forms.py:96 +#: dashboards/syspanel/users/forms.py:74 +msgid "Role" +msgstr "" + +#: dashboards/syspanel/users/forms.py:95 #, python-format msgid "User \"%s\" was successfully created." msgstr "" #: dashboards/syspanel/users/forms.py:105 -msgid "Unable to add user to primary project." +msgid "Unable to add userto primary project." msgstr "" -#: dashboards/syspanel/users/forms.py:108 +#: dashboards/syspanel/users/forms.py:109 msgid "Unable to create user." msgstr "" -#: dashboards/syspanel/users/forms.py:151 +#: dashboards/syspanel/users/forms.py:150 msgid "name" msgstr "" -#: dashboards/syspanel/users/forms.py:151 +#: dashboards/syspanel/users/forms.py:150 msgid "email" msgstr "" -#: dashboards/syspanel/users/forms.py:160 +#: dashboards/syspanel/users/forms.py:159 msgid "primary project" msgstr "" #: dashboards/syspanel/users/forms.py:172 +#, python-format +msgid "The user %s has no role defined for" +msgstr "" + +#: dashboards/syspanel/users/forms.py:180 msgid "password" msgstr "" -#: dashboards/syspanel/users/forms.py:181 +#: dashboards/syspanel/users/forms.py:189 msgid "User has been updated successfully." msgstr "" -#: dashboards/syspanel/users/forms.py:185 +#: dashboards/syspanel/users/forms.py:193 #, python-format msgid "Unable to update %(attributes)s for the user." msgstr "" -#: dashboards/syspanel/users/tables.py:18 -#: dashboards/syspanel/users/templates/users/_create.html:7 -#: dashboards/syspanel/users/templates/users/_create.html:22 -#: dashboards/syspanel/users/templates/users/create.html:7 -msgid "Create User" -msgstr "" - -#: dashboards/syspanel/users/tables.py:37 +#: dashboards/syspanel/users/tables.py:38 msgid "Enable" msgstr "" -#: dashboards/syspanel/users/tables.py:37 +#: dashboards/syspanel/users/tables.py:38 msgid "Disable" msgstr "" -#: dashboards/syspanel/users/tables.py:38 +#: dashboards/syspanel/users/tables.py:39 msgid "Disabled" msgstr "" -#: dashboards/syspanel/users/tables.py:61 +#: dashboards/syspanel/users/tables.py:62 msgid "You cannot disable the user you are currently logged in as." msgstr "" -#: dashboards/syspanel/users/tables.py:111 +#: dashboards/syspanel/users/tables.py:113 msgid "User ID" msgstr "" -#: dashboards/syspanel/users/views.py:46 -msgid "Unable to retrieve user list." -msgstr "" - -#: dashboards/syspanel/users/views.py:67 +#: dashboards/syspanel/users/views.py:69 msgid "Unable to update user." msgstr "" -#: dashboards/syspanel/users/views.py:93 +#: dashboards/syspanel/users/views.py:103 msgid "Unable to retrieve user roles." msgstr "" @@ -2494,55 +3217,83 @@ msgid "" "From here you can edit the user's details, including their default project." msgstr "" -#: tables/actions.py:299 +#: tables/actions.py:338 msgid "Filter" msgstr "" -#: tables/actions.py:461 +#: tables/actions.py:502 +msgid "N/A" +msgstr "" + +#: tables/actions.py:526 #, python-format msgid "You do not have permission to %(action)s: %(objs)s" msgstr "" -#: tables/actions.py:467 +#: tables/actions.py:532 #, python-format msgid "Unable to %(action)s: %(objs)s" msgstr "" -#: tables/actions.py:473 +#: tables/actions.py:538 #, python-format msgid "%(action)s: %(objs)s" msgstr "" -#: tables/actions.py:483 +#: tables/actions.py:548 msgid "Delete" msgstr "" -#: tables/actions.py:484 +#: tables/actions.py:549 msgid "Deleted" msgstr "" -#: tables/base.py:257 +#: tables/base.py:266 #, python-format msgid "The attribute %(attr)s doesn't exist on %(obj)s." msgstr "" -#: tables/base.py:743 +#: tables/base.py:819 msgid "Actions" msgstr "" -#: tables/base.py:891 +#: tables/base.py:981 msgid "No items to display." msgstr "" -#: tables/base.py:908 +#: tables/base.py:998 #, python-format msgid "No match returned for the id \"%s\"." msgstr "" -#: tables/base.py:1015 +#: tables/base.py:1128 msgid "Please select a row before taking that action." msgstr "" +#: templates/_header.html:3 +msgid "Logged in as" +msgstr "" + +#: templates/_header.html:6 +msgid "Help" +msgstr "" + +#: templates/_header.html:8 +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 "" + #: templates/horizon/_messages.html:7 msgid "Info: " msgstr "" @@ -2559,15 +3310,11 @@ msgstr "" msgid "Error: " msgstr "" -#: templates/horizon/client_side/_loading.html:9 -msgid "Loading…" -msgstr "" - -#: templates/horizon/common/_data_table.html:33 +#: templates/horizon/common/_data_table.html:36 msgid "Summary" msgstr "" -#: templates/horizon/common/_data_table.html:42 +#: templates/horizon/common/_data_table.html:45 #, python-format msgid "Displaying %(counter)s item" msgid_plural "Displaying %(counter)s items" @@ -2602,6 +3349,10 @@ msgstr "" msgid "This Month's GB-Hours" msgstr "" +#: templatetags/branding.py:35 +msgid "Horizon" +msgstr "" + #: templatetags/horizon.py:108 msgid "No Limit" msgstr "" @@ -2665,38 +3416,42 @@ msgstr "" msgid "Giant ants are attacking San Francisco!" msgstr "" -#: tests/table_tests.py:104 +#: tests/table_tests.py:106 msgid "Batch" msgstr "" -#: tests/table_tests.py:105 +#: tests/table_tests.py:107 msgid "Batched" msgstr "" -#: tests/table_tests.py:106 tests/table_tests.py:117 +#: tests/table_tests.py:108 tests/table_tests.py:119 msgid "Item" msgstr "" -#: tests/table_tests.py:107 tests/table_tests.py:118 +#: tests/table_tests.py:109 tests/table_tests.py:120 msgid "Items" msgstr "" -#: tests/table_tests.py:115 +#: tests/table_tests.py:117 msgid "Down" msgstr "" -#: tests/table_tests.py:115 +#: tests/table_tests.py:117 msgid "Up" msgstr "" -#: tests/table_tests.py:116 +#: tests/table_tests.py:118 msgid "Downed" msgstr "" -#: tests/table_tests.py:116 +#: tests/table_tests.py:118 msgid "Upped" msgstr "" +#: tests/table_tests.py:185 +msgid "No Actions Table" +msgstr "" + #: tests/tabs_tests.py:36 msgid "Tab One" msgstr "" @@ -2721,7 +3476,7 @@ msgstr "" msgid "Recoverable Error Tab" msgstr "" -#: tests/testsettings.py:111 +#: tests/testsettings.py:118 msgid "Password must be between 8 and 18 characters." msgstr "" @@ -2787,31 +3542,31 @@ msgstr "" msgid "Download CSV Summary" msgstr "" -#: usage/tables.py:24 +#: usage/tables.py:25 msgid "VCPU Hours" msgstr "" -#: usage/tables.py:31 +#: usage/tables.py:32 msgid "Disk GB Hours" msgstr "" -#: usage/tables.py:39 usage/tables.py:67 +#: usage/tables.py:40 usage/tables.py:68 msgid "Usage Summary" msgstr "" -#: usage/tables.py:59 +#: usage/tables.py:60 msgid "Uptime" msgstr "" -#: utils/fields.py:43 +#: utils/fields.py:46 msgid "Incorrect format for IP address" msgstr "" -#: utils/fields.py:44 +#: utils/fields.py:47 msgid "Invalid version for IP address" msgstr "" -#: utils/fields.py:45 +#: utils/fields.py:48 msgid "Invalid subnet mask" msgstr "" @@ -2819,16 +3574,16 @@ msgstr "" msgid "Password is not accepted" msgstr "" -#: workflows/base.py:69 +#: workflows/base.py:70 msgid "Processing..." msgstr "" -#: workflows/base.py:511 +#: workflows/base.py:539 #, python-format msgid "%s completed successfully." msgstr "" -#: workflows/base.py:512 +#: workflows/base.py:540 #, python-format msgid "%s did not complete." msgstr "" diff --git a/horizon/locale/pt/LC_MESSAGES/djangojs.po b/horizon/locale/pt/LC_MESSAGES/djangojs.po new file mode 100644 index 000000000..be384b17b --- /dev/null +++ b/horizon/locale/pt/LC_MESSAGES/djangojs.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 "" diff --git a/horizon/locale/zh_CN/LC_MESSAGES/django.po b/horizon/locale/zh_CN/LC_MESSAGES/django.po index 7f3ca33d7..929d0d196 100644 --- a/horizon/locale/zh_CN/LC_MESSAGES/django.po +++ b/horizon/locale/zh_CN/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: openstack-dashboard\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-07-09 02:28+0000\n" +"POT-Creation-Date: 2012-08-12 21:47+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: ZHANG Hua \n" "Language-Team: Simplified Chinese \n" @@ -31,7 +31,7 @@ msgstr "请登录以继续。" msgid "You are not authorized to access %s" msgstr "您未被授权访问 %s" -#: exceptions.py:299 +#: exceptions.py:270 msgid "Unauthorized. Please try logging in again." msgstr "未授权。请尝试重新登录。" @@ -40,21 +40,21 @@ msgstr "未授权。请尝试重新登录。" msgid "%(type)s (%(backend)s backend)" msgstr "%(type)s (%(backend)s 后台)" -#: api/nova.py:185 +#: api/nova.py:186 #, python-format msgid "ALLOW %(from)s:%(to)s from %(group)s" msgstr "允许 %(from)s:%(to)s 从 %(group)s" -#: api/nova.py:190 +#: api/nova.py:191 #, python-format msgid "ALLOW %(from)s:%(to)s from %(cidr)s" msgstr "允许 %(from)s:%(to)s 从 %(cidr)s" -#: api/nova.py:502 +#: api/nova.py:514 msgid "Unknown instance" msgstr "" -#: api/swift.py:155 +#: api/swift.py:154 msgid "Unicode is not currently supported for object copy." msgstr "对象拷贝目前不支持Unicode" @@ -62,52 +62,53 @@ msgstr "对象拷贝目前不支持Unicode" msgid "Manage Compute" msgstr "管理计算节点" -#: dashboards/nova/dashboard.py:34 +#: dashboards/nova/dashboard.py:35 msgid "Object Store" msgstr "对象仓库" -#: dashboards/nova/dashboard.py:39 dashboards/nova/instances/workflows.py:32 -#: dashboards/syspanel/projects/tables.py:52 tests/workflows_tests.py:39 +#: dashboards/nova/dashboard.py:40 dashboards/nova/instances/workflows.py:37 +#: dashboards/syspanel/networks/forms.py:37 +#: dashboards/syspanel/networks/tables.py:66 +#: dashboards/syspanel/projects/tables.py:65 tests/workflows_tests.py:39 msgid "Project" msgstr "项目" #: dashboards/nova/access_and_security/panel.py:25 -#: dashboards/nova/instances/workflows.py:328 +#: dashboards/nova/instances/workflows.py:345 msgid "Access & Security" msgstr "访问与安全" -#: dashboards/nova/access_and_security/views.py:51 +#: dashboards/nova/access_and_security/views.py:50 msgid "Unable to retrieve keypair list." msgstr "无法获取密钥对列表" -#: dashboards/nova/access_and_security/views.py:60 -#: dashboards/nova/access_and_security/security_groups/views.py:64 +#: dashboards/nova/access_and_security/views.py:59 +#: dashboards/nova/access_and_security/security_groups/views.py:72 msgid "Unable to retrieve security groups." msgstr "无法获取安全组" -#: dashboards/nova/access_and_security/views.py:69 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:44 +#: dashboards/nova/access_and_security/views.py:68 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:48 #, fuzzy msgid "Unable to retrieve floating IP addresses." msgstr "无法获取镜像" -#: dashboards/nova/access_and_security/views.py:76 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:60 +#: dashboards/nova/access_and_security/views.py:75 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:64 #: dashboards/syspanel/instances/views.py:58 msgid "Unable to retrieve instance list." msgstr "无法获取实例列表" -#: dashboards/nova/access_and_security/floating_ips/forms.py:38 +#: dashboards/nova/access_and_security/floating_ips/forms.py:31 msgid "Pool" msgstr "地址池" -#: dashboards/nova/access_and_security/floating_ips/forms.py:53 -#, python-format -msgid "" -"Successfully allocated Floating IP \"%(ip)s\" to project \"%(project)s\"" -msgstr "成功分配浮动IP \"%(ip)s\" 到项目 \"%(project)s\"" +#: dashboards/nova/access_and_security/floating_ips/forms.py:42 +#, fuzzy, python-format +msgid "Allocated Floating IP %(ip)s." +msgstr "分配浮动IP" -#: dashboards/nova/access_and_security/floating_ips/forms.py:57 +#: dashboards/nova/access_and_security/floating_ips/forms.py:46 msgid "Unable to allocate Floating IP." msgstr "无法分配浮动IP" @@ -130,7 +131,7 @@ msgstr "浮动IP" #: dashboards/nova/access_and_security/floating_ips/tables.py:49 #: dashboards/nova/access_and_security/floating_ips/tables.py:132 -#: dashboards/syspanel/projects/forms.py:119 +#: dashboards/syspanel/projects/workflows.py:42 msgid "Floating IPs" msgstr "浮动IP" @@ -160,20 +161,20 @@ msgid "%(INSTANCE_NAME)s (%(INSTANCE_ID)s)" msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:115 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:28 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:34 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:31 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:38 #: dashboards/nova/instances/tables.py:270 #: dashboards/syspanel/instances/tables.py:74 msgid "IP Address" msgstr "IP地址" #: dashboards/nova/access_and_security/floating_ips/tables.py:118 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:31 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:35 #: dashboards/nova/instances/tables.py:62 #: dashboards/nova/instances/tables.py:79 #: dashboards/nova/instances/tables.py:94 #: dashboards/nova/instances/tables.py:122 -#: dashboards/nova/volumes/tables.py:195 tests/workflows_tests.py:58 +#: dashboards/nova/volumes/tables.py:197 tests/workflows_tests.py:58 msgid "Instance" msgstr "实例" @@ -181,86 +182,86 @@ msgstr "实例" msgid "Floating IP Pool" msgstr "浮动IP池" -#: dashboards/nova/access_and_security/floating_ips/views.py:60 +#: dashboards/nova/access_and_security/floating_ips/views.py:64 +#, fuzzy +msgid "Unable to retrieve floating IP pools." +msgstr "无法获取镜像" + +#: dashboards/nova/access_and_security/floating_ips/views.py:67 msgid "No floating IP pools available." msgstr "无有效的浮动IP池" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:35 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:39 msgid "Select the IP address you wish to associate with the selected instance." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:48 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:52 #, fuzzy msgid "Select an IP address" msgstr "选择一个项目" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:50 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:54 #, fuzzy msgid "No IP addresses available" msgstr "无可用实例" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:77 -#: dashboards/nova/volumes/forms.py:92 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:81 +#: dashboards/nova/volumes/forms.py:160 msgid "Select an instance" msgstr "选择一个实例" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:79 -#: dashboards/nova/volumes/forms.py:94 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:83 +#: dashboards/nova/volumes/forms.py:162 msgid "No instances available" msgstr "无可用实例" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:98 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:102 msgid "Manage Floating IP Associations" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:99 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:103 #, fuzzy msgid "Associate" msgstr "关联IP" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:100 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:104 #, python-format msgid "IP address %s associated." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:101 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:105 #, fuzzy, python-format msgid "Unable to associate IP address %s." msgstr "无法关联浮动IP。" -#: dashboards/nova/access_and_security/keypairs/forms.py:40 -#: dashboards/nova/access_and_security/keypairs/forms.py:58 +#: dashboards/nova/access_and_security/keypairs/forms.py:38 +#: dashboards/nova/access_and_security/keypairs/forms.py:49 #: dashboards/nova/access_and_security/keypairs/tables.py:51 msgid "Keypair Name" msgstr "密钥对名称" -#: dashboards/nova/access_and_security/keypairs/forms.py:42 +#: dashboards/nova/access_and_security/keypairs/forms.py:40 msgid "" "Keypair names may only contain letters, numbers, underscores and hyphens." msgstr "密钥名称只能包含字母,数字,下划线和连字符" -#: dashboards/nova/access_and_security/keypairs/forms.py:53 -#, fuzzy -msgid "Unable to create keypair." -msgstr "无法获取密钥对" - -#: dashboards/nova/access_and_security/keypairs/forms.py:60 +#: dashboards/nova/access_and_security/keypairs/forms.py:51 msgid "Public Key" msgstr "公钥" -#: dashboards/nova/access_and_security/keypairs/forms.py:68 +#: dashboards/nova/access_and_security/keypairs/forms.py:60 #, python-format msgid "Successfully imported public key: %s" msgstr "成功导入公钥:%s" -#: dashboards/nova/access_and_security/keypairs/forms.py:74 +#: dashboards/nova/access_and_security/keypairs/forms.py:65 #, fuzzy msgid "Unable to import keypair." msgstr "无法获取密钥对" #: dashboards/nova/access_and_security/keypairs/tables.py:29 -#: dashboards/nova/instances/tables.py:272 -#: dashboards/nova/instances/workflows.py:316 +#: dashboards/nova/instances/tables.py:274 +#: dashboards/nova/instances/workflows.py:332 msgid "Keypair" msgstr "密钥对" @@ -287,31 +288,43 @@ msgstr "创建密钥对" msgid "Fingerprint" msgstr "指纹" -#: dashboards/nova/access_and_security/keypairs/views.py:64 +#: dashboards/nova/access_and_security/keypairs/views.py:73 #, python-format msgid "Unable to create keypair: %(exc)s" msgstr "无法创建密钥对:%(exc)s" -#: dashboards/nova/access_and_security/security_groups/forms.py:40 +#: dashboards/nova/access_and_security/security_groups/forms.py:35 #: dashboards/nova/access_and_security/security_groups/tables.py:57 -#: dashboards/nova/images_and_snapshots/images/forms.py:42 -#: dashboards/nova/images_and_snapshots/images/forms.py:120 +#: dashboards/nova/images_and_snapshots/images/forms.py:39 +#: dashboards/nova/images_and_snapshots/images/forms.py:114 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:9 -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:46 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:63 #: dashboards/nova/instances/templates/instances/_detail_overview.html:9 #: dashboards/nova/instances/templates/instances/_launch_details_help.html:9 -#: dashboards/nova/volumes/tables.py:135 dashboards/nova/volumes/tables.py:153 +#: dashboards/nova/networks/forms.py:36 dashboards/nova/networks/tables.py:82 +#: dashboards/nova/networks/ports/tables.py:40 +#: dashboards/nova/networks/subnets/forms.py:42 +#: dashboards/nova/networks/subnets/forms.py:101 +#: dashboards/nova/networks/subnets/tables.py:69 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:7 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:9 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:9 +#: dashboards/nova/volumes/tables.py:135 dashboards/nova/volumes/tables.py:155 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:9 #: dashboards/syspanel/flavors/forms.py:37 -#: dashboards/syspanel/projects/forms.py:60 -#: dashboards/syspanel/projects/forms.py:85 -#: dashboards/syspanel/projects/tables.py:74 +#: dashboards/syspanel/networks/forms.py:35 +#: dashboards/syspanel/networks/ports/forms.py:39 +#: dashboards/syspanel/networks/ports/forms.py:71 +#: dashboards/syspanel/networks/ports/tables.py:73 +#: dashboards/syspanel/networks/subnets/tables.py:69 +#: dashboards/syspanel/projects/tables.py:87 +#: dashboards/syspanel/projects/workflows.py:66 #: dashboards/syspanel/services/tables.py:38 #: dashboards/syspanel/volumes/tables.py:10 msgid "Name" msgstr "名称" -#: dashboards/nova/access_and_security/security_groups/forms.py:42 +#: dashboards/nova/access_and_security/security_groups/forms.py:37 #: dashboards/nova/access_and_security/security_groups/tables.py:58 #: dashboards/nova/access_and_security/templates/access_and_security/keypairs/_create.html:16 #: dashboards/nova/access_and_security/templates/access_and_security/keypairs/_import.html:16 @@ -319,18 +332,23 @@ msgstr "名称" #: dashboards/nova/containers/templates/containers/_copy.html:16 #: dashboards/nova/containers/templates/containers/_create.html:16 #: dashboards/nova/containers/templates/containers/_upload.html:17 -#: dashboards/nova/volumes/forms.py:25 dashboards/nova/volumes/forms.py:125 +#: dashboards/nova/networks/templates/networks/_create.html:16 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:17 +#: dashboards/nova/volumes/forms.py:28 dashboards/nova/volumes/forms.py:195 #: dashboards/nova/volumes/tables.py:138 #: dashboards/nova/volumes/templates/volumes/_create.html:18 #: dashboards/nova/volumes/templates/volumes/_create_snapshot.html:17 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:14 #: dashboards/syspanel/flavors/templates/flavors/_create.html:17 #: dashboards/syspanel/images/templates/images/_update.html:17 -#: dashboards/syspanel/projects/forms.py:63 -#: dashboards/syspanel/projects/forms.py:88 -#: dashboards/syspanel/projects/tables.py:76 +#: dashboards/syspanel/networks/templates/networks/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:17 +#: dashboards/syspanel/projects/tables.py:89 +#: dashboards/syspanel/projects/workflows.py:69 #: dashboards/syspanel/projects/templates/projects/_add_user.html:17 #: dashboards/syspanel/projects/templates/projects/_create.html:17 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:17 #: dashboards/syspanel/projects/templates/projects/_quotas.html:16 #: dashboards/syspanel/projects/templates/projects/_update.html:17 #: dashboards/syspanel/users/templates/users/_create.html:16 @@ -338,20 +356,24 @@ msgstr "名称" msgid "Description" msgstr "描述" -#: dashboards/nova/access_and_security/security_groups/forms.py:50 +#: dashboards/nova/access_and_security/security_groups/forms.py:45 #, fuzzy, python-format msgid "Successfully created security group: %s" msgstr "成功创建安全组:%s" -#: dashboards/nova/access_and_security/security_groups/forms.py:53 +#: dashboards/nova/access_and_security/security_groups/forms.py:51 msgid "Unable to create security group." msgstr "无法创建安全组。" -#: dashboards/nova/access_and_security/security_groups/forms.py:58 +#: dashboards/nova/access_and_security/security_groups/forms.py:56 #: dashboards/nova/access_and_security/security_groups/tables.py:92 msgid "IP Protocol" msgstr "IP协议" +#: dashboards/nova/access_and_security/security_groups/forms.py:60 +msgid "The protocol which this rule should be applied to." +msgstr "" + #: dashboards/nova/access_and_security/security_groups/forms.py:64 #: dashboards/nova/access_and_security/security_groups/forms.py:70 #: dashboards/nova/access_and_security/security_groups/tables.py:94 @@ -392,56 +414,64 @@ msgstr "编码" msgid "Source Group" msgstr "源组" -#: dashboards/nova/access_and_security/security_groups/forms.py:84 +#: dashboards/nova/access_and_security/security_groups/forms.py:85 +msgid "" +"To specify an allowed IP range, select CIDR. To allow access from all " +"members of another security group select Source Group." +msgstr "" + +#: dashboards/nova/access_and_security/security_groups/forms.py:90 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:15 +#: dashboards/syspanel/networks/subnets/tables.py:71 msgid "CIDR" msgstr "无类别域间路由" -#: dashboards/nova/access_and_security/security_groups/forms.py:87 +#: dashboards/nova/access_and_security/security_groups/forms.py:93 msgid "Classless Inter-Domain Routing (e.g. 192.168.0.0/24)" msgstr "无类别域间路由(例如 192.168.0.0/24)" -#: dashboards/nova/access_and_security/security_groups/forms.py:116 +#: dashboards/nova/access_and_security/security_groups/forms.py:120 #, fuzzy msgid "The ICMP type is invalid." msgstr "\"to\"端口号无效." -#: dashboards/nova/access_and_security/security_groups/forms.py:119 +#: dashboards/nova/access_and_security/security_groups/forms.py:123 #, fuzzy msgid "The ICMP code is invalid." msgstr "\"to\"端口号无效." -#: dashboards/nova/access_and_security/security_groups/forms.py:122 +#: dashboards/nova/access_and_security/security_groups/forms.py:126 msgid "The ICMP type not in range (-1, 255)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:125 +#: dashboards/nova/access_and_security/security_groups/forms.py:129 msgid "The ICMP code not in range (-1, 255)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:129 +#: dashboards/nova/access_and_security/security_groups/forms.py:133 msgid "The \"from\" port number is invalid." msgstr "\"from\"端口号无效。" -#: dashboards/nova/access_and_security/security_groups/forms.py:132 +#: dashboards/nova/access_and_security/security_groups/forms.py:136 msgid "The \"to\" port number is invalid." msgstr "\"to\"端口号无效." -#: dashboards/nova/access_and_security/security_groups/forms.py:135 +#: dashboards/nova/access_and_security/security_groups/forms.py:139 msgid "" "The \"to\" port number must be greater than or equal to the \"from\" port " "number." msgstr "\"to\" 端口号必须大于等于 \"from\" 端口号。" -#: dashboards/nova/access_and_security/security_groups/forms.py:141 +#: dashboards/nova/access_and_security/security_groups/forms.py:145 msgid "Either CIDR or Source Group may be specified, but not both." msgstr "必须指定 CIDR 或者授权源组,但不能全部指定" -#: dashboards/nova/access_and_security/security_groups/forms.py:163 +#: dashboards/nova/access_and_security/security_groups/forms.py:167 #, python-format msgid "Successfully added rule: %s" msgstr "成功添加规则:%s" -#: dashboards/nova/access_and_security/security_groups/forms.py:166 +#: dashboards/nova/access_and_security/security_groups/forms.py:172 #, fuzzy msgid "Unable to add rule to security group." msgstr "无法创建安全组。" @@ -452,7 +482,7 @@ msgstr "安全组" #: dashboards/nova/access_and_security/security_groups/tables.py:31 #: dashboards/nova/access_and_security/security_groups/tables.py:65 -#: dashboards/nova/instances/workflows.py:320 +#: dashboards/nova/instances/workflows.py:337 #: dashboards/nova/instances/templates/instances/_detail_overview.html:49 msgid "Security Groups" msgstr "安全组" @@ -484,10 +514,15 @@ msgstr "源" msgid "Security Group Rules" msgstr "安全组规则" -#: dashboards/nova/access_and_security/security_groups/views.py:55 +#: dashboards/nova/access_and_security/security_groups/views.py:58 msgid "Unable to retrieve security group." msgstr "无法获取安全组" +#: dashboards/nova/access_and_security/security_groups/views.py:78 +#, python-format +msgid "%s (current)" +msgstr "" + #: dashboards/nova/access_and_security/templates/access_and_security/index.html:6 msgid "Access & Security" msgstr "访问与安全" @@ -502,9 +537,14 @@ msgstr "分配浮动IP" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_update.html:16 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:17 #: dashboards/nova/instances/templates/instances/_update.html:16 +#: dashboards/nova/networks/templates/networks/_update.html:16 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:25 #: dashboards/settings/ec2/templates/ec2/download_form.html:17 #: dashboards/settings/project/templates/project/_openrc.html:24 #: dashboards/settings/user/templates/user/_settings.html:17 +#: dashboards/syspanel/networks/templates/networks/_update.html:16 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:21 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:25 msgid "Description:" msgstr "描述:" @@ -533,7 +573,11 @@ msgstr "分配IP" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_update.html:23 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:24 #: dashboards/nova/instances/templates/instances/_update.html:23 -#: dashboards/nova/volumes/templates/volumes/_attach.html:20 +#: dashboards/nova/networks/templates/networks/_create.html:23 +#: dashboards/nova/networks/templates/networks/_update.html:23 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:24 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:32 +#: dashboards/nova/volumes/templates/volumes/_attach.html:24 #: dashboards/nova/volumes/templates/volumes/_create.html:56 #: dashboards/nova/volumes/templates/volumes/_create_snapshot.html:24 #: dashboards/settings/ec2/templates/ec2/download_form.html:24 @@ -541,8 +585,15 @@ msgstr "分配IP" #: dashboards/settings/user/templates/user/_settings.html:24 #: dashboards/syspanel/flavors/templates/flavors/_create.html:24 #: dashboards/syspanel/images/templates/images/_update.html:24 +#: dashboards/syspanel/networks/templates/networks/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/_update.html:23 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:28 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:32 #: dashboards/syspanel/projects/templates/projects/_add_user.html:24 #: dashboards/syspanel/projects/templates/projects/_create.html:24 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:24 #: dashboards/syspanel/projects/templates/projects/_quotas.html:23 #: dashboards/syspanel/projects/templates/projects/_update.html:24 #: dashboards/syspanel/users/templates/users/_create.html:23 @@ -599,161 +650,154 @@ msgstr "编辑安全组规则" msgid "Add Rule" msgstr "添加规则" -#: dashboards/nova/containers/forms.py:38 +#: dashboards/nova/containers/browsers.py:30 +msgid "Swift" +msgstr "" + +#: dashboards/nova/containers/forms.py:37 msgid "Slash is not an allowed character." msgstr "斜线不是合法字符" -#: dashboards/nova/containers/forms.py:48 -#: dashboards/nova/containers/tables.py:91 +#: dashboards/nova/containers/forms.py:47 +#: dashboards/nova/containers/tables.py:125 msgid "Container Name" msgstr "容器名称" -#: dashboards/nova/containers/forms.py:56 +#: dashboards/nova/containers/forms.py:55 msgid "Container created successfully." msgstr "容器创建成功" -#: dashboards/nova/containers/forms.py:67 +#: dashboards/nova/containers/forms.py:66 #, fuzzy msgid "Folder created successfully." msgstr "容器创建成功" -#: dashboards/nova/containers/forms.py:75 +#: dashboards/nova/containers/forms.py:69 msgid "Unable to create container." msgstr "无法创建容器" -#: dashboards/nova/containers/forms.py:85 -#: dashboards/nova/containers/tables.py:157 +#: dashboards/nova/containers/forms.py:77 +#: dashboards/nova/containers/tables.py:253 msgid "Object Name" msgstr "对象名称" -#: dashboards/nova/containers/forms.py:87 +#: dashboards/nova/containers/forms.py:79 msgid "File" msgstr "文件" -#: dashboards/nova/containers/forms.py:103 +#: dashboards/nova/containers/forms.py:95 msgid "Object was successfully uploaded." msgstr "成功上传对象" -#: dashboards/nova/containers/forms.py:105 +#: dashboards/nova/containers/forms.py:98 msgid "Unable to upload object." msgstr "无法上传对象" -#: dashboards/nova/containers/forms.py:111 +#: dashboards/nova/containers/forms.py:102 msgid "Destination container" msgstr "目标容器" -#: dashboards/nova/containers/forms.py:115 +#: dashboards/nova/containers/forms.py:106 msgid "Destination object name" msgstr "目标对象名" -#: dashboards/nova/containers/forms.py:145 -#: dashboards/nova/containers/forms.py:169 +#: dashboards/nova/containers/forms.py:136 +#: dashboards/nova/containers/forms.py:162 msgid "Unable to copy object." msgstr "无法拷贝对象。" -#: dashboards/nova/containers/forms.py:161 +#: dashboards/nova/containers/forms.py:152 #, python-format msgid "Copied \"%(orig)s\" to \"%(dest)s\" as \"%(new)s\"." msgstr "" #: dashboards/nova/containers/panel.py:28 -#: dashboards/nova/containers/tables.py:35 -#: dashboards/nova/containers/tables.py:102 -#: dashboards/nova/containers/templates/containers/index.html:6 +#: dashboards/nova/containers/tables.py:41 +#: dashboards/nova/containers/tables.py:132 msgid "Containers" msgstr "容器" -#: dashboards/nova/containers/tables.py:34 -#: dashboards/nova/containers/templates/containers/detail.html:7 +#: dashboards/nova/containers/tables.py:40 +#: dashboards/nova/containers/templates/containers/index.html:7 msgid "Container" msgstr "容器" -#: dashboards/nova/containers/tables.py:42 +#: dashboards/nova/containers/tables.py:49 msgid "Containers must be empty before deletion." msgstr "" -#: dashboards/nova/containers/tables.py:48 +#: dashboards/nova/containers/tables.py:67 #: dashboards/nova/containers/templates/containers/_create.html:7 #: dashboards/nova/containers/templates/containers/_create.html:22 #: dashboards/nova/containers/templates/containers/create.html:6 msgid "Create Container" msgstr "创建容器" -#: dashboards/nova/containers/tables.py:55 +#: dashboards/nova/containers/tables.py:74 #, fuzzy msgid "View Container" msgstr "容器" -#: dashboards/nova/containers/tables.py:62 +#: dashboards/nova/containers/tables.py:86 #: dashboards/nova/containers/templates/containers/_upload.html:23 #: dashboards/nova/containers/templates/containers/upload.html:3 msgid "Upload Object" msgstr "上传对象" -#: dashboards/nova/containers/tables.py:93 -#: dashboards/nova/containers/tables.py:109 -#: dashboards/nova/containers/tables.py:169 -#: dashboards/nova/containers/templates/containers/detail.html:3 +#: dashboards/nova/containers/tables.py:140 +#: dashboards/nova/containers/tables.py:159 +msgid "Object" +msgstr "对象" + +#: dashboards/nova/containers/tables.py:141 +#: dashboards/nova/containers/tables.py:160 +#: dashboards/nova/containers/tables.py:263 msgid "Objects" msgstr "对象" -#: dashboards/nova/containers/tables.py:95 -#: dashboards/nova/containers/tables.py:160 +#: dashboards/nova/containers/tables.py:152 +msgid "Folder" +msgstr "" + +#: dashboards/nova/containers/tables.py:153 +msgid "Folders" +msgstr "" + +#: dashboards/nova/containers/tables.py:166 +msgid "Copy" +msgstr "拷贝" + +#: dashboards/nova/containers/tables.py:178 +msgid "Download" +msgstr "下载" + +#: dashboards/nova/containers/tables.py:232 +#, fuzzy +msgid "Create Folder" +msgstr "创建类型" + +#: dashboards/nova/containers/tables.py:256 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:30 -#: dashboards/nova/instances/tables.py:271 -#: dashboards/nova/volumes/tables.py:140 +#: dashboards/nova/instances/tables.py:272 +#: dashboards/nova/volumes/tables.py:141 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:26 #: dashboards/syspanel/instances/tables.py:76 msgid "Size" msgstr "大小" -#: dashboards/nova/containers/tables.py:108 -msgid "Object" -msgstr "对象" - -#: dashboards/nova/containers/tables.py:119 -msgid "Copy" -msgstr "拷贝" - -#: dashboards/nova/containers/tables.py:130 -msgid "Download" -msgstr "下载" - -#: dashboards/nova/containers/tables.py:181 -#, fuzzy -msgid "Create Folder" -msgstr "创建类型" - -#: dashboards/nova/containers/tables.py:193 -msgid "Folder" -msgstr "" - -#: dashboards/nova/containers/tables.py:194 -msgid "Folders" -msgstr "" - -#: dashboards/nova/containers/tables.py:200 -#, fuzzy -msgid "Subfolder Name" -msgstr "服务器名称" - -#: dashboards/nova/containers/tables.py:208 -msgid "Subfolders" -msgstr "" - -#: dashboards/nova/containers/views.py:58 +#: dashboards/nova/containers/views.py:52 msgid "Unable to retrieve container list." msgstr "无法获取容器列表" -#: dashboards/nova/containers/views.py:103 +#: dashboards/nova/containers/views.py:80 msgid "Unable to retrieve object list." msgstr "无法获取对象列表" -#: dashboards/nova/containers/views.py:161 +#: dashboards/nova/containers/views.py:175 msgid "Unable to retrieve object." msgstr "无法获取对象" -#: dashboards/nova/containers/views.py:183 +#: dashboards/nova/containers/views.py:204 msgid "Unable to list containers." msgstr "无法列出容器" @@ -810,119 +854,120 @@ msgstr "上传对象" msgid "Images & Snapshots" msgstr "镜像和快照" -#: dashboards/nova/images_and_snapshots/views.py:60 +#: dashboards/nova/images_and_snapshots/views.py:61 msgid "Unable to retrieve images." msgstr "无法获取镜像" -#: dashboards/nova/images_and_snapshots/views.py:71 +#: dashboards/nova/images_and_snapshots/views.py:72 msgid "Unable to retrieve snapshots." msgstr "无法获取快照" -#: dashboards/nova/images_and_snapshots/views.py:79 +#: dashboards/nova/images_and_snapshots/views.py:80 +#: dashboards/nova/volumes/forms.py:65 msgid "Unable to retrieve volume snapshots." msgstr "无法获取卷快照" -#: dashboards/nova/images_and_snapshots/images/forms.py:44 +#: dashboards/nova/images_and_snapshots/images/forms.py:41 msgid "Image Location" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:45 -msgid "An external (HTTP) URL where the image should be loaded from." +#: dashboards/nova/images_and_snapshots/images/forms.py:42 +msgid "An external (HTTP) URL to load the image from." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:48 -#: dashboards/nova/images_and_snapshots/images/forms.py:135 +#: dashboards/nova/images_and_snapshots/images/forms.py:45 +#: dashboards/nova/images_and_snapshots/images/forms.py:129 #: dashboards/nova/images_and_snapshots/images/tables.py:125 #, fuzzy msgid "Format" msgstr "磁盘格式" -#: dashboards/nova/images_and_snapshots/images/forms.py:52 +#: dashboards/nova/images_and_snapshots/images/forms.py:49 msgid "AKI - Amazon Kernel Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:55 +#: dashboards/nova/images_and_snapshots/images/forms.py:52 msgid "AMI - Amazon Machine Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:58 +#: dashboards/nova/images_and_snapshots/images/forms.py:55 msgid "ARI - Amazon Ramdisk Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:61 +#: dashboards/nova/images_and_snapshots/images/forms.py:58 msgid "ISO - Optical Disk Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:63 +#: dashboards/nova/images_and_snapshots/images/forms.py:60 msgid "QCOW2 - QEMU Emulator" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:70 +#: dashboards/nova/images_and_snapshots/images/forms.py:67 msgid "Minimum Disk (GB)" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:71 -#: dashboards/nova/images_and_snapshots/images/forms.py:78 +#: dashboards/nova/images_and_snapshots/images/forms.py:68 +#: dashboards/nova/images_and_snapshots/images/forms.py:75 msgid "" "The minimum disk size required to boot the image. If unspecified, this value " "defaults to 0 (no minimum)." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:77 +#: dashboards/nova/images_and_snapshots/images/forms.py:74 msgid "Minimum Ram (MB)" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:84 -#: dashboards/nova/images_and_snapshots/images/forms.py:139 +#: dashboards/nova/images_and_snapshots/images/forms.py:81 +#: dashboards/nova/images_and_snapshots/images/forms.py:133 #: dashboards/nova/images_and_snapshots/images/tables.py:122 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:15 msgid "Public" msgstr "开放" -#: dashboards/nova/images_and_snapshots/images/forms.py:108 +#: dashboards/nova/images_and_snapshots/images/forms.py:105 #, python-format msgid "Your image %s has been queued for creation." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:111 +#: dashboards/nova/images_and_snapshots/images/forms.py:109 #, fuzzy msgid "Unable to create new image." msgstr "无法获取镜像" -#: dashboards/nova/images_and_snapshots/images/forms.py:121 +#: dashboards/nova/images_and_snapshots/images/forms.py:115 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:48 msgid "Kernel ID" msgstr "内核 ID" -#: dashboards/nova/images_and_snapshots/images/forms.py:126 +#: dashboards/nova/images_and_snapshots/images/forms.py:120 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:52 msgid "Ramdisk ID" msgstr "虚拟硬盘 ID" -#: dashboards/nova/images_and_snapshots/images/forms.py:131 +#: dashboards/nova/images_and_snapshots/images/forms.py:125 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:44 msgid "Architecture" msgstr "构架" -#: dashboards/nova/images_and_snapshots/images/forms.py:144 +#: dashboards/nova/images_and_snapshots/images/forms.py:137 #, python-format msgid "Unable to update image \"%s\"." msgstr "无法更新镜像 \"%s\"." -#: dashboards/nova/images_and_snapshots/images/forms.py:163 +#: dashboards/nova/images_and_snapshots/images/forms.py:161 msgid "Image was successfully updated." msgstr "镜像更新成功。" #: dashboards/nova/images_and_snapshots/images/tables.py:33 #: dashboards/nova/images_and_snapshots/snapshots/tables.py:32 -#: dashboards/nova/instances/workflows.py:394 +#: dashboards/nova/instances/workflows.py:451 msgid "Launch" msgstr "启动" #: dashboards/nova/images_and_snapshots/images/tables.py:45 #: dashboards/nova/images_and_snapshots/images/tables.py:81 -#: dashboards/nova/instances/workflows.py:162 #: dashboards/nova/instances/workflows.py:167 +#: dashboards/nova/instances/workflows.py:172 msgid "Image" msgstr "镜像" @@ -942,7 +987,7 @@ msgid "Create Image" msgstr "更新镜像" #: dashboards/nova/images_and_snapshots/images/tables.py:67 -#: dashboards/syspanel/users/tables.py:30 +#: dashboards/syspanel/users/tables.py:31 msgid "Edit" msgstr "编辑" @@ -954,18 +999,29 @@ msgstr "镜像名" #: dashboards/nova/images_and_snapshots/images/tables.py:118 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:13 -#: dashboards/nova/instances/tables.py:275 +#: dashboards/nova/instances/tables.py:277 #: dashboards/nova/instances/templates/instances/_detail_overview.html:13 -#: dashboards/nova/volumes/tables.py:143 +#: dashboards/nova/networks/tables.py:86 +#: dashboards/nova/networks/ports/tables.py:44 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:13 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:30 +#: dashboards/nova/volumes/tables.py:145 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:17 -#: dashboards/syspanel/instances/tables.py:80 +#: dashboards/syspanel/instances/tables.py:81 +#: dashboards/syspanel/networks/tables.py:71 +#: dashboards/syspanel/networks/ports/tables.py:77 msgid "Status" msgstr "状态" #: dashboards/nova/images_and_snapshots/images/tabs.py:26 -#: dashboards/nova/instances/tabs.py:25 dashboards/nova/overview/panel.py:28 +#: dashboards/nova/instances/tabs.py:25 +#: dashboards/nova/networks/ports/tabs.py:29 +#: dashboards/nova/networks/subnets/tabs.py:31 +#: dashboards/nova/overview/panel.py:28 #: dashboards/nova/overview/templates/overview/usage.html:6 -#: dashboards/nova/volumes/tabs.py:26 dashboards/syspanel/overview/panel.py:28 +#: dashboards/nova/volumes/tabs.py:26 +#: dashboards/syspanel/networks/ports/tabs.py:29 +#: dashboards/syspanel/overview/panel.py:28 #: dashboards/syspanel/overview/templates/overview/usage.html:6 msgid "Overview" msgstr "概况" @@ -974,17 +1030,17 @@ msgstr "概况" msgid "Unable to retrieve image details." msgstr "无法获取镜像详细信息" -#: dashboards/nova/images_and_snapshots/images/views.py:57 +#: dashboards/nova/images_and_snapshots/images/views.py:60 #, fuzzy msgid "Unable to retrieve image." msgstr "无法获取镜像" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:38 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:36 msgid "Instance ID" msgstr "实例ID" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:41 -#: dashboards/nova/volumes/forms.py:123 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:39 +#: dashboards/nova/volumes/forms.py:193 msgid "Snapshot Name" msgstr "快照名称" @@ -993,14 +1049,13 @@ msgstr "快照名称" msgid "Snapshot \"%(name)s\" created for instance \"%(inst)s\"" msgstr "已为实例 \"%(inst)s\" 创建快照 \"%(name)s\" " -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:56 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:55 msgid "Unable to create snapshot." msgstr "无法创建快照。" #: dashboards/nova/images_and_snapshots/snapshots/tables.py:47 -#: dashboards/nova/instances/tables.py:162 -#: dashboards/nova/instances/workflows.py:101 -#: dashboards/nova/instances/workflows.py:163 +#: dashboards/nova/instances/workflows.py:106 +#: dashboards/nova/instances/workflows.py:168 msgid "Snapshot" msgstr "快照" @@ -1012,15 +1067,10 @@ msgstr "快照" msgid "Instance Snapshots" msgstr "实例快照" -#: dashboards/nova/images_and_snapshots/snapshots/views.py:50 +#: dashboards/nova/images_and_snapshots/snapshots/views.py:52 msgid "Unable to retrieve instance." msgstr "无法获取实例。" -#: dashboards/nova/images_and_snapshots/snapshots/views.py:53 -#, python-format -msgid "To create a snapshot, the instance must be in the \"%s\" state." -msgstr "创建快照时实例必须处于 \"%s\" 状态。" - #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/index.html:3 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/index.html:6 msgid "Images & Snapshots" @@ -1066,8 +1116,14 @@ msgstr "信息" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:11 #: dashboards/nova/instances/templates/instances/_detail_overview.html:11 +#: dashboards/nova/networks/forms.py:38 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:9 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:12 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:11 -#: dashboards/syspanel/projects/forms.py:83 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:12 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:12 #: dashboards/syspanel/users/forms.py:113 msgid "ID" msgstr "ID" @@ -1108,7 +1164,9 @@ msgid "Euca2ools state" msgstr "Euca2ools状态" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:60 -#: dashboards/syspanel/projects/tables.py:77 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:15 +#: dashboards/syspanel/projects/tables.py:90 msgid "Project ID" msgstr "项目ID" @@ -1139,6 +1197,7 @@ msgstr "镜像详情 " #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:8 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:23 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/create.html:3 +#: dashboards/nova/instances/tables.py:162 #: dashboards/nova/volumes/tables.py:67 msgid "Create Snapshot" msgstr "创建快照" @@ -1151,17 +1210,24 @@ msgstr "镜像保存运行中实例的磁盘状态" msgid "Create a Snapshot" msgstr "创建一个快照" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:30 -#: dashboards/nova/instances/workflows.py:70 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:32 +#: dashboards/nova/instances/workflows.py:75 msgid "Volume Snapshot" msgstr "卷快照" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:31 -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:52 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:33 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:69 msgid "Volume Snapshots" msgstr "卷快照" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:48 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:41 +#: dashboards/nova/volumes/tables.py:50 +#: dashboards/nova/volumes/templates/volumes/_create.html:8 +#: dashboards/nova/volumes/templates/volumes/_create.html:55 +msgid "Create Volume" +msgstr "创建卷" + +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:65 msgid "Volume ID" msgstr "卷ID" @@ -1170,7 +1236,7 @@ msgstr "卷ID" msgid "Instance \"%s\" updated." msgstr "实例 \"%s\" 已更新。" -#: dashboards/nova/instances/forms.py:46 +#: dashboards/nova/instances/forms.py:49 msgid "Unable to update instance." msgstr "无法更新实例。" @@ -1179,13 +1245,13 @@ msgstr "无法更新实例。" #: dashboards/nova/instances/tables.py:80 #: dashboards/nova/instances/tables.py:95 #: dashboards/nova/instances/tables.py:123 -#: dashboards/nova/instances/tables.py:290 +#: dashboards/nova/instances/tables.py:292 #: dashboards/nova/instances/templates/instances/index.html:3 #: dashboards/nova/instances/templates/instances/index.html:6 #: dashboards/syspanel/instances/panel.py:28 -#: dashboards/syspanel/instances/tables.py:95 +#: dashboards/syspanel/instances/tables.py:96 #: dashboards/syspanel/instances/templates/instances/index.html:3 -#: dashboards/syspanel/projects/forms.py:115 +#: dashboards/syspanel/projects/workflows.py:35 msgid "Instances" msgstr "实例" @@ -1238,7 +1304,7 @@ msgid "Resumed" msgstr "已恢复" #: dashboards/nova/instances/tables.py:148 -#: dashboards/nova/instances/workflows.py:393 +#: dashboards/nova/instances/workflows.py:450 #: dashboards/nova/instances/templates/instances/launch.html:3 #: dashboards/nova/instances/templates/instances/launch.html:6 msgid "Launch Instance" @@ -1268,17 +1334,17 @@ msgid "Not available" msgstr "无法使用" #: dashboards/nova/instances/tables.py:269 -#: dashboards/syspanel/instances/tables.py:73 usage/tables.py:56 +#: dashboards/syspanel/instances/tables.py:73 usage/tables.py:57 msgid "Instance Name" msgstr "实例名称" -#: dashboards/nova/instances/tables.py:279 -#: dashboards/syspanel/instances/tables.py:84 +#: dashboards/nova/instances/tables.py:281 +#: dashboards/syspanel/instances/tables.py:85 msgid "Task" msgstr "任务" -#: dashboards/nova/instances/tables.py:286 -#: dashboards/syspanel/instances/tables.py:91 +#: dashboards/nova/instances/tables.py:288 +#: dashboards/syspanel/instances/tables.py:92 msgid "Power State" msgstr "加电状态" @@ -1309,240 +1375,297 @@ msgstr "无法获取实例。" msgid "Unable to retrieve instance size information." msgstr "无法获取实例大小信息。" -#: dashboards/nova/instances/views.py:137 +#: dashboards/nova/instances/views.py:143 msgid "Unable to retrieve instance details." msgstr "无法获取实例详情。" -#: dashboards/nova/instances/views.py:172 +#: dashboards/nova/instances/views.py:178 #, python-format msgid "Unable to retrieve details for instance \"%s\"." msgstr "无法获取实例 \"%s\" 的详情。" -#: dashboards/nova/instances/workflows.py:33 -#: dashboards/syspanel/projects/tables.py:92 -#: dashboards/syspanel/users/tables.py:39 -#: dashboards/syspanel/users/tables.py:73 tests/workflows_tests.py:40 +#: dashboards/nova/instances/workflows.py:38 +#: dashboards/syspanel/projects/tables.py:106 +#: dashboards/syspanel/users/tables.py:40 +#: dashboards/syspanel/users/tables.py:74 tests/workflows_tests.py:40 msgid "User" msgstr "用户" -#: dashboards/nova/instances/workflows.py:47 +#: dashboards/nova/instances/workflows.py:52 #, fuzzy msgid "Project & User" msgstr "项目使用" -#: dashboards/nova/instances/workflows.py:49 +#: dashboards/nova/instances/workflows.py:54 msgid "" "Admin users may optionally select the project and user for whom the instance " "should be created." msgstr "" -#: dashboards/nova/instances/workflows.py:60 +#: dashboards/nova/instances/workflows.py:65 msgid "Don't boot from a volume." msgstr "" -#: dashboards/nova/instances/workflows.py:61 +#: dashboards/nova/instances/workflows.py:66 msgid "Boot from volume." msgstr "" -#: dashboards/nova/instances/workflows.py:62 +#: dashboards/nova/instances/workflows.py:67 msgid "Boot from volume snapshot (creates a new volume)." msgstr "" -#: dashboards/nova/instances/workflows.py:66 -#: dashboards/nova/instances/workflows.py:84 +#: dashboards/nova/instances/workflows.py:71 +#: dashboards/nova/instances/workflows.py:89 #, fuzzy msgid "Volume Options" msgstr "卷详情" -#: dashboards/nova/instances/workflows.py:69 -#: dashboards/nova/instances/workflows.py:104 +#: dashboards/nova/instances/workflows.py:74 +#: dashboards/nova/instances/workflows.py:109 #: dashboards/nova/instances/templates/instances/_detail_overview.html:93 -#: dashboards/nova/volumes/tables.py:36 dashboards/nova/volumes/tables.py:171 +#: dashboards/nova/volumes/tables.py:36 dashboards/nova/volumes/tables.py:173 msgid "Volume" msgstr "卷" -#: dashboards/nova/instances/workflows.py:72 +#: dashboards/nova/instances/workflows.py:77 +#: dashboards/nova/volumes/forms.py:126 msgid "Device Name" msgstr "设备名称" -#: dashboards/nova/instances/workflows.py:75 +#: dashboards/nova/instances/workflows.py:80 msgid "Volume mount point (e.g. 'vda' mounts at '/dev/vda')." msgstr "卷挂载点 (例如,'vda' 挂载到 '/dev/vda')." -#: dashboards/nova/instances/workflows.py:77 +#: dashboards/nova/instances/workflows.py:82 msgid "Delete on Terminate" msgstr "终止后删除" -#: dashboards/nova/instances/workflows.py:80 +#: dashboards/nova/instances/workflows.py:85 msgid "Delete volume on instance terminate" msgstr "实例终止后删除卷" -#: dashboards/nova/instances/workflows.py:111 +#: dashboards/nova/instances/workflows.py:116 msgid "Select Volume" msgstr "选择卷" -#: dashboards/nova/instances/workflows.py:119 +#: dashboards/nova/instances/workflows.py:124 #, fuzzy msgid "Unable to retrieve list of volumes." msgstr "无法获取卷列表" -#: dashboards/nova/instances/workflows.py:123 +#: dashboards/nova/instances/workflows.py:128 #, fuzzy msgid "Select Volume Snapshot" msgstr "创建卷快照" -#: dashboards/nova/instances/workflows.py:132 +#: dashboards/nova/instances/workflows.py:137 #, fuzzy msgid "Unable to retrieve list of volume snapshots." msgstr "无法获取卷快照" -#: dashboards/nova/instances/workflows.py:165 +#: dashboards/nova/instances/workflows.py:170 #, fuzzy msgid "Instance Source" msgstr "实例计数" -#: dashboards/nova/instances/workflows.py:168 +#: dashboards/nova/instances/workflows.py:173 #, fuzzy msgid "Instance Snapshot" msgstr "实例快照" -#: dashboards/nova/instances/workflows.py:170 +#: dashboards/nova/instances/workflows.py:175 msgid "Server Name" msgstr "服务器名称" -#: dashboards/nova/instances/workflows.py:171 +#: dashboards/nova/instances/workflows.py:176 #: dashboards/nova/instances/templates/instances/_detail_overview.html:22 #: dashboards/syspanel/flavors/tables.py:13 msgid "Flavor" msgstr "类型" -#: dashboards/nova/instances/workflows.py:172 +#: dashboards/nova/instances/workflows.py:177 msgid "Size of image to launch." msgstr "启动镜像大小" -#: dashboards/nova/instances/workflows.py:173 +#: dashboards/nova/instances/workflows.py:178 msgid "Instance Count" msgstr "实例计数" -#: dashboards/nova/instances/workflows.py:176 +#: dashboards/nova/instances/workflows.py:181 msgid "Number of instances to launch." msgstr "启动的实例数目" -#: dashboards/nova/instances/workflows.py:179 +#: dashboards/nova/instances/workflows.py:184 #, fuzzy msgid "Details" msgstr "卷详情" -#: dashboards/nova/instances/workflows.py:198 +#: dashboards/nova/instances/workflows.py:197 +msgid "" +"There are no image sources available; you must first create an image before " +"attempting to launch an instance." +msgstr "" + +#: dashboards/nova/instances/workflows.py:202 +#, fuzzy +msgid "Please select an option for the instance source." +msgstr "请在执行前选择一行。" + +#: dashboards/nova/instances/workflows.py:211 msgid "" "Launching multiple instances is only supported for images and instance " "snapshots." msgstr "" -#: dashboards/nova/instances/workflows.py:214 +#: dashboards/nova/instances/workflows.py:227 #, fuzzy msgid "Unable to retrieve public images." msgstr "无法获取镜像" -#: dashboards/nova/instances/workflows.py:228 +#: dashboards/nova/instances/workflows.py:241 #, fuzzy msgid "Unable to retrieve images for the current project." msgstr "无法为项目进行验证。" -#: dashboards/nova/instances/workflows.py:251 +#: dashboards/nova/instances/workflows.py:264 #, fuzzy msgid "Select Image" msgstr "选择语言" -#: dashboards/nova/instances/workflows.py:253 +#: dashboards/nova/instances/workflows.py:266 #, fuzzy msgid "No images available." msgstr "无可用实例" -#: dashboards/nova/instances/workflows.py:262 +#: dashboards/nova/instances/workflows.py:275 #, fuzzy msgid "Select Instance Snapshot" msgstr "实例快照" -#: dashboards/nova/instances/workflows.py:264 +#: dashboards/nova/instances/workflows.py:277 #, fuzzy msgid "No snapshots available." msgstr "无可用实例" -#: dashboards/nova/instances/workflows.py:275 +#: dashboards/nova/instances/workflows.py:288 msgid "Unable to retrieve instance flavors." msgstr "无法获取实例类型" -#: dashboards/nova/instances/workflows.py:288 +#: dashboards/nova/instances/workflows.py:301 #, fuzzy msgid "Unable to retrieve quota information." msgstr "无法获取使用信息。" -#: dashboards/nova/instances/workflows.py:318 +#: dashboards/nova/instances/workflows.py:334 msgid "Which keypair to use for authentication." msgstr "认证使用哪个密钥对" -#: dashboards/nova/instances/workflows.py:324 +#: dashboards/nova/instances/workflows.py:341 msgid "Launch instance in these security groups." msgstr "在这些安全组中启动实例" -#: dashboards/nova/instances/workflows.py:329 +#: dashboards/nova/instances/workflows.py:346 msgid "" "Control access to your instance via keypairs, security groups, and other " "mechanisms." msgstr "" -#: dashboards/nova/instances/workflows.py:339 +#: dashboards/nova/instances/workflows.py:356 msgid "Unable to retrieve keypairs." msgstr "无法获取密钥对" -#: dashboards/nova/instances/workflows.py:341 +#: dashboards/nova/instances/workflows.py:358 msgid "Select a keypair" msgstr "选择密钥对" -#: dashboards/nova/instances/workflows.py:343 +#: dashboards/nova/instances/workflows.py:360 msgid "No keypairs available." msgstr "无有效密钥对" -#: dashboards/nova/instances/workflows.py:352 +#: dashboards/nova/instances/workflows.py:369 msgid "Unable to retrieve list of security groups" msgstr "无法获取安全组列表" -#: dashboards/nova/instances/workflows.py:372 +#: dashboards/nova/instances/workflows.py:389 msgid "Customization Script" msgstr "" -#: dashboards/nova/instances/workflows.py:374 +#: dashboards/nova/instances/workflows.py:391 msgid "" "A script or set of commands to be executed after the instance has been built " "(max 16kb)." msgstr "" -#: dashboards/nova/instances/workflows.py:381 +#: dashboards/nova/instances/workflows.py:398 msgid "Post-Creation" msgstr "" -#: dashboards/nova/instances/workflows.py:395 +#: dashboards/nova/instances/workflows.py:409 +#: dashboards/nova/networks/panel.py:24 dashboards/nova/networks/tables.py:32 +#: dashboards/nova/networks/tables.py:92 +#: dashboards/nova/networks/templates/networks/index.html:3 +#: dashboards/nova/networks/templates/networks/index.html:6 +#: dashboards/syspanel/networks/panel.py:24 +#: dashboards/syspanel/networks/tables.py:34 +#: dashboards/syspanel/networks/tables.py:77 +#: dashboards/syspanel/networks/templates/networks/index.html:3 +#: dashboards/syspanel/networks/templates/networks/index.html:6 +msgid "Networks" +msgstr "" + +#: dashboards/nova/instances/workflows.py:412 +#, fuzzy +msgid "Launch instance withthese networks" +msgstr "在这些安全组中启动实例" + +#: dashboards/nova/instances/workflows.py:416 +msgid "Networking" +msgstr "" + +#: dashboards/nova/instances/workflows.py:418 +#, fuzzy +msgid "Select networks for your instance." +msgstr "选择一个实例" + +#: dashboards/nova/instances/workflows.py:429 +#, fuzzy +msgid "Unable to retrieve networks." +msgstr "无法获取用户。" + +#: dashboards/nova/instances/workflows.py:452 #, python-format msgid "Launched %(count)s named \"%(name)s\"." msgstr "" -#: dashboards/nova/instances/workflows.py:396 +#: dashboards/nova/instances/workflows.py:453 #, fuzzy, python-format msgid "Unable to launch %(count)s named \"%(name)s\"." msgstr "无法启动实例: %(exc)s" -#: dashboards/nova/instances/workflows.py:408 +#: dashboards/nova/instances/workflows.py:466 #, fuzzy, python-format msgid "%s instances" msgstr "实例" -#: dashboards/nova/instances/workflows.py:411 +#: dashboards/nova/instances/workflows.py:469 #, fuzzy msgid "instance" msgstr "实例" +#: dashboards/nova/instances/templates/instances/_detail_log.html:4 +#, fuzzy +msgid "Instance Console Log" +msgstr "实例的VNC控制台" + #: dashboards/nova/instances/templates/instances/_detail_log.html:7 +msgid "Log Length" +msgstr "" + +#: dashboards/nova/instances/templates/instances/_detail_log.html:9 +msgid "Go" +msgstr "" + +#: dashboards/nova/instances/templates/instances/_detail_log.html:11 msgid "View Full Log" msgstr "查看所有日志" @@ -1559,8 +1682,8 @@ msgstr "RAM" #: dashboards/nova/instances/templates/instances/_detail_overview.html:26 #: dashboards/nova/instances/templates/instances/_launch_details_help.html:10 #: dashboards/syspanel/flavors/forms.py:38 -#: dashboards/syspanel/flavors/tables.py:30 -#: dashboards/syspanel/projects/forms.py:114 usage/tables.py:19 +#: dashboards/syspanel/flavors/tables.py:34 +#: dashboards/syspanel/projects/workflows.py:34 usage/tables.py:19 msgid "VCPUs" msgstr "VCPUs" @@ -1603,7 +1726,7 @@ msgid "Volumes Attached" msgstr "没有卷附加。" #: dashboards/nova/instances/templates/instances/_detail_overview.html:88 -#: dashboards/nova/volumes/tables.py:156 +#: dashboards/nova/volumes/tables.py:158 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:38 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:45 msgid "Attached To" @@ -1670,12 +1793,12 @@ msgid "Flavor Details" msgstr "类型 ID" #: dashboards/nova/instances/templates/instances/_launch_details_help.html:11 -#: dashboards/syspanel/flavors/tables.py:32 +#: dashboards/syspanel/flavors/tables.py:38 msgid "Root Disk" msgstr "根磁盘" #: dashboards/nova/instances/templates/instances/_launch_details_help.html:12 -#: dashboards/syspanel/flavors/tables.py:34 +#: dashboards/syspanel/flavors/tables.py:40 msgid "Ephemeral Disk" msgstr "临时磁盘" @@ -1715,6 +1838,11 @@ msgid "You may update the editable properties of your instance here." msgstr "更新您的实例名称" #: dashboards/nova/instances/templates/instances/_update.html:22 +#: dashboards/nova/networks/templates/networks/_update.html:22 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:31 +#: dashboards/syspanel/networks/templates/networks/_update.html:22 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:27 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:31 msgid "Save Changes" msgstr "" @@ -1727,6 +1855,469 @@ msgstr "实例详情" msgid "Update Instance" msgstr "更新实例" +#: dashboards/nova/networks/forms.py:47 +#, fuzzy, python-format +msgid "Network %s was successfully updated." +msgstr "%s 成功更新。" + +#: dashboards/nova/networks/forms.py:52 +#, fuzzy, python-format +msgid "Failed to update network %s" +msgstr "无法更新镜像 \"%s\"." + +#: dashboards/nova/networks/tables.py:31 +#: dashboards/nova/networks/templates/networks/subnets/index.html:3 +#: dashboards/nova/networks/templates/networks/subnets/index.html:6 +#: dashboards/syspanel/networks/tables.py:33 +msgid "Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:47 +#: dashboards/syspanel/networks/tables.py:40 +#, python-format +msgid "Failed to delete network %s" +msgstr "" + +#: dashboards/nova/networks/tables.py:55 +#: dashboards/nova/networks/workflows.py:110 +#: dashboards/nova/networks/templates/networks/_create.html:7 +#: dashboards/nova/networks/templates/networks/_create.html:22 +#: dashboards/nova/networks/templates/networks/create.html:3 +#: dashboards/nova/networks/templates/networks/create.html:6 +#: dashboards/syspanel/networks/tables.py:48 +#: dashboards/syspanel/networks/templates/networks/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/create.html:3 +#: dashboards/syspanel/networks/templates/networks/create.html:6 +#, fuzzy +msgid "Create Network" +msgstr "创建用户" + +#: dashboards/nova/networks/tables.py:62 +#: dashboards/nova/networks/templates/networks/_update.html:7 +#: dashboards/syspanel/networks/tables.py:55 +#: dashboards/syspanel/networks/templates/networks/_update.html:7 +msgid "Edit Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:69 +#, fuzzy +msgid "Add Subnet" +msgstr "添加规则" + +#: dashboards/nova/networks/tables.py:85 +#: dashboards/syspanel/networks/tables.py:70 +#, fuzzy +msgid "Subnets Associated" +msgstr "关联IP" + +#: dashboards/nova/networks/tables.py:88 +#: dashboards/nova/networks/ports/tables.py:46 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:15 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:32 +#: dashboards/syspanel/networks/tables.py:73 +#: dashboards/syspanel/networks/ports/tables.py:79 +#, fuzzy +msgid "Admin State" +msgstr "管理员" + +#: dashboards/nova/networks/views.py:55 +#: dashboards/syspanel/networks/views.py:60 +msgid "Network list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:89 +#, fuzzy +msgid "Unable to retrieve network details." +msgstr "无法获取镜像详细信息" + +#: dashboards/nova/networks/views.py:112 +#: dashboards/syspanel/networks/views.py:91 +msgid "Subnet list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:124 +#: dashboards/syspanel/networks/views.py:103 +msgid "Port list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:137 +#: dashboards/syspanel/networks/views.py:118 +#, fuzzy, python-format +msgid "Unable to retrieve details for network \"%s\"." +msgstr "无法获取实例 \"%s\" 的详情。" + +#: dashboards/nova/networks/workflows.py:36 +msgid "Network Name (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:41 +msgid "" +"From here you can create a new network.\n" +"In addition a subnet associated with the network can be created in the next " +"panel." +msgstr "" + +#: dashboards/nova/networks/workflows.py:52 +#: dashboards/nova/networks/subnets/tables.py:48 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:8 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:23 +#: dashboards/nova/networks/templates/networks/subnets/create.html:3 +#: dashboards/nova/networks/templates/networks/subnets/create.html:6 +#: dashboards/syspanel/networks/subnets/tables.py:48 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/subnets/create.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/create.html:6 +#, fuzzy +msgid "Create Subnet" +msgstr "创建快照" + +#: dashboards/nova/networks/workflows.py:55 +msgid "Subnet Name (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:57 +#: dashboards/nova/networks/subnets/forms.py:44 +#: dashboards/nova/networks/subnets/tables.py:71 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:14 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:14 +#, fuzzy +msgid "Network Address" +msgstr "IP地址" + +#: dashboards/nova/networks/workflows.py:60 +#: dashboards/nova/networks/subnets/forms.py:47 +#, fuzzy +msgid "Network address in CIDR format (e.g. 192.168.0.0/24)" +msgstr "无类别域间路由(例如 192.168.0.0/24)" + +#: dashboards/nova/networks/workflows.py:65 +#: dashboards/nova/networks/subnets/forms.py:52 +#: dashboards/nova/networks/subnets/tables.py:72 +#: dashboards/syspanel/networks/subnets/tables.py:72 +msgid "IP Version" +msgstr "" + +#: dashboards/nova/networks/workflows.py:66 +msgid "Gateway IP (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:69 +#: dashboards/nova/networks/subnets/forms.py:56 +#: dashboards/nova/networks/subnets/forms.py:106 +msgid "IP address of Gateway (e.g. 192.168.0.1)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:76 +msgid "" +"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." +msgstr "" + +#: dashboards/nova/networks/workflows.py:88 +msgid "Specify \"Network Address\" or clear \"Create Subnet\" checkbox." +msgstr "" + +#: dashboards/nova/networks/workflows.py:93 +#: dashboards/nova/networks/subnets/forms.py:69 +msgid "Network Address and IP version are inconsistent." +msgstr "" + +#: dashboards/nova/networks/workflows.py:97 +#: dashboards/nova/networks/subnets/forms.py:73 +#: dashboards/nova/networks/subnets/forms.py:118 +msgid "Gateway IP and IP version are inconsistent." +msgstr "" + +#: dashboards/nova/networks/workflows.py:111 +#, fuzzy +msgid "Create" +msgstr "已创建" + +#: dashboards/nova/networks/workflows.py:112 +#, python-format +msgid "Created network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:113 +#, fuzzy, python-format +msgid "Unable to create network \"%s\"." +msgstr "无法获取镜像" + +#: dashboards/nova/networks/workflows.py:129 +#, fuzzy, python-format +msgid "Network \"%s\" was successfully created." +msgstr "用户 \"%s\" 成功创建。" + +#: dashboards/nova/networks/workflows.py:132 +#, fuzzy, python-format +msgid "Failed to create network \"%s\"." +msgstr "无法获取镜像" + +#: dashboards/nova/networks/workflows.py:151 +#, fuzzy, python-format +msgid "Subnet \"%s\" was successfully created." +msgstr "用户 \"%s\" 成功创建。" + +#: dashboards/nova/networks/workflows.py:154 +#, python-format +msgid "Failed to create subnet \"%(sub)s\" for network \"%(net)s\"." +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:35 +#, fuzzy +msgid "Attached" +msgstr "附加到" + +#: dashboards/nova/networks/ports/tables.py:35 +#, fuzzy +msgid "Detached" +msgstr "分离卷" + +#: dashboards/nova/networks/ports/tables.py:42 +#: dashboards/syspanel/networks/ports/tables.py:75 +msgid "Fixed IPs" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:43 +#: dashboards/syspanel/networks/ports/tables.py:76 +#, fuzzy +msgid "Device Attached" +msgstr "设备名称" + +#: dashboards/nova/networks/ports/tables.py:53 +#: dashboards/syspanel/networks/ports/tables.py:35 +#: dashboards/syspanel/networks/ports/tables.py:83 +#, fuzzy +msgid "Ports" +msgstr "至端口" + +#: dashboards/nova/networks/ports/tabs.py:39 +#: dashboards/syspanel/networks/ports/tabs.py:39 +#, fuzzy +msgid "Unable to retrieve port details." +msgstr "无法获取卷详情。" + +#: dashboards/nova/networks/subnets/forms.py:34 +#: dashboards/syspanel/networks/tables.py:67 +#: dashboards/syspanel/networks/ports/forms.py:32 +#, fuzzy +msgid "Network Name" +msgstr "用户名" + +#: dashboards/nova/networks/subnets/forms.py:38 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:13 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:13 +#: dashboards/syspanel/networks/ports/forms.py:35 +msgid "Network ID" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:53 +#: dashboards/nova/networks/subnets/forms.py:103 +#: dashboards/nova/networks/subnets/tables.py:73 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:19 +#: dashboards/syspanel/networks/subnets/tables.py:73 +msgid "Gateway IP" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:84 +#, fuzzy, python-format +msgid "Subnet %s was successfully created." +msgstr "%s 成功创建。" + +#: dashboards/nova/networks/subnets/forms.py:89 +#, fuzzy, python-format +msgid "Failed to create subnet %s" +msgstr "无法创建用户。" + +#: dashboards/nova/networks/subnets/forms.py:130 +#, fuzzy, python-format +msgid "Subnet %s was successfully updated." +msgstr "%s 成功更新。" + +#: dashboards/nova/networks/subnets/forms.py:135 +#, fuzzy, python-format +msgid "Failed to update subnet %s" +msgstr "无法更新配额。" + +#: dashboards/nova/networks/subnets/tables.py:31 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:6 +#: dashboards/syspanel/networks/subnets/tables.py:31 +msgid "Subnet" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:32 +#: dashboards/nova/networks/subnets/tables.py:77 +#: dashboards/syspanel/networks/subnets/tables.py:32 +#: dashboards/syspanel/networks/subnets/tables.py:80 +msgid "Subnets" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:38 +#: dashboards/syspanel/networks/ports/tables.py:41 +#: dashboards/syspanel/networks/subnets/tables.py:38 +#, python-format +msgid "Failed to delete subnet %s" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:59 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:7 +#: dashboards/syspanel/networks/subnets/tables.py:59 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:7 +#, fuzzy +msgid "Edit Subnet" +msgstr "编辑规则" + +#: dashboards/nova/networks/subnets/tabs.py:41 +#, fuzzy +msgid "Unable to retrieve subnet details." +msgstr "无法获取实例详情。" + +#: dashboards/nova/networks/subnets/views.py:52 +#: dashboards/syspanel/networks/ports/views.py:48 +#: dashboards/syspanel/networks/subnets/views.py:47 +#, fuzzy +msgid "Unable to retrieve network." +msgstr "无法获取用户。" + +#: dashboards/nova/networks/subnets/views.py:84 +#: dashboards/syspanel/networks/subnets/views.py:80 +#, fuzzy +msgid "Unable to retrieve subnet details" +msgstr "无法获取实例详情。" + +#: dashboards/nova/networks/templates/networks/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/_create.html:18 +#, fuzzy +msgid "Select a name for your network." +msgstr "选择要附加的实例。" + +#: dashboards/nova/networks/templates/networks/_detail_overview.html:3 +#, fuzzy +msgid "Network Overview" +msgstr "镜像概况" + +#: dashboards/nova/networks/templates/networks/_update.html:17 +#: dashboards/syspanel/networks/templates/networks/_update.html:17 +#, fuzzy +msgid "You may update the editable properties of your network here." +msgstr "更新您的实例名称" + +#: dashboards/nova/networks/templates/networks/detail.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/index.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/index.html:6 +#, fuzzy +msgid "Network Detail" +msgstr "类型 ID" + +#: dashboards/nova/networks/templates/networks/detail.html:6 +#, fuzzy +msgid "Network Detail: " +msgstr "镜像详情 " + +#: dashboards/nova/networks/templates/networks/update.html:3 +#: dashboards/nova/networks/templates/networks/update.html:6 +#: dashboards/syspanel/networks/templates/networks/update.html:3 +#: dashboards/syspanel/networks/templates/networks/update.html:6 +#, fuzzy +msgid "Update Network" +msgstr "更新用户" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:3 +#, fuzzy +msgid "Port Overview" +msgstr "概况" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:6 +#: dashboards/syspanel/networks/ports/tables.py:34 +#, fuzzy +msgid "Port" +msgstr "至端口" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:17 +msgid "Fixed IP" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:21 +#, fuzzy +msgid "IP address:" +msgstr "IP地址" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:22 +msgid "Subnet ID" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:28 +#, fuzzy +msgid "Mac Address" +msgstr "IP地址" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:34 +#: dashboards/syspanel/networks/ports/forms.py:41 +#: dashboards/syspanel/networks/ports/forms.py:73 +#, fuzzy +msgid "Device ID" +msgstr "设备名称" + +#: dashboards/nova/networks/templates/networks/ports/detail.html:3 +#: dashboards/nova/networks/templates/networks/ports/detail.html:6 +#, fuzzy +msgid "Port Detail" +msgstr "类型 ID" + +#: dashboards/nova/networks/templates/networks/subnets/_create.html:18 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:18 +msgid "" +"You can create a subnet for the network. Any network address can be " +"specified unless the network address does not overlap other subnets in the " +"network." +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:3 +#, fuzzy +msgid "Subnet Overview" +msgstr "卷概览" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:17 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:16 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:16 +msgid "IP version" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:21 +msgid "IP allocation pool" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:24 +msgid "Start" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:25 +msgid " - End" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_update.html:26 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:26 +#, fuzzy +msgid "You may update the editable properties of your subnet here." +msgstr "更新您的实例名称" + +#: dashboards/nova/networks/templates/networks/subnets/detail.html:3 +#: dashboards/nova/networks/templates/networks/subnets/detail.html:6 +#, fuzzy +msgid "Subnet Detail" +msgstr "卷详情" + +#: dashboards/nova/networks/templates/networks/subnets/update.html:3 +#: dashboards/nova/networks/templates/networks/subnets/update.html:6 +#: dashboards/syspanel/networks/templates/networks/subnets/update.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/update.html:6 +#, fuzzy +msgid "Update Subnet" +msgstr "更新配额" + #: dashboards/nova/templates/nova/_warning.html:6 msgid "You currently have the power to damage your OpenStack cloud..." msgstr "" @@ -1815,56 +2406,95 @@ msgstr "" msgid "Learn More" msgstr "" -#: dashboards/nova/volumes/forms.py:40 +#: dashboards/nova/volumes/forms.py:26 +#, fuzzy +msgid "Volume Name" +msgstr "卷" + +#: dashboards/nova/volumes/forms.py:29 +#, fuzzy +msgid "Size (GB)" +msgstr "大小" + +#: dashboards/nova/volumes/forms.py:30 +msgid "Use snapshot as a source" +msgstr "" + +#: dashboards/nova/volumes/forms.py:49 +#, python-format +msgid "Volume size must be equal to or greater than the snapshot size (%sGB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:54 +#, fuzzy +msgid "Unable to load the specified snapshot." +msgstr "无法创建快照。" + +#: dashboards/nova/volumes/forms.py:59 +#, fuzzy +msgid "Choose a snapshot" +msgstr "创建一个快照" + +#: dashboards/nova/volumes/forms.py:83 +#, python-format +msgid "The volume size cannot be less than the snapshot size (%sGB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:92 #, python-format msgid "" "A volume of %(req)iGB cannot be created as you only have %(avail)iGB of your " "quota available." msgstr "" -#: dashboards/nova/volumes/forms.py:47 +#: dashboards/nova/volumes/forms.py:99 #, fuzzy msgid "You are already using all of your available volumes." msgstr "您没有任何可用项目的授权。" -#: dashboards/nova/volumes/forms.py:60 +#: dashboards/nova/volumes/forms.py:115 #, fuzzy msgid "Unable to create volume." msgstr "无法创建用户。" -#: dashboards/nova/volumes/forms.py:67 +#: dashboards/nova/volumes/forms.py:123 +#, fuzzy +msgid "Attach to Instance" +msgstr "附加到实例" + +#: dashboards/nova/volumes/forms.py:124 msgid "Select an instance to attach to." msgstr "选择要附加的实例。" -#: dashboards/nova/volumes/forms.py:100 +#: dashboards/nova/volumes/forms.py:168 msgid "Unknown instance (None)" msgstr "" -#: dashboards/nova/volumes/forms.py:111 +#: dashboards/nova/volumes/forms.py:179 #, fuzzy, python-format msgid "Attaching volume %(vol)s to instance %(inst)s on %(dev)s." msgstr "附加卷 %(vol)s 到实例 %(inst)s 的 %(dev)s 上" -#: dashboards/nova/volumes/forms.py:118 +#: dashboards/nova/volumes/forms.py:188 #, fuzzy msgid "Unable to attach volume." msgstr "无法获取卷:%s" -#: dashboards/nova/volumes/forms.py:142 +#: dashboards/nova/volumes/forms.py:212 #, python-format msgid "Creating volume snapshot \"%s\"" msgstr "创建卷快照 \"%s\"" -#: dashboards/nova/volumes/forms.py:146 +#: dashboards/nova/volumes/forms.py:218 #, fuzzy msgid "Unable to create volume snapshot." msgstr "无法获取卷快照" #: dashboards/nova/volumes/panel.py:24 dashboards/nova/volumes/tables.py:37 -#: dashboards/nova/volumes/tables.py:160 dashboards/nova/volumes/tables.py:172 +#: dashboards/nova/volumes/tables.py:162 dashboards/nova/volumes/tables.py:174 #: dashboards/nova/volumes/templates/volumes/index.html:3 #: dashboards/nova/volumes/templates/volumes/index.html:6 -#: dashboards/syspanel/projects/forms.py:116 +#: dashboards/syspanel/projects/workflows.py:39 #: dashboards/syspanel/volumes/panel.py:9 #: dashboards/syspanel/volumes/tables.py:15 #: dashboards/syspanel/volumes/templates/volumes/index.html:3 @@ -1872,12 +2502,6 @@ msgstr "无法获取卷快照" msgid "Volumes" msgstr "卷" -#: dashboards/nova/volumes/tables.py:50 -#: dashboards/nova/volumes/templates/volumes/_create.html:8 -#: dashboards/nova/volumes/templates/volumes/_create.html:55 -msgid "Create Volume" -msgstr "创建卷" - #: dashboards/nova/volumes/tables.py:57 msgid "Edit Attachments" msgstr "编辑附加卷" @@ -1887,7 +2511,7 @@ msgstr "编辑附加卷" msgid "%sGB" msgstr "" -#: dashboards/nova/volumes/tables.py:97 +#: dashboards/nova/volumes/tables.py:97 dashboards/nova/volumes/views.py:140 #, fuzzy msgid "Unable to retrieve attachment information." msgstr "无法获取使用信息。" @@ -1897,16 +2521,16 @@ msgstr "无法获取使用信息。" msgid "Attached to %(instance)s on %(dev)s" msgstr "附加卷 %(vol)s 到实例 %(inst)s 的 %(dev)s 上" -#: dashboards/nova/volumes/tables.py:169 +#: dashboards/nova/volumes/tables.py:171 msgid "Detach" msgstr "分离卷" -#: dashboards/nova/volumes/tables.py:170 +#: dashboards/nova/volumes/tables.py:172 #, fuzzy msgid "Detaching" msgstr "分离卷" -#: dashboards/nova/volumes/tables.py:205 +#: dashboards/nova/volumes/tables.py:207 #, python-format msgid "%(dev)s on instance %(instance_name)s" msgstr "" @@ -1915,17 +2539,17 @@ msgstr "" msgid "Unable to retrieve volume details." msgstr "无法获取卷详情。" -#: dashboards/nova/volumes/views.py:50 +#: dashboards/nova/volumes/views.py:52 #, fuzzy msgid "Unable to retrieve volume list." msgstr "无法得到用户信息列表。" -#: dashboards/nova/volumes/views.py:56 +#: dashboards/nova/volumes/views.py:58 #, fuzzy msgid "Unable to retrieve volume/instance attachment information" msgstr "无法获取实例租户信息。" -#: dashboards/nova/volumes/views.py:114 dashboards/nova/volumes/views.py:124 +#: dashboards/nova/volumes/views.py:121 dashboards/nova/volumes/views.py:131 msgid "Unable to retrieve volume information." msgstr "无法获取卷信息。" @@ -1934,11 +2558,11 @@ msgstr "无法获取卷信息。" msgid "Manage Volume Attachments" msgstr "管理附加卷" -#: dashboards/nova/volumes/templates/volumes/_attach.html:12 +#: dashboards/nova/volumes/templates/volumes/_attach.html:13 msgid "Attach To Instance" msgstr "附加到实例" -#: dashboards/nova/volumes/templates/volumes/_attach.html:19 +#: dashboards/nova/volumes/templates/volumes/_attach.html:22 msgid "Attach Volume" msgstr "附加卷" @@ -1998,7 +2622,7 @@ msgstr "卷详情" msgid "Volume Detail" msgstr "卷详情" -#: dashboards/settings/dashboard.py:24 +#: dashboards/settings/dashboard.py:24 templates/_header.html:4 msgid "Settings" msgstr "设置" @@ -2006,15 +2630,15 @@ msgstr "设置" msgid "Select a Project" msgstr "选择一个项目" -#: dashboards/settings/ec2/forms.py:51 +#: dashboards/settings/ec2/forms.py:45 msgid "Unable to retrieve tenant list." msgstr "无法获取租户列表。" -#: dashboards/settings/ec2/forms.py:93 +#: dashboards/settings/ec2/forms.py:87 msgid "Unable to fetch EC2 credentials." msgstr "无法获得EC2凭证。" -#: dashboards/settings/ec2/forms.py:106 +#: dashboards/settings/ec2/forms.py:100 #, python-format msgid "Error writing zipfile: %(exc)s" msgstr "zipfile写入出错:%(exc)s" @@ -2039,7 +2663,7 @@ msgstr "" "点击\"下载EC2凭证\"将会下载一个zip文件,其中包含您的一个访问密钥/私钥的rc文" "件,还有您的x509私钥和证书。" -#: dashboards/settings/project/forms.py:76 +#: dashboards/settings/project/forms.py:70 #, python-format msgid "Error Downloading RC File: %s" msgstr "下载RC文件出错:%s" @@ -2099,7 +2723,7 @@ msgid "From here you can modify dashboard settings for your user." msgstr "在这里您可以为您的 dashboard 修改不同的设置" #: dashboards/settings/user/templates/user/_settings.html:23 -#: workflows/base.py:510 +#: dashboards/syspanel/projects/workflows.py:243 workflows/base.py:538 msgid "Save" msgstr "" @@ -2127,14 +2751,19 @@ msgstr "根磁盘 GB" msgid "Ephemeral Disk GB" msgstr "临时磁盘 GB" -#: dashboards/syspanel/flavors/forms.py:51 +#: dashboards/syspanel/flavors/forms.py:52 #, python-format msgid "%s was successfully added to flavors." msgstr "%s 被成功添加到类型中" +#: dashboards/syspanel/flavors/forms.py:56 +#, fuzzy +msgid "Unable to create flavor" +msgstr "无法创建用户。" + #: dashboards/syspanel/flavors/panel.py:28 #: dashboards/syspanel/flavors/tables.py:14 -#: dashboards/syspanel/flavors/tables.py:38 +#: dashboards/syspanel/flavors/tables.py:44 #: dashboards/syspanel/flavors/templates/flavors/index.html:8 msgid "Flavors" msgstr "类型" @@ -2146,32 +2775,33 @@ msgstr "类型" msgid "Create Flavor" msgstr "创建类型" -#: dashboards/syspanel/flavors/tables.py:29 +#: dashboards/syspanel/flavors/tables.py:28 +#, python-format +msgid "%sMB" +msgstr "" + +#: dashboards/syspanel/flavors/tables.py:33 msgid "Flavor Name" msgstr "类型名" -#: dashboards/syspanel/flavors/tables.py:31 +#: dashboards/syspanel/flavors/tables.py:36 msgid "Memory" msgstr "内存" #: dashboards/syspanel/flavors/views.py:48 -msgid "Unauthorized." -msgstr "未授权" - -#: dashboards/syspanel/flavors/views.py:53 -#, python-format -msgid "Unable to get flavor list: %s" -msgstr "无法获得类型列表: %s" +#, fuzzy +msgid "Unable to retrieve flavor list." +msgstr "无法得到用户信息列表。" #: dashboards/syspanel/flavors/templates/flavors/_create.html:18 msgid "From here you can define the sizing of a new flavor." msgstr "在这里您可以定义新类型的大小。" -#: dashboards/syspanel/images/views.py:52 +#: dashboards/syspanel/images/views.py:53 msgid "Unable to retrieve image list." msgstr "无法获得镜像列表。" -#: dashboards/syspanel/instances/tables.py:62 usage/tables.py:29 +#: dashboards/syspanel/instances/tables.py:62 usage/tables.py:30 #, fuzzy msgid "Project Name" msgstr "项目使用" @@ -2182,6 +2812,7 @@ msgid "Host" msgstr "主机" #: dashboards/syspanel/instances/views.py:72 +#: dashboards/syspanel/networks/views.py:48 msgid "Unable to retrieve instance tenant information." msgstr "无法获取实例租户信息。" @@ -2189,6 +2820,83 @@ msgstr "无法获取实例租户信息。" msgid "All Instances" msgstr "全部实例" +#: dashboards/syspanel/networks/forms.py:45 +#: dashboards/syspanel/users/forms.py:41 +msgid "Select a project" +msgstr "选择项目" + +#: dashboards/syspanel/networks/forms.py:56 +#, fuzzy, python-format +msgid "Network %s was successfully created." +msgstr "%s 成功创建。" + +#: dashboards/syspanel/networks/forms.py:62 +#, fuzzy, python-format +msgid "Failed to create network %s" +msgstr "无法获取镜像" + +#: dashboards/syspanel/networks/ports/forms.py:53 +#, fuzzy, python-format +msgid "Port %s was successfully created." +msgstr "%s 成功创建。" + +#: dashboards/syspanel/networks/ports/forms.py:58 +#, fuzzy, python-format +msgid "Failed to create a port for network %s" +msgstr "无法获取租户。" + +#: dashboards/syspanel/networks/ports/forms.py:83 +#, fuzzy, python-format +msgid "Port %s was successfully updated." +msgstr "%s 成功更新。" + +#: dashboards/syspanel/networks/ports/forms.py:88 +#, fuzzy, python-format +msgid "Failed to update port %s" +msgstr "无法更新配额。" + +#: dashboards/syspanel/networks/ports/tables.py:51 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/ports/create.html:3 +#: dashboards/syspanel/networks/templates/networks/ports/create.html:6 +#, fuzzy +msgid "Create Port" +msgstr "创建项目" + +#: dashboards/syspanel/networks/ports/tables.py:62 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:7 +#, fuzzy +msgid "Edit Port" +msgstr "编辑项目" + +#: dashboards/syspanel/networks/ports/views.py:81 +#, fuzzy +msgid "Unable to retrieve port details" +msgstr "无法获取卷详情。" + +#: dashboards/syspanel/networks/subnets/forms.py:42 +#, fuzzy, python-format +msgid "Failed to retrieve network %s for a subnet" +msgstr "无法获取实例 \"%s\" 的详情。" + +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:18 +msgid "" +"You can create a port for the network. If you specify device ID to be " +"attached, the device specified will be attached to the port created." +msgstr "" + +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:22 +#, fuzzy +msgid "You may update the editable properties of your port here." +msgstr "更新您的实例名称" + +#: dashboards/syspanel/networks/templates/networks/ports/update.html:3 +#: dashboards/syspanel/networks/templates/networks/ports/update.html:6 +#, fuzzy +msgid "Update Port" +msgstr "更新项目" + #: dashboards/syspanel/overview/templates/overview/usage.html:3 msgid "Usage Overview" msgstr "使用概况" @@ -2197,95 +2905,14 @@ msgstr "使用概况" msgid "Monitoring" msgstr "监控" -#: dashboards/syspanel/projects/forms.py:38 -#: dashboards/syspanel/users/forms.py:75 -msgid "Role" -msgstr "角色" - -#: dashboards/syspanel/projects/forms.py:52 -#, fuzzy -msgid "Successfully added user to project." -msgstr "成功向租户中添加用户。" - -#: dashboards/syspanel/projects/forms.py:54 -#, fuzzy -msgid "Unable to add user to project." -msgstr "无法向主项目添加用户。" - -#: dashboards/syspanel/projects/forms.py:64 -#: dashboards/syspanel/projects/forms.py:89 -#: dashboards/syspanel/projects/tables.py:78 -#: dashboards/syspanel/services/tables.py:42 -#: dashboards/syspanel/users/tables.py:38 -#: dashboards/syspanel/users/tables.py:112 -msgid "Enabled" -msgstr "激活" - -#: dashboards/syspanel/projects/forms.py:75 -#, python-format -msgid "%s was successfully created." -msgstr "%s 成功创建。" - -#: dashboards/syspanel/projects/forms.py:78 -#, fuzzy -msgid "Unable to create project." -msgstr "无法获取租户。" - -#: dashboards/syspanel/projects/forms.py:100 -#, python-format -msgid "%s was successfully updated." -msgstr "%s 成功更新。" - -#: dashboards/syspanel/projects/forms.py:103 -#, fuzzy -msgid "Unable to update project." -msgstr "无法更新租户。" - -#: dashboards/syspanel/projects/forms.py:108 -msgid "ID (name)" -msgstr "ID (名字)" - -#: dashboards/syspanel/projects/forms.py:110 -msgid "Metadata Items" -msgstr "元数据条目" - -#: dashboards/syspanel/projects/forms.py:111 -msgid "Injected Files" -msgstr "注入的文件" - -#: dashboards/syspanel/projects/forms.py:112 -msgid "Injected File Content Bytes" -msgstr "注入的文件内容字节数" - -#: dashboards/syspanel/projects/forms.py:117 -msgid "Gigabytes" -msgstr "Gigabytes" - -#: dashboards/syspanel/projects/forms.py:118 -msgid "RAM (in MB)" -msgstr "RAM (以MB为单位)" - -#: dashboards/syspanel/projects/forms.py:136 -#, python-format -msgid "Quotas for %s were successfully updated." -msgstr "%s 的配额成功更新。" - -#: dashboards/syspanel/projects/forms.py:139 -msgid "Unable to update quotas." -msgstr "无法更新配额。" - #: dashboards/syspanel/projects/panel.py:28 -#: dashboards/syspanel/projects/tables.py:53 -#: dashboards/syspanel/projects/tables.py:82 +#: dashboards/syspanel/projects/tables.py:66 +#: dashboards/syspanel/projects/tables.py:95 #: dashboards/syspanel/projects/templates/projects/index.html:8 msgid "Projects" msgstr "项目" -#: dashboards/syspanel/projects/tables.py:18 -msgid "Modify Quotas" -msgstr "修改配额" - -#: dashboards/syspanel/projects/tables.py:25 +#: dashboards/syspanel/projects/tables.py:19 msgid "Modify Users" msgstr "修改用户" @@ -2294,67 +2921,202 @@ msgid "View Usage" msgstr "查看使用情况" #: dashboards/syspanel/projects/tables.py:39 +#: dashboards/syspanel/projects/templates/projects/_create.html:8 +#: dashboards/syspanel/projects/templates/projects/_create.html:23 +#: dashboards/syspanel/projects/templates/projects/create.html:6 +msgid "Create Project" +msgstr "创建项目" + +#: dashboards/syspanel/projects/tables.py:46 +#: dashboards/syspanel/projects/workflows.py:242 +#: dashboards/syspanel/projects/templates/projects/update.html:3 +#: dashboards/syspanel/projects/templates/projects/update.html:6 msgid "Edit Project" msgstr "编辑项目" -#: dashboards/syspanel/projects/tables.py:46 -msgid "Create New Project" -msgstr "创建新项目" +#: dashboards/syspanel/projects/tables.py:91 +#: dashboards/syspanel/projects/workflows.py:71 +#: dashboards/syspanel/projects/workflows.py:134 +#: dashboards/syspanel/services/tables.py:42 +#: dashboards/syspanel/users/tables.py:39 +#: dashboards/syspanel/users/tables.py:114 +msgid "Enabled" +msgstr "激活" -#: dashboards/syspanel/projects/tables.py:90 +#: dashboards/syspanel/projects/tables.py:104 msgid "Remove" msgstr "移除" -#: dashboards/syspanel/projects/tables.py:91 +#: dashboards/syspanel/projects/tables.py:105 msgid "Removed" msgstr "被移除" -#: dashboards/syspanel/projects/tables.py:93 +#: dashboards/syspanel/projects/tables.py:107 #: dashboards/syspanel/users/panel.py:28 -#: dashboards/syspanel/users/tables.py:40 -#: dashboards/syspanel/users/tables.py:74 -#: dashboards/syspanel/users/tables.py:119 +#: dashboards/syspanel/users/tables.py:41 +#: dashboards/syspanel/users/tables.py:75 +#: dashboards/syspanel/users/tables.py:121 #: dashboards/syspanel/users/templates/users/index.html:8 msgid "Users" msgstr "用户" -#: dashboards/syspanel/projects/tables.py:111 +#: dashboards/syspanel/projects/tables.py:125 #, fuzzy msgid "Unable to retrieve role information." msgstr "无法获取卷信息。" -#: dashboards/syspanel/projects/tables.py:116 +#: dashboards/syspanel/projects/tables.py:130 #, fuzzy msgid "Roles" msgstr "角色" -#: dashboards/syspanel/projects/tables.py:120 +#: dashboards/syspanel/projects/tables.py:134 msgid "Users For Project" msgstr "项目的用户" -#: dashboards/syspanel/projects/tables.py:128 +#: dashboards/syspanel/projects/tables.py:142 msgid "Add To Project" msgstr "添加到项目" -#: dashboards/syspanel/projects/tables.py:140 +#: dashboards/syspanel/projects/tables.py:154 msgid "Add New Users" msgstr "添加新用户" -#: dashboards/syspanel/projects/views.py:49 +#: dashboards/syspanel/projects/views.py:67 +#, fuzzy +msgid "Unable to retrieve project information." +msgstr "无法获取卷信息。" + +#: dashboards/syspanel/projects/views.py:87 msgid "Unable to retrieve project list." msgstr "无法获取项目列表。" -#: dashboards/syspanel/projects/views.py:71 -msgid "Unable to retrieve project." -msgstr "无法获取租户。" - -#: dashboards/syspanel/projects/views.py:100 +#: dashboards/syspanel/projects/views.py:110 msgid "Unable to retrieve users." msgstr "无法获取用户。" -#: dashboards/syspanel/projects/views.py:143 -msgid "Unable to retrieve roles." -msgstr "无法获取角色。" +#: dashboards/syspanel/projects/views.py:154 +#, fuzzy +msgid "Unable to retrieve default quota values." +msgstr "无法获取卷列表" + +#: dashboards/syspanel/projects/views.py:182 +#, fuzzy +msgid "Unable to retrieve project details." +msgstr "无法获取项目列表。" + +#: dashboards/syspanel/projects/workflows.py:32 +msgid "Injected File Content Bytes" +msgstr "注入的文件内容字节数" + +#: dashboards/syspanel/projects/workflows.py:33 +msgid "Metadata Items" +msgstr "元数据条目" + +#: dashboards/syspanel/projects/workflows.py:36 +msgid "Injected Files" +msgstr "注入的文件" + +#: dashboards/syspanel/projects/workflows.py:40 +msgid "Gigabytes" +msgstr "Gigabytes" + +#: dashboards/syspanel/projects/workflows.py:41 +#, fuzzy +msgid "RAM (MB)" +msgstr "RAM (以MB为单位)" + +#: dashboards/syspanel/projects/workflows.py:45 +#, fuzzy +msgid "Quota" +msgstr "配额" + +#: dashboards/syspanel/projects/workflows.py:47 +#, fuzzy +msgid "From here you can set quotas (max limits) for the project." +msgstr "在这里您可以为项目 %(tenant.name)s 编辑配额(最大限制)。" + +#: dashboards/syspanel/projects/workflows.py:76 +#: dashboards/syspanel/projects/workflows.py:137 +#, fuzzy +msgid "Project Info" +msgstr "项目ID" + +#: dashboards/syspanel/projects/workflows.py:77 +#: dashboards/syspanel/projects/templates/projects/_create.html:18 +msgid "From here you can create a new project to organize users." +msgstr "在这里您可以创建新的项目来组织用户。" + +#: dashboards/syspanel/projects/workflows.py:91 +#, fuzzy +msgid "Add Project" +msgstr "添加到项目" + +#: dashboards/syspanel/projects/workflows.py:92 +msgid "Finish" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:93 +#, fuzzy, python-format +msgid "Created new project \"%s\"." +msgstr "创建新项目" + +#: dashboards/syspanel/projects/workflows.py:94 +#, fuzzy, python-format +msgid "Unable to create project \"%s\"." +msgstr "无法获取租户。" + +#: dashboards/syspanel/projects/workflows.py:129 +#, fuzzy +msgid "Unable to set project quotas." +msgstr "无法获取租户。" + +#: dashboards/syspanel/projects/workflows.py:139 +#, fuzzy +msgid "From here you can edit the project details." +msgstr "在这里您可以编辑项目。" + +#: dashboards/syspanel/projects/workflows.py:161 +#, fuzzy +msgid "Unable to retrieve user list. Please try again later." +msgstr "无法得到用户信息列表。" + +#: dashboards/syspanel/projects/workflows.py:167 +#, fuzzy +msgid "Create New User" +msgstr "创建用户" + +#: dashboards/syspanel/projects/workflows.py:217 +#: dashboards/syspanel/projects/templates/projects/_update_members.html:16 +#, fuzzy +msgid "Project Members" +msgstr "项目使用" + +#: dashboards/syspanel/projects/workflows.py:231 +#: dashboards/syspanel/users/views.py:46 +msgid "Unable to retrieve user list." +msgstr "无法得到用户信息列表。" + +#: dashboards/syspanel/projects/workflows.py:244 +#, python-format +msgid "Modified project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:245 +#, fuzzy, python-format +msgid "Unable to modify project \"%s\"." +msgstr "无法拷贝对象。" + +#: dashboards/syspanel/projects/workflows.py:315 +#, python-format +msgid "Failed to modify %s project members and update project quotas." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:336 +msgid "" +"Modified project information and members, but unable to modify project " +"quotas." +msgstr "" #: dashboards/syspanel/projects/templates/projects/_add_user.html:8 #: dashboards/syspanel/projects/templates/projects/add_user.html:3 @@ -2370,15 +3132,23 @@ msgstr "为项目选址用户角色。" msgid "Add" msgstr "添加" -#: dashboards/syspanel/projects/templates/projects/_create.html:8 -#: dashboards/syspanel/projects/templates/projects/_create.html:23 -#: dashboards/syspanel/projects/templates/projects/create.html:6 -msgid "Create Project" -msgstr "创建项目" +#: dashboards/syspanel/projects/templates/projects/_create_user.html:7 +#, python-format +msgid "Create User for project '%(tenant_name)s'." +msgstr "" -#: dashboards/syspanel/projects/templates/projects/_create.html:18 -msgid "From here you can create a new project to organize users." -msgstr "在这里您可以创建新的项目来组织用户。" +#: dashboards/syspanel/projects/templates/projects/_create_user.html:18 +#, fuzzy +msgid "From here you can create a new user to add to this project." +msgstr "在这里您可以创建新用户并把他们分配给某个项目" + +#: dashboards/syspanel/projects/templates/projects/_create_user.html:23 +#: dashboards/syspanel/users/tables.py:19 +#: dashboards/syspanel/users/templates/users/_create.html:7 +#: dashboards/syspanel/users/templates/users/_create.html:22 +#: dashboards/syspanel/users/templates/users/create.html:7 +msgid "Create User" +msgstr "创建用户" #: dashboards/syspanel/projects/templates/projects/_quotas.html:7 #: dashboards/syspanel/projects/templates/projects/_quotas.html:22 @@ -2394,7 +3164,6 @@ msgstr "在这里您可以为项目 %(tenant.name)s 编辑配额(最大限制 #: dashboards/syspanel/projects/templates/projects/_update.html:8 #: dashboards/syspanel/projects/templates/projects/_update.html:23 #: dashboards/syspanel/projects/templates/projects/quotas.html:6 -#: dashboards/syspanel/projects/templates/projects/update.html:6 msgid "Update Project" msgstr "更新项目" @@ -2402,6 +3171,28 @@ msgstr "更新项目" msgid "From here you can edit a project." msgstr "在这里您可以编辑项目。" +#: dashboards/syspanel/projects/templates/projects/_update_members.html:7 +msgid "" +"From here you can add and remove members to this project from the list of " +"all available users." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/_update_members.html:10 +#, fuzzy +msgid "All Users" +msgstr "用户" + +#: dashboards/syspanel/projects/templates/projects/_update_members.html:25 +#: dashboards/syspanel/projects/templates/projects/_update_members.html:32 +msgid "No users found." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/create_user.html:3 +#: dashboards/syspanel/projects/templates/projects/create_user.html:6 +#, fuzzy +msgid "Add New User" +msgstr "添加新用户" + #: dashboards/syspanel/projects/templates/projects/usage.html:3 msgid "Project Usage Overview" msgstr "项目使用概况" @@ -2427,7 +3218,7 @@ msgstr "配额名称" msgid "Limit" msgstr "限制" -#: dashboards/syspanel/quotas/views.py:44 +#: dashboards/syspanel/quotas/views.py:45 msgid "Unable to get quota info." msgstr "无法得到配额信息。" @@ -2449,118 +3240,113 @@ msgstr "Id" msgid "Service" msgstr "服务" -#: dashboards/syspanel/users/forms.py:42 -msgid "Select a project" -msgstr "选择项目" - -#: dashboards/syspanel/users/forms.py:58 +#: dashboards/syspanel/users/forms.py:53 msgid "Passwords do not match." msgstr "密码不匹配。" -#: dashboards/syspanel/users/forms.py:63 +#: dashboards/syspanel/users/forms.py:61 #: dashboards/syspanel/users/forms.py:114 -#: dashboards/syspanel/users/tables.py:106 +#: dashboards/syspanel/users/tables.py:107 msgid "User Name" msgstr "用户名" -#: dashboards/syspanel/users/forms.py:64 +#: dashboards/syspanel/users/forms.py:62 #: dashboards/syspanel/users/forms.py:115 -#: dashboards/syspanel/users/tables.py:107 +#: dashboards/syspanel/users/tables.py:108 msgid "Email" msgstr "邮箱" -#: dashboards/syspanel/users/forms.py:66 +#: dashboards/syspanel/users/forms.py:64 #: dashboards/syspanel/users/forms.py:116 msgid "Password" msgstr "密码" -#: dashboards/syspanel/users/forms.py:71 +#: dashboards/syspanel/users/forms.py:69 #: dashboards/syspanel/users/forms.py:123 msgid "Confirm Password" msgstr "确认密码" -#: dashboards/syspanel/users/forms.py:74 +#: dashboards/syspanel/users/forms.py:72 #: dashboards/syspanel/users/forms.py:126 msgid "Primary Project" msgstr "主项目" -#: dashboards/syspanel/users/forms.py:96 +#: dashboards/syspanel/users/forms.py:74 +msgid "Role" +msgstr "角色" + +#: dashboards/syspanel/users/forms.py:95 #, python-format msgid "User \"%s\" was successfully created." msgstr "用户 \"%s\" 成功创建。" #: dashboards/syspanel/users/forms.py:105 -msgid "Unable to add user to primary project." +#, fuzzy +msgid "Unable to add userto primary project." msgstr "无法向主项目添加用户。" -#: dashboards/syspanel/users/forms.py:108 +#: dashboards/syspanel/users/forms.py:109 msgid "Unable to create user." msgstr "无法创建用户。" -#: dashboards/syspanel/users/forms.py:151 +#: dashboards/syspanel/users/forms.py:150 msgid "name" msgstr "名字" -#: dashboards/syspanel/users/forms.py:151 +#: dashboards/syspanel/users/forms.py:150 msgid "email" msgstr "邮箱" -#: dashboards/syspanel/users/forms.py:160 +#: dashboards/syspanel/users/forms.py:159 msgid "primary project" msgstr "主项目" #: dashboards/syspanel/users/forms.py:172 +#, python-format +msgid "The user %s has no role defined for" +msgstr "" + +#: dashboards/syspanel/users/forms.py:180 msgid "password" msgstr "密码" -#: dashboards/syspanel/users/forms.py:181 +#: dashboards/syspanel/users/forms.py:189 #, fuzzy msgid "User has been updated successfully." msgstr "容器创建成功" -#: dashboards/syspanel/users/forms.py:185 +#: dashboards/syspanel/users/forms.py:193 #, fuzzy, python-format msgid "Unable to update %(attributes)s for the user." msgstr "无法更新属性 %(attributes)s 为用户 \"%(user)s\"。" -#: dashboards/syspanel/users/tables.py:18 -#: dashboards/syspanel/users/templates/users/_create.html:7 -#: dashboards/syspanel/users/templates/users/_create.html:22 -#: dashboards/syspanel/users/templates/users/create.html:7 -msgid "Create User" -msgstr "创建用户" - -#: dashboards/syspanel/users/tables.py:37 +#: dashboards/syspanel/users/tables.py:38 msgid "Enable" msgstr "激活" -#: dashboards/syspanel/users/tables.py:37 +#: dashboards/syspanel/users/tables.py:38 msgid "Disable" msgstr "禁用" -#: dashboards/syspanel/users/tables.py:38 +#: dashboards/syspanel/users/tables.py:39 #, fuzzy msgid "Disabled" msgstr "禁用" -#: dashboards/syspanel/users/tables.py:61 +#: dashboards/syspanel/users/tables.py:62 msgid "You cannot disable the user you are currently logged in as." msgstr "您不能禁用您当前登录的用户。" -#: dashboards/syspanel/users/tables.py:111 +#: dashboards/syspanel/users/tables.py:113 #, fuzzy msgid "User ID" msgstr "用户数据" -#: dashboards/syspanel/users/views.py:46 -msgid "Unable to retrieve user list." -msgstr "无法得到用户信息列表。" - -#: dashboards/syspanel/users/views.py:67 +#: dashboards/syspanel/users/views.py:69 msgid "Unable to update user." msgstr "无法更新用户。" -#: dashboards/syspanel/users/views.py:93 +#: dashboards/syspanel/users/views.py:103 #, fuzzy msgid "Unable to retrieve user roles." msgstr "无法得到用户信息列表。" @@ -2581,55 +3367,83 @@ msgid "" "From here you can edit the user's details, including their default project." msgstr "在这里您可以编辑用户的用户名、邮箱、密码、以及默认项目等信息。" -#: tables/actions.py:299 +#: tables/actions.py:338 msgid "Filter" msgstr "过滤" -#: tables/actions.py:461 +#: tables/actions.py:502 +msgid "N/A" +msgstr "" + +#: tables/actions.py:526 #, python-format msgid "You do not have permission to %(action)s: %(objs)s" msgstr "您没有权限执行 %(action)s: %(objs)s" -#: tables/actions.py:467 +#: tables/actions.py:532 #, python-format msgid "Unable to %(action)s: %(objs)s" msgstr "无法执行 %(action)s: %(objs)s" -#: tables/actions.py:473 +#: tables/actions.py:538 #, python-format msgid "%(action)s: %(objs)s" msgstr "%(action)s: %(objs)s" -#: tables/actions.py:483 +#: tables/actions.py:548 msgid "Delete" msgstr "删除" -#: tables/actions.py:484 +#: tables/actions.py:549 msgid "Deleted" msgstr "被删除" -#: tables/base.py:257 +#: tables/base.py:266 #, python-format msgid "The attribute %(attr)s doesn't exist on %(obj)s." msgstr "属性 %(attr)s 并不存在于 %(obj)s。" -#: tables/base.py:743 +#: tables/base.py:819 msgid "Actions" msgstr "动作" -#: tables/base.py:891 +#: tables/base.py:981 msgid "No items to display." msgstr "没有条目显示。" -#: tables/base.py:908 +#: tables/base.py:998 #, python-format msgid "No match returned for the id \"%s\"." msgstr "id \"%s\" 没有匹配返回。" -#: tables/base.py:1015 +#: tables/base.py:1128 msgid "Please select a row before taking that action." msgstr "请在执行前选择一行。" +#: templates/_header.html:3 +msgid "Logged in as" +msgstr "" + +#: templates/_header.html:6 +msgid "Help" +msgstr "" + +#: templates/_header.html:8 +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 "" + #: templates/horizon/_messages.html:7 msgid "Info: " msgstr "信息:" @@ -2646,16 +3460,12 @@ msgstr "成功:" msgid "Error: " msgstr "错误:" -#: templates/horizon/client_side/_loading.html:9 -msgid "Loading…" -msgstr "" - -#: templates/horizon/common/_data_table.html:33 +#: templates/horizon/common/_data_table.html:36 #, fuzzy msgid "Summary" msgstr "使用情况摘要" -#: templates/horizon/common/_data_table.html:42 +#: templates/horizon/common/_data_table.html:45 #, python-format msgid "Displaying %(counter)s item" msgid_plural "Displaying %(counter)s items" @@ -2691,6 +3501,10 @@ msgstr "本月的 VCPU 小时时间" msgid "This Month's GB-Hours" msgstr "本月的 GB 小时时间" +#: templatetags/branding.py:35 +msgid "Horizon" +msgstr "" + #: templatetags/horizon.py:108 msgid "No Limit" msgstr "无限制" @@ -2757,38 +3571,43 @@ msgstr "管理员" msgid "Giant ants are attacking San Francisco!" msgstr "" -#: tests/table_tests.py:104 +#: tests/table_tests.py:106 msgid "Batch" msgstr "批" -#: tests/table_tests.py:105 +#: tests/table_tests.py:107 msgid "Batched" msgstr "分批的" -#: tests/table_tests.py:106 tests/table_tests.py:117 +#: tests/table_tests.py:108 tests/table_tests.py:119 msgid "Item" msgstr "条目" -#: tests/table_tests.py:107 tests/table_tests.py:118 +#: tests/table_tests.py:109 tests/table_tests.py:120 msgid "Items" msgstr "条目" -#: tests/table_tests.py:115 +#: tests/table_tests.py:117 msgid "Down" msgstr "向下" -#: tests/table_tests.py:115 +#: tests/table_tests.py:117 msgid "Up" msgstr "向上" -#: tests/table_tests.py:116 +#: tests/table_tests.py:118 msgid "Downed" msgstr "向下的" -#: tests/table_tests.py:116 +#: tests/table_tests.py:118 msgid "Upped" msgstr "向上的" +#: tests/table_tests.py:185 +#, fuzzy +msgid "No Actions Table" +msgstr "动作" + #: tests/tabs_tests.py:36 msgid "Tab One" msgstr "Tab 1" @@ -2813,7 +3632,7 @@ msgstr "我的表格中的Tab" msgid "Recoverable Error Tab" msgstr "恢复的错误Tab" -#: tests/testsettings.py:111 +#: tests/testsettings.py:118 msgid "Password must be between 8 and 18 characters." msgstr "密码必须是8到18位的字符。" @@ -2880,32 +3699,32 @@ msgstr "您正在查看未来的数据,它们将来可能存在可能不存在 msgid "Download CSV Summary" msgstr "下载 CSV 摘要" -#: usage/tables.py:24 +#: usage/tables.py:25 msgid "VCPU Hours" msgstr "VCPU 小时时间" -#: usage/tables.py:31 +#: usage/tables.py:32 msgid "Disk GB Hours" msgstr "磁盘 GB 小时时间" -#: usage/tables.py:39 usage/tables.py:67 +#: usage/tables.py:40 usage/tables.py:68 msgid "Usage Summary" msgstr "使用情况摘要" -#: usage/tables.py:59 +#: usage/tables.py:60 msgid "Uptime" msgstr "正常运行时间" -#: utils/fields.py:43 +#: utils/fields.py:46 msgid "Incorrect format for IP address" msgstr "" -#: utils/fields.py:44 +#: utils/fields.py:47 #, fuzzy msgid "Invalid version for IP address" msgstr "无效的用户名或密码。" -#: utils/fields.py:45 +#: utils/fields.py:48 msgid "Invalid subnet mask" msgstr "" @@ -2913,16 +3732,16 @@ msgstr "" msgid "Password is not accepted" msgstr "密码没有接受" -#: workflows/base.py:69 +#: workflows/base.py:70 msgid "Processing..." msgstr "" -#: workflows/base.py:511 +#: workflows/base.py:539 #, fuzzy, python-format msgid "%s completed successfully." msgstr "容器创建成功" -#: workflows/base.py:512 +#: workflows/base.py:540 #, python-format msgid "%s did not complete." msgstr "" diff --git a/horizon/locale/zh_CN/LC_MESSAGES/djangojs.po b/horizon/locale/zh_CN/LC_MESSAGES/djangojs.po new file mode 100644 index 000000000..7502d161c --- /dev/null +++ b/horizon/locale/zh_CN/LC_MESSAGES/djangojs.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 "" diff --git a/horizon/locale/zh_TW/LC_MESSAGES/django.po b/horizon/locale/zh_TW/LC_MESSAGES/django.po index 179e16dd6..ab96c6519 100644 --- a/horizon/locale/zh_TW/LC_MESSAGES/django.po +++ b/horizon/locale/zh_TW/LC_MESSAGES/django.po @@ -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:47+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Andy Chong \n" "Language-Team: LANGUAGE \n" @@ -31,7 +31,7 @@ msgstr "無法列出容器。" msgid "You are not authorized to access %s" msgstr "您的權限不足 無法查看%s" -#: exceptions.py:299 +#: exceptions.py:270 msgid "Unauthorized. Please try logging in again." msgstr "權限不足。 請重新登入。" @@ -40,21 +40,21 @@ msgstr "權限不足。 請重新登入。" msgid "%(type)s (%(backend)s backend)" msgstr "%(type)s (%(backend)s 後端)" -#: api/nova.py:185 +#: api/nova.py:186 #, python-format msgid "ALLOW %(from)s:%(to)s from %(group)s" msgstr "允许 %(from)s:%(to)s 從群組%(group)s的連線" -#: api/nova.py:190 +#: api/nova.py:191 #, python-format msgid "ALLOW %(from)s:%(to)s from %(cidr)s" msgstr "允许 %(from)s:%(to)s 從網段%(cidr)s的連線" -#: api/nova.py:502 +#: api/nova.py:514 msgid "Unknown instance" msgstr "" -#: api/swift.py:155 +#: api/swift.py:154 msgid "Unicode is not currently supported for object copy." msgstr "目前並不支援Unicode的物件複製。" @@ -62,52 +62,53 @@ msgstr "目前並不支援Unicode的物件複製。" msgid "Manage Compute" msgstr "運算管理" -#: dashboards/nova/dashboard.py:34 +#: dashboards/nova/dashboard.py:35 msgid "Object Store" msgstr "物件儲存" -#: dashboards/nova/dashboard.py:39 dashboards/nova/instances/workflows.py:32 -#: dashboards/syspanel/projects/tables.py:52 tests/workflows_tests.py:39 +#: dashboards/nova/dashboard.py:40 dashboards/nova/instances/workflows.py:37 +#: dashboards/syspanel/networks/forms.py:37 +#: dashboards/syspanel/networks/tables.py:66 +#: dashboards/syspanel/projects/tables.py:65 tests/workflows_tests.py:39 msgid "Project" msgstr "專案" #: dashboards/nova/access_and_security/panel.py:25 -#: dashboards/nova/instances/workflows.py:328 +#: dashboards/nova/instances/workflows.py:345 msgid "Access & Security" msgstr "存取 & 安全性" -#: dashboards/nova/access_and_security/views.py:51 +#: dashboards/nova/access_and_security/views.py:50 msgid "Unable to retrieve keypair list." msgstr "無法取得金鑰列表。" -#: dashboards/nova/access_and_security/views.py:60 -#: dashboards/nova/access_and_security/security_groups/views.py:64 +#: dashboards/nova/access_and_security/views.py:59 +#: dashboards/nova/access_and_security/security_groups/views.py:72 msgid "Unable to retrieve security groups." msgstr "無法取得安全性群組" -#: dashboards/nova/access_and_security/views.py:69 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:44 +#: dashboards/nova/access_and_security/views.py:68 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:48 #, fuzzy msgid "Unable to retrieve floating IP addresses." msgstr "無法取得映像。" -#: dashboards/nova/access_and_security/views.py:76 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:60 +#: dashboards/nova/access_and_security/views.py:75 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:64 #: dashboards/syspanel/instances/views.py:58 msgid "Unable to retrieve instance list." msgstr "無法取得執行個體列表" -#: dashboards/nova/access_and_security/floating_ips/forms.py:38 +#: dashboards/nova/access_and_security/floating_ips/forms.py:31 msgid "Pool" msgstr "储备池" -#: dashboards/nova/access_and_security/floating_ips/forms.py:53 -#, python-format -msgid "" -"Successfully allocated Floating IP \"%(ip)s\" to project \"%(project)s\"" -msgstr "已成功將浮動IP\"%(ip)s\"分配到專案\"%(project)s\"" +#: dashboards/nova/access_and_security/floating_ips/forms.py:42 +#, fuzzy, python-format +msgid "Allocated Floating IP %(ip)s." +msgstr "分配浮動IP" -#: dashboards/nova/access_and_security/floating_ips/forms.py:57 +#: dashboards/nova/access_and_security/floating_ips/forms.py:46 msgid "Unable to allocate Floating IP." msgstr "無法分配浮動IP" @@ -130,7 +131,7 @@ msgstr "浮動IP" #: dashboards/nova/access_and_security/floating_ips/tables.py:49 #: dashboards/nova/access_and_security/floating_ips/tables.py:132 -#: dashboards/syspanel/projects/forms.py:119 +#: dashboards/syspanel/projects/workflows.py:42 msgid "Floating IPs" msgstr "浮動IP" @@ -160,20 +161,20 @@ msgid "%(INSTANCE_NAME)s (%(INSTANCE_ID)s)" msgstr "" #: dashboards/nova/access_and_security/floating_ips/tables.py:115 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:28 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:34 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:31 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:38 #: dashboards/nova/instances/tables.py:270 #: dashboards/syspanel/instances/tables.py:74 msgid "IP Address" msgstr "IP位址" #: dashboards/nova/access_and_security/floating_ips/tables.py:118 -#: dashboards/nova/access_and_security/floating_ips/workflows.py:31 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:35 #: dashboards/nova/instances/tables.py:62 #: dashboards/nova/instances/tables.py:79 #: dashboards/nova/instances/tables.py:94 #: dashboards/nova/instances/tables.py:122 -#: dashboards/nova/volumes/tables.py:195 tests/workflows_tests.py:58 +#: dashboards/nova/volumes/tables.py:197 tests/workflows_tests.py:58 msgid "Instance" msgstr "執行個體" @@ -181,86 +182,86 @@ msgstr "執行個體" msgid "Floating IP Pool" msgstr "浮動IP集" -#: dashboards/nova/access_and_security/floating_ips/views.py:60 +#: dashboards/nova/access_and_security/floating_ips/views.py:64 +#, fuzzy +msgid "Unable to retrieve floating IP pools." +msgstr "無法取得映像。" + +#: dashboards/nova/access_and_security/floating_ips/views.py:67 msgid "No floating IP pools available." msgstr "沒有任何存在的浮動IP集" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:35 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:39 msgid "Select the IP address you wish to associate with the selected instance." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:48 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:52 #, fuzzy msgid "Select an IP address" msgstr "選擇專案" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:50 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:54 #, fuzzy msgid "No IP addresses available" msgstr "沒有可用的執行個體" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:77 -#: dashboards/nova/volumes/forms.py:92 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:81 +#: dashboards/nova/volumes/forms.py:160 msgid "Select an instance" msgstr "選擇一個執行個體" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:79 -#: dashboards/nova/volumes/forms.py:94 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:83 +#: dashboards/nova/volumes/forms.py:162 msgid "No instances available" msgstr "沒有可用的執行個體" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:98 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:102 msgid "Manage Floating IP Associations" msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:99 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:103 #, fuzzy msgid "Associate" msgstr "配給IP" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:100 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:104 #, python-format msgid "IP address %s associated." msgstr "" -#: dashboards/nova/access_and_security/floating_ips/workflows.py:101 +#: dashboards/nova/access_and_security/floating_ips/workflows.py:105 #, fuzzy, python-format msgid "Unable to associate IP address %s." msgstr "無法配給浮動IP" -#: dashboards/nova/access_and_security/keypairs/forms.py:40 -#: dashboards/nova/access_and_security/keypairs/forms.py:58 +#: dashboards/nova/access_and_security/keypairs/forms.py:38 +#: dashboards/nova/access_and_security/keypairs/forms.py:49 #: dashboards/nova/access_and_security/keypairs/tables.py:51 msgid "Keypair Name" msgstr "金鑰名稱" -#: dashboards/nova/access_and_security/keypairs/forms.py:42 +#: dashboards/nova/access_and_security/keypairs/forms.py:40 msgid "" "Keypair names may only contain letters, numbers, underscores and hyphens." msgstr "金鑰名稱只接受英文字母,數字,下劃線(_)和連字符號(-)" -#: dashboards/nova/access_and_security/keypairs/forms.py:53 -#, fuzzy -msgid "Unable to create keypair." -msgstr "無法取得金鑰。" - -#: dashboards/nova/access_and_security/keypairs/forms.py:60 +#: dashboards/nova/access_and_security/keypairs/forms.py:51 msgid "Public Key" msgstr "公鑰內容" -#: dashboards/nova/access_and_security/keypairs/forms.py:68 +#: dashboards/nova/access_and_security/keypairs/forms.py:60 #, python-format msgid "Successfully imported public key: %s" msgstr "已成功匯入公鑰: %s" -#: dashboards/nova/access_and_security/keypairs/forms.py:74 +#: dashboards/nova/access_and_security/keypairs/forms.py:65 #, fuzzy msgid "Unable to import keypair." msgstr "無法取得金鑰。" #: dashboards/nova/access_and_security/keypairs/tables.py:29 -#: dashboards/nova/instances/tables.py:272 -#: dashboards/nova/instances/workflows.py:316 +#: dashboards/nova/instances/tables.py:274 +#: dashboards/nova/instances/workflows.py:332 msgid "Keypair" msgstr "金鑰" @@ -287,31 +288,43 @@ msgstr "建立金鑰" msgid "Fingerprint" msgstr "金鑰指紋" -#: dashboards/nova/access_and_security/keypairs/views.py:64 +#: dashboards/nova/access_and_security/keypairs/views.py:73 #, python-format msgid "Unable to create keypair: %(exc)s" msgstr "無法建立金鑰: %(exc)s" -#: dashboards/nova/access_and_security/security_groups/forms.py:40 +#: dashboards/nova/access_and_security/security_groups/forms.py:35 #: dashboards/nova/access_and_security/security_groups/tables.py:57 -#: dashboards/nova/images_and_snapshots/images/forms.py:42 -#: dashboards/nova/images_and_snapshots/images/forms.py:120 +#: dashboards/nova/images_and_snapshots/images/forms.py:39 +#: dashboards/nova/images_and_snapshots/images/forms.py:114 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:9 -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:46 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:63 #: dashboards/nova/instances/templates/instances/_detail_overview.html:9 #: dashboards/nova/instances/templates/instances/_launch_details_help.html:9 -#: dashboards/nova/volumes/tables.py:135 dashboards/nova/volumes/tables.py:153 +#: dashboards/nova/networks/forms.py:36 dashboards/nova/networks/tables.py:82 +#: dashboards/nova/networks/ports/tables.py:40 +#: dashboards/nova/networks/subnets/forms.py:42 +#: dashboards/nova/networks/subnets/forms.py:101 +#: dashboards/nova/networks/subnets/tables.py:69 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:7 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:9 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:9 +#: dashboards/nova/volumes/tables.py:135 dashboards/nova/volumes/tables.py:155 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:9 #: dashboards/syspanel/flavors/forms.py:37 -#: dashboards/syspanel/projects/forms.py:60 -#: dashboards/syspanel/projects/forms.py:85 -#: dashboards/syspanel/projects/tables.py:74 +#: dashboards/syspanel/networks/forms.py:35 +#: dashboards/syspanel/networks/ports/forms.py:39 +#: dashboards/syspanel/networks/ports/forms.py:71 +#: dashboards/syspanel/networks/ports/tables.py:73 +#: dashboards/syspanel/networks/subnets/tables.py:69 +#: dashboards/syspanel/projects/tables.py:87 +#: dashboards/syspanel/projects/workflows.py:66 #: dashboards/syspanel/services/tables.py:38 #: dashboards/syspanel/volumes/tables.py:10 msgid "Name" msgstr "名稱" -#: dashboards/nova/access_and_security/security_groups/forms.py:42 +#: dashboards/nova/access_and_security/security_groups/forms.py:37 #: dashboards/nova/access_and_security/security_groups/tables.py:58 #: dashboards/nova/access_and_security/templates/access_and_security/keypairs/_create.html:16 #: dashboards/nova/access_and_security/templates/access_and_security/keypairs/_import.html:16 @@ -319,18 +332,23 @@ msgstr "名稱" #: dashboards/nova/containers/templates/containers/_copy.html:16 #: dashboards/nova/containers/templates/containers/_create.html:16 #: dashboards/nova/containers/templates/containers/_upload.html:17 -#: dashboards/nova/volumes/forms.py:25 dashboards/nova/volumes/forms.py:125 +#: dashboards/nova/networks/templates/networks/_create.html:16 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:17 +#: dashboards/nova/volumes/forms.py:28 dashboards/nova/volumes/forms.py:195 #: dashboards/nova/volumes/tables.py:138 #: dashboards/nova/volumes/templates/volumes/_create.html:18 #: dashboards/nova/volumes/templates/volumes/_create_snapshot.html:17 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:14 #: dashboards/syspanel/flavors/templates/flavors/_create.html:17 #: dashboards/syspanel/images/templates/images/_update.html:17 -#: dashboards/syspanel/projects/forms.py:63 -#: dashboards/syspanel/projects/forms.py:88 -#: dashboards/syspanel/projects/tables.py:76 +#: dashboards/syspanel/networks/templates/networks/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:17 +#: dashboards/syspanel/projects/tables.py:89 +#: dashboards/syspanel/projects/workflows.py:69 #: dashboards/syspanel/projects/templates/projects/_add_user.html:17 #: dashboards/syspanel/projects/templates/projects/_create.html:17 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:17 #: dashboards/syspanel/projects/templates/projects/_quotas.html:16 #: dashboards/syspanel/projects/templates/projects/_update.html:17 #: dashboards/syspanel/users/templates/users/_create.html:16 @@ -338,20 +356,24 @@ msgstr "名稱" msgid "Description" msgstr "敘述" -#: dashboards/nova/access_and_security/security_groups/forms.py:50 +#: dashboards/nova/access_and_security/security_groups/forms.py:45 #, fuzzy, python-format msgid "Successfully created security group: %s" msgstr "已成功建立安全性群組: %s" -#: dashboards/nova/access_and_security/security_groups/forms.py:53 +#: dashboards/nova/access_and_security/security_groups/forms.py:51 msgid "Unable to create security group." msgstr "無法建立安全性群組" -#: dashboards/nova/access_and_security/security_groups/forms.py:58 +#: dashboards/nova/access_and_security/security_groups/forms.py:56 #: dashboards/nova/access_and_security/security_groups/tables.py:92 msgid "IP Protocol" msgstr "IP協定" +#: dashboards/nova/access_and_security/security_groups/forms.py:60 +msgid "The protocol which this rule should be applied to." +msgstr "" + #: dashboards/nova/access_and_security/security_groups/forms.py:64 #: dashboards/nova/access_and_security/security_groups/forms.py:70 #: dashboards/nova/access_and_security/security_groups/tables.py:94 @@ -393,56 +415,64 @@ msgstr "代號" msgid "Source Group" msgstr "安全性群組" -#: dashboards/nova/access_and_security/security_groups/forms.py:84 +#: dashboards/nova/access_and_security/security_groups/forms.py:85 +msgid "" +"To specify an allowed IP range, select CIDR. To allow access from all " +"members of another security group select Source Group." +msgstr "" + +#: dashboards/nova/access_and_security/security_groups/forms.py:90 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:15 +#: dashboards/syspanel/networks/subnets/tables.py:71 msgid "CIDR" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:87 +#: dashboards/nova/access_and_security/security_groups/forms.py:93 msgid "Classless Inter-Domain Routing (e.g. 192.168.0.0/24)" msgstr "Classless Inter-Domain Routing (例如192.168.0.0/24)" -#: dashboards/nova/access_and_security/security_groups/forms.py:116 +#: dashboards/nova/access_and_security/security_groups/forms.py:120 #, fuzzy msgid "The ICMP type is invalid." msgstr "\"到端口\"不符合條件" -#: dashboards/nova/access_and_security/security_groups/forms.py:119 +#: dashboards/nova/access_and_security/security_groups/forms.py:123 #, fuzzy msgid "The ICMP code is invalid." msgstr "\"到端口\"不符合條件" -#: dashboards/nova/access_and_security/security_groups/forms.py:122 +#: dashboards/nova/access_and_security/security_groups/forms.py:126 msgid "The ICMP type not in range (-1, 255)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:125 +#: dashboards/nova/access_and_security/security_groups/forms.py:129 msgid "The ICMP code not in range (-1, 255)" msgstr "" -#: dashboards/nova/access_and_security/security_groups/forms.py:129 +#: dashboards/nova/access_and_security/security_groups/forms.py:133 msgid "The \"from\" port number is invalid." msgstr "\"從端口\"不符合條件" -#: dashboards/nova/access_and_security/security_groups/forms.py:132 +#: dashboards/nova/access_and_security/security_groups/forms.py:136 msgid "The \"to\" port number is invalid." msgstr "\"到端口\"不符合條件" -#: dashboards/nova/access_and_security/security_groups/forms.py:135 +#: dashboards/nova/access_and_security/security_groups/forms.py:139 msgid "" "The \"to\" port number must be greater than or equal to the \"from\" port " "number." msgstr "\"到端口\"必須是大於或等於\"從端口\"的整數" -#: dashboards/nova/access_and_security/security_groups/forms.py:141 +#: dashboards/nova/access_and_security/security_groups/forms.py:145 msgid "Either CIDR or Source Group may be specified, but not both." msgstr "只能指定CIDR或安全性群組,不能同時全選。" -#: dashboards/nova/access_and_security/security_groups/forms.py:163 +#: dashboards/nova/access_and_security/security_groups/forms.py:167 #, python-format msgid "Successfully added rule: %s" msgstr "已成功新增規則: %s" -#: dashboards/nova/access_and_security/security_groups/forms.py:166 +#: dashboards/nova/access_and_security/security_groups/forms.py:172 #, fuzzy msgid "Unable to add rule to security group." msgstr "無法建立安全性群組" @@ -453,7 +483,7 @@ msgstr "安全性群組" #: dashboards/nova/access_and_security/security_groups/tables.py:31 #: dashboards/nova/access_and_security/security_groups/tables.py:65 -#: dashboards/nova/instances/workflows.py:320 +#: dashboards/nova/instances/workflows.py:337 #: dashboards/nova/instances/templates/instances/_detail_overview.html:49 msgid "Security Groups" msgstr "安全性群組" @@ -485,10 +515,15 @@ msgstr "來源" msgid "Security Group Rules" msgstr "安全性群組規則" -#: dashboards/nova/access_and_security/security_groups/views.py:55 +#: dashboards/nova/access_and_security/security_groups/views.py:58 msgid "Unable to retrieve security group." msgstr "無法取得安全性群組" +#: dashboards/nova/access_and_security/security_groups/views.py:78 +#, python-format +msgid "%s (current)" +msgstr "" + #: dashboards/nova/access_and_security/templates/access_and_security/index.html:6 msgid "Access & Security" msgstr "存取 & 安全性" @@ -503,9 +538,14 @@ msgstr "分配浮動IP" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_update.html:16 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:17 #: dashboards/nova/instances/templates/instances/_update.html:16 +#: dashboards/nova/networks/templates/networks/_update.html:16 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:25 #: dashboards/settings/ec2/templates/ec2/download_form.html:17 #: dashboards/settings/project/templates/project/_openrc.html:24 #: dashboards/settings/user/templates/user/_settings.html:17 +#: dashboards/syspanel/networks/templates/networks/_update.html:16 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:21 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:25 msgid "Description:" msgstr "詳述:" @@ -534,7 +574,11 @@ msgstr "分配IP" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_update.html:23 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:24 #: dashboards/nova/instances/templates/instances/_update.html:23 -#: dashboards/nova/volumes/templates/volumes/_attach.html:20 +#: dashboards/nova/networks/templates/networks/_create.html:23 +#: dashboards/nova/networks/templates/networks/_update.html:23 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:24 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:32 +#: dashboards/nova/volumes/templates/volumes/_attach.html:24 #: dashboards/nova/volumes/templates/volumes/_create.html:56 #: dashboards/nova/volumes/templates/volumes/_create_snapshot.html:24 #: dashboards/settings/ec2/templates/ec2/download_form.html:24 @@ -542,8 +586,15 @@ msgstr "分配IP" #: dashboards/settings/user/templates/user/_settings.html:24 #: dashboards/syspanel/flavors/templates/flavors/_create.html:24 #: dashboards/syspanel/images/templates/images/_update.html:24 +#: dashboards/syspanel/networks/templates/networks/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/_update.html:23 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:28 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:24 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:32 #: dashboards/syspanel/projects/templates/projects/_add_user.html:24 #: dashboards/syspanel/projects/templates/projects/_create.html:24 +#: dashboards/syspanel/projects/templates/projects/_create_user.html:24 #: dashboards/syspanel/projects/templates/projects/_quotas.html:23 #: dashboards/syspanel/projects/templates/projects/_update.html:24 #: dashboards/syspanel/users/templates/users/_create.html:23 @@ -598,161 +649,154 @@ msgstr "編輯安全性群組規則" msgid "Add Rule" msgstr "新增規則" -#: dashboards/nova/containers/forms.py:38 +#: dashboards/nova/containers/browsers.py:30 +msgid "Swift" +msgstr "" + +#: dashboards/nova/containers/forms.py:37 msgid "Slash is not an allowed character." msgstr "斜線符號不能被接受" -#: dashboards/nova/containers/forms.py:48 -#: dashboards/nova/containers/tables.py:91 +#: dashboards/nova/containers/forms.py:47 +#: dashboards/nova/containers/tables.py:125 msgid "Container Name" msgstr "容器名稱" -#: dashboards/nova/containers/forms.py:56 +#: dashboards/nova/containers/forms.py:55 msgid "Container created successfully." msgstr "容器已成功建立" -#: dashboards/nova/containers/forms.py:67 +#: dashboards/nova/containers/forms.py:66 #, fuzzy msgid "Folder created successfully." msgstr "容器已成功建立" -#: dashboards/nova/containers/forms.py:75 +#: dashboards/nova/containers/forms.py:69 msgid "Unable to create container." msgstr "無法建立容器" -#: dashboards/nova/containers/forms.py:85 -#: dashboards/nova/containers/tables.py:157 +#: dashboards/nova/containers/forms.py:77 +#: dashboards/nova/containers/tables.py:253 msgid "Object Name" msgstr "物件名稱" -#: dashboards/nova/containers/forms.py:87 +#: dashboards/nova/containers/forms.py:79 msgid "File" msgstr "檔案" -#: dashboards/nova/containers/forms.py:103 +#: dashboards/nova/containers/forms.py:95 msgid "Object was successfully uploaded." msgstr "物件已成功上傳" -#: dashboards/nova/containers/forms.py:105 +#: dashboards/nova/containers/forms.py:98 msgid "Unable to upload object." msgstr "無法上傳物件" -#: dashboards/nova/containers/forms.py:111 +#: dashboards/nova/containers/forms.py:102 msgid "Destination container" msgstr "目的地容器" -#: dashboards/nova/containers/forms.py:115 +#: dashboards/nova/containers/forms.py:106 msgid "Destination object name" msgstr "目的地物件名稱" -#: dashboards/nova/containers/forms.py:145 -#: dashboards/nova/containers/forms.py:169 +#: dashboards/nova/containers/forms.py:136 +#: dashboards/nova/containers/forms.py:162 msgid "Unable to copy object." msgstr "無法複製物件" -#: dashboards/nova/containers/forms.py:161 +#: dashboards/nova/containers/forms.py:152 #, python-format msgid "Copied \"%(orig)s\" to \"%(dest)s\" as \"%(new)s\"." msgstr "" #: dashboards/nova/containers/panel.py:28 -#: dashboards/nova/containers/tables.py:35 -#: dashboards/nova/containers/tables.py:102 -#: dashboards/nova/containers/templates/containers/index.html:6 +#: dashboards/nova/containers/tables.py:41 +#: dashboards/nova/containers/tables.py:132 msgid "Containers" msgstr "容器" -#: dashboards/nova/containers/tables.py:34 -#: dashboards/nova/containers/templates/containers/detail.html:7 +#: dashboards/nova/containers/tables.py:40 +#: dashboards/nova/containers/templates/containers/index.html:7 msgid "Container" msgstr "容器" -#: dashboards/nova/containers/tables.py:42 +#: dashboards/nova/containers/tables.py:49 msgid "Containers must be empty before deletion." msgstr "" -#: dashboards/nova/containers/tables.py:48 +#: dashboards/nova/containers/tables.py:67 #: dashboards/nova/containers/templates/containers/_create.html:7 #: dashboards/nova/containers/templates/containers/_create.html:22 #: dashboards/nova/containers/templates/containers/create.html:6 msgid "Create Container" msgstr "建立容器" -#: dashboards/nova/containers/tables.py:55 +#: dashboards/nova/containers/tables.py:74 #, fuzzy msgid "View Container" msgstr "容器" -#: dashboards/nova/containers/tables.py:62 +#: dashboards/nova/containers/tables.py:86 #: dashboards/nova/containers/templates/containers/_upload.html:23 #: dashboards/nova/containers/templates/containers/upload.html:3 msgid "Upload Object" msgstr "上傳物件" -#: dashboards/nova/containers/tables.py:93 -#: dashboards/nova/containers/tables.py:109 -#: dashboards/nova/containers/tables.py:169 -#: dashboards/nova/containers/templates/containers/detail.html:3 +#: dashboards/nova/containers/tables.py:140 +#: dashboards/nova/containers/tables.py:159 +msgid "Object" +msgstr "物件" + +#: dashboards/nova/containers/tables.py:141 +#: dashboards/nova/containers/tables.py:160 +#: dashboards/nova/containers/tables.py:263 msgid "Objects" msgstr "物件" -#: dashboards/nova/containers/tables.py:95 -#: dashboards/nova/containers/tables.py:160 +#: dashboards/nova/containers/tables.py:152 +msgid "Folder" +msgstr "" + +#: dashboards/nova/containers/tables.py:153 +msgid "Folders" +msgstr "" + +#: dashboards/nova/containers/tables.py:166 +msgid "Copy" +msgstr "複製" + +#: dashboards/nova/containers/tables.py:178 +msgid "Download" +msgstr "下載" + +#: dashboards/nova/containers/tables.py:232 +#, fuzzy +msgid "Create Folder" +msgstr "建立規格" + +#: dashboards/nova/containers/tables.py:256 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:30 -#: dashboards/nova/instances/tables.py:271 -#: dashboards/nova/volumes/tables.py:140 +#: dashboards/nova/instances/tables.py:272 +#: dashboards/nova/volumes/tables.py:141 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:26 #: dashboards/syspanel/instances/tables.py:76 msgid "Size" msgstr "大小" -#: dashboards/nova/containers/tables.py:108 -msgid "Object" -msgstr "物件" - -#: dashboards/nova/containers/tables.py:119 -msgid "Copy" -msgstr "複製" - -#: dashboards/nova/containers/tables.py:130 -msgid "Download" -msgstr "下載" - -#: dashboards/nova/containers/tables.py:181 -#, fuzzy -msgid "Create Folder" -msgstr "建立規格" - -#: dashboards/nova/containers/tables.py:193 -msgid "Folder" -msgstr "" - -#: dashboards/nova/containers/tables.py:194 -msgid "Folders" -msgstr "" - -#: dashboards/nova/containers/tables.py:200 -#, fuzzy -msgid "Subfolder Name" -msgstr "伺服器名稱" - -#: dashboards/nova/containers/tables.py:208 -msgid "Subfolders" -msgstr "" - -#: dashboards/nova/containers/views.py:58 +#: dashboards/nova/containers/views.py:52 msgid "Unable to retrieve container list." msgstr "無法取得容器列表。" -#: dashboards/nova/containers/views.py:103 +#: dashboards/nova/containers/views.py:80 msgid "Unable to retrieve object list." msgstr "無法取得物件列表。" -#: dashboards/nova/containers/views.py:161 +#: dashboards/nova/containers/views.py:175 msgid "Unable to retrieve object." msgstr "無法取得物件。" -#: dashboards/nova/containers/views.py:183 +#: dashboards/nova/containers/views.py:204 msgid "Unable to list containers." msgstr "無法列出容器。" @@ -809,119 +853,120 @@ msgstr "上傳物件" msgid "Images & Snapshots" msgstr "映像 & 快照" -#: dashboards/nova/images_and_snapshots/views.py:60 +#: dashboards/nova/images_and_snapshots/views.py:61 msgid "Unable to retrieve images." msgstr "無法取得映像。" -#: dashboards/nova/images_and_snapshots/views.py:71 +#: dashboards/nova/images_and_snapshots/views.py:72 msgid "Unable to retrieve snapshots." msgstr "無法取得快照。" -#: dashboards/nova/images_and_snapshots/views.py:79 +#: dashboards/nova/images_and_snapshots/views.py:80 +#: dashboards/nova/volumes/forms.py:65 msgid "Unable to retrieve volume snapshots." msgstr "無法取得空間快照" -#: dashboards/nova/images_and_snapshots/images/forms.py:44 +#: dashboards/nova/images_and_snapshots/images/forms.py:41 msgid "Image Location" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:45 -msgid "An external (HTTP) URL where the image should be loaded from." +#: dashboards/nova/images_and_snapshots/images/forms.py:42 +msgid "An external (HTTP) URL to load the image from." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:48 -#: dashboards/nova/images_and_snapshots/images/forms.py:135 +#: dashboards/nova/images_and_snapshots/images/forms.py:45 +#: dashboards/nova/images_and_snapshots/images/forms.py:129 #: dashboards/nova/images_and_snapshots/images/tables.py:125 #, fuzzy msgid "Format" msgstr "磁碟格式" -#: dashboards/nova/images_and_snapshots/images/forms.py:52 +#: dashboards/nova/images_and_snapshots/images/forms.py:49 msgid "AKI - Amazon Kernel Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:55 +#: dashboards/nova/images_and_snapshots/images/forms.py:52 msgid "AMI - Amazon Machine Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:58 +#: dashboards/nova/images_and_snapshots/images/forms.py:55 msgid "ARI - Amazon Ramdisk Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:61 +#: dashboards/nova/images_and_snapshots/images/forms.py:58 msgid "ISO - Optical Disk Image" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:63 +#: dashboards/nova/images_and_snapshots/images/forms.py:60 msgid "QCOW2 - QEMU Emulator" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:70 +#: dashboards/nova/images_and_snapshots/images/forms.py:67 msgid "Minimum Disk (GB)" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:71 -#: dashboards/nova/images_and_snapshots/images/forms.py:78 +#: dashboards/nova/images_and_snapshots/images/forms.py:68 +#: dashboards/nova/images_and_snapshots/images/forms.py:75 msgid "" "The minimum disk size required to boot the image. If unspecified, this value " "defaults to 0 (no minimum)." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:77 +#: dashboards/nova/images_and_snapshots/images/forms.py:74 msgid "Minimum Ram (MB)" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:84 -#: dashboards/nova/images_and_snapshots/images/forms.py:139 +#: dashboards/nova/images_and_snapshots/images/forms.py:81 +#: dashboards/nova/images_and_snapshots/images/forms.py:133 #: dashboards/nova/images_and_snapshots/images/tables.py:122 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:15 msgid "Public" msgstr "公開" -#: dashboards/nova/images_and_snapshots/images/forms.py:108 +#: dashboards/nova/images_and_snapshots/images/forms.py:105 #, python-format msgid "Your image %s has been queued for creation." msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:111 +#: dashboards/nova/images_and_snapshots/images/forms.py:109 #, fuzzy msgid "Unable to create new image." msgstr "無法取得映像。" -#: dashboards/nova/images_and_snapshots/images/forms.py:121 +#: dashboards/nova/images_and_snapshots/images/forms.py:115 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:48 msgid "Kernel ID" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:126 +#: dashboards/nova/images_and_snapshots/images/forms.py:120 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:52 msgid "Ramdisk ID" msgstr "" -#: dashboards/nova/images_and_snapshots/images/forms.py:131 +#: dashboards/nova/images_and_snapshots/images/forms.py:125 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:44 msgid "Architecture" msgstr "系統架構" -#: dashboards/nova/images_and_snapshots/images/forms.py:144 +#: dashboards/nova/images_and_snapshots/images/forms.py:137 #, python-format msgid "Unable to update image \"%s\"." msgstr "無法更新映像\"%s\"." -#: dashboards/nova/images_and_snapshots/images/forms.py:163 +#: dashboards/nova/images_and_snapshots/images/forms.py:161 msgid "Image was successfully updated." msgstr "映像已成功更新" #: dashboards/nova/images_and_snapshots/images/tables.py:33 #: dashboards/nova/images_and_snapshots/snapshots/tables.py:32 -#: dashboards/nova/instances/workflows.py:394 +#: dashboards/nova/instances/workflows.py:451 msgid "Launch" msgstr "啟動" #: dashboards/nova/images_and_snapshots/images/tables.py:45 #: dashboards/nova/images_and_snapshots/images/tables.py:81 -#: dashboards/nova/instances/workflows.py:162 #: dashboards/nova/instances/workflows.py:167 +#: dashboards/nova/instances/workflows.py:172 msgid "Image" msgstr "映像" @@ -941,7 +986,7 @@ msgid "Create Image" msgstr "更新映像" #: dashboards/nova/images_and_snapshots/images/tables.py:67 -#: dashboards/syspanel/users/tables.py:30 +#: dashboards/syspanel/users/tables.py:31 msgid "Edit" msgstr "編輯" @@ -953,18 +998,29 @@ msgstr "映像名稱" #: dashboards/nova/images_and_snapshots/images/tables.py:118 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:13 -#: dashboards/nova/instances/tables.py:275 +#: dashboards/nova/instances/tables.py:277 #: dashboards/nova/instances/templates/instances/_detail_overview.html:13 -#: dashboards/nova/volumes/tables.py:143 +#: dashboards/nova/networks/tables.py:86 +#: dashboards/nova/networks/ports/tables.py:44 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:13 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:30 +#: dashboards/nova/volumes/tables.py:145 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:17 -#: dashboards/syspanel/instances/tables.py:80 +#: dashboards/syspanel/instances/tables.py:81 +#: dashboards/syspanel/networks/tables.py:71 +#: dashboards/syspanel/networks/ports/tables.py:77 msgid "Status" msgstr "狀態" #: dashboards/nova/images_and_snapshots/images/tabs.py:26 -#: dashboards/nova/instances/tabs.py:25 dashboards/nova/overview/panel.py:28 +#: dashboards/nova/instances/tabs.py:25 +#: dashboards/nova/networks/ports/tabs.py:29 +#: dashboards/nova/networks/subnets/tabs.py:31 +#: dashboards/nova/overview/panel.py:28 #: dashboards/nova/overview/templates/overview/usage.html:6 -#: dashboards/nova/volumes/tabs.py:26 dashboards/syspanel/overview/panel.py:28 +#: dashboards/nova/volumes/tabs.py:26 +#: dashboards/syspanel/networks/ports/tabs.py:29 +#: dashboards/syspanel/overview/panel.py:28 #: dashboards/syspanel/overview/templates/overview/usage.html:6 msgid "Overview" msgstr "總覽" @@ -973,17 +1029,17 @@ msgstr "總覽" msgid "Unable to retrieve image details." msgstr "無法取得執行個體的詳細資料" -#: dashboards/nova/images_and_snapshots/images/views.py:57 +#: dashboards/nova/images_and_snapshots/images/views.py:60 #, fuzzy msgid "Unable to retrieve image." msgstr "無法取得映像。" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:38 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:36 msgid "Instance ID" msgstr "執行個體ID" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:41 -#: dashboards/nova/volumes/forms.py:123 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:39 +#: dashboards/nova/volumes/forms.py:193 msgid "Snapshot Name" msgstr "快照名稱" @@ -992,14 +1048,13 @@ msgstr "快照名稱" msgid "Snapshot \"%(name)s\" created for instance \"%(inst)s\"" msgstr "執行個體 \"%(inst)s\"的快照\"%(name)s\"已被建立" -#: dashboards/nova/images_and_snapshots/snapshots/forms.py:56 +#: dashboards/nova/images_and_snapshots/snapshots/forms.py:55 msgid "Unable to create snapshot." msgstr "無法建立快照。" #: dashboards/nova/images_and_snapshots/snapshots/tables.py:47 -#: dashboards/nova/instances/tables.py:162 -#: dashboards/nova/instances/workflows.py:101 -#: dashboards/nova/instances/workflows.py:163 +#: dashboards/nova/instances/workflows.py:106 +#: dashboards/nova/instances/workflows.py:168 msgid "Snapshot" msgstr "快照" @@ -1011,15 +1066,10 @@ msgstr "快照" msgid "Instance Snapshots" msgstr "執行個體快照" -#: dashboards/nova/images_and_snapshots/snapshots/views.py:50 +#: dashboards/nova/images_and_snapshots/snapshots/views.py:52 msgid "Unable to retrieve instance." msgstr "無法取得執行個體" -#: dashboards/nova/images_and_snapshots/snapshots/views.py:53 -#, python-format -msgid "To create a snapshot, the instance must be in the \"%s\" state." -msgstr "建立快照時,執行個體必須是\"%s\"的狀態" - #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/index.html:3 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/index.html:6 msgid "Images & Snapshots" @@ -1066,8 +1116,14 @@ msgstr "資訊" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:11 #: dashboards/nova/instances/templates/instances/_detail_overview.html:11 +#: dashboards/nova/networks/forms.py:38 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:9 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:12 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:11 -#: dashboards/syspanel/projects/forms.py:83 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:12 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:12 #: dashboards/syspanel/users/forms.py:113 msgid "ID" msgstr "ID" @@ -1108,7 +1164,9 @@ msgid "Euca2ools state" msgstr "Euca2ools狀態" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/images/_detail_overview.html:60 -#: dashboards/syspanel/projects/tables.py:77 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:11 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:15 +#: dashboards/syspanel/projects/tables.py:90 msgid "Project ID" msgstr "專案ID" @@ -1139,6 +1197,7 @@ msgstr "映像詳細資料" #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:8 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/_create.html:23 #: dashboards/nova/images_and_snapshots/templates/images_and_snapshots/snapshots/create.html:3 +#: dashboards/nova/instances/tables.py:162 #: dashboards/nova/volumes/tables.py:67 msgid "Create Snapshot" msgstr "建立快照" @@ -1151,17 +1210,24 @@ msgstr "快照可保存運作中的執行個體的磁碟內容狀態" msgid "Create a Snapshot" msgstr "建立快照" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:30 -#: dashboards/nova/instances/workflows.py:70 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:32 +#: dashboards/nova/instances/workflows.py:75 msgid "Volume Snapshot" msgstr "容量快照" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:31 -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:52 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:33 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:69 msgid "Volume Snapshots" msgstr "容量快照" -#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:48 +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:41 +#: dashboards/nova/volumes/tables.py:50 +#: dashboards/nova/volumes/templates/volumes/_create.html:8 +#: dashboards/nova/volumes/templates/volumes/_create.html:55 +msgid "Create Volume" +msgstr "建立容量" + +#: dashboards/nova/images_and_snapshots/volume_snapshots/tables.py:65 msgid "Volume ID" msgstr "容量ID" @@ -1170,7 +1236,7 @@ msgstr "容量ID" msgid "Instance \"%s\" updated." msgstr "執行個體\"%s\"已更新" -#: dashboards/nova/instances/forms.py:46 +#: dashboards/nova/instances/forms.py:49 msgid "Unable to update instance." msgstr "無法更新執行個體" @@ -1179,13 +1245,13 @@ msgstr "無法更新執行個體" #: dashboards/nova/instances/tables.py:80 #: dashboards/nova/instances/tables.py:95 #: dashboards/nova/instances/tables.py:123 -#: dashboards/nova/instances/tables.py:290 +#: dashboards/nova/instances/tables.py:292 #: dashboards/nova/instances/templates/instances/index.html:3 #: dashboards/nova/instances/templates/instances/index.html:6 #: dashboards/syspanel/instances/panel.py:28 -#: dashboards/syspanel/instances/tables.py:95 +#: dashboards/syspanel/instances/tables.py:96 #: dashboards/syspanel/instances/templates/instances/index.html:3 -#: dashboards/syspanel/projects/forms.py:115 +#: dashboards/syspanel/projects/workflows.py:35 msgid "Instances" msgstr "執行個體" @@ -1238,7 +1304,7 @@ msgid "Resumed" msgstr "已喚醒" #: dashboards/nova/instances/tables.py:148 -#: dashboards/nova/instances/workflows.py:393 +#: dashboards/nova/instances/workflows.py:450 #: dashboards/nova/instances/templates/instances/launch.html:3 #: dashboards/nova/instances/templates/instances/launch.html:6 msgid "Launch Instance" @@ -1268,17 +1334,17 @@ msgid "Not available" msgstr "不存在" #: dashboards/nova/instances/tables.py:269 -#: dashboards/syspanel/instances/tables.py:73 usage/tables.py:56 +#: dashboards/syspanel/instances/tables.py:73 usage/tables.py:57 msgid "Instance Name" msgstr "執行個體名稱" -#: dashboards/nova/instances/tables.py:279 -#: dashboards/syspanel/instances/tables.py:84 +#: dashboards/nova/instances/tables.py:281 +#: dashboards/syspanel/instances/tables.py:85 msgid "Task" msgstr "工作" -#: dashboards/nova/instances/tables.py:286 -#: dashboards/syspanel/instances/tables.py:91 +#: dashboards/nova/instances/tables.py:288 +#: dashboards/syspanel/instances/tables.py:92 msgid "Power State" msgstr "電源狀態" @@ -1309,239 +1375,296 @@ msgstr "無法取得執行個體。" msgid "Unable to retrieve instance size information." msgstr "無法取得執行個體大小資訊" -#: dashboards/nova/instances/views.py:137 +#: dashboards/nova/instances/views.py:143 msgid "Unable to retrieve instance details." msgstr "無法取得執行個體的詳細資料" -#: dashboards/nova/instances/views.py:172 +#: dashboards/nova/instances/views.py:178 #, python-format msgid "Unable to retrieve details for instance \"%s\"." msgstr "無法取得執行個體\"%s\"詳細資料。" -#: dashboards/nova/instances/workflows.py:33 -#: dashboards/syspanel/projects/tables.py:92 -#: dashboards/syspanel/users/tables.py:39 -#: dashboards/syspanel/users/tables.py:73 tests/workflows_tests.py:40 +#: dashboards/nova/instances/workflows.py:38 +#: dashboards/syspanel/projects/tables.py:106 +#: dashboards/syspanel/users/tables.py:40 +#: dashboards/syspanel/users/tables.py:74 tests/workflows_tests.py:40 msgid "User" msgstr "使用者" -#: dashboards/nova/instances/workflows.py:47 +#: dashboards/nova/instances/workflows.py:52 #, fuzzy msgid "Project & User" msgstr "專案使用量" -#: dashboards/nova/instances/workflows.py:49 +#: dashboards/nova/instances/workflows.py:54 msgid "" "Admin users may optionally select the project and user for whom the instance " "should be created." msgstr "" -#: dashboards/nova/instances/workflows.py:60 +#: dashboards/nova/instances/workflows.py:65 msgid "Don't boot from a volume." msgstr "" -#: dashboards/nova/instances/workflows.py:61 +#: dashboards/nova/instances/workflows.py:66 msgid "Boot from volume." msgstr "" -#: dashboards/nova/instances/workflows.py:62 +#: dashboards/nova/instances/workflows.py:67 msgid "Boot from volume snapshot (creates a new volume)." msgstr "" -#: dashboards/nova/instances/workflows.py:66 -#: dashboards/nova/instances/workflows.py:84 +#: dashboards/nova/instances/workflows.py:71 +#: dashboards/nova/instances/workflows.py:89 #, fuzzy msgid "Volume Options" msgstr "容量詳述" -#: dashboards/nova/instances/workflows.py:69 -#: dashboards/nova/instances/workflows.py:104 +#: dashboards/nova/instances/workflows.py:74 +#: dashboards/nova/instances/workflows.py:109 #: dashboards/nova/instances/templates/instances/_detail_overview.html:93 -#: dashboards/nova/volumes/tables.py:36 dashboards/nova/volumes/tables.py:171 +#: dashboards/nova/volumes/tables.py:36 dashboards/nova/volumes/tables.py:173 msgid "Volume" msgstr "容量" -#: dashboards/nova/instances/workflows.py:72 +#: dashboards/nova/instances/workflows.py:77 +#: dashboards/nova/volumes/forms.py:126 msgid "Device Name" msgstr "裝置名稱" -#: dashboards/nova/instances/workflows.py:75 +#: dashboards/nova/instances/workflows.py:80 msgid "Volume mount point (e.g. 'vda' mounts at '/dev/vda')." msgstr "容量掛載點 (例如: ‘vda’掛載在‘/dev/vda’)" -#: dashboards/nova/instances/workflows.py:77 +#: dashboards/nova/instances/workflows.py:82 msgid "Delete on Terminate" msgstr "終止執行時刪除" -#: dashboards/nova/instances/workflows.py:80 +#: dashboards/nova/instances/workflows.py:85 msgid "Delete volume on instance terminate" msgstr "執行個體終止執行時刪除容量" -#: dashboards/nova/instances/workflows.py:111 +#: dashboards/nova/instances/workflows.py:116 msgid "Select Volume" msgstr "選擇容量" -#: dashboards/nova/instances/workflows.py:119 +#: dashboards/nova/instances/workflows.py:124 #, fuzzy msgid "Unable to retrieve list of volumes." msgstr "無法取得容量列表" -#: dashboards/nova/instances/workflows.py:123 +#: dashboards/nova/instances/workflows.py:128 #, fuzzy msgid "Select Volume Snapshot" msgstr "建立容量快照" -#: dashboards/nova/instances/workflows.py:132 +#: dashboards/nova/instances/workflows.py:137 #, fuzzy msgid "Unable to retrieve list of volume snapshots." msgstr "無法取得空間快照" -#: dashboards/nova/instances/workflows.py:165 +#: dashboards/nova/instances/workflows.py:170 #, fuzzy msgid "Instance Source" msgstr "執行個體數量" -#: dashboards/nova/instances/workflows.py:168 +#: dashboards/nova/instances/workflows.py:173 #, fuzzy msgid "Instance Snapshot" msgstr "執行個體快照" -#: dashboards/nova/instances/workflows.py:170 +#: dashboards/nova/instances/workflows.py:175 msgid "Server Name" msgstr "伺服器名稱" -#: dashboards/nova/instances/workflows.py:171 +#: dashboards/nova/instances/workflows.py:176 #: dashboards/nova/instances/templates/instances/_detail_overview.html:22 #: dashboards/syspanel/flavors/tables.py:13 msgid "Flavor" msgstr "規格" -#: dashboards/nova/instances/workflows.py:172 +#: dashboards/nova/instances/workflows.py:177 msgid "Size of image to launch." msgstr "啟動的映像大小。" -#: dashboards/nova/instances/workflows.py:173 +#: dashboards/nova/instances/workflows.py:178 msgid "Instance Count" msgstr "執行個體數量" -#: dashboards/nova/instances/workflows.py:176 +#: dashboards/nova/instances/workflows.py:181 msgid "Number of instances to launch." msgstr "要啟動的執行個體數量" -#: dashboards/nova/instances/workflows.py:179 +#: dashboards/nova/instances/workflows.py:184 msgid "Details" msgstr "詳細資料" -#: dashboards/nova/instances/workflows.py:198 +#: dashboards/nova/instances/workflows.py:197 +msgid "" +"There are no image sources available; you must first create an image before " +"attempting to launch an instance." +msgstr "" + +#: dashboards/nova/instances/workflows.py:202 +#, fuzzy +msgid "Please select an option for the instance source." +msgstr "請選擇一個欄位後才執行動作" + +#: dashboards/nova/instances/workflows.py:211 msgid "" "Launching multiple instances is only supported for images and instance " "snapshots." msgstr "" -#: dashboards/nova/instances/workflows.py:214 +#: dashboards/nova/instances/workflows.py:227 #, fuzzy msgid "Unable to retrieve public images." msgstr "無法取得映像。" -#: dashboards/nova/instances/workflows.py:228 +#: dashboards/nova/instances/workflows.py:241 #, fuzzy msgid "Unable to retrieve images for the current project." msgstr "無法認證到專案權限" -#: dashboards/nova/instances/workflows.py:251 +#: dashboards/nova/instances/workflows.py:264 #, fuzzy msgid "Select Image" msgstr "選擇語言" -#: dashboards/nova/instances/workflows.py:253 +#: dashboards/nova/instances/workflows.py:266 #, fuzzy msgid "No images available." msgstr "沒有可用的執行個體" -#: dashboards/nova/instances/workflows.py:262 +#: dashboards/nova/instances/workflows.py:275 #, fuzzy msgid "Select Instance Snapshot" msgstr "執行個體快照" -#: dashboards/nova/instances/workflows.py:264 +#: dashboards/nova/instances/workflows.py:277 #, fuzzy msgid "No snapshots available." msgstr "沒有可用的執行個體" -#: dashboards/nova/instances/workflows.py:275 +#: dashboards/nova/instances/workflows.py:288 msgid "Unable to retrieve instance flavors." msgstr "無法取得執行個體規格。" -#: dashboards/nova/instances/workflows.py:288 +#: dashboards/nova/instances/workflows.py:301 #, fuzzy msgid "Unable to retrieve quota information." msgstr "無法取得使用量資訊" -#: dashboards/nova/instances/workflows.py:318 +#: dashboards/nova/instances/workflows.py:334 msgid "Which keypair to use for authentication." msgstr "認證用的金鑰選擇" -#: dashboards/nova/instances/workflows.py:324 +#: dashboards/nova/instances/workflows.py:341 msgid "Launch instance in these security groups." msgstr "在這些安全性群組中啟動執行個體" -#: dashboards/nova/instances/workflows.py:329 +#: dashboards/nova/instances/workflows.py:346 msgid "" "Control access to your instance via keypairs, security groups, and other " "mechanisms." msgstr "" -#: dashboards/nova/instances/workflows.py:339 +#: dashboards/nova/instances/workflows.py:356 msgid "Unable to retrieve keypairs." msgstr "無法取得金鑰。" -#: dashboards/nova/instances/workflows.py:341 +#: dashboards/nova/instances/workflows.py:358 msgid "Select a keypair" msgstr "選擇金鑰" -#: dashboards/nova/instances/workflows.py:343 +#: dashboards/nova/instances/workflows.py:360 msgid "No keypairs available." msgstr "沒有可用的金鑰" -#: dashboards/nova/instances/workflows.py:352 +#: dashboards/nova/instances/workflows.py:369 msgid "Unable to retrieve list of security groups" msgstr "無法取得安全性群組列表。" -#: dashboards/nova/instances/workflows.py:372 +#: dashboards/nova/instances/workflows.py:389 msgid "Customization Script" msgstr "" -#: dashboards/nova/instances/workflows.py:374 +#: dashboards/nova/instances/workflows.py:391 msgid "" "A script or set of commands to be executed after the instance has been built " "(max 16kb)." msgstr "" -#: dashboards/nova/instances/workflows.py:381 +#: dashboards/nova/instances/workflows.py:398 msgid "Post-Creation" msgstr "" -#: dashboards/nova/instances/workflows.py:395 +#: dashboards/nova/instances/workflows.py:409 +#: dashboards/nova/networks/panel.py:24 dashboards/nova/networks/tables.py:32 +#: dashboards/nova/networks/tables.py:92 +#: dashboards/nova/networks/templates/networks/index.html:3 +#: dashboards/nova/networks/templates/networks/index.html:6 +#: dashboards/syspanel/networks/panel.py:24 +#: dashboards/syspanel/networks/tables.py:34 +#: dashboards/syspanel/networks/tables.py:77 +#: dashboards/syspanel/networks/templates/networks/index.html:3 +#: dashboards/syspanel/networks/templates/networks/index.html:6 +msgid "Networks" +msgstr "" + +#: dashboards/nova/instances/workflows.py:412 +#, fuzzy +msgid "Launch instance withthese networks" +msgstr "在這些安全性群組中啟動執行個體" + +#: dashboards/nova/instances/workflows.py:416 +msgid "Networking" +msgstr "" + +#: dashboards/nova/instances/workflows.py:418 +#, fuzzy +msgid "Select networks for your instance." +msgstr "選擇一個執行個體" + +#: dashboards/nova/instances/workflows.py:429 +#, fuzzy +msgid "Unable to retrieve networks." +msgstr "無法取得使用者" + +#: dashboards/nova/instances/workflows.py:452 #, python-format msgid "Launched %(count)s named \"%(name)s\"." msgstr "" -#: dashboards/nova/instances/workflows.py:396 +#: dashboards/nova/instances/workflows.py:453 #, fuzzy, python-format msgid "Unable to launch %(count)s named \"%(name)s\"." msgstr "無法啟動執行個體: %(exc)s" -#: dashboards/nova/instances/workflows.py:408 +#: dashboards/nova/instances/workflows.py:466 #, fuzzy, python-format msgid "%s instances" msgstr "執行個體" -#: dashboards/nova/instances/workflows.py:411 +#: dashboards/nova/instances/workflows.py:469 #, fuzzy msgid "instance" msgstr "執行個體" +#: dashboards/nova/instances/templates/instances/_detail_log.html:4 +#, fuzzy +msgid "Instance Console Log" +msgstr "執行個體VNC界面" + #: dashboards/nova/instances/templates/instances/_detail_log.html:7 +msgid "Log Length" +msgstr "" + +#: dashboards/nova/instances/templates/instances/_detail_log.html:9 +msgid "Go" +msgstr "" + +#: dashboards/nova/instances/templates/instances/_detail_log.html:11 msgid "View Full Log" msgstr "檢視完整記錄檔" @@ -1558,8 +1681,8 @@ msgstr "記憶體" #: dashboards/nova/instances/templates/instances/_detail_overview.html:26 #: dashboards/nova/instances/templates/instances/_launch_details_help.html:10 #: dashboards/syspanel/flavors/forms.py:38 -#: dashboards/syspanel/flavors/tables.py:30 -#: dashboards/syspanel/projects/forms.py:114 usage/tables.py:19 +#: dashboards/syspanel/flavors/tables.py:34 +#: dashboards/syspanel/projects/workflows.py:34 usage/tables.py:19 msgid "VCPUs" msgstr "虛擬處理器" @@ -1603,7 +1726,7 @@ msgid "Volumes Attached" msgstr "沒有掛載的容量" #: dashboards/nova/instances/templates/instances/_detail_overview.html:88 -#: dashboards/nova/volumes/tables.py:156 +#: dashboards/nova/volumes/tables.py:158 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:38 #: dashboards/nova/volumes/templates/volumes/_detail_overview.html:45 msgid "Attached To" @@ -1672,12 +1795,12 @@ msgid "Flavor Details" msgstr "規格ID" #: dashboards/nova/instances/templates/instances/_launch_details_help.html:11 -#: dashboards/syspanel/flavors/tables.py:32 +#: dashboards/syspanel/flavors/tables.py:38 msgid "Root Disk" msgstr "主磁碟" #: dashboards/nova/instances/templates/instances/_launch_details_help.html:12 -#: dashboards/syspanel/flavors/tables.py:34 +#: dashboards/syspanel/flavors/tables.py:40 msgid "Ephemeral Disk" msgstr "暫用磁碟" @@ -1718,6 +1841,11 @@ msgid "You may update the editable properties of your instance here." msgstr "更新執行個體的名稱" #: dashboards/nova/instances/templates/instances/_update.html:22 +#: dashboards/nova/networks/templates/networks/_update.html:22 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:31 +#: dashboards/syspanel/networks/templates/networks/_update.html:22 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:27 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:31 msgid "Save Changes" msgstr "" @@ -1730,6 +1858,469 @@ msgstr "執行個體詳述" msgid "Update Instance" msgstr "更新執行個體" +#: dashboards/nova/networks/forms.py:47 +#, fuzzy, python-format +msgid "Network %s was successfully updated." +msgstr "已成功更新%s" + +#: dashboards/nova/networks/forms.py:52 +#, fuzzy, python-format +msgid "Failed to update network %s" +msgstr "無法更新映像\"%s\"." + +#: dashboards/nova/networks/tables.py:31 +#: dashboards/nova/networks/templates/networks/subnets/index.html:3 +#: dashboards/nova/networks/templates/networks/subnets/index.html:6 +#: dashboards/syspanel/networks/tables.py:33 +msgid "Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:47 +#: dashboards/syspanel/networks/tables.py:40 +#, python-format +msgid "Failed to delete network %s" +msgstr "" + +#: dashboards/nova/networks/tables.py:55 +#: dashboards/nova/networks/workflows.py:110 +#: dashboards/nova/networks/templates/networks/_create.html:7 +#: dashboards/nova/networks/templates/networks/_create.html:22 +#: dashboards/nova/networks/templates/networks/create.html:3 +#: dashboards/nova/networks/templates/networks/create.html:6 +#: dashboards/syspanel/networks/tables.py:48 +#: dashboards/syspanel/networks/templates/networks/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/create.html:3 +#: dashboards/syspanel/networks/templates/networks/create.html:6 +#, fuzzy +msgid "Create Network" +msgstr "建立使用者" + +#: dashboards/nova/networks/tables.py:62 +#: dashboards/nova/networks/templates/networks/_update.html:7 +#: dashboards/syspanel/networks/tables.py:55 +#: dashboards/syspanel/networks/templates/networks/_update.html:7 +msgid "Edit Network" +msgstr "" + +#: dashboards/nova/networks/tables.py:69 +#, fuzzy +msgid "Add Subnet" +msgstr "新增規則" + +#: dashboards/nova/networks/tables.py:85 +#: dashboards/syspanel/networks/tables.py:70 +#, fuzzy +msgid "Subnets Associated" +msgstr "配給IP" + +#: dashboards/nova/networks/tables.py:88 +#: dashboards/nova/networks/ports/tables.py:46 +#: dashboards/nova/networks/templates/networks/_detail_overview.html:15 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:32 +#: dashboards/syspanel/networks/tables.py:73 +#: dashboards/syspanel/networks/ports/tables.py:79 +#, fuzzy +msgid "Admin State" +msgstr "管理者" + +#: dashboards/nova/networks/views.py:55 +#: dashboards/syspanel/networks/views.py:60 +msgid "Network list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:89 +#, fuzzy +msgid "Unable to retrieve network details." +msgstr "無法取得執行個體的詳細資料" + +#: dashboards/nova/networks/views.py:112 +#: dashboards/syspanel/networks/views.py:91 +msgid "Subnet list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:124 +#: dashboards/syspanel/networks/views.py:103 +msgid "Port list can not be retrieved." +msgstr "" + +#: dashboards/nova/networks/views.py:137 +#: dashboards/syspanel/networks/views.py:118 +#, fuzzy, python-format +msgid "Unable to retrieve details for network \"%s\"." +msgstr "無法取得執行個體\"%s\"詳細資料。" + +#: dashboards/nova/networks/workflows.py:36 +msgid "Network Name (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:41 +msgid "" +"From here you can create a new network.\n" +"In addition a subnet associated with the network can be created in the next " +"panel." +msgstr "" + +#: dashboards/nova/networks/workflows.py:52 +#: dashboards/nova/networks/subnets/tables.py:48 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:8 +#: dashboards/nova/networks/templates/networks/subnets/_create.html:23 +#: dashboards/nova/networks/templates/networks/subnets/create.html:3 +#: dashboards/nova/networks/templates/networks/subnets/create.html:6 +#: dashboards/syspanel/networks/subnets/tables.py:48 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/subnets/create.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/create.html:6 +#, fuzzy +msgid "Create Subnet" +msgstr "建立快照" + +#: dashboards/nova/networks/workflows.py:55 +msgid "Subnet Name (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:57 +#: dashboards/nova/networks/subnets/forms.py:44 +#: dashboards/nova/networks/subnets/tables.py:71 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:14 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:14 +#, fuzzy +msgid "Network Address" +msgstr "IP位址" + +#: dashboards/nova/networks/workflows.py:60 +#: dashboards/nova/networks/subnets/forms.py:47 +#, fuzzy +msgid "Network address in CIDR format (e.g. 192.168.0.0/24)" +msgstr "Classless Inter-Domain Routing (例如192.168.0.0/24)" + +#: dashboards/nova/networks/workflows.py:65 +#: dashboards/nova/networks/subnets/forms.py:52 +#: dashboards/nova/networks/subnets/tables.py:72 +#: dashboards/syspanel/networks/subnets/tables.py:72 +msgid "IP Version" +msgstr "" + +#: dashboards/nova/networks/workflows.py:66 +msgid "Gateway IP (optional)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:69 +#: dashboards/nova/networks/subnets/forms.py:56 +#: dashboards/nova/networks/subnets/forms.py:106 +msgid "IP address of Gateway (e.g. 192.168.0.1)" +msgstr "" + +#: dashboards/nova/networks/workflows.py:76 +msgid "" +"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." +msgstr "" + +#: dashboards/nova/networks/workflows.py:88 +msgid "Specify \"Network Address\" or clear \"Create Subnet\" checkbox." +msgstr "" + +#: dashboards/nova/networks/workflows.py:93 +#: dashboards/nova/networks/subnets/forms.py:69 +msgid "Network Address and IP version are inconsistent." +msgstr "" + +#: dashboards/nova/networks/workflows.py:97 +#: dashboards/nova/networks/subnets/forms.py:73 +#: dashboards/nova/networks/subnets/forms.py:118 +msgid "Gateway IP and IP version are inconsistent." +msgstr "" + +#: dashboards/nova/networks/workflows.py:111 +#, fuzzy +msgid "Create" +msgstr "建立於" + +#: dashboards/nova/networks/workflows.py:112 +#, python-format +msgid "Created network \"%s\"." +msgstr "" + +#: dashboards/nova/networks/workflows.py:113 +#, fuzzy, python-format +msgid "Unable to create network \"%s\"." +msgstr "無法取得映像。" + +#: dashboards/nova/networks/workflows.py:129 +#, fuzzy, python-format +msgid "Network \"%s\" was successfully created." +msgstr "使用者\"%s\"已被成功建立。" + +#: dashboards/nova/networks/workflows.py:132 +#, fuzzy, python-format +msgid "Failed to create network \"%s\"." +msgstr "無法取得映像。" + +#: dashboards/nova/networks/workflows.py:151 +#, fuzzy, python-format +msgid "Subnet \"%s\" was successfully created." +msgstr "使用者\"%s\"已被成功建立。" + +#: dashboards/nova/networks/workflows.py:154 +#, python-format +msgid "Failed to create subnet \"%(sub)s\" for network \"%(net)s\"." +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:35 +#, fuzzy +msgid "Attached" +msgstr "掛載到" + +#: dashboards/nova/networks/ports/tables.py:35 +#, fuzzy +msgid "Detached" +msgstr "卸載" + +#: dashboards/nova/networks/ports/tables.py:42 +#: dashboards/syspanel/networks/ports/tables.py:75 +msgid "Fixed IPs" +msgstr "" + +#: dashboards/nova/networks/ports/tables.py:43 +#: dashboards/syspanel/networks/ports/tables.py:76 +#, fuzzy +msgid "Device Attached" +msgstr "裝置名稱" + +#: dashboards/nova/networks/ports/tables.py:53 +#: dashboards/syspanel/networks/ports/tables.py:35 +#: dashboards/syspanel/networks/ports/tables.py:83 +#, fuzzy +msgid "Ports" +msgstr "到端口" + +#: dashboards/nova/networks/ports/tabs.py:39 +#: dashboards/syspanel/networks/ports/tabs.py:39 +#, fuzzy +msgid "Unable to retrieve port details." +msgstr "無法取得容量快照" + +#: dashboards/nova/networks/subnets/forms.py:34 +#: dashboards/syspanel/networks/tables.py:67 +#: dashboards/syspanel/networks/ports/forms.py:32 +#, fuzzy +msgid "Network Name" +msgstr "使用者名稱" + +#: dashboards/nova/networks/subnets/forms.py:38 +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:13 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:13 +#: dashboards/syspanel/networks/ports/forms.py:35 +msgid "Network ID" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:53 +#: dashboards/nova/networks/subnets/forms.py:103 +#: dashboards/nova/networks/subnets/tables.py:73 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:19 +#: dashboards/syspanel/networks/subnets/tables.py:73 +msgid "Gateway IP" +msgstr "" + +#: dashboards/nova/networks/subnets/forms.py:84 +#, fuzzy, python-format +msgid "Subnet %s was successfully created." +msgstr "以成功建立%s" + +#: dashboards/nova/networks/subnets/forms.py:89 +#, fuzzy, python-format +msgid "Failed to create subnet %s" +msgstr "無法建立使用者。" + +#: dashboards/nova/networks/subnets/forms.py:130 +#, fuzzy, python-format +msgid "Subnet %s was successfully updated." +msgstr "已成功更新%s" + +#: dashboards/nova/networks/subnets/forms.py:135 +#, fuzzy, python-format +msgid "Failed to update subnet %s" +msgstr "無法更新配額" + +#: dashboards/nova/networks/subnets/tables.py:31 +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:6 +#: dashboards/syspanel/networks/subnets/tables.py:31 +msgid "Subnet" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:32 +#: dashboards/nova/networks/subnets/tables.py:77 +#: dashboards/syspanel/networks/subnets/tables.py:32 +#: dashboards/syspanel/networks/subnets/tables.py:80 +msgid "Subnets" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:38 +#: dashboards/syspanel/networks/ports/tables.py:41 +#: dashboards/syspanel/networks/subnets/tables.py:38 +#, python-format +msgid "Failed to delete subnet %s" +msgstr "" + +#: dashboards/nova/networks/subnets/tables.py:59 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:7 +#: dashboards/syspanel/networks/subnets/tables.py:59 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:7 +#, fuzzy +msgid "Edit Subnet" +msgstr "編輯規則" + +#: dashboards/nova/networks/subnets/tabs.py:41 +#, fuzzy +msgid "Unable to retrieve subnet details." +msgstr "無法取得執行個體的詳細資料" + +#: dashboards/nova/networks/subnets/views.py:52 +#: dashboards/syspanel/networks/ports/views.py:48 +#: dashboards/syspanel/networks/subnets/views.py:47 +#, fuzzy +msgid "Unable to retrieve network." +msgstr "無法取得使用者" + +#: dashboards/nova/networks/subnets/views.py:84 +#: dashboards/syspanel/networks/subnets/views.py:80 +#, fuzzy +msgid "Unable to retrieve subnet details" +msgstr "無法取得執行個體的詳細資料" + +#: dashboards/nova/networks/templates/networks/_create.html:17 +#: dashboards/syspanel/networks/templates/networks/_create.html:18 +#, fuzzy +msgid "Select a name for your network." +msgstr "選擇掛載的執行個體" + +#: dashboards/nova/networks/templates/networks/_detail_overview.html:3 +#, fuzzy +msgid "Network Overview" +msgstr "使用量總覽" + +#: dashboards/nova/networks/templates/networks/_update.html:17 +#: dashboards/syspanel/networks/templates/networks/_update.html:17 +#, fuzzy +msgid "You may update the editable properties of your network here." +msgstr "更新執行個體的名稱" + +#: dashboards/nova/networks/templates/networks/detail.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/index.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/index.html:6 +#, fuzzy +msgid "Network Detail" +msgstr "規格ID" + +#: dashboards/nova/networks/templates/networks/detail.html:6 +#, fuzzy +msgid "Network Detail: " +msgstr "映像詳細資料" + +#: dashboards/nova/networks/templates/networks/update.html:3 +#: dashboards/nova/networks/templates/networks/update.html:6 +#: dashboards/syspanel/networks/templates/networks/update.html:3 +#: dashboards/syspanel/networks/templates/networks/update.html:6 +#, fuzzy +msgid "Update Network" +msgstr "更新使用者" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:3 +#, fuzzy +msgid "Port Overview" +msgstr "總覽" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:6 +#: dashboards/syspanel/networks/ports/tables.py:34 +#, fuzzy +msgid "Port" +msgstr "到端口" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:17 +msgid "Fixed IP" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:21 +#, fuzzy +msgid "IP address:" +msgstr "IP位址" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:22 +msgid "Subnet ID" +msgstr "" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:28 +#, fuzzy +msgid "Mac Address" +msgstr "IP位址" + +#: dashboards/nova/networks/templates/networks/ports/_detail_overview.html:34 +#: dashboards/syspanel/networks/ports/forms.py:41 +#: dashboards/syspanel/networks/ports/forms.py:73 +#, fuzzy +msgid "Device ID" +msgstr "裝置名稱" + +#: dashboards/nova/networks/templates/networks/ports/detail.html:3 +#: dashboards/nova/networks/templates/networks/ports/detail.html:6 +#, fuzzy +msgid "Port Detail" +msgstr "規格ID" + +#: dashboards/nova/networks/templates/networks/subnets/_create.html:18 +#: dashboards/syspanel/networks/templates/networks/subnets/_create.html:18 +msgid "" +"You can create a subnet for the network. Any network address can be " +"specified unless the network address does not overlap other subnets in the " +"network." +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:3 +#, fuzzy +msgid "Subnet Overview" +msgstr "容量總覽" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:17 +#: dashboards/nova/networks/templates/networks/subnets/_update.html:16 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:16 +msgid "IP version" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:21 +msgid "IP allocation pool" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:24 +msgid "Start" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_detail_overview.html:25 +msgid " - End" +msgstr "" + +#: dashboards/nova/networks/templates/networks/subnets/_update.html:26 +#: dashboards/syspanel/networks/templates/networks/subnets/_update.html:26 +#, fuzzy +msgid "You may update the editable properties of your subnet here." +msgstr "更新執行個體的名稱" + +#: dashboards/nova/networks/templates/networks/subnets/detail.html:3 +#: dashboards/nova/networks/templates/networks/subnets/detail.html:6 +#, fuzzy +msgid "Subnet Detail" +msgstr "容量詳述" + +#: dashboards/nova/networks/templates/networks/subnets/update.html:3 +#: dashboards/nova/networks/templates/networks/subnets/update.html:6 +#: dashboards/syspanel/networks/templates/networks/subnets/update.html:3 +#: dashboards/syspanel/networks/templates/networks/subnets/update.html:6 +#, fuzzy +msgid "Update Subnet" +msgstr "更新配額" + #: dashboards/nova/templates/nova/_warning.html:6 msgid "You currently have the power to damage your OpenStack cloud..." msgstr "" @@ -1818,56 +2409,95 @@ msgstr "" msgid "Learn More" msgstr "" -#: dashboards/nova/volumes/forms.py:40 +#: dashboards/nova/volumes/forms.py:26 +#, fuzzy +msgid "Volume Name" +msgstr "容量" + +#: dashboards/nova/volumes/forms.py:29 +#, fuzzy +msgid "Size (GB)" +msgstr "大小" + +#: dashboards/nova/volumes/forms.py:30 +msgid "Use snapshot as a source" +msgstr "" + +#: dashboards/nova/volumes/forms.py:49 +#, python-format +msgid "Volume size must be equal to or greater than the snapshot size (%sGB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:54 +#, fuzzy +msgid "Unable to load the specified snapshot." +msgstr "無法建立快照。" + +#: dashboards/nova/volumes/forms.py:59 +#, fuzzy +msgid "Choose a snapshot" +msgstr "建立快照" + +#: dashboards/nova/volumes/forms.py:83 +#, python-format +msgid "The volume size cannot be less than the snapshot size (%sGB)" +msgstr "" + +#: dashboards/nova/volumes/forms.py:92 #, python-format msgid "" "A volume of %(req)iGB cannot be created as you only have %(avail)iGB of your " "quota available." msgstr "" -#: dashboards/nova/volumes/forms.py:47 +#: dashboards/nova/volumes/forms.py:99 #, fuzzy msgid "You are already using all of your available volumes." msgstr "您沒有任何現有專案的權限。" -#: dashboards/nova/volumes/forms.py:60 +#: dashboards/nova/volumes/forms.py:115 #, fuzzy msgid "Unable to create volume." msgstr "無法建立使用者。" -#: dashboards/nova/volumes/forms.py:67 +#: dashboards/nova/volumes/forms.py:123 +#, fuzzy +msgid "Attach to Instance" +msgstr "掛載到執行個體" + +#: dashboards/nova/volumes/forms.py:124 msgid "Select an instance to attach to." msgstr "選擇掛載的執行個體" -#: dashboards/nova/volumes/forms.py:100 +#: dashboards/nova/volumes/forms.py:168 msgid "Unknown instance (None)" msgstr "" -#: dashboards/nova/volumes/forms.py:111 +#: dashboards/nova/volumes/forms.py:179 #, fuzzy, python-format msgid "Attaching volume %(vol)s to instance %(inst)s on %(dev)s." msgstr "正在掛載容量%(vol)s到執行個體%(inst)s的%(dev)s" -#: dashboards/nova/volumes/forms.py:118 +#: dashboards/nova/volumes/forms.py:188 #, fuzzy msgid "Unable to attach volume." msgstr "無法連上連接埠。" -#: dashboards/nova/volumes/forms.py:142 +#: dashboards/nova/volumes/forms.py:212 #, python-format msgid "Creating volume snapshot \"%s\"" msgstr "建立容量快照\"%s\"" -#: dashboards/nova/volumes/forms.py:146 +#: dashboards/nova/volumes/forms.py:218 #, fuzzy msgid "Unable to create volume snapshot." msgstr "無法取得空間快照" #: dashboards/nova/volumes/panel.py:24 dashboards/nova/volumes/tables.py:37 -#: dashboards/nova/volumes/tables.py:160 dashboards/nova/volumes/tables.py:172 +#: dashboards/nova/volumes/tables.py:162 dashboards/nova/volumes/tables.py:174 #: dashboards/nova/volumes/templates/volumes/index.html:3 #: dashboards/nova/volumes/templates/volumes/index.html:6 -#: dashboards/syspanel/projects/forms.py:116 +#: dashboards/syspanel/projects/workflows.py:39 #: dashboards/syspanel/volumes/panel.py:9 #: dashboards/syspanel/volumes/tables.py:15 #: dashboards/syspanel/volumes/templates/volumes/index.html:3 @@ -1875,12 +2505,6 @@ msgstr "無法取得空間快照" msgid "Volumes" msgstr "容量" -#: dashboards/nova/volumes/tables.py:50 -#: dashboards/nova/volumes/templates/volumes/_create.html:8 -#: dashboards/nova/volumes/templates/volumes/_create.html:55 -msgid "Create Volume" -msgstr "建立容量" - #: dashboards/nova/volumes/tables.py:57 msgid "Edit Attachments" msgstr "編輯掛載" @@ -1890,7 +2514,7 @@ msgstr "編輯掛載" msgid "%sGB" msgstr "" -#: dashboards/nova/volumes/tables.py:97 +#: dashboards/nova/volumes/tables.py:97 dashboards/nova/volumes/views.py:140 #, fuzzy msgid "Unable to retrieve attachment information." msgstr "無法取得使用量資訊" @@ -1900,16 +2524,16 @@ msgstr "無法取得使用量資訊" msgid "Attached to %(instance)s on %(dev)s" msgstr "正在掛載容量%(vol)s到執行個體%(inst)s的%(dev)s" -#: dashboards/nova/volumes/tables.py:169 +#: dashboards/nova/volumes/tables.py:171 msgid "Detach" msgstr "卸載" -#: dashboards/nova/volumes/tables.py:170 +#: dashboards/nova/volumes/tables.py:172 #, fuzzy msgid "Detaching" msgstr "卸載" -#: dashboards/nova/volumes/tables.py:205 +#: dashboards/nova/volumes/tables.py:207 #, python-format msgid "%(dev)s on instance %(instance_name)s" msgstr "" @@ -1918,17 +2542,17 @@ msgstr "" msgid "Unable to retrieve volume details." msgstr "無法取得容量快照" -#: dashboards/nova/volumes/views.py:50 +#: dashboards/nova/volumes/views.py:52 #, fuzzy msgid "Unable to retrieve volume list." msgstr "無法取得使用者" -#: dashboards/nova/volumes/views.py:56 +#: dashboards/nova/volumes/views.py:58 #, fuzzy msgid "Unable to retrieve volume/instance attachment information" msgstr "無法取得執行個體的專案資訊" -#: dashboards/nova/volumes/views.py:114 dashboards/nova/volumes/views.py:124 +#: dashboards/nova/volumes/views.py:121 dashboards/nova/volumes/views.py:131 msgid "Unable to retrieve volume information." msgstr "無法取得容量資訊" @@ -1937,11 +2561,11 @@ msgstr "無法取得容量資訊" msgid "Manage Volume Attachments" msgstr "管理容量掛載" -#: dashboards/nova/volumes/templates/volumes/_attach.html:12 +#: dashboards/nova/volumes/templates/volumes/_attach.html:13 msgid "Attach To Instance" msgstr "掛載到執行個體" -#: dashboards/nova/volumes/templates/volumes/_attach.html:19 +#: dashboards/nova/volumes/templates/volumes/_attach.html:22 msgid "Attach Volume" msgstr "掛載容量" @@ -2001,7 +2625,7 @@ msgstr "容量詳述" msgid "Volume Detail" msgstr "容量詳述" -#: dashboards/settings/dashboard.py:24 +#: dashboards/settings/dashboard.py:24 templates/_header.html:4 msgid "Settings" msgstr "設定" @@ -2009,15 +2633,15 @@ msgstr "設定" msgid "Select a Project" msgstr "選擇專案" -#: dashboards/settings/ec2/forms.py:51 +#: dashboards/settings/ec2/forms.py:45 msgid "Unable to retrieve tenant list." msgstr "無法取得租戶列表" -#: dashboards/settings/ec2/forms.py:93 +#: dashboards/settings/ec2/forms.py:87 msgid "Unable to fetch EC2 credentials." msgstr "無法讀取EC2憑證資料" -#: dashboards/settings/ec2/forms.py:106 +#: dashboards/settings/ec2/forms.py:100 #, python-format msgid "Error writing zipfile: %(exc)s" msgstr "寫入壓縮檔錯誤: %(exc)s" @@ -2041,7 +2665,7 @@ msgid "" msgstr "" "點擊\"下載EC2認證憑據資料\"會下載一個壓縮檔,裡面含有您的x509私鑰和憑證" -#: dashboards/settings/project/forms.py:76 +#: dashboards/settings/project/forms.py:70 #, python-format msgid "Error Downloading RC File: %s" msgstr "RC檔下載錯誤: %s" @@ -2101,7 +2725,7 @@ msgid "From here you can modify dashboard settings for your user." msgstr "您可以在這裡修改控制台的不同設定" #: dashboards/settings/user/templates/user/_settings.html:23 -#: workflows/base.py:510 +#: dashboards/syspanel/projects/workflows.py:243 workflows/base.py:538 msgid "Save" msgstr "" @@ -2129,14 +2753,19 @@ msgstr "主磁碟 GB" msgid "Ephemeral Disk GB" msgstr "暫用磁碟 GB" -#: dashboards/syspanel/flavors/forms.py:51 +#: dashboards/syspanel/flavors/forms.py:52 #, python-format msgid "%s was successfully added to flavors." msgstr "%s已成功被加入規格中" +#: dashboards/syspanel/flavors/forms.py:56 +#, fuzzy +msgid "Unable to create flavor" +msgstr "無法建立使用者。" + #: dashboards/syspanel/flavors/panel.py:28 #: dashboards/syspanel/flavors/tables.py:14 -#: dashboards/syspanel/flavors/tables.py:38 +#: dashboards/syspanel/flavors/tables.py:44 #: dashboards/syspanel/flavors/templates/flavors/index.html:8 msgid "Flavors" msgstr "規格" @@ -2148,32 +2777,33 @@ msgstr "規格" msgid "Create Flavor" msgstr "建立規格" -#: dashboards/syspanel/flavors/tables.py:29 +#: dashboards/syspanel/flavors/tables.py:28 +#, python-format +msgid "%sMB" +msgstr "" + +#: dashboards/syspanel/flavors/tables.py:33 msgid "Flavor Name" msgstr "規格名稱" -#: dashboards/syspanel/flavors/tables.py:31 +#: dashboards/syspanel/flavors/tables.py:36 msgid "Memory" msgstr "記憶體" #: dashboards/syspanel/flavors/views.py:48 -msgid "Unauthorized." -msgstr "權限不足" - -#: dashboards/syspanel/flavors/views.py:53 -#, python-format -msgid "Unable to get flavor list: %s" -msgstr "無法取得規格列表: %s" +#, fuzzy +msgid "Unable to retrieve flavor list." +msgstr "無法取得使用者" #: dashboards/syspanel/flavors/templates/flavors/_create.html:18 msgid "From here you can define the sizing of a new flavor." msgstr "您可以在這裡制定新規格的配置" -#: dashboards/syspanel/images/views.py:52 +#: dashboards/syspanel/images/views.py:53 msgid "Unable to retrieve image list." msgstr "無法取得映像列表" -#: dashboards/syspanel/instances/tables.py:62 usage/tables.py:29 +#: dashboards/syspanel/instances/tables.py:62 usage/tables.py:30 #, fuzzy msgid "Project Name" msgstr "專案使用量" @@ -2184,6 +2814,7 @@ msgid "Host" msgstr "主機" #: dashboards/syspanel/instances/views.py:72 +#: dashboards/syspanel/networks/views.py:48 msgid "Unable to retrieve instance tenant information." msgstr "無法取得執行個體的專案資訊" @@ -2191,6 +2822,83 @@ msgstr "無法取得執行個體的專案資訊" msgid "All Instances" msgstr "所有執行個體" +#: dashboards/syspanel/networks/forms.py:45 +#: dashboards/syspanel/users/forms.py:41 +msgid "Select a project" +msgstr "選擇專案" + +#: dashboards/syspanel/networks/forms.py:56 +#, fuzzy, python-format +msgid "Network %s was successfully created." +msgstr "以成功建立%s" + +#: dashboards/syspanel/networks/forms.py:62 +#, fuzzy, python-format +msgid "Failed to create network %s" +msgstr "無法取得映像。" + +#: dashboards/syspanel/networks/ports/forms.py:53 +#, fuzzy, python-format +msgid "Port %s was successfully created." +msgstr "以成功建立%s" + +#: dashboards/syspanel/networks/ports/forms.py:58 +#, fuzzy, python-format +msgid "Failed to create a port for network %s" +msgstr "無法取得物件。" + +#: dashboards/syspanel/networks/ports/forms.py:83 +#, fuzzy, python-format +msgid "Port %s was successfully updated." +msgstr "已成功更新%s" + +#: dashboards/syspanel/networks/ports/forms.py:88 +#, fuzzy, python-format +msgid "Failed to update port %s" +msgstr "無法更新配額" + +#: dashboards/syspanel/networks/ports/tables.py:51 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:8 +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:23 +#: dashboards/syspanel/networks/templates/networks/ports/create.html:3 +#: dashboards/syspanel/networks/templates/networks/ports/create.html:6 +#, fuzzy +msgid "Create Port" +msgstr "建立專案" + +#: dashboards/syspanel/networks/ports/tables.py:62 +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:7 +#, fuzzy +msgid "Edit Port" +msgstr "編輯專案" + +#: dashboards/syspanel/networks/ports/views.py:81 +#, fuzzy +msgid "Unable to retrieve port details" +msgstr "無法取得容量快照" + +#: dashboards/syspanel/networks/subnets/forms.py:42 +#, fuzzy, python-format +msgid "Failed to retrieve network %s for a subnet" +msgstr "無法取得執行個體\"%s\"詳細資料。" + +#: dashboards/syspanel/networks/templates/networks/ports/_create.html:18 +msgid "" +"You can create a port for the network. If you specify device ID to be " +"attached, the device specified will be attached to the port created." +msgstr "" + +#: dashboards/syspanel/networks/templates/networks/ports/_update.html:22 +#, fuzzy +msgid "You may update the editable properties of your port here." +msgstr "更新執行個體的名稱" + +#: dashboards/syspanel/networks/templates/networks/ports/update.html:3 +#: dashboards/syspanel/networks/templates/networks/ports/update.html:6 +#, fuzzy +msgid "Update Port" +msgstr "更新專案" + #: dashboards/syspanel/overview/templates/overview/usage.html:3 msgid "Usage Overview" msgstr "使用量總覽" @@ -2199,95 +2907,14 @@ msgstr "使用量總覽" msgid "Monitoring" msgstr "監測" -#: dashboards/syspanel/projects/forms.py:38 -#: dashboards/syspanel/users/forms.py:75 -msgid "Role" -msgstr "角色" - -#: dashboards/syspanel/projects/forms.py:52 -#, fuzzy -msgid "Successfully added user to project." -msgstr "已成功將使用者加入租戶" - -#: dashboards/syspanel/projects/forms.py:54 -#, fuzzy -msgid "Unable to add user to project." -msgstr "無法將使用者加入主要專案。" - -#: dashboards/syspanel/projects/forms.py:64 -#: dashboards/syspanel/projects/forms.py:89 -#: dashboards/syspanel/projects/tables.py:78 -#: dashboards/syspanel/services/tables.py:42 -#: dashboards/syspanel/users/tables.py:38 -#: dashboards/syspanel/users/tables.py:112 -msgid "Enabled" -msgstr "已啟用" - -#: dashboards/syspanel/projects/forms.py:75 -#, python-format -msgid "%s was successfully created." -msgstr "以成功建立%s" - -#: dashboards/syspanel/projects/forms.py:78 -#, fuzzy -msgid "Unable to create project." -msgstr "無法取得物件。" - -#: dashboards/syspanel/projects/forms.py:100 -#, python-format -msgid "%s was successfully updated." -msgstr "已成功更新%s" - -#: dashboards/syspanel/projects/forms.py:103 -#, fuzzy -msgid "Unable to update project." -msgstr "無法更新租戶" - -#: dashboards/syspanel/projects/forms.py:108 -msgid "ID (name)" -msgstr "ID(名稱)" - -#: dashboards/syspanel/projects/forms.py:110 -msgid "Metadata Items" -msgstr "中介資料(Metadata)的物件數" - -#: dashboards/syspanel/projects/forms.py:111 -msgid "Injected Files" -msgstr "注入檔案數" - -#: dashboards/syspanel/projects/forms.py:112 -msgid "Injected File Content Bytes" -msgstr "注入檔案內容位元數" - -#: dashboards/syspanel/projects/forms.py:117 -msgid "Gigabytes" -msgstr "儲存空間 (Gigabytes)" - -#: dashboards/syspanel/projects/forms.py:118 -msgid "RAM (in MB)" -msgstr "記憶體空間 (MB計)" - -#: dashboards/syspanel/projects/forms.py:136 -#, python-format -msgid "Quotas for %s were successfully updated." -msgstr "已順利更新%s的配額" - -#: dashboards/syspanel/projects/forms.py:139 -msgid "Unable to update quotas." -msgstr "無法更新配額" - #: dashboards/syspanel/projects/panel.py:28 -#: dashboards/syspanel/projects/tables.py:53 -#: dashboards/syspanel/projects/tables.py:82 +#: dashboards/syspanel/projects/tables.py:66 +#: dashboards/syspanel/projects/tables.py:95 #: dashboards/syspanel/projects/templates/projects/index.html:8 msgid "Projects" msgstr "專案" -#: dashboards/syspanel/projects/tables.py:18 -msgid "Modify Quotas" -msgstr "修改配額" - -#: dashboards/syspanel/projects/tables.py:25 +#: dashboards/syspanel/projects/tables.py:19 msgid "Modify Users" msgstr "修改使用者" @@ -2296,69 +2923,204 @@ msgid "View Usage" msgstr "檢視使用量" #: dashboards/syspanel/projects/tables.py:39 +#: dashboards/syspanel/projects/templates/projects/_create.html:8 +#: dashboards/syspanel/projects/templates/projects/_create.html:23 +#: dashboards/syspanel/projects/templates/projects/create.html:6 +msgid "Create Project" +msgstr "建立專案" + +#: dashboards/syspanel/projects/tables.py:46 +#: dashboards/syspanel/projects/workflows.py:242 +#: dashboards/syspanel/projects/templates/projects/update.html:3 +#: dashboards/syspanel/projects/templates/projects/update.html:6 msgid "Edit Project" msgstr "編輯專案" -#: dashboards/syspanel/projects/tables.py:46 -msgid "Create New Project" -msgstr "建立新專案" +#: dashboards/syspanel/projects/tables.py:91 +#: dashboards/syspanel/projects/workflows.py:71 +#: dashboards/syspanel/projects/workflows.py:134 +#: dashboards/syspanel/services/tables.py:42 +#: dashboards/syspanel/users/tables.py:39 +#: dashboards/syspanel/users/tables.py:114 +msgid "Enabled" +msgstr "已啟用" -#: dashboards/syspanel/projects/tables.py:90 +#: dashboards/syspanel/projects/tables.py:104 msgid "Remove" msgstr "移除" -#: dashboards/syspanel/projects/tables.py:91 +#: dashboards/syspanel/projects/tables.py:105 msgid "Removed" msgstr "已移除" -#: dashboards/syspanel/projects/tables.py:93 +#: dashboards/syspanel/projects/tables.py:107 #: dashboards/syspanel/users/panel.py:28 -#: dashboards/syspanel/users/tables.py:40 -#: dashboards/syspanel/users/tables.py:74 -#: dashboards/syspanel/users/tables.py:119 +#: dashboards/syspanel/users/tables.py:41 +#: dashboards/syspanel/users/tables.py:75 +#: dashboards/syspanel/users/tables.py:121 #: dashboards/syspanel/users/templates/users/index.html:8 msgid "Users" msgstr "使用者" -#: dashboards/syspanel/projects/tables.py:111 +#: dashboards/syspanel/projects/tables.py:125 #, fuzzy msgid "Unable to retrieve role information." msgstr "無法取得容量資訊" -#: dashboards/syspanel/projects/tables.py:116 +#: dashboards/syspanel/projects/tables.py:130 #, fuzzy msgid "Roles" msgstr "角色" -#: dashboards/syspanel/projects/tables.py:120 +#: dashboards/syspanel/projects/tables.py:134 msgid "Users For Project" msgstr "專案使用者" -#: dashboards/syspanel/projects/tables.py:128 +#: dashboards/syspanel/projects/tables.py:142 msgid "Add To Project" msgstr "加入專案" -#: dashboards/syspanel/projects/tables.py:140 +#: dashboards/syspanel/projects/tables.py:154 msgid "Add New Users" msgstr "新增使用者" -#: dashboards/syspanel/projects/views.py:49 +#: dashboards/syspanel/projects/views.py:67 +#, fuzzy +msgid "Unable to retrieve project information." +msgstr "無法取得容量資訊" + +#: dashboards/syspanel/projects/views.py:87 #, fuzzy msgid "Unable to retrieve project list." msgstr "無法取得物件列表。" -#: dashboards/syspanel/projects/views.py:71 -#, fuzzy -msgid "Unable to retrieve project." -msgstr "無法取得物件。" - -#: dashboards/syspanel/projects/views.py:100 +#: dashboards/syspanel/projects/views.py:110 msgid "Unable to retrieve users." msgstr "無法取得使用者" -#: dashboards/syspanel/projects/views.py:143 -msgid "Unable to retrieve roles." -msgstr "無法取得角色" +#: dashboards/syspanel/projects/views.py:154 +#, fuzzy +msgid "Unable to retrieve default quota values." +msgstr "無法取得容量列表" + +#: dashboards/syspanel/projects/views.py:182 +#, fuzzy +msgid "Unable to retrieve project details." +msgstr "無法取得物件列表。" + +#: dashboards/syspanel/projects/workflows.py:32 +msgid "Injected File Content Bytes" +msgstr "注入檔案內容位元數" + +#: dashboards/syspanel/projects/workflows.py:33 +msgid "Metadata Items" +msgstr "中介資料(Metadata)的物件數" + +#: dashboards/syspanel/projects/workflows.py:36 +msgid "Injected Files" +msgstr "注入檔案數" + +#: dashboards/syspanel/projects/workflows.py:40 +msgid "Gigabytes" +msgstr "儲存空間 (Gigabytes)" + +#: dashboards/syspanel/projects/workflows.py:41 +#, fuzzy +msgid "RAM (MB)" +msgstr "記憶體空間 (MB計)" + +#: dashboards/syspanel/projects/workflows.py:45 +#, fuzzy +msgid "Quota" +msgstr "配額" + +#: dashboards/syspanel/projects/workflows.py:47 +#, fuzzy +msgid "From here you can set quotas (max limits) for the project." +msgstr "您可以在這裡編輯專案%(tenant.name)s的資源配額(最大用額)。" + +#: dashboards/syspanel/projects/workflows.py:76 +#: dashboards/syspanel/projects/workflows.py:137 +#, fuzzy +msgid "Project Info" +msgstr "專案ID" + +#: dashboards/syspanel/projects/workflows.py:77 +#: dashboards/syspanel/projects/templates/projects/_create.html:18 +msgid "From here you can create a new project to organize users." +msgstr "您可以在這裡建立新專案以管理使用者" + +#: dashboards/syspanel/projects/workflows.py:91 +#, fuzzy +msgid "Add Project" +msgstr "加入專案" + +#: dashboards/syspanel/projects/workflows.py:92 +msgid "Finish" +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:93 +#, fuzzy, python-format +msgid "Created new project \"%s\"." +msgstr "建立新專案" + +#: dashboards/syspanel/projects/workflows.py:94 +#, fuzzy, python-format +msgid "Unable to create project \"%s\"." +msgstr "無法取得物件。" + +#: dashboards/syspanel/projects/workflows.py:129 +#, fuzzy +msgid "Unable to set project quotas." +msgstr "無法取得物件。" + +#: dashboards/syspanel/projects/workflows.py:139 +#, fuzzy +msgid "From here you can edit the project details." +msgstr "您可以在這編輯專案" + +#: dashboards/syspanel/projects/workflows.py:161 +#, fuzzy +msgid "Unable to retrieve user list. Please try again later." +msgstr "無法取得使用者" + +#: dashboards/syspanel/projects/workflows.py:167 +#, fuzzy +msgid "Create New User" +msgstr "建立使用者" + +#: dashboards/syspanel/projects/workflows.py:217 +#: dashboards/syspanel/projects/templates/projects/_update_members.html:16 +#, fuzzy +msgid "Project Members" +msgstr "專案使用量" + +#: dashboards/syspanel/projects/workflows.py:231 +#: dashboards/syspanel/users/views.py:46 +#, fuzzy +msgid "Unable to retrieve user list." +msgstr "無法取得使用者" + +#: dashboards/syspanel/projects/workflows.py:244 +#, python-format +msgid "Modified project \"%s\"." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:245 +#, fuzzy, python-format +msgid "Unable to modify project \"%s\"." +msgstr "無法複製物件" + +#: dashboards/syspanel/projects/workflows.py:315 +#, python-format +msgid "Failed to modify %s project members and update project quotas." +msgstr "" + +#: dashboards/syspanel/projects/workflows.py:336 +msgid "" +"Modified project information and members, but unable to modify project " +"quotas." +msgstr "" #: dashboards/syspanel/projects/templates/projects/_add_user.html:8 #: dashboards/syspanel/projects/templates/projects/add_user.html:3 @@ -2374,15 +3136,23 @@ msgstr "選擇使用者的專案角色" msgid "Add" msgstr "新增" -#: dashboards/syspanel/projects/templates/projects/_create.html:8 -#: dashboards/syspanel/projects/templates/projects/_create.html:23 -#: dashboards/syspanel/projects/templates/projects/create.html:6 -msgid "Create Project" -msgstr "建立專案" +#: dashboards/syspanel/projects/templates/projects/_create_user.html:7 +#, python-format +msgid "Create User for project '%(tenant_name)s'." +msgstr "" -#: dashboards/syspanel/projects/templates/projects/_create.html:18 -msgid "From here you can create a new project to organize users." -msgstr "您可以在這裡建立新專案以管理使用者" +#: dashboards/syspanel/projects/templates/projects/_create_user.html:18 +#, fuzzy +msgid "From here you can create a new user to add to this project." +msgstr "您可以在這裡建立使用者及將其分配到專案。" + +#: dashboards/syspanel/projects/templates/projects/_create_user.html:23 +#: dashboards/syspanel/users/tables.py:19 +#: dashboards/syspanel/users/templates/users/_create.html:7 +#: dashboards/syspanel/users/templates/users/_create.html:22 +#: dashboards/syspanel/users/templates/users/create.html:7 +msgid "Create User" +msgstr "建立使用者" #: dashboards/syspanel/projects/templates/projects/_quotas.html:7 #: dashboards/syspanel/projects/templates/projects/_quotas.html:22 @@ -2398,7 +3168,6 @@ msgstr "您可以在這裡編輯專案%(tenant.name)s的資源配額(最大用 #: dashboards/syspanel/projects/templates/projects/_update.html:8 #: dashboards/syspanel/projects/templates/projects/_update.html:23 #: dashboards/syspanel/projects/templates/projects/quotas.html:6 -#: dashboards/syspanel/projects/templates/projects/update.html:6 msgid "Update Project" msgstr "更新專案" @@ -2406,6 +3175,28 @@ msgstr "更新專案" msgid "From here you can edit a project." msgstr "您可以在這編輯專案" +#: dashboards/syspanel/projects/templates/projects/_update_members.html:7 +msgid "" +"From here you can add and remove members to this project from the list of " +"all available users." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/_update_members.html:10 +#, fuzzy +msgid "All Users" +msgstr "使用者" + +#: dashboards/syspanel/projects/templates/projects/_update_members.html:25 +#: dashboards/syspanel/projects/templates/projects/_update_members.html:32 +msgid "No users found." +msgstr "" + +#: dashboards/syspanel/projects/templates/projects/create_user.html:3 +#: dashboards/syspanel/projects/templates/projects/create_user.html:6 +#, fuzzy +msgid "Add New User" +msgstr "新增使用者" + #: dashboards/syspanel/projects/templates/projects/usage.html:3 msgid "Project Usage Overview" msgstr "專案使用量總覽" @@ -2431,7 +3222,7 @@ msgstr "配額名稱" msgid "Limit" msgstr "限制" -#: dashboards/syspanel/quotas/views.py:44 +#: dashboards/syspanel/quotas/views.py:45 #, fuzzy msgid "Unable to get quota info." msgstr "無法取得配額資料: %s" @@ -2454,119 +3245,113 @@ msgstr "Id" msgid "Service" msgstr "服務" -#: dashboards/syspanel/users/forms.py:42 -msgid "Select a project" -msgstr "選擇專案" - -#: dashboards/syspanel/users/forms.py:58 +#: dashboards/syspanel/users/forms.py:53 msgid "Passwords do not match." msgstr "密碼不符" -#: dashboards/syspanel/users/forms.py:63 +#: dashboards/syspanel/users/forms.py:61 #: dashboards/syspanel/users/forms.py:114 -#: dashboards/syspanel/users/tables.py:106 +#: dashboards/syspanel/users/tables.py:107 msgid "User Name" msgstr "使用者名稱" -#: dashboards/syspanel/users/forms.py:64 +#: dashboards/syspanel/users/forms.py:62 #: dashboards/syspanel/users/forms.py:115 -#: dashboards/syspanel/users/tables.py:107 +#: dashboards/syspanel/users/tables.py:108 msgid "Email" msgstr "電子郵件" -#: dashboards/syspanel/users/forms.py:66 +#: dashboards/syspanel/users/forms.py:64 #: dashboards/syspanel/users/forms.py:116 msgid "Password" msgstr "密碼" -#: dashboards/syspanel/users/forms.py:71 +#: dashboards/syspanel/users/forms.py:69 #: dashboards/syspanel/users/forms.py:123 msgid "Confirm Password" msgstr "密碼確認" -#: dashboards/syspanel/users/forms.py:74 +#: dashboards/syspanel/users/forms.py:72 #: dashboards/syspanel/users/forms.py:126 msgid "Primary Project" msgstr "主要專案" -#: dashboards/syspanel/users/forms.py:96 +#: dashboards/syspanel/users/forms.py:74 +msgid "Role" +msgstr "角色" + +#: dashboards/syspanel/users/forms.py:95 #, python-format msgid "User \"%s\" was successfully created." msgstr "使用者\"%s\"已被成功建立。" #: dashboards/syspanel/users/forms.py:105 -msgid "Unable to add user to primary project." +#, fuzzy +msgid "Unable to add userto primary project." msgstr "無法將使用者加入主要專案。" -#: dashboards/syspanel/users/forms.py:108 +#: dashboards/syspanel/users/forms.py:109 msgid "Unable to create user." msgstr "無法建立使用者。" -#: dashboards/syspanel/users/forms.py:151 +#: dashboards/syspanel/users/forms.py:150 msgid "name" msgstr "名稱" -#: dashboards/syspanel/users/forms.py:151 +#: dashboards/syspanel/users/forms.py:150 msgid "email" msgstr "電子郵件" -#: dashboards/syspanel/users/forms.py:160 +#: dashboards/syspanel/users/forms.py:159 msgid "primary project" msgstr "主要專案" #: dashboards/syspanel/users/forms.py:172 +#, python-format +msgid "The user %s has no role defined for" +msgstr "" + +#: dashboards/syspanel/users/forms.py:180 msgid "password" msgstr "密碼" -#: dashboards/syspanel/users/forms.py:181 +#: dashboards/syspanel/users/forms.py:189 #, fuzzy msgid "User has been updated successfully." msgstr "容器已成功建立" -#: dashboards/syspanel/users/forms.py:185 +#: dashboards/syspanel/users/forms.py:193 #, fuzzy, python-format msgid "Unable to update %(attributes)s for the user." msgstr "無法更新\"%(user)s\"的%(attributes)s。" -#: dashboards/syspanel/users/tables.py:18 -#: dashboards/syspanel/users/templates/users/_create.html:7 -#: dashboards/syspanel/users/templates/users/_create.html:22 -#: dashboards/syspanel/users/templates/users/create.html:7 -msgid "Create User" -msgstr "建立使用者" - -#: dashboards/syspanel/users/tables.py:37 +#: dashboards/syspanel/users/tables.py:38 msgid "Enable" msgstr "啟用" -#: dashboards/syspanel/users/tables.py:37 +#: dashboards/syspanel/users/tables.py:38 msgid "Disable" msgstr "停用" -#: dashboards/syspanel/users/tables.py:38 +#: dashboards/syspanel/users/tables.py:39 #, fuzzy msgid "Disabled" msgstr "停用" -#: dashboards/syspanel/users/tables.py:61 +#: dashboards/syspanel/users/tables.py:62 msgid "You cannot disable the user you are currently logged in as." msgstr "您不能停用您目前登入使用的使用者" -#: dashboards/syspanel/users/tables.py:111 +#: dashboards/syspanel/users/tables.py:113 #, fuzzy msgid "User ID" msgstr "使用者資料" -#: dashboards/syspanel/users/views.py:46 -#, fuzzy -msgid "Unable to retrieve user list." -msgstr "無法取得使用者" - -#: dashboards/syspanel/users/views.py:67 +#: dashboards/syspanel/users/views.py:69 msgid "Unable to update user." msgstr "無法更新使用者。" -#: dashboards/syspanel/users/views.py:93 +#: dashboards/syspanel/users/views.py:103 #, fuzzy msgid "Unable to retrieve user roles." msgstr "無法取得使用者" @@ -2587,55 +3372,83 @@ msgid "" "From here you can edit the user's details, including their default project." msgstr "您可以在這裡編輯使用者的名稱,電子郵件,密碼和預設專案。" -#: tables/actions.py:299 +#: tables/actions.py:338 msgid "Filter" msgstr "搜尋" -#: tables/actions.py:461 +#: tables/actions.py:502 +msgid "N/A" +msgstr "" + +#: tables/actions.py:526 #, python-format msgid "You do not have permission to %(action)s: %(objs)s" msgstr "您沒有權限使用%(action)s: %(objs)s" -#: tables/actions.py:467 +#: tables/actions.py:532 #, python-format msgid "Unable to %(action)s: %(objs)s" msgstr "無法%(action)s: %(objs)s" -#: tables/actions.py:473 +#: tables/actions.py:538 #, python-format msgid "%(action)s: %(objs)s" msgstr "" -#: tables/actions.py:483 +#: tables/actions.py:548 msgid "Delete" msgstr "刪除" -#: tables/actions.py:484 +#: tables/actions.py:549 msgid "Deleted" msgstr "已刪除" -#: tables/base.py:257 +#: tables/base.py:266 #, python-format msgid "The attribute %(attr)s doesn't exist on %(obj)s." msgstr "此屬性%(attr)s並不在%(obj)s上存在。" -#: tables/base.py:743 +#: tables/base.py:819 msgid "Actions" msgstr "動作" -#: tables/base.py:891 +#: tables/base.py:981 msgid "No items to display." msgstr "沒有任何相關項目" -#: tables/base.py:908 +#: tables/base.py:998 #, python-format msgid "No match returned for the id \"%s\"." msgstr "找不到id \"%s\"的相關項目" -#: tables/base.py:1015 +#: tables/base.py:1128 msgid "Please select a row before taking that action." msgstr "請選擇一個欄位後才執行動作" +#: templates/_header.html:3 +msgid "Logged in as" +msgstr "" + +#: templates/_header.html:6 +msgid "Help" +msgstr "" + +#: templates/_header.html:8 +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 "" + #: templates/horizon/_messages.html:7 msgid "Info: " msgstr "資訊: " @@ -2652,16 +3465,12 @@ msgstr "成功: " msgid "Error: " msgstr "錯誤: " -#: templates/horizon/client_side/_loading.html:9 -msgid "Loading…" -msgstr "" - -#: templates/horizon/common/_data_table.html:33 +#: templates/horizon/common/_data_table.html:36 #, fuzzy msgid "Summary" msgstr "使用量摘要" -#: templates/horizon/common/_data_table.html:42 +#: templates/horizon/common/_data_table.html:45 #, python-format msgid "Displaying %(counter)s item" msgid_plural "Displaying %(counter)s items" @@ -2697,6 +3506,10 @@ msgstr "本月的虛擬處理器-時數" msgid "This Month's GB-Hours" msgstr "本月的GB-時數" +#: templatetags/branding.py:35 +msgid "Horizon" +msgstr "" + #: templatetags/horizon.py:108 #, fuzzy msgid "No Limit" @@ -2764,38 +3577,43 @@ msgstr "管理者" msgid "Giant ants are attacking San Francisco!" msgstr "" -#: tests/table_tests.py:104 +#: tests/table_tests.py:106 msgid "Batch" msgstr "" -#: tests/table_tests.py:105 +#: tests/table_tests.py:107 msgid "Batched" msgstr "" -#: tests/table_tests.py:106 tests/table_tests.py:117 +#: tests/table_tests.py:108 tests/table_tests.py:119 msgid "Item" msgstr "" -#: tests/table_tests.py:107 tests/table_tests.py:118 +#: tests/table_tests.py:109 tests/table_tests.py:120 msgid "Items" msgstr "" -#: tests/table_tests.py:115 +#: tests/table_tests.py:117 msgid "Down" msgstr "" -#: tests/table_tests.py:115 +#: tests/table_tests.py:117 msgid "Up" msgstr "" -#: tests/table_tests.py:116 +#: tests/table_tests.py:118 msgid "Downed" msgstr "" -#: tests/table_tests.py:116 +#: tests/table_tests.py:118 msgid "Upped" msgstr "" +#: tests/table_tests.py:185 +#, fuzzy +msgid "No Actions Table" +msgstr "動作" + #: tests/tabs_tests.py:36 msgid "Tab One" msgstr "" @@ -2820,7 +3638,7 @@ msgstr "" msgid "Recoverable Error Tab" msgstr "" -#: tests/testsettings.py:111 +#: tests/testsettings.py:118 msgid "Password must be between 8 and 18 characters." msgstr "" @@ -2887,32 +3705,32 @@ msgstr "您正在查看未來的資料,它可能並不存在" msgid "Download CSV Summary" msgstr "下載CSV摘要" -#: usage/tables.py:24 +#: usage/tables.py:25 msgid "VCPU Hours" msgstr "虛擬處理器時數" -#: usage/tables.py:31 +#: usage/tables.py:32 msgid "Disk GB Hours" msgstr "磁碟GB時數" -#: usage/tables.py:39 usage/tables.py:67 +#: usage/tables.py:40 usage/tables.py:68 msgid "Usage Summary" msgstr "使用量摘要" -#: usage/tables.py:59 +#: usage/tables.py:60 msgid "Uptime" msgstr "上機時間" -#: utils/fields.py:43 +#: utils/fields.py:46 msgid "Incorrect format for IP address" msgstr "" -#: utils/fields.py:44 +#: utils/fields.py:47 #, fuzzy msgid "Invalid version for IP address" msgstr "不合法的使用者名稱或密碼" -#: utils/fields.py:45 +#: utils/fields.py:48 msgid "Invalid subnet mask" msgstr "" @@ -2921,16 +3739,16 @@ msgstr "" msgid "Password is not accepted" msgstr "密碼不符" -#: workflows/base.py:69 +#: workflows/base.py:70 msgid "Processing..." msgstr "" -#: workflows/base.py:511 +#: workflows/base.py:539 #, fuzzy, python-format msgid "%s completed successfully." msgstr "容器已成功建立" -#: workflows/base.py:512 +#: workflows/base.py:540 #, python-format msgid "%s did not complete." msgstr "" diff --git a/horizon/locale/zh_TW/LC_MESSAGES/djangojs.po b/horizon/locale/zh_TW/LC_MESSAGES/djangojs.po new file mode 100644 index 000000000..7502d161c --- /dev/null +++ b/horizon/locale/zh_TW/LC_MESSAGES/djangojs.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 "" diff --git a/horizon/site_urls.py b/horizon/site_urls.py index deefe8ffb..dde3c6c52 100644 --- a/horizon/site_urls.py +++ b/horizon/site_urls.py @@ -28,7 +28,11 @@ urlpatterns = patterns('horizon.views', ) urlpatterns += patterns('', - url(r'^i18n/setlang/$', 'django.views.i18n.set_language', + url(r'^i18n/js/(?P\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')) ) diff --git a/horizon/static/horizon/js/horizon.forms.js b/horizon/static/horizon/js/horizon.forms.js index d441ad7a4..5b3beb5ab 100644 --- a/horizon/static/horizon/js/horizon.forms.js +++ b/horizon/static/horizon/js/horizon.forms.js @@ -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/"); }); diff --git a/horizon/static/horizon/js/horizon.instances.js b/horizon/static/horizon/js/horizon.instances.js index a04114db0..c5bf5699d 100644 --- a/horizon/static/horizon/js/horizon.instances.js +++ b/horizon/static/horizon/js/horizon.instances.js @@ -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.')); } } }); diff --git a/horizon/static/horizon/js/horizon.modals.js b/horizon/static/horizon/js/horizon.modals.js index c845487d5..cfcd2df45 100644 --- a/horizon/static/horizon/js/horizon.modals.js +++ b/horizon/static/horizon/js/horizon.modals.js @@ -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.")); } } }, diff --git a/horizon/static/horizon/js/horizon.projects.js b/horizon/static/horizon/js/horizon.projects.js index 0091424ee..534e0dbc0 100644 --- a/horizon/static/horizon/js/horizon.projects.js +++ b/horizon/static/horizon/js/horizon.projects.js @@ -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("") + $("select[multiple='multiple']").append(""); 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; diff --git a/horizon/static/horizon/js/horizon.tables.js b/horizon/static/horizon/js/horizon.tables.js index f09be9bd3..433fd19fb 100644 --- a/horizon/static/horizon/js/horizon.tables.js +++ b/horizon/static/horizon/js/horizon.tables.js @@ -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(""); form.submit(); modal.modal('hide'); - horizon.modals.modal_spinner("Working"); + horizon.modals.modal_spinner(gettext("Working")); return false; }); return modal; diff --git a/horizon/static/horizon/js/horizon.tabs.js b/horizon/static/horizon/js/horizon.tabs.js index d4b25bd0f..8df6e6956 100644 --- a/horizon/static/horizon/js/horizon.tabs.js +++ b/horizon/static/horizon/js/horizon.tabs.js @@ -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("loading…"); + tab_pane.append("" + gettext("Loading") + "…"); tab_pane.spin(horizon.conf.spinner_options.inline); $(tab_pane.data().spinner.el).css('top', '9px'); $(tab_pane.data().spinner.el).css('left', '15px'); diff --git a/horizon/templates/horizon/_scripts.html b/horizon/templates/horizon/_scripts.html index 0d0b75b69..49441093b 100644 --- a/horizon/templates/horizon/_scripts.html +++ b/horizon/templates/horizon/_scripts.html @@ -1,5 +1,8 @@ {% load compress %} +{% comment %} Django's JavaScript i18n Implementation {% endcomment %} + + {% compress js %} {% comment %} jQuery and Plugins {% endcomment %} diff --git a/openstack_dashboard/locale/en/LC_MESSAGES/django.po b/openstack_dashboard/locale/en/LC_MESSAGES/django.po index f626c4125..8dd776683 100644 --- a/openstack_dashboard/locale/en/LC_MESSAGES/django.po +++ b/openstack_dashboard/locale/en/LC_MESSAGES/django.po @@ -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 \n" "Language-Team: LANGUAGE \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 "" diff --git a/openstack_dashboard/locale/es/LC_MESSAGES/django.po b/openstack_dashboard/locale/es/LC_MESSAGES/django.po index e88d78d38..9e580740c 100644 --- a/openstack_dashboard/locale/es/LC_MESSAGES/django.po +++ b/openstack_dashboard/locale/es/LC_MESSAGES/django.po @@ -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 \n" "Language-Team: LANGUAGE \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 "" diff --git a/openstack_dashboard/locale/fr/LC_MESSAGES/django.po b/openstack_dashboard/locale/fr/LC_MESSAGES/django.po index 44979f34f..c8b3603dd 100644 --- a/openstack_dashboard/locale/fr/LC_MESSAGES/django.po +++ b/openstack_dashboard/locale/fr/LC_MESSAGES/django.po @@ -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 \n" "Language-Team: French \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" diff --git a/openstack_dashboard/locale/ja/LC_MESSAGES/django.po b/openstack_dashboard/locale/ja/LC_MESSAGES/django.po index 3c7f61311..578a32f9a 100644 --- a/openstack_dashboard/locale/ja/LC_MESSAGES/django.po +++ b/openstack_dashboard/locale/ja/LC_MESSAGES/django.po @@ -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 \n" "Language-Team: LANGUAGE \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 "" diff --git a/openstack_dashboard/locale/pl/LC_MESSAGES/django.po b/openstack_dashboard/locale/pl/LC_MESSAGES/django.po index d46e86fe7..fc8d773a2 100644 --- a/openstack_dashboard/locale/pl/LC_MESSAGES/django.po +++ b/openstack_dashboard/locale/pl/LC_MESSAGES/django.po @@ -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 \n" "Language-Team: LANGUAGE \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 "" diff --git a/openstack_dashboard/locale/pt/LC_MESSAGES/django.po b/openstack_dashboard/locale/pt/LC_MESSAGES/django.po index e88d78d38..9e580740c 100644 --- a/openstack_dashboard/locale/pt/LC_MESSAGES/django.po +++ b/openstack_dashboard/locale/pt/LC_MESSAGES/django.po @@ -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 \n" "Language-Team: LANGUAGE \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 "" diff --git a/openstack_dashboard/locale/zh_CN/LC_MESSAGES/django.po b/openstack_dashboard/locale/zh_CN/LC_MESSAGES/django.po index f626c4125..8dd776683 100644 --- a/openstack_dashboard/locale/zh_CN/LC_MESSAGES/django.po +++ b/openstack_dashboard/locale/zh_CN/LC_MESSAGES/django.po @@ -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 \n" "Language-Team: LANGUAGE \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 "" diff --git a/openstack_dashboard/locale/zh_TW/LC_MESSAGES/django.po b/openstack_dashboard/locale/zh_TW/LC_MESSAGES/django.po index 1c5d9b292..43777451a 100644 --- a/openstack_dashboard/locale/zh_TW/LC_MESSAGES/django.po +++ b/openstack_dashboard/locale/zh_TW/LC_MESSAGES/django.po @@ -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 \n" "Language-Team: LANGUAGE \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 "登入" diff --git a/run_tests.sh b/run_tests.sh index d0020681d..cdb5743a5 100755 --- a/run_tests.sh +++ b/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)) }