From e335fa88fa09a0c49deafadd2aeefd073f78c7e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adolfo=20G=C3=B3mez?= Date: Wed, 5 Feb 2014 10:47:10 +0000 Subject: [PATCH] * Updated translations (still has work to be done) * Almost finished aministration interface (needs "removing" cache & assigned, and a few more things) --- server/src/uds/REST/methods/user_services.py | 34 +- server/src/uds/REST/model.py | 31 +- .../src/uds/locale/de/LC_MESSAGES/django.mo | Bin 48903 -> 53957 bytes .../src/uds/locale/de/LC_MESSAGES/django.po | 573 +++++++++++++---- .../src/uds/locale/de/LC_MESSAGES/djangojs.mo | Bin 6413 -> 9251 bytes .../src/uds/locale/de/LC_MESSAGES/djangojs.po | 486 ++++++++++----- .../src/uds/locale/es/LC_MESSAGES/django.mo | Bin 48915 -> 54005 bytes .../src/uds/locale/es/LC_MESSAGES/django.po | 573 +++++++++++++---- .../src/uds/locale/es/LC_MESSAGES/djangojs.mo | Bin 6402 -> 9268 bytes .../src/uds/locale/es/LC_MESSAGES/djangojs.po | 503 ++++++++++----- .../src/uds/locale/fr/LC_MESSAGES/django.mo | Bin 49777 -> 54940 bytes .../src/uds/locale/fr/LC_MESSAGES/django.po | 585 ++++++++++++++---- .../src/uds/locale/fr/LC_MESSAGES/djangojs.mo | Bin 6484 -> 9379 bytes .../src/uds/locale/fr/LC_MESSAGES/djangojs.po | 486 ++++++++++----- .../src/uds/locale/it/LC_MESSAGES/django.mo | Bin 48352 -> 53339 bytes .../src/uds/locale/it/LC_MESSAGES/django.po | 568 +++++++++++++---- .../src/uds/locale/it/LC_MESSAGES/djangojs.mo | Bin 6369 -> 9223 bytes .../src/uds/locale/it/LC_MESSAGES/djangojs.po | 486 ++++++++++----- .../src/uds/locale/pt/LC_MESSAGES/django.mo | Bin 48655 -> 53770 bytes .../src/uds/locale/pt/LC_MESSAGES/django.po | 572 +++++++++++++---- .../src/uds/locale/pt/LC_MESSAGES/djangojs.mo | Bin 6372 -> 9182 bytes .../src/uds/locale/pt/LC_MESSAGES/djangojs.po | 486 ++++++++++----- .../uds/static/adm/js/gui-d-authenticators.js | 18 +- .../uds/static/adm/js/gui-d-connectivity.js | 12 +- .../src/uds/static/adm/js/gui-d-osmanagers.js | 6 +- .../src/uds/static/adm/js/gui-d-services.js | 12 +- .../uds/static/adm/js/gui-d-servicespools.js | 117 ++-- .../src/uds/static/adm/js/gui-definition.js | 2 +- server/src/uds/static/adm/js/gui-form.js | 16 +- server/src/uds/static/adm/js/gui.js | 18 + .../templates/uds/admin/snippets/navbar.html | 2 +- .../uds/admin/tmpl/pool_add_transport.html | 16 + 32 files changed, 4096 insertions(+), 1506 deletions(-) create mode 100644 server/src/uds/templates/uds/admin/tmpl/pool_add_transport.html diff --git a/server/src/uds/REST/methods/user_services.py b/server/src/uds/REST/methods/user_services.py index 0054c5c8..d8f19b30 100644 --- a/server/src/uds/REST/methods/user_services.py +++ b/server/src/uds/REST/methods/user_services.py @@ -35,16 +35,11 @@ from __future__ import unicode_literals from django.utils.translation import ugettext as _ -from uds.models import UserService +from uds.models import UserService, Group, Transport, DeployedServicePublication from uds.core.util.State import State from uds.core.util import log -from uds.core.Environment import Environment from uds.REST.model import DetailHandler -from uds.REST import NotFound, ResponseError, RequestError -from django.db import IntegrityError - -from services import Services -from osmanagers import OsManagers +from uds.REST import ResponseError, RequestError import logging @@ -168,6 +163,13 @@ class Groups(DetailHandler): { 'state': { 'title': _('State'), 'type': 'dict', 'dict': State.dictionary() } }, ] + def saveItem(self, parent, item): + parent.assignedGroups.add(Group.objects.get(pk=self._params['id'])) + return self.success() + + def deleteItem(self, parent, item): + parent.assignedGroups.remove(Group.objects.get(pk=self._args[0])) + class Transports(DetailHandler): def getItems(self, parent, item): return [{ @@ -188,15 +190,31 @@ class Transports(DetailHandler): { 'trans_type': {'title': _('Type') } }, { 'comments': {'title': _('Comments')}}, ] + + def saveItem(self, parent, item): + parent.transports.add(Transport.objects.get(pk=self._params['id'])) + return self.success() + + def deleteItem(self, parent, item): + parent.transports.remove(Transport.objects.get(pk=self._args[0])) class Publications(DetailHandler): - custom_methods=['publish'] + custom_methods=['publish', 'cancel'] def publish(self, parent): logger.debug('Custom "publish" invoked') parent.publish() return self.success() + def cancel(self, parent, id): + try: + ds = DeployedServicePublication.objects.get(pk=id) + ds.cancel() + except Exception as e: + raise ResponseError(unicode(e)) + + return self.success() + def getItems(self, parent, item): return [{ 'id': i.id, diff --git a/server/src/uds/REST/model.py b/server/src/uds/REST/model.py index 70a485c8..ca69f026 100644 --- a/server/src/uds/REST/model.py +++ b/server/src/uds/REST/model.py @@ -198,6 +198,21 @@ class DetailHandler(BaseModelHandler): self._params = params self._args = args self._kwargs = kwargs + + def __checkCustom(self, check, parent, arg=None): + logger.debug('Checking custom method {0}'.format(check)) + for cm in self.custom_methods: + if check == cm: + try: + operation = getattr(self, cm) + except: + self.invalidMethodException() + + if arg is None: + return operation(parent) + else: + return operation(parent, arg) + return None def get(self): # Process args @@ -208,14 +223,9 @@ class DetailHandler(BaseModelHandler): return self.getItems(parent, None) # if has custom methods, look for if this request matches any of them - for cm in self.custom_methods: - if self._args[0] == cm: - try: - operation = getattr(self, self._args[0]) - except: - self.invalidMethodException() - - return operation(parent) + r = self.__checkCustom(self._args[0], parent) + if r is not None: + return r if nArgs == 1: if self._args[0] == OVERVIEW: @@ -239,6 +249,11 @@ class DetailHandler(BaseModelHandler): return self.getTypes(parent, self._args[1]) elif self._args[1] == LOG: return self.getLogs(parent, self._args[0]) + else: + r = self.__checkCustom(self._args[1], parent, self._args[0]) + if r is not None: + return r + return self.fallbackGet() diff --git a/server/src/uds/locale/de/LC_MESSAGES/django.mo b/server/src/uds/locale/de/LC_MESSAGES/django.mo index c156a3e45d2793e5cc444397c56684762de0d082..27c1f7e48a510b16650fea2fb9d7e66ddb18d756 100644 GIT binary patch delta 17288 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 IY6rXXKT?>%A^-pY delta 12514 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 F{|k*?>$?B| diff --git a/server/src/uds/locale/de/LC_MESSAGES/django.po b/server/src/uds/locale/de/LC_MESSAGES/django.po index 622a703b..d26677bf 100644 --- a/server/src/uds/locale/de/LC_MESSAGES/django.po +++ b/server/src/uds/locale/de/LC_MESSAGES/django.po @@ -32,7 +32,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-12-08 19:29+0100\n" +"POT-Creation-Date: 2014-02-05 10:32+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -42,160 +42,412 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n" -#: REST/model.py:81 REST/methods/authenticators.py:56 -#: REST/methods/networks.py:51 REST/methods/osmanagers.py:52 -#: REST/methods/providers.py:57 REST/methods/transports.py:54 -#: REST/methods/users_groups.py:72 +#: REST/model.py:86 REST/methods/authenticators.py:58 +#: REST/methods/networks.py:54 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:59 REST/methods/services_pools.py:65 +#: REST/methods/transports.py:55 REST/methods/user_services.py:161 +#: REST/methods/user_services.py:189 REST/methods/users_groups.py:82 +#: templates/uds/admin/tmpl/user.html:29 templates/uds/admin/tmpl/user.html:32 msgid "Name" msgstr "Name" -#: REST/model.py:82 +#: REST/model.py:87 msgid "Name of this element" msgstr "Name dieses Elements" -#: REST/model.py:88 REST/methods/authenticators.py:57 -#: REST/methods/osmanagers.py:53 REST/methods/providers.py:58 -#: REST/methods/services.py:126 REST/methods/transports.py:55 -#: REST/methods/users_groups.py:73 REST/methods/users_groups.py:108 +#: REST/model.py:93 REST/methods/authenticators.py:59 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:60 +#: REST/methods/services.py:139 REST/methods/services_pools.py:68 +#: REST/methods/transports.py:56 REST/methods/user_services.py:191 +#: REST/methods/users_groups.py:83 REST/methods/users_groups.py:190 +#: templates/uds/admin/tmpl/group.html:37 +#: templates/uds/admin/tmpl/user.html:40 msgid "Comments" msgstr "Kommentare" -#: REST/model.py:89 +#: REST/model.py:94 msgid "Comments for this element" msgstr "Kommentare für dieses element" -#: REST/model.py:97 REST/methods/authenticators.py:58 -#: REST/methods/transports.py:56 REST/methods/transports.py:69 +#: REST/model.py:102 REST/methods/authenticators.py:60 +#: REST/methods/transports.py:54 REST/methods/user_services.py:188 msgid "Priority" msgstr "Priorität" -#: REST/model.py:98 +#: REST/model.py:103 msgid "" "Selects the priority of this element (lower number means higher priority)" msgstr "" -"Bestimmt die Priorität dieses Elements (niedrigere Zahl bedeutet höhere Priorität)" +"Bestimmt die Priorität dieses Elements (niedrigere Zahl bedeutet höhere " +"Priorität)" -#: REST/model.py:106 REST/methods/authenticators.py:59 -msgid "Small name" -msgstr "Kleine Namen" +#: REST/model.py:113 +msgid "Short name" +msgstr "Kurzname" -#: REST/model.py:107 -msgid "Small name of this element" -msgstr "Kleine Name dieses Elements" +#: REST/model.py:114 +msgid "Short name of this element" +msgstr "Kurzer Name für dieses element" -#: REST/model.py:157 +#: REST/model.py:159 msgid "Invalid Request" msgstr "Ungültige Anforderung" -#: REST/model.py:160 +#: REST/model.py:162 msgid "Method not found" msgstr "Methode nicht gefunden" -#: REST/model.py:163 +#: REST/model.py:165 msgid "Item not found" msgstr "Element nicht gefunden" -#: REST/methods/authenticators.py:54 +#: REST/methods/authenticators.py:56 msgid "Current authenticators" msgstr "Aktuelle Authentifikatoren" -#: REST/methods/authenticators.py:60 +#: REST/methods/authenticators.py:61 +msgid "Small name" +msgstr "Kleine Namen" + +#: REST/methods/authenticators.py:62 #: templates/uds/admin/tmpl/authenticators.html:18 +#: templates/uds/admin/tmpl/dashboard.html:22 msgid "Users" msgstr "Benutzer" -#: REST/methods/networks.py:49 +#: REST/methods/networks.py:52 msgid "Current Networks" msgstr "Aktuellen Netze" -#: REST/methods/networks.py:52 templates/uds/index.html:79 -#: templates/uds/html5/index.html:124 -msgid "Networks" -msgstr "Netzwerke" +#: REST/methods/networks.py:55 +msgid "Range" +msgstr "Bereich" -#: REST/methods/networks.py:53 REST/methods/osmanagers.py:54 +#: REST/methods/networks.py:56 REST/methods/osmanagers.py:57 #: REST/methods/transports.py:57 msgid "Used by" msgstr "Von verwendet" -#: REST/methods/osmanagers.py:50 +#: REST/methods/networks.py:66 +msgid "Invalid network: " +msgstr "Ungültige Netzwerk: " + +#: REST/methods/networks.py:73 +msgid "Network range" +msgstr "Netzwerkbereich" + +#: REST/methods/networks.py:74 +msgid "" +"Network range. Accepts most network definitions formats (range, subnet, " +"host, etc..." +msgstr "" +"Netzwerk-Bereich. Akzeptiert die meisten Netzwerk-Definitionen-Formate " +"(Range, Subnetz, Host, etc...." + +#: REST/methods/osmanagers.py:53 msgid "Current OS Managers" msgstr "Aktuelle OS-Manager" -#: REST/methods/providers.py:53 templates/uds/admin/snippets/navbar.html:18 +#: REST/methods/osmanagers.py:75 +msgid "Can't delete an OSManager with deployed services associated" +msgstr "" +"Ein OSManager kann nicht mit bereitgestellten Leistungen gelöscht werden." + +#: REST/methods/osmanagers.py:79 +msgid "Can't modify an OSManager with deployed services associated" +msgstr "" +"Ein OSManager kann nicht mit bereitgestellten Leistungen geändert werden." + +#: REST/methods/providers.py:55 msgid "Service providers" msgstr "Service-Provider" -#: REST/methods/providers.py:59 templates/uds/index.html:51 +#: REST/methods/providers.py:61 templates/uds/index.html:51 +#: templates/uds/admin/snippets/navbar.html:18 +#: templates/uds/admin/tmpl/dashboard.html:49 +#: templates/uds/admin/tmpl/providers.html:4 +#: templates/uds/admin/tmpl/providers.html:7 #: templates/uds/admin/tmpl/providers.html:18 #: templates/uds/html5/index.html:65 msgid "Services" msgstr "Dienstleistungen" -#: REST/methods/services.py:119 +#: REST/methods/providers.py:62 +msgid "User Services" +msgstr "Benutzerdienste" + +#: REST/methods/providers.py:111 dispatchers/wyse_enterprise/views.py:254 +#: dispatchers/wyse_enterprise/views.py:257 web/errors.py:62 +msgid "Service not found" +msgstr "-Dienst nicht gefunden" + +#: REST/methods/services.py:132 #, python-brace-format msgid "Services of {0}" msgstr "Dienstleistungen von {0}" -#: REST/methods/services.py:121 +#: REST/methods/services.py:134 msgid "Current services" msgstr "Aktuelle Dienstleistungen" -#: REST/methods/services.py:125 +#: REST/methods/services.py:138 msgid "Service name" msgstr "Dienstnamen" -#: REST/methods/services.py:127 +#: REST/methods/services.py:140 REST/methods/user_services.py:190 msgid "Type" msgstr "Typ" -#: REST/methods/services.py:128 templates/uds/admin/snippets/navbar.html:22 +#: REST/methods/services.py:141 REST/methods/services_pools.py:63 msgid "Deployed services" msgstr "Bereitgestellten Dienste" +#: REST/methods/services.py:142 templates/uds/admin/tmpl/dashboard.html:76 +msgid "User services" +msgstr "Benutzerdienste" + +#: REST/methods/services_pools.py:66 +msgid "Parent Service" +msgstr "Eltern-Service" + +#: REST/methods/services_pools.py:67 REST/methods/users_groups.py:84 +#: REST/methods/users_groups.py:191 +msgid "state" +msgstr "Zustand" + +#: REST/methods/services_pools.py:95 +msgid "Create at least one OS Manager before creating a new service pool" +msgstr "" +"Erstellen Sie mindestens ein OS-Manager vor dem Erstellen eines neuen " +"Service-Pools" + +#: REST/methods/services_pools.py:97 +msgid "Create at least a service before creating a new service pool" +msgstr "" +"Erstellen Sie mindestens einen Dienst vor dem Erstellen eines neuen Service-" +"Pools" + +#: REST/methods/services_pools.py:104 +msgid "Base service" +msgstr "Basisdienst" + +#: REST/methods/services_pools.py:105 +msgid "Service used as base of this service pool" +msgstr "Service als Basis für diesen Service-pool" + +#: REST/methods/services_pools.py:112 +msgid "OS Manager" +msgstr "OS-Manager" + +#: REST/methods/services_pools.py:113 +msgid "OS Manager used as base of this service pool" +msgstr "OS-Manager verwendet als Grundlage dieser Service-pool" + +#: REST/methods/services_pools.py:120 +msgid "Initial available services" +msgstr "Erster verfügbaren Dienste" + +#: REST/methods/services_pools.py:121 +msgid "Services created initially for this service pool" +msgstr "Dienste, die ursprünglich für diesen Service-Pool erstellt" + +#: REST/methods/services_pools.py:127 +msgid "Services to keep in cache" +msgstr "Dienstleistungen im Cache behalten" + +#: REST/methods/services_pools.py:128 +msgid "Services keeped in cache for improved user service assignation" +msgstr "Dienstleistungen keeped im Cache für verbesserte Service-Zuweisung" + +#: REST/methods/services_pools.py:134 +msgid "Services to keep in L2 cache" +msgstr "Dienstleistungen im L2-Cache zu behalten" + +#: REST/methods/services_pools.py:135 +msgid "Services keeped in cache of level2 for improved service generation" +msgstr "Generation-keeped im level2-Cache für bessere Dienste" + +#: REST/methods/services_pools.py:141 +msgid "Maximum number of services to provide" +msgstr "Maximale Anzahl der Dienste" + +#: REST/methods/services_pools.py:142 +msgid "" +"Maximum number of service (assigned and L1 cache) that can be created for " +"this service" +msgstr "" +"Maximale Anzahl der Dienst (zugewiesen und L1-Cache) für die erstellt werden " +"können dieser service" + +#: REST/methods/services_pools.py:159 +msgid "Base service does not exists anymore" +msgstr "Zentrale Dienst existiert nicht mehr" + +#: REST/methods/services_pools.py:168 +msgid "This service requires an os manager" +msgstr "Dieser Service erfordert einen os-manager" + #: REST/methods/transports.py:52 msgid "Current Transports" msgstr "Aktuelle Transporte" -#: REST/methods/transports.py:70 -msgid "Priority of this transport" -msgstr "Priorität dieses Transportes" +#: REST/methods/transports.py:68 +msgid "Network access" +msgstr "Netzwerkzugriff" -#: REST/methods/users_groups.py:65 +#: REST/methods/transports.py:69 +msgid "" +"If ACTIVE, the transport will be enabled for the selected networks.If " +"INACTIVE, trans port will be disabled for selected networks" +msgstr "" +"Wenn aktiv, wird der Transport für die ausgewählte Netze aktiviert sein.If " +"INAKTIV, wird Trans Port für ausgewählte Netzwerke deaktiviert" + +#: REST/methods/transports.py:76 templates/uds/index.html:79 +#: templates/uds/html5/index.html:124 +msgid "Networks" +msgstr "Netzwerke" + +#: REST/methods/transports.py:77 +msgid "" +"Networks associated with this transport. If No network selected, will mean " +"\"all networks\"" +msgstr "" +"Netzwerke, die mit diesem Transport verbunden. Wenn kein Netzwerk " +"ausgewählt, bedeutet \"alle Netze\"" + +#: REST/methods/user_services.py:88 +#: templates/uds/admin/tmpl/services_pool.html:18 +msgid "Assigned services" +msgstr "Zugeordneten services" + +#: REST/methods/user_services.py:92 REST/methods/user_services.py:128 +msgid "Creation date" +msgstr "Erstellungsdatum" + +#: REST/methods/user_services.py:93 REST/methods/user_services.py:129 +#: REST/methods/user_services.py:224 +msgid "Revision" +msgstr "Revision" + +#: REST/methods/user_services.py:95 REST/methods/user_services.py:131 +msgid "Friendly name" +msgstr "Angezeigter name" + +#: REST/methods/user_services.py:96 REST/methods/user_services.py:132 +#: REST/methods/user_services.py:163 REST/methods/user_services.py:226 +#: templates/uds/admin/tmpl/group.html:42 +#: templates/uds/admin/tmpl/user.html:45 +msgid "State" +msgstr "Zustand" + +#: REST/methods/user_services.py:97 +msgid "Owner" +msgstr "Eigentümer" + +#: REST/methods/user_services.py:124 +msgid "Cached services" +msgstr "Zwischengespeicherte Dienstleistungen" + +#: REST/methods/user_services.py:133 +msgid "Cache level" +msgstr "Cache-Stufe" + +#: REST/methods/user_services.py:156 +msgid "Assigned groups" +msgstr "Zugewiesenen Gruppen" + +#: REST/methods/user_services.py:162 templates/uds/admin/tmpl/group.html:34 +#: templates/uds/admin/tmpl/user.html:37 +msgid "comments" +msgstr "Kommentare" + +#: REST/methods/user_services.py:184 +msgid "Assigned transports" +msgstr "Zugewiesenen Transporte" + +#: REST/methods/user_services.py:220 +#: templates/uds/admin/tmpl/services_pool.html:22 +msgid "Publications" +msgstr "Publikationen" + +#: REST/methods/user_services.py:225 +msgid "Publish date" +msgstr "Datum der Veröffentlichung" + +#: REST/methods/user_services.py:227 +msgid "Reason" +msgstr "Grund" + +#: REST/methods/users_groups.py:75 #, python-brace-format msgid "Users of {0}" msgstr "Benutzer von {0}" -#: REST/methods/users_groups.py:67 +#: REST/methods/users_groups.py:77 msgid "Current users" msgstr "Momentane Benutzer" -#: REST/methods/users_groups.py:71 REST/methods/users_groups.py:107 -msgid "User Id" -msgstr "Benutzer-Id" +#: REST/methods/users_groups.py:81 +#: auths/ActiveDirectory_enterprise/Authenticator.py:48 +#: auths/EDirectory_enterprise/Authenticator.py:77 +#: auths/RegexLdap/Authenticator.py:72 auths/SimpleLDAP/Authenticator.py:73 +#: services/HyperV_enterprise/HyperVClusterProvider.py:91 +#: services/HyperV_enterprise/HyperVProvider.py:83 +#: services/OVirt/OVirtProvider.py:93 +#: services/Vmware_enterprise/ServiceProviderVC.py:30 +#: templates/uds/admin/tmpl/user.html:16 transports/HTML5RDP/HTML5RDP.py:64 +#: transports/NX/NXTransport.py:61 transports/NX/TSNXTransport.py:66 +#: transports/RDP/RDPTransport.py:59 transports/RDP/TSRDPTransport.py:63 +#: transports/RGS-enterprise/RGSTransport.py:42 +#: transports/RGS-enterprise/TRGSTransport.py:47 +#: transports/TSNX/TSNXTransport.py:66 web/forms/LoginForm.py:69 +msgid "Username" +msgstr "Benutzername" -#: REST/methods/users_groups.py:74 REST/methods/users_groups.py:109 -msgid "state" -msgstr "Zustand" - -#: REST/methods/users_groups.py:75 +#: REST/methods/users_groups.py:85 msgid "Last access" msgstr "Zuletzt online" -#: REST/methods/users_groups.py:101 +#: REST/methods/users_groups.py:132 REST/methods/users_groups.py:244 +msgid "User already exists (duplicate key error)" +msgstr "Benutzer ist bereits vorhanden (doppelte Schlüsselfehler)" + +#: REST/methods/users_groups.py:183 #, python-brace-format msgid "Groups of {0}" msgstr "Gruppen von {0}" -#: REST/methods/users_groups.py:103 +#: REST/methods/users_groups.py:185 msgid "Current groups" msgstr "Aktuelle Gruppen" -#: admin/views.py:55 admin/views.py:63 admin/views.py:77 web/views.py:422 +#: REST/methods/users_groups.py:189 REST/methods/users_groups.py:196 +#: auths/ActiveDirectory_enterprise/Authenticator.py:50 +#: auths/EDirectory_enterprise/Authenticator.py:79 +#: auths/RegexLdap/Authenticator.py:74 auths/SAML_enterprise/SAML.py:114 +#: auths/SimpleLDAP/Authenticator.py:75 +#: templates/uds/admin/tmpl/pool_add_group.html:17 +msgid "Group" +msgstr "Gruppe" + +#: REST/methods/users_groups.py:196 +msgid "UDS Group" +msgstr "UDS-Gruppe" + +#: REST/methods/users_groups.py:197 +msgid "Meta group" +msgstr "Meta group" + +#: REST/methods/users_groups.py:197 +msgid "UDS Meta Group" +msgstr "UDS Meta Group" + +#: admin/views.py:51 admin/views.py:59 admin/views.py:73 web/views.py:425 msgid "Forbidden" msgstr "Verboten" -#: admin/views.py:70 +#: admin/views.py:66 msgid "requested a template that do not exists" msgstr "gefordert, dass eine Vorlage, die nicht vorhanden ist" @@ -258,9 +510,9 @@ msgstr "" #: services/HyperV_enterprise/HyperVProvider.py:84 #: services/OVirt/OVirtProvider.py:94 services/Sample/SampleService.py:131 #: services/Vmware_enterprise/ServiceProviderVC.py:31 -#: transports/HTML5RDP/HTML5RDP.py:65 transports/NX/NXTransport.py:62 -#: transports/NX/TSNXTransport.py:67 transports/RDP/RDPTransport.py:60 -#: transports/RDP/TSRDPTransport.py:64 +#: templates/uds/admin/tmpl/user.html:78 transports/HTML5RDP/HTML5RDP.py:65 +#: transports/NX/NXTransport.py:62 transports/NX/TSNXTransport.py:67 +#: transports/RDP/RDPTransport.py:60 transports/RDP/TSRDPTransport.py:64 #: transports/RGS-enterprise/RGSTransport.py:43 #: transports/RGS-enterprise/TRGSTransport.py:48 #: transports/TSNX/TSNXTransport.py:67 web/forms/LoginForm.py:70 @@ -295,31 +547,8 @@ msgstr "Active Directory-Authenticator" msgid "Authenticate against Active Directory" msgstr "Mithilfe von Active Directory zu authentifizieren" -#: auths/ActiveDirectory_enterprise/Authenticator.py:48 -#: auths/EDirectory_enterprise/Authenticator.py:77 -#: auths/RegexLdap/Authenticator.py:72 auths/SimpleLDAP/Authenticator.py:73 -#: services/HyperV_enterprise/HyperVClusterProvider.py:91 -#: services/HyperV_enterprise/HyperVProvider.py:83 -#: services/OVirt/OVirtProvider.py:93 -#: services/Vmware_enterprise/ServiceProviderVC.py:30 -#: transports/HTML5RDP/HTML5RDP.py:64 transports/NX/NXTransport.py:61 -#: transports/NX/TSNXTransport.py:66 transports/RDP/RDPTransport.py:59 -#: transports/RDP/TSRDPTransport.py:63 -#: transports/RGS-enterprise/RGSTransport.py:42 -#: transports/RGS-enterprise/TRGSTransport.py:47 -#: transports/TSNX/TSNXTransport.py:66 web/forms/LoginForm.py:69 -msgid "Username" -msgstr "Benutzername" - -#: auths/ActiveDirectory_enterprise/Authenticator.py:50 -#: auths/EDirectory_enterprise/Authenticator.py:79 -#: auths/RegexLdap/Authenticator.py:74 auths/SAML_enterprise/SAML.py:114 -#: auths/SimpleLDAP/Authenticator.py:75 -msgid "Group" -msgstr "Gruppe" - #: auths/ActiveDirectory_enterprise/Authenticator.py:67 -#: auths/ActiveDirectory_enterprise/Authenticator.py:442 +#: auths/ActiveDirectory_enterprise/Authenticator.py:444 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "Müssen der Benutzername in der Form USERNAME@DOMAIN angeben.DOM" @@ -328,7 +557,7 @@ msgid "Active directory connection error: " msgstr "Active Directory-Verbindung-Fehler: " #: auths/ActiveDirectory_enterprise/Authenticator.py:344 -#: auths/ActiveDirectory_enterprise/Authenticator.py:390 +#: auths/ActiveDirectory_enterprise/Authenticator.py:392 #: auths/EDirectory_enterprise/Authenticator.py:243 #: auths/EDirectory_enterprise/Authenticator.py:286 #: auths/RegexLdap/Authenticator.py:303 auths/RegexLdap/Authenticator.py:346 @@ -341,33 +570,34 @@ msgstr "Benutzername wurde nicht gefunden" msgid "Group not found" msgstr "Gruppe nicht gefunden" -#: auths/ActiveDirectory_enterprise/Authenticator.py:410 -#: auths/ActiveDirectory_enterprise/Authenticator.py:428 +#: auths/ActiveDirectory_enterprise/Authenticator.py:412 +#: auths/ActiveDirectory_enterprise/Authenticator.py:430 #: auths/EDirectory_enterprise/Authenticator.py:303 #: auths/RegexLdap/Authenticator.py:367 auths/SimpleLDAP/Authenticator.py:328 #: auths/SimpleLDAP/Authenticator.py:342 msgid "Too many results, be more specific" msgstr "Zu viele Ergebnisse, sein mehr spezifisch" -#: auths/ActiveDirectory_enterprise/Authenticator.py:451 +#: auths/ActiveDirectory_enterprise/Authenticator.py:453 msgid "Domain seems to be incorrect, please check it" msgstr "Domäne scheint nicht korrekt, bitte überprüfen es" -#: auths/ActiveDirectory_enterprise/Authenticator.py:456 +#: auths/ActiveDirectory_enterprise/Authenticator.py:458 msgid "Server does not seem an Active Directory (do not have user objects)" msgstr "Server scheint kein Active Directory (Benutzerobjekte nicht haben)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:464 +#: auths/ActiveDirectory_enterprise/Authenticator.py:466 msgid "Server does not seem an Active Directory (no not have group objects)" -msgstr "Server scheint kein Active Directory (Nein, nicht haben Gruppenobjekte)" +msgstr "" +"Server scheint kein Active Directory (Nein, nicht haben Gruppenobjekte)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:472 +#: auths/ActiveDirectory_enterprise/Authenticator.py:474 msgid "" "Server does not seem an Active Directory (do not have any user nor groups)" msgstr "" "Server scheint kein Active Directory (haben noch keine Benutzer oder Gruppen)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:477 +#: auths/ActiveDirectory_enterprise/Authenticator.py:479 #: auths/EDirectory_enterprise/Authenticator.py:358 #: auths/RegexLdap/Authenticator.py:428 auths/SimpleLDAP/Authenticator.py:423 msgid "Connection params seem correct, test was succesfully executed" @@ -707,6 +937,9 @@ msgstr "Fake-Gruppe" #: auths/Sample/SampleAuth.py:111 #: templates/uds/admin/tmpl/authenticators.html:19 +#: templates/uds/admin/tmpl/group.html:53 +#: templates/uds/admin/tmpl/services_pool.html:20 +#: templates/uds/admin/tmpl/user.html:85 templates/uds/admin/tmpl/user.html:99 msgid "Groups" msgstr "Gruppen" @@ -794,7 +1027,7 @@ msgstr "Base Authenticator" msgid "User name" msgstr "Benutzername" -#: core/auths/BaseAuthenticator.py:131 +#: core/auths/BaseAuthenticator.py:131 templates/uds/admin/tmpl/group.html:19 msgid "Group name" msgstr "Gruppenname" @@ -802,6 +1035,10 @@ msgstr "Gruppenname" msgid "Users can't be created inside this authenticator" msgstr "Benutzer können nicht innerhalb dieser Authenticator erstellt werden" +#: core/auths/auth.py:61 +msgid "System Administrator" +msgstr "Systemadministrator" + #: core/managers/PublicationManager.py:181 msgid "" "Already publishing. Wait for previous publication to finish and try again" @@ -851,17 +1088,17 @@ msgstr "24 Bit" msgid "32 bits" msgstr "32 bits" -#: core/managers/UserServiceManager.py:322 +#: core/managers/UserServiceManager.py:314 msgid "Cancel requested for a non running operation, doing remove instead" msgstr "" "Abbrechen angefordert für eine nicht ausgeführte Operation entfernen " "stattdessen tun" -#: core/managers/UserServiceManager.py:343 +#: core/managers/UserServiceManager.py:335 msgid "Can't remove a non active element" msgstr "Ein nicht aktive Element kann nicht entfernt werden." -#: core/managers/UserServiceManager.py:356 +#: core/managers/UserServiceManager.py:348 #, python-brace-format msgid "Can't remove nor cancel {0} cause its states doesn't allows it" msgstr "" @@ -901,7 +1138,7 @@ msgstr "Aktive" msgid "Inactive" msgstr "Inaktiv" -#: core/util/State.py:60 +#: core/util/State.py:60 templates/uds/admin/tmpl/user.html:50 msgid "Blocked" msgstr "Blockiert" @@ -1017,11 +1254,6 @@ msgstr "Ungültige Anforderung" msgid "Invalid credentials used" msgstr "Ungültiger Anmeldeinformationen verwendet" -#: dispatchers/wyse_enterprise/views.py:254 -#: dispatchers/wyse_enterprise/views.py:257 web/errors.py:62 -msgid "Service not found" -msgstr "-Dienst nicht gefunden" - #: dispatchers/wyse_enterprise/views.py:271 web/errors.py:61 msgid "Transport not found" msgstr "Verkehr nicht gefunden" @@ -1436,12 +1668,12 @@ msgid "HyperV Linked Clone (Experimental)" msgstr "Hyper-v Linked Clone (experimentell)" #: services/HyperV_enterprise/HyperVProvider.py:62 -msgid "HyperV Platform Provider" -msgstr "Hyper-v-Plattform-Anbieter" +msgid "HyperV Platform Provider (experimental)" +msgstr "Hyper-v-Plattform-Anbieter (experimentell)" #: services/HyperV_enterprise/HyperVProvider.py:66 -msgid "HyperV platform service provider" -msgstr "Hyper-v-Plattform-Service-provider" +msgid "HyperV platform service provider (experimental)" +msgstr "Hyper-v-Plattform-Service-Provider (experimentell)" #: services/OVirt/OVirtLinkedService.py:56 msgid "oVirt Linked Clone (Experimental)" @@ -1808,7 +2040,8 @@ msgstr "und Browser neu starten" msgid "Ip" msgstr "IP" -#: templates/uds/index.html:80 templates/uds/html5/index.html:125 +#: templates/uds/index.html:80 templates/uds/admin/tmpl/services_pool.html:21 +#: templates/uds/html5/index.html:125 msgid "Transports" msgstr "Transporte" @@ -1864,35 +2097,90 @@ msgid "Connectivity" msgstr "Konnektivität" #: templates/uds/admin/snippets/navbar.html:26 +#: templates/uds/admin/tmpl/configuration.html:7 msgid "Configuration" msgstr "Konfiguration" #: templates/uds/admin/snippets/navbar.html:27 -msgid "Clear cache" -msgstr "Cache löschen" +msgid "Flush cache" +msgstr "Cache leeren" -#: templates/uds/admin/snippets/navbar.html:57 +#: templates/uds/admin/snippets/navbar.html:56 msgid "Exit" msgstr "Ausfahrt" -#: templates/uds/admin/snippets/navbar.html:58 +#: templates/uds/admin/snippets/navbar.html:57 msgid "Logout" msgstr "Logout" #: templates/uds/admin/tmpl/authenticators.html:20 #: templates/uds/admin/tmpl/providers.html:19 +#: templates/uds/admin/tmpl/services_pool.html:23 msgid "Logs" msgstr "Protokolle" +#: templates/uds/admin/tmpl/configuration.html:4 +msgid "UDS Configuration" +msgstr "UDS-Konfiguration" + +#: templates/uds/admin/tmpl/configuration.html:58 +#: templates/uds/admin/tmpl/comp/modal.html:26 +msgid "Save" +msgstr "Speichern" + #: templates/uds/admin/tmpl/connectivity.html:4 -#: templates/uds/admin/tmpl/dashboard.html:4 +#: templates/uds/admin/tmpl/dashboard.html:5 msgid "overview" msgstr "Übersicht" -#: templates/uds/admin/tmpl/providers.html:4 -#: templates/uds/admin/tmpl/providers.html:7 -msgid "Providers" -msgstr "Anbieter" +#: templates/uds/admin/tmpl/dashboard.html:30 +msgid "View Authenticators" +msgstr "Ansicht-Authentifikatoren" + +#: templates/uds/admin/tmpl/dashboard.html:57 +msgid "View services" +msgstr "Anzeigen von Diensten" + +#: templates/uds/admin/tmpl/dashboard.html:84 +#: templates/uds/admin/tmpl/dashboard.html:111 +msgid "View services pools" +msgstr "Anzeigen-Dienste-pools" + +#: templates/uds/admin/tmpl/dashboard.html:103 +msgid "Restrained services pools" +msgstr "Zurückhaltende Service-pools" + +#: templates/uds/admin/tmpl/dashboard.html:127 +msgid "Assigned services graph" +msgstr "Zugeordneten Services graph" + +#: templates/uds/admin/tmpl/dashboard.html:139 +msgid "Used services graph" +msgstr "Gebrauchte Dienstleistungen graph" + +#: templates/uds/admin/tmpl/group.html:25 +#: templates/uds/admin/tmpl/search.html:9 +#: templates/uds/admin/tmpl/user.html:21 +msgid "Search" +msgstr "Suche" + +#: templates/uds/admin/tmpl/group.html:45 +#: templates/uds/admin/tmpl/user.html:48 +msgid "Enabled" +msgstr "Aktiviert" + +#: templates/uds/admin/tmpl/group.html:46 +#: templates/uds/admin/tmpl/user.html:49 +msgid "Disabled" +msgstr "Behinderte" + +#: templates/uds/admin/tmpl/pool_add_group.html:5 web/forms/LoginForm.py:71 +msgid "Authenticator" +msgstr "Authentifikator" + +#: templates/uds/admin/tmpl/pool_add_transport.html:5 +msgid "Transport" +msgstr "Verkehr" #: templates/uds/admin/tmpl/request_failed.html:4 msgid "Error on request" @@ -1907,22 +2195,47 @@ msgstr "Fehler beim anfordern, dass Daten vom Server, bitte erneut versuchen" msgid "Dashboard" msgstr "Dashboard" -#: templates/uds/admin/tmpl/comp/modal.html:19 -msgid "Close" -msgstr "Schließen" +#: templates/uds/admin/tmpl/services_pool.html:4 +msgid "Services Pools" +msgstr "Dienstleistungen-Pools" -#: templates/uds/admin/tmpl/comp/modal.html:26 -msgid "Save" -msgstr "Speichern" +#: templates/uds/admin/tmpl/services_pool.html:7 +msgid "Deployed Services" +msgstr "Bereitgestellten Dienste" -#: templates/uds/admin/tmpl/fld/checkbox.html:4 +#: templates/uds/admin/tmpl/services_pool.html:19 +msgid "Cache" +msgstr "Cache" + +#: templates/uds/admin/tmpl/user.html:56 +msgid "Staff member" +msgstr "Mitarbeiter" + +#: templates/uds/admin/tmpl/user.html:58 templates/uds/admin/tmpl/user.html:68 +#: templates/uds/admin/tmpl/fld/checkbox.html:5 msgid "Yes" msgstr "Ja" -#: templates/uds/admin/tmpl/fld/checkbox.html:4 +#: templates/uds/admin/tmpl/user.html:59 templates/uds/admin/tmpl/user.html:68 +#: templates/uds/admin/tmpl/fld/checkbox.html:5 msgid "No" msgstr "Nr." +#: templates/uds/admin/tmpl/user.html:66 +#: templates/uds/snippets/admin_user.html:4 +msgid "Admin" +msgstr "Admin" + +#: templates/uds/admin/tmpl/user.html:87 +#: templates/uds/admin/tmpl/user.html:101 +#, python-brace-format +msgid "{0} of {1} selected" +msgstr "{0} von {1} ausgewählt" + +#: templates/uds/admin/tmpl/comp/modal.html:19 +msgid "Close" +msgstr "Schließen" + #: templates/uds/admin/tmpl/fld/editlist_popup.html:5 msgid "Current list" msgstr "Aktuelle Liste" @@ -2047,10 +2360,6 @@ msgstr "" "ein modernes HTML5-Browser wie Firefox, Chrome, Opera... (IE 10 oder besser " "muss)" -#: templates/uds/snippets/admin_user.html:4 -msgid "Admin" -msgstr "Admin" - #: templates/uds/snippets/lang.html:9 msgid "Language" msgstr "Sprache" @@ -2541,7 +2850,7 @@ msgstr "" "Ihr Browser wird nicht unterstützt. Bitte aktualisieren Sie es auf einen " "modernen Browser mit HTML5 wie Firefox oder Chrome" -#: web/views.py:401 +#: web/views.py:404 msgid "Authenticator do not provides information" msgstr "Authentifikator informiert nicht" @@ -2553,10 +2862,6 @@ msgstr "Wählen Sie Authentifikator" msgid "authenticator" msgstr "Authentifikator" -#: web/forms/LoginForm.py:71 -msgid "Authenticator" -msgstr "Authentifikator" - #: xmlrpc/auths/AdminAuth.py:115 msgid "Credentials no longer valid" msgstr "Anmeldeinformationen nicht mehr gültig" diff --git a/server/src/uds/locale/de/LC_MESSAGES/djangojs.mo b/server/src/uds/locale/de/LC_MESSAGES/djangojs.mo index f2df1fd1a7b0cf137ff609b0e8b6771958aed6f2..8e6ce7ecedb8f22acf71a6c5dc86012a83c49dc5 100644 GIT binary patch literal 9251 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 diff --git a/server/src/uds/locale/de/LC_MESSAGES/djangojs.po b/server/src/uds/locale/de/LC_MESSAGES/djangojs.po index 74d42005..b1ac9519 100644 --- a/server/src/uds/locale/de/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/de/LC_MESSAGES/djangojs.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-12-08 19:29+0100\n" +"POT-Creation-Date: 2014-02-05 10:32+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -98,147 +98,359 @@ msgstr "Dezember" msgid "_MENU_ records per page" msgstr "_MENU_ Datensätze pro Seite" -#: static/adm/js/gui-definition.js:38 -msgid "Test" -msgstr "Test" - -#: static/adm/js/gui-definition.js:140 -msgid "Edit service" -msgstr "Bearbeiten service" - -#: static/adm/js/gui-definition.js:140 -msgid "Error processing service" -msgstr "Fehler-Dienstleistung" - -#: static/adm/js/gui-definition.js:141 -msgid "New service" -msgstr "Neuer service" - -#: static/adm/js/gui-definition.js:141 -msgid "Error creating service" -msgstr "Fehler beim Erstellen des service" - -#: static/adm/js/gui-definition.js:142 -msgid "Delete service" -msgstr "Dienst löschen" - -#: static/adm/js/gui-definition.js:142 -msgid "Error deleting service" -msgstr "Fehler beim Löschen der Dienst" - -#: static/adm/js/gui-definition.js:157 -msgid "New provider" -msgstr "Neuer Anbieter" - -#: static/adm/js/gui-definition.js:157 -msgid "Error creating provider" -msgstr "Erstellen von Fehleranbieter" - -#: static/adm/js/gui-definition.js:158 -msgid "Edit provider" -msgstr "Bearbeiten Anbieter" - -#: static/adm/js/gui-definition.js:158 -msgid "Error processing provider" -msgstr "Fehleranbieter Verarbeitung" - -#: static/adm/js/gui-definition.js:159 -msgid "Delete provider" -msgstr "Anbieter löschen" - -#: static/adm/js/gui-definition.js:159 -msgid "Error deleting provider" -msgstr "Löschen von Fehleranbieter" - -#: static/adm/js/gui-definition.js:177 +#: static/adm/js/gui-d-authenticators.js:10 msgid "Test authenticator" msgstr "Test-Authentifikator" -#: static/adm/js/gui-definition.js:295 +#: static/adm/js/gui-d-authenticators.js:52 +msgid "Search error" +msgstr "Suche Fehler" + +#: static/adm/js/gui-d-authenticators.js:60 +msgid "Accept" +msgstr "Akzeptieren" + +#: static/adm/js/gui-d-authenticators.js:153 +msgid "Edit group" +msgstr "Gruppe bearbeiten" + +#: static/adm/js/gui-d-authenticators.js:175 +#: static/adm/js/gui-d-authenticators.js:216 +msgid "Group saved" +msgstr "Gruppe gespeichert" + +#: static/adm/js/gui-d-authenticators.js:196 +msgid "New group" +msgstr "Neue Gruppe" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Search groups" +msgstr "Gruppen durchsuchen" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Group" +msgstr "Gruppe" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Groups found" +msgstr "Gruppen gefunden" + +#: static/adm/js/gui-d-authenticators.js:217 +msgid "Group saving error" +msgstr "Gruppe speichern Fehler" + +#: static/adm/js/gui-d-authenticators.js:231 +msgid "Delete group" +msgstr "Gruppe löschen" + +#: static/adm/js/gui-d-authenticators.js:231 +msgid "Group deletion error" +msgstr "Gruppe löschen Fehler" + +#: static/adm/js/gui-d-authenticators.js:279 +msgid "Edit user" +msgstr "Benutzer bearbeiten" + +#: static/adm/js/gui-d-authenticators.js:313 +#: static/adm/js/gui-d-authenticators.js:348 +msgid "User saved" +msgstr "Benutzer gespeichert" + +#: static/adm/js/gui-d-authenticators.js:314 +#: static/adm/js/gui-d-authenticators.js:349 +msgid "User saving error" +msgstr "Benutzer speichern Fehler" + +#: static/adm/js/gui-d-authenticators.js:325 +msgid "New user" +msgstr "Neuer Benutzer" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "Search users" +msgstr "Suche Mitglieder" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "User" +msgstr "Benutzer" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "Users found" +msgstr "Benutzer gefunden" + +#: static/adm/js/gui-d-authenticators.js:354 +msgid "Delete user" +msgstr "Benutzer löschen" + +#: static/adm/js/gui-d-authenticators.js:354 +msgid "User deletion error" +msgstr "Benutzer löschen Fehler" + +#: static/adm/js/gui-d-authenticators.js:371 msgid "New authenticator" msgstr "Neuen Authentifikator" -#: static/adm/js/gui-definition.js:295 -msgid "Error creating authenticator" -msgstr "Fehler erstellen Authentifikator" +#: static/adm/js/gui-d-authenticators.js:371 +msgid "Authenticator creation error" +msgstr "Fehler beim Erstellen der Authentifikator" -#: static/adm/js/gui-definition.js:296 +#: static/adm/js/gui-d-authenticators.js:372 msgid "Edit authenticator" msgstr "Authentifikator bearbeiten" -#: static/adm/js/gui-definition.js:296 -msgid "Error processing authenticator" -msgstr "Fehler Verarbeitung Authentifikator" +#: static/adm/js/gui-d-authenticators.js:372 +msgid "Authenticator saving error" +msgstr "Authentifikator speichern Fehler" -#: static/adm/js/gui-definition.js:297 +#: static/adm/js/gui-d-authenticators.js:373 msgid "Delete authenticator" msgstr "Authentifikator löschen" -#: static/adm/js/gui-definition.js:297 -msgid "Error deleting authenticator" -msgstr "Fehler löschen Authentifikator" +#: static/adm/js/gui-d-authenticators.js:373 +msgid "Authenticator deletion error" +msgstr "Authentifikator löschen Fehler" -#: static/adm/js/gui-definition.js:363 -msgid "Edit transport" -msgstr "Bearbeiten Verkehr" +#: static/adm/js/gui-d-config.js:42 +msgid "Configuration saved" +msgstr "Gespeicherte Konfiguration" -#: static/adm/js/gui-definition.js:370 static/adm/js/gui-definition.js.c:405 -msgid "Error creating transport" -msgstr "Fehler beim Erstellen des transport" - -#: static/adm/js/gui-definition.js:388 -msgid "Available for networks" -msgstr "Für Netzwerke verfügbar" - -#: static/adm/js/gui-definition.js:389 -msgid "Select networks that will see this transport" -msgstr "Wählen Sie Netzwerke, die diesen Transport angezeigt wird" - -#: static/adm/js/gui-definition.js:390 -msgid "Transport active for selected networks" -msgstr "Transport für ausgewählte Netzwerke aktiv" - -#: static/adm/js/gui-definition.js:391 -msgid "" -"If active, transport will only be available on selected networks. If " -"inactive, transport will be available form any net EXCEPT selected networks" -msgstr "" -"Wenn aktiv, werden Transport nur auf ausgewählten Netzen verfügbar. If " -"inaktiv, Transport verfügbare Form werden alle außer ausgewählten Netzen net" - -#: static/adm/js/gui-definition.js:397 +#: static/adm/js/gui-d-connectivity.js:20 msgid "New transport" msgstr "Neue Verkehrsmittel" -#: static/adm/js/gui-definition.js:414 +#: static/adm/js/gui-d-connectivity.js:20 +msgid "Transport creation error" +msgstr "Fehler beim Transport erstellen" + +#: static/adm/js/gui-d-connectivity.js:21 +msgid "Edit transport" +msgstr "Bearbeiten Verkehr" + +#: static/adm/js/gui-d-connectivity.js:21 +msgid "Transport saving error" +msgstr "Verkehr speichern Fehler" + +#: static/adm/js/gui-d-connectivity.js:22 +msgid "Delete transport" +msgstr "Verkehr zu löschen" + +#: static/adm/js/gui-d-connectivity.js:22 +msgid "Transport deletion error" +msgstr "Transportfehler löschen" + +#: static/adm/js/gui-d-connectivity.js:28 +msgid "New network" +msgstr "Neues Netzwerk" + +#: static/adm/js/gui-d-connectivity.js:28 +msgid "Network creation error" +msgstr "Fehler beim Netzwerk erstellen" + +#: static/adm/js/gui-d-connectivity.js:29 +msgid "Edit network" +msgstr "Netzwerk bearbeiten" + +#: static/adm/js/gui-d-connectivity.js:29 +msgid "Network saving error" +msgstr "Netzwerk Fehler" + +#: static/adm/js/gui-d-connectivity.js:30 +msgid "Delete network" +msgstr "Netzwerk löschen" + +#: static/adm/js/gui-d-connectivity.js:30 +msgid "Network deletion error" +msgstr "Netzwerkfehler löschen" + +#: static/adm/js/gui-d-osmanagers.js:13 +msgid "New OSManager" +msgstr "Neue OSManager" + +#: static/adm/js/gui-d-osmanagers.js:13 +msgid "OSManager creation error" +msgstr "Fehler beim Erstellen von OSManager" + +#: static/adm/js/gui-d-osmanagers.js:14 +msgid "Edit OSManager" +msgstr "Bearbeiten OSManager" + +#: static/adm/js/gui-d-osmanagers.js:14 +msgid "OSManager saving error" +msgstr "OSManager speichern Fehler" + +#: static/adm/js/gui-d-osmanagers.js:15 +msgid "Delete OSManager" +msgstr "OSManager löschen" + +#: static/adm/js/gui-d-osmanagers.js:15 +msgid "OSManager deletion error" +msgstr "OSManager löschen Fehler" + +#: static/adm/js/gui-d-services.js:9 static/adm/js/gui-d-servicespools.js:120 +msgid "Test" +msgstr "Test" + +#: static/adm/js/gui-d-services.js:111 +msgid "Edit service" +msgstr "Bearbeiten service" + +#: static/adm/js/gui-d-services.js:111 +msgid "Service creation error" +msgstr "Fehler beim Erstellen von Service" + +#: static/adm/js/gui-d-services.js:112 +msgid "New service" +msgstr "Neuer service" + +#: static/adm/js/gui-d-services.js:112 +msgid "Service saving error" +msgstr "Service Fehler speichern" + +#: static/adm/js/gui-d-services.js:113 +msgid "Delete service" +msgstr "Dienst löschen" + +#: static/adm/js/gui-d-services.js:113 +msgid "Service deletion error" +msgstr "Dienstfehler löschen" + +#: static/adm/js/gui-d-services.js:128 +msgid "New services provider" +msgstr "Neuer Anbieter für Dienste" + +#: static/adm/js/gui-d-services.js:128 +msgid "Services provider creation error" +msgstr "Fehler beim Erstellen der Provider-Dienste" + +#: static/adm/js/gui-d-services.js:129 +msgid "Edit services provider" +msgstr "Dienstleister bearbeiten" + +#: static/adm/js/gui-d-services.js:129 +msgid "Services Provider saving error" +msgstr "Speichern von Fehler-Dienstleister" + +#: static/adm/js/gui-d-services.js:130 +msgid "Delete services provider" +msgstr "Löschen-Dienstleister" + +#: static/adm/js/gui-d-services.js:130 +msgid "Services Provider deletion error" +msgstr "Service Provider löschen Fehler" + +#: static/adm/js/gui-d-servicespools.js:136 +msgid "Error processing deployed service" +msgstr "Fehler bereitgestellt Dienstleistung" + +#: static/adm/js/gui-d-servicespools.js:191 +msgid "Add group" +msgstr "Gruppe hinzufügen" + +#: static/adm/js/gui-d-servicespools.js:215 +msgid "You must provide authenticator and group" +msgstr "Sie müssen Authentifikator und Gruppe bereitstellen." + +#: static/adm/js/gui-d-servicespools.js:230 +msgid "Remove group from service pool" +msgstr "Entfernen Sie die Gruppe aus Service-pool" + +#: static/adm/js/gui-d-servicespools.js:230 +msgid "Error removing group" +msgstr "Fehler beim Entfernen Gruppe" + +#: static/adm/js/gui-d-servicespools.js:281 +msgid "Add transport" +msgstr "Transport hinzufügen" + +#: static/adm/js/gui-d-servicespools.js:288 +msgid "You must provide a transport" +msgstr "Sie müssen einen Transport bereitstellen." + +#: static/adm/js/gui-d-servicespools.js:303 +msgid "Remove transport from service pool" +msgstr "Transport aus Service-Pool zu entfernen" + +#: static/adm/js/gui-d-servicespools.js:303 msgid "Error removing transport" msgstr "Fehler beim Entfernen der Verkehr" -#: static/adm/js/gui-definition.js:432 +#: static/adm/js/gui-d-servicespools.js:328 +msgid "Cancel" +msgstr "Abbrechen" + +#: static/adm/js/gui-d-servicespools.js:349 +msgid "Publication failed" +msgstr "Publikation fehlgeschlagen" + +#: static/adm/js/gui-d-servicespools.js:379 +msgid "Restrained" +msgstr "Zurückhaltend" + +#: static/adm/js/gui-d-servicespools.js:387 +msgid "unknown (needs reload)" +msgstr "unbekannt (muss neu laden)" + +#: static/adm/js/gui-d-servicespools.js:391 +msgid "New service pool" +msgstr "Neue Service-pool" + +#: static/adm/js/gui-d-servicespools.js:391 +msgid "Error creating service pool" +msgstr "Erstellen von Dienst Fehlervorrat." + +#: static/adm/js/gui-d-servicespools.js:398 +msgid "Publish on creation" +msgstr "Bei der Erstellung zu veröffentlichen" + +#: static/adm/js/gui-d-servicespools.js:399 +msgid "" +"If selected, will initiate the publication on service inmediatly pool after " +"creation" +msgstr "" +"Wenn ausgewählt, wird die Publikation in Dienst-Inmediatly-Pool nach " +"einleiten. Erstellung" + +#: static/adm/js/gui-d-servicespools.js:410 static/adm/js/gui.js:41 +msgid "Edit" +msgstr "Bearbeiten" + +#: static/adm/js/gui-d-servicespools.js:410 +msgid "saving error" +msgstr "Speichern von Fehler" + +#: static/adm/js/gui-d-servicespools.js:411 static/adm/js/gui.js:45 +#: static/adm/js/gui.js.c:358 +msgid "Delete" +msgstr "Löschen" + +#: static/adm/js/gui-d-servicespools.js:411 +msgid "deletion error" +msgstr "Fehler löschen" + +#: static/adm/js/gui-definition.js:11 msgid "Cache" msgstr "Cache" -#: static/adm/js/gui-definition.js:432 +#: static/adm/js/gui-definition.js:11 msgid "Cache has been flushed" msgstr "Cache geleert hat, wurde" -#: static/adm/js/gui-element.js:471 +#: static/adm/js/gui-element.js:557 msgid "Date" msgstr "Datum" -#: static/adm/js/gui-element.js:478 +#: static/adm/js/gui-element.js:566 msgid "level" msgstr "Ebene" -#: static/adm/js/gui-element.js:486 +#: static/adm/js/gui-element.js:574 msgid "source" msgstr "Quelle" -#: static/adm/js/gui-element.js:493 +#: static/adm/js/gui-element.js:581 msgid "message" msgstr "Nachricht" -#: static/adm/js/gui-element.js:499 +#: static/adm/js/gui-element.js:587 msgid "Logs" msgstr "Protokolle" @@ -270,122 +482,106 @@ msgstr "Bitte warten, Verarbeitung" msgid "Filter" msgstr "Filter" -#: static/adm/js/gui.js:28 -msgid "First" -msgstr "Erste" - -#: static/adm/js/gui.js:29 -msgid "Last" -msgstr "Letzter" - #: static/adm/js/gui.js:37 msgid "New" msgstr "Neu" -#: static/adm/js/gui.js:41 -msgid "Edit" -msgstr "Bearbeiten" - -#: static/adm/js/gui.js:45 static/adm/js/gui.js.c:322 -msgid "Delete" -msgstr "Löschen" - #: static/adm/js/gui.js:49 msgid "Xls" msgstr "Xls" -#: static/adm/js/gui.js:111 +#: static/adm/js/gui.js:123 msgid "Message" msgstr "Nachricht" -#: static/adm/js/gui.js:133 -msgid "Deployed services" -msgstr "Bereitgestellten Dienste" - -#: static/adm/js/gui.js:207 +#: static/adm/js/gui.js:217 msgid "This field is required." msgstr "Dieses Feld ist erforderlich." -#: static/adm/js/gui.js:208 +#: static/adm/js/gui.js:218 msgid "Please fix this field." msgstr "Bitte korrigieren Sie in diesem Feld." -#: static/adm/js/gui.js:209 +#: static/adm/js/gui.js:219 msgid "Please enter a valid email address." msgstr "Bitte geben Sie eine gültige e-Mail-Adresse." -#: static/adm/js/gui.js:210 +#: static/adm/js/gui.js:220 msgid "Please enter a valid URL." msgstr "Bitte geben Sie eine gültige URL." -#: static/adm/js/gui.js:211 +#: static/adm/js/gui.js:221 msgid "Please enter a valid date." msgstr "Bitte geben Sie ein gültiges Datum." -#: static/adm/js/gui.js:212 +#: static/adm/js/gui.js:222 msgid "Please enter a valid date (ISO)." msgstr "Bitte geben Sie ein gültiges Datum (ISO)." -#: static/adm/js/gui.js:213 +#: static/adm/js/gui.js:223 msgid "Please enter a valid number." msgstr "Bitte geben Sie eine gültige Nummer." -#: static/adm/js/gui.js:214 +#: static/adm/js/gui.js:224 msgid "Please enter only digits." msgstr "Bitte geben Sie nur Ziffern." -#: static/adm/js/gui.js:215 +#: static/adm/js/gui.js:225 msgid "Please enter a valid credit card number." msgstr "Bitte geben Sie eine gültige Kreditkartennummer." -#: static/adm/js/gui.js:216 +#: static/adm/js/gui.js:226 msgid "Please enter the same value again." msgstr "Bitte geben Sie den gleichen Wert wieder." -#: static/adm/js/gui.js:217 +#: static/adm/js/gui.js:227 msgid "Please enter no more than {0} characters." msgstr "Bitte geben Sie nicht mehr als {0} Zeichen." -#: static/adm/js/gui.js:218 +#: static/adm/js/gui.js:228 msgid "Please enter at least {0} characters." msgstr "Bitte geben Sie mindestens {0} Zeichen." -#: static/adm/js/gui.js:219 +#: static/adm/js/gui.js:229 msgid "Please enter a value between {0} and {1} characters long." msgstr "Bitte geben Sie einen Wert zwischen {0} und {1} Zeichen lang." -#: static/adm/js/gui.js:220 +#: static/adm/js/gui.js:230 msgid "Please enter a value between {0} and {1}." msgstr "Bitte geben Sie einen Wert zwischen {0} und {1}." -#: static/adm/js/gui.js:221 +#: static/adm/js/gui.js:231 msgid "Please enter a value less than or equal to {0}." msgstr "Bitte geben Sie einen Wert kleiner oder gleich {0}." -#: static/adm/js/gui.js:222 +#: static/adm/js/gui.js:232 msgid "Please enter a value greater than or equal to {0}." msgstr "Bitte geben Sie einen Wert größer oder gleich {0}." -#: static/adm/js/gui.js:244 +#: static/adm/js/gui.js:274 msgid "Test result" msgstr "Testergebnis" -#: static/adm/js/gui.js:245 +#: static/adm/js/gui.js:275 msgid "Test error" msgstr "Test-Fehler" -#: static/adm/js/gui.js:276 +#: static/adm/js/gui.js:307 msgid "Edition successfully done" msgstr "Edition erfolgreich durchgeführt" -#: static/adm/js/gui.js:310 +#: static/adm/js/gui.js:330 +msgid "of type" +msgstr "vom Typ" + +#: static/adm/js/gui.js:347 msgid "Creation successfully done" msgstr "Erstellung erfolgreich durchgeführt" -#: static/adm/js/gui.js:321 +#: static/adm/js/gui.js:357 msgid "Are you sure do you want to delete " msgstr "Bist du sicher wollen Sie löschen " -#: static/adm/js/gui.js:327 +#: static/adm/js/gui.js:363 msgid "Item deleted" msgstr "Element gelöscht" diff --git a/server/src/uds/locale/es/LC_MESSAGES/django.mo b/server/src/uds/locale/es/LC_MESSAGES/django.mo index 0b673d2cea21421d924e4f4797ab28b45afa9cc6..960e52f06b80f31b8daae325a7f09075eceb4ceb 100644 GIT binary patch delta 17366 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 delta 12484 zcmY+}3w)2||HtwByBQlZJ2@L)n~6D}&0*v;bILG>9B2E+7-JjKUITazS zuh5BDl29n&*Ma(VP)hj~DaHTw-gWu?`rnT}dtRUGK3(_cy6$`E>I=c{%^?35(PdUR zZ1F*kQwtkMInL*_JH@NladtLwoLDTza`>+G1M4SPmi{j=1i!(GcnNjr>Qxv z8P+Cmi}fAH?_|(OpkodO<65kM8?iF(#AtjMb%S$Q9?xS0{(#l+4`l34bTb|X>tQ`i z#c<3;9X}g2z(+8W`#URXq|vbnb%84wiowktCk4Y%7wU_Q*qMeJ@G4BjH!u-{TR2V~ zY>2u+8aBjXsPpGx9KMKE@g0od{?2E%;}Uix4{qr=Wv~nCLOoEG7=&Rs(eBU3X!2QD z1s9>7be(lORw94H=0{NjIE#9aYv}jVh-+o$Dg~AILOsa@td0+(o?soe#donC{*5Yq zo7Rp~69=FMItf*|2T=R>ThC%$@+(*aW7<%Ebu?{bP8f(9*)rrmXE#5};*Z!3e??7A zTSlQubV03^G)%_~jKodY2=`)R{2Fy!6r)x}<4|j2)m`(3E(jzJwi88zTJsI}lEV1*$}=u?N178fYcT;>GHyIqiUY!d|G=J{UE(S*YW4Y+itRpxIar7hxH_ z{~Ksjr(-kf$qu4UJdStZ8BD@ksKuGY($-o?#~OGy>i8L`0r^n_S&SOUv#6427ZYe!0)J$2C<@ap%_#}5>OXPLLJv0wK%(@z8AxAFpfffn0BHDejTe~ zLRa%zcSKF`Nc5`|b7}B!&MNfcY19R-p-P)_CxgMhs893&)Bp#eDv^cRn2WrjΠD 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 diff --git a/server/src/uds/locale/es/LC_MESSAGES/django.po b/server/src/uds/locale/es/LC_MESSAGES/django.po index 99a30fbe..7ab5c2f0 100644 --- a/server/src/uds/locale/es/LC_MESSAGES/django.po +++ b/server/src/uds/locale/es/LC_MESSAGES/django.po @@ -31,7 +31,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-12-08 19:29+0100\n" +"POT-Creation-Date: 2014-02-05 10:32+0100\n" "PO-Revision-Date: 2013-04-22 06:24+0200\n" "Last-Translator: \n" "Language-Team: Spanish \n" @@ -42,160 +42,409 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1)\n" "X-Generator: Lokalize 1.4\n" -#: REST/model.py:81 REST/methods/authenticators.py:56 -#: REST/methods/networks.py:51 REST/methods/osmanagers.py:52 -#: REST/methods/providers.py:57 REST/methods/transports.py:54 -#: REST/methods/users_groups.py:72 +#: REST/model.py:86 REST/methods/authenticators.py:58 +#: REST/methods/networks.py:54 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:59 REST/methods/services_pools.py:65 +#: REST/methods/transports.py:55 REST/methods/user_services.py:161 +#: REST/methods/user_services.py:189 REST/methods/users_groups.py:82 +#: templates/uds/admin/tmpl/user.html:29 templates/uds/admin/tmpl/user.html:32 msgid "Name" msgstr "Nombre" -#: REST/model.py:82 +#: REST/model.py:87 msgid "Name of this element" msgstr "Nombre de este elemento" -#: REST/model.py:88 REST/methods/authenticators.py:57 -#: REST/methods/osmanagers.py:53 REST/methods/providers.py:58 -#: REST/methods/services.py:126 REST/methods/transports.py:55 -#: REST/methods/users_groups.py:73 REST/methods/users_groups.py:108 +#: REST/model.py:93 REST/methods/authenticators.py:59 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:60 +#: REST/methods/services.py:139 REST/methods/services_pools.py:68 +#: REST/methods/transports.py:56 REST/methods/user_services.py:191 +#: REST/methods/users_groups.py:83 REST/methods/users_groups.py:190 +#: templates/uds/admin/tmpl/group.html:37 +#: templates/uds/admin/tmpl/user.html:40 msgid "Comments" msgstr "Comentarios" -#: REST/model.py:89 +#: REST/model.py:94 msgid "Comments for this element" msgstr "Comentarios para este elemento" -#: REST/model.py:97 REST/methods/authenticators.py:58 -#: REST/methods/transports.py:56 REST/methods/transports.py:69 +#: REST/model.py:102 REST/methods/authenticators.py:60 +#: REST/methods/transports.py:54 REST/methods/user_services.py:188 msgid "Priority" msgstr "Prioridad" -#: REST/model.py:98 +#: REST/model.py:103 msgid "" "Selects the priority of this element (lower number means higher priority)" msgstr "" -"Selecciona la prioridad de este elemento (menor número significa mayor prioridad)" +"Selecciona la prioridad de este elemento (menor número significa mayor " +"prioridad)" -#: REST/model.py:106 REST/methods/authenticators.py:59 -msgid "Small name" -msgstr "Nombre pequeño" +#: REST/model.py:113 +msgid "Short name" +msgstr "Nombre corto" -#: REST/model.py:107 -msgid "Small name of this element" -msgstr "Pequeño nombre de este elemento" +#: REST/model.py:114 +msgid "Short name of this element" +msgstr "Nombre corto de este elemento" -#: REST/model.py:157 +#: REST/model.py:159 msgid "Invalid Request" msgstr "Solicitud inválida" -#: REST/model.py:160 +#: REST/model.py:162 msgid "Method not found" msgstr "Método no encontrado" -#: REST/model.py:163 +#: REST/model.py:165 msgid "Item not found" msgstr "Artículo no encontrado" -#: REST/methods/authenticators.py:54 +#: REST/methods/authenticators.py:56 msgid "Current authenticators" msgstr "Autenticadores actuales" -#: REST/methods/authenticators.py:60 +#: REST/methods/authenticators.py:61 +msgid "Small name" +msgstr "Nombre pequeño" + +#: REST/methods/authenticators.py:62 #: templates/uds/admin/tmpl/authenticators.html:18 +#: templates/uds/admin/tmpl/dashboard.html:22 msgid "Users" msgstr "Usuarios" -#: REST/methods/networks.py:49 +#: REST/methods/networks.py:52 msgid "Current Networks" msgstr "Redes actuales" -#: REST/methods/networks.py:52 templates/uds/index.html:79 -#: templates/uds/html5/index.html:124 -msgid "Networks" -msgstr "Redes" +#: REST/methods/networks.py:55 +msgid "Range" +msgstr "Gama" -#: REST/methods/networks.py:53 REST/methods/osmanagers.py:54 +#: REST/methods/networks.py:56 REST/methods/osmanagers.py:57 #: REST/methods/transports.py:57 msgid "Used by" msgstr "Utilizado por" -#: REST/methods/osmanagers.py:50 +#: REST/methods/networks.py:66 +msgid "Invalid network: " +msgstr "Red no válida: " + +#: REST/methods/networks.py:73 +msgid "Network range" +msgstr "Intervalo de red" + +#: REST/methods/networks.py:74 +msgid "" +"Network range. Accepts most network definitions formats (range, subnet, " +"host, etc..." +msgstr "" +"Rango de la red. Acepta la mayoría de formatos definiciones de red (gama, " +"subred, host, etc..." + +#: REST/methods/osmanagers.py:53 msgid "Current OS Managers" msgstr "Actual OS administradores" -#: REST/methods/providers.py:53 templates/uds/admin/snippets/navbar.html:18 +#: REST/methods/osmanagers.py:75 +msgid "Can't delete an OSManager with deployed services associated" +msgstr "No se puede eliminar un OSManager con desplegados servicios asociados" + +#: REST/methods/osmanagers.py:79 +msgid "Can't modify an OSManager with deployed services associated" +msgstr "No se puede modificar un OSManager con desplegados servicios asociados" + +#: REST/methods/providers.py:55 msgid "Service providers" msgstr "Proveedores de servicios" -#: REST/methods/providers.py:59 templates/uds/index.html:51 +#: REST/methods/providers.py:61 templates/uds/index.html:51 +#: templates/uds/admin/snippets/navbar.html:18 +#: templates/uds/admin/tmpl/dashboard.html:49 +#: templates/uds/admin/tmpl/providers.html:4 +#: templates/uds/admin/tmpl/providers.html:7 #: templates/uds/admin/tmpl/providers.html:18 #: templates/uds/html5/index.html:65 msgid "Services" msgstr "Servicios" -#: REST/methods/services.py:119 +#: REST/methods/providers.py:62 +msgid "User Services" +msgstr "Servicios de usuario" + +#: REST/methods/providers.py:111 dispatchers/wyse_enterprise/views.py:254 +#: dispatchers/wyse_enterprise/views.py:257 web/errors.py:62 +msgid "Service not found" +msgstr "Servicio no hallado" + +#: REST/methods/services.py:132 #, python-brace-format msgid "Services of {0}" msgstr "Servicios de {0}" -#: REST/methods/services.py:121 +#: REST/methods/services.py:134 msgid "Current services" msgstr "Servicios actuales" -#: REST/methods/services.py:125 +#: REST/methods/services.py:138 msgid "Service name" msgstr "Nombre del servicio" -#: REST/methods/services.py:127 +#: REST/methods/services.py:140 REST/methods/user_services.py:190 msgid "Type" msgstr "Tipo" -#: REST/methods/services.py:128 templates/uds/admin/snippets/navbar.html:22 +#: REST/methods/services.py:141 REST/methods/services_pools.py:63 msgid "Deployed services" msgstr "Servicios desplegados" +#: REST/methods/services.py:142 templates/uds/admin/tmpl/dashboard.html:76 +msgid "User services" +msgstr "Servicios de usuario" + +#: REST/methods/services_pools.py:66 +msgid "Parent Service" +msgstr "Servicio de los padres" + +#: REST/methods/services_pools.py:67 REST/methods/users_groups.py:84 +#: REST/methods/users_groups.py:191 +msgid "state" +msgstr "estado" + +#: REST/methods/services_pools.py:95 +msgid "Create at least one OS Manager before creating a new service pool" +msgstr "Crear al menos un OS Manager antes de crear un nuevo grupo de servicio" + +#: REST/methods/services_pools.py:97 +msgid "Create at least a service before creating a new service pool" +msgstr "Crear al menos un servicio antes de crear un nuevo grupo de servicio" + +#: REST/methods/services_pools.py:104 +msgid "Base service" +msgstr "Servicio de base" + +#: REST/methods/services_pools.py:105 +msgid "Service used as base of this service pool" +msgstr "Servicio utilizado como base de esta piscina de servicio" + +#: REST/methods/services_pools.py:112 +msgid "OS Manager" +msgstr "OS Manager" + +#: REST/methods/services_pools.py:113 +msgid "OS Manager used as base of this service pool" +msgstr "OS Manager utilizó como base de esta piscina de servicio" + +#: REST/methods/services_pools.py:120 +msgid "Initial available services" +msgstr "Servicios disponibles iniciales" + +#: REST/methods/services_pools.py:121 +msgid "Services created initially for this service pool" +msgstr "Servicios creados inicialmente para este grupo de servicio" + +#: REST/methods/services_pools.py:127 +msgid "Services to keep in cache" +msgstr "Servicios para mantener en la memoria caché" + +#: REST/methods/services_pools.py:128 +msgid "Services keeped in cache for improved user service assignation" +msgstr "" +"Servicios keeped en caché para asignación de servicio de usuario mejorada" + +#: REST/methods/services_pools.py:134 +msgid "Services to keep in L2 cache" +msgstr "Servicios para mantener en la memoria caché L2" + +#: REST/methods/services_pools.py:135 +msgid "Services keeped in cache of level2 for improved service generation" +msgstr "" +"Servicios keeped en la memoria caché de nivel 2 para mejorar la generación " +"de servicios" + +#: REST/methods/services_pools.py:141 +msgid "Maximum number of services to provide" +msgstr "Número máximo de servicios" + +#: REST/methods/services_pools.py:142 +msgid "" +"Maximum number of service (assigned and L1 cache) that can be created for " +"this service" +msgstr "" +"Número máximo de servicio (asignado y caché L1) que pueden crearse para Este " +"servicio" + +#: REST/methods/services_pools.py:159 +msgid "Base service does not exists anymore" +msgstr "Ya no existe servicio de base" + +#: REST/methods/services_pools.py:168 +msgid "This service requires an os manager" +msgstr "Este servicio requiere un administrador de sistema operativo" + #: REST/methods/transports.py:52 msgid "Current Transports" msgstr "Transportes actuales" -#: REST/methods/transports.py:70 -msgid "Priority of this transport" -msgstr "Prioridad de este transporte" +#: REST/methods/transports.py:68 +msgid "Network access" +msgstr "Acceso a la red" -#: REST/methods/users_groups.py:65 +#: REST/methods/transports.py:69 +msgid "" +"If ACTIVE, the transport will be enabled for the selected networks.If " +"INACTIVE, trans port will be disabled for selected networks" +msgstr "" +"Si está activo, se habilitará el transporte para las redes seleccionadas.If " +"INACTIVO, Puerto trans se deshabilitará para redes seleccionadas" + +#: REST/methods/transports.py:76 templates/uds/index.html:79 +#: templates/uds/html5/index.html:124 +msgid "Networks" +msgstr "Redes" + +#: REST/methods/transports.py:77 +msgid "" +"Networks associated with this transport. If No network selected, will mean " +"\"all networks\"" +msgstr "" +"Redes asociadas con este transporte. Si no hay red seleccionada, significará " +"\"todas las redes\"" + +#: REST/methods/user_services.py:88 +#: templates/uds/admin/tmpl/services_pool.html:18 +msgid "Assigned services" +msgstr "Servicios asignados" + +#: REST/methods/user_services.py:92 REST/methods/user_services.py:128 +msgid "Creation date" +msgstr "Fecha de creación" + +#: REST/methods/user_services.py:93 REST/methods/user_services.py:129 +#: REST/methods/user_services.py:224 +msgid "Revision" +msgstr "Revisión" + +#: REST/methods/user_services.py:95 REST/methods/user_services.py:131 +msgid "Friendly name" +msgstr "Nombre descriptivo" + +#: REST/methods/user_services.py:96 REST/methods/user_services.py:132 +#: REST/methods/user_services.py:163 REST/methods/user_services.py:226 +#: templates/uds/admin/tmpl/group.html:42 +#: templates/uds/admin/tmpl/user.html:45 +msgid "State" +msgstr "Estado" + +#: REST/methods/user_services.py:97 +msgid "Owner" +msgstr "Propietario" + +#: REST/methods/user_services.py:124 +msgid "Cached services" +msgstr "Servicios de caché" + +#: REST/methods/user_services.py:133 +msgid "Cache level" +msgstr "Nivel de caché" + +#: REST/methods/user_services.py:156 +msgid "Assigned groups" +msgstr "Grupos asignados" + +#: REST/methods/user_services.py:162 templates/uds/admin/tmpl/group.html:34 +#: templates/uds/admin/tmpl/user.html:37 +msgid "comments" +msgstr "Comentarios" + +#: REST/methods/user_services.py:184 +msgid "Assigned transports" +msgstr "Transportes asignados" + +#: REST/methods/user_services.py:220 +#: templates/uds/admin/tmpl/services_pool.html:22 +msgid "Publications" +msgstr "Publicaciones" + +#: REST/methods/user_services.py:225 +msgid "Publish date" +msgstr "Fecha de publicación" + +#: REST/methods/user_services.py:227 +msgid "Reason" +msgstr "Razón" + +#: REST/methods/users_groups.py:75 #, python-brace-format msgid "Users of {0}" msgstr "Usuarios de {0}" -#: REST/methods/users_groups.py:67 +#: REST/methods/users_groups.py:77 msgid "Current users" msgstr "Usuarios actuales" -#: REST/methods/users_groups.py:71 REST/methods/users_groups.py:107 -msgid "User Id" -msgstr "Id de usuario" +#: REST/methods/users_groups.py:81 +#: auths/ActiveDirectory_enterprise/Authenticator.py:48 +#: auths/EDirectory_enterprise/Authenticator.py:77 +#: auths/RegexLdap/Authenticator.py:72 auths/SimpleLDAP/Authenticator.py:73 +#: services/HyperV_enterprise/HyperVClusterProvider.py:91 +#: services/HyperV_enterprise/HyperVProvider.py:83 +#: services/OVirt/OVirtProvider.py:93 +#: services/Vmware_enterprise/ServiceProviderVC.py:30 +#: templates/uds/admin/tmpl/user.html:16 transports/HTML5RDP/HTML5RDP.py:64 +#: transports/NX/NXTransport.py:61 transports/NX/TSNXTransport.py:66 +#: transports/RDP/RDPTransport.py:59 transports/RDP/TSRDPTransport.py:63 +#: transports/RGS-enterprise/RGSTransport.py:42 +#: transports/RGS-enterprise/TRGSTransport.py:47 +#: transports/TSNX/TSNXTransport.py:66 web/forms/LoginForm.py:69 +msgid "Username" +msgstr "Usuario" -#: REST/methods/users_groups.py:74 REST/methods/users_groups.py:109 -msgid "state" -msgstr "estado" - -#: REST/methods/users_groups.py:75 +#: REST/methods/users_groups.py:85 msgid "Last access" msgstr "Último acceso" -#: REST/methods/users_groups.py:101 +#: REST/methods/users_groups.py:132 REST/methods/users_groups.py:244 +msgid "User already exists (duplicate key error)" +msgstr "Usuario ya existe (error de clave duplicada)" + +#: REST/methods/users_groups.py:183 #, python-brace-format msgid "Groups of {0}" msgstr "Grupos de {0}" -#: REST/methods/users_groups.py:103 +#: REST/methods/users_groups.py:185 msgid "Current groups" msgstr "Grupos actuales" -#: admin/views.py:55 admin/views.py:63 admin/views.py:77 web/views.py:422 +#: REST/methods/users_groups.py:189 REST/methods/users_groups.py:196 +#: auths/ActiveDirectory_enterprise/Authenticator.py:50 +#: auths/EDirectory_enterprise/Authenticator.py:79 +#: auths/RegexLdap/Authenticator.py:74 auths/SAML_enterprise/SAML.py:114 +#: auths/SimpleLDAP/Authenticator.py:75 +#: templates/uds/admin/tmpl/pool_add_group.html:17 +msgid "Group" +msgstr "Grupo" + +#: REST/methods/users_groups.py:196 +msgid "UDS Group" +msgstr "Grupo de UDS" + +#: REST/methods/users_groups.py:197 +msgid "Meta group" +msgstr "Grupo meta" + +#: REST/methods/users_groups.py:197 +msgid "UDS Meta Group" +msgstr "UDS Meta Group" + +#: admin/views.py:51 admin/views.py:59 admin/views.py:73 web/views.py:425 msgid "Forbidden" msgstr "Prohibido" -#: admin/views.py:70 +#: admin/views.py:66 msgid "requested a template that do not exists" msgstr "solicitó una plantilla que no existe" @@ -256,9 +505,9 @@ msgstr "" #: services/HyperV_enterprise/HyperVProvider.py:84 #: services/OVirt/OVirtProvider.py:94 services/Sample/SampleService.py:131 #: services/Vmware_enterprise/ServiceProviderVC.py:31 -#: transports/HTML5RDP/HTML5RDP.py:65 transports/NX/NXTransport.py:62 -#: transports/NX/TSNXTransport.py:67 transports/RDP/RDPTransport.py:60 -#: transports/RDP/TSRDPTransport.py:64 +#: templates/uds/admin/tmpl/user.html:78 transports/HTML5RDP/HTML5RDP.py:65 +#: transports/NX/NXTransport.py:62 transports/NX/TSNXTransport.py:67 +#: transports/RDP/RDPTransport.py:60 transports/RDP/TSRDPTransport.py:64 #: transports/RGS-enterprise/RGSTransport.py:43 #: transports/RGS-enterprise/TRGSTransport.py:48 #: transports/TSNX/TSNXTransport.py:67 web/forms/LoginForm.py:70 @@ -293,31 +542,8 @@ msgstr "Autenticador de Active Directory" msgid "Authenticate against Active Directory" msgstr "Autenticar con Active Directory" -#: auths/ActiveDirectory_enterprise/Authenticator.py:48 -#: auths/EDirectory_enterprise/Authenticator.py:77 -#: auths/RegexLdap/Authenticator.py:72 auths/SimpleLDAP/Authenticator.py:73 -#: services/HyperV_enterprise/HyperVClusterProvider.py:91 -#: services/HyperV_enterprise/HyperVProvider.py:83 -#: services/OVirt/OVirtProvider.py:93 -#: services/Vmware_enterprise/ServiceProviderVC.py:30 -#: transports/HTML5RDP/HTML5RDP.py:64 transports/NX/NXTransport.py:61 -#: transports/NX/TSNXTransport.py:66 transports/RDP/RDPTransport.py:59 -#: transports/RDP/TSRDPTransport.py:63 -#: transports/RGS-enterprise/RGSTransport.py:42 -#: transports/RGS-enterprise/TRGSTransport.py:47 -#: transports/TSNX/TSNXTransport.py:66 web/forms/LoginForm.py:69 -msgid "Username" -msgstr "Usuario" - -#: auths/ActiveDirectory_enterprise/Authenticator.py:50 -#: auths/EDirectory_enterprise/Authenticator.py:79 -#: auths/RegexLdap/Authenticator.py:74 auths/SAML_enterprise/SAML.py:114 -#: auths/SimpleLDAP/Authenticator.py:75 -msgid "Group" -msgstr "Grupo" - #: auths/ActiveDirectory_enterprise/Authenticator.py:67 -#: auths/ActiveDirectory_enterprise/Authenticator.py:442 +#: auths/ActiveDirectory_enterprise/Authenticator.py:444 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "" "Debe especificar el nombre de usuario en el formulario USERNAME@DOMAIN.DOM" @@ -327,7 +553,7 @@ msgid "Active directory connection error: " msgstr "Error de conexión del directorio activo: " #: auths/ActiveDirectory_enterprise/Authenticator.py:344 -#: auths/ActiveDirectory_enterprise/Authenticator.py:390 +#: auths/ActiveDirectory_enterprise/Authenticator.py:392 #: auths/EDirectory_enterprise/Authenticator.py:243 #: auths/EDirectory_enterprise/Authenticator.py:286 #: auths/RegexLdap/Authenticator.py:303 auths/RegexLdap/Authenticator.py:346 @@ -340,33 +566,34 @@ msgstr "Nombre de usuario no hallado" msgid "Group not found" msgstr "Grupo no hallado" -#: auths/ActiveDirectory_enterprise/Authenticator.py:410 -#: auths/ActiveDirectory_enterprise/Authenticator.py:428 +#: auths/ActiveDirectory_enterprise/Authenticator.py:412 +#: auths/ActiveDirectory_enterprise/Authenticator.py:430 #: auths/EDirectory_enterprise/Authenticator.py:303 #: auths/RegexLdap/Authenticator.py:367 auths/SimpleLDAP/Authenticator.py:328 #: auths/SimpleLDAP/Authenticator.py:342 msgid "Too many results, be more specific" msgstr "Demasiados resultados, sea más específico" -#: auths/ActiveDirectory_enterprise/Authenticator.py:451 +#: auths/ActiveDirectory_enterprise/Authenticator.py:453 msgid "Domain seems to be incorrect, please check it" msgstr "Dominio parece ser incorrecta, por favor compruebe lo" -#: auths/ActiveDirectory_enterprise/Authenticator.py:456 +#: auths/ActiveDirectory_enterprise/Authenticator.py:458 msgid "Server does not seem an Active Directory (do not have user objects)" -msgstr "Servidor no parece un Active Directory (no tienen los objetos de usuario)" +msgstr "" +"Servidor no parece un Active Directory (no tienen los objetos de usuario)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:464 +#: auths/ActiveDirectory_enterprise/Authenticator.py:466 msgid "Server does not seem an Active Directory (no not have group objects)" msgstr "Servidor no parece un Active Directory (no tienen objetos de grupo)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:472 +#: auths/ActiveDirectory_enterprise/Authenticator.py:474 msgid "" "Server does not seem an Active Directory (do not have any user nor groups)" msgstr "" "Servidor no parece un Active Directory (no tienen ningún usuario ni grupos)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:477 +#: auths/ActiveDirectory_enterprise/Authenticator.py:479 #: auths/EDirectory_enterprise/Authenticator.py:358 #: auths/RegexLdap/Authenticator.py:428 auths/SimpleLDAP/Authenticator.py:423 msgid "Connection params seem correct, test was succesfully executed" @@ -710,6 +937,9 @@ msgstr "Grupo falso" #: auths/Sample/SampleAuth.py:111 #: templates/uds/admin/tmpl/authenticators.html:19 +#: templates/uds/admin/tmpl/group.html:53 +#: templates/uds/admin/tmpl/services_pool.html:20 +#: templates/uds/admin/tmpl/user.html:85 templates/uds/admin/tmpl/user.html:99 msgid "Groups" msgstr "Grupos" @@ -797,7 +1027,7 @@ msgstr "Base autenticador" msgid "User name" msgstr "Nombre de usuario" -#: core/auths/BaseAuthenticator.py:131 +#: core/auths/BaseAuthenticator.py:131 templates/uds/admin/tmpl/group.html:19 msgid "Group name" msgstr "Nombre del grupo" @@ -805,6 +1035,10 @@ msgstr "Nombre del grupo" msgid "Users can't be created inside this authenticator" msgstr "Los usuarios no pueden ser creados dentro de esta autenticador" +#: core/auths/auth.py:61 +msgid "System Administrator" +msgstr "Administrador de sistemas" + #: core/managers/PublicationManager.py:181 msgid "" "Already publishing. Wait for previous publication to finish and try again" @@ -852,17 +1086,17 @@ msgstr "24 bits" msgid "32 bits" msgstr "32 bits" -#: core/managers/UserServiceManager.py:322 +#: core/managers/UserServiceManager.py:314 msgid "Cancel requested for a non running operation, doing remove instead" msgstr "" "Cancelación solicitada para una operación no corriente, haciendo eliminar en " "su lugar" -#: core/managers/UserServiceManager.py:343 +#: core/managers/UserServiceManager.py:335 msgid "Can't remove a non active element" msgstr "No se puede eliminar un elemento que no está activo" -#: core/managers/UserServiceManager.py:356 +#: core/managers/UserServiceManager.py:348 #, python-brace-format msgid "Can't remove nor cancel {0} cause its states doesn't allows it" msgstr "No se puede eliminar o cancelar {0} porque sus estados no lo permiten" @@ -900,7 +1134,7 @@ msgstr "Activo" msgid "Inactive" msgstr "Inactivo" -#: core/util/State.py:60 +#: core/util/State.py:60 templates/uds/admin/tmpl/user.html:50 msgid "Blocked" msgstr "Bloqueado" @@ -1016,11 +1250,6 @@ msgstr "Solicitud inválida" msgid "Invalid credentials used" msgstr "Credenciales no válidas usadas" -#: dispatchers/wyse_enterprise/views.py:254 -#: dispatchers/wyse_enterprise/views.py:257 web/errors.py:62 -msgid "Service not found" -msgstr "Servicio no hallado" - #: dispatchers/wyse_enterprise/views.py:271 web/errors.py:61 msgid "Transport not found" msgstr "Transporte no hallado" @@ -1428,12 +1657,12 @@ msgid "HyperV Linked Clone (Experimental)" msgstr "HyperV vinculado clon (Experimental)" #: services/HyperV_enterprise/HyperVProvider.py:62 -msgid "HyperV Platform Provider" -msgstr "Proveedor de plataformas HyperV" +msgid "HyperV Platform Provider (experimental)" +msgstr "Proveedor de plataforma HyperV (experimental)" #: services/HyperV_enterprise/HyperVProvider.py:66 -msgid "HyperV platform service provider" -msgstr "Proveedor de servicios de plataforma HyperV" +msgid "HyperV platform service provider (experimental)" +msgstr "Proveedor de servicios de plataforma HyperV (experimental)" #: services/OVirt/OVirtLinkedService.py:56 msgid "oVirt Linked Clone (Experimental)" @@ -1796,7 +2025,8 @@ msgstr "y reinicie el navegador" msgid "Ip" msgstr "IP" -#: templates/uds/index.html:80 templates/uds/html5/index.html:125 +#: templates/uds/index.html:80 templates/uds/admin/tmpl/services_pool.html:21 +#: templates/uds/html5/index.html:125 msgid "Transports" msgstr "Transportes" @@ -1852,35 +2082,90 @@ msgid "Connectivity" msgstr "Conectividad" #: templates/uds/admin/snippets/navbar.html:26 +#: templates/uds/admin/tmpl/configuration.html:7 msgid "Configuration" msgstr "Configuración" #: templates/uds/admin/snippets/navbar.html:27 -msgid "Clear cache" -msgstr "Caché de clara" +msgid "Flush cache" +msgstr "Vaciar caché" -#: templates/uds/admin/snippets/navbar.html:57 +#: templates/uds/admin/snippets/navbar.html:56 msgid "Exit" msgstr "Salida" -#: templates/uds/admin/snippets/navbar.html:58 +#: templates/uds/admin/snippets/navbar.html:57 msgid "Logout" msgstr "Logout" #: templates/uds/admin/tmpl/authenticators.html:20 #: templates/uds/admin/tmpl/providers.html:19 +#: templates/uds/admin/tmpl/services_pool.html:23 msgid "Logs" msgstr "Registros" +#: templates/uds/admin/tmpl/configuration.html:4 +msgid "UDS Configuration" +msgstr "Configuración de UDS" + +#: templates/uds/admin/tmpl/configuration.html:58 +#: templates/uds/admin/tmpl/comp/modal.html:26 +msgid "Save" +msgstr "Salvar" + #: templates/uds/admin/tmpl/connectivity.html:4 -#: templates/uds/admin/tmpl/dashboard.html:4 +#: templates/uds/admin/tmpl/dashboard.html:5 msgid "overview" msgstr "Resumen" -#: templates/uds/admin/tmpl/providers.html:4 -#: templates/uds/admin/tmpl/providers.html:7 -msgid "Providers" -msgstr "Proveedores" +#: templates/uds/admin/tmpl/dashboard.html:30 +msgid "View Authenticators" +msgstr "Autenticadores de vista" + +#: templates/uds/admin/tmpl/dashboard.html:57 +msgid "View services" +msgstr "Servicios de vista" + +#: templates/uds/admin/tmpl/dashboard.html:84 +#: templates/uds/admin/tmpl/dashboard.html:111 +msgid "View services pools" +msgstr "Ver servicios de piscinas" + +#: templates/uds/admin/tmpl/dashboard.html:103 +msgid "Restrained services pools" +msgstr "Servicios refrenadas piscinas" + +#: templates/uds/admin/tmpl/dashboard.html:127 +msgid "Assigned services graph" +msgstr "Gráfico de servicios asignados" + +#: templates/uds/admin/tmpl/dashboard.html:139 +msgid "Used services graph" +msgstr "Gráfico de servicios usados" + +#: templates/uds/admin/tmpl/group.html:25 +#: templates/uds/admin/tmpl/search.html:9 +#: templates/uds/admin/tmpl/user.html:21 +msgid "Search" +msgstr "Búsqueda de" + +#: templates/uds/admin/tmpl/group.html:45 +#: templates/uds/admin/tmpl/user.html:48 +msgid "Enabled" +msgstr "Habilitado" + +#: templates/uds/admin/tmpl/group.html:46 +#: templates/uds/admin/tmpl/user.html:49 +msgid "Disabled" +msgstr "Discapacitados" + +#: templates/uds/admin/tmpl/pool_add_group.html:5 web/forms/LoginForm.py:71 +msgid "Authenticator" +msgstr "Autenticador" + +#: templates/uds/admin/tmpl/pool_add_transport.html:5 +msgid "Transport" +msgstr "Transporte" #: templates/uds/admin/tmpl/request_failed.html:4 msgid "Error on request" @@ -1888,29 +2173,55 @@ msgstr "Error en la solicitud" #: templates/uds/admin/tmpl/request_failed.html:7 msgid "There was an error requesting data from server, please, try again" -msgstr "Hubo un error solicitando datos del servidor, por favor, pruebe otra vez" +msgstr "" +"Hubo un error solicitando datos del servidor, por favor, pruebe otra vez" #: templates/uds/admin/tmpl/request_failed.html:9 #: templates/uds/html5/snippets/navbar.html:44 msgid "Dashboard" msgstr "Tablero de instrumentos" -#: templates/uds/admin/tmpl/comp/modal.html:19 -msgid "Close" -msgstr "Cerrar" +#: templates/uds/admin/tmpl/services_pool.html:4 +msgid "Services Pools" +msgstr "Servicios de piscinas" -#: templates/uds/admin/tmpl/comp/modal.html:26 -msgid "Save" -msgstr "Salvar" +#: templates/uds/admin/tmpl/services_pool.html:7 +msgid "Deployed Services" +msgstr "Servicios desplegados" -#: templates/uds/admin/tmpl/fld/checkbox.html:4 +#: templates/uds/admin/tmpl/services_pool.html:19 +msgid "Cache" +msgstr "Caché" + +#: templates/uds/admin/tmpl/user.html:56 +msgid "Staff member" +msgstr "Miembro del personal" + +#: templates/uds/admin/tmpl/user.html:58 templates/uds/admin/tmpl/user.html:68 +#: templates/uds/admin/tmpl/fld/checkbox.html:5 msgid "Yes" msgstr "Sí" -#: templates/uds/admin/tmpl/fld/checkbox.html:4 +#: templates/uds/admin/tmpl/user.html:59 templates/uds/admin/tmpl/user.html:68 +#: templates/uds/admin/tmpl/fld/checkbox.html:5 msgid "No" msgstr "No" +#: templates/uds/admin/tmpl/user.html:66 +#: templates/uds/snippets/admin_user.html:4 +msgid "Admin" +msgstr "Admin" + +#: templates/uds/admin/tmpl/user.html:87 +#: templates/uds/admin/tmpl/user.html:101 +#, python-brace-format +msgid "{0} of {1} selected" +msgstr "{0} de {1} seleccionado" + +#: templates/uds/admin/tmpl/comp/modal.html:19 +msgid "Close" +msgstr "Cerrar" + #: templates/uds/admin/tmpl/fld/editlist_popup.html:5 msgid "Current list" msgstr "Lista actualizada" @@ -2035,10 +2346,6 @@ msgstr "" "moderno HTML5 navegador como Firefox, Chrome, Opera... (IE debe ser 10 o " "mejor)" -#: templates/uds/snippets/admin_user.html:4 -msgid "Admin" -msgstr "Admin" - #: templates/uds/snippets/lang.html:9 msgid "Language" msgstr "Idioma" @@ -2523,7 +2830,7 @@ msgstr "" "Su navegador no es compatible. Por favor, actualice a un navegador moderno " "de HTML5 como Firefox o Chrome" -#: web/views.py:401 +#: web/views.py:404 msgid "Authenticator do not provides information" msgstr "El autenticador no proporciona información alguna" @@ -2535,10 +2842,6 @@ msgstr "Seleccione autenticador" msgid "authenticator" msgstr "autenticador" -#: web/forms/LoginForm.py:71 -msgid "Authenticator" -msgstr "Autenticador" - #: xmlrpc/auths/AdminAuth.py:115 msgid "Credentials no longer valid" msgstr "Las credenciales ya no son válidas" diff --git a/server/src/uds/locale/es/LC_MESSAGES/djangojs.mo b/server/src/uds/locale/es/LC_MESSAGES/djangojs.mo index d734c0e7e97b92cc0438ad4f49f5b7f4db7a9cce..0e3a175418ef018826e4be692c40e1cc961b1fa9 100644 GIT binary patch literal 9268 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 literal 6402 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 LidItm+N%Ep$Z)W6 diff --git a/server/src/uds/locale/es/LC_MESSAGES/djangojs.po b/server/src/uds/locale/es/LC_MESSAGES/djangojs.po index a83ec826..ddb65871 100644 --- a/server/src/uds/locale/es/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/es/LC_MESSAGES/djangojs.po @@ -1,22 +1,21 @@ -# 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 +# , 2014. msgid "" msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" +"Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-12-08 19:29+0100\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"Language: \n" +"POT-Creation-Date: 2014-02-05 10:32+0100\n" +"PO-Revision-Date: 2014-02-05 10:29+0100\n" +"Last-Translator: \n" +"Language-Team: American English \n" +"Language: en_US\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" +"X-Generator: Lokalize 1.5\n" #: static/adm/js/api-tools.js:31 msgid "Sunday" @@ -96,149 +95,361 @@ msgstr "Diciembre" #: static/adm/js/dataTables.bootstrap.js:6 static/adm/js/gui.js:19 msgid "_MENU_ records per page" -msgstr "Registros _MENU_ por página" +msgstr "_MENU_ Registros por página" -#: static/adm/js/gui-definition.js:38 -msgid "Test" -msgstr "Prueba" - -#: static/adm/js/gui-definition.js:140 -msgid "Edit service" -msgstr "Editar servicio" - -#: static/adm/js/gui-definition.js:140 -msgid "Error processing service" -msgstr "Servicio de procesamiento de errores" - -#: static/adm/js/gui-definition.js:141 -msgid "New service" -msgstr "Nuevo servicio" - -#: static/adm/js/gui-definition.js:141 -msgid "Error creating service" -msgstr "Error al crear el servicio" - -#: static/adm/js/gui-definition.js:142 -msgid "Delete service" -msgstr "Eliminar servicio" - -#: static/adm/js/gui-definition.js:142 -msgid "Error deleting service" -msgstr "Error eliminar servicio" - -#: static/adm/js/gui-definition.js:157 -msgid "New provider" -msgstr "Nuevo proveedor" - -#: static/adm/js/gui-definition.js:157 -msgid "Error creating provider" -msgstr "Proveedor creando error" - -#: static/adm/js/gui-definition.js:158 -msgid "Edit provider" -msgstr "Editar proveedor" - -#: static/adm/js/gui-definition.js:158 -msgid "Error processing provider" -msgstr "Proveedor de procesamiento de error" - -#: static/adm/js/gui-definition.js:159 -msgid "Delete provider" -msgstr "Eliminar proveedor" - -#: static/adm/js/gui-definition.js:159 -msgid "Error deleting provider" -msgstr "Proveedor de eliminación de errores" - -#: static/adm/js/gui-definition.js:177 +#: static/adm/js/gui-d-authenticators.js:10 msgid "Test authenticator" msgstr "Autenticador de prueba" -#: static/adm/js/gui-definition.js:295 +#: static/adm/js/gui-d-authenticators.js:52 +msgid "Search error" +msgstr "Error en la búsqueda" + +#: static/adm/js/gui-d-authenticators.js:60 +msgid "Accept" +msgstr "Aceptar" + +#: static/adm/js/gui-d-authenticators.js:153 +msgid "Edit group" +msgstr "Editar grupo" + +#: static/adm/js/gui-d-authenticators.js:175 +#: static/adm/js/gui-d-authenticators.js:216 +msgid "Group saved" +msgstr "Grupo guardado" + +#: static/adm/js/gui-d-authenticators.js:196 +msgid "New group" +msgstr "Nuevo grupo" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Search groups" +msgstr "Buscar grupos" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Group" +msgstr "Grupo" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Groups found" +msgstr "Grupos encontrados" + +#: static/adm/js/gui-d-authenticators.js:217 +msgid "Group saving error" +msgstr "Grupo salvando error" + +#: static/adm/js/gui-d-authenticators.js:231 +msgid "Delete group" +msgstr "Borrar grupo" + +#: static/adm/js/gui-d-authenticators.js:231 +msgid "Group deletion error" +msgstr "Grupo eliminación error" + +#: static/adm/js/gui-d-authenticators.js:279 +msgid "Edit user" +msgstr "Editar usuario" + +#: static/adm/js/gui-d-authenticators.js:313 +#: static/adm/js/gui-d-authenticators.js:348 +msgid "User saved" +msgstr "Usuario guardado" + +#: static/adm/js/gui-d-authenticators.js:314 +#: static/adm/js/gui-d-authenticators.js:349 +msgid "User saving error" +msgstr "Usuario error de ahorro" + +#: static/adm/js/gui-d-authenticators.js:325 +msgid "New user" +msgstr "Nuevo usuario" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "Search users" +msgstr "Buscar usuarios" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "User" +msgstr "Usuario" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "Users found" +msgstr "Usuarios encontrados" + +#: static/adm/js/gui-d-authenticators.js:354 +msgid "Delete user" +msgstr "Eliminar usuario" + +#: static/adm/js/gui-d-authenticators.js:354 +msgid "User deletion error" +msgstr "Error de borrado de usuario" + +#: static/adm/js/gui-d-authenticators.js:371 msgid "New authenticator" msgstr "Nuevo autenticador" -#: static/adm/js/gui-definition.js:295 -msgid "Error creating authenticator" -msgstr "Autenticador creando error" +#: static/adm/js/gui-d-authenticators.js:371 +msgid "Authenticator creation error" +msgstr "Error de creación de autenticador" -#: static/adm/js/gui-definition.js:296 +#: static/adm/js/gui-d-authenticators.js:372 msgid "Edit authenticator" msgstr "Editar autenticador" -#: static/adm/js/gui-definition.js:296 -msgid "Error processing authenticator" -msgstr "Procesamiento de autenticador de error" +#: static/adm/js/gui-d-authenticators.js:372 +msgid "Authenticator saving error" +msgstr "Error al guardar autenticador" -#: static/adm/js/gui-definition.js:297 +#: static/adm/js/gui-d-authenticators.js:373 msgid "Delete authenticator" msgstr "Eliminar autenticador" -#: static/adm/js/gui-definition.js:297 -msgid "Error deleting authenticator" -msgstr "Autenticador eliminar error" +#: static/adm/js/gui-d-authenticators.js:373 +msgid "Authenticator deletion error" +msgstr "Error en la eliminación del autenticador" -#: static/adm/js/gui-definition.js:363 -msgid "Edit transport" -msgstr "Editar transporte" +#: static/adm/js/gui-d-config.js:42 +msgid "Configuration saved" +msgstr "Configuración guardada" -#: static/adm/js/gui-definition.js:370 static/adm/js/gui-definition.js.c:405 -msgid "Error creating transport" -msgstr "Error al crear el transporte" - -#: static/adm/js/gui-definition.js:388 -msgid "Available for networks" -msgstr "Disponible para redes" - -#: static/adm/js/gui-definition.js:389 -msgid "Select networks that will see this transport" -msgstr "Seleccione redes que verán este transporte" - -#: static/adm/js/gui-definition.js:390 -msgid "Transport active for selected networks" -msgstr "Transporte activo para redes seleccionadas" - -#: static/adm/js/gui-definition.js:391 -msgid "" -"If active, transport will only be available on selected networks. If " -"inactive, transport will be available form any net EXCEPT selected networks" -msgstr "" -"Si está activo, transporte sólo estará disponible en las redes. If " -"inactivo, transporte estará disponible forma cualquiera neto excepto redes seleccionadas" - -#: static/adm/js/gui-definition.js:397 +#: static/adm/js/gui-d-connectivity.js:20 msgid "New transport" msgstr "Nuevo transporte" -#: static/adm/js/gui-definition.js:414 +#: static/adm/js/gui-d-connectivity.js:20 +msgid "Transport creation error" +msgstr "Error en creación de transporte" + +#: static/adm/js/gui-d-connectivity.js:21 +msgid "Edit transport" +msgstr "Editar transporte" + +#: static/adm/js/gui-d-connectivity.js:21 +msgid "Transport saving error" +msgstr "Error guardando transporte" + +#: static/adm/js/gui-d-connectivity.js:22 +msgid "Delete transport" +msgstr "Eliminar transporte" + +#: static/adm/js/gui-d-connectivity.js:22 +msgid "Transport deletion error" +msgstr "Error en la eliminación del transporte" + +#: static/adm/js/gui-d-connectivity.js:28 +msgid "New network" +msgstr "Nueva red" + +#: static/adm/js/gui-d-connectivity.js:28 +msgid "Network creation error" +msgstr "Error de creación de la red" + +#: static/adm/js/gui-d-connectivity.js:29 +msgid "Edit network" +msgstr "Editar red" + +#: static/adm/js/gui-d-connectivity.js:29 +msgid "Network saving error" +msgstr "Error guardando la red" + +#: static/adm/js/gui-d-connectivity.js:30 +msgid "Delete network" +msgstr "Eliminar red" + +#: static/adm/js/gui-d-connectivity.js:30 +msgid "Network deletion error" +msgstr "Error de eliminación de la red" + +#: static/adm/js/gui-d-osmanagers.js:13 +msgid "New OSManager" +msgstr "Nuevo OSManager" + +#: static/adm/js/gui-d-osmanagers.js:13 +msgid "OSManager creation error" +msgstr "Error de creación del OSManager" + +#: static/adm/js/gui-d-osmanagers.js:14 +msgid "Edit OSManager" +msgstr "Editar OSManager" + +#: static/adm/js/gui-d-osmanagers.js:14 +msgid "OSManager saving error" +msgstr "Error guardando OSManager" + +#: static/adm/js/gui-d-osmanagers.js:15 +msgid "Delete OSManager" +msgstr "Eliminar OSManager" + +#: static/adm/js/gui-d-osmanagers.js:15 +msgid "OSManager deletion error" +msgstr "Error de eliminación OSManager" + +#: static/adm/js/gui-d-services.js:9 static/adm/js/gui-d-servicespools.js:120 +msgid "Test" +msgstr "Prueba" + +#: static/adm/js/gui-d-services.js:111 +msgid "Edit service" +msgstr "Editar servicio" + +#: static/adm/js/gui-d-services.js:111 +msgid "Service creation error" +msgstr "Error de creación de servicio" + +#: static/adm/js/gui-d-services.js:112 +msgid "New service" +msgstr "Nuevo servicio" + +#: static/adm/js/gui-d-services.js:112 +msgid "Service saving error" +msgstr "Error guardando servicio" + +#: static/adm/js/gui-d-services.js:113 +msgid "Delete service" +msgstr "Eliminar servicio" + +#: static/adm/js/gui-d-services.js:113 +msgid "Service deletion error" +msgstr "Error eliminando servicio" + +#: static/adm/js/gui-d-services.js:128 +msgid "New services provider" +msgstr "Nuevo proveedor de servicios" + +#: static/adm/js/gui-d-services.js:128 +msgid "Services provider creation error" +msgstr "Error en la creación del proveedor de servicios" + +#: static/adm/js/gui-d-services.js:129 +msgid "Edit services provider" +msgstr "Editar proveedor de servicios" + +#: static/adm/js/gui-d-services.js:129 +msgid "Services Provider saving error" +msgstr "Error guardando proveedor de servicios" + +#: static/adm/js/gui-d-services.js:130 +msgid "Delete services provider" +msgstr "Eliminar proveedor de servicios" + +#: static/adm/js/gui-d-services.js:130 +msgid "Services Provider deletion error" +msgstr "Error de eliminación de proveedor de servicios" + +#: static/adm/js/gui-d-servicespools.js:136 +msgid "Error processing deployed service" +msgstr "Servicio de procesamiento desplegado error" + +#: static/adm/js/gui-d-servicespools.js:191 +msgid "Add group" +msgstr "Agregar grupo" + +#: static/adm/js/gui-d-servicespools.js:215 +msgid "You must provide authenticator and group" +msgstr "Usted debe proporcionar autenticador y grupo" + +#: static/adm/js/gui-d-servicespools.js:230 +msgid "Remove group from service pool" +msgstr "Retire el grupo de servicio piscina" + +#: static/adm/js/gui-d-servicespools.js:230 +msgid "Error removing group" +msgstr "Grupo quitar error" + +#: static/adm/js/gui-d-servicespools.js:281 +msgid "Add transport" +msgstr "Añadir transporte" + +#: static/adm/js/gui-d-servicespools.js:288 +msgid "You must provide a transport" +msgstr "Usted debe proporcionar un transporte" + +#: static/adm/js/gui-d-servicespools.js:303 +msgid "Remove transport from service pool" +msgstr "Retire el transporte de servicio piscina" + +#: static/adm/js/gui-d-servicespools.js:303 msgid "Error removing transport" msgstr "Error quitar transporte" -#: static/adm/js/gui-definition.js:432 +#: static/adm/js/gui-d-servicespools.js:328 +msgid "Cancel" +msgstr "Cancelar" + +#: static/adm/js/gui-d-servicespools.js:349 +msgid "Publication failed" +msgstr "Publicación fallado" + +#: static/adm/js/gui-d-servicespools.js:379 +msgid "Restrained" +msgstr "Refrenado" + +#: static/adm/js/gui-d-servicespools.js:387 +msgid "unknown (needs reload)" +msgstr "desconocido (necesita recargar)" + +#: static/adm/js/gui-d-servicespools.js:391 +msgid "New service pool" +msgstr "Nuevo grupo de servicio" + +#: static/adm/js/gui-d-servicespools.js:391 +msgid "Error creating service pool" +msgstr "Piscina de servicio creando error" + +#: static/adm/js/gui-d-servicespools.js:398 +msgid "Publish on creation" +msgstr "Publicar en creación" + +#: static/adm/js/gui-d-servicespools.js:399 +msgid "" +"If selected, will initiate the publication on service inmediatly pool after " +"creation" +msgstr "" +"Si se selecciona, se iniciará la publicación sobre la piscina de servicio " +"inmediatamente después de creación" + +#: static/adm/js/gui-d-servicespools.js:410 static/adm/js/gui.js:41 +msgid "Edit" +msgstr "Editar" + +#: static/adm/js/gui-d-servicespools.js:410 +msgid "saving error" +msgstr "error de ahorro" + +#: static/adm/js/gui-d-servicespools.js:411 static/adm/js/gui.js:45 +#: static/adm/js/gui.js.c:358 +msgid "Delete" +msgstr "Borrar" + +#: static/adm/js/gui-d-servicespools.js:411 +msgid "deletion error" +msgstr "error de eliminación" + +#: static/adm/js/gui-definition.js:11 msgid "Cache" msgstr "Caché" -#: static/adm/js/gui-definition.js:432 +#: static/adm/js/gui-definition.js:11 msgid "Cache has been flushed" msgstr "Caché ha sido volcada" -#: static/adm/js/gui-element.js:471 +#: static/adm/js/gui-element.js:557 msgid "Date" msgstr "Fecha" -#: static/adm/js/gui-element.js:478 +#: static/adm/js/gui-element.js:566 msgid "level" msgstr "nivel" -#: static/adm/js/gui-element.js:486 +#: static/adm/js/gui-element.js:574 msgid "source" msgstr "fuente" -#: static/adm/js/gui-element.js:493 +#: static/adm/js/gui-element.js:581 msgid "message" msgstr "Mensaje" -#: static/adm/js/gui-element.js:499 +#: static/adm/js/gui-element.js:587 msgid "Logs" msgstr "Registros" @@ -270,124 +481,108 @@ msgstr "Por favor espere, procesando" msgid "Filter" msgstr "Filtro" -#: static/adm/js/gui.js:28 -msgid "First" -msgstr "Primero" - -#: static/adm/js/gui.js:29 -msgid "Last" -msgstr "Duran" - #: static/adm/js/gui.js:37 msgid "New" msgstr "Nuevo" -#: static/adm/js/gui.js:41 -msgid "Edit" -msgstr "Editar" - -#: static/adm/js/gui.js:45 static/adm/js/gui.js.c:322 -msgid "Delete" -msgstr "Borrar" - #: static/adm/js/gui.js:49 msgid "Xls" msgstr "XLS" -#: static/adm/js/gui.js:111 +#: static/adm/js/gui.js:123 msgid "Message" msgstr "Mensaje" -#: static/adm/js/gui.js:133 -msgid "Deployed services" -msgstr "Servicios desplegados" - -#: static/adm/js/gui.js:207 +#: static/adm/js/gui.js:217 msgid "This field is required." msgstr "Este campo es requerido." -#: static/adm/js/gui.js:208 +#: static/adm/js/gui.js:218 msgid "Please fix this field." msgstr "Por favor arreglar este campo." -#: static/adm/js/gui.js:209 +#: static/adm/js/gui.js:219 msgid "Please enter a valid email address." msgstr "Introduzca una dirección de correo electrónico válida." -#: static/adm/js/gui.js:210 +#: static/adm/js/gui.js:220 msgid "Please enter a valid URL." msgstr "Por favor, introduzca una URL válida." -#: static/adm/js/gui.js:211 +#: static/adm/js/gui.js:221 msgid "Please enter a valid date." msgstr "Por favor, introduzca una fecha válida." -#: static/adm/js/gui.js:212 +#: static/adm/js/gui.js:222 msgid "Please enter a valid date (ISO)." msgstr "Por favor, introduzca una fecha válida (ISO)." -#: static/adm/js/gui.js:213 +#: static/adm/js/gui.js:223 msgid "Please enter a valid number." msgstr "Por favor, introduzca un número válido." -#: static/adm/js/gui.js:214 +#: static/adm/js/gui.js:224 msgid "Please enter only digits." msgstr "Introduce sólo dígitos." -#: static/adm/js/gui.js:215 +#: static/adm/js/gui.js:225 msgid "Please enter a valid credit card number." msgstr "Por favor, introduzca un número de tarjeta de crédito válida." -#: static/adm/js/gui.js:216 +#: static/adm/js/gui.js:226 msgid "Please enter the same value again." msgstr "Por favor, introduzca el valor mismo otra vez." -#: static/adm/js/gui.js:217 +#: static/adm/js/gui.js:227 msgid "Please enter no more than {0} characters." msgstr "Introduce no más de {0} caracteres." -#: static/adm/js/gui.js:218 +#: static/adm/js/gui.js:228 msgid "Please enter at least {0} characters." msgstr "Introduce al menos {0} caracteres." -#: static/adm/js/gui.js:219 +#: static/adm/js/gui.js:229 msgid "Please enter a value between {0} and {1} characters long." msgstr "" "Por favor, introduzca un valor entre caracteres {0} y {1} durante mucho " "tiempo." -#: static/adm/js/gui.js:220 +#: static/adm/js/gui.js:230 msgid "Please enter a value between {0} and {1}." msgstr "Por favor, introduzca un valor entre {0} y {1}." -#: static/adm/js/gui.js:221 +#: static/adm/js/gui.js:231 msgid "Please enter a value less than or equal to {0}." msgstr "Por favor, introduzca un valor menor o igual a {0}." -#: static/adm/js/gui.js:222 +#: static/adm/js/gui.js:232 msgid "Please enter a value greater than or equal to {0}." msgstr "Por favor, introduzca un valor mayor o igual a {0}." -#: static/adm/js/gui.js:244 +#: static/adm/js/gui.js:274 msgid "Test result" msgstr "Resultado de la prueba" -#: static/adm/js/gui.js:245 +#: static/adm/js/gui.js:275 msgid "Test error" msgstr "Error de prueba" -#: static/adm/js/gui.js:276 +#: static/adm/js/gui.js:307 msgid "Edition successfully done" msgstr "Edición hecho con éxito" -#: static/adm/js/gui.js:310 +#: static/adm/js/gui.js:330 +msgid "of type" +msgstr "de tipo" + +#: static/adm/js/gui.js:347 msgid "Creation successfully done" msgstr "Creación hecho con éxito" -#: static/adm/js/gui.js:321 +#: static/adm/js/gui.js:357 msgid "Are you sure do you want to delete " msgstr "¿Estás seguro que quieres borrar " -#: static/adm/js/gui.js:327 +#: static/adm/js/gui.js:363 msgid "Item deleted" msgstr "Elemento eliminado" diff --git a/server/src/uds/locale/fr/LC_MESSAGES/django.mo b/server/src/uds/locale/fr/LC_MESSAGES/django.mo index 83d086564c0714ef8d429f56c7ad6eaa51c2d8e6..08e82d705188dc51ed1ac5c05c9aa46dc4eacba8 100644 GIT binary patch delta 17351 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 bUq#yap=kKY?-T0ln}`Zx-$Z5KM9%*K1aJD) delta 12527 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\n" "Language-Team: LANGUAGE \n" @@ -42,160 +42,412 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1)\n" -#: REST/model.py:81 REST/methods/authenticators.py:56 -#: REST/methods/networks.py:51 REST/methods/osmanagers.py:52 -#: REST/methods/providers.py:57 REST/methods/transports.py:54 -#: REST/methods/users_groups.py:72 +#: REST/model.py:86 REST/methods/authenticators.py:58 +#: REST/methods/networks.py:54 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:59 REST/methods/services_pools.py:65 +#: REST/methods/transports.py:55 REST/methods/user_services.py:161 +#: REST/methods/user_services.py:189 REST/methods/users_groups.py:82 +#: templates/uds/admin/tmpl/user.html:29 templates/uds/admin/tmpl/user.html:32 msgid "Name" msgstr "Nom" -#: REST/model.py:82 +#: REST/model.py:87 msgid "Name of this element" msgstr "Nom de cet élément" -#: REST/model.py:88 REST/methods/authenticators.py:57 -#: REST/methods/osmanagers.py:53 REST/methods/providers.py:58 -#: REST/methods/services.py:126 REST/methods/transports.py:55 -#: REST/methods/users_groups.py:73 REST/methods/users_groups.py:108 +#: REST/model.py:93 REST/methods/authenticators.py:59 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:60 +#: REST/methods/services.py:139 REST/methods/services_pools.py:68 +#: REST/methods/transports.py:56 REST/methods/user_services.py:191 +#: REST/methods/users_groups.py:83 REST/methods/users_groups.py:190 +#: templates/uds/admin/tmpl/group.html:37 +#: templates/uds/admin/tmpl/user.html:40 msgid "Comments" msgstr "Commentaires" -#: REST/model.py:89 +#: REST/model.py:94 msgid "Comments for this element" msgstr "Commentaires pour cet élément" -#: REST/model.py:97 REST/methods/authenticators.py:58 -#: REST/methods/transports.py:56 REST/methods/transports.py:69 +#: REST/model.py:102 REST/methods/authenticators.py:60 +#: REST/methods/transports.py:54 REST/methods/user_services.py:188 msgid "Priority" msgstr "Priorité" -#: REST/model.py:98 +#: REST/model.py:103 msgid "" "Selects the priority of this element (lower number means higher priority)" msgstr "" -"Sélectionne la priorité de cet élément (priorité supérieure de moyens nombre inférieur)" +"Sélectionne la priorité de cet élément (priorité supérieure de moyens nombre " +"inférieur)" -#: REST/model.py:106 REST/methods/authenticators.py:59 -msgid "Small name" -msgstr "Petit nom" +#: REST/model.py:113 +msgid "Short name" +msgstr "Nom court" -#: REST/model.py:107 -msgid "Small name of this element" -msgstr "Petit nom de cet élément" +#: REST/model.py:114 +msgid "Short name of this element" +msgstr "Nom court de cet élément" -#: REST/model.py:157 +#: REST/model.py:159 msgid "Invalid Request" msgstr "Requête non valide" -#: REST/model.py:160 +#: REST/model.py:162 msgid "Method not found" msgstr "Méthode introuvable" -#: REST/model.py:163 +#: REST/model.py:165 msgid "Item not found" msgstr "Élément introuvable" -#: REST/methods/authenticators.py:54 +#: REST/methods/authenticators.py:56 msgid "Current authenticators" msgstr "Authentificateurs actuels" -#: REST/methods/authenticators.py:60 +#: REST/methods/authenticators.py:61 +msgid "Small name" +msgstr "Petit nom" + +#: REST/methods/authenticators.py:62 #: templates/uds/admin/tmpl/authenticators.html:18 +#: templates/uds/admin/tmpl/dashboard.html:22 msgid "Users" msgstr "Utilisateurs" -#: REST/methods/networks.py:49 +#: REST/methods/networks.py:52 msgid "Current Networks" msgstr "Réseaux actuels" -#: REST/methods/networks.py:52 templates/uds/index.html:79 -#: templates/uds/html5/index.html:124 -msgid "Networks" -msgstr "Réseaux" +#: REST/methods/networks.py:55 +msgid "Range" +msgstr "Gamme" -#: REST/methods/networks.py:53 REST/methods/osmanagers.py:54 +#: REST/methods/networks.py:56 REST/methods/osmanagers.py:57 #: REST/methods/transports.py:57 msgid "Used by" msgstr "Utilisé par" -#: REST/methods/osmanagers.py:50 +#: REST/methods/networks.py:66 +msgid "Invalid network: " +msgstr "Réseau non valide : " + +#: REST/methods/networks.py:73 +msgid "Network range" +msgstr "Gamme de réseau" + +#: REST/methods/networks.py:74 +msgid "" +"Network range. Accepts most network definitions formats (range, subnet, " +"host, etc..." +msgstr "" +"Plage de réseau. Accepte la plupart des formats de définitions réseau " +"(gamme, sous-réseau, hôte, etc..." + +#: REST/methods/osmanagers.py:53 msgid "Current OS Managers" msgstr "Dirigeants de OS actuels" -#: REST/methods/providers.py:53 templates/uds/admin/snippets/navbar.html:18 +#: REST/methods/osmanagers.py:75 +msgid "Can't delete an OSManager with deployed services associated" +msgstr "" +"Impossible de supprimer un OSManager avec des services déployés associés" + +#: REST/methods/osmanagers.py:79 +msgid "Can't modify an OSManager with deployed services associated" +msgstr "" +"Impossible de modifier un OSManager avec des services déployés associés" + +#: REST/methods/providers.py:55 msgid "Service providers" msgstr "Fournisseurs de services" -#: REST/methods/providers.py:59 templates/uds/index.html:51 +#: REST/methods/providers.py:61 templates/uds/index.html:51 +#: templates/uds/admin/snippets/navbar.html:18 +#: templates/uds/admin/tmpl/dashboard.html:49 +#: templates/uds/admin/tmpl/providers.html:4 +#: templates/uds/admin/tmpl/providers.html:7 #: templates/uds/admin/tmpl/providers.html:18 #: templates/uds/html5/index.html:65 msgid "Services" msgstr "Services" -#: REST/methods/services.py:119 +#: REST/methods/providers.py:62 +msgid "User Services" +msgstr "Services aux utilisateurs" + +#: REST/methods/providers.py:111 dispatchers/wyse_enterprise/views.py:254 +#: dispatchers/wyse_enterprise/views.py:257 web/errors.py:62 +msgid "Service not found" +msgstr "Service introuvable" + +#: REST/methods/services.py:132 #, python-brace-format msgid "Services of {0}" msgstr "Services de {0}" -#: REST/methods/services.py:121 +#: REST/methods/services.py:134 msgid "Current services" msgstr "Services actuels" -#: REST/methods/services.py:125 +#: REST/methods/services.py:138 msgid "Service name" msgstr "Nom du service" -#: REST/methods/services.py:127 +#: REST/methods/services.py:140 REST/methods/user_services.py:190 msgid "Type" msgstr "Type" -#: REST/methods/services.py:128 templates/uds/admin/snippets/navbar.html:22 +#: REST/methods/services.py:141 REST/methods/services_pools.py:63 msgid "Deployed services" msgstr "Services déployés" +#: REST/methods/services.py:142 templates/uds/admin/tmpl/dashboard.html:76 +msgid "User services" +msgstr "Services aux utilisateurs" + +#: REST/methods/services_pools.py:66 +msgid "Parent Service" +msgstr "Service parent" + +#: REST/methods/services_pools.py:67 REST/methods/users_groups.py:84 +#: REST/methods/users_groups.py:191 +msgid "state" +msgstr "État" + +#: REST/methods/services_pools.py:95 +msgid "Create at least one OS Manager before creating a new service pool" +msgstr "Créez au moins un OS gérant avant de créer un nouveau pool service" + +#: REST/methods/services_pools.py:97 +msgid "Create at least a service before creating a new service pool" +msgstr "Créez au moins un service avant de créer un nouveau pool service" + +#: REST/methods/services_pools.py:104 +msgid "Base service" +msgstr "Service de base" + +#: REST/methods/services_pools.py:105 +msgid "Service used as base of this service pool" +msgstr "Service utilisé comme base de cette piscine service" + +#: REST/methods/services_pools.py:112 +msgid "OS Manager" +msgstr "Gestionnaire de système d'exploitation" + +#: REST/methods/services_pools.py:113 +msgid "OS Manager used as base of this service pool" +msgstr "Gestionnaire de l'OS utilisé comme base de cette piscine service" + +#: REST/methods/services_pools.py:120 +msgid "Initial available services" +msgstr "Initiales services disponibles" + +#: REST/methods/services_pools.py:121 +msgid "Services created initially for this service pool" +msgstr "Services créés initialement pour ce pool service" + +#: REST/methods/services_pools.py:127 +msgid "Services to keep in cache" +msgstr "Services pour conserver en cache" + +#: REST/methods/services_pools.py:128 +msgid "Services keeped in cache for improved user service assignation" +msgstr "" +"Services conservées dans le cache pour l'assignation de service utilisateur " +"améliorée" + +#: REST/methods/services_pools.py:134 +msgid "Services to keep in L2 cache" +msgstr "Services de garder en mémoire cache L2" + +#: REST/methods/services_pools.py:135 +msgid "Services keeped in cache of level2 for improved service generation" +msgstr "" +"Services conservées dans le cache de niveau 2 pour une meilleure génération " +"de service" + +#: REST/methods/services_pools.py:141 +msgid "Maximum number of services to provide" +msgstr "Nombre maximum de services à fournir" + +#: REST/methods/services_pools.py:142 +msgid "" +"Maximum number of service (assigned and L1 cache) that can be created for " +"this service" +msgstr "" +"Nombre maximal de service (assignés et cache L1) qui peuvent être créés pour " +"ce service" + +#: REST/methods/services_pools.py:159 +msgid "Base service does not exists anymore" +msgstr "Service de base n'existe pas plus" + +#: REST/methods/services_pools.py:168 +msgid "This service requires an os manager" +msgstr "Ce service nécessite un gestionnaire de système d'exploitation" + #: REST/methods/transports.py:52 msgid "Current Transports" msgstr "Transports actuels" -#: REST/methods/transports.py:70 -msgid "Priority of this transport" -msgstr "Priorité de ce transport" +#: REST/methods/transports.py:68 +msgid "Network access" +msgstr "Accès au réseau" -#: REST/methods/users_groups.py:65 +#: REST/methods/transports.py:69 +msgid "" +"If ACTIVE, the transport will be enabled for the selected networks.If " +"INACTIVE, trans port will be disabled for selected networks" +msgstr "" +"S'il est activé, le transport sera activé pour les réseaux sélectionnés.If " +"INACTIF, trans port sera désactivée pour les réseaux sélectionnés" + +#: REST/methods/transports.py:76 templates/uds/index.html:79 +#: templates/uds/html5/index.html:124 +msgid "Networks" +msgstr "Réseaux" + +#: REST/methods/transports.py:77 +msgid "" +"Networks associated with this transport. If No network selected, will mean " +"\"all networks\"" +msgstr "" +"Réseaux liés à ce transport. Si aucun réseau sélectionné, signifiera « tous " +"les réseaux »" + +#: REST/methods/user_services.py:88 +#: templates/uds/admin/tmpl/services_pool.html:18 +msgid "Assigned services" +msgstr "Services attribuées" + +#: REST/methods/user_services.py:92 REST/methods/user_services.py:128 +msgid "Creation date" +msgstr "Date de création" + +#: REST/methods/user_services.py:93 REST/methods/user_services.py:129 +#: REST/methods/user_services.py:224 +msgid "Revision" +msgstr "Révision" + +#: REST/methods/user_services.py:95 REST/methods/user_services.py:131 +msgid "Friendly name" +msgstr "Nom convivial" + +#: REST/methods/user_services.py:96 REST/methods/user_services.py:132 +#: REST/methods/user_services.py:163 REST/methods/user_services.py:226 +#: templates/uds/admin/tmpl/group.html:42 +#: templates/uds/admin/tmpl/user.html:45 +msgid "State" +msgstr "État" + +#: REST/methods/user_services.py:97 +msgid "Owner" +msgstr "Propriétaire" + +#: REST/methods/user_services.py:124 +msgid "Cached services" +msgstr "Services de mise en cache" + +#: REST/methods/user_services.py:133 +msgid "Cache level" +msgstr "Niveau de cache" + +#: REST/methods/user_services.py:156 +msgid "Assigned groups" +msgstr "Groupes assignés" + +#: REST/methods/user_services.py:162 templates/uds/admin/tmpl/group.html:34 +#: templates/uds/admin/tmpl/user.html:37 +msgid "comments" +msgstr "Commentaires" + +#: REST/methods/user_services.py:184 +msgid "Assigned transports" +msgstr "Transports assignés" + +#: REST/methods/user_services.py:220 +#: templates/uds/admin/tmpl/services_pool.html:22 +msgid "Publications" +msgstr "Publications" + +#: REST/methods/user_services.py:225 +msgid "Publish date" +msgstr "La date de publication" + +#: REST/methods/user_services.py:227 +msgid "Reason" +msgstr "Raison" + +#: REST/methods/users_groups.py:75 #, python-brace-format msgid "Users of {0}" msgstr "Utilisateurs de {0}" -#: REST/methods/users_groups.py:67 +#: REST/methods/users_groups.py:77 msgid "Current users" msgstr "Utilisateurs actuels" -#: REST/methods/users_groups.py:71 REST/methods/users_groups.py:107 -msgid "User Id" -msgstr "Id de l'utilisateur" +#: REST/methods/users_groups.py:81 +#: auths/ActiveDirectory_enterprise/Authenticator.py:48 +#: auths/EDirectory_enterprise/Authenticator.py:77 +#: auths/RegexLdap/Authenticator.py:72 auths/SimpleLDAP/Authenticator.py:73 +#: services/HyperV_enterprise/HyperVClusterProvider.py:91 +#: services/HyperV_enterprise/HyperVProvider.py:83 +#: services/OVirt/OVirtProvider.py:93 +#: services/Vmware_enterprise/ServiceProviderVC.py:30 +#: templates/uds/admin/tmpl/user.html:16 transports/HTML5RDP/HTML5RDP.py:64 +#: transports/NX/NXTransport.py:61 transports/NX/TSNXTransport.py:66 +#: transports/RDP/RDPTransport.py:59 transports/RDP/TSRDPTransport.py:63 +#: transports/RGS-enterprise/RGSTransport.py:42 +#: transports/RGS-enterprise/TRGSTransport.py:47 +#: transports/TSNX/TSNXTransport.py:66 web/forms/LoginForm.py:69 +msgid "Username" +msgstr "Nom d'utilisateur" -#: REST/methods/users_groups.py:74 REST/methods/users_groups.py:109 -msgid "state" -msgstr "État" - -#: REST/methods/users_groups.py:75 +#: REST/methods/users_groups.py:85 msgid "Last access" msgstr "Dernier accès" -#: REST/methods/users_groups.py:101 +#: REST/methods/users_groups.py:132 REST/methods/users_groups.py:244 +msgid "User already exists (duplicate key error)" +msgstr "L'utilisateur existe déjà (erreur de clé en double)" + +#: REST/methods/users_groups.py:183 #, python-brace-format msgid "Groups of {0}" msgstr "Groupes de {0}" -#: REST/methods/users_groups.py:103 +#: REST/methods/users_groups.py:185 msgid "Current groups" msgstr "Groupes actuels" -#: admin/views.py:55 admin/views.py:63 admin/views.py:77 web/views.py:422 +#: REST/methods/users_groups.py:189 REST/methods/users_groups.py:196 +#: auths/ActiveDirectory_enterprise/Authenticator.py:50 +#: auths/EDirectory_enterprise/Authenticator.py:79 +#: auths/RegexLdap/Authenticator.py:74 auths/SAML_enterprise/SAML.py:114 +#: auths/SimpleLDAP/Authenticator.py:75 +#: templates/uds/admin/tmpl/pool_add_group.html:17 +msgid "Group" +msgstr "Groupe" + +#: REST/methods/users_groups.py:196 +msgid "UDS Group" +msgstr "Groupe de l'UDS" + +#: REST/methods/users_groups.py:197 +msgid "Meta group" +msgstr "Groupe Meta" + +#: REST/methods/users_groups.py:197 +msgid "UDS Meta Group" +msgstr "UDS Meta Group" + +#: admin/views.py:51 admin/views.py:59 admin/views.py:73 web/views.py:425 msgid "Forbidden" msgstr "Interdit" -#: admin/views.py:70 +#: admin/views.py:66 msgid "requested a template that do not exists" msgstr "demandé un modèle qui ne sont pas existe" @@ -258,9 +510,9 @@ msgstr "" #: services/HyperV_enterprise/HyperVProvider.py:84 #: services/OVirt/OVirtProvider.py:94 services/Sample/SampleService.py:131 #: services/Vmware_enterprise/ServiceProviderVC.py:31 -#: transports/HTML5RDP/HTML5RDP.py:65 transports/NX/NXTransport.py:62 -#: transports/NX/TSNXTransport.py:67 transports/RDP/RDPTransport.py:60 -#: transports/RDP/TSRDPTransport.py:64 +#: templates/uds/admin/tmpl/user.html:78 transports/HTML5RDP/HTML5RDP.py:65 +#: transports/NX/NXTransport.py:62 transports/NX/TSNXTransport.py:67 +#: transports/RDP/RDPTransport.py:60 transports/RDP/TSRDPTransport.py:64 #: transports/RGS-enterprise/RGSTransport.py:43 #: transports/RGS-enterprise/TRGSTransport.py:48 #: transports/TSNX/TSNXTransport.py:67 web/forms/LoginForm.py:70 @@ -295,31 +547,8 @@ msgstr "Authentificateur de Active Directory" msgid "Authenticate against Active Directory" msgstr "S'authentifier sur Active Directory" -#: auths/ActiveDirectory_enterprise/Authenticator.py:48 -#: auths/EDirectory_enterprise/Authenticator.py:77 -#: auths/RegexLdap/Authenticator.py:72 auths/SimpleLDAP/Authenticator.py:73 -#: services/HyperV_enterprise/HyperVClusterProvider.py:91 -#: services/HyperV_enterprise/HyperVProvider.py:83 -#: services/OVirt/OVirtProvider.py:93 -#: services/Vmware_enterprise/ServiceProviderVC.py:30 -#: transports/HTML5RDP/HTML5RDP.py:64 transports/NX/NXTransport.py:61 -#: transports/NX/TSNXTransport.py:66 transports/RDP/RDPTransport.py:59 -#: transports/RDP/TSRDPTransport.py:63 -#: transports/RGS-enterprise/RGSTransport.py:42 -#: transports/RGS-enterprise/TRGSTransport.py:47 -#: transports/TSNX/TSNXTransport.py:66 web/forms/LoginForm.py:69 -msgid "Username" -msgstr "Nom d'utilisateur" - -#: auths/ActiveDirectory_enterprise/Authenticator.py:50 -#: auths/EDirectory_enterprise/Authenticator.py:79 -#: auths/RegexLdap/Authenticator.py:74 auths/SAML_enterprise/SAML.py:114 -#: auths/SimpleLDAP/Authenticator.py:75 -msgid "Group" -msgstr "Groupe" - #: auths/ActiveDirectory_enterprise/Authenticator.py:67 -#: auths/ActiveDirectory_enterprise/Authenticator.py:442 +#: auths/ActiveDirectory_enterprise/Authenticator.py:444 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "Doit spécifier le nom d'utilisateur sous la forme USERNAME@DOMAIN.DOM" @@ -328,7 +557,7 @@ msgid "Active directory connection error: " msgstr "Erreur de connexion active directory : " #: auths/ActiveDirectory_enterprise/Authenticator.py:344 -#: auths/ActiveDirectory_enterprise/Authenticator.py:390 +#: auths/ActiveDirectory_enterprise/Authenticator.py:392 #: auths/EDirectory_enterprise/Authenticator.py:243 #: auths/EDirectory_enterprise/Authenticator.py:286 #: auths/RegexLdap/Authenticator.py:303 auths/RegexLdap/Authenticator.py:346 @@ -341,33 +570,38 @@ msgstr "Nom d'utilisateur introuvable" msgid "Group not found" msgstr "Groupe introuvable" -#: auths/ActiveDirectory_enterprise/Authenticator.py:410 -#: auths/ActiveDirectory_enterprise/Authenticator.py:428 +#: auths/ActiveDirectory_enterprise/Authenticator.py:412 +#: auths/ActiveDirectory_enterprise/Authenticator.py:430 #: auths/EDirectory_enterprise/Authenticator.py:303 #: auths/RegexLdap/Authenticator.py:367 auths/SimpleLDAP/Authenticator.py:328 #: auths/SimpleLDAP/Authenticator.py:342 msgid "Too many results, be more specific" msgstr "Trop de résultats, être plus spécifique" -#: auths/ActiveDirectory_enterprise/Authenticator.py:451 +#: auths/ActiveDirectory_enterprise/Authenticator.py:453 msgid "Domain seems to be incorrect, please check it" msgstr "Domaine semble être incorrect, veuillez bien consulter le" -#: auths/ActiveDirectory_enterprise/Authenticator.py:456 +#: auths/ActiveDirectory_enterprise/Authenticator.py:458 msgid "Server does not seem an Active Directory (do not have user objects)" -msgstr "Serveur ne semble pas un serveur Active Directory (n'ont pas les objets utilisateur)" +msgstr "" +"Serveur ne semble pas un serveur Active Directory (n'ont pas les objets " +"utilisateur)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:464 +#: auths/ActiveDirectory_enterprise/Authenticator.py:466 msgid "Server does not seem an Active Directory (no not have group objects)" -msgstr "Serveur ne semble pas un serveur Active Directory (ne pas ont des objets de groupe)" +msgstr "" +"Serveur ne semble pas un serveur Active Directory (ne pas ont des objets de " +"groupe)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:472 +#: auths/ActiveDirectory_enterprise/Authenticator.py:474 msgid "" "Server does not seem an Active Directory (do not have any user nor groups)" msgstr "" -"Serveur ne semble pas un serveur Active Directory (n'ont pas l'utilisateur ou groupes)" +"Serveur ne semble pas un serveur Active Directory (n'ont pas l'utilisateur " +"ou groupes)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:477 +#: auths/ActiveDirectory_enterprise/Authenticator.py:479 #: auths/EDirectory_enterprise/Authenticator.py:358 #: auths/RegexLdap/Authenticator.py:428 auths/SimpleLDAP/Authenticator.py:423 msgid "Connection params seem correct, test was succesfully executed" @@ -711,6 +945,9 @@ msgstr "Faux groupe" #: auths/Sample/SampleAuth.py:111 #: templates/uds/admin/tmpl/authenticators.html:19 +#: templates/uds/admin/tmpl/group.html:53 +#: templates/uds/admin/tmpl/services_pool.html:20 +#: templates/uds/admin/tmpl/user.html:85 templates/uds/admin/tmpl/user.html:99 msgid "Groups" msgstr "Groupes" @@ -798,7 +1035,7 @@ msgstr "Authentificateur de base" msgid "User name" msgstr "Nom d'utilisateur" -#: core/auths/BaseAuthenticator.py:131 +#: core/auths/BaseAuthenticator.py:131 templates/uds/admin/tmpl/group.html:19 msgid "Group name" msgstr "Nom du groupe" @@ -807,6 +1044,10 @@ msgid "Users can't be created inside this authenticator" msgstr "" "Utilisateurs ne peut pas être créés à l'intérieur de cet authentificateur" +#: core/auths/auth.py:61 +msgid "System Administrator" +msgstr "Administrateur système" + #: core/managers/PublicationManager.py:181 msgid "" "Already publishing. Wait for previous publication to finish and try again" @@ -855,17 +1096,17 @@ msgstr "24 bits" msgid "32 bits" msgstr "32 bits" -#: core/managers/UserServiceManager.py:322 +#: core/managers/UserServiceManager.py:314 msgid "Cancel requested for a non running operation, doing remove instead" msgstr "" "Annuler demandée pour une opération non en cours d'exécution, faire enlever " "à la place" -#: core/managers/UserServiceManager.py:343 +#: core/managers/UserServiceManager.py:335 msgid "Can't remove a non active element" msgstr "Impossible de supprimer un élément non actif" -#: core/managers/UserServiceManager.py:356 +#: core/managers/UserServiceManager.py:348 #, python-brace-format msgid "Can't remove nor cancel {0} cause its states doesn't allows it" msgstr "Ne peut pas supprimer ni annuler {0} cause ses États ne lui permet pas" @@ -903,7 +1144,7 @@ msgstr "Active" msgid "Inactive" msgstr "Inactif" -#: core/util/State.py:60 +#: core/util/State.py:60 templates/uds/admin/tmpl/user.html:50 msgid "Blocked" msgstr "Bloqué" @@ -1019,11 +1260,6 @@ msgstr "Requête non valide" msgid "Invalid credentials used" msgstr "Informations d'identification non valides utilisées" -#: dispatchers/wyse_enterprise/views.py:254 -#: dispatchers/wyse_enterprise/views.py:257 web/errors.py:62 -msgid "Service not found" -msgstr "Service introuvable" - #: dispatchers/wyse_enterprise/views.py:271 web/errors.py:61 msgid "Transport not found" msgstr "Transport introuvable" @@ -1437,12 +1673,12 @@ msgid "HyperV Linked Clone (Experimental)" msgstr "HyperV Clone lié (expérimental)" #: services/HyperV_enterprise/HyperVProvider.py:62 -msgid "HyperV Platform Provider" -msgstr "Fournisseur de plates-formes HyperV" +msgid "HyperV Platform Provider (experimental)" +msgstr "Fournisseur de plates-formes d'HyperV (expérimental)" #: services/HyperV_enterprise/HyperVProvider.py:66 -msgid "HyperV platform service provider" -msgstr "Fournisseur de services de plate-forme HyperV" +msgid "HyperV platform service provider (experimental)" +msgstr "Fournisseur de services de plate-forme HyperV (expérimental)" #: services/OVirt/OVirtLinkedService.py:56 msgid "oVirt Linked Clone (Experimental)" @@ -1808,7 +2044,8 @@ msgstr "Redémarrez le navigateur" msgid "Ip" msgstr "IP" -#: templates/uds/index.html:80 templates/uds/html5/index.html:125 +#: templates/uds/index.html:80 templates/uds/admin/tmpl/services_pool.html:21 +#: templates/uds/html5/index.html:125 msgid "Transports" msgstr "Transports" @@ -1864,35 +2101,90 @@ msgid "Connectivity" msgstr "Connectivité" #: templates/uds/admin/snippets/navbar.html:26 +#: templates/uds/admin/tmpl/configuration.html:7 msgid "Configuration" msgstr "Configuration" #: templates/uds/admin/snippets/navbar.html:27 -msgid "Clear cache" -msgstr "Vider le cache" +msgid "Flush cache" +msgstr "Vider cache" -#: templates/uds/admin/snippets/navbar.html:57 +#: templates/uds/admin/snippets/navbar.html:56 msgid "Exit" msgstr "Sortie" -#: templates/uds/admin/snippets/navbar.html:58 +#: templates/uds/admin/snippets/navbar.html:57 msgid "Logout" msgstr "Logout" #: templates/uds/admin/tmpl/authenticators.html:20 #: templates/uds/admin/tmpl/providers.html:19 +#: templates/uds/admin/tmpl/services_pool.html:23 msgid "Logs" msgstr "Journaux" +#: templates/uds/admin/tmpl/configuration.html:4 +msgid "UDS Configuration" +msgstr "Configuration de l'UDS" + +#: templates/uds/admin/tmpl/configuration.html:58 +#: templates/uds/admin/tmpl/comp/modal.html:26 +msgid "Save" +msgstr "Enregistrer" + #: templates/uds/admin/tmpl/connectivity.html:4 -#: templates/uds/admin/tmpl/dashboard.html:4 +#: templates/uds/admin/tmpl/dashboard.html:5 msgid "overview" msgstr "vue d'ensemble" -#: templates/uds/admin/tmpl/providers.html:4 -#: templates/uds/admin/tmpl/providers.html:7 -msgid "Providers" -msgstr "Fournisseurs" +#: templates/uds/admin/tmpl/dashboard.html:30 +msgid "View Authenticators" +msgstr "Vue authentificateurs" + +#: templates/uds/admin/tmpl/dashboard.html:57 +msgid "View services" +msgstr "Services de consultation" + +#: templates/uds/admin/tmpl/dashboard.html:84 +#: templates/uds/admin/tmpl/dashboard.html:111 +msgid "View services pools" +msgstr "Vue services piscines" + +#: templates/uds/admin/tmpl/dashboard.html:103 +msgid "Restrained services pools" +msgstr "Piscines services sobre" + +#: templates/uds/admin/tmpl/dashboard.html:127 +msgid "Assigned services graph" +msgstr "Graphique services attribuées" + +#: templates/uds/admin/tmpl/dashboard.html:139 +msgid "Used services graph" +msgstr "Graphique des services utilisés" + +#: templates/uds/admin/tmpl/group.html:25 +#: templates/uds/admin/tmpl/search.html:9 +#: templates/uds/admin/tmpl/user.html:21 +msgid "Search" +msgstr "Rechercher" + +#: templates/uds/admin/tmpl/group.html:45 +#: templates/uds/admin/tmpl/user.html:48 +msgid "Enabled" +msgstr "Activé" + +#: templates/uds/admin/tmpl/group.html:46 +#: templates/uds/admin/tmpl/user.html:49 +msgid "Disabled" +msgstr "Handicapés" + +#: templates/uds/admin/tmpl/pool_add_group.html:5 web/forms/LoginForm.py:71 +msgid "Authenticator" +msgstr "Authentificateur" + +#: templates/uds/admin/tmpl/pool_add_transport.html:5 +msgid "Transport" +msgstr "Transport" #: templates/uds/admin/tmpl/request_failed.html:4 msgid "Error on request" @@ -1900,29 +2192,56 @@ msgstr "Erreur sur demande" #: templates/uds/admin/tmpl/request_failed.html:7 msgid "There was an error requesting data from server, please, try again" -msgstr "Il y avait une erreur en demandant les données depuis le serveur, s'il vous plaît, essaient à nouveau" +msgstr "" +"Il y avait une erreur en demandant les données depuis le serveur, s'il vous " +"plaît, essaient à nouveau" #: templates/uds/admin/tmpl/request_failed.html:9 #: templates/uds/html5/snippets/navbar.html:44 msgid "Dashboard" msgstr "Tableau de bord" -#: templates/uds/admin/tmpl/comp/modal.html:19 -msgid "Close" -msgstr "Fermer" +#: templates/uds/admin/tmpl/services_pool.html:4 +msgid "Services Pools" +msgstr "Piscines services" -#: templates/uds/admin/tmpl/comp/modal.html:26 -msgid "Save" -msgstr "Enregistrer" +#: templates/uds/admin/tmpl/services_pool.html:7 +msgid "Deployed Services" +msgstr "Services déployés" -#: templates/uds/admin/tmpl/fld/checkbox.html:4 +#: templates/uds/admin/tmpl/services_pool.html:19 +msgid "Cache" +msgstr "Cache" + +#: templates/uds/admin/tmpl/user.html:56 +msgid "Staff member" +msgstr "Membre du personnel" + +#: templates/uds/admin/tmpl/user.html:58 templates/uds/admin/tmpl/user.html:68 +#: templates/uds/admin/tmpl/fld/checkbox.html:5 msgid "Yes" msgstr "Oui" -#: templates/uds/admin/tmpl/fld/checkbox.html:4 +#: templates/uds/admin/tmpl/user.html:59 templates/uds/admin/tmpl/user.html:68 +#: templates/uds/admin/tmpl/fld/checkbox.html:5 msgid "No" msgstr "Non" +#: templates/uds/admin/tmpl/user.html:66 +#: templates/uds/snippets/admin_user.html:4 +msgid "Admin" +msgstr "Admin" + +#: templates/uds/admin/tmpl/user.html:87 +#: templates/uds/admin/tmpl/user.html:101 +#, python-brace-format +msgid "{0} of {1} selected" +msgstr "{0} de {1} sélectionné" + +#: templates/uds/admin/tmpl/comp/modal.html:19 +msgid "Close" +msgstr "Fermer" + #: templates/uds/admin/tmpl/fld/editlist_popup.html:5 msgid "Current list" msgstr "Liste actuelle" @@ -2047,10 +2366,6 @@ msgstr "" "mettre à jour à un moderne HTML5 navigateur tel que Firefox, Chrome, " "Opera... (IE doit être de 10 ou mieux)" -#: templates/uds/snippets/admin_user.html:4 -msgid "Admin" -msgstr "Admin" - #: templates/uds/snippets/lang.html:9 msgid "Language" msgstr "Langue" @@ -2536,7 +2851,7 @@ msgstr "" "Votre navigateur n'est pas pris en charge. S'il vous plaît, mettre à niveau " "vers un navigateur modern de HTML5 comme Firefox ou Chrome" -#: web/views.py:401 +#: web/views.py:404 msgid "Authenticator do not provides information" msgstr "Authentificateur ne fournit pas d'informations" @@ -2548,10 +2863,6 @@ msgstr "Sélectionnez authentificateur" msgid "authenticator" msgstr "authentificateur" -#: web/forms/LoginForm.py:71 -msgid "Authenticator" -msgstr "Authentificateur" - #: xmlrpc/auths/AdminAuth.py:115 msgid "Credentials no longer valid" msgstr "Informations d'identification n'est plus valides" diff --git a/server/src/uds/locale/fr/LC_MESSAGES/djangojs.mo b/server/src/uds/locale/fr/LC_MESSAGES/djangojs.mo index e1dedd59d0859c0dbca57f54d6817709798a2636..166b02d9735a94c30f11dc78987e0548500d9de6 100644 GIT binary patch literal 9379 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 Guk-)5&H85m literal 6484 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\n" "Language-Team: LANGUAGE \n" @@ -98,147 +98,359 @@ msgstr "Décembre" msgid "_MENU_ records per page" msgstr "Documents _MENU_ par page" -#: static/adm/js/gui-definition.js:38 -msgid "Test" -msgstr "Test" - -#: static/adm/js/gui-definition.js:140 -msgid "Edit service" -msgstr "Modifier le service" - -#: static/adm/js/gui-definition.js:140 -msgid "Error processing service" -msgstr "Service de traitement des erreurs" - -#: static/adm/js/gui-definition.js:141 -msgid "New service" -msgstr "Nouveau service" - -#: static/adm/js/gui-definition.js:141 -msgid "Error creating service" -msgstr "Erreur de création du service" - -#: static/adm/js/gui-definition.js:142 -msgid "Delete service" -msgstr "Supprimer le service" - -#: static/adm/js/gui-definition.js:142 -msgid "Error deleting service" -msgstr "Erreur de suppression de service" - -#: static/adm/js/gui-definition.js:157 -msgid "New provider" -msgstr "Nouveau fournisseur" - -#: static/adm/js/gui-definition.js:157 -msgid "Error creating provider" -msgstr "Création fournisseur d'erreur" - -#: static/adm/js/gui-definition.js:158 -msgid "Edit provider" -msgstr "Modifier le fournisseur" - -#: static/adm/js/gui-definition.js:158 -msgid "Error processing provider" -msgstr "Fournisseur de traitement d'erreur" - -#: static/adm/js/gui-definition.js:159 -msgid "Delete provider" -msgstr "Supprimer le fournisseur" - -#: static/adm/js/gui-definition.js:159 -msgid "Error deleting provider" -msgstr "Fournisseur d'erreur suppression" - -#: static/adm/js/gui-definition.js:177 +#: static/adm/js/gui-d-authenticators.js:10 msgid "Test authenticator" msgstr "Authentificateur de test" -#: static/adm/js/gui-definition.js:295 +#: static/adm/js/gui-d-authenticators.js:52 +msgid "Search error" +msgstr "Erreur de recherche" + +#: static/adm/js/gui-d-authenticators.js:60 +msgid "Accept" +msgstr "Accepter" + +#: static/adm/js/gui-d-authenticators.js:153 +msgid "Edit group" +msgstr "Modifier groupe" + +#: static/adm/js/gui-d-authenticators.js:175 +#: static/adm/js/gui-d-authenticators.js:216 +msgid "Group saved" +msgstr "Groupe sauvé" + +#: static/adm/js/gui-d-authenticators.js:196 +msgid "New group" +msgstr "Nouveau groupe" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Search groups" +msgstr "Groupes de recherche" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Group" +msgstr "Groupe" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Groups found" +msgstr "Groupes trouvés" + +#: static/adm/js/gui-d-authenticators.js:217 +msgid "Group saving error" +msgstr "Groupe économie erreur" + +#: static/adm/js/gui-d-authenticators.js:231 +msgid "Delete group" +msgstr "Supprimer le groupe" + +#: static/adm/js/gui-d-authenticators.js:231 +msgid "Group deletion error" +msgstr "Erreur de suppression de groupe" + +#: static/adm/js/gui-d-authenticators.js:279 +msgid "Edit user" +msgstr "Modifier utilisateur" + +#: static/adm/js/gui-d-authenticators.js:313 +#: static/adm/js/gui-d-authenticators.js:348 +msgid "User saved" +msgstr "Utilisateur enregistré" + +#: static/adm/js/gui-d-authenticators.js:314 +#: static/adm/js/gui-d-authenticators.js:349 +msgid "User saving error" +msgstr "Utilisateur sauvegarde erreur" + +#: static/adm/js/gui-d-authenticators.js:325 +msgid "New user" +msgstr "Nouvel utilisateur" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "Search users" +msgstr "Utilisateurs de la recherche" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "User" +msgstr "Utilisateur" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "Users found" +msgstr "Utilisateurs trouvés" + +#: static/adm/js/gui-d-authenticators.js:354 +msgid "Delete user" +msgstr "Supprimer l'utilisateur" + +#: static/adm/js/gui-d-authenticators.js:354 +msgid "User deletion error" +msgstr "Erreur de suppression d'utilisateur" + +#: static/adm/js/gui-d-authenticators.js:371 msgid "New authenticator" msgstr "Nouvel authentificateur" -#: static/adm/js/gui-definition.js:295 -msgid "Error creating authenticator" -msgstr "Authentificateur création erreur" +#: static/adm/js/gui-d-authenticators.js:371 +msgid "Authenticator creation error" +msgstr "Erreur de création d'authentificateur" -#: static/adm/js/gui-definition.js:296 +#: static/adm/js/gui-d-authenticators.js:372 msgid "Edit authenticator" msgstr "Modifier l'authentificateur" -#: static/adm/js/gui-definition.js:296 -msgid "Error processing authenticator" -msgstr "Authentificateur de traitement d'erreur" +#: static/adm/js/gui-d-authenticators.js:372 +msgid "Authenticator saving error" +msgstr "Authentificateur sauver erreur" -#: static/adm/js/gui-definition.js:297 +#: static/adm/js/gui-d-authenticators.js:373 msgid "Delete authenticator" msgstr "Supprimer l'authentificateur" -#: static/adm/js/gui-definition.js:297 -msgid "Error deleting authenticator" -msgstr "Authentificateur suppression de l'erreur" +#: static/adm/js/gui-d-authenticators.js:373 +msgid "Authenticator deletion error" +msgstr "Erreur suppression authentificateur" -#: static/adm/js/gui-definition.js:363 -msgid "Edit transport" -msgstr "Edit de transport" +#: static/adm/js/gui-d-config.js:42 +msgid "Configuration saved" +msgstr "Configuration sauvegardée" -#: static/adm/js/gui-definition.js:370 static/adm/js/gui-definition.js.c:405 -msgid "Error creating transport" -msgstr "Erreur de création du transport" - -#: static/adm/js/gui-definition.js:388 -msgid "Available for networks" -msgstr "Disponible pour les réseaux" - -#: static/adm/js/gui-definition.js:389 -msgid "Select networks that will see this transport" -msgstr "Sélectionnez réseaux qui verront ce transport" - -#: static/adm/js/gui-definition.js:390 -msgid "Transport active for selected networks" -msgstr "Transport actif pour réseaux sélectionnés" - -#: static/adm/js/gui-definition.js:391 -msgid "" -"If active, transport will only be available on selected networks. If " -"inactive, transport will be available form any net EXCEPT selected networks" -msgstr "" -"S'il est activé, transport ne sera disponible sur les réseaux sélectionnés. If " -"inactif, le transport sera disponible sous forme soit tout filet sauf les réseaux sélectionnés" - -#: static/adm/js/gui-definition.js:397 +#: static/adm/js/gui-d-connectivity.js:20 msgid "New transport" msgstr "Nouveau transport" -#: static/adm/js/gui-definition.js:414 +#: static/adm/js/gui-d-connectivity.js:20 +msgid "Transport creation error" +msgstr "Erreur de création de transport" + +#: static/adm/js/gui-d-connectivity.js:21 +msgid "Edit transport" +msgstr "Edit de transport" + +#: static/adm/js/gui-d-connectivity.js:21 +msgid "Transport saving error" +msgstr "Transport sauver erreur" + +#: static/adm/js/gui-d-connectivity.js:22 +msgid "Delete transport" +msgstr "Supprimer le transport" + +#: static/adm/js/gui-d-connectivity.js:22 +msgid "Transport deletion error" +msgstr "Erreur de suppression de transport" + +#: static/adm/js/gui-d-connectivity.js:28 +msgid "New network" +msgstr "Nouveau réseau" + +#: static/adm/js/gui-d-connectivity.js:28 +msgid "Network creation error" +msgstr "Erreur de création de réseau" + +#: static/adm/js/gui-d-connectivity.js:29 +msgid "Edit network" +msgstr "Modifier le réseau" + +#: static/adm/js/gui-d-connectivity.js:29 +msgid "Network saving error" +msgstr "Réseau économie erreur" + +#: static/adm/js/gui-d-connectivity.js:30 +msgid "Delete network" +msgstr "Supprimer réseau" + +#: static/adm/js/gui-d-connectivity.js:30 +msgid "Network deletion error" +msgstr "Erreur de suppression de réseau" + +#: static/adm/js/gui-d-osmanagers.js:13 +msgid "New OSManager" +msgstr "Nouveau OSManager" + +#: static/adm/js/gui-d-osmanagers.js:13 +msgid "OSManager creation error" +msgstr "Erreur de création de OSManager" + +#: static/adm/js/gui-d-osmanagers.js:14 +msgid "Edit OSManager" +msgstr "Modifier OSManager" + +#: static/adm/js/gui-d-osmanagers.js:14 +msgid "OSManager saving error" +msgstr "OSManager erreur de sauvegarde" + +#: static/adm/js/gui-d-osmanagers.js:15 +msgid "Delete OSManager" +msgstr "Supprimer OSManager" + +#: static/adm/js/gui-d-osmanagers.js:15 +msgid "OSManager deletion error" +msgstr "Erreur de suppression de OSManager" + +#: static/adm/js/gui-d-services.js:9 static/adm/js/gui-d-servicespools.js:120 +msgid "Test" +msgstr "Test" + +#: static/adm/js/gui-d-services.js:111 +msgid "Edit service" +msgstr "Modifier le service" + +#: static/adm/js/gui-d-services.js:111 +msgid "Service creation error" +msgstr "Erreur de création de service" + +#: static/adm/js/gui-d-services.js:112 +msgid "New service" +msgstr "Nouveau service" + +#: static/adm/js/gui-d-services.js:112 +msgid "Service saving error" +msgstr "Service enregistrement d'erreur" + +#: static/adm/js/gui-d-services.js:113 +msgid "Delete service" +msgstr "Supprimer le service" + +#: static/adm/js/gui-d-services.js:113 +msgid "Service deletion error" +msgstr "Erreur de suppression de service" + +#: static/adm/js/gui-d-services.js:128 +msgid "New services provider" +msgstr "Nouveau fournisseur de services" + +#: static/adm/js/gui-d-services.js:128 +msgid "Services provider creation error" +msgstr "Erreur de création de fournisseur de services" + +#: static/adm/js/gui-d-services.js:129 +msgid "Edit services provider" +msgstr "Modifier le fournisseur de services" + +#: static/adm/js/gui-d-services.js:129 +msgid "Services Provider saving error" +msgstr "Fournisseur de services de sauvegarde erreur" + +#: static/adm/js/gui-d-services.js:130 +msgid "Delete services provider" +msgstr "Supprimer le fournisseur de services" + +#: static/adm/js/gui-d-services.js:130 +msgid "Services Provider deletion error" +msgstr "Erreur de suppression de fournisseur de services" + +#: static/adm/js/gui-d-servicespools.js:136 +msgid "Error processing deployed service" +msgstr "Service de traitement déployée erreur" + +#: static/adm/js/gui-d-servicespools.js:191 +msgid "Add group" +msgstr "Ajouter groupe" + +#: static/adm/js/gui-d-servicespools.js:215 +msgid "You must provide authenticator and group" +msgstr "Vous devez fournir authentificateur et groupe" + +#: static/adm/js/gui-d-servicespools.js:230 +msgid "Remove group from service pool" +msgstr "Supprimer groupe de piscine service" + +#: static/adm/js/gui-d-servicespools.js:230 +msgid "Error removing group" +msgstr "Groupe suppression de l'erreur" + +#: static/adm/js/gui-d-servicespools.js:281 +msgid "Add transport" +msgstr "Ajouter transport" + +#: static/adm/js/gui-d-servicespools.js:288 +msgid "You must provide a transport" +msgstr "Vous devez fournir un transport" + +#: static/adm/js/gui-d-servicespools.js:303 +msgid "Remove transport from service pool" +msgstr "Enlever des transport de service piscine" + +#: static/adm/js/gui-d-servicespools.js:303 msgid "Error removing transport" msgstr "Erreur suppression des transports" -#: static/adm/js/gui-definition.js:432 +#: static/adm/js/gui-d-servicespools.js:328 +msgid "Cancel" +msgstr "Annuler" + +#: static/adm/js/gui-d-servicespools.js:349 +msgid "Publication failed" +msgstr "Publication a échoué" + +#: static/adm/js/gui-d-servicespools.js:379 +msgid "Restrained" +msgstr "Retenu" + +#: static/adm/js/gui-d-servicespools.js:387 +msgid "unknown (needs reload)" +msgstr "inconnu (doit recharger)" + +#: static/adm/js/gui-d-servicespools.js:391 +msgid "New service pool" +msgstr "Nouvelle piscine service" + +#: static/adm/js/gui-d-servicespools.js:391 +msgid "Error creating service pool" +msgstr "Pool service création d'erreur" + +#: static/adm/js/gui-d-servicespools.js:398 +msgid "Publish on creation" +msgstr "Publier sur création" + +#: static/adm/js/gui-d-servicespools.js:399 +msgid "" +"If selected, will initiate the publication on service inmediatly pool after " +"creation" +msgstr "" +"Si sélectionné, lancera la publication, le pool de service immédiatement " +"après création" + +#: static/adm/js/gui-d-servicespools.js:410 static/adm/js/gui.js:41 +msgid "Edit" +msgstr "Edit" + +#: static/adm/js/gui-d-servicespools.js:410 +msgid "saving error" +msgstr "erreur de sauvegarde" + +#: static/adm/js/gui-d-servicespools.js:411 static/adm/js/gui.js:45 +#: static/adm/js/gui.js.c:358 +msgid "Delete" +msgstr "Supprimer" + +#: static/adm/js/gui-d-servicespools.js:411 +msgid "deletion error" +msgstr "erreur de suppression" + +#: static/adm/js/gui-definition.js:11 msgid "Cache" msgstr "Cache" -#: static/adm/js/gui-definition.js:432 +#: static/adm/js/gui-definition.js:11 msgid "Cache has been flushed" msgstr "Cache a été vidé" -#: static/adm/js/gui-element.js:471 +#: static/adm/js/gui-element.js:557 msgid "Date" msgstr "Date" -#: static/adm/js/gui-element.js:478 +#: static/adm/js/gui-element.js:566 msgid "level" msgstr "niveau" -#: static/adm/js/gui-element.js:486 +#: static/adm/js/gui-element.js:574 msgid "source" msgstr "source" -#: static/adm/js/gui-element.js:493 +#: static/adm/js/gui-element.js:581 msgid "message" msgstr "Message" -#: static/adm/js/gui-element.js:499 +#: static/adm/js/gui-element.js:587 msgid "Logs" msgstr "Journaux" @@ -270,122 +482,106 @@ msgstr "Veuillez patienter, traitement" msgid "Filter" msgstr "Filtre" -#: static/adm/js/gui.js:28 -msgid "First" -msgstr "Première" - -#: static/adm/js/gui.js:29 -msgid "Last" -msgstr "Dernière" - #: static/adm/js/gui.js:37 msgid "New" msgstr "Nouveau" -#: static/adm/js/gui.js:41 -msgid "Edit" -msgstr "Edit" - -#: static/adm/js/gui.js:45 static/adm/js/gui.js.c:322 -msgid "Delete" -msgstr "Supprimer" - #: static/adm/js/gui.js:49 msgid "Xls" msgstr "XLS" -#: static/adm/js/gui.js:111 +#: static/adm/js/gui.js:123 msgid "Message" msgstr "Message" -#: static/adm/js/gui.js:133 -msgid "Deployed services" -msgstr "Services déployés" - -#: static/adm/js/gui.js:207 +#: static/adm/js/gui.js:217 msgid "This field is required." msgstr "Ce champ est obligatoire." -#: static/adm/js/gui.js:208 +#: static/adm/js/gui.js:218 msgid "Please fix this field." msgstr "Corrigez ce champ." -#: static/adm/js/gui.js:209 +#: static/adm/js/gui.js:219 msgid "Please enter a valid email address." msgstr "Veuillez entrer une adresse email valide." -#: static/adm/js/gui.js:210 +#: static/adm/js/gui.js:220 msgid "Please enter a valid URL." msgstr "Veuillez entrer une URL valide." -#: static/adm/js/gui.js:211 +#: static/adm/js/gui.js:221 msgid "Please enter a valid date." msgstr "Veuillez entrer une date valide." -#: static/adm/js/gui.js:212 +#: static/adm/js/gui.js:222 msgid "Please enter a valid date (ISO)." msgstr "Veuillez entrer une date valide (ISO)." -#: static/adm/js/gui.js:213 +#: static/adm/js/gui.js:223 msgid "Please enter a valid number." msgstr "Veuillez entrer un numéro valide." -#: static/adm/js/gui.js:214 +#: static/adm/js/gui.js:224 msgid "Please enter only digits." msgstr "Veuillez saisir uniquement des chiffres." -#: static/adm/js/gui.js:215 +#: static/adm/js/gui.js:225 msgid "Please enter a valid credit card number." msgstr "Veuillez entrer un numéro de carte de crédit valide." -#: static/adm/js/gui.js:216 +#: static/adm/js/gui.js:226 msgid "Please enter the same value again." msgstr "Entrez à nouveau la même valeur." -#: static/adm/js/gui.js:217 +#: static/adm/js/gui.js:227 msgid "Please enter no more than {0} characters." msgstr "S'il vous plaît entrez pas plus de {0} caractères." -#: static/adm/js/gui.js:218 +#: static/adm/js/gui.js:228 msgid "Please enter at least {0} characters." msgstr "Veuillez saisir au moins {0} caractères." -#: static/adm/js/gui.js:219 +#: static/adm/js/gui.js:229 msgid "Please enter a value between {0} and {1} characters long." msgstr "Veuillez entrer une valeur entre {0} et {1} caractères longtemps." -#: static/adm/js/gui.js:220 +#: static/adm/js/gui.js:230 msgid "Please enter a value between {0} and {1}." msgstr "Veuillez entrer une valeur entre {0} et {1}." -#: static/adm/js/gui.js:221 +#: static/adm/js/gui.js:231 msgid "Please enter a value less than or equal to {0}." msgstr "Veuillez entrer une valeur inférieure ou égale à {0}." -#: static/adm/js/gui.js:222 +#: static/adm/js/gui.js:232 msgid "Please enter a value greater than or equal to {0}." msgstr "Entrez une valeur supérieure ou égale à {0}." -#: static/adm/js/gui.js:244 +#: static/adm/js/gui.js:274 msgid "Test result" msgstr "Résultat du test" -#: static/adm/js/gui.js:245 +#: static/adm/js/gui.js:275 msgid "Test error" msgstr "Erreur de test" -#: static/adm/js/gui.js:276 +#: static/adm/js/gui.js:307 msgid "Edition successfully done" msgstr "Edition faite avec succès" -#: static/adm/js/gui.js:310 +#: static/adm/js/gui.js:330 +msgid "of type" +msgstr "de type" + +#: static/adm/js/gui.js:347 msgid "Creation successfully done" msgstr "Création faite avec succès" -#: static/adm/js/gui.js:321 +#: static/adm/js/gui.js:357 msgid "Are you sure do you want to delete " msgstr "Êtes-vous sûr que vous souhaitez supprimer " -#: static/adm/js/gui.js:327 +#: static/adm/js/gui.js:363 msgid "Item deleted" msgstr "Élément supprimé" diff --git a/server/src/uds/locale/it/LC_MESSAGES/django.mo b/server/src/uds/locale/it/LC_MESSAGES/django.mo index 8ab45d2af03df507bb48e8a3483c090517686dd6..8525c5d8b96421236c29bdcecb319f909be05893 100644 GIT binary patch delta 17309 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

vT$O{Ea!|``-9-O4NuX$Df?%Sc1 zRn++oxxD54<{N?m+Kwfrn=Kp33j}@frrYW#cL|3$VoYwB6U6rf`QEaZ^3%zAI`bAP z@#Tm8@d3B^l46hD`f_aJZQ~mA8R30YcvDw?{7T}l-ga$LY|ic5QYVD8)8nUapPST; z7as!*mYrF5+YhbZpFb=7@dbCTN~$u2fBS^lffT%m>o~HT@KhvK12=N{i+qJt*)O!nhz2H}zXX(uG{p8J2}PV~ z{8KAbRvN3fw{2`kX@l6O`SoH?-Cr+OW$)JbO?!)zx|V;#*hLAre7!jKy`tzJK4wzm zAGS^WhL=Su%(*k&TSCYCobg|`FTHkRADOj{b=;TU)zond0vu}dYpqR{?tRVh5-be( zmM~iTrQ^$pP2BhFADW5RdvJB~5GKRt`n-nCSB|FHtT7+noXi=4NEz>D&bt|xJ>H2u i9$&wIcS_Y^=4&Sq@B7%!q{jNrVbT)cIl7PGIsXG69k!wX delta 12501 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\n" "Language-Team: LANGUAGE \n" @@ -18,160 +18,410 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: REST/model.py:81 REST/methods/authenticators.py:56 -#: REST/methods/networks.py:51 REST/methods/osmanagers.py:52 -#: REST/methods/providers.py:57 REST/methods/transports.py:54 -#: REST/methods/users_groups.py:72 +#: REST/model.py:86 REST/methods/authenticators.py:58 +#: REST/methods/networks.py:54 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:59 REST/methods/services_pools.py:65 +#: REST/methods/transports.py:55 REST/methods/user_services.py:161 +#: REST/methods/user_services.py:189 REST/methods/users_groups.py:82 +#: templates/uds/admin/tmpl/user.html:29 templates/uds/admin/tmpl/user.html:32 msgid "Name" msgstr "Nome" -#: REST/model.py:82 +#: REST/model.py:87 msgid "Name of this element" msgstr "Nome di questo elemento" -#: REST/model.py:88 REST/methods/authenticators.py:57 -#: REST/methods/osmanagers.py:53 REST/methods/providers.py:58 -#: REST/methods/services.py:126 REST/methods/transports.py:55 -#: REST/methods/users_groups.py:73 REST/methods/users_groups.py:108 +#: REST/model.py:93 REST/methods/authenticators.py:59 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:60 +#: REST/methods/services.py:139 REST/methods/services_pools.py:68 +#: REST/methods/transports.py:56 REST/methods/user_services.py:191 +#: REST/methods/users_groups.py:83 REST/methods/users_groups.py:190 +#: templates/uds/admin/tmpl/group.html:37 +#: templates/uds/admin/tmpl/user.html:40 msgid "Comments" msgstr "Commenti" -#: REST/model.py:89 +#: REST/model.py:94 msgid "Comments for this element" msgstr "Commenti per questo elemento" -#: REST/model.py:97 REST/methods/authenticators.py:58 -#: REST/methods/transports.py:56 REST/methods/transports.py:69 +#: REST/model.py:102 REST/methods/authenticators.py:60 +#: REST/methods/transports.py:54 REST/methods/user_services.py:188 msgid "Priority" msgstr "Priorità" -#: REST/model.py:98 +#: REST/model.py:103 msgid "" "Selects the priority of this element (lower number means higher priority)" msgstr "" -"Seleziona la priorità di questo elemento (numero significa maggiore priorità inferiore)" +"Seleziona la priorità di questo elemento (numero significa maggiore priorità " +"inferiore)" -#: REST/model.py:106 REST/methods/authenticators.py:59 -msgid "Small name" -msgstr "Nome piccolo" +#: REST/model.py:113 +msgid "Short name" +msgstr "Nome breve" -#: REST/model.py:107 -msgid "Small name of this element" -msgstr "Piccolo nome di questo elemento" +#: REST/model.py:114 +msgid "Short name of this element" +msgstr "Nome breve di questo elemento" -#: REST/model.py:157 +#: REST/model.py:159 msgid "Invalid Request" msgstr "Richiesta non valida" -#: REST/model.py:160 +#: REST/model.py:162 msgid "Method not found" msgstr "Metodo non trovato" -#: REST/model.py:163 +#: REST/model.py:165 msgid "Item not found" msgstr "Articolo non trovato" -#: REST/methods/authenticators.py:54 +#: REST/methods/authenticators.py:56 msgid "Current authenticators" msgstr "Autenticatori correnti" -#: REST/methods/authenticators.py:60 +#: REST/methods/authenticators.py:61 +msgid "Small name" +msgstr "Nome piccolo" + +#: REST/methods/authenticators.py:62 #: templates/uds/admin/tmpl/authenticators.html:18 +#: templates/uds/admin/tmpl/dashboard.html:22 msgid "Users" msgstr "Utenti" -#: REST/methods/networks.py:49 +#: REST/methods/networks.py:52 msgid "Current Networks" msgstr "Reti attuali" -#: REST/methods/networks.py:52 templates/uds/index.html:79 -#: templates/uds/html5/index.html:124 -msgid "Networks" -msgstr "Reti" +#: REST/methods/networks.py:55 +msgid "Range" +msgstr "Gamma" -#: REST/methods/networks.py:53 REST/methods/osmanagers.py:54 +#: REST/methods/networks.py:56 REST/methods/osmanagers.py:57 #: REST/methods/transports.py:57 msgid "Used by" msgstr "Utilizzato da" -#: REST/methods/osmanagers.py:50 +#: REST/methods/networks.py:66 +msgid "Invalid network: " +msgstr "Rete non valido: " + +#: REST/methods/networks.py:73 +msgid "Network range" +msgstr "Rete gamma" + +#: REST/methods/networks.py:74 +msgid "" +"Network range. Accepts most network definitions formats (range, subnet, " +"host, etc..." +msgstr "" +"Rete gamma. Accetta la maggior parte dei formati di definizioni di rete " +"(gamma, subnet, host, ecc..." + +#: REST/methods/osmanagers.py:53 msgid "Current OS Managers" msgstr "Attuale OS Manager" -#: REST/methods/providers.py:53 templates/uds/admin/snippets/navbar.html:18 +#: REST/methods/osmanagers.py:75 +msgid "Can't delete an OSManager with deployed services associated" +msgstr "" +"Non è possibile eliminare un OSManager con servizi distribuiti associati" + +#: REST/methods/osmanagers.py:79 +msgid "Can't modify an OSManager with deployed services associated" +msgstr "" +"Non è possibile modificare un OSManager con servizi distribuiti associati" + +#: REST/methods/providers.py:55 msgid "Service providers" msgstr "Fornitori di servizi" -#: REST/methods/providers.py:59 templates/uds/index.html:51 +#: REST/methods/providers.py:61 templates/uds/index.html:51 +#: templates/uds/admin/snippets/navbar.html:18 +#: templates/uds/admin/tmpl/dashboard.html:49 +#: templates/uds/admin/tmpl/providers.html:4 +#: templates/uds/admin/tmpl/providers.html:7 #: templates/uds/admin/tmpl/providers.html:18 #: templates/uds/html5/index.html:65 msgid "Services" msgstr "Servizi" -#: REST/methods/services.py:119 +#: REST/methods/providers.py:62 +msgid "User Services" +msgstr "Servizi utente" + +#: REST/methods/providers.py:111 dispatchers/wyse_enterprise/views.py:254 +#: dispatchers/wyse_enterprise/views.py:257 web/errors.py:62 +msgid "Service not found" +msgstr "Servizio non trovato" + +#: REST/methods/services.py:132 #, python-brace-format msgid "Services of {0}" msgstr "Servizi di {0}" -#: REST/methods/services.py:121 +#: REST/methods/services.py:134 msgid "Current services" msgstr "Servizi attuali" -#: REST/methods/services.py:125 +#: REST/methods/services.py:138 msgid "Service name" msgstr "Nome servizio" -#: REST/methods/services.py:127 +#: REST/methods/services.py:140 REST/methods/user_services.py:190 msgid "Type" msgstr "Tipo" -#: REST/methods/services.py:128 templates/uds/admin/snippets/navbar.html:22 +#: REST/methods/services.py:141 REST/methods/services_pools.py:63 msgid "Deployed services" msgstr "Servizi distribuiti" +#: REST/methods/services.py:142 templates/uds/admin/tmpl/dashboard.html:76 +msgid "User services" +msgstr "Servizi utente" + +#: REST/methods/services_pools.py:66 +msgid "Parent Service" +msgstr "Servizio padre" + +#: REST/methods/services_pools.py:67 REST/methods/users_groups.py:84 +#: REST/methods/users_groups.py:191 +msgid "state" +msgstr "stato" + +#: REST/methods/services_pools.py:95 +msgid "Create at least one OS Manager before creating a new service pool" +msgstr "Creare almeno un OS Manager prima di creare un nuovo pool di servizio" + +#: REST/methods/services_pools.py:97 +msgid "Create at least a service before creating a new service pool" +msgstr "Creare almeno un servizio prima di creare un nuovo pool di servizio" + +#: REST/methods/services_pools.py:104 +msgid "Base service" +msgstr "Servizio di base" + +#: REST/methods/services_pools.py:105 +msgid "Service used as base of this service pool" +msgstr "Servizio utilizzato come base di questo servizio piscina" + +#: REST/methods/services_pools.py:112 +msgid "OS Manager" +msgstr "OS Manager" + +#: REST/methods/services_pools.py:113 +msgid "OS Manager used as base of this service pool" +msgstr "OS Manager utilizzato come base di questo servizio piscina" + +#: REST/methods/services_pools.py:120 +msgid "Initial available services" +msgstr "Servizi disponibili iniziali" + +#: REST/methods/services_pools.py:121 +msgid "Services created initially for this service pool" +msgstr "Servizi creati inizialmente per questo servizio piscina" + +#: REST/methods/services_pools.py:127 +msgid "Services to keep in cache" +msgstr "Servizi per mantenere nella cache" + +#: REST/methods/services_pools.py:128 +msgid "Services keeped in cache for improved user service assignation" +msgstr "" +"Servizi keeped nella cache per l'assegnazione del servizio utente migliorata" + +#: REST/methods/services_pools.py:134 +msgid "Services to keep in L2 cache" +msgstr "Servizi per mantenere in cache L2" + +#: REST/methods/services_pools.py:135 +msgid "Services keeped in cache of level2 for improved service generation" +msgstr "" +"Servizi keeped nella cache di level2 per migliorato servizio generazione" + +#: REST/methods/services_pools.py:141 +msgid "Maximum number of services to provide" +msgstr "Numero massimo di servizi per fornire" + +#: REST/methods/services_pools.py:142 +msgid "" +"Maximum number of service (assigned and L1 cache) that can be created for " +"this service" +msgstr "" +"Numero massimo di servizio (assegnate e cache L1) che possono essere creati " +"per Questo servizio" + +#: REST/methods/services_pools.py:159 +msgid "Base service does not exists anymore" +msgstr "Servizio di base non esiste piu '" + +#: REST/methods/services_pools.py:168 +msgid "This service requires an os manager" +msgstr "Questo servizio richiede un manager di os" + #: REST/methods/transports.py:52 msgid "Current Transports" msgstr "Trasporti correnti" -#: REST/methods/transports.py:70 -msgid "Priority of this transport" -msgstr "Priorità di questo trasporto" +#: REST/methods/transports.py:68 +msgid "Network access" +msgstr "Accesso alla rete" -#: REST/methods/users_groups.py:65 +#: REST/methods/transports.py:69 +msgid "" +"If ACTIVE, the transport will be enabled for the selected networks.If " +"INACTIVE, trans port will be disabled for selected networks" +msgstr "" +"Se attivo, il trasporto sarà attivato per le reti selezionate.Se INATTIVO, " +"trans porto verrà disabilitato per reti selezionate" + +#: REST/methods/transports.py:76 templates/uds/index.html:79 +#: templates/uds/html5/index.html:124 +msgid "Networks" +msgstr "Reti" + +#: REST/methods/transports.py:77 +msgid "" +"Networks associated with this transport. If No network selected, will mean " +"\"all networks\"" +msgstr "" +"Reti associate a questo trasporto. Se nessuna rete selezionata, significherà " +"\"tutte le reti\"" + +#: REST/methods/user_services.py:88 +#: templates/uds/admin/tmpl/services_pool.html:18 +msgid "Assigned services" +msgstr "Servizi assegnati" + +#: REST/methods/user_services.py:92 REST/methods/user_services.py:128 +msgid "Creation date" +msgstr "Data di creazione" + +#: REST/methods/user_services.py:93 REST/methods/user_services.py:129 +#: REST/methods/user_services.py:224 +msgid "Revision" +msgstr "Revisione" + +#: REST/methods/user_services.py:95 REST/methods/user_services.py:131 +msgid "Friendly name" +msgstr "Nome descrittivo" + +#: REST/methods/user_services.py:96 REST/methods/user_services.py:132 +#: REST/methods/user_services.py:163 REST/methods/user_services.py:226 +#: templates/uds/admin/tmpl/group.html:42 +#: templates/uds/admin/tmpl/user.html:45 +msgid "State" +msgstr "Stato" + +#: REST/methods/user_services.py:97 +msgid "Owner" +msgstr "Proprietario" + +#: REST/methods/user_services.py:124 +msgid "Cached services" +msgstr "Servizi memorizzati nella cache" + +#: REST/methods/user_services.py:133 +msgid "Cache level" +msgstr "Livello della cache" + +#: REST/methods/user_services.py:156 +msgid "Assigned groups" +msgstr "Gruppi assegnati" + +#: REST/methods/user_services.py:162 templates/uds/admin/tmpl/group.html:34 +#: templates/uds/admin/tmpl/user.html:37 +msgid "comments" +msgstr "Commenti" + +#: REST/methods/user_services.py:184 +msgid "Assigned transports" +msgstr "Trasporti assegnati" + +#: REST/methods/user_services.py:220 +#: templates/uds/admin/tmpl/services_pool.html:22 +msgid "Publications" +msgstr "Pubblicazioni" + +#: REST/methods/user_services.py:225 +msgid "Publish date" +msgstr "Data di pubblicazione" + +#: REST/methods/user_services.py:227 +msgid "Reason" +msgstr "Motivo" + +#: REST/methods/users_groups.py:75 #, python-brace-format msgid "Users of {0}" msgstr "Utenti di {0}" -#: REST/methods/users_groups.py:67 +#: REST/methods/users_groups.py:77 msgid "Current users" msgstr "Utenti correnti" -#: REST/methods/users_groups.py:71 REST/methods/users_groups.py:107 -msgid "User Id" -msgstr "Id utente" +#: REST/methods/users_groups.py:81 +#: auths/ActiveDirectory_enterprise/Authenticator.py:48 +#: auths/EDirectory_enterprise/Authenticator.py:77 +#: auths/RegexLdap/Authenticator.py:72 auths/SimpleLDAP/Authenticator.py:73 +#: services/HyperV_enterprise/HyperVClusterProvider.py:91 +#: services/HyperV_enterprise/HyperVProvider.py:83 +#: services/OVirt/OVirtProvider.py:93 +#: services/Vmware_enterprise/ServiceProviderVC.py:30 +#: templates/uds/admin/tmpl/user.html:16 transports/HTML5RDP/HTML5RDP.py:64 +#: transports/NX/NXTransport.py:61 transports/NX/TSNXTransport.py:66 +#: transports/RDP/RDPTransport.py:59 transports/RDP/TSRDPTransport.py:63 +#: transports/RGS-enterprise/RGSTransport.py:42 +#: transports/RGS-enterprise/TRGSTransport.py:47 +#: transports/TSNX/TSNXTransport.py:66 web/forms/LoginForm.py:69 +msgid "Username" +msgstr "Nome utente" -#: REST/methods/users_groups.py:74 REST/methods/users_groups.py:109 -msgid "state" -msgstr "stato" - -#: REST/methods/users_groups.py:75 +#: REST/methods/users_groups.py:85 msgid "Last access" msgstr "Ultimo accesso" -#: REST/methods/users_groups.py:101 +#: REST/methods/users_groups.py:132 REST/methods/users_groups.py:244 +msgid "User already exists (duplicate key error)" +msgstr "Utente già esistente (errore chiave duplicata)" + +#: REST/methods/users_groups.py:183 #, python-brace-format msgid "Groups of {0}" msgstr "Gruppi di {0}" -#: REST/methods/users_groups.py:103 +#: REST/methods/users_groups.py:185 msgid "Current groups" msgstr "Gruppi di corrente" -#: admin/views.py:55 admin/views.py:63 admin/views.py:77 web/views.py:422 +#: REST/methods/users_groups.py:189 REST/methods/users_groups.py:196 +#: auths/ActiveDirectory_enterprise/Authenticator.py:50 +#: auths/EDirectory_enterprise/Authenticator.py:79 +#: auths/RegexLdap/Authenticator.py:74 auths/SAML_enterprise/SAML.py:114 +#: auths/SimpleLDAP/Authenticator.py:75 +#: templates/uds/admin/tmpl/pool_add_group.html:17 +msgid "Group" +msgstr "Gruppo" + +#: REST/methods/users_groups.py:196 +msgid "UDS Group" +msgstr "Gruppo UDS" + +#: REST/methods/users_groups.py:197 +msgid "Meta group" +msgstr "Gruppo meta" + +#: REST/methods/users_groups.py:197 +msgid "UDS Meta Group" +msgstr "UDS Meta Group" + +#: admin/views.py:51 admin/views.py:59 admin/views.py:73 web/views.py:425 msgid "Forbidden" msgstr "Vietato" -#: admin/views.py:70 +#: admin/views.py:66 msgid "requested a template that do not exists" msgstr "richiesto da un modello che non esiste" @@ -234,9 +484,9 @@ msgstr "" #: services/HyperV_enterprise/HyperVProvider.py:84 #: services/OVirt/OVirtProvider.py:94 services/Sample/SampleService.py:131 #: services/Vmware_enterprise/ServiceProviderVC.py:31 -#: transports/HTML5RDP/HTML5RDP.py:65 transports/NX/NXTransport.py:62 -#: transports/NX/TSNXTransport.py:67 transports/RDP/RDPTransport.py:60 -#: transports/RDP/TSRDPTransport.py:64 +#: templates/uds/admin/tmpl/user.html:78 transports/HTML5RDP/HTML5RDP.py:65 +#: transports/NX/NXTransport.py:62 transports/NX/TSNXTransport.py:67 +#: transports/RDP/RDPTransport.py:60 transports/RDP/TSRDPTransport.py:64 #: transports/RGS-enterprise/RGSTransport.py:43 #: transports/RGS-enterprise/TRGSTransport.py:48 #: transports/TSNX/TSNXTransport.py:67 web/forms/LoginForm.py:70 @@ -271,31 +521,8 @@ msgstr "Autenticatore di Active Directory" msgid "Authenticate against Active Directory" msgstr "L'autenticazione in Active Directory" -#: auths/ActiveDirectory_enterprise/Authenticator.py:48 -#: auths/EDirectory_enterprise/Authenticator.py:77 -#: auths/RegexLdap/Authenticator.py:72 auths/SimpleLDAP/Authenticator.py:73 -#: services/HyperV_enterprise/HyperVClusterProvider.py:91 -#: services/HyperV_enterprise/HyperVProvider.py:83 -#: services/OVirt/OVirtProvider.py:93 -#: services/Vmware_enterprise/ServiceProviderVC.py:30 -#: transports/HTML5RDP/HTML5RDP.py:64 transports/NX/NXTransport.py:61 -#: transports/NX/TSNXTransport.py:66 transports/RDP/RDPTransport.py:59 -#: transports/RDP/TSRDPTransport.py:63 -#: transports/RGS-enterprise/RGSTransport.py:42 -#: transports/RGS-enterprise/TRGSTransport.py:47 -#: transports/TSNX/TSNXTransport.py:66 web/forms/LoginForm.py:69 -msgid "Username" -msgstr "Nome utente" - -#: auths/ActiveDirectory_enterprise/Authenticator.py:50 -#: auths/EDirectory_enterprise/Authenticator.py:79 -#: auths/RegexLdap/Authenticator.py:74 auths/SAML_enterprise/SAML.py:114 -#: auths/SimpleLDAP/Authenticator.py:75 -msgid "Group" -msgstr "Gruppo" - #: auths/ActiveDirectory_enterprise/Authenticator.py:67 -#: auths/ActiveDirectory_enterprise/Authenticator.py:442 +#: auths/ActiveDirectory_enterprise/Authenticator.py:444 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "Deve specificare il nome utente nella forma USERNAME@DOMAIN.DOM" @@ -304,7 +531,7 @@ msgid "Active directory connection error: " msgstr "Errore di connessione Active directory: " #: auths/ActiveDirectory_enterprise/Authenticator.py:344 -#: auths/ActiveDirectory_enterprise/Authenticator.py:390 +#: auths/ActiveDirectory_enterprise/Authenticator.py:392 #: auths/EDirectory_enterprise/Authenticator.py:243 #: auths/EDirectory_enterprise/Authenticator.py:286 #: auths/RegexLdap/Authenticator.py:303 auths/RegexLdap/Authenticator.py:346 @@ -317,33 +544,33 @@ msgstr "Nome utente non trovato" msgid "Group not found" msgstr "Gruppo non trovato" -#: auths/ActiveDirectory_enterprise/Authenticator.py:410 -#: auths/ActiveDirectory_enterprise/Authenticator.py:428 +#: auths/ActiveDirectory_enterprise/Authenticator.py:412 +#: auths/ActiveDirectory_enterprise/Authenticator.py:430 #: auths/EDirectory_enterprise/Authenticator.py:303 #: auths/RegexLdap/Authenticator.py:367 auths/SimpleLDAP/Authenticator.py:328 #: auths/SimpleLDAP/Authenticator.py:342 msgid "Too many results, be more specific" msgstr "Troppi risultati, essere più specifico" -#: auths/ActiveDirectory_enterprise/Authenticator.py:451 +#: auths/ActiveDirectory_enterprise/Authenticator.py:453 msgid "Domain seems to be incorrect, please check it" msgstr "Dominio sembra essere corretto, si prega di controllare" -#: auths/ActiveDirectory_enterprise/Authenticator.py:456 +#: auths/ActiveDirectory_enterprise/Authenticator.py:458 msgid "Server does not seem an Active Directory (do not have user objects)" msgstr "Server non sembra un'Active Directory (non hanno oggetti utente)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:464 +#: auths/ActiveDirectory_enterprise/Authenticator.py:466 msgid "Server does not seem an Active Directory (no not have group objects)" msgstr "Server non sembra un'Active Directory (no, non sono oggetti di gruppo)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:472 +#: auths/ActiveDirectory_enterprise/Authenticator.py:474 msgid "" "Server does not seem an Active Directory (do not have any user nor groups)" msgstr "" "Server non sembra un'Active Directory (non hanno alcun utente né gruppi)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:477 +#: auths/ActiveDirectory_enterprise/Authenticator.py:479 #: auths/EDirectory_enterprise/Authenticator.py:358 #: auths/RegexLdap/Authenticator.py:428 auths/SimpleLDAP/Authenticator.py:423 msgid "Connection params seem correct, test was succesfully executed" @@ -682,6 +909,9 @@ msgstr "Gruppo falso" #: auths/Sample/SampleAuth.py:111 #: templates/uds/admin/tmpl/authenticators.html:19 +#: templates/uds/admin/tmpl/group.html:53 +#: templates/uds/admin/tmpl/services_pool.html:20 +#: templates/uds/admin/tmpl/user.html:85 templates/uds/admin/tmpl/user.html:99 msgid "Groups" msgstr "Gruppi" @@ -768,7 +998,7 @@ msgstr "Base autenticatore" msgid "User name" msgstr "Nome utente" -#: core/auths/BaseAuthenticator.py:131 +#: core/auths/BaseAuthenticator.py:131 templates/uds/admin/tmpl/group.html:19 msgid "Group name" msgstr "Nome gruppo" @@ -777,6 +1007,10 @@ msgid "Users can't be created inside this authenticator" msgstr "" "Gli utenti non possono essere creati all'interno di questo autenticatore" +#: core/auths/auth.py:61 +msgid "System Administrator" +msgstr "Amministratore di sistema" + #: core/managers/PublicationManager.py:181 msgid "" "Already publishing. Wait for previous publication to finish and try again" @@ -826,16 +1060,16 @@ msgstr "24 bit" msgid "32 bits" msgstr "32 bit" -#: core/managers/UserServiceManager.py:322 +#: core/managers/UserServiceManager.py:314 msgid "Cancel requested for a non running operation, doing remove instead" msgstr "" "Annulla richiesto per un'operazione non in esecuzione, facendo invece Rimuovi" -#: core/managers/UserServiceManager.py:343 +#: core/managers/UserServiceManager.py:335 msgid "Can't remove a non active element" msgstr "Non è possibile rimuovere un elemento non attivo" -#: core/managers/UserServiceManager.py:356 +#: core/managers/UserServiceManager.py:348 #, python-brace-format msgid "Can't remove nor cancel {0} cause its states doesn't allows it" msgstr "" @@ -874,7 +1108,7 @@ msgstr "Attivo" msgid "Inactive" msgstr "Inattivo" -#: core/util/State.py:60 +#: core/util/State.py:60 templates/uds/admin/tmpl/user.html:50 msgid "Blocked" msgstr "Bloccato" @@ -990,11 +1224,6 @@ msgstr "Richiesta non valida" msgid "Invalid credentials used" msgstr "Credenziali non valide usate" -#: dispatchers/wyse_enterprise/views.py:254 -#: dispatchers/wyse_enterprise/views.py:257 web/errors.py:62 -msgid "Service not found" -msgstr "Servizio non trovato" - #: dispatchers/wyse_enterprise/views.py:271 web/errors.py:61 msgid "Transport not found" msgstr "Trasporto non trovato" @@ -1406,12 +1635,12 @@ msgid "HyperV Linked Clone (Experimental)" msgstr "HyperV Clone collegato (sperimentale)" #: services/HyperV_enterprise/HyperVProvider.py:62 -msgid "HyperV Platform Provider" -msgstr "Fornitore di piattaforma HyperV" +msgid "HyperV Platform Provider (experimental)" +msgstr "Fornitore di piattaforma HyperV (sperimentale)" #: services/HyperV_enterprise/HyperVProvider.py:66 -msgid "HyperV platform service provider" -msgstr "Fornitore di servizi di piattaforma HyperV" +msgid "HyperV platform service provider (experimental)" +msgstr "HyperV piattaforma servizio provider (sperimentale)" #: services/OVirt/OVirtLinkedService.py:56 msgid "oVirt Linked Clone (Experimental)" @@ -1774,7 +2003,8 @@ msgstr "e riavviare il browser" msgid "Ip" msgstr "IP" -#: templates/uds/index.html:80 templates/uds/html5/index.html:125 +#: templates/uds/index.html:80 templates/uds/admin/tmpl/services_pool.html:21 +#: templates/uds/html5/index.html:125 msgid "Transports" msgstr "Trasporti" @@ -1830,35 +2060,90 @@ msgid "Connectivity" msgstr "Connettività" #: templates/uds/admin/snippets/navbar.html:26 +#: templates/uds/admin/tmpl/configuration.html:7 msgid "Configuration" msgstr "Configurazione" #: templates/uds/admin/snippets/navbar.html:27 -msgid "Clear cache" -msgstr "Svuota cache" +msgid "Flush cache" +msgstr "Svuotare cache" -#: templates/uds/admin/snippets/navbar.html:57 +#: templates/uds/admin/snippets/navbar.html:56 msgid "Exit" msgstr "Uscita" -#: templates/uds/admin/snippets/navbar.html:58 +#: templates/uds/admin/snippets/navbar.html:57 msgid "Logout" msgstr "Logout" #: templates/uds/admin/tmpl/authenticators.html:20 #: templates/uds/admin/tmpl/providers.html:19 +#: templates/uds/admin/tmpl/services_pool.html:23 msgid "Logs" msgstr "Registri" +#: templates/uds/admin/tmpl/configuration.html:4 +msgid "UDS Configuration" +msgstr "Configurazione di UDS" + +#: templates/uds/admin/tmpl/configuration.html:58 +#: templates/uds/admin/tmpl/comp/modal.html:26 +msgid "Save" +msgstr "Salvare" + #: templates/uds/admin/tmpl/connectivity.html:4 -#: templates/uds/admin/tmpl/dashboard.html:4 +#: templates/uds/admin/tmpl/dashboard.html:5 msgid "overview" msgstr "Panoramica" -#: templates/uds/admin/tmpl/providers.html:4 -#: templates/uds/admin/tmpl/providers.html:7 -msgid "Providers" -msgstr "Fornitori" +#: templates/uds/admin/tmpl/dashboard.html:30 +msgid "View Authenticators" +msgstr "Vista autenticatori" + +#: templates/uds/admin/tmpl/dashboard.html:57 +msgid "View services" +msgstr "Servizi vista" + +#: templates/uds/admin/tmpl/dashboard.html:84 +#: templates/uds/admin/tmpl/dashboard.html:111 +msgid "View services pools" +msgstr "Visualizzazione servizi piscine" + +#: templates/uds/admin/tmpl/dashboard.html:103 +msgid "Restrained services pools" +msgstr "Trattenuto servizi piscine" + +#: templates/uds/admin/tmpl/dashboard.html:127 +msgid "Assigned services graph" +msgstr "Grafico di servizi assegnati" + +#: templates/uds/admin/tmpl/dashboard.html:139 +msgid "Used services graph" +msgstr "Grafico usato servizi" + +#: templates/uds/admin/tmpl/group.html:25 +#: templates/uds/admin/tmpl/search.html:9 +#: templates/uds/admin/tmpl/user.html:21 +msgid "Search" +msgstr "Ricerca" + +#: templates/uds/admin/tmpl/group.html:45 +#: templates/uds/admin/tmpl/user.html:48 +msgid "Enabled" +msgstr "Abilitato" + +#: templates/uds/admin/tmpl/group.html:46 +#: templates/uds/admin/tmpl/user.html:49 +msgid "Disabled" +msgstr "Disabili" + +#: templates/uds/admin/tmpl/pool_add_group.html:5 web/forms/LoginForm.py:71 +msgid "Authenticator" +msgstr "Autenticatore" + +#: templates/uds/admin/tmpl/pool_add_transport.html:5 +msgid "Transport" +msgstr "Trasporto" #: templates/uds/admin/tmpl/request_failed.html:4 msgid "Error on request" @@ -1873,22 +2158,47 @@ msgstr "C'era un errore che richiede dati dal server, per favore, riprova" msgid "Dashboard" msgstr "Cruscotto" -#: templates/uds/admin/tmpl/comp/modal.html:19 -msgid "Close" -msgstr "Chiudere" +#: templates/uds/admin/tmpl/services_pool.html:4 +msgid "Services Pools" +msgstr "Servizi piscine" -#: templates/uds/admin/tmpl/comp/modal.html:26 -msgid "Save" -msgstr "Salvare" +#: templates/uds/admin/tmpl/services_pool.html:7 +msgid "Deployed Services" +msgstr "Servizi distribuiti" -#: templates/uds/admin/tmpl/fld/checkbox.html:4 +#: templates/uds/admin/tmpl/services_pool.html:19 +msgid "Cache" +msgstr "Cache" + +#: templates/uds/admin/tmpl/user.html:56 +msgid "Staff member" +msgstr "Membro dello staff" + +#: templates/uds/admin/tmpl/user.html:58 templates/uds/admin/tmpl/user.html:68 +#: templates/uds/admin/tmpl/fld/checkbox.html:5 msgid "Yes" msgstr "Sì" -#: templates/uds/admin/tmpl/fld/checkbox.html:4 +#: templates/uds/admin/tmpl/user.html:59 templates/uds/admin/tmpl/user.html:68 +#: templates/uds/admin/tmpl/fld/checkbox.html:5 msgid "No" msgstr "No" +#: templates/uds/admin/tmpl/user.html:66 +#: templates/uds/snippets/admin_user.html:4 +msgid "Admin" +msgstr "Admin" + +#: templates/uds/admin/tmpl/user.html:87 +#: templates/uds/admin/tmpl/user.html:101 +#, python-brace-format +msgid "{0} of {1} selected" +msgstr "{0} di {1} selezionato" + +#: templates/uds/admin/tmpl/comp/modal.html:19 +msgid "Close" +msgstr "Chiudere" + #: templates/uds/admin/tmpl/fld/editlist_popup.html:5 msgid "Current list" msgstr "Lista corrente" @@ -2013,10 +2323,6 @@ msgstr "" "l'aggiornamento a un moderno HTML5 browser come Firefox, Chrome, Opera,... " "(IE deve essere 10 o migliore)" -#: templates/uds/snippets/admin_user.html:4 -msgid "Admin" -msgstr "Admin" - #: templates/uds/snippets/lang.html:9 msgid "Language" msgstr "Lingua" @@ -2503,7 +2809,7 @@ msgstr "" "Il tuo browser non è supportato. Per favore, eseguire l'aggiornamento a un " "browser HTML5 moderno come Firefox o Chrome" -#: web/views.py:401 +#: web/views.py:404 msgid "Authenticator do not provides information" msgstr "Autenticatore do non fornisce informazioni" @@ -2515,10 +2821,6 @@ msgstr "Selezionare autenticatore" msgid "authenticator" msgstr "autenticatore" -#: web/forms/LoginForm.py:71 -msgid "Authenticator" -msgstr "Autenticatore" - #: xmlrpc/auths/AdminAuth.py:115 msgid "Credentials no longer valid" msgstr "Credenziali non sono più valide" diff --git a/server/src/uds/locale/it/LC_MESSAGES/djangojs.mo b/server/src/uds/locale/it/LC_MESSAGES/djangojs.mo index f9e51113e84070932b18885100007a258ede8f6a..87de2292f3c7b22555387ab67aeaffbcfb8a6e4e 100644 GIT binary patch literal 9223 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 diff --git a/server/src/uds/locale/it/LC_MESSAGES/djangojs.po b/server/src/uds/locale/it/LC_MESSAGES/djangojs.po index c3b1eee1..0d0f1e83 100644 --- a/server/src/uds/locale/it/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/it/LC_MESSAGES/djangojs.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-12-08 19:29+0100\n" +"POT-Creation-Date: 2014-02-05 10:32+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -98,147 +98,359 @@ msgstr "Dicembre" msgid "_MENU_ records per page" msgstr "Record _MENU_ per pagina" -#: static/adm/js/gui-definition.js:38 -msgid "Test" -msgstr "Prova" - -#: static/adm/js/gui-definition.js:140 -msgid "Edit service" -msgstr "Modifica servizio" - -#: static/adm/js/gui-definition.js:140 -msgid "Error processing service" -msgstr "Servizio di elaborazione di Errori" - -#: static/adm/js/gui-definition.js:141 -msgid "New service" -msgstr "Nuovo servizio" - -#: static/adm/js/gui-definition.js:141 -msgid "Error creating service" -msgstr "Errore durante la creazione di servizio" - -#: static/adm/js/gui-definition.js:142 -msgid "Delete service" -msgstr "Eliminare il servizio" - -#: static/adm/js/gui-definition.js:142 -msgid "Error deleting service" -msgstr "Errore eliminazione servizio" - -#: static/adm/js/gui-definition.js:157 -msgid "New provider" -msgstr "Nuovo provider" - -#: static/adm/js/gui-definition.js:157 -msgid "Error creating provider" -msgstr "Provider creazione di errore" - -#: static/adm/js/gui-definition.js:158 -msgid "Edit provider" -msgstr "Modificare il provider di" - -#: static/adm/js/gui-definition.js:158 -msgid "Error processing provider" -msgstr "Provider di errore elaborazione" - -#: static/adm/js/gui-definition.js:159 -msgid "Delete provider" -msgstr "Eliminare provider" - -#: static/adm/js/gui-definition.js:159 -msgid "Error deleting provider" -msgstr "Provider di eliminazione errore" - -#: static/adm/js/gui-definition.js:177 +#: static/adm/js/gui-d-authenticators.js:10 msgid "Test authenticator" msgstr "Autenticatore di prova" -#: static/adm/js/gui-definition.js:295 +#: static/adm/js/gui-d-authenticators.js:52 +msgid "Search error" +msgstr "Errore di ricerca" + +#: static/adm/js/gui-d-authenticators.js:60 +msgid "Accept" +msgstr "Accettare" + +#: static/adm/js/gui-d-authenticators.js:153 +msgid "Edit group" +msgstr "Modifica gruppo" + +#: static/adm/js/gui-d-authenticators.js:175 +#: static/adm/js/gui-d-authenticators.js:216 +msgid "Group saved" +msgstr "Gruppo salvato" + +#: static/adm/js/gui-d-authenticators.js:196 +msgid "New group" +msgstr "Nuovo gruppo" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Search groups" +msgstr "Gruppi di ricerca" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Group" +msgstr "Gruppo" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Groups found" +msgstr "Gruppo trovato" + +#: static/adm/js/gui-d-authenticators.js:217 +msgid "Group saving error" +msgstr "Gruppo risparmio errore" + +#: static/adm/js/gui-d-authenticators.js:231 +msgid "Delete group" +msgstr "Elimina gruppo" + +#: static/adm/js/gui-d-authenticators.js:231 +msgid "Group deletion error" +msgstr "Errore di omissione di gruppo" + +#: static/adm/js/gui-d-authenticators.js:279 +msgid "Edit user" +msgstr "Modifica utente" + +#: static/adm/js/gui-d-authenticators.js:313 +#: static/adm/js/gui-d-authenticators.js:348 +msgid "User saved" +msgstr "Utente salvato" + +#: static/adm/js/gui-d-authenticators.js:314 +#: static/adm/js/gui-d-authenticators.js:349 +msgid "User saving error" +msgstr "Utente errore di risparmio" + +#: static/adm/js/gui-d-authenticators.js:325 +msgid "New user" +msgstr "Nuovo utente" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "Search users" +msgstr "Ricerca utenti" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "User" +msgstr "Utente" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "Users found" +msgstr "Utenti trovati" + +#: static/adm/js/gui-d-authenticators.js:354 +msgid "Delete user" +msgstr "Cancella utente" + +#: static/adm/js/gui-d-authenticators.js:354 +msgid "User deletion error" +msgstr "Errore di omissione dell'utente" + +#: static/adm/js/gui-d-authenticators.js:371 msgid "New authenticator" msgstr "Nuovo autenticatore" -#: static/adm/js/gui-definition.js:295 -msgid "Error creating authenticator" -msgstr "Creazione autenticatore errore" +#: static/adm/js/gui-d-authenticators.js:371 +msgid "Authenticator creation error" +msgstr "Errore di creazione di autenticatore" -#: static/adm/js/gui-definition.js:296 +#: static/adm/js/gui-d-authenticators.js:372 msgid "Edit authenticator" msgstr "Modifica autenticatore" -#: static/adm/js/gui-definition.js:296 -msgid "Error processing authenticator" -msgstr "Autenticatore di errore elaborazione" +#: static/adm/js/gui-d-authenticators.js:372 +msgid "Authenticator saving error" +msgstr "Autenticatore errore di risparmio" -#: static/adm/js/gui-definition.js:297 +#: static/adm/js/gui-d-authenticators.js:373 msgid "Delete authenticator" msgstr "Eliminare l'autenticatore" -#: static/adm/js/gui-definition.js:297 -msgid "Error deleting authenticator" -msgstr "Autenticatore eliminazione errore" +#: static/adm/js/gui-d-authenticators.js:373 +msgid "Authenticator deletion error" +msgstr "Errore di omissione autenticatore" -#: static/adm/js/gui-definition.js:363 -msgid "Edit transport" -msgstr "Modifica trasporto" +#: static/adm/js/gui-d-config.js:42 +msgid "Configuration saved" +msgstr "Configurazione salvata" -#: static/adm/js/gui-definition.js:370 static/adm/js/gui-definition.js.c:405 -msgid "Error creating transport" -msgstr "Errore durante la creazione di trasporto" - -#: static/adm/js/gui-definition.js:388 -msgid "Available for networks" -msgstr "Disponibile per le reti" - -#: static/adm/js/gui-definition.js:389 -msgid "Select networks that will see this transport" -msgstr "Selezionare reti che vedranno questo trasporto" - -#: static/adm/js/gui-definition.js:390 -msgid "Transport active for selected networks" -msgstr "Trasporto attivo per reti selezionate" - -#: static/adm/js/gui-definition.js:391 -msgid "" -"If active, transport will only be available on selected networks. If " -"inactive, transport will be available form any net EXCEPT selected networks" -msgstr "" -"Se attivo, trasporto sarà disponibile solo su reti selezionate. Se " -"inattivo, trasporto sarà disponibile forma qualsiasi netto tranne reti selezionate" - -#: static/adm/js/gui-definition.js:397 +#: static/adm/js/gui-d-connectivity.js:20 msgid "New transport" msgstr "Nuovo trasporto" -#: static/adm/js/gui-definition.js:414 +#: static/adm/js/gui-d-connectivity.js:20 +msgid "Transport creation error" +msgstr "Errore di creazione di trasporto" + +#: static/adm/js/gui-d-connectivity.js:21 +msgid "Edit transport" +msgstr "Modifica trasporto" + +#: static/adm/js/gui-d-connectivity.js:21 +msgid "Transport saving error" +msgstr "Trasporto errore di risparmio" + +#: static/adm/js/gui-d-connectivity.js:22 +msgid "Delete transport" +msgstr "Eliminare il trasporto" + +#: static/adm/js/gui-d-connectivity.js:22 +msgid "Transport deletion error" +msgstr "Errore di omissione di trasporto" + +#: static/adm/js/gui-d-connectivity.js:28 +msgid "New network" +msgstr "Nuova rete" + +#: static/adm/js/gui-d-connectivity.js:28 +msgid "Network creation error" +msgstr "Errore di creazione di rete" + +#: static/adm/js/gui-d-connectivity.js:29 +msgid "Edit network" +msgstr "Modifica rete" + +#: static/adm/js/gui-d-connectivity.js:29 +msgid "Network saving error" +msgstr "Rete risparmio errore" + +#: static/adm/js/gui-d-connectivity.js:30 +msgid "Delete network" +msgstr "Eliminare la rete" + +#: static/adm/js/gui-d-connectivity.js:30 +msgid "Network deletion error" +msgstr "Errore di omissione di rete" + +#: static/adm/js/gui-d-osmanagers.js:13 +msgid "New OSManager" +msgstr "Nuova OSManager" + +#: static/adm/js/gui-d-osmanagers.js:13 +msgid "OSManager creation error" +msgstr "Errore di creazione di OSManager" + +#: static/adm/js/gui-d-osmanagers.js:14 +msgid "Edit OSManager" +msgstr "Modifica OSManager" + +#: static/adm/js/gui-d-osmanagers.js:14 +msgid "OSManager saving error" +msgstr "OSManager errore di risparmio" + +#: static/adm/js/gui-d-osmanagers.js:15 +msgid "Delete OSManager" +msgstr "Eliminare OSManager" + +#: static/adm/js/gui-d-osmanagers.js:15 +msgid "OSManager deletion error" +msgstr "OSManager errore di omissione" + +#: static/adm/js/gui-d-services.js:9 static/adm/js/gui-d-servicespools.js:120 +msgid "Test" +msgstr "Prova" + +#: static/adm/js/gui-d-services.js:111 +msgid "Edit service" +msgstr "Modifica servizio" + +#: static/adm/js/gui-d-services.js:111 +msgid "Service creation error" +msgstr "Errore di creazione del servizio" + +#: static/adm/js/gui-d-services.js:112 +msgid "New service" +msgstr "Nuovo servizio" + +#: static/adm/js/gui-d-services.js:112 +msgid "Service saving error" +msgstr "Servizio risparmio errore" + +#: static/adm/js/gui-d-services.js:113 +msgid "Delete service" +msgstr "Eliminare il servizio" + +#: static/adm/js/gui-d-services.js:113 +msgid "Service deletion error" +msgstr "Errore di omissione del servizio" + +#: static/adm/js/gui-d-services.js:128 +msgid "New services provider" +msgstr "Nuovo provider di servizi" + +#: static/adm/js/gui-d-services.js:128 +msgid "Services provider creation error" +msgstr "Errore di creazione di provider di servizi" + +#: static/adm/js/gui-d-services.js:129 +msgid "Edit services provider" +msgstr "Modificare il provider di servizi" + +#: static/adm/js/gui-d-services.js:129 +msgid "Services Provider saving error" +msgstr "Provider di servizi risparmiando errore" + +#: static/adm/js/gui-d-services.js:130 +msgid "Delete services provider" +msgstr "Eliminare il provider di servizi" + +#: static/adm/js/gui-d-services.js:130 +msgid "Services Provider deletion error" +msgstr "Errore di omissione del Provider di servizi" + +#: static/adm/js/gui-d-servicespools.js:136 +msgid "Error processing deployed service" +msgstr "Servizio di elaborazione distribuita di errore" + +#: static/adm/js/gui-d-servicespools.js:191 +msgid "Add group" +msgstr "Aggiungi gruppo" + +#: static/adm/js/gui-d-servicespools.js:215 +msgid "You must provide authenticator and group" +msgstr "È necessario fornire autenticatore e gruppo" + +#: static/adm/js/gui-d-servicespools.js:230 +msgid "Remove group from service pool" +msgstr "Rimuovere il gruppo dal servizio piscina" + +#: static/adm/js/gui-d-servicespools.js:230 +msgid "Error removing group" +msgstr "Gruppo rimozione errore" + +#: static/adm/js/gui-d-servicespools.js:281 +msgid "Add transport" +msgstr "Aggiungi trasporti" + +#: static/adm/js/gui-d-servicespools.js:288 +msgid "You must provide a transport" +msgstr "È necessario fornire un trasporto" + +#: static/adm/js/gui-d-servicespools.js:303 +msgid "Remove transport from service pool" +msgstr "Rimuovere il trasporto dal servizio piscina" + +#: static/adm/js/gui-d-servicespools.js:303 msgid "Error removing transport" msgstr "Errore rimuovendo il trasporto" -#: static/adm/js/gui-definition.js:432 +#: static/adm/js/gui-d-servicespools.js:328 +msgid "Cancel" +msgstr "Annulla" + +#: static/adm/js/gui-d-servicespools.js:349 +msgid "Publication failed" +msgstr "Pubblicazione non riuscita" + +#: static/adm/js/gui-d-servicespools.js:379 +msgid "Restrained" +msgstr "Trattenuto" + +#: static/adm/js/gui-d-servicespools.js:387 +msgid "unknown (needs reload)" +msgstr "sconosciuto (ha bisogno di ricaricare)" + +#: static/adm/js/gui-d-servicespools.js:391 +msgid "New service pool" +msgstr "Nuovo servizio piscina" + +#: static/adm/js/gui-d-servicespools.js:391 +msgid "Error creating service pool" +msgstr "Piscina servizio creazione di errore" + +#: static/adm/js/gui-d-servicespools.js:398 +msgid "Publish on creation" +msgstr "Pubblicare sulla creazione" + +#: static/adm/js/gui-d-servicespools.js:399 +msgid "" +"If selected, will initiate the publication on service inmediatly pool after " +"creation" +msgstr "" +"Se selezionata, avvia la pubblicazione sul servizio inmediatly piscina dopo " +"creazione" + +#: static/adm/js/gui-d-servicespools.js:410 static/adm/js/gui.js:41 +msgid "Edit" +msgstr "Modifica" + +#: static/adm/js/gui-d-servicespools.js:410 +msgid "saving error" +msgstr "errore di risparmio" + +#: static/adm/js/gui-d-servicespools.js:411 static/adm/js/gui.js:45 +#: static/adm/js/gui.js.c:358 +msgid "Delete" +msgstr "Eliminare" + +#: static/adm/js/gui-d-servicespools.js:411 +msgid "deletion error" +msgstr "errore di omissione" + +#: static/adm/js/gui-definition.js:11 msgid "Cache" msgstr "Cache" -#: static/adm/js/gui-definition.js:432 +#: static/adm/js/gui-definition.js:11 msgid "Cache has been flushed" msgstr "Cache è stata scaricata" -#: static/adm/js/gui-element.js:471 +#: static/adm/js/gui-element.js:557 msgid "Date" msgstr "Data" -#: static/adm/js/gui-element.js:478 +#: static/adm/js/gui-element.js:566 msgid "level" msgstr "livello" -#: static/adm/js/gui-element.js:486 +#: static/adm/js/gui-element.js:574 msgid "source" msgstr "fonte" -#: static/adm/js/gui-element.js:493 +#: static/adm/js/gui-element.js:581 msgid "message" msgstr "Messaggio" -#: static/adm/js/gui-element.js:499 +#: static/adm/js/gui-element.js:587 msgid "Logs" msgstr "Registri" @@ -270,122 +482,106 @@ msgstr "Attendere prego, elaborazione" msgid "Filter" msgstr "Filtro" -#: static/adm/js/gui.js:28 -msgid "First" -msgstr "Primo" - -#: static/adm/js/gui.js:29 -msgid "Last" -msgstr "Ultima" - #: static/adm/js/gui.js:37 msgid "New" msgstr "Nuovo" -#: static/adm/js/gui.js:41 -msgid "Edit" -msgstr "Modifica" - -#: static/adm/js/gui.js:45 static/adm/js/gui.js.c:322 -msgid "Delete" -msgstr "Eliminare" - #: static/adm/js/gui.js:49 msgid "Xls" msgstr "Xls" -#: static/adm/js/gui.js:111 +#: static/adm/js/gui.js:123 msgid "Message" msgstr "Messaggio" -#: static/adm/js/gui.js:133 -msgid "Deployed services" -msgstr "Servizi distribuiti" - -#: static/adm/js/gui.js:207 +#: static/adm/js/gui.js:217 msgid "This field is required." msgstr "Questo campo è obbligatorio." -#: static/adm/js/gui.js:208 +#: static/adm/js/gui.js:218 msgid "Please fix this field." msgstr "Si prega di correggere questo campo." -#: static/adm/js/gui.js:209 +#: static/adm/js/gui.js:219 msgid "Please enter a valid email address." msgstr "Inserisci un indirizzo email valido." -#: static/adm/js/gui.js:210 +#: static/adm/js/gui.js:220 msgid "Please enter a valid URL." msgstr "Immettere un URL valido." -#: static/adm/js/gui.js:211 +#: static/adm/js/gui.js:221 msgid "Please enter a valid date." msgstr "Inserisci una data valida." -#: static/adm/js/gui.js:212 +#: static/adm/js/gui.js:222 msgid "Please enter a valid date (ISO)." msgstr "Inserisci una data valida (ISO)." -#: static/adm/js/gui.js:213 +#: static/adm/js/gui.js:223 msgid "Please enter a valid number." msgstr "Si prega di inserire un numero valido." -#: static/adm/js/gui.js:214 +#: static/adm/js/gui.js:224 msgid "Please enter only digits." msgstr "Inserire solo cifre." -#: static/adm/js/gui.js:215 +#: static/adm/js/gui.js:225 msgid "Please enter a valid credit card number." msgstr "Si prega di inserire un numero di carta di credito valida." -#: static/adm/js/gui.js:216 +#: static/adm/js/gui.js:226 msgid "Please enter the same value again." msgstr "Inserisci nuovamente lo stesso valore." -#: static/adm/js/gui.js:217 +#: static/adm/js/gui.js:227 msgid "Please enter no more than {0} characters." msgstr "Si prega di inserire non più di {0} caratteri." -#: static/adm/js/gui.js:218 +#: static/adm/js/gui.js:228 msgid "Please enter at least {0} characters." msgstr "Si prega di inserire almeno {0} caratteri." -#: static/adm/js/gui.js:219 +#: static/adm/js/gui.js:229 msgid "Please enter a value between {0} and {1} characters long." msgstr "Per favore inserisci un valore tra {0} e {1} caratteri lungo." -#: static/adm/js/gui.js:220 +#: static/adm/js/gui.js:230 msgid "Please enter a value between {0} and {1}." msgstr "Immettere un valore compreso tra {0} e {1}." -#: static/adm/js/gui.js:221 +#: static/adm/js/gui.js:231 msgid "Please enter a value less than or equal to {0}." msgstr "Inserisci un valore minore o uguale a {0}." -#: static/adm/js/gui.js:222 +#: static/adm/js/gui.js:232 msgid "Please enter a value greater than or equal to {0}." msgstr "Immettere un valore maggiore o uguale a {0}." -#: static/adm/js/gui.js:244 +#: static/adm/js/gui.js:274 msgid "Test result" msgstr "Risultato del test" -#: static/adm/js/gui.js:245 +#: static/adm/js/gui.js:275 msgid "Test error" msgstr "Errore test" -#: static/adm/js/gui.js:276 +#: static/adm/js/gui.js:307 msgid "Edition successfully done" msgstr "Edizione fatto con successo" -#: static/adm/js/gui.js:310 +#: static/adm/js/gui.js:330 +msgid "of type" +msgstr "di tipo" + +#: static/adm/js/gui.js:347 msgid "Creation successfully done" msgstr "Creazione fatto con successo" -#: static/adm/js/gui.js:321 +#: static/adm/js/gui.js:357 msgid "Are you sure do you want to delete " msgstr "Sei sicuro che si desidera eliminare " -#: static/adm/js/gui.js:327 +#: static/adm/js/gui.js:363 msgid "Item deleted" msgstr "Elemento eliminato" diff --git a/server/src/uds/locale/pt/LC_MESSAGES/django.mo b/server/src/uds/locale/pt/LC_MESSAGES/django.mo index 3a86f53cb143b7af2e756fede75cd6d0762dae95..fff397458a14765f47d4fd0c27199195dbc99d3c 100644 GIT binary patch delta 17293 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\n" "Language-Team: LANGUAGE \n" @@ -18,160 +18,411 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: REST/model.py:81 REST/methods/authenticators.py:56 -#: REST/methods/networks.py:51 REST/methods/osmanagers.py:52 -#: REST/methods/providers.py:57 REST/methods/transports.py:54 -#: REST/methods/users_groups.py:72 +#: REST/model.py:86 REST/methods/authenticators.py:58 +#: REST/methods/networks.py:54 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:59 REST/methods/services_pools.py:65 +#: REST/methods/transports.py:55 REST/methods/user_services.py:161 +#: REST/methods/user_services.py:189 REST/methods/users_groups.py:82 +#: templates/uds/admin/tmpl/user.html:29 templates/uds/admin/tmpl/user.html:32 msgid "Name" msgstr "Nome" -#: REST/model.py:82 +#: REST/model.py:87 msgid "Name of this element" msgstr "Nome deste elemento" -#: REST/model.py:88 REST/methods/authenticators.py:57 -#: REST/methods/osmanagers.py:53 REST/methods/providers.py:58 -#: REST/methods/services.py:126 REST/methods/transports.py:55 -#: REST/methods/users_groups.py:73 REST/methods/users_groups.py:108 +#: REST/model.py:93 REST/methods/authenticators.py:59 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:60 +#: REST/methods/services.py:139 REST/methods/services_pools.py:68 +#: REST/methods/transports.py:56 REST/methods/user_services.py:191 +#: REST/methods/users_groups.py:83 REST/methods/users_groups.py:190 +#: templates/uds/admin/tmpl/group.html:37 +#: templates/uds/admin/tmpl/user.html:40 msgid "Comments" msgstr "Comentários" -#: REST/model.py:89 +#: REST/model.py:94 msgid "Comments for this element" msgstr "Comentários para este elemento" -#: REST/model.py:97 REST/methods/authenticators.py:58 -#: REST/methods/transports.py:56 REST/methods/transports.py:69 +#: REST/model.py:102 REST/methods/authenticators.py:60 +#: REST/methods/transports.py:54 REST/methods/user_services.py:188 msgid "Priority" msgstr "Prioridade" -#: REST/model.py:98 +#: REST/model.py:103 msgid "" "Selects the priority of this element (lower number means higher priority)" msgstr "" -"Seleciona a prioridade deste elemento (número significa maior prioridade mais baixa)" +"Seleciona a prioridade deste elemento (número significa maior prioridade " +"mais baixa)" -#: REST/model.py:106 REST/methods/authenticators.py:59 -msgid "Small name" -msgstr "Nome pequeno" +#: REST/model.py:113 +msgid "Short name" +msgstr "Nome curto" -#: REST/model.py:107 -msgid "Small name of this element" -msgstr "Pequeno nome deste elemento" +#: REST/model.py:114 +msgid "Short name of this element" +msgstr "Nome curto do elemento" -#: REST/model.py:157 +#: REST/model.py:159 msgid "Invalid Request" msgstr "Pedido inválido" -#: REST/model.py:160 +#: REST/model.py:162 msgid "Method not found" msgstr "Método não encontrado" -#: REST/model.py:163 +#: REST/model.py:165 msgid "Item not found" msgstr "Item não encontrado" -#: REST/methods/authenticators.py:54 +#: REST/methods/authenticators.py:56 msgid "Current authenticators" msgstr "Autenticadores atuais" -#: REST/methods/authenticators.py:60 +#: REST/methods/authenticators.py:61 +msgid "Small name" +msgstr "Nome pequeno" + +#: REST/methods/authenticators.py:62 #: templates/uds/admin/tmpl/authenticators.html:18 +#: templates/uds/admin/tmpl/dashboard.html:22 msgid "Users" msgstr "Usuários" -#: REST/methods/networks.py:49 +#: REST/methods/networks.py:52 msgid "Current Networks" msgstr "Redes atuais" -#: REST/methods/networks.py:52 templates/uds/index.html:79 -#: templates/uds/html5/index.html:124 -msgid "Networks" -msgstr "Redes" +#: REST/methods/networks.py:55 +msgid "Range" +msgstr "Gama" -#: REST/methods/networks.py:53 REST/methods/osmanagers.py:54 +#: REST/methods/networks.py:56 REST/methods/osmanagers.py:57 #: REST/methods/transports.py:57 msgid "Used by" msgstr "Usado por" -#: REST/methods/osmanagers.py:50 +#: REST/methods/networks.py:66 +msgid "Invalid network: " +msgstr "Rede inválida: " + +#: REST/methods/networks.py:73 +msgid "Network range" +msgstr "Intervalo de rede" + +#: REST/methods/networks.py:74 +msgid "" +"Network range. Accepts most network definitions formats (range, subnet, " +"host, etc..." +msgstr "" +"Intervalo de rede. Aceita a maioria dos formatos de definições de rede " +"(gama, sub-rede, anfitrião, etc..." + +#: REST/methods/osmanagers.py:53 msgid "Current OS Managers" msgstr "Atual OS gerentes" -#: REST/methods/providers.py:53 templates/uds/admin/snippets/navbar.html:18 +#: REST/methods/osmanagers.py:75 +msgid "Can't delete an OSManager with deployed services associated" +msgstr "" +"Não é possível excluir uma OSManager com serviços implantados associados" + +#: REST/methods/osmanagers.py:79 +msgid "Can't modify an OSManager with deployed services associated" +msgstr "" +"Não é possível modificar uma OSManager com serviços implantados associados" + +#: REST/methods/providers.py:55 msgid "Service providers" msgstr "Prestadores de serviços" -#: REST/methods/providers.py:59 templates/uds/index.html:51 +#: REST/methods/providers.py:61 templates/uds/index.html:51 +#: templates/uds/admin/snippets/navbar.html:18 +#: templates/uds/admin/tmpl/dashboard.html:49 +#: templates/uds/admin/tmpl/providers.html:4 +#: templates/uds/admin/tmpl/providers.html:7 #: templates/uds/admin/tmpl/providers.html:18 #: templates/uds/html5/index.html:65 msgid "Services" msgstr "Serviços" -#: REST/methods/services.py:119 +#: REST/methods/providers.py:62 +msgid "User Services" +msgstr "Serviços de usuário" + +#: REST/methods/providers.py:111 dispatchers/wyse_enterprise/views.py:254 +#: dispatchers/wyse_enterprise/views.py:257 web/errors.py:62 +msgid "Service not found" +msgstr "Serviço não encontrado" + +#: REST/methods/services.py:132 #, python-brace-format msgid "Services of {0}" msgstr "Serviços de {0}" -#: REST/methods/services.py:121 +#: REST/methods/services.py:134 msgid "Current services" msgstr "Serviços atuais" -#: REST/methods/services.py:125 +#: REST/methods/services.py:138 msgid "Service name" msgstr "Nome do serviço" -#: REST/methods/services.py:127 +#: REST/methods/services.py:140 REST/methods/user_services.py:190 msgid "Type" msgstr "Tipo" -#: REST/methods/services.py:128 templates/uds/admin/snippets/navbar.html:22 +#: REST/methods/services.py:141 REST/methods/services_pools.py:63 msgid "Deployed services" msgstr "Serviços implantados" +#: REST/methods/services.py:142 templates/uds/admin/tmpl/dashboard.html:76 +msgid "User services" +msgstr "Serviços de usuário" + +#: REST/methods/services_pools.py:66 +msgid "Parent Service" +msgstr "Pai serviço" + +#: REST/methods/services_pools.py:67 REST/methods/users_groups.py:84 +#: REST/methods/users_groups.py:191 +msgid "state" +msgstr "Estado" + +#: REST/methods/services_pools.py:95 +msgid "Create at least one OS Manager before creating a new service pool" +msgstr "" +"Criar pelo menos um Gerenciador de sistema operacional antes de criar um " +"novo pool de serviço" + +#: REST/methods/services_pools.py:97 +msgid "Create at least a service before creating a new service pool" +msgstr "Criar pelo menos um serviço antes de criar um novo pool de serviço" + +#: REST/methods/services_pools.py:104 +msgid "Base service" +msgstr "Serviço base" + +#: REST/methods/services_pools.py:105 +msgid "Service used as base of this service pool" +msgstr "Serviço usado como base da piscina serviço" + +#: REST/methods/services_pools.py:112 +msgid "OS Manager" +msgstr "Gerente de sistema operacional" + +#: REST/methods/services_pools.py:113 +msgid "OS Manager used as base of this service pool" +msgstr "Gerente de sistema operacional usado como base da piscina serviço" + +#: REST/methods/services_pools.py:120 +msgid "Initial available services" +msgstr "Iniciais serviços disponíveis" + +#: REST/methods/services_pools.py:121 +msgid "Services created initially for this service pool" +msgstr "Serviços criados inicialmente para este pool de serviço" + +#: REST/methods/services_pools.py:127 +msgid "Services to keep in cache" +msgstr "Serviços para manter em cache" + +#: REST/methods/services_pools.py:128 +msgid "Services keeped in cache for improved user service assignation" +msgstr "" +"Serviços de fato no cache para atribuição de serviço de usuário aprimorada" + +#: REST/methods/services_pools.py:134 +msgid "Services to keep in L2 cache" +msgstr "Serviços para manter em cache L2" + +#: REST/methods/services_pools.py:135 +msgid "Services keeped in cache of level2 for improved service generation" +msgstr "Serviços de fato no cache de level2 para melhor serviço geração" + +#: REST/methods/services_pools.py:141 +msgid "Maximum number of services to provide" +msgstr "Número máximo de serviços para fornecer" + +#: REST/methods/services_pools.py:142 +msgid "" +"Maximum number of service (assigned and L1 cache) that can be created for " +"this service" +msgstr "" +"Número máximo de serviço (atribuído e cache L1) que podem ser criados para " +"Este serviço" + +#: REST/methods/services_pools.py:159 +msgid "Base service does not exists anymore" +msgstr "Serviço de base não existe mais" + +#: REST/methods/services_pools.py:168 +msgid "This service requires an os manager" +msgstr "Este serviço requer um gestor de sistema operacional" + #: REST/methods/transports.py:52 msgid "Current Transports" msgstr "Atuais transportes" -#: REST/methods/transports.py:70 -msgid "Priority of this transport" -msgstr "Prioridade deste transporte" +#: REST/methods/transports.py:68 +msgid "Network access" +msgstr "Acesso à rede" -#: REST/methods/users_groups.py:65 +#: REST/methods/transports.py:69 +msgid "" +"If ACTIVE, the transport will be enabled for the selected networks.If " +"INACTIVE, trans port will be disabled for selected networks" +msgstr "" +"Se ativo, o transporte será habilitado para as redes selecionadas.Se " +"INATIVO, trans porta será desabilitada para redes selecionadas" + +#: REST/methods/transports.py:76 templates/uds/index.html:79 +#: templates/uds/html5/index.html:124 +msgid "Networks" +msgstr "Redes" + +#: REST/methods/transports.py:77 +msgid "" +"Networks associated with this transport. If No network selected, will mean " +"\"all networks\"" +msgstr "" +"Redes associadas com este transporte. Se nenhuma rede selecionada, " +"significará \"todas as redes\"" + +#: REST/methods/user_services.py:88 +#: templates/uds/admin/tmpl/services_pool.html:18 +msgid "Assigned services" +msgstr "Serviços atribuídos" + +#: REST/methods/user_services.py:92 REST/methods/user_services.py:128 +msgid "Creation date" +msgstr "Data de criação" + +#: REST/methods/user_services.py:93 REST/methods/user_services.py:129 +#: REST/methods/user_services.py:224 +msgid "Revision" +msgstr "Revisão" + +#: REST/methods/user_services.py:95 REST/methods/user_services.py:131 +msgid "Friendly name" +msgstr "Nome amigável" + +#: REST/methods/user_services.py:96 REST/methods/user_services.py:132 +#: REST/methods/user_services.py:163 REST/methods/user_services.py:226 +#: templates/uds/admin/tmpl/group.html:42 +#: templates/uds/admin/tmpl/user.html:45 +msgid "State" +msgstr "Estado" + +#: REST/methods/user_services.py:97 +msgid "Owner" +msgstr "Proprietário" + +#: REST/methods/user_services.py:124 +msgid "Cached services" +msgstr "Serviços em cache" + +#: REST/methods/user_services.py:133 +msgid "Cache level" +msgstr "Nível de cache" + +#: REST/methods/user_services.py:156 +msgid "Assigned groups" +msgstr "Grupos atribuídos" + +#: REST/methods/user_services.py:162 templates/uds/admin/tmpl/group.html:34 +#: templates/uds/admin/tmpl/user.html:37 +msgid "comments" +msgstr "Comentários" + +#: REST/methods/user_services.py:184 +msgid "Assigned transports" +msgstr "Transportes atribuídos" + +#: REST/methods/user_services.py:220 +#: templates/uds/admin/tmpl/services_pool.html:22 +msgid "Publications" +msgstr "Publicações" + +#: REST/methods/user_services.py:225 +msgid "Publish date" +msgstr "Data de publicação" + +#: REST/methods/user_services.py:227 +msgid "Reason" +msgstr "Razão" + +#: REST/methods/users_groups.py:75 #, python-brace-format msgid "Users of {0}" msgstr "Usuários de {0}" -#: REST/methods/users_groups.py:67 +#: REST/methods/users_groups.py:77 msgid "Current users" msgstr "Usuários atuais" -#: REST/methods/users_groups.py:71 REST/methods/users_groups.py:107 -msgid "User Id" -msgstr "Id de usuário" +#: REST/methods/users_groups.py:81 +#: auths/ActiveDirectory_enterprise/Authenticator.py:48 +#: auths/EDirectory_enterprise/Authenticator.py:77 +#: auths/RegexLdap/Authenticator.py:72 auths/SimpleLDAP/Authenticator.py:73 +#: services/HyperV_enterprise/HyperVClusterProvider.py:91 +#: services/HyperV_enterprise/HyperVProvider.py:83 +#: services/OVirt/OVirtProvider.py:93 +#: services/Vmware_enterprise/ServiceProviderVC.py:30 +#: templates/uds/admin/tmpl/user.html:16 transports/HTML5RDP/HTML5RDP.py:64 +#: transports/NX/NXTransport.py:61 transports/NX/TSNXTransport.py:66 +#: transports/RDP/RDPTransport.py:59 transports/RDP/TSRDPTransport.py:63 +#: transports/RGS-enterprise/RGSTransport.py:42 +#: transports/RGS-enterprise/TRGSTransport.py:47 +#: transports/TSNX/TSNXTransport.py:66 web/forms/LoginForm.py:69 +msgid "Username" +msgstr "Nome de usuário" -#: REST/methods/users_groups.py:74 REST/methods/users_groups.py:109 -msgid "state" -msgstr "Estado" - -#: REST/methods/users_groups.py:75 +#: REST/methods/users_groups.py:85 msgid "Last access" msgstr "Último acesso" -#: REST/methods/users_groups.py:101 +#: REST/methods/users_groups.py:132 REST/methods/users_groups.py:244 +msgid "User already exists (duplicate key error)" +msgstr "Usuário já existe (erro de chave duplicado)" + +#: REST/methods/users_groups.py:183 #, python-brace-format msgid "Groups of {0}" msgstr "Grupos de {0}" -#: REST/methods/users_groups.py:103 +#: REST/methods/users_groups.py:185 msgid "Current groups" msgstr "Grupos atuais" -#: admin/views.py:55 admin/views.py:63 admin/views.py:77 web/views.py:422 +#: REST/methods/users_groups.py:189 REST/methods/users_groups.py:196 +#: auths/ActiveDirectory_enterprise/Authenticator.py:50 +#: auths/EDirectory_enterprise/Authenticator.py:79 +#: auths/RegexLdap/Authenticator.py:74 auths/SAML_enterprise/SAML.py:114 +#: auths/SimpleLDAP/Authenticator.py:75 +#: templates/uds/admin/tmpl/pool_add_group.html:17 +msgid "Group" +msgstr "Grupo" + +#: REST/methods/users_groups.py:196 +msgid "UDS Group" +msgstr "Grupo UDS" + +#: REST/methods/users_groups.py:197 +msgid "Meta group" +msgstr "Grupo meta" + +#: REST/methods/users_groups.py:197 +msgid "UDS Meta Group" +msgstr "UDS Meta Group" + +#: admin/views.py:51 admin/views.py:59 admin/views.py:73 web/views.py:425 msgid "Forbidden" msgstr "Proibido" -#: admin/views.py:70 +#: admin/views.py:66 msgid "requested a template that do not exists" msgstr "solicitado um modelo que não existe" @@ -232,9 +483,9 @@ msgstr "" #: services/HyperV_enterprise/HyperVProvider.py:84 #: services/OVirt/OVirtProvider.py:94 services/Sample/SampleService.py:131 #: services/Vmware_enterprise/ServiceProviderVC.py:31 -#: transports/HTML5RDP/HTML5RDP.py:65 transports/NX/NXTransport.py:62 -#: transports/NX/TSNXTransport.py:67 transports/RDP/RDPTransport.py:60 -#: transports/RDP/TSRDPTransport.py:64 +#: templates/uds/admin/tmpl/user.html:78 transports/HTML5RDP/HTML5RDP.py:65 +#: transports/NX/NXTransport.py:62 transports/NX/TSNXTransport.py:67 +#: transports/RDP/RDPTransport.py:60 transports/RDP/TSRDPTransport.py:64 #: transports/RGS-enterprise/RGSTransport.py:43 #: transports/RGS-enterprise/TRGSTransport.py:48 #: transports/TSNX/TSNXTransport.py:67 web/forms/LoginForm.py:70 @@ -269,31 +520,8 @@ msgstr "Autenticador do Active Directory" msgid "Authenticate against Active Directory" msgstr "Autenticar no Active Directory" -#: auths/ActiveDirectory_enterprise/Authenticator.py:48 -#: auths/EDirectory_enterprise/Authenticator.py:77 -#: auths/RegexLdap/Authenticator.py:72 auths/SimpleLDAP/Authenticator.py:73 -#: services/HyperV_enterprise/HyperVClusterProvider.py:91 -#: services/HyperV_enterprise/HyperVProvider.py:83 -#: services/OVirt/OVirtProvider.py:93 -#: services/Vmware_enterprise/ServiceProviderVC.py:30 -#: transports/HTML5RDP/HTML5RDP.py:64 transports/NX/NXTransport.py:61 -#: transports/NX/TSNXTransport.py:66 transports/RDP/RDPTransport.py:59 -#: transports/RDP/TSRDPTransport.py:63 -#: transports/RGS-enterprise/RGSTransport.py:42 -#: transports/RGS-enterprise/TRGSTransport.py:47 -#: transports/TSNX/TSNXTransport.py:66 web/forms/LoginForm.py:69 -msgid "Username" -msgstr "Nome de usuário" - -#: auths/ActiveDirectory_enterprise/Authenticator.py:50 -#: auths/EDirectory_enterprise/Authenticator.py:79 -#: auths/RegexLdap/Authenticator.py:74 auths/SAML_enterprise/SAML.py:114 -#: auths/SimpleLDAP/Authenticator.py:75 -msgid "Group" -msgstr "Grupo" - #: auths/ActiveDirectory_enterprise/Authenticator.py:67 -#: auths/ActiveDirectory_enterprise/Authenticator.py:442 +#: auths/ActiveDirectory_enterprise/Authenticator.py:444 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "Deve especificar o nome de usuário na forma USERNAME@DOMAIN.DOM" @@ -302,7 +530,7 @@ msgid "Active directory connection error: " msgstr "Erro de conexão do Active directory: " #: auths/ActiveDirectory_enterprise/Authenticator.py:344 -#: auths/ActiveDirectory_enterprise/Authenticator.py:390 +#: auths/ActiveDirectory_enterprise/Authenticator.py:392 #: auths/EDirectory_enterprise/Authenticator.py:243 #: auths/EDirectory_enterprise/Authenticator.py:286 #: auths/RegexLdap/Authenticator.py:303 auths/RegexLdap/Authenticator.py:346 @@ -315,33 +543,33 @@ msgstr "Nome de usuário não encontrado" msgid "Group not found" msgstr "Grupo não encontrado" -#: auths/ActiveDirectory_enterprise/Authenticator.py:410 -#: auths/ActiveDirectory_enterprise/Authenticator.py:428 +#: auths/ActiveDirectory_enterprise/Authenticator.py:412 +#: auths/ActiveDirectory_enterprise/Authenticator.py:430 #: auths/EDirectory_enterprise/Authenticator.py:303 #: auths/RegexLdap/Authenticator.py:367 auths/SimpleLDAP/Authenticator.py:328 #: auths/SimpleLDAP/Authenticator.py:342 msgid "Too many results, be more specific" msgstr "Muitos resultados, seja mais específico" -#: auths/ActiveDirectory_enterprise/Authenticator.py:451 +#: auths/ActiveDirectory_enterprise/Authenticator.py:453 msgid "Domain seems to be incorrect, please check it" msgstr "Domínio parece ser incorreta, por favor verifique-" -#: auths/ActiveDirectory_enterprise/Authenticator.py:456 +#: auths/ActiveDirectory_enterprise/Authenticator.py:458 msgid "Server does not seem an Active Directory (do not have user objects)" msgstr "Servidor não parece um Active Directory (não têm objetos de usuário)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:464 +#: auths/ActiveDirectory_enterprise/Authenticator.py:466 msgid "Server does not seem an Active Directory (no not have group objects)" msgstr "Servidor não parece um Active Directory (não não têm objetos de grupo)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:472 +#: auths/ActiveDirectory_enterprise/Authenticator.py:474 msgid "" "Server does not seem an Active Directory (do not have any user nor groups)" msgstr "" "Servidor não parece um Active Directory (não tem nenhum usuário ou grupos)" -#: auths/ActiveDirectory_enterprise/Authenticator.py:477 +#: auths/ActiveDirectory_enterprise/Authenticator.py:479 #: auths/EDirectory_enterprise/Authenticator.py:358 #: auths/RegexLdap/Authenticator.py:428 auths/SimpleLDAP/Authenticator.py:423 msgid "Connection params seem correct, test was succesfully executed" @@ -682,6 +910,9 @@ msgstr "Grupo falso" #: auths/Sample/SampleAuth.py:111 #: templates/uds/admin/tmpl/authenticators.html:19 +#: templates/uds/admin/tmpl/group.html:53 +#: templates/uds/admin/tmpl/services_pool.html:20 +#: templates/uds/admin/tmpl/user.html:85 templates/uds/admin/tmpl/user.html:99 msgid "Groups" msgstr "Grupos" @@ -769,7 +1000,7 @@ msgstr "Autenticador de base" msgid "User name" msgstr "Nome de usuário" -#: core/auths/BaseAuthenticator.py:131 +#: core/auths/BaseAuthenticator.py:131 templates/uds/admin/tmpl/group.html:19 msgid "Group name" msgstr "Nome do grupo" @@ -777,6 +1008,10 @@ msgstr "Nome do grupo" msgid "Users can't be created inside this authenticator" msgstr "Os usuários não podem ser criados dentro deste autenticador" +#: core/auths/auth.py:61 +msgid "System Administrator" +msgstr "Administrador do sistema" + #: core/managers/PublicationManager.py:181 msgid "" "Already publishing. Wait for previous publication to finish and try again" @@ -824,17 +1059,17 @@ msgstr "24 bits" msgid "32 bits" msgstr "32 bits" -#: core/managers/UserServiceManager.py:322 +#: core/managers/UserServiceManager.py:314 msgid "Cancel requested for a non running operation, doing remove instead" msgstr "" "Cancelar requisitado para uma operação de não-execução, fazendo remover em " "vez disso" -#: core/managers/UserServiceManager.py:343 +#: core/managers/UserServiceManager.py:335 msgid "Can't remove a non active element" msgstr "Não é possível remover um elemento não-ativo" -#: core/managers/UserServiceManager.py:356 +#: core/managers/UserServiceManager.py:348 #, python-brace-format msgid "Can't remove nor cancel {0} cause its states doesn't allows it" msgstr "" @@ -873,7 +1108,7 @@ msgstr "Ativo" msgid "Inactive" msgstr "Inativo" -#: core/util/State.py:60 +#: core/util/State.py:60 templates/uds/admin/tmpl/user.html:50 msgid "Blocked" msgstr "Bloqueado" @@ -989,11 +1224,6 @@ msgstr "Pedido inválido" msgid "Invalid credentials used" msgstr "Inválido credenciais usadas" -#: dispatchers/wyse_enterprise/views.py:254 -#: dispatchers/wyse_enterprise/views.py:257 web/errors.py:62 -msgid "Service not found" -msgstr "Serviço não encontrado" - #: dispatchers/wyse_enterprise/views.py:271 web/errors.py:61 msgid "Transport not found" msgstr "Transporte não encontrado" @@ -1406,12 +1636,12 @@ msgid "HyperV Linked Clone (Experimental)" msgstr "HyperV vinculado Clone (Experimental)" #: services/HyperV_enterprise/HyperVProvider.py:62 -msgid "HyperV Platform Provider" -msgstr "Provedor de plataforma do Hyper-v" +msgid "HyperV Platform Provider (experimental)" +msgstr "Provedor de plataforma do Hyper-v (experimental)" #: services/HyperV_enterprise/HyperVProvider.py:66 -msgid "HyperV platform service provider" -msgstr "Provedor de serviços de plataforma do Hyper-v" +msgid "HyperV platform service provider (experimental)" +msgstr "Provedor de serviços de plataforma Hyper-v (experimental)" #: services/OVirt/OVirtLinkedService.py:56 msgid "oVirt Linked Clone (Experimental)" @@ -1776,7 +2006,8 @@ msgstr "e reinicie o navegador" msgid "Ip" msgstr "IP" -#: templates/uds/index.html:80 templates/uds/html5/index.html:125 +#: templates/uds/index.html:80 templates/uds/admin/tmpl/services_pool.html:21 +#: templates/uds/html5/index.html:125 msgid "Transports" msgstr "Transportes" @@ -1832,35 +2063,90 @@ msgid "Connectivity" msgstr "Conectividade" #: templates/uds/admin/snippets/navbar.html:26 +#: templates/uds/admin/tmpl/configuration.html:7 msgid "Configuration" msgstr "Configuração" #: templates/uds/admin/snippets/navbar.html:27 -msgid "Clear cache" -msgstr "Limpar cache" +msgid "Flush cache" +msgstr "Liberar cache" -#: templates/uds/admin/snippets/navbar.html:57 +#: templates/uds/admin/snippets/navbar.html:56 msgid "Exit" msgstr "Saída" -#: templates/uds/admin/snippets/navbar.html:58 +#: templates/uds/admin/snippets/navbar.html:57 msgid "Logout" msgstr "Logout" #: templates/uds/admin/tmpl/authenticators.html:20 #: templates/uds/admin/tmpl/providers.html:19 +#: templates/uds/admin/tmpl/services_pool.html:23 msgid "Logs" msgstr "Logs" +#: templates/uds/admin/tmpl/configuration.html:4 +msgid "UDS Configuration" +msgstr "Configuração de UDS" + +#: templates/uds/admin/tmpl/configuration.html:58 +#: templates/uds/admin/tmpl/comp/modal.html:26 +msgid "Save" +msgstr "Salvar" + #: templates/uds/admin/tmpl/connectivity.html:4 -#: templates/uds/admin/tmpl/dashboard.html:4 +#: templates/uds/admin/tmpl/dashboard.html:5 msgid "overview" msgstr "Visão geral" -#: templates/uds/admin/tmpl/providers.html:4 -#: templates/uds/admin/tmpl/providers.html:7 -msgid "Providers" -msgstr "Provedores" +#: templates/uds/admin/tmpl/dashboard.html:30 +msgid "View Authenticators" +msgstr "Autenticadores de exibição" + +#: templates/uds/admin/tmpl/dashboard.html:57 +msgid "View services" +msgstr "Serviços de visualização" + +#: templates/uds/admin/tmpl/dashboard.html:84 +#: templates/uds/admin/tmpl/dashboard.html:111 +msgid "View services pools" +msgstr "Exibir serviços de piscinas" + +#: templates/uds/admin/tmpl/dashboard.html:103 +msgid "Restrained services pools" +msgstr "Piscinas de serviços contido" + +#: templates/uds/admin/tmpl/dashboard.html:127 +msgid "Assigned services graph" +msgstr "Gráfico de serviços atribuído" + +#: templates/uds/admin/tmpl/dashboard.html:139 +msgid "Used services graph" +msgstr "Gráfico de utilizar serviços" + +#: templates/uds/admin/tmpl/group.html:25 +#: templates/uds/admin/tmpl/search.html:9 +#: templates/uds/admin/tmpl/user.html:21 +msgid "Search" +msgstr "Pesquisa" + +#: templates/uds/admin/tmpl/group.html:45 +#: templates/uds/admin/tmpl/user.html:48 +msgid "Enabled" +msgstr "Habilitado" + +#: templates/uds/admin/tmpl/group.html:46 +#: templates/uds/admin/tmpl/user.html:49 +msgid "Disabled" +msgstr "Com deficiência" + +#: templates/uds/admin/tmpl/pool_add_group.html:5 web/forms/LoginForm.py:71 +msgid "Authenticator" +msgstr "Autenticador" + +#: templates/uds/admin/tmpl/pool_add_transport.html:5 +msgid "Transport" +msgstr "Transporte" #: templates/uds/admin/tmpl/request_failed.html:4 msgid "Error on request" @@ -1868,29 +2154,55 @@ msgstr "Erro no pedido" #: templates/uds/admin/tmpl/request_failed.html:7 msgid "There was an error requesting data from server, please, try again" -msgstr "Houve um erro solicitando dados do servidor, por favor, tente novamente" +msgstr "" +"Houve um erro solicitando dados do servidor, por favor, tente novamente" #: templates/uds/admin/tmpl/request_failed.html:9 #: templates/uds/html5/snippets/navbar.html:44 msgid "Dashboard" msgstr "Painel de controle" -#: templates/uds/admin/tmpl/comp/modal.html:19 -msgid "Close" -msgstr "Fechar" +#: templates/uds/admin/tmpl/services_pool.html:4 +msgid "Services Pools" +msgstr "Serviços de piscinas" -#: templates/uds/admin/tmpl/comp/modal.html:26 -msgid "Save" -msgstr "Salvar" +#: templates/uds/admin/tmpl/services_pool.html:7 +msgid "Deployed Services" +msgstr "Serviços implantados" -#: templates/uds/admin/tmpl/fld/checkbox.html:4 +#: templates/uds/admin/tmpl/services_pool.html:19 +msgid "Cache" +msgstr "Cache" + +#: templates/uds/admin/tmpl/user.html:56 +msgid "Staff member" +msgstr "Membro da equipe" + +#: templates/uds/admin/tmpl/user.html:58 templates/uds/admin/tmpl/user.html:68 +#: templates/uds/admin/tmpl/fld/checkbox.html:5 msgid "Yes" msgstr "Sim" -#: templates/uds/admin/tmpl/fld/checkbox.html:4 +#: templates/uds/admin/tmpl/user.html:59 templates/uds/admin/tmpl/user.html:68 +#: templates/uds/admin/tmpl/fld/checkbox.html:5 msgid "No" msgstr "Não" +#: templates/uds/admin/tmpl/user.html:66 +#: templates/uds/snippets/admin_user.html:4 +msgid "Admin" +msgstr "Admin" + +#: templates/uds/admin/tmpl/user.html:87 +#: templates/uds/admin/tmpl/user.html:101 +#, python-brace-format +msgid "{0} of {1} selected" +msgstr "{0} de {1} selecionado" + +#: templates/uds/admin/tmpl/comp/modal.html:19 +msgid "Close" +msgstr "Fechar" + #: templates/uds/admin/tmpl/fld/editlist_popup.html:5 msgid "Current list" msgstr "Lista atual" @@ -2015,10 +2327,6 @@ msgstr "" "moderno HTML5 navegador como o Firefox, Chrome, Opera,... (IE deve ser 10 ou " "melhor)" -#: templates/uds/snippets/admin_user.html:4 -msgid "Admin" -msgstr "Admin" - #: templates/uds/snippets/lang.html:9 msgid "Language" msgstr "Língua" @@ -2495,7 +2803,7 @@ msgstr "" "Seu navegador não é suportado. Por favor, faça o upgrade para um navegador " "moderno do HTML5 como o Firefox ou Chrome" -#: web/views.py:401 +#: web/views.py:404 msgid "Authenticator do not provides information" msgstr "Autenticador que não fornece informações" @@ -2507,10 +2815,6 @@ msgstr "Selecione o autenticador" msgid "authenticator" msgstr "autenticador" -#: web/forms/LoginForm.py:71 -msgid "Authenticator" -msgstr "Autenticador" - #: xmlrpc/auths/AdminAuth.py:115 msgid "Credentials no longer valid" msgstr "Não é mais válidas credenciais" diff --git a/server/src/uds/locale/pt/LC_MESSAGES/djangojs.mo b/server/src/uds/locale/pt/LC_MESSAGES/djangojs.mo index 82d0a6a6839c6294696366ee57e4ad7f6e5717e1..59cbe5a0683d78ea51050a840368d6603a7182cb 100644 GIT binary patch literal 9182 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 Snrwo~9q#^Mb7@HRqW%N@UaKMi diff --git a/server/src/uds/locale/pt/LC_MESSAGES/djangojs.po b/server/src/uds/locale/pt/LC_MESSAGES/djangojs.po index 9b3ea23c..89f2bb55 100644 --- a/server/src/uds/locale/pt/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/pt/LC_MESSAGES/djangojs.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-12-08 19:29+0100\n" +"POT-Creation-Date: 2014-02-05 10:32+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -98,147 +98,359 @@ msgstr "Dezembro de" msgid "_MENU_ records per page" msgstr "Registros _MENU_ por página" -#: static/adm/js/gui-definition.js:38 -msgid "Test" -msgstr "Teste" - -#: static/adm/js/gui-definition.js:140 -msgid "Edit service" -msgstr "Editar serviço" - -#: static/adm/js/gui-definition.js:140 -msgid "Error processing service" -msgstr "Serviço de processamento de erro" - -#: static/adm/js/gui-definition.js:141 -msgid "New service" -msgstr "Novo serviço" - -#: static/adm/js/gui-definition.js:141 -msgid "Error creating service" -msgstr "Erro ao criar o serviço" - -#: static/adm/js/gui-definition.js:142 -msgid "Delete service" -msgstr "Excluir o serviço" - -#: static/adm/js/gui-definition.js:142 -msgid "Error deleting service" -msgstr "Erro ao excluir o serviço" - -#: static/adm/js/gui-definition.js:157 -msgid "New provider" -msgstr "Novo provedor" - -#: static/adm/js/gui-definition.js:157 -msgid "Error creating provider" -msgstr "Provedor de criação de erro" - -#: static/adm/js/gui-definition.js:158 -msgid "Edit provider" -msgstr "Editar provedor" - -#: static/adm/js/gui-definition.js:158 -msgid "Error processing provider" -msgstr "Provedor de processamento de erro" - -#: static/adm/js/gui-definition.js:159 -msgid "Delete provider" -msgstr "Exclua o provedor" - -#: static/adm/js/gui-definition.js:159 -msgid "Error deleting provider" -msgstr "Provedor de erro excluindo" - -#: static/adm/js/gui-definition.js:177 +#: static/adm/js/gui-d-authenticators.js:10 msgid "Test authenticator" msgstr "Autenticador de teste" -#: static/adm/js/gui-definition.js:295 +#: static/adm/js/gui-d-authenticators.js:52 +msgid "Search error" +msgstr "Erro de pesquisa" + +#: static/adm/js/gui-d-authenticators.js:60 +msgid "Accept" +msgstr "Aceitar" + +#: static/adm/js/gui-d-authenticators.js:153 +msgid "Edit group" +msgstr "Editar grupo" + +#: static/adm/js/gui-d-authenticators.js:175 +#: static/adm/js/gui-d-authenticators.js:216 +msgid "Group saved" +msgstr "Grupo salvou" + +#: static/adm/js/gui-d-authenticators.js:196 +msgid "New group" +msgstr "Novo grupo" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Search groups" +msgstr "Grupos de pesquisa" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Group" +msgstr "Grupo" + +#: static/adm/js/gui-d-authenticators.js:208 +msgid "Groups found" +msgstr "Grupos encontrados" + +#: static/adm/js/gui-d-authenticators.js:217 +msgid "Group saving error" +msgstr "Grupo salvando o erro" + +#: static/adm/js/gui-d-authenticators.js:231 +msgid "Delete group" +msgstr "Apagar grupo" + +#: static/adm/js/gui-d-authenticators.js:231 +msgid "Group deletion error" +msgstr "Erro de exclusão do grupo" + +#: static/adm/js/gui-d-authenticators.js:279 +msgid "Edit user" +msgstr "Editar usuário" + +#: static/adm/js/gui-d-authenticators.js:313 +#: static/adm/js/gui-d-authenticators.js:348 +msgid "User saved" +msgstr "Usuário salvado" + +#: static/adm/js/gui-d-authenticators.js:314 +#: static/adm/js/gui-d-authenticators.js:349 +msgid "User saving error" +msgstr "Usuário salvar o erro" + +#: static/adm/js/gui-d-authenticators.js:325 +msgid "New user" +msgstr "Novo usuário" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "Search users" +msgstr "Pesquisar usuários" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "User" +msgstr "Usuário" + +#: static/adm/js/gui-d-authenticators.js:339 +msgid "Users found" +msgstr "Usuários encontrados" + +#: static/adm/js/gui-d-authenticators.js:354 +msgid "Delete user" +msgstr "Excluir usuário" + +#: static/adm/js/gui-d-authenticators.js:354 +msgid "User deletion error" +msgstr "Erro de exclusão de usuário" + +#: static/adm/js/gui-d-authenticators.js:371 msgid "New authenticator" msgstr "Novo autenticador" -#: static/adm/js/gui-definition.js:295 -msgid "Error creating authenticator" -msgstr "Criando autenticador de erro" +#: static/adm/js/gui-d-authenticators.js:371 +msgid "Authenticator creation error" +msgstr "Erro de criação do autenticador" -#: static/adm/js/gui-definition.js:296 +#: static/adm/js/gui-d-authenticators.js:372 msgid "Edit authenticator" msgstr "Editar autenticador" -#: static/adm/js/gui-definition.js:296 -msgid "Error processing authenticator" -msgstr "Autenticador de processamento de erro" +#: static/adm/js/gui-d-authenticators.js:372 +msgid "Authenticator saving error" +msgstr "Autenticador salvando o erro" -#: static/adm/js/gui-definition.js:297 +#: static/adm/js/gui-d-authenticators.js:373 msgid "Delete authenticator" msgstr "Excluir o autenticador" -#: static/adm/js/gui-definition.js:297 -msgid "Error deleting authenticator" -msgstr "Autenticador excluindo erro" +#: static/adm/js/gui-d-authenticators.js:373 +msgid "Authenticator deletion error" +msgstr "Erro de exclusão do autenticador" -#: static/adm/js/gui-definition.js:363 -msgid "Edit transport" -msgstr "Editar transportes" +#: static/adm/js/gui-d-config.js:42 +msgid "Configuration saved" +msgstr "Configuração salvada" -#: static/adm/js/gui-definition.js:370 static/adm/js/gui-definition.js.c:405 -msgid "Error creating transport" -msgstr "Erro ao criar o transporte" - -#: static/adm/js/gui-definition.js:388 -msgid "Available for networks" -msgstr "Disponíveis para redes" - -#: static/adm/js/gui-definition.js:389 -msgid "Select networks that will see this transport" -msgstr "Selecione as redes que vão ver este transporte" - -#: static/adm/js/gui-definition.js:390 -msgid "Transport active for selected networks" -msgstr "Transporte ativo para redes selecionadas" - -#: static/adm/js/gui-definition.js:391 -msgid "" -"If active, transport will only be available on selected networks. If " -"inactive, transport will be available form any net EXCEPT selected networks" -msgstr "" -"Se ativo, transporte só estará disponível em redes selecionadas. Se " -"inativo, o transporte será formulário disponível qualquer rede exceto redes selecionadas" - -#: static/adm/js/gui-definition.js:397 +#: static/adm/js/gui-d-connectivity.js:20 msgid "New transport" msgstr "Novo transporte" -#: static/adm/js/gui-definition.js:414 +#: static/adm/js/gui-d-connectivity.js:20 +msgid "Transport creation error" +msgstr "Erro de criação de transporte" + +#: static/adm/js/gui-d-connectivity.js:21 +msgid "Edit transport" +msgstr "Editar transportes" + +#: static/adm/js/gui-d-connectivity.js:21 +msgid "Transport saving error" +msgstr "Transporte salvando o erro" + +#: static/adm/js/gui-d-connectivity.js:22 +msgid "Delete transport" +msgstr "Excluir o transporte" + +#: static/adm/js/gui-d-connectivity.js:22 +msgid "Transport deletion error" +msgstr "Erro de exclusão de transportes" + +#: static/adm/js/gui-d-connectivity.js:28 +msgid "New network" +msgstr "Nova rede" + +#: static/adm/js/gui-d-connectivity.js:28 +msgid "Network creation error" +msgstr "Erro de criação de rede" + +#: static/adm/js/gui-d-connectivity.js:29 +msgid "Edit network" +msgstr "Editar rede" + +#: static/adm/js/gui-d-connectivity.js:29 +msgid "Network saving error" +msgstr "Salvando o erro de rede" + +#: static/adm/js/gui-d-connectivity.js:30 +msgid "Delete network" +msgstr "Excluir rede" + +#: static/adm/js/gui-d-connectivity.js:30 +msgid "Network deletion error" +msgstr "Erro de exclusão de rede" + +#: static/adm/js/gui-d-osmanagers.js:13 +msgid "New OSManager" +msgstr "Nova OSManager" + +#: static/adm/js/gui-d-osmanagers.js:13 +msgid "OSManager creation error" +msgstr "Erro de criação de OSManager" + +#: static/adm/js/gui-d-osmanagers.js:14 +msgid "Edit OSManager" +msgstr "Editar OSManager" + +#: static/adm/js/gui-d-osmanagers.js:14 +msgid "OSManager saving error" +msgstr "OSManager salvar o erro" + +#: static/adm/js/gui-d-osmanagers.js:15 +msgid "Delete OSManager" +msgstr "Excluir OSManager" + +#: static/adm/js/gui-d-osmanagers.js:15 +msgid "OSManager deletion error" +msgstr "OSManager erro de exclusão" + +#: static/adm/js/gui-d-services.js:9 static/adm/js/gui-d-servicespools.js:120 +msgid "Test" +msgstr "Teste" + +#: static/adm/js/gui-d-services.js:111 +msgid "Edit service" +msgstr "Editar serviço" + +#: static/adm/js/gui-d-services.js:111 +msgid "Service creation error" +msgstr "Erro de criação do serviço" + +#: static/adm/js/gui-d-services.js:112 +msgid "New service" +msgstr "Novo serviço" + +#: static/adm/js/gui-d-services.js:112 +msgid "Service saving error" +msgstr "Salvando o erro de serviço" + +#: static/adm/js/gui-d-services.js:113 +msgid "Delete service" +msgstr "Excluir o serviço" + +#: static/adm/js/gui-d-services.js:113 +msgid "Service deletion error" +msgstr "Erro de exclusão do serviço" + +#: static/adm/js/gui-d-services.js:128 +msgid "New services provider" +msgstr "Novo provedor de serviços" + +#: static/adm/js/gui-d-services.js:128 +msgid "Services provider creation error" +msgstr "Erro de criação do provedor de serviços" + +#: static/adm/js/gui-d-services.js:129 +msgid "Edit services provider" +msgstr "Editar Provedor de serviços" + +#: static/adm/js/gui-d-services.js:129 +msgid "Services Provider saving error" +msgstr "Salvando o erro do prestador de serviços" + +#: static/adm/js/gui-d-services.js:130 +msgid "Delete services provider" +msgstr "Exclua o provedor de serviços" + +#: static/adm/js/gui-d-services.js:130 +msgid "Services Provider deletion error" +msgstr "Erro de exclusão do provedor de serviços" + +#: static/adm/js/gui-d-servicespools.js:136 +msgid "Error processing deployed service" +msgstr "Serviço de processamento implantado de erro" + +#: static/adm/js/gui-d-servicespools.js:191 +msgid "Add group" +msgstr "Adicionar grupo" + +#: static/adm/js/gui-d-servicespools.js:215 +msgid "You must provide authenticator and group" +msgstr "Você deve fornecer o autenticador e grupo" + +#: static/adm/js/gui-d-servicespools.js:230 +msgid "Remove group from service pool" +msgstr "Remover grupo de pool de serviço" + +#: static/adm/js/gui-d-servicespools.js:230 +msgid "Error removing group" +msgstr "Grupo de remoção de erro" + +#: static/adm/js/gui-d-servicespools.js:281 +msgid "Add transport" +msgstr "Adicionar transporte" + +#: static/adm/js/gui-d-servicespools.js:288 +msgid "You must provide a transport" +msgstr "Você deve fornecer um transporte" + +#: static/adm/js/gui-d-servicespools.js:303 +msgid "Remove transport from service pool" +msgstr "Remova o transporte do pool de serviço" + +#: static/adm/js/gui-d-servicespools.js:303 msgid "Error removing transport" msgstr "Erro na remoção de transporte" -#: static/adm/js/gui-definition.js:432 +#: static/adm/js/gui-d-servicespools.js:328 +msgid "Cancel" +msgstr "Cancelar" + +#: static/adm/js/gui-d-servicespools.js:349 +msgid "Publication failed" +msgstr "Publicação falhada" + +#: static/adm/js/gui-d-servicespools.js:379 +msgid "Restrained" +msgstr "Contido" + +#: static/adm/js/gui-d-servicespools.js:387 +msgid "unknown (needs reload)" +msgstr "desconhecido (precisa de recarregar)" + +#: static/adm/js/gui-d-servicespools.js:391 +msgid "New service pool" +msgstr "Novo pool de serviço" + +#: static/adm/js/gui-d-servicespools.js:391 +msgid "Error creating service pool" +msgstr "Criando pool de serviço erro" + +#: static/adm/js/gui-d-servicespools.js:398 +msgid "Publish on creation" +msgstr "Publicar na criação" + +#: static/adm/js/gui-d-servicespools.js:399 +msgid "" +"If selected, will initiate the publication on service inmediatly pool after " +"creation" +msgstr "" +"Se selecionado, irá iniciar a publicação na piscina de serviço imediatamente " +"após a criação" + +#: static/adm/js/gui-d-servicespools.js:410 static/adm/js/gui.js:41 +msgid "Edit" +msgstr "Editar" + +#: static/adm/js/gui-d-servicespools.js:410 +msgid "saving error" +msgstr "salvando o erro" + +#: static/adm/js/gui-d-servicespools.js:411 static/adm/js/gui.js:45 +#: static/adm/js/gui.js.c:358 +msgid "Delete" +msgstr "Excluir" + +#: static/adm/js/gui-d-servicespools.js:411 +msgid "deletion error" +msgstr "erro de exclusão" + +#: static/adm/js/gui-definition.js:11 msgid "Cache" msgstr "Cache" -#: static/adm/js/gui-definition.js:432 +#: static/adm/js/gui-definition.js:11 msgid "Cache has been flushed" msgstr "Cache foi liberado" -#: static/adm/js/gui-element.js:471 +#: static/adm/js/gui-element.js:557 msgid "Date" msgstr "Data" -#: static/adm/js/gui-element.js:478 +#: static/adm/js/gui-element.js:566 msgid "level" msgstr "nível" -#: static/adm/js/gui-element.js:486 +#: static/adm/js/gui-element.js:574 msgid "source" msgstr "fonte" -#: static/adm/js/gui-element.js:493 +#: static/adm/js/gui-element.js:581 msgid "message" msgstr "Mensagem" -#: static/adm/js/gui-element.js:499 +#: static/adm/js/gui-element.js:587 msgid "Logs" msgstr "Logs" @@ -270,122 +482,106 @@ msgstr "Aguarde, processamento" msgid "Filter" msgstr "Filtro" -#: static/adm/js/gui.js:28 -msgid "First" -msgstr "Primeiro" - -#: static/adm/js/gui.js:29 -msgid "Last" -msgstr "Última" - #: static/adm/js/gui.js:37 msgid "New" msgstr "Novo" -#: static/adm/js/gui.js:41 -msgid "Edit" -msgstr "Editar" - -#: static/adm/js/gui.js:45 static/adm/js/gui.js.c:322 -msgid "Delete" -msgstr "Excluir" - #: static/adm/js/gui.js:49 msgid "Xls" msgstr "Xls" -#: static/adm/js/gui.js:111 +#: static/adm/js/gui.js:123 msgid "Message" msgstr "Mensagem" -#: static/adm/js/gui.js:133 -msgid "Deployed services" -msgstr "Serviços implantados" - -#: static/adm/js/gui.js:207 +#: static/adm/js/gui.js:217 msgid "This field is required." msgstr "Este campo é obrigatório." -#: static/adm/js/gui.js:208 +#: static/adm/js/gui.js:218 msgid "Please fix this field." msgstr "Por favor corrigi este campo." -#: static/adm/js/gui.js:209 +#: static/adm/js/gui.js:219 msgid "Please enter a valid email address." msgstr "Por favor insira um endereço de email válido." -#: static/adm/js/gui.js:210 +#: static/adm/js/gui.js:220 msgid "Please enter a valid URL." msgstr "Por favor introduza um URL válido." -#: static/adm/js/gui.js:211 +#: static/adm/js/gui.js:221 msgid "Please enter a valid date." msgstr "Por favor introduza uma data válida." -#: static/adm/js/gui.js:212 +#: static/adm/js/gui.js:222 msgid "Please enter a valid date (ISO)." msgstr "Por favor introduza uma data válida (ISO)." -#: static/adm/js/gui.js:213 +#: static/adm/js/gui.js:223 msgid "Please enter a valid number." msgstr "Por favor, insira um número válido." -#: static/adm/js/gui.js:214 +#: static/adm/js/gui.js:224 msgid "Please enter only digits." msgstr "Por favor, digite somente dígitos." -#: static/adm/js/gui.js:215 +#: static/adm/js/gui.js:225 msgid "Please enter a valid credit card number." msgstr "Por favor, insira um número válido de cartão de crédito." -#: static/adm/js/gui.js:216 +#: static/adm/js/gui.js:226 msgid "Please enter the same value again." msgstr "Digite novamente o mesmo valor." -#: static/adm/js/gui.js:217 +#: static/adm/js/gui.js:227 msgid "Please enter no more than {0} characters." msgstr "Não mais de {0} caracteres digite." -#: static/adm/js/gui.js:218 +#: static/adm/js/gui.js:228 msgid "Please enter at least {0} characters." msgstr "Por favor, insira pelo menos {0} caracteres." -#: static/adm/js/gui.js:219 +#: static/adm/js/gui.js:229 msgid "Please enter a value between {0} and {1} characters long." msgstr "Por favor, insira um valor entre {0} e {1} caracteres longo." -#: static/adm/js/gui.js:220 +#: static/adm/js/gui.js:230 msgid "Please enter a value between {0} and {1}." msgstr "Por favor, insira um valor entre {0} e {1}." -#: static/adm/js/gui.js:221 +#: static/adm/js/gui.js:231 msgid "Please enter a value less than or equal to {0}." msgstr "Por favor digite um valor menor ou igual a {0}." -#: static/adm/js/gui.js:222 +#: static/adm/js/gui.js:232 msgid "Please enter a value greater than or equal to {0}." msgstr "Por favor, insira um valor maior ou igual a {0}." -#: static/adm/js/gui.js:244 +#: static/adm/js/gui.js:274 msgid "Test result" msgstr "Resultado do teste" -#: static/adm/js/gui.js:245 +#: static/adm/js/gui.js:275 msgid "Test error" msgstr "Erro de teste" -#: static/adm/js/gui.js:276 +#: static/adm/js/gui.js:307 msgid "Edition successfully done" msgstr "Edição com sucesso" -#: static/adm/js/gui.js:310 +#: static/adm/js/gui.js:330 +msgid "of type" +msgstr "do tipo" + +#: static/adm/js/gui.js:347 msgid "Creation successfully done" msgstr "Criação feita com sucesso" -#: static/adm/js/gui.js:321 +#: static/adm/js/gui.js:357 msgid "Are you sure do you want to delete " msgstr "Você tem certeza que quer excluir " -#: static/adm/js/gui.js:327 +#: static/adm/js/gui.js:363 msgid "Item deleted" msgstr "Item excluído" diff --git a/server/src/uds/static/adm/js/gui-d-authenticators.js b/server/src/uds/static/adm/js/gui-d-authenticators.js index 3e9ca098..45732e41 100644 --- a/server/src/uds/static/adm/js/gui-d-authenticators.js +++ b/server/src/uds/static/adm/js/gui-d-authenticators.js @@ -214,7 +214,7 @@ gui.authenticators.link = function(event) { $(modalId).modal('hide'); refreshFnc(); gui.notify(gettext('Group saved'), 'success'); - }, gui.failRequestModalFnc("Error saving group", true)); + }, gui.failRequestModalFnc(gettext("Group saving error"), true)); }); }); }; @@ -228,10 +228,10 @@ gui.authenticators.link = function(event) { } }, - onDelete: gui.methods.del(group, gettext('Delete group'), gettext('Error deleting group')), + onDelete: gui.methods.del(group, gettext('Delete group'), gettext('Group deletion error')), }); - var tmpLogTable; + var tmpLogTable = null; // New button will only be shown on authenticators that can create new users var usrButtons = ['edit', 'delete', 'xls']; @@ -311,7 +311,7 @@ gui.authenticators.link = function(event) { $(modalId).modal('hide'); refreshFnc(); gui.notify(gettext('User saved'), 'success'); - }, gui.failRequestModalFnc("Error saving user", true)); + }, gui.failRequestModalFnc(gettext("User saving error"), true)); }); }); }); @@ -346,12 +346,12 @@ gui.authenticators.link = function(event) { $(modalId).modal('hide'); refreshFnc(); gui.notify(gettext('User saved'), 'success'); - }, gui.failRequestModalFnc("Error saving user", true)); + }, gui.failRequestModalFnc(gettext("User saving error"), true)); }); }); }); }, - onDelete: gui.methods.del(user, gettext('Delete user'), gettext('Error deleting user')), + onDelete: gui.methods.del(user, gettext('Delete user'), gettext('User deletion error')), }); var logTable = gui.authenticators.logTable(id, { @@ -368,9 +368,9 @@ gui.authenticators.link = function(event) { onRefresh : function() { $('#users-placeholder').empty(); // Remove detail on parent refresh }, - onNew : gui.methods.typedNew(gui.authenticators, gettext('New authenticator'), gettext('Error creating authenticator'),testButton), - onEdit: gui.methods.typedEdit(gui.authenticators, gettext('Edit authenticator'), gettext('Error processing authenticator'), testButton), - onDelete: gui.methods.del(gui.authenticators, gettext('Delete authenticator'), gettext('Error deleting authenticator')), + onNew : gui.methods.typedNew(gui.authenticators, gettext('New authenticator'), gettext('Authenticator creation error'),testButton), + onEdit: gui.methods.typedEdit(gui.authenticators, gettext('Edit authenticator'), gettext('Authenticator saving error'), testButton), + onDelete: gui.methods.del(gui.authenticators, gettext('Delete authenticator'), gettext('Authenticator deletion error')), }); }); diff --git a/server/src/uds/static/adm/js/gui-d-connectivity.js b/server/src/uds/static/adm/js/gui-d-connectivity.js index be418dfc..9eb24d6a 100644 --- a/server/src/uds/static/adm/js/gui-d-connectivity.js +++ b/server/src/uds/static/adm/js/gui-d-connectivity.js @@ -17,17 +17,17 @@ gui.connectivity.link = function(event) { rowSelect : 'single', container : 'transports-placeholder', buttons : [ 'new', 'edit', 'delete', 'xls' ], - onNew : gui.methods.typedNew(gui.connectivity.transports, gettext('New transport'), gettext('Error creating transport')), - onEdit: gui.methods.typedEdit(gui.connectivity.transports, gettext('Edit transport'), gettext('Error processing transport')), - onDelete: gui.methods.del(gui.connectivity.transports, gettext('Delete transport'), gettext('Error deleting transport')), + onNew : gui.methods.typedNew(gui.connectivity.transports, gettext('New transport'), gettext('Transport creation error')), + onEdit: gui.methods.typedEdit(gui.connectivity.transports, gettext('Edit transport'), gettext('Transport saving error')), + onDelete: gui.methods.del(gui.connectivity.transports, gettext('Delete transport'), gettext('Transport deletion error')), }); gui.connectivity.networks.table({ rowSelect : 'single', container : 'networks-placeholder', buttons : [ 'new', 'edit', 'delete', 'xls' ], - onNew : gui.methods.typedNew(gui.connectivity.networks, gettext('New network'), gettext('Error creating network')), - onEdit: gui.methods.typedEdit(gui.connectivity.networks, gettext('Edit network'), gettext('Error processing network')), - onDelete: gui.methods.del(gui.connectivity.networks, gettext('Delete network'), gettext('Error deleting network')), + onNew : gui.methods.typedNew(gui.connectivity.networks, gettext('New network'), gettext('Network creation error')), + onEdit: gui.methods.typedEdit(gui.connectivity.networks, gettext('Edit network'), gettext('Network saving error')), + onDelete: gui.methods.del(gui.connectivity.networks, gettext('Delete network'), gettext('Network deletion error')), }); }); diff --git a/server/src/uds/static/adm/js/gui-d-osmanagers.js b/server/src/uds/static/adm/js/gui-d-osmanagers.js index 0fc58d0a..05b5c2cb 100644 --- a/server/src/uds/static/adm/js/gui-d-osmanagers.js +++ b/server/src/uds/static/adm/js/gui-d-osmanagers.js @@ -10,9 +10,9 @@ gui.osmanagers.link = function(event) { gui.osmanagers.table({ rowSelect : 'single', buttons : [ 'new', 'edit', 'delete', 'xls' ], - onNew : gui.methods.typedNew(gui.osmanagers, gettext('New OSManager'), gettext('Error creating OSManager')), - onEdit: gui.methods.typedEdit(gui.osmanagers, gettext('Edit OSManager'), gettext('Error processing OSManager')), - onDelete: gui.methods.del(gui.osmanagers, gettext('Delete OSManager'), gettext('Error deleting OSManager')), + onNew : gui.methods.typedNew(gui.osmanagers, gettext('New OSManager'), gettext('OSManager creation error')), + onEdit: gui.methods.typedEdit(gui.osmanagers, gettext('Edit OSManager'), gettext('OSManager saving error')), + onDelete: gui.methods.del(gui.osmanagers, gettext('Delete OSManager'), gettext('OSManager deletion error')), }); return false; diff --git a/server/src/uds/static/adm/js/gui-d-services.js b/server/src/uds/static/adm/js/gui-d-services.js index c3f90c3e..f69f3cd2 100644 --- a/server/src/uds/static/adm/js/gui-d-services.js +++ b/server/src/uds/static/adm/js/gui-d-services.js @@ -108,9 +108,9 @@ gui.providers.link = function(event) { return true; }, buttons : [ 'new', 'edit', 'delete', 'xls' ], - onEdit : gui.methods.typedEdit(services, gettext('Edit service'), gettext('Error processing service'), testButton), - onNew : gui.methods.typedNew(services, gettext('New service'), gettext('Error creating service'), testButton), - onDelete: gui.methods.del(services, gettext('Delete service'), gettext('Error deleting service'), testButton), + onEdit : gui.methods.typedEdit(services, gettext('Edit service'), gettext('Service creation error'), testButton), + onNew : gui.methods.typedNew(services, gettext('New service'), gettext('Service saving error'), testButton), + onDelete: gui.methods.del(services, gettext('Delete service'), gettext('Service deletion error'), testButton), scrollToTable : false, onLoad: function(k) { gui.tools.unblockUI(); @@ -125,9 +125,9 @@ gui.providers.link = function(event) { prevTables.push(logTable); }, buttons : [ 'new', 'edit', 'delete', 'xls' ], - onNew : gui.methods.typedNew(gui.providers, gettext('New provider'), gettext('Error creating provider'), testButton), - onEdit: gui.methods.typedEdit(gui.providers, gettext('Edit provider'), gettext('Error processing provider'), testButton), - onDelete: gui.methods.del(gui.providers, gettext('Delete provider'), gettext('Error deleting provider')), + onNew : gui.methods.typedNew(gui.providers, gettext('New services provider'), gettext('Services provider creation error'), testButton), + onEdit: gui.methods.typedEdit(gui.providers, gettext('Edit services provider'), gettext('Services Provider saving error'), testButton), + onDelete: gui.methods.del(gui.providers, gettext('Delete services provider'), gettext('Services Provider deletion error')), }); }); diff --git a/server/src/uds/static/adm/js/gui-d-servicespools.js b/server/src/uds/static/adm/js/gui-d-servicespools.js index 4bedfb40..86d0e00e 100644 --- a/server/src/uds/static/adm/js/gui-d-servicespools.js +++ b/server/src/uds/static/adm/js/gui-d-servicespools.js @@ -97,27 +97,13 @@ gui.servicesPools.link = function(event) { })); gui.setLinksEvents(); - var testClick = function(val, value, btn, tbl, refreshFnc) { - gui.doLog(value); - }; - var counter = 0; - var testSelect = function(val, value, btn, tbl, refreshFnc) { - if( !val ) { - $(btn).removeClass('btn3d-info').addClass('disabled'); - return; - } - $(btn).removeClass('disabled').addClass('btn3d-info'); - counter = counter + 1; - gui.doLog('Select', counter.toString(), val, value); - }; - /* * Services pools part */ var servicesPoolsTable = gui.servicesPools.table({ container : 'deployed-services-placeholder', rowSelect : 'single', - buttons : [ 'new', 'edit', 'delete', { text: gettext('Test'), css: 'disabled', click: testClick, select: testSelect }, 'xls' ], + buttons : [ 'new', 'edit', 'delete', 'xls' ], onRowDeselect: function() { clearDetails(); }, @@ -133,7 +119,7 @@ gui.servicesPools.link = function(event) { service = availableServices[servPool.service_id]; } catch (e) { gui.doLog('Exception on rowSelect', e); - gui.notify(gettext('Error processing deployed service'), 'danger'); + gui.notify('Service pool ' + gettext('error'), 'danger'); return; } @@ -184,7 +170,7 @@ gui.servicesPools.link = function(event) { container : 'groups-placeholder', rowSelect : 'single', buttons : [ 'new', 'delete', 'xls' ], - onNew: function(value, event, table, refreshFnc) { + onNew: function(value, table, refreshFnc) { api.templates.get('pool_add_group', function(tmpl){ api.authenticators.overview(function(data){ @@ -209,14 +195,25 @@ gui.servicesPools.link = function(event) { }); $(modalId + ' .button-accept').on('click', function(event) { - alert(event); + var auth = $(modalId + ' #id_auth_select').val(); + var group = $(modalId + ' #id_group_select').val(); + if( auth == -1 || group == -1 ) { + gui.notify(gettext('You must provide authenticator and group'), 'danger'); + } else { // Save & close modal + groups.rest.create({id: group}, function(data){ + $(modalId).modal('hide'); + refreshFnc(); + }); + + } }); // Makes form "beautyfull" :-) - gui.forms.beautify(modalId); + gui.tools.applyCustoms(modalId); }); }); }, + onDelete: gui.methods.del(groups, gettext('Remove group'), gettext('Group removal error')), onData : function(data) { $.each(data, function(undefined, value){ value.group_name = '' + value.auth_name + '\\' + value.name; @@ -263,6 +260,33 @@ gui.servicesPools.link = function(event) { container: 'transports-placeholder', rowSelect: 'single', buttons : [ 'new', 'delete', 'xls' ], + onNew: function(value, table, refreshFnc) { + + api.templates.get('pool_add_transport', function(tmpl){ + api.transports.overview(function(data){ + var modalId = gui.launchModal(gettext('Add transport'),api.templates.evaluate(tmpl, { + transports: data, + })); + + $(modalId + ' .button-accept').on('click', function(event) { + var transport = $(modalId + ' #id_transport_select').val(); + if( transport == -1 ) { + gui.notify(gettext('You must provide a transport'), 'danger'); + } else { // Save & close modal + transports.rest.create({id: transport}, function(data){ + $(modalId).modal('hide'); + refreshFnc(); + }); + + } + }); + // Makes form "beautyfull" :-) + gui.tools.applyCustoms(modalId); + }); + }); + + }, + onDelete: gui.methods.del(transports, gettext('Remove transport'), gettext('Transport removal error')), onData: function(data) { $.each(data, function(undefined, value){ var style = 'display:inline-block; background: url(data:image/png;base64,' + @@ -287,27 +311,36 @@ gui.servicesPools.link = function(event) { container : 'publications-placeholder', rowSelect : 'single', buttons : [ 'new', { - text: gettext('Cancel'), - css: 'disabled', - click: function(val, value, btn, tbl, refreshFnc) { - gui.doLog(val); - }, - select: function(val, value, btn, tbl, refreshFnc) { - if( !val ) { - $(btn).removeClass('btn3d-info').addClass('disabled'); - return; - } - if( ['P','W','L'].indexOf(val.state) > 0 ) { // Waiting for publication, Preparing or running - $(btn).removeClass('disabled').addClass('btn3d-info'); - } - }, - }, + text: gettext('Cancel'), + css: 'disabled', + click: function(val, value, btn, tbl, refreshFnc) { + gui.promptModal(gettext('Publish'), gettext('Cancel publication'),{ + onYes: function() { + pubApi.invoke( val.id + '/cancel', function(){ + refreshFnc(); + }); + } + }); + }, + select: function(val, value, btn, tbl, refreshFnc) { + if( !val ) { + $(btn).removeClass('btn3d-info').addClass('disabled'); + return; + } + if( ['P','W','L'].indexOf(val.state) > 0 ) { // Waiting for publication, Preparing or running + $(btn).removeClass('disabled').addClass('btn3d-info'); + } + }, + }, 'xls' ], onNew: function(action, tbl, refreshFnc) { - gui.doLog('New publication'); - pubApi.invoke('publish', function(){ - gui.doLog('Success'); - }, gui.failRequestModalFnc(gettext('Publication failed')) ); + gui.promptModal(gettext('Publish'), gettext('Launch new publication?'), { + onYes: function() { + pubApi.invoke('publish', function(){ + refreshFnc(); + }, gui.failRequestModalFnc(gettext('Failed creating publication')) ); + } + }); }, }); prevTables.push(publicationsTable); @@ -349,7 +382,7 @@ gui.servicesPools.link = function(event) { } }); }, - onNew: gui.methods.typedNew(gui.servicesPools, gettext('New service pool'), gettext('Error creating service pool'), { + onNew: gui.methods.typedNew(gui.servicesPools, gettext('New service pool'), 'Service pool ' + gettext('creation error'), { guiProcessor: function(guiDef) { // Create has "save on publish" field gui.doLog(guiDef); var newDef = [].concat(guiDef).concat([{ @@ -357,7 +390,7 @@ gui.servicesPools.link = function(event) { 'value': true, 'gui': { 'label': gettext('Publish on creation'), - 'tooltip': gettext('If selected, will initiate the publication on service inmediatly pool after creation'), + 'tooltip': gettext('If selected, will initiate the publication inmediatly after creation'), 'type': 'checkbox', 'order': 150, 'defvalue': true, @@ -368,8 +401,8 @@ gui.servicesPools.link = function(event) { }, preprocessor: preFnc, }), - onEdit: gui.methods.typedEdit(gui.servicesPools, gettext('Edit service pool'), gettext('Error saving service pool')), - onDelete: gui.methods.del(gui.servicesPools, gettext('Delete service pool'), gettext('Error deleting service pool')), + onEdit: gui.methods.typedEdit(gui.servicesPools, gettext('Edit') + ' service pool', 'Service pool ' + gettext('saving error')), + onDelete: gui.methods.del(gui.servicesPools, gettext('Delete') + ' service pool', 'Service pool ' + gettext('deletion error')), }); }); }); diff --git a/server/src/uds/static/adm/js/gui-definition.js b/server/src/uds/static/adm/js/gui-definition.js index 3fe71337..a382479b 100644 --- a/server/src/uds/static/adm/js/gui-definition.js +++ b/server/src/uds/static/adm/js/gui-definition.js @@ -3,7 +3,7 @@ // Basic GUI components // Tools -gui.clear_cache = new BasicGuiElement('Clear cache'); +gui.clear_cache = new BasicGuiElement('Flush cache'); gui.clear_cache.link = function() { "use strict"; api.getJson('cache/flush', { diff --git a/server/src/uds/static/adm/js/gui-form.js b/server/src/uds/static/adm/js/gui-form.js index 482bf8ce..e49012f0 100644 --- a/server/src/uds/static/adm/js/gui-form.js +++ b/server/src/uds/static/adm/js/gui-form.js @@ -169,20 +169,6 @@ return res; }; - // Beautifies a form - gui.forms.beautify = function(formSelector) { - // For "beauty" switches, initialize them now - $(formSelector + ' [type="checkbox"]').bootstrapSwitch(); - // Activate "cool" selects - $(formSelector + ' .selectpicker').selectpicker(); - // TEST: cooller on mobile devices - if( /Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent) ) { - $(formSelector + ' .selectpicker').selectpicker('mobile'); - } - // Activate tooltips - $(formSelector + ' [data-toggle="tooltip"]').tooltip({delay: {show: 1000, hide: 100}, placement: 'auto right'}); - }; - // Options has this keys: // title // fields @@ -231,7 +217,7 @@ // Get form var $form = $(id + ' form'); - gui.forms.beautify(id); + gui.tools.applyCustoms(id); // Validation $form.validate({ diff --git a/server/src/uds/static/adm/js/gui.js b/server/src/uds/static/adm/js/gui.js index 842f7749..9d9bb224 100644 --- a/server/src/uds/static/adm/js/gui.js +++ b/server/src/uds/static/adm/js/gui.js @@ -129,6 +129,24 @@ gui.launchModal('' + title + '', jqXHR.responseText, { actionButton: ' '}); }; }; + + gui.promptModal = function(title, question, options) { + options = options || {}; + options.actionButton = ''; + options.closeButton = ''; + var onYes = options.onYes || function(){}; + var onNo = options.onNo || function(){}; + + var modalId = gui.launchModal(title, question, options); + $(modalId + ' .button-yes').on('click', function(event){ + $(modalId).modal('hide'); + onYes(); + }); + $(modalId + ' .button-no').on('click', function(event){ + $(modalId).modal('hide'); + onNo(); + }); + }; gui.clearWorkspace = function() { $('#content').empty(); diff --git a/server/src/uds/templates/uds/admin/snippets/navbar.html b/server/src/uds/templates/uds/admin/snippets/navbar.html index beabf710..b398f08b 100644 --- a/server/src/uds/templates/uds/admin/snippets/navbar.html +++ b/server/src/uds/templates/uds/admin/snippets/navbar.html @@ -19,7 +19,7 @@

  • {% trans 'Authenticators' %}
  • Os Managers
  • {% trans 'Connectivity' %}
  • -
  • {% trans 'Services pools' %}
  • +
  • Service pools