diff --git a/actor/src/designer/setup-dialog-unmanaged.ui b/actor/src/designer/setup-dialog-unmanaged.ui index a68ebebe..dfd3edb7 100644 --- a/actor/src/designer/setup-dialog-unmanaged.ui +++ b/actor/src/designer/setup-dialog-unmanaged.ui @@ -214,7 +214,7 @@ - UDS user with administration rights (Will not be stored on template) + UDS Service Token <html><head/><body><p>Administrator user on UDS Server.</p><p>Note: This credential will not be stored on client. Will be used to obtain an unique token for this image.</p></body></html> diff --git a/actor/src/ui/setup_dialog_unmanaged_ui.py b/actor/src/ui/setup_dialog_unmanaged_ui.py index 4518666a..da537747 100644 --- a/actor/src/ui/setup_dialog_unmanaged_ui.py +++ b/actor/src/ui/setup_dialog_unmanaged_ui.py @@ -146,7 +146,7 @@ class Ui_UdsActorSetupDialog(object): self.host.setToolTip(_translate("UdsActorSetupDialog", "Uds Broker Server Addres. Use IP or FQDN")) self.host.setWhatsThis(_translate("UdsActorSetupDialog", "Enter here the UDS Broker Addres using either its IP address or its FQDN address")) self.label_serviceToken.setText(_translate("UdsActorSetupDialog", "Service Token")) - self.serviceToken.setToolTip(_translate("UdsActorSetupDialog", "UDS user with administration rights (Will not be stored on template)")) + self.serviceToken.setToolTip(_translate("UdsActorSetupDialog", "UDS Service Token")) self.serviceToken.setWhatsThis(_translate("UdsActorSetupDialog", "

Administrator user on UDS Server.

Note: This credential will not be stored on client. Will be used to obtain an unique token for this image.

")) self.label_loglevel.setText(_translate("UdsActorSetupDialog", "Log Level")) self.label_restrictNet.setText(_translate("UdsActorSetupDialog", "Restrict Net")) diff --git a/server/src/uds/REST/methods/authenticators.py b/server/src/uds/REST/methods/authenticators.py index 2108f9d7..e2097573 100644 --- a/server/src/uds/REST/methods/authenticators.py +++ b/server/src/uds/REST/methods/authenticators.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # -# Copyright (c) 2014-2019 Virtual Cable S.L. +# Copyright (c) 2014-2022 Virtual Cable S.L.U. # All rights reserved. # # Redistribution and use in source and binary forms, with or without modification, @@ -40,6 +40,7 @@ from uds.core import auths from uds.REST import NotFound from uds.REST.model import ModelHandler from uds.core.util import permissions +from uds.core.util.model import processUuid from uds.core.ui import gui from .users_groups import Users, Groups @@ -58,17 +59,7 @@ class Authenticators(ModelHandler): # Custom get method "search" that requires authenticator id custom_methods = [('search', True)] detail = {'users': Users, 'groups': Groups} - # Networks is treated on "beforeSave", so it is not include on "save_fields" because it is not - # automatically included in the "save" method. - save_fields = [ - 'name', - 'comments', - 'tags', - 'priority', - 'small_name', - 'net_filtering', - 'state', - ] + save_fields = ['name', 'comments', 'tags', 'priority', 'small_name', 'visible', 'mfa_id'] table_title = _('Authenticators') table_fields = [ @@ -98,6 +89,7 @@ class Authenticators(ModelHandler): 'passwordLabel': _(type_.passwordLabel), 'canCreateUsers': type_.createUser != auths.Authenticator.createUser, # type: ignore 'isExternal': type_.isExternalSource, + 'supportsMFA': type_.providesMfa(), } # Not of my type return {} diff --git a/server/src/uds/locale/ar/LC_MESSAGES/django.po b/server/src/uds/locale/ar/LC_MESSAGES/django.po index ff5c8a3d..65b90010 100644 --- a/server/src/uds/locale/ar/LC_MESSAGES/django.po +++ b/server/src/uds/locale/ar/LC_MESSAGES/django.po @@ -8,9 +8,9 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-14 11:34+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:14+0000\n" +"Last-Translator: Abdel Baaddi , 2017-2018\n" "Language-Team: Arabic (http://www.transifex.com/openuds/openuds/language/" "ar/)\n" "Language: ar\n" @@ -24,26 +24,26 @@ msgstr "" msgid "Accounts" msgstr "حسابات" -#: REST/methods/accounts.py:63 REST/methods/authenticators.py:66 +#: REST/methods/accounts.py:63 REST/methods/authenticators.py:67 #: REST/methods/calendars.py:63 REST/methods/images.py:67 -#: REST/methods/meta_pools.py:81 REST/methods/networks.py:63 -#: REST/methods/osmanagers.py:55 REST/methods/providers.py:71 -#: REST/methods/proxies.py:60 REST/methods/reports.py:69 -#: REST/methods/services_pool_groups.py:71 REST/methods/services_pools.py:136 -#: REST/methods/transports.py:66 REST/methods/user_services.py:325 -#: REST/methods/user_services.py:400 REST/methods/users_groups.py:167 -#: REST/model.py:149 +#: REST/methods/meta_pools.py:81 REST/methods/mfas.py:56 +#: REST/methods/networks.py:63 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:71 REST/methods/proxies.py:60 +#: REST/methods/reports.py:69 REST/methods/services_pool_groups.py:71 +#: REST/methods/services_pools.py:136 REST/methods/transports.py:66 +#: REST/methods/user_services.py:325 REST/methods/user_services.py:400 +#: REST/methods/users_groups.py:167 REST/model.py:149 msgid "Name" msgstr "الاسم" -#: REST/methods/accounts.py:64 REST/methods/authenticators.py:68 +#: REST/methods/accounts.py:64 REST/methods/authenticators.py:69 #: REST/methods/calendarrules.py:110 REST/methods/calendars.py:69 -#: REST/methods/meta_pools.py:82 REST/methods/osmanagers.py:57 -#: REST/methods/providers.py:73 REST/methods/proxies.py:63 -#: REST/methods/services.py:241 REST/methods/services_pool_groups.py:72 -#: REST/methods/transports.py:68 REST/methods/user_services.py:402 -#: REST/methods/users_groups.py:168 REST/methods/users_groups.py:386 -#: REST/model.py:173 +#: REST/methods/meta_pools.py:82 REST/methods/mfas.py:58 +#: REST/methods/osmanagers.py:57 REST/methods/providers.py:73 +#: REST/methods/proxies.py:63 REST/methods/services.py:241 +#: REST/methods/services_pool_groups.py:72 REST/methods/transports.py:68 +#: REST/methods/user_services.py:402 REST/methods/users_groups.py:168 +#: REST/methods/users_groups.py:384 REST/model.py:173 msgid "Comments" msgstr "تعليقات" @@ -51,12 +51,12 @@ msgstr "تعليقات" msgid "Time mark" msgstr "علامة الوقت" -#: REST/methods/accounts.py:66 REST/methods/authenticators.py:73 +#: REST/methods/accounts.py:66 REST/methods/authenticators.py:75 #: REST/methods/calendars.py:71 REST/methods/meta_pools.py:89 -#: REST/methods/networks.py:71 REST/methods/osmanagers.py:59 -#: REST/methods/providers.py:79 REST/methods/proxies.py:64 -#: REST/methods/services.py:250 REST/methods/services_pools.py:145 -#: REST/methods/transports.py:77 +#: REST/methods/mfas.py:59 REST/methods/networks.py:71 +#: REST/methods/osmanagers.py:59 REST/methods/providers.py:79 +#: REST/methods/proxies.py:64 REST/methods/services.py:250 +#: REST/methods/services_pools.py:145 REST/methods/transports.py:77 msgid "tags" msgstr "العلامات" @@ -111,7 +111,7 @@ msgstr "المفتاح غير صالح" msgid "Unmanaged host" msgstr "مضيف غير مدار" -#: REST/methods/actor.py:207 web/util/errors.py:85 +#: REST/methods/actor.py:207 web/util/errors.py:87 msgid "User service not found" msgstr "لم يتم العثور على خدمة المستخدم" @@ -120,9 +120,9 @@ msgid "Actor tokens" msgstr "الرموز الفاعلة" #: REST/methods/actor_token.py:54 REST/methods/tunnel_token.py:52 -#: reports/auto/fields.py:58 reports/stats/pools_performance.py:218 -#: reports/stats/pools_performance.py:237 reports/stats/pools_usage_day.py:64 -#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:191 +#: reports/auto/fields.py:58 reports/stats/pools_performance.py:201 +#: reports/stats/pools_performance.py:220 reports/stats/pools_usage_day.py:64 +#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:176 #: templates/uds/reports/stats/authenticator_stats.html:14 msgid "Date" msgstr "تاريخ" @@ -161,64 +161,79 @@ msgstr "تسجيل مستوى" msgid "Token isued by {} from {}" msgstr "يتم إقفال الرمز بواسطة {} من {}" -#: REST/methods/authenticators.py:63 +#: REST/methods/authenticators.py:64 msgid "Authenticators" msgstr "المصادقون " -#: REST/methods/authenticators.py:65 +#: REST/methods/authenticators.py:66 msgid "Id" msgstr "Id" -#: REST/methods/authenticators.py:67 REST/methods/osmanagers.py:56 -#: REST/methods/providers.py:72 REST/methods/services.py:242 -#: REST/methods/transports.py:67 REST/methods/user_services.py:401 +#: REST/methods/authenticators.py:68 REST/methods/mfas.py:57 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:72 +#: REST/methods/services.py:242 REST/methods/transports.py:67 +#: REST/methods/user_services.py:401 msgid "Type" msgstr "نوع" -#: REST/methods/authenticators.py:69 REST/methods/meta_service_pools.py:88 +#: REST/methods/authenticators.py:70 REST/methods/meta_service_pools.py:88 #: REST/methods/op_calendars.py:83 REST/methods/services_pool_groups.py:62 #: REST/methods/transports.py:65 REST/methods/user_services.py:399 #: REST/model.py:185 models/meta_pool.py:73 msgid "Priority" msgstr "الأولوية" -#: REST/methods/authenticators.py:70 REST/methods/authenticators.py:107 +#: REST/methods/authenticators.py:71 REST/methods/authenticators.py:110 #: REST/methods/meta_pools.py:86 REST/methods/meta_pools.py:193 #: REST/methods/services_pools.py:141 REST/methods/services_pools.py:386 msgid "Visible" msgstr "مرئي" -#: REST/methods/authenticators.py:71 REST/methods/meta_pools.py:88 +#: REST/methods/authenticators.py:72 REST/methods/meta_pools.py:88 #: REST/methods/transports.py:164 REST/model.py:201 msgid "Label" msgstr "التسمية" -#: REST/methods/authenticators.py:72 core/util/stats/counters.py:252 -#: reports/stats/pools_performance.py:223 -#: reports/stats/pools_performance.py:286 reports/stats/user_access.py:254 -#: reports/stats/user_access.py:297 services/RDS_enterprise/provider.py:74 +#: REST/methods/authenticators.py:73 core/util/stats/counters.py:252 +#: reports/stats/pools_performance.py:206 +#: reports/stats/pools_performance.py:269 reports/stats/user_access.py:239 +#: reports/stats/user_access.py:282 services/RDS_enterprise/provider.py:74 #: templates/uds/reports/stats/authenticator_stats.html:15 #: templates/uds/reports/stats/pools-performance.html:35 #: templates/uds/reports/stats/user-access.html:35 msgid "Users" msgstr "المستخدمين" -#: REST/methods/authenticators.py:109 REST/methods/services_pools.py:387 -msgid "If active, transport will be visible for users" -msgstr "إذا كان نشطًا ، فسيكون النقل مرئيًا للمستخدمين" +#: REST/methods/authenticators.py:74 core/ui/user_interface.py:104 +msgid "MFA" +msgstr "MFA" -#: REST/methods/authenticators.py:113 REST/methods/services_pools.py:390 -#: REST/methods/services_pools.py:405 REST/methods/services_pools.py:422 -#: REST/methods/services_pools.py:433 core/ui/user_interface.py:103 -#: services/OVirt/service.py:188 -msgid "Display" -msgstr "عرض" +#: REST/methods/authenticators.py:112 +msgid "If active, authenticator will be visible for users" +msgstr "إذا كان المصدق نشطًا ، فسيكون مرئيًا للمستخدمين" -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:125 core/services/service.py:143 +#: core/services/service.py:154 mfas/Email/mfa.py:46 mfas/SMS/mfa.py:112 +#: models/permissions.py:92 models/permissions.py:96 +#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 +#: services/Proxmox/service.py:208 services/Sample/service.py:100 +#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 +msgid "None" +msgstr "لا شيء" + +#: REST/methods/authenticators.py:132 +msgid "MFA Provider" +msgstr "مزود MFA" + +#: REST/methods/authenticators.py:134 +msgid "MFA provider to use for this authenticator" +msgstr "مزود MFA لاستخدامه لهذا المصدق" + +#: REST/methods/authenticators.py:193 msgid "Too many results..." msgstr "نتائج كثيرة للغاية ..." -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:193 msgid "Refine your query" msgstr "حدد استفسارك" @@ -374,7 +389,7 @@ msgstr "تاريخ الإنشاء" #: REST/methods/meta_service_pools.py:195 REST/methods/services_usage.py:125 #: reports/stats/pool_users_summary.py:60 -#: reports/stats/pools_performance.py:284 reports/stats/pools_usage_day.py:171 +#: reports/stats/pools_performance.py:267 reports/stats/pools_usage_day.py:169 #: reports/stats/pools_usage_summary.py:156 reports/stats/usage_by_pool.py:59 #: reports/stats/usage_by_pool.py:173 services/Proxmox/service.py:111 #: templates/uds/reports/stats/pools-performance.html:33 @@ -433,6 +448,28 @@ msgstr "تمت ازالت البند مسبقاً" msgid "Item is not removable" msgstr "البند غير قابل للإزالة" +#: REST/methods/mfas.py:54 +msgid "Multi Factor Authentication" +msgstr "مصادقة متعددة العوامل" + +#: REST/methods/mfas.py:80 +msgid "Device Caching" +msgstr "جهاز التخزين المؤقت" + +#: REST/methods/mfas.py:82 +msgid "Time in hours to cache device so MFA is not required again. User based." +msgstr "" +"الوقت بالساعات للتخزين المؤقت للجهاز حتى لا يكون MFA مطلوبًا مرة أخرى. على " +"أساس المستخدم." + +#: REST/methods/mfas.py:94 +msgid "MFA code validity" +msgstr "صلاحية رمز MFA" + +#: REST/methods/mfas.py:96 +msgid "Time in minutes to allow MFA code to be used." +msgstr "الوقت بالدقائق للسماح باستخدام رمز MFA." + #: REST/methods/networks.py:59 REST/methods/transports.py:114 msgid "Networks" msgstr "الشبكات" @@ -521,7 +558,7 @@ msgstr "مقدمي الخدمات" msgid "Status" msgstr "مركز" -#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:171 +#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:169 #: templates/uds/reports/stats/authenticator_stats.html:16 #: templates/uds/reports/stats/pools-usage-day.html:29 msgid "Services" @@ -616,13 +653,13 @@ msgstr "" msgid "Available reports" msgstr "التقارير المتوفرة" -#: REST/methods/reports.py:67 REST/methods/users_groups.py:377 -#: REST/methods/users_groups.py:398 -#: auths/ActiveDirectory_enterprise/authenticator.py:143 +#: REST/methods/reports.py:67 REST/methods/users_groups.py:375 +#: REST/methods/users_groups.py:396 +#: auths/ActiveDirectory_enterprise/authenticator.py:153 #: auths/AzureAD_enterprise/azure_ad.py:95 #: auths/EDirectory_enterprise/authenticator.py:105 #: auths/Radius/authenticator.py:63 auths/RegexLdap/authenticator.py:191 -#: auths/SAML_enterprise/saml.py:121 auths/SimpleLDAP/authenticator.py:182 +#: auths/SAML_enterprise/saml.py:109 auths/SimpleLDAP/authenticator.py:182 #: models/calendar_action.py:147 models/calendar_action.py:154 msgid "Group" msgstr "المجموعة" @@ -687,13 +724,13 @@ msgstr "وكيل للخدمات وراء جدار الحماية" msgid "Advanced" msgstr "متقدم" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "With errors" msgstr "مع الأخطاء" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "Ok" msgstr "موافق" @@ -771,6 +808,16 @@ msgstr "" "إذا تم تمكين الخيار، فإن UDS لا تحاول الكشف عن خدمات المستخدم التي تم " "تعيينها ولكن التي ليست قيد الاستخدام." +#: REST/methods/services_pools.py:387 +msgid "If active, transport will be visible for users" +msgstr "إذا كان نشطًا ، فسيكون النقل مرئيًا للمستخدمين" + +#: REST/methods/services_pools.py:390 REST/methods/services_pools.py:405 +#: REST/methods/services_pools.py:422 REST/methods/services_pools.py:433 +#: core/ui/user_interface.py:103 services/OVirt/service.py:188 +msgid "Display" +msgstr "عرض" + #: REST/methods/services_pools.py:439 msgid "Initial available services" msgstr "أولى الخدمات المتاحة" @@ -972,7 +1019,7 @@ msgstr "موظف" #: auths/AzureAD_enterprise/azure_ad.py:94 #: auths/EDirectory_enterprise/authenticator.py:69 #: auths/Radius/authenticator.py:62 auths/RegexLdap/authenticator.py:91 -#: auths/SAML_enterprise/saml.py:118 reports/stats/pool_users_summary.py:177 +#: auths/SAML_enterprise/saml.py:106 reports/stats/pool_users_summary.py:177 #: reports/stats/usage_by_pool.py:171 #: templates/uds/reports/stats/pool-users-summary.html:14 #: templates/uds/reports/stats/usage-by-pool.html:15 @@ -989,10 +1036,10 @@ msgid "Current users" msgstr "المستخدمون الحاليون" #: REST/methods/users_groups.py:160 -#: auths/ActiveDirectory_enterprise/authenticator.py:141 +#: auths/ActiveDirectory_enterprise/authenticator.py:151 #: auths/EDirectory_enterprise/authenticator.py:103 #: auths/RegexLdap/authenticator.py:189 auths/SimpleLDAP/authenticator.py:180 -#: services/HyperV_enterprise/legacy/provider.py:103 +#: mfas/Email/mfa.py:54 services/HyperV_enterprise/legacy/provider.py:103 #: services/HyperV_enterprise/provider.py:86 #: services/NutanixPrism_enterprise/provider.py:54 #: services/Nutanix_enterprise/provider.py:54 services/OVirt/provider.py:121 @@ -1006,7 +1053,7 @@ msgstr "المستخدمون الحاليون" #: transports/NoMachine_enterprise/nomachine_base.py:63 #: transports/PCoIP_enterprise/pcoip.py:61 transports/RDP/rdp_base.py:75 #: transports/SPICE/spice_base.py:69 transports/X2GO/x2go_base.py:70 -#: web/forms/LoginForm.py:43 +#: web/forms/LoginForm.py:44 msgid "Username" msgstr "اسم المستخدم" @@ -1014,7 +1061,7 @@ msgstr "اسم المستخدم" msgid "Role" msgstr "وظيفة" -#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:389 +#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:387 msgid "state" msgstr "الحالة" @@ -1026,32 +1073,32 @@ msgstr "آخر وصول" msgid "Username cannot be empty" msgstr "اسم المستخدم لا يمكن أن يكون فارغا" -#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:470 +#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:468 msgid "User already exists (duplicate key error)" msgstr "المستخدم موجود مسبقا (خطأ مفتاح مكرر)" -#: REST/methods/users_groups.py:365 +#: REST/methods/users_groups.py:363 #, python-brace-format msgid "Groups of {0}" msgstr "مجموعات من {0}" -#: REST/methods/users_groups.py:371 +#: REST/methods/users_groups.py:369 msgid "Current groups" msgstr "المجموعات الحالية" -#: REST/methods/users_groups.py:398 +#: REST/methods/users_groups.py:396 msgid "UDS Group" msgstr "المجموعة المصغرة" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "Meta group" msgstr "Meta المجموعة" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "UDS Meta Group" msgstr "مجموعة Meta المصغرة" -#: REST/methods/users_groups.py:430 +#: REST/methods/users_groups.py:428 msgid "Group name is required" msgstr "اسم المجموعة مطلوب" @@ -1100,7 +1147,7 @@ msgstr "تعذر العثور على الأسلوب في {}: {}" msgid "Item not found" msgstr "تعذر العثور على عنصر" -#: REST/model.py:336 web/util/authentication.py:140 web/util/errors.py:79 +#: REST/model.py:336 web/util/authentication.py:143 web/util/errors.py:81 msgid "Access denied" msgstr "تم رفض الوصول" @@ -1108,7 +1155,7 @@ msgstr "تم رفض الوصول" msgid "Operation not supported" msgstr "العملية غير معتمدة" -#: admin/views/__init__.py:59 +#: admin/views/__init__.py:72 msgid "requested a template that do not exist" msgstr "طلب قالب غير موجود" @@ -1139,11 +1186,11 @@ msgstr "" "دوم لذلك)" #: auths/ActiveDirectory_enterprise/authenticator.py:80 -#: auths/ActiveDirectory_enterprise/authenticator.py:145 +#: auths/ActiveDirectory_enterprise/authenticator.py:155 #: auths/EDirectory_enterprise/authenticator.py:77 #: auths/RegexLdap/authenticator.py:99 auths/RegexLdap/authenticator.py:193 #: auths/SimpleLDAP/authenticator.py:90 auths/SimpleLDAP/authenticator.py:184 -#: core/auths/authenticator.py:147 +#: core/auths/authenticator.py:147 mfas/Email/mfa.py:63 #: osmanagers/WindowsOsManager/windows_domain.py:85 #: osmanagers/WindowsOsManager/windows_random.py:76 #: services/HyperV_enterprise/legacy/provider.py:110 @@ -1159,8 +1206,8 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcv_base.py:52 #: transports/NoMachine_enterprise/nomachine_base.py:69 #: transports/PCoIP_enterprise/pcoip.py:67 transports/RDP/rdp_base.py:81 -#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:45 -#: web/forms/LoginForm.py:46 +#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:46 +#: web/forms/LoginForm.py:47 msgid "Password" msgstr "كلمة المرور" @@ -1226,22 +1273,32 @@ msgstr "" "إذا لم يكن فارغًا ، فسيتم استخدام هذا المضيف في حالة عدم إمكانية الوصول إلى " "خادم المضيف الرئيسي" -#: auths/ActiveDirectory_enterprise/authenticator.py:130 +#: auths/ActiveDirectory_enterprise/authenticator.py:133 +#: auths/SAML_enterprise/saml.py:207 +msgid "MFA attribute" +msgstr "سمة MFA" + +#: auths/ActiveDirectory_enterprise/authenticator.py:135 +#: auths/SAML_enterprise/saml.py:209 +msgid "Attribute from where to extract the MFA code" +msgstr "السمة من مكان استخراج رمز MFA" + +#: auths/ActiveDirectory_enterprise/authenticator.py:140 msgid "Active Directory Authenticator" msgstr "مصادق Active Directory" -#: auths/ActiveDirectory_enterprise/authenticator.py:132 +#: auths/ActiveDirectory_enterprise/authenticator.py:142 msgid "Authenticate against Active Directory" msgstr "المصادقة بالمقابلة مع خدمة Active Directory" -#: auths/ActiveDirectory_enterprise/authenticator.py:175 -#: auths/ActiveDirectory_enterprise/authenticator.py:602 +#: auths/ActiveDirectory_enterprise/authenticator.py:187 +#: auths/ActiveDirectory_enterprise/authenticator.py:648 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "يجب تحديد اسم المستخدم في النموذج USERNAME@DOMAIN.DOM" -#: auths/ActiveDirectory_enterprise/authenticator.py:481 -#: auths/ActiveDirectory_enterprise/authenticator.py:532 -#: auths/AzureAD_enterprise/azure_ad.py:313 +#: auths/ActiveDirectory_enterprise/authenticator.py:521 +#: auths/ActiveDirectory_enterprise/authenticator.py:578 +#: auths/AzureAD_enterprise/azure_ad.py:315 #: auths/EDirectory_enterprise/authenticator.py:269 #: auths/EDirectory_enterprise/authenticator.py:300 #: auths/RegexLdap/authenticator.py:538 auths/RegexLdap/authenticator.py:569 @@ -1249,34 +1306,34 @@ msgstr "يجب تحديد اسم المستخدم في النموذج USERNAME@D msgid "Username not found" msgstr "لم يتم العثور على اسم المستخدم" -#: auths/ActiveDirectory_enterprise/authenticator.py:514 +#: auths/ActiveDirectory_enterprise/authenticator.py:560 #: auths/SimpleLDAP/authenticator.py:468 msgid "Group not found" msgstr "لم يتم العثور على المجموعة" -#: auths/ActiveDirectory_enterprise/authenticator.py:559 -#: auths/ActiveDirectory_enterprise/authenticator.py:581 +#: auths/ActiveDirectory_enterprise/authenticator.py:605 +#: auths/ActiveDirectory_enterprise/authenticator.py:627 #: auths/EDirectory_enterprise/authenticator.py:322 #: auths/RegexLdap/authenticator.py:597 auths/SimpleLDAP/authenticator.py:503 #: auths/SimpleLDAP/authenticator.py:523 msgid "Too many results, be more specific" msgstr "الكثير من النتائج، كن أكثر تحديداً" -#: auths/ActiveDirectory_enterprise/authenticator.py:613 +#: auths/ActiveDirectory_enterprise/authenticator.py:659 msgid "Domain seems to be incorrect, please check it" msgstr "المجال غير صحيح، الرجاء التحقق من ذلك" -#: auths/ActiveDirectory_enterprise/authenticator.py:632 +#: auths/ActiveDirectory_enterprise/authenticator.py:678 msgid "" "Server does not seem an Active Directory (it does not have user objects)" msgstr "الملقم لا يبدو Active Directory (ليس لديه كائنات المستخدم)" -#: auths/ActiveDirectory_enterprise/authenticator.py:655 +#: auths/ActiveDirectory_enterprise/authenticator.py:701 msgid "" "Server does not seem an Active Directory (it does not have group objects)" msgstr "الملقم لا يبدو Active Directory (ليس لديه كائنات المجموعة)" -#: auths/ActiveDirectory_enterprise/authenticator.py:664 +#: auths/ActiveDirectory_enterprise/authenticator.py:710 #: auths/EDirectory_enterprise/authenticator.py:445 #: auths/RegexLdap/authenticator.py:707 auths/SimpleLDAP/authenticator.py:686 msgid "Connection params seem correct, test was succesfully executed" @@ -1351,7 +1408,7 @@ msgstr "قم بالتمكين فقط إذا كان لديك Microsoft School Dat #: auths/AzureAD_enterprise/azure_ad.py:150 msgid "Azure Logout method." -msgstr "طريقة تسجيل الخروج Azure." +msgstr "طريقة Azure Logout." #: auths/AzureAD_enterprise/azure_ad.py:152 msgid "UDS Redirection to Microsoft logout pages on UDS logout." @@ -1371,21 +1428,21 @@ msgstr "تسجيل خروج Microsoft" msgid "Office 365 logout" msgstr "تسجيل الخروج من Office 365" -#: auths/AzureAD_enterprise/azure_ad.py:176 auths/SAML_enterprise/saml.py:217 +#: auths/AzureAD_enterprise/azure_ad.py:176 msgid "SAML Authenticator does not support white spaces on field NAME" msgstr "لا يدعم أداة مصادقة SAML المسافات البيضاء في الحقل NAME" -#: auths/AzureAD_enterprise/azure_ad.py:323 -#: auths/AzureAD_enterprise/azure_ad.py:349 -#: auths/AzureAD_enterprise/azure_ad.py:359 +#: auths/AzureAD_enterprise/azure_ad.py:325 +#: auths/AzureAD_enterprise/azure_ad.py:351 +#: auths/AzureAD_enterprise/azure_ad.py:361 msgid "Authenticator exception:" msgstr "استثناء المصادق:" -#: auths/AzureAD_enterprise/azure_ad.py:394 core/util/ldaputil.py:49 +#: auths/AzureAD_enterprise/azure_ad.py:396 core/util/ldaputil.py:49 msgid "Connection error: " msgstr "خطأ في الاتصال: " -#: auths/AzureAD_enterprise/azure_ad.py:397 +#: auths/AzureAD_enterprise/azure_ad.py:399 msgid "Connection params seems correct, test was succesfully executed" msgstr "يبدو params الاتصال الصحيح، واختبار تم تنفيذها بنجاح" @@ -1484,7 +1541,7 @@ msgstr "IP المصادق" msgid "IP Range" msgstr "نطاق IP" -#: auths/IP/authenticator.py:119 auths/IP/authenticator.py:122 +#: auths/IP/authenticator.py:122 auths/IP/authenticator.py:125 msgid "All seems to be fine." msgstr "على ما يبدو الكل على ما يرام." @@ -1671,19 +1728,19 @@ msgid "" "attribute)" msgstr "يبدو أن سمة معرف مجموعة Ldap غير صحيحة (لا توجد أي مجموعةلهذه السمة)" -#: auths/SAML_enterprise/saml.py:88 +#: auths/SAML_enterprise/saml.py:76 msgid "SAML Authenticator" msgstr "المصادق SAML" -#: auths/SAML_enterprise/saml.py:100 +#: auths/SAML_enterprise/saml.py:88 msgid "SAML (v2.0) Authenticator" msgstr "المصادق (SAML (v2.0" -#: auths/SAML_enterprise/saml.py:130 +#: auths/SAML_enterprise/saml.py:118 msgid "Private key" msgstr "المفتاح الخاص" -#: auths/SAML_enterprise/saml.py:133 +#: auths/SAML_enterprise/saml.py:121 msgid "" "Private key used for sign and encription, as generated in base 64 from " "openssl" @@ -1691,15 +1748,15 @@ msgstr "" "استخدام المفتاح الخاص للتسجيل ولهذه السمة، كما تم إنشاؤه في الأساس 64 من " "OpenSSL" -#: auths/SAML_enterprise/saml.py:136 auths/SAML_enterprise/saml.py:147 +#: auths/SAML_enterprise/saml.py:124 auths/SAML_enterprise/saml.py:135 msgid "Certificates" msgstr "شهادات" -#: auths/SAML_enterprise/saml.py:141 transports/SPICE/spice_base.py:83 +#: auths/SAML_enterprise/saml.py:129 transports/SPICE/spice_base.py:83 msgid "Certificate" msgstr "شهادة" -#: auths/SAML_enterprise/saml.py:144 +#: auths/SAML_enterprise/saml.py:132 msgid "" "Public key used for sign and encription (public part of previous private " "key), as generated in base 64 from openssl" @@ -1707,58 +1764,80 @@ msgstr "" "المفتاح العمومي يستخدم للإمضاء والتشفير (الجزء العلني من المفتاح الخاص " "السابق)، كما ولد في base64 من OpenSSL" -#: auths/SAML_enterprise/saml.py:152 +#: auths/SAML_enterprise/saml.py:140 msgid "IDP Metadata" msgstr "IDP Metadata" -#: auths/SAML_enterprise/saml.py:155 +#: auths/SAML_enterprise/saml.py:143 msgid "" "You can enter here the URL or the IDP metadata or the metadata itself (xml)" msgstr "" "يمكنك إدخال URL أو بيانات IDP Metadata هنا داخليا أو بيان التعريف نفسه (xml)" -#: auths/SAML_enterprise/saml.py:158 auths/SAML_enterprise/saml.py:167 +#: auths/SAML_enterprise/saml.py:146 auths/SAML_enterprise/saml.py:155 msgid "Metadata" msgstr "بيانات التعريف" -#: auths/SAML_enterprise/saml.py:162 +#: auths/SAML_enterprise/saml.py:150 msgid "Entity ID" msgstr "معرف الكيان" -#: auths/SAML_enterprise/saml.py:165 +#: auths/SAML_enterprise/saml.py:153 msgid "ID of the SP. If left blank, this will be autogenerated from server URL" msgstr "SP ID. إذا ترك فارغاً، ستكون هذه المعطيات من محدد موقع معلومات الخادم" -#: auths/SAML_enterprise/saml.py:173 +#: auths/SAML_enterprise/saml.py:161 msgid "User name attrs" msgstr "User name attrs" -#: auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:163 msgid "Fields from where to extract user name" msgstr "حقول منها يستخرج اسم المستخدم" -#: auths/SAML_enterprise/saml.py:177 auths/SAML_enterprise/saml.py:187 -#: auths/SAML_enterprise/saml.py:197 +#: auths/SAML_enterprise/saml.py:165 auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:185 msgid "Attributes" msgstr "سمات" -#: auths/SAML_enterprise/saml.py:183 +#: auths/SAML_enterprise/saml.py:171 msgid "Group name attrs" msgstr "Group name attrs" -#: auths/SAML_enterprise/saml.py:185 +#: auths/SAML_enterprise/saml.py:173 msgid "Fields from where to extract the groups" msgstr "حقول منها تستخرج المجموعات" -#: auths/SAML_enterprise/saml.py:193 +#: auths/SAML_enterprise/saml.py:181 msgid "Real name attrs" msgstr "Real name attrs" -#: auths/SAML_enterprise/saml.py:195 +#: auths/SAML_enterprise/saml.py:183 msgid "Fields from where to extract the real name" msgstr "حقول منها يستخرج الاسم الحقيقي" +#: auths/SAML_enterprise/saml.py:189 +msgid "Global logout" +msgstr "تسجيل الخروج العالمي" + +#: auths/SAML_enterprise/saml.py:192 +msgid "If set, logout from UDS will trigger SAML logout" +msgstr "في حالة الضبط ، سيؤدي الخروج من UDS إلى تشغيل تسجيل الخروج من SAML" + +#: auths/SAML_enterprise/saml.py:197 +msgid "ADFS compatibility" +msgstr "توافق ADFS" + +#: auths/SAML_enterprise/saml.py:200 +msgid "If set, enable lowercase url encoding so ADFS can work correctly" +msgstr "" +"في حالة التعيين ، قم بتمكين ترميز عنوان url بأحرف صغيرة حتى يعمل ADFS بشكل " +"صحيح" + #: auths/SAML_enterprise/saml.py:231 +msgid "This kind of Authenticator does not support white spaces on field NAME" +msgstr "لا يدعم هذا النوع من المصادقة المسافات البيضاء في الحقل NAME" + +#: auths/SAML_enterprise/saml.py:245 msgid "" "Server certificate should be a valid PEM (PEM certificates starts with -----" "BEGIN CERTIFICATE-----)" @@ -1766,11 +1845,11 @@ msgstr "" "يجب أن تكون شهادة الملقم PEM صالحة (PEM شهادات تبدأ ب-----BEGIN " "CERTIFICATE-----)" -#: auths/SAML_enterprise/saml.py:239 +#: auths/SAML_enterprise/saml.py:253 msgid "Invalid server certificate. " msgstr "شهادة الملقم غير صالحة. " -#: auths/SAML_enterprise/saml.py:250 +#: auths/SAML_enterprise/saml.py:264 msgid "" "Private key should be a valid PEM (PEM private keys starts with -----BEGIN " "RSA PRIVATE KEY-----" @@ -1778,27 +1857,47 @@ msgstr "" "يجب أن يكون المفتاح الخاص PEM صالح (PEM المفاتيح الخاصة تبدأ ب------BEGIN " "RSA PRIVATE KEY-----" -#: auths/SAML_enterprise/saml.py:258 +#: auths/SAML_enterprise/saml.py:272 msgid "Invalid private key. " msgstr "المفتاح الخاص غير صالح. " -#: auths/SAML_enterprise/saml.py:277 +#: auths/SAML_enterprise/saml.py:291 #, python-brace-format msgid "Can't fetch url {0}: {1}" msgstr "لا يمكن إحضار url {0}: {1}" -#: auths/SAML_enterprise/saml.py:288 +#: auths/SAML_enterprise/saml.py:302 msgid " (obtained from URL)" msgstr " (تم الحصول عليها من URL)" -#: auths/SAML_enterprise/saml.py:290 +#: auths/SAML_enterprise/saml.py:304 msgid "XML does not seem valid for IDP Metadata " msgstr "XML لا تبدو صالحة لبيانات التعريف IDP Metadata" -#: auths/SAML_enterprise/saml.py:312 +#: auths/SAML_enterprise/saml.py:357 msgid "Can't access idp metadata" msgstr "لا يمكن الوصول إلى بيانات التعريف IDP Metadata" +#: auths/SAML_enterprise/saml.py:424 +msgid "Error validating SP metadata: " +msgstr "خطأ في التحقق من صحة بيانات تعريف مقدم الخدمة:" + +#: auths/SAML_enterprise/saml.py:528 +msgid "Error processing SLO: " +msgstr "خطأ في معالجة SLO:" + +#: auths/SAML_enterprise/saml.py:558 +msgid "Error processing SAML response: " +msgstr "خطأ في معالجة استجابة SAML:" + +#: auths/SAML_enterprise/saml.py:571 +msgid "SAML response not authenticated" +msgstr "لم تتم مصادقة استجابة SAML" + +#: auths/SAML_enterprise/saml.py:598 +msgid "No attributes returned from IdP" +msgstr "لم يتم إرجاع أي سمات من IdP" + #: auths/Sample/SampleAuth.py:79 msgid "Sample Authenticator" msgstr "مصادق نموذجي" @@ -1892,11 +1991,11 @@ msgstr "" msgid "Can't locate any group with the membership attribute specified" msgstr "لا يمكن تحديد موقع أي مجموعة مع تحديد سمة العضوية" -#: core/auths/auth.py:110 +#: core/auths/auth.py:111 msgid "System Administrator" msgstr "مسؤول النظام" -#: core/auths/auth.py:150 +#: core/auths/auth.py:155 msgid "Forbidden" msgstr "ممنوع" @@ -1929,33 +2028,41 @@ msgstr "لا يمكن إلغاء نشر منشور غير صالح للاستع msgid "Can't unpublish publications with services in process" msgstr "لا يمكن إلغاء نشر المنشورات مع خدمات في طور الإستعمال" -#: core/managers/user_service.py:337 +#: core/managers/user_service.py:348 msgid "Can't remove a non active element" msgstr "لا يمكن إزالة عنصر غير نشط" -#: core/managers/user_service.py:363 +#: core/managers/user_service.py:374 msgid "Can't remove nor cancel {} cause its state don't allow it" msgstr "لا يمكن إزالة أو إلغاء {} لأن حالته لا تسمح بذلك" -#: core/managers/user_service.py:395 +#: core/managers/user_service.py:406 msgid "The requested service is restrained" msgstr "الخدمة المطلوبة مقيدة" -#: core/managers/user_service.py:761 web/util/errors.py:81 +#: core/managers/user_service.py:770 web/util/errors.py:83 msgid "" "Invalid service. The service is not available at this moment. Please, try " "later" msgstr "" "الخدمة غير صالحة. الخدمة غير متوفرة في هذه اللحظة. من فضلك، حاول في وقت لاحق" -#: core/managers/user_service.py:798 +#: core/managers/user_service.py:807 msgid "The requested transport {} is not valid for {}" msgstr "النقل المطلوب {} غير صالح لـ {}" -#: core/managers/user_service.py:1078 +#: core/managers/user_service.py:1084 msgid "The service is not accessible from this device" msgstr "لا يمكن الوصول إلى الخدمة من هذا الجهاز" +#: core/mfas/mfa.py:60 core/mfas/mfa.py:72 +msgid "Base MFA" +msgstr "قاعدة MFA" + +#: core/mfas/mfa.py:184 +msgid "Invalid MFA code" +msgstr "رمز MFA غير صالح" + #: core/module.py:215 msgid "No connection checking method is implemented." msgstr "لم ينفذ أي اتصال بالتحقق من الأسلوب." @@ -2000,14 +2107,6 @@ msgstr "طبع في {now:٪ Y،٪ b٪ d} في {now:٪ H:٪ M}" msgid "Base Service" msgstr "خدمة قاعدة" -#: core/services/service.py:143 core/services/service.py:154 -#: models/permissions.py:92 models/permissions.py:96 -#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 -#: services/Proxmox/service.py:208 services/Sample/service.py:100 -#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 -msgid "None" -msgstr "لا شيء" - #: core/transports/transport.py:52 msgid "Direct" msgstr "مباشر" @@ -2132,23 +2231,23 @@ msgstr "المستخدمون مع الخدمات" msgid "Cached" msgstr "مخبأ" -#: core/util/tools.py:152 +#: core/util/tools.py:155 msgid "{} days {:d}:{:02d}:{:02d}" msgstr "{} أيام {: d}: {: 02d}: {: 02d}" -#: core/util/tools.py:171 +#: core/util/tools.py:174 msgid "The basename is not a valid for a hostname" msgstr "اسم القاعدة ليس صالحًا لاسم المضيف" -#: core/util/tools.py:176 +#: core/util/tools.py:179 msgid "The length of basename plus length must be greater than 0" msgstr "يجب أن يكون طول اسم القاعدة زائد الطول أكبر من 0" -#: core/util/tools.py:181 +#: core/util/tools.py:184 msgid "The length of basename plus length must not be greater than 15" msgstr "لا يجب أن يكون طول اسم بالإضافة إلى طول قاعدة أكبر من 15" -#: core/util/tools.py:186 +#: core/util/tools.py:189 msgid "The machine name can't be only numbers" msgstr "لا يمكن أن يكون اسم الجهاز أرقام فقط" @@ -2179,7 +2278,11 @@ msgstr "{} يتجاوز الحد الأقصى لطول اسم المضيف." msgid "{} is not a valid hostname" msgstr "{} ليس اسم مضيف صالحًا" -#: core/util/validators.py:152 +#: core/util/validators.py:131 +msgid "{} is not a valid host:port pair" +msgstr "{} ليس مضيفًا صالحًا: زوج منفذ" + +#: core/util/validators.py:168 msgid "" "Invalid mac range. Mac range must be in format XX:XX:XX:XX:XX:XX-XX:XX:XX:XX:" "XX:XX" @@ -2187,66 +2290,350 @@ msgstr "" "مجموعة ماك غير صالحة. يجب أن يكون نطاق Mac في تنسيق XX:XX:XX:XX:XX:XX-XX:XX:" "XX:XX:XX:XX" -#: dispatchers/wyse_enterprise/views.py:118 +#: core/util/validators.py:182 +msgid "Email address is too long" +msgstr "عنوان البريد الإلكتروني طويل جدًا" + +#: core/util/validators.py:187 +msgid "Email address is not valid" +msgstr "عنوان البريد الإلكتروني غير صالح" + +#: dispatchers/wyse_enterprise/views.py:119 msgid "There are no authenticators available for login" msgstr "لا يتوفر أي مصادق لتسجيل الدخول" -#: dispatchers/wyse_enterprise/views.py:138 +#: dispatchers/wyse_enterprise/views.py:139 #, python-brace-format msgid "The authenticator {0} is not usable" msgstr "{0} مصادق غير قابل للاستخدام" -#: dispatchers/wyse_enterprise/views.py:145 +#: dispatchers/wyse_enterprise/views.py:146 msgid "Invalid credentials" msgstr "بيانات اعتماد غير صالحة" -#: dispatchers/wyse_enterprise/views.py:152 +#: dispatchers/wyse_enterprise/views.py:153 #, python-brace-format msgid "The domain {0} does not exists" msgstr "{0} المجال غير موجود" -#: dispatchers/wyse_enterprise/views.py:228 +#: dispatchers/wyse_enterprise/views.py:229 msgid "No services available" msgstr "لا توجد خدمة متاحة" -#: dispatchers/wyse_enterprise/views.py:244 -#: dispatchers/wyse_enterprise/views.py:344 +#: dispatchers/wyse_enterprise/views.py:245 +#: dispatchers/wyse_enterprise/views.py:345 msgid "Invalid session" msgstr "جلسة غير صالحة" -#: dispatchers/wyse_enterprise/views.py:248 -#: dispatchers/wyse_enterprise/views.py:348 +#: dispatchers/wyse_enterprise/views.py:249 +#: dispatchers/wyse_enterprise/views.py:349 msgid "Invalid authorization" msgstr "إذن غير صالح" -#: dispatchers/wyse_enterprise/views.py:259 -#: dispatchers/wyse_enterprise/views.py:354 +#: dispatchers/wyse_enterprise/views.py:260 +#: dispatchers/wyse_enterprise/views.py:355 msgid "Invalid request" msgstr "طلب غير صالح" -#: dispatchers/wyse_enterprise/views.py:262 -#: dispatchers/wyse_enterprise/views.py:357 +#: dispatchers/wyse_enterprise/views.py:263 +#: dispatchers/wyse_enterprise/views.py:358 msgid "Invalid credentials used" msgstr "بيانات الاعتماد غير صحيحة" -#: dispatchers/wyse_enterprise/views.py:277 web/util/errors.py:78 +#: dispatchers/wyse_enterprise/views.py:278 web/util/errors.py:80 msgid "Service not found" msgstr "لم يتم العثور على الخدمة" -#: dispatchers/wyse_enterprise/views.py:281 +#: dispatchers/wyse_enterprise/views.py:282 msgid "Invalid machine uuid." msgstr "uuid الجهاز غير صالح." -#: dispatchers/wyse_enterprise/views.py:295 web/util/errors.py:77 +#: dispatchers/wyse_enterprise/views.py:296 web/util/errors.py:79 msgid "Transport not found" msgstr "نقل غير موجود" -#: dispatchers/wyse_enterprise/views.py:300 -#: dispatchers/wyse_enterprise/views.py:308 -#: dispatchers/wyse_enterprise/views.py:315 +#: dispatchers/wyse_enterprise/views.py:301 +#: dispatchers/wyse_enterprise/views.py:309 +#: dispatchers/wyse_enterprise/views.py:316 msgid "Service not ready at this moment. Please, try again in a while." msgstr "الخدمة ليست على استعداد في هذه اللحظة. من فضلك، حاول مرة أخرى في حين." +#: mfas/Email/mfa.py:22 +msgid "Email Multi Factor" +msgstr "متعدد العوامل البريد الإلكتروني" + +#: mfas/Email/mfa.py:24 +msgid "Email Multi Factor Authenticator" +msgstr "أداة مصادقة متعددة العوامل للبريد الإلكتروني" + +#: mfas/Email/mfa.py:29 +msgid "SMTP Host" +msgstr "مضيف SMTP" + +#: mfas/Email/mfa.py:32 +msgid "" +"SMTP Server hostname or IP address. If you are using a non-standard port, " +"add it after a colon, for example: smtp.gmail.com:587" +msgstr "" +"اسم مضيف خادم SMTP أو عنوان IP. إذا كنت تستخدم منفذًا غير قياسي ، فأضفه بعد " +"نقطتين ، على سبيل المثال: smtp.gmail.com:587" + +#: mfas/Email/mfa.py:37 mfas/Email/mfa.py:50 mfas/Email/mfa.py:59 +#: mfas/Email/mfa.py:68 +msgid "SMTP Server" +msgstr "خادم SMTP" + +#: mfas/Email/mfa.py:41 transports/HTML5RDP/html5rdp.py:268 +#: transports/HTML5RDS_enterprise/html5rds.py:255 +msgid "Security" +msgstr "الأمن" + +#: mfas/Email/mfa.py:42 +msgid "Security protocol to use" +msgstr "بروتوكول أمان للاستخدام" + +#: mfas/Email/mfa.py:44 +msgid "TLS" +msgstr "TLS" + +#: mfas/Email/mfa.py:45 +msgid "SSL" +msgstr "SSL" + +#: mfas/Email/mfa.py:56 +msgid "User with access to SMTP server" +msgstr "مستخدم لديه حق الوصول إلى خادم SMTP" + +#: mfas/Email/mfa.py:65 +msgid "Password of the user with access to SMTP server" +msgstr "كلمة مرور المستخدم مع الوصول إلى خادم SMTP" + +#: mfas/Email/mfa.py:74 +msgid "Subject" +msgstr "موضوعات" + +#: mfas/Email/mfa.py:76 +msgid "Subject of the email" +msgstr "موضوع البريد الإلكتروني" + +#: mfas/Email/mfa.py:78 mfas/Email/mfa.py:87 mfas/Email/mfa.py:95 +msgid "Config" +msgstr "التكوين" + +#: mfas/Email/mfa.py:83 +msgid "From Email" +msgstr "من البريد الإلكترونى" + +#: mfas/Email/mfa.py:85 +msgid "Email address that will be used as sender" +msgstr "عنوان البريد الإلكتروني الذي سيتم استخدامه كمرسل" + +#: mfas/Email/mfa.py:91 +msgid "Enable HTML" +msgstr "تمكين HTML" + +#: mfas/Email/mfa.py:93 +msgid "Enable HTML in emails" +msgstr "تمكين HTML في رسائل البريد الإلكتروني" + +#: mfas/Email/mfa.py:110 +msgid "Invalid SMTP hostname" +msgstr "اسم مضيف SMTP غير صالح" + +#: mfas/SMS/mfa.py:19 +msgid "SMS Thought HTTP" +msgstr "يعتقد SMS HTTP" + +#: mfas/SMS/mfa.py:21 +msgid "Simple SMS sending MFA using HTTP" +msgstr "إرسال رسائل قصيرة بسيطة MFA باستخدام HTTP" + +#: mfas/SMS/mfa.py:26 +msgid "URL pattern for SMS sending" +msgstr "نمط URL لإرسال الرسائل القصيرة" + +#: mfas/SMS/mfa.py:29 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"URL pattern for SMS sending. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"نمط URL لإرسال الرسائل القصيرة. يمكن أن يحتوي على المتغيرات التالية: * {code}" +" - رمز الإرسال * {phone / + phone} - رقم الهاتف * {username} - اسم المستخدم *" +" {justUsername} - اسم المستخدم بدون @ ...." + +#: mfas/SMS/mfa.py:37 mfas/SMS/mfa.py:43 mfas/SMS/mfa.py:56 mfas/SMS/mfa.py:75 +#: mfas/SMS/mfa.py:92 mfas/SMS/mfa.py:101 +msgid "HTTP Server" +msgstr "خادم HTTP" + +#: mfas/SMS/mfa.py:41 +msgid "Ignore certificate errors" +msgstr "تجاهل أخطاء الشهادة" + +#: mfas/SMS/mfa.py:46 +msgid "" +"If checked, the server certificate will be ignored. This is useful if the " +"server uses a self-signed certificate." +msgstr "" +"إذا تم تحديده ، فسيتم تجاهل شهادة الخادم. يكون هذا مفيدًا إذا كان الخادم " +"يستخدم شهادة موقعة ذاتيًا." + +#: mfas/SMS/mfa.py:52 +msgid "SMS sending method" +msgstr "طريقة إرسال الرسائل القصيرة" + +#: mfas/SMS/mfa.py:54 mfas/SMS/mfa.py:108 +msgid "Method for sending SMS" +msgstr "طريقة إرسال الرسائل القصيرة" + +#: mfas/SMS/mfa.py:63 +msgid "Headers for SMS requests" +msgstr "رؤوس طلبات الرسائل القصيرة" + +#: mfas/SMS/mfa.py:66 +msgid "" +"Headers for SMS requests. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @....\n" +"Headers are in the form of \"Header: Value\". (without the quotes)" +msgstr "" +"رؤوس طلبات الرسائل القصيرة. يمكن أن يحتوي على المتغيرات التالية: * {code} - " +"رمز الإرسال * {phone / + phone} - رقم الهاتف * {username} - اسم المستخدم * " +"{justUsername} - اسم المستخدم بدون @ .... العناوين موجودة شكل \"Header: Value" +"\". (بدون اقتباس)" + +#: mfas/SMS/mfa.py:81 +msgid "Parameters for SMS POST/PUT sending" +msgstr "معلمات لإرسال POST / PUT SMS" + +#: mfas/SMS/mfa.py:84 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"Parameters for SMS sending via POST/PUT. It can contain the following " +"variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"معلمات إرسال الرسائل القصيرة عبر POST / PUT. يمكن أن يحتوي على المتغيرات " +"التالية: * {code} - رمز الإرسال * {phone / + phone} - رقم الهاتف * {username}" +" - اسم المستخدم * {justUsername} - اسم المستخدم بدون @ ...." + +#: mfas/SMS/mfa.py:96 +msgid "SMS encoding" +msgstr "ترميز الرسائل القصيرة" + +#: mfas/SMS/mfa.py:99 +msgid "Encoding for SMS" +msgstr "ترميز الرسائل القصيرة" + +#: mfas/SMS/mfa.py:106 +msgid "SMS authentication method" +msgstr "طريقة مصادقة الرسائل القصيرة" + +#: mfas/SMS/mfa.py:110 mfas/SMS/mfa.py:124 mfas/SMS/mfa.py:133 +msgid "HTTP Authentication" +msgstr "مصادقة HTTP" + +#: mfas/SMS/mfa.py:113 +msgid "HTTP Basic Auth" +msgstr "مصادقة HTTP الأساسية" + +#: mfas/SMS/mfa.py:114 +msgid "HTTP Digest Auth" +msgstr "مصادقة ملخص HTTP" + +#: mfas/SMS/mfa.py:120 +msgid "SMS authentication user or token" +msgstr "مستخدم مصادقة SMS أو رمز مميز" + +#: mfas/SMS/mfa.py:122 +msgid "User or token for SMS authentication" +msgstr "مستخدم أو رمز مميز للمصادقة عبر الرسائل القصيرة" + +#: mfas/SMS/mfa.py:129 +msgid "SMS authentication password" +msgstr "كلمة مرور مصادقة SMS" + +#: mfas/SMS/mfa.py:131 +msgid "Password for SMS authentication" +msgstr "كلمة مرور لمصادقة الرسائل القصيرة" + +#: mfas/SMS/mfa.py:138 +msgid "SMS response OK regex" +msgstr "استجابة الرسائل القصيرة موافق regex" + +#: mfas/SMS/mfa.py:141 +msgid "" +"Regex for SMS response OK. If emty, the response is considered OK if status " +"code is 200." +msgstr "" +"Regex لاستجابة الرسائل القصيرة موافق. إذا كانت emty ، تعتبر الاستجابة جيدة " +"إذا كان رمز الحالة 200." + +#: mfas/SMS/mfa.py:144 mfas/SMS/mfa.py:153 +msgid "HTTP Response" +msgstr "استجابة HTTP" + +#: mfas/SMS/mfa.py:148 +msgid "SMS response error action" +msgstr "إجراء خطأ استجابة SMS" + +#: mfas/SMS/mfa.py:151 +msgid "Action for SMS response error" +msgstr "الإجراء لخطأ استجابة SMS" + +#: mfas/SMS/mfa.py:155 +msgid "Allow user log in without MFA" +msgstr "السماح للمستخدم بتسجيل الدخول بدون MFA" + +#: mfas/SMS/mfa.py:156 +msgid "Deny user log in" +msgstr "رفض تسجيل دخول المستخدم" + +#: mfas/SMS/mfa.py:199 +msgid "SMS sending failed" +msgstr "فشل إرسال الرسائل القصيرة" + +#: mfas/SMS/mfa.py:263 web/views/modern.py:275 +msgid "MFA Code" +msgstr "كود وزارة الخارجية" + +#: mfas/Sample/mfa.py:16 +msgid "Sample Multi Factor" +msgstr "نموذج متعدد العوامل" + +#: mfas/Sample/mfa.py:18 +msgid "Sample Multi Factor Authenticator" +msgstr "نموذج مصدق متعدد العوامل" + +#: mfas/Sample/mfa.py:22 +msgid "Sample useless field" +msgstr "عينة مجال عديم الفائدة" + +#: mfas/Sample/mfa.py:25 +msgid "This is a useless field, for sample and testing pourposes" +msgstr "هذا مجال عديم الفائدة ، لأخذ العينات والاختبار" + #: models/calendar_action.py:63 msgid "Publish" msgstr "نشر" @@ -2795,7 +3182,7 @@ msgid "Service pool for report" msgstr "تجمع الخدمة للتقرير" #: reports/auto/fields.py:104 reports/lists/users.py:61 -#: web/forms/LoginForm.py:50 +#: web/forms/LoginForm.py:51 msgid "Authenticator" msgstr "المصادق" @@ -2847,24 +3234,24 @@ msgstr "معرف المستخدم" msgid "Real Name" msgstr "الاسم الحقيقي" -#: reports/stats/auth_stats.py:58 +#: reports/stats/auth_stats.py:59 msgid "Statistics by authenticator" msgstr "إحصائيات المصدق" -#: reports/stats/auth_stats.py:60 +#: reports/stats/auth_stats.py:61 msgid "" "Generates a report with the statistics of an authenticator for a desired " "period" msgstr "يُنشئ تقريرًا بإحصائيات المصدق للفترة المطلوبة" -#: reports/stats/auth_stats.py:136 reports/stats/usage_by_pool.py:146 +#: reports/stats/auth_stats.py:123 reports/stats/usage_by_pool.py:146 #: templates/uds/reports/stats/authenticator_stats.html:4 #: templates/uds/reports/stats/usage-by-pool.html:4 #: templates/uds/reports/stats/usage-by-pool.html:6 msgid "Users usage list" msgstr "قائمة استخدام المستخدمين" -#: reports/stats/auth_stats.py:137 reports/stats/usage_by_pool.py:147 +#: reports/stats/auth_stats.py:124 reports/stats/usage_by_pool.py:147 msgid "UDS Report of users usage" msgstr "تقرير UDS لاستخدام المستخدمين" @@ -2937,30 +3324,26 @@ msgstr "عدد فترات" msgid "Number of sampling points used in charts" msgstr "عدد نقاط العينات المستخدمة في الخرائط" -#: reports/stats/pools_performance.py:128 -msgid "Select at least a service pool for the report" -msgstr "حدد ما لا يقل عن تجمع الخدمة للتقرير" - -#: reports/stats/pools_performance.py:211 +#: reports/stats/pools_performance.py:194 msgid "Distinct Users" msgstr "المستخدمين المميزين" -#: reports/stats/pools_performance.py:230 -#: reports/stats/pools_performance.py:242 -#: reports/stats/pools_performance.py:287 +#: reports/stats/pools_performance.py:213 +#: reports/stats/pools_performance.py:225 +#: reports/stats/pools_performance.py:270 #: templates/uds/reports/stats/pools-performance.html:36 msgid "Accesses" msgstr "مداخل" -#: reports/stats/pools_performance.py:258 +#: reports/stats/pools_performance.py:241 msgid "UDS Pools Performance Report" msgstr "تقرير أداء التجمعات UDS" -#: reports/stats/pools_performance.py:259 +#: reports/stats/pools_performance.py:242 msgid "Pools Performance" msgstr "بركه الأداء" -#: reports/stats/pools_performance.py:285 reports/stats/user_access.py:297 +#: reports/stats/pools_performance.py:268 reports/stats/user_access.py:282 #: templates/uds/reports/stats/pools-performance.html:34 #: templates/uds/reports/stats/user-access.html:34 msgid "Date range" @@ -2974,21 +3357,21 @@ msgstr "استخدام تجمعات في يوم" msgid "Pools usage counters for an specific day" msgstr "استخدام عدادات تجمعات ليوم معين" -#: reports/stats/pools_usage_day.py:128 +#: reports/stats/pools_usage_day.py:126 msgid "Services by hour" msgstr "الخدمات بمقدار ساعة" -#: reports/stats/pools_usage_day.py:133 reports/stats/pools_usage_day.py:171 -#: reports/stats/user_access.py:228 reports/stats/user_access.py:240 +#: reports/stats/pools_usage_day.py:131 reports/stats/pools_usage_day.py:169 +#: reports/stats/user_access.py:213 reports/stats/user_access.py:225 #: templates/uds/reports/stats/pools-usage-day.html:28 msgid "Hour" msgstr "ساعة" -#: reports/stats/pools_usage_day.py:152 +#: reports/stats/pools_usage_day.py:150 msgid "Services usage report for a day" msgstr "تقرير استخدام الخدمات لمدة يوم" -#: reports/stats/pools_usage_day.py:153 +#: reports/stats/pools_usage_day.py:151 msgid "Service usage report" msgstr "تقرير استخدام الخدمة" @@ -3056,63 +3439,63 @@ msgstr "جميع المسابح" msgid "Seconds" msgstr "ثواني" -#: reports/stats/user_access.py:59 reports/stats/user_access.py:281 +#: reports/stats/user_access.py:59 reports/stats/user_access.py:266 msgid "Users access report by date" msgstr "وصول المستخدمين إلى تقرير صادر بتاريخ" -#: reports/stats/user_access.py:60 reports/stats/user_access.py:282 +#: reports/stats/user_access.py:60 reports/stats/user_access.py:267 msgid "Report of user access to platform by date" msgstr "تقرير وصول المستخدم إلى منصة بواسطة التاريخ" -#: reports/stats/user_access.py:186 +#: reports/stats/user_access.py:171 msgid "Users Access (global)" msgstr "وصول المستخدمين (عالمي)" -#: reports/stats/user_access.py:206 +#: reports/stats/user_access.py:191 msgid "Users Access (by week)" msgstr "وصول المستخدمين (حسب الأسبوع)" -#: reports/stats/user_access.py:209 reports/stats/user_access.py:245 +#: reports/stats/user_access.py:194 reports/stats/user_access.py:230 msgid "Monday" msgstr "الإثنين" -#: reports/stats/user_access.py:210 reports/stats/user_access.py:246 +#: reports/stats/user_access.py:195 reports/stats/user_access.py:231 msgid "Tuesday" msgstr "الثلاثاء" -#: reports/stats/user_access.py:211 reports/stats/user_access.py:247 +#: reports/stats/user_access.py:196 reports/stats/user_access.py:232 msgid "Wednesday" msgstr "الأربعاء" -#: reports/stats/user_access.py:212 reports/stats/user_access.py:248 +#: reports/stats/user_access.py:197 reports/stats/user_access.py:233 msgid "Thursday" msgstr "الخميس" -#: reports/stats/user_access.py:213 reports/stats/user_access.py:249 +#: reports/stats/user_access.py:198 reports/stats/user_access.py:234 msgid "Friday" msgstr "يوم الجمعة" -#: reports/stats/user_access.py:214 reports/stats/user_access.py:250 +#: reports/stats/user_access.py:199 reports/stats/user_access.py:235 msgid "Saturday" msgstr "يوم السبت" -#: reports/stats/user_access.py:215 reports/stats/user_access.py:251 +#: reports/stats/user_access.py:200 reports/stats/user_access.py:236 msgid "Sunday" msgstr "الأحد" -#: reports/stats/user_access.py:217 reports/stats/user_access.py:243 +#: reports/stats/user_access.py:202 reports/stats/user_access.py:228 msgid "Day of week" msgstr "يوم من الأسبوع" -#: reports/stats/user_access.py:226 reports/stats/user_access.py:238 +#: reports/stats/user_access.py:211 reports/stats/user_access.py:223 msgid "Users Access (by hour)" msgstr "دخول المستخدمين (بالساعة)" -#: reports/stats/user_access.py:267 +#: reports/stats/user_access.py:252 msgid "Users access to UDS" msgstr "وصول المستخدمين إلى USD" -#: reports/stats/user_access.py:268 +#: reports/stats/user_access.py:253 msgid "UDS Report for users access" msgstr "تقرير UDS للوصول إلى المستخدمين" @@ -4333,12 +4716,12 @@ msgstr "ثابت IP آلات مزود" msgid "Provides connection to machines by IP" msgstr "يوفر اتصال إلى الأجهزة عن طريق IP" -#: services/PhysicalMachines/service_multi.py:64 +#: services/PhysicalMachines/service_multi.py:62 #: services/Vmware_enterprise/service_fixed.py:55 msgid "Service Token" msgstr "رمز الخدمة" -#: services/PhysicalMachines/service_multi.py:67 +#: services/PhysicalMachines/service_multi.py:65 #: services/Vmware_enterprise/service_fixed.py:57 msgid "" "Service token that will be used by actors to communicate with service. Leave " @@ -4347,39 +4730,39 @@ msgstr "" "رمز الخدمة الذي سيتم استخدامه بواسطة الجهات الفاعلة للتواصل مع الخدمة. اتركه " "فارغًا للتخصيص المستمر." -#: services/PhysicalMachines/service_multi.py:75 +#: services/PhysicalMachines/service_multi.py:73 #: services/RDS_enterprise/provider.py:51 msgid "List of servers" msgstr "قائمة ملقمات" -#: services/PhysicalMachines/service_multi.py:76 +#: services/PhysicalMachines/service_multi.py:74 msgid "List of servers available for this service" msgstr "قائمة الخوادم المتاحة لهذه الخدمة" -#: services/PhysicalMachines/service_multi.py:81 +#: services/PhysicalMachines/service_multi.py:79 msgid "Check Port" msgstr "تحقق من المنفذ" -#: services/PhysicalMachines/service_multi.py:85 +#: services/PhysicalMachines/service_multi.py:83 msgid "" "If non zero, only hosts responding to connection on that port will be served." msgstr "" "إذا لم تكن صفرية ، فسيتم تقديم المضيفين الذين يستجيبون للاتصال على هذا " "المنفذ فقط." -#: services/PhysicalMachines/service_multi.py:92 +#: services/PhysicalMachines/service_multi.py:90 msgid "Skip time" msgstr "تخطي الوقت" -#: services/PhysicalMachines/service_multi.py:95 +#: services/PhysicalMachines/service_multi.py:93 msgid "If a host fails to check, skip it for this time (in minutes)." msgstr "إذا فشل مضيف في التحقق ، فتخطه لهذا الوقت (بالدقائق)." -#: services/PhysicalMachines/service_multi.py:103 +#: services/PhysicalMachines/service_multi.py:101 msgid "Max session per machine" msgstr "أقصى جلسة لكل آلة" -#: services/PhysicalMachines/service_multi.py:107 +#: services/PhysicalMachines/service_multi.py:105 msgid "" "Maximum session duration before UDS thinks this machine got locked and " "releases it (hours). 0 means \"never\"." @@ -4387,24 +4770,24 @@ msgstr "" "المدة القصوى للجلسة قبل أن تعتقد UDS أن هذا الجهاز قد تم قفله وتحريره " "(ساعات). 0 يعني \"أبدًا\"." -#: services/PhysicalMachines/service_multi.py:114 +#: services/PhysicalMachines/service_multi.py:112 msgid "Lock machine by external access" msgstr "قفل الجهاز عن طريق الوصول الخارجي" -#: services/PhysicalMachines/service_multi.py:115 +#: services/PhysicalMachines/service_multi.py:113 msgid "" "If checked, UDS will lock the machine if it is accesed from outside UDS." msgstr "إذا تم تحديده ، فستقوم UDS بقفل الجهاز إذا تم الوصول إليه من خارج UDS." -#: services/PhysicalMachines/service_multi.py:122 +#: services/PhysicalMachines/service_multi.py:120 msgid "Static Multiple IP" msgstr "IP ثابت متعدد." -#: services/PhysicalMachines/service_multi.py:124 +#: services/PhysicalMachines/service_multi.py:122 msgid "This service provides access to POWERED-ON Machines by IP" msgstr "توفر هذه الخدمة إمكانية الوصول إلى آلات مشتغلة ب IP" -#: services/PhysicalMachines/service_multi.py:158 +#: services/PhysicalMachines/service_multi.py:156 msgid "Invalid value detected on servers list: \"{}\"" msgstr "تم اكتشاف قيمة غير صالحة في قائمة الخوادم: \"{}\"" @@ -5274,47 +5657,47 @@ msgstr "ظل" msgid "Shadow memory multiplier (use with care)" msgstr "مضاعف ذاكرة الظل (استخدم بعناية)" -#: temp_for_locales.py:96 +#: temp_for_locales.py:99 msgid "Spanish" msgstr "الأسبانية" -#: temp_for_locales.py:97 +#: temp_for_locales.py:100 msgid "English" msgstr "الإنجليزية" -#: temp_for_locales.py:98 +#: temp_for_locales.py:101 msgid "French" msgstr "الفرنسية" -#: temp_for_locales.py:99 +#: temp_for_locales.py:102 msgid "German" msgstr "ألمانية" -#: temp_for_locales.py:100 +#: temp_for_locales.py:103 msgid "Portuguese" msgstr "البرتغالية" -#: temp_for_locales.py:101 +#: temp_for_locales.py:104 msgid "Italian" msgstr "الإيطالي" -#: temp_for_locales.py:102 +#: temp_for_locales.py:105 msgid "Basque" msgstr "الباسكي" -#: temp_for_locales.py:103 +#: temp_for_locales.py:106 msgid "Arabic" msgstr "عربى" -#: temp_for_locales.py:104 +#: temp_for_locales.py:107 msgid "Russian" msgstr "الروسية" -#: temp_for_locales.py:105 +#: temp_for_locales.py:108 msgid "Catalan" msgstr "الكاتالونية" -#: temp_for_locales.py:106 +#: temp_for_locales.py:109 msgid "Chinese" msgstr "صينى" @@ -5519,7 +5902,7 @@ msgstr "اظهر خلفية." #: transports/HTML5RDP/html5rdp.py:134 #: transports/HTML5RDS_enterprise/html5rds.py:123 -#: transports/RDP/rdp_base.py:222 +#: transports/RDP/rdp_base.py:241 msgid "" "If checked, the wallpaper and themes will be shown on machine (better user " "experience, more bandwidth)" @@ -5529,19 +5912,19 @@ msgstr "" #: transports/HTML5RDP/html5rdp.py:139 #: transports/HTML5RDS_enterprise/html5rds.py:128 -#: transports/RDP/rdp_base.py:235 +#: transports/RDP/rdp_base.py:254 msgid "Allow Desk.Comp." msgstr "السماح Desk.Comp." #: transports/HTML5RDP/html5rdp.py:141 #: transports/HTML5RDS_enterprise/html5rds.py:130 -#: transports/RDP/rdp_base.py:237 +#: transports/RDP/rdp_base.py:256 msgid "If checked, desktop composition will be allowed" msgstr "إذا تم، سيكون يسمح تكوين سطح المكتب." #: transports/HTML5RDP/html5rdp.py:145 #: transports/HTML5RDS_enterprise/html5rds.py:134 -#: transports/RDP/rdp_base.py:241 transports/RDS_enterprise/rds_base.py:150 +#: transports/RDP/rdp_base.py:260 transports/RDS_enterprise/rds_base.py:150 msgid "Font Smoothing" msgstr "تجانس الخطوط" @@ -5800,11 +6183,6 @@ msgstr "فرض كل اتصال ليتم فتحه في نافذة جديدة." msgid "Override UDS window and replace it with the connection." msgstr "تجاوز نافذة UDS واستبدلها بالاتصال." -#: transports/HTML5RDP/html5rdp.py:268 -#: transports/HTML5RDS_enterprise/html5rds.py:255 -msgid "Security" -msgstr "الأمن" - #: transports/HTML5RDP/html5rdp.py:269 #: transports/HTML5RDS_enterprise/html5rds.py:256 msgid "Connection security mode for Guacamole RDP connection" @@ -5842,11 +6220,11 @@ msgstr "" msgid "TLS (Transport Security Layer encryption)" msgstr "TLS (تشفير طبقة النقل الأمن)" -#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:173 +#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:192 msgid "RDP Port" msgstr "منفذ RDP" -#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:174 +#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:193 msgid "Use this port as RDP port. Defaults to 3389." msgstr "استخدم هذا المنفذ كمنفذ RDP. الافتراضي هو 3389." @@ -5864,13 +6242,13 @@ msgstr "" "مسار مخصص لنفق Glyptodon Enterprise. (صالح فقط لـ Glyptodon Enterprise " "Tunnel)" -#: transports/HTML5RDP/html5rdp.py:327 +#: transports/HTML5RDP/html5rdp.py:326 #: transports/HTML5RDS_enterprise/html5rds.py:296 #: transports/HTML5VNC/html5vnc.py:187 msgid "The server must be http or https" msgstr "يجب أن يكون خادم HTTP أو HTTPS" -#: transports/HTML5RDP/html5rdp.py:332 +#: transports/HTML5RDP/html5rdp.py:331 #: transports/HTML5RDS_enterprise/html5rds.py:301 msgid "" "Empty credentials (on Credentials tab) is only allowed with Security level " @@ -5911,7 +6289,7 @@ msgstr "منفذ خادم VNC" msgid "Port of the VNC server." msgstr "منفذ خادم VNC." -#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:205 +#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:224 #: transports/RDS_enterprise/rds_base.py:136 msgid "Color depth" msgstr "عمق اللون" @@ -5965,12 +6343,12 @@ msgid "If checked, the connection will be opened in full screen mode" msgstr "إذا تم تحديده ، فسيتم فتح الاتصال في وضع ملء الشاشة" #: transports/NICEDCV_enterprise/nicedcv_base.py:66 -#: transports/RDP/rdp_base.py:227 +#: transports/RDP/rdp_base.py:246 msgid "Multiple monitors" msgstr "أجهزة عرض متعددة" #: transports/NICEDCV_enterprise/nicedcv_base.py:69 -#: transports/RDP/rdp_base.py:230 +#: transports/RDP/rdp_base.py:249 msgid "" "If checked, all client monitors will be used for displaying (only works on " "windows clients)" @@ -6023,7 +6401,7 @@ msgstr "في حالة التمكين ، سيتم التحقق من شهادة خ #: transports/NICEDCV_enterprise/nicedcvtunnel.py:91 #: transports/NoMachine_enterprise/nomachine_tunneltransport.py:114 -#: transports/RDP/rdptunnel.py:135 transports/RDS_enterprise/rdstunnel.py:126 +#: transports/RDP/rdptunnel.py:136 transports/RDS_enterprise/rdstunnel.py:126 #: transports/SPICE/spice_tunnel.py:107 transports/X2GO/x2go_tunnel.py:116 msgid "Must use HOST:PORT in Tunnel Server Field" msgstr "يجب استخدام HOST: PORT في خادم الميدان نفق" @@ -6157,85 +6535,93 @@ msgstr "تمكين كاميرا الويب" msgid "If checked, webcam will be redirected (ONLY Windows)." msgstr "إذا تم تحديده ، فسيتم إعادة توجيه كاميرا الويب (Windows فقط)." -#: transports/RDP/rdp_base.py:164 transports/RDS_enterprise/rds_base.py:128 +#: transports/RDP/rdp_base.py:164 +msgid "USB redirection" +msgstr "إعادة توجيه USB" + +#: transports/RDP/rdp_base.py:166 +msgid "USB redirection policy" +msgstr "سياسة إعادة توجيه USB" + +#: transports/RDP/rdp_base.py:183 transports/RDS_enterprise/rds_base.py:128 msgid "Credssp Support" msgstr "دعم Credssp" -#: transports/RDP/rdp_base.py:166 transports/RDS_enterprise/rds_base.py:130 +#: transports/RDP/rdp_base.py:185 transports/RDS_enterprise/rds_base.py:130 msgid "If checked, will enable Credentials Provider Support)" msgstr "إذا راجعت، سيمكن دعم موفر بيانات الاعتماد)" -#: transports/RDP/rdp_base.py:181 +#: transports/RDP/rdp_base.py:200 msgid "Screen Size" msgstr "حجم الشاشة" -#: transports/RDP/rdp_base.py:183 +#: transports/RDP/rdp_base.py:202 msgid "Screen size for this transport" msgstr "حجم الشاشة لهذا النقل" -#: transports/RDP/rdp_base.py:207 transports/RDS_enterprise/rds_base.py:138 +#: transports/RDP/rdp_base.py:226 transports/RDS_enterprise/rds_base.py:138 msgid "Color depth for this connection" msgstr "عمق الألوان لهذا الاتصال" -#: transports/RDP/rdp_base.py:219 +#: transports/RDP/rdp_base.py:238 msgid "Wallpaper/theme" msgstr "خلفية/الموضوع" -#: transports/RDP/rdp_base.py:244 +#: transports/RDP/rdp_base.py:263 msgid "If checked, fonts smoothing will be allowed" msgstr "إذا راجعت، سيسمح لتجانس الخطوط" -#: transports/RDP/rdp_base.py:248 +#: transports/RDP/rdp_base.py:267 msgid "Connection Bar" msgstr "شريط الاتصال" -#: transports/RDP/rdp_base.py:250 +#: transports/RDP/rdp_base.py:269 msgid "If checked, connection bar will be shown (only on Windows clients)" msgstr "إذا راجعت، سيظهر شريط الاتصال (فقط على عملاء Windows)" -#: transports/RDP/rdp_base.py:256 transports/RDS_enterprise/rds_base.py:181 +#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:181 msgid "Multimedia sync" msgstr "تزامن الوسائط المتعددة" -#: transports/RDP/rdp_base.py:259 transports/RDS_enterprise/rds_base.py:184 +#: transports/RDP/rdp_base.py:278 transports/RDS_enterprise/rds_base.py:184 msgid "If checked. Linux client will use multimedia parameter for xfreerdp" msgstr "" "إذا تحققت. سوف العميل لينكس استخدام المعلمة الوسائط المتعددة لxfreerdp." -#: transports/RDP/rdp_base.py:264 transports/RDS_enterprise/rds_base.py:189 +#: transports/RDP/rdp_base.py:283 transports/RDS_enterprise/rds_base.py:189 msgid "Use Alsa" msgstr "استخدام ALSA" -#: transports/RDP/rdp_base.py:267 transports/RDS_enterprise/rds_base.py:192 +#: transports/RDP/rdp_base.py:286 transports/RDS_enterprise/rds_base.py:192 msgid "" "If checked, Linux client will try to use ALSA, otherwise Pulse will be used" msgstr "" "إذا تم، سيكون العميل لينكس في محاولة لاستخدام ALSA، وإلا سيتم استخدام نبض" -#: transports/RDP/rdp_base.py:272 transports/RDS_enterprise/rds_base.py:197 +#: transports/RDP/rdp_base.py:291 transports/RDS_enterprise/rds_base.py:197 msgid "Printer string" msgstr "سلسلة الطابعة" -#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:200 +#: transports/RDP/rdp_base.py:294 transports/RDS_enterprise/rds_base.py:200 msgid "If printer is checked, the printer string used with xfreerdp client" msgstr "إذا تم فحص طابعة، سلسلة الطابعة المستخدمة مع العميل XFreeRDP" -#: transports/RDP/rdp_base.py:281 transports/RDS_enterprise/rds_base.py:206 +#: transports/RDP/rdp_base.py:300 transports/RDS_enterprise/rds_base.py:206 msgid "Smartcard string" msgstr "سلسلة البطاقة الذكية" -#: transports/RDP/rdp_base.py:284 transports/RDS_enterprise/rds_base.py:209 +#: transports/RDP/rdp_base.py:303 transports/RDS_enterprise/rds_base.py:209 msgid "If smartcard is checked, the smartcard string used with xfreerdp client" msgstr "" "إذا تم التحقق من البطاقة الذكية، استخدام السلسلة البطاقة الذكية مع العميل " "XFreeRDP" -#: transports/RDP/rdp_base.py:290 transports/RDP/rdp_base.py:310 +#: transports/RDP/rdp_base.py:309 transports/RDP/rdp_base.py:329 #: transports/RDS_enterprise/rds_base.py:215 msgid "Custom parameters" msgstr "معلمات مخصصة" -#: transports/RDP/rdp_base.py:293 transports/RDS_enterprise/rds_base.py:218 +#: transports/RDP/rdp_base.py:312 transports/RDS_enterprise/rds_base.py:218 msgid "" "If not empty, extra parameter to include for Linux Client (for example /usb:" "id,dev:054c:0268, or aything compatible with your xfreerdp client)" @@ -6243,11 +6629,11 @@ msgstr "" "إذا لم تكن المعلمة فارغة، إضافية تشمل لينكس العميل (على سبيل المثال /usb:id," "dev:054c:0268، أو أي شيء متوافق مع العميل الخاص بك XFreeRDP)" -#: transports/RDP/rdp_base.py:300 +#: transports/RDP/rdp_base.py:319 msgid "Allow Microsoft Rdp Client" msgstr "السماح لعميل Microsoft Rdp" -#: transports/RDP/rdp_base.py:303 +#: transports/RDP/rdp_base.py:322 msgid "" "If checked, allows use of Microsoft Remote Desktop Client. PASSWORD WILL BE " "PROMPTED!" @@ -6255,7 +6641,7 @@ msgstr "" "إذا تم تحديده ، فإنه يسمح باستخدام Microsoft Remote Desktop Client. سيتم دفع " "كلمة المرور!" -#: transports/RDP/rdp_base.py:313 +#: transports/RDP/rdp_base.py:332 msgid "" "If not empty, extra parameter to include for Mac OS X Freerdp Client (for " "example /usb:id,dev:054c:0268, or aything compatible with your xfreerdp " @@ -6501,71 +6887,71 @@ msgstr "الكثير من أخطاء التوثيق. المستخدم محظور msgid "Access tried from an unallowed source" msgstr "تم محاولة الوصول من مصدر غير مسموح به" -#: web/util/authentication.py:155 +#: web/util/authentication.py:158 msgid "Invalid data" msgstr "بيانات غير صالحة" -#: web/util/configjs.py:170 +#: web/util/configjs.py:163 msgid "Access limited by calendar" msgstr "وصول محدود بسبب الجدول الزمني." -#: web/util/configjs.py:226 +#: web/util/configjs.py:222 msgid "Windows client" msgstr "عميل ويندوز" -#: web/util/configjs.py:230 +#: web/util/configjs.py:226 msgid "Mac OS X client" msgstr "عميل Mac OS X" -#: web/util/configjs.py:233 +#: web/util/configjs.py:229 msgid "Debian based Linux client" msgstr "ديبين لينكس على أساس العميل" -#: web/util/configjs.py:235 web/util/configjs.py:243 web/util/configjs.py:263 +#: web/util/configjs.py:231 web/util/configjs.py:239 web/util/configjs.py:259 msgid "(requires Python-3.6 or newer)" msgstr "(يتطلب Python-3.6 أو أحدث)" -#: web/util/configjs.py:241 +#: web/util/configjs.py:237 msgid "RPM based Linux client (Fedora, Suse, ...)" msgstr "عميل Linux القائم على RPM (Fedora ، Suse ، ...)" -#: web/util/configjs.py:249 +#: web/util/configjs.py:245 msgid "Binary appimage X86_64 Linux client" msgstr "ثنائي التطبيق X86_64 Linux العميل" -#: web/util/configjs.py:255 +#: web/util/configjs.py:251 msgid "Binary appimage Raspberry Linux client" msgstr "ثنائي appimage Raspberry Linux العميل" -#: web/util/configjs.py:261 +#: web/util/configjs.py:257 msgid "Generic .tar.gz Linux client" msgstr "عام .tar.gz عميل لينكس" -#: web/util/errors.py:76 +#: web/util/errors.py:78 msgid "Unknown error" msgstr "خطأ غير معروف" -#: web/util/errors.py:83 +#: web/util/errors.py:85 msgid "Maximum services limit reached. Please, contact administrator" msgstr "الحد الأقصى الخدمات صلت. من فضلك، اتصل بالمسؤول" -#: web/util/errors.py:84 +#: web/util/errors.py:86 msgid "You need to enable cookies to let this application work" msgstr "تحتاج إلى تمكين ملفات تعريف الارتباط لترك هذا العمل تطبيق" -#: web/util/errors.py:86 +#: web/util/errors.py:88 msgid "Authenticator not found" msgstr "الموثق لم يتم العثور" -#: web/util/errors.py:87 +#: web/util/errors.py:89 msgid "Invalid authenticator" msgstr "المصدق غير صالح" -#: web/util/errors.py:88 +#: web/util/errors.py:90 msgid "Invalid request received" msgstr "تلقى طلب غير صالح." -#: web/util/errors.py:90 +#: web/util/errors.py:92 msgid "" "Your browser is not supported. Please, upgrade it to a modern HTML5 browser " "like Firefox or Chrome" @@ -6573,38 +6959,42 @@ msgstr "" "متصفحك غير مدعوم. من فضلك، الترقية إلى مستعرض HTML5 الحديثة مثل فايرفوكس أو " "كروم." -#: web/util/errors.py:92 +#: web/util/errors.py:94 msgid "The requested service is in maintenance mode" msgstr "الخدمة المطلوبة هي في وضع الصيانة" -#: web/util/errors.py:93 +#: web/util/errors.py:95 msgid "" "The service is not ready.\n" "Please, try again in a few moments." msgstr "الخدمة غير جاهزة. الرجاء، حاول مرة أخرى في لحظات قليلة." -#: web/util/errors.py:94 +#: web/util/errors.py:96 msgid "Preparing service" msgstr "خدمة إعداد" -#: web/util/errors.py:95 +#: web/util/errors.py:97 msgid "Service access denied by calendars" msgstr "وصول خدمة رفض من قبل التقويمات." -#: web/util/errors.py:96 +#: web/util/errors.py:98 msgid "Page not found" msgstr "الصفحة غير موجودة" -#: web/util/errors.py:97 +#: web/util/errors.py:99 msgid "Unexpected error" msgstr "خطأ غير متوقع" -#: web/util/errors.py:98 +#: web/util/errors.py:100 msgid "" "Reloading this page is not supported. Please, reopen service from origin." msgstr "" "إعادة تحميل هذه الصفحة غير مدعومة. من فضلك ، إعادة فتح الخدمة من الأصل." +#: web/util/errors.py:101 +msgid "Invalid Multi-Factor Authentication code" +msgstr "رمز المصادقة متعدد العوامل غير صالح" + #: web/util/services.py:319 msgid "" "This service is about to be replaced by a new version. Please, close the " @@ -6623,6 +7013,14 @@ msgid "" "complete it.)" msgstr "جاري إنشاء الخدمة الخاصة بك ، يرجى الانتظار لبضع ثوان أثناء إكمالها.)" -#: web/views/auth.py:177 +#: web/views/auth.py:189 msgid "Authenticator does not provide information" msgstr "الموثق لا يوفر المعلومات" + +#: web/views/modern.py:269 +msgid "{} days" +msgstr "{} أيام" + +#: web/views/modern.py:271 +msgid "{} hours" +msgstr "{} ساعات" diff --git a/server/src/uds/locale/ar/LC_MESSAGES/djangojs.po b/server/src/uds/locale/ar/LC_MESSAGES/djangojs.po index 932d9afa..f0824945 100644 --- a/server/src/uds/locale/ar/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/ar/LC_MESSAGES/djangojs.po @@ -10,9 +10,9 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-10 13:33+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:16+0000\n" +"Last-Translator: Víctor Alonso , 2020\n" "Language-Team: Arabic (http://www.transifex.com/openuds/openuds/language/" "ar/)\n" "Language: ar\n" @@ -33,14 +33,14 @@ msgstr "الرئيسية" #: static/admin/main.js:1 static/admin/translations-fakejs.js:11 #: static/admin/translations-fakejs.js:29 -#: static/admin/translations-fakejs.js:179 -#: static/admin/translations-fakejs.js:191 -#: static/admin/translations-fakejs.js:193 -#: static/admin/translations-fakejs.js:195 -#: static/admin/translations-fakejs.js:197 -#: static/admin/translations-fakejs.js:254 -#: static/admin/translations-fakejs.js:256 -#: static/admin/translations-fakejs.js:258 static/modern/main-es5.js:1 +#: static/admin/translations-fakejs.js:141 +#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:216 +#: static/admin/translations-fakejs.js:218 +#: static/admin/translations-fakejs.js:220 static/modern/main-es5.js:1 #: static/modern/translations-fakejs.js:14 msgid "Error" msgstr "خطأ" @@ -67,12 +67,12 @@ msgstr "تحميل البيانات..." #: static/admin/translations-fakejs.js:38 #: static/admin/translations-fakejs.js:40 #: static/admin/translations-fakejs.js:43 -#: static/admin/translations-fakejs.js:134 -#: static/admin/translations-fakejs.js:216 -#: static/admin/translations-fakejs.js:221 -#: static/admin/translations-fakejs.js:253 -#: static/admin/translations-fakejs.js:261 -#: static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:96 +#: static/admin/translations-fakejs.js:178 +#: static/admin/translations-fakejs.js:183 +#: static/admin/translations-fakejs.js:215 +#: static/admin/translations-fakejs.js:223 +#: static/admin/translations-fakejs.js:228 msgid "dismiss" msgstr "رفض" @@ -89,7 +89,7 @@ msgid "Test passed successfully" msgstr "تم إجتياز الإختبار بنجاح " #: static/admin/main.js:1 static/admin/translations-fakejs.js:37 -#: static/admin/translations-fakejs.js:260 +#: static/admin/translations-fakejs.js:222 msgid "Successfully saved" msgstr "حفظ بنجاح" @@ -145,58 +145,58 @@ msgstr "مجموعة البركة" msgid "Go to" msgstr "اذهب إلى" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:275 msgid "yes" msgstr "نعم" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:276 msgid "no" msgstr "لا" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:269 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 msgid "Error saving: " msgstr "خطأ في الحفظ:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:270 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 msgid "Error saving element" msgstr "خطأ في حفظ العنصر" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:271 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:274 msgid "Error handling your request" msgstr "خطأ في معالجة طلبك" #: static/admin/main.js:1 static/admin/translations-fakejs.js:56 -#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:115 msgid "Sunday" msgstr "الأحد" #: static/admin/main.js:1 static/admin/translations-fakejs.js:57 -#: static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:116 msgid "Monday" msgstr "الاثنين" #: static/admin/main.js:1 static/admin/translations-fakejs.js:58 -#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:117 msgid "Tuesday" msgstr "الثلاثاء" #: static/admin/main.js:1 static/admin/translations-fakejs.js:59 -#: static/admin/translations-fakejs.js:156 +#: static/admin/translations-fakejs.js:118 msgid "Wednesday" msgstr "الأربعاء" #: static/admin/main.js:1 static/admin/translations-fakejs.js:60 -#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:119 msgid "Thursday" msgstr "الخميس" #: static/admin/main.js:1 static/admin/translations-fakejs.js:61 -#: static/admin/translations-fakejs.js:158 +#: static/admin/translations-fakejs.js:120 msgid "Friday" msgstr "الجمعة" #: static/admin/main.js:1 static/admin/translations-fakejs.js:62 -#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:121 msgid "Saturday" msgstr "السبت" @@ -268,20 +268,20 @@ msgstr "#SERVICES_NUMBER# خدمات المستخدم" msgid "#RESTRAINED_NUMBER# restrained services!" msgstr "#RESTRAINED_NUMBER# خدمات مقيدة!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 -#: static/admin/translations-fakejs.js:249 -#: static/admin/translations-fakejs.js:402 -#: static/admin/translations-fakejs.js:454 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:211 +#: static/admin/translations-fakejs.js:265 +#: static/admin/translations-fakejs.js:366 +#: static/admin/translations-fakejs.js:418 msgid "Assigned services" msgstr "الخدمات المعينة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 msgid "Services in use" msgstr "الخدمات قيد الاستخدام" #: static/admin/main.js:1 static/admin/translations-fakejs.js:21 -#: static/admin/translations-fakejs.js:292 -#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:303 #: static/modern/translations-fakejs.js:30 msgid "Filter" msgstr "مصفاة " @@ -299,25 +299,25 @@ msgid "Full Access" msgstr "الوصول الكامل" #: static/admin/main.js:1 static/admin/translations-fakejs.js:15 -#: static/admin/translations-fakejs.js:362 -#: static/admin/translations-fakejs.js:409 -#: static/admin/translations-fakejs.js:414 +#: static/admin/translations-fakejs.js:373 +#: static/admin/translations-fakejs.js:378 +#: static/admin/translations-fakejs.js:489 msgid "User" msgstr "المستخدم" #: static/admin/main.js:1 static/admin/translations-fakejs.js:16 -#: static/admin/translations-fakejs.js:83 -#: static/admin/translations-fakejs.js:93 -#: static/admin/translations-fakejs.js:427 -#: static/admin/translations-fakejs.js:448 +#: static/admin/translations-fakejs.js:243 +#: static/admin/translations-fakejs.js:253 +#: static/admin/translations-fakejs.js:391 +#: static/admin/translations-fakejs.js:412 msgid "Group" msgstr "المجموعة" #: static/admin/main.js:1 static/admin/translations-fakejs.js:17 -#: static/admin/translations-fakejs.js:408 -#: static/admin/translations-fakejs.js:413 -#: static/admin/translations-fakejs.js:426 -#: static/admin/translations-fakejs.js:447 +#: static/admin/translations-fakejs.js:372 +#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:390 +#: static/admin/translations-fakejs.js:411 #: static/modern/translations-fakejs.js:72 msgid "Authenticator" msgstr "الموثق" @@ -334,89 +334,89 @@ msgstr "إزالة" msgid "Confirm revokation of permission" msgstr "تأكيد سحب الإذن" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:238 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 msgid "Maintenance" msgstr "صيانة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 msgid "Exit maintenance mode" msgstr "الخروج من وضع الصيانة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 msgid "Enter maintenance mode" msgstr "ادخل وضع الصيانة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 msgid "New provider" msgstr "مزود جديد" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 msgid "Edit provider" msgstr "تحرير الموفر" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:243 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 msgid "Delete provider" msgstr "حذف الموفر" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 msgid "Exit maintenance mode?" msgstr "الخروج من وضع الصيانة؟" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 msgid "Enter maintenance mode?" msgstr "ادخل وضع الصيانة؟" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 msgid "Maintenance mode for" msgstr "وضع الصيانة ل" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 -#: static/admin/translations-fakejs.js:247 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:209 +#: static/admin/translations-fakejs.js:232 msgid "In Maintenance" msgstr "في وضع الصيانة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 -#: static/admin/translations-fakejs.js:248 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/translations-fakejs.js:233 msgid "Active" msgstr "نشيط" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 -#: static/admin/translations-fakejs.js:95 -#: static/admin/translations-fakejs.js:229 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:191 +#: static/admin/translations-fakejs.js:236 +#: static/admin/translations-fakejs.js:255 msgid "Pool" msgstr "حوض السباحة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 -#: static/admin/translations-fakejs.js:96 -#: static/admin/translations-fakejs.js:230 -#: static/admin/translations-fakejs.js:343 -#: static/admin/translations-fakejs.js:355 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 +#: static/admin/translations-fakejs.js:237 +#: static/admin/translations-fakejs.js:256 +#: static/admin/translations-fakejs.js:470 +#: static/admin/translations-fakejs.js:482 msgid "State" msgstr "حالة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 -#: static/admin/translations-fakejs.js:97 -#: static/admin/translations-fakejs.js:231 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:193 +#: static/admin/translations-fakejs.js:238 +#: static/admin/translations-fakejs.js:257 msgid "User Services" msgstr "خدمات المستخدم" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 -#: static/admin/translations-fakejs.js:232 -#: static/admin/translations-fakejs.js:321 -#: static/admin/translations-fakejs.js:401 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:194 +#: static/admin/translations-fakejs.js:248 +#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:365 msgid "Service pools" msgstr "مجمعات الخدمة" #: static/admin/main.js:1 static/admin/translations-fakejs.js:3 #: static/admin/translations-fakejs.js:7 -#: static/admin/translations-fakejs.js:308 +#: static/admin/translations-fakejs.js:311 #: static/modern/translations-fakejs.js:44 msgid "Yes" msgstr "نعم" #: static/admin/main.js:1 static/admin/translations-fakejs.js:4 #: static/admin/translations-fakejs.js:8 -#: static/admin/translations-fakejs.js:309 +#: static/admin/translations-fakejs.js:312 #: static/modern/translations-fakejs.js:45 msgid "No" msgstr "لا" @@ -429,592 +429,595 @@ msgstr "(الخفية)" msgid "Selected items :" msgstr "العناصر المختارة:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 -#: static/admin/translations-fakejs.js:233 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:195 +#: static/admin/translations-fakejs.js:231 #: static/modern/translations-fakejs.js:35 msgid "Information" msgstr "معلومات" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 msgid "New service" msgstr "خدمة جديدة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:197 msgid "Edit service" msgstr "تحرير خدمة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:236 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 msgid "Delete service" msgstr "حذف الخدمة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:237 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 msgid "Delete user service" msgstr "حذف خدمة المستخدم" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:269 msgid "New Authenticator" msgstr "أداة مصادقة جديدة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:267 +#: static/admin/translations-fakejs.js:270 msgid "Edit Authenticator" msgstr "تحرير أداة المصادقة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/translations-fakejs.js:271 msgid "Delete Authenticator" msgstr "حذف أداة المصادقة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 msgid "Any" msgstr "أي" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 msgid "All" msgstr "الكل" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 -#: static/admin/translations-fakejs.js:94 -#: static/admin/translations-fakejs.js:342 -#: static/admin/translations-fakejs.js:354 -#: static/admin/translations-fakejs.js:379 -#: static/admin/translations-fakejs.js:435 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/translations-fakejs.js:254 +#: static/admin/translations-fakejs.js:343 +#: static/admin/translations-fakejs.js:399 +#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:481 msgid "Comments" msgstr "تعليقات" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:258 msgid "Unique ID" msgstr "معرف فريد" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 msgid "Friendly Name" msgstr "اسم مألوف" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:260 msgid "In Use" msgstr "في الاستخدام" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:261 msgid "IP" msgstr "IP" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 msgid "Services Pool" msgstr "خدمات بركة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 -#: static/admin/translations-fakejs.js:103 -#: static/admin/translations-fakejs.js:287 -#: static/admin/translations-fakejs.js:323 -#: static/admin/translations-fakejs.js:337 -#: static/admin/translations-fakejs.js:363 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/translations-fakejs.js:263 +#: static/admin/translations-fakejs.js:290 +#: static/admin/translations-fakejs.js:328 #: static/admin/translations-fakejs.js:367 -#: static/admin/translations-fakejs.js:373 -#: static/admin/translations-fakejs.js:403 -#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:494 msgid "Groups" msgstr "المجموعات" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 -#: static/admin/translations-fakejs.js:335 -#: static/admin/translations-fakejs.js:368 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/translations-fakejs.js:462 +#: static/admin/translations-fakejs.js:495 msgid "Services Pools" msgstr "خدمات حمامات" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 -#: static/admin/translations-fakejs.js:378 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/translations-fakejs.js:342 msgid "Name" msgstr "اسم" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 msgid "Real Name" msgstr "الاسم الحقيقي" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 msgid "state" msgstr "حالة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 msgid "Last access" msgstr "آخر ولوج" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 -#: static/admin/translations-fakejs.js:286 -#: static/admin/translations-fakejs.js:336 -#: static/admin/translations-fakejs.js:372 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:249 +#: static/admin/translations-fakejs.js:289 +#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:463 msgid "Users" msgstr "المستخدمين" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 -#: static/admin/translations-fakejs.js:344 -#: static/admin/translations-fakejs.js:356 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:483 msgid "Enabled" msgstr "تمكين" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 -#: static/admin/translations-fakejs.js:345 -#: static/admin/translations-fakejs.js:357 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:484 msgid "Disabled" msgstr "معاق" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 -#: static/admin/translations-fakejs.js:358 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:247 +#: static/admin/translations-fakejs.js:485 msgid "Blocked" msgstr "مسدود" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 msgid "Delete user" msgstr "حذف المستخدم" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 msgid "Delete group" msgstr "حذف مجموعة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 msgid "New OS Manager" msgstr "مدير نظام التشغيل الجديد" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 msgid "Edit OS Manager" msgstr "تحرير مدير OS" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 msgid "Delete OS Manager" msgstr "حذف OS Manager" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:120 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 msgid "New Transport" msgstr "النقل الجديد" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:121 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:83 msgid "Edit Transport" msgstr "تحرير النقل" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 msgid "Delete Transport" msgstr "حذف النقل" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 msgid "New Network" msgstr "شبكة جديدة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:115 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 msgid "Edit Network" msgstr "تحرير الشبكة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:116 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 msgid "Delete Network" msgstr "حذف الشبكة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:117 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 msgid "New Proxy" msgstr "وكيل جديد" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:118 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 msgid "Edit Proxy" msgstr "تحرير الوكيل" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:119 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 msgid "Delete Proxy" msgstr "حذف الوكيل" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:223 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 msgid "(This service does not requires an OS Manager)" msgstr "(لا تتطلب هذه الخدمة إدارة نظام التشغيل)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 msgid "New service Pool" msgstr "تجمع خدمة جديدة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 msgid "Publish on creation" msgstr "أنشر مباشرة بعد الإنشاء " -#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 msgid "If selected, will initiate the publication inmediatly after creation" msgstr "في حالة ألإختيار سيتم الشروع في النشر مباشرة بعد الإنشاء " -#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 msgid "Edit Service Pool" msgstr "تحرير تجمع الخدمة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:228 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 msgid "Delete service pool" msgstr "حذف تجمع الخدمة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 -#: static/admin/translations-fakejs.js:194 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:156 msgid "Please, select a valid user" msgstr "من فضلك ، حدد مستخدم صالح" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:158 msgid "Please, select a valid group" msgstr "من فضلك ، حدد مجموعة صالحة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 msgid "Please, select a valid transport" msgstr "من فضلك ، اختر وسيلة نقل صالحة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 msgid "Assigned" msgstr "مكلف" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 msgid "Cached" msgstr "مخبأ" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 msgid "In use" msgstr "في الاستخدام" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 -#: static/admin/translations-fakejs.js:290 -#: static/admin/translations-fakejs.js:374 -#: static/admin/translations-fakejs.js:405 -#: static/admin/translations-fakejs.js:462 -#: static/admin/translations-fakejs.js:465 -#: static/admin/translations-fakejs.js:470 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/translations-fakejs.js:293 +#: static/admin/translations-fakejs.js:369 +#: static/admin/translations-fakejs.js:426 +#: static/admin/translations-fakejs.js:429 +#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:460 msgid "Logs" msgstr "سجلات" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 msgid "VNC" msgstr "VNC" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 msgid "Launch now" msgstr "تنطلق الان" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 msgid "Change owner" msgstr "تغير المالك" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 msgid "Assign service" msgstr "تخصيص الخدمة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 -#: static/admin/translations-fakejs.js:277 -#: static/admin/translations-fakejs.js:283 -#: static/admin/translations-fakejs.js:349 -#: static/admin/translations-fakejs.js:364 -#: static/admin/translations-fakejs.js:390 -#: static/admin/translations-fakejs.js:398 -#: static/admin/translations-fakejs.js:410 -#: static/admin/translations-fakejs.js:415 -#: static/admin/translations-fakejs.js:423 -#: static/admin/translations-fakejs.js:428 -#: static/admin/translations-fakejs.js:432 -#: static/admin/translations-fakejs.js:436 -#: static/admin/translations-fakejs.js:449 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/translations-fakejs.js:280 +#: static/admin/translations-fakejs.js:286 +#: static/admin/translations-fakejs.js:354 +#: static/admin/translations-fakejs.js:362 +#: static/admin/translations-fakejs.js:374 +#: static/admin/translations-fakejs.js:379 +#: static/admin/translations-fakejs.js:387 +#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:400 +#: static/admin/translations-fakejs.js:413 +#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:476 #: static/admin/translations-fakejs.js:491 msgid "Cancel" msgstr "إلغاء الأمر" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 msgid "Changelog" msgstr "التغيير" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 -#: static/admin/translations-fakejs.js:209 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/translations-fakejs.js:171 msgid "Delete assigned service" msgstr "حذف الخدمة المعينة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 msgid "Delete cached service" msgstr "حذف الخدمة المخبأة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:183 -#: static/admin/translations-fakejs.js:211 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/translations-fakejs.js:173 msgid "Delete assigned group" msgstr "حذف المجموعة المعينة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 msgid "Delete assigned transport" msgstr "حذف النقل المعين" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 msgid "Publication" msgstr "منشور" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 msgid "Cancel publication?" msgstr "إلغاء النشر؟" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:215 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 msgid "Publication canceled" msgstr "النشر ملغى" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:179 msgid "Delete scheduled action" msgstr "حذف الإجراء المجدول" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:218 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 msgid "Execute scheduled action" msgstr "تنفيذ الإجراء المجدول" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 msgid "Execute scheduled action right now?" msgstr "تنفيذ الإجراء المجدول الآن؟" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:220 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 msgid "Scheduled action executed" msgstr "الإجراء المجدول المنفذة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:184 -#: static/admin/translations-fakejs.js:222 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/translations-fakejs.js:184 msgid "Delete calendar access rule" msgstr "حذف قاعدة وصول التقويم" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 msgid "New meta pool" msgstr "تجمع ميتا جديد" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 msgid "Edit meta pool" msgstr "تحرير تجمع ميتا" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 msgid "Delete meta pool" msgstr "حذف تجمع ميتا" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 msgid "Please, select a valid service pool" msgstr "من فضلك ، حدد تجمع خدمة صالح" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 msgid "Remove member pool" msgstr "إزالة تجمع الأعضاء" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 msgid "New pool group" msgstr "مجموعة البلياردو الجديدة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 msgid "Edit pool group" msgstr "تحرير مجموعة التجمع" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 msgid "Delete pool group" msgstr "حذف مجموعة التجمع" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 msgid "New calendar" msgstr "تقويم جديد" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 msgid "Edit calendar" msgstr "تحرير التقويم" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:178 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 msgid "Delete calendar" msgstr "حذف التقويم" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 msgid "day" msgstr "يوم" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 msgid "days" msgstr "أيام" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 msgid "Daily" msgstr "اليومية" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 msgid "week" msgstr "أسبوع" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 msgid "weeks" msgstr "أسابيع" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:141 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:103 msgid "Weekly" msgstr "أسبوعيا" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 msgid "month" msgstr "شهر" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 msgid "months" msgstr "أشهر" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 msgid "Monthly" msgstr "شهريا" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 msgid "year" msgstr "سنة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 msgid "years" msgstr "سنوات" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 msgid "Yearly" msgstr "سنوياً" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 -#: static/admin/translations-fakejs.js:387 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/translations-fakejs.js:351 msgid "Weekdays" msgstr "أيام الأسبوع" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 msgid "Minutes" msgstr "دقائق" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 msgid "Hours" msgstr "ساعات" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 msgid "Days" msgstr "أيام" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 msgid "Weeks" msgstr "أسابيع" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 msgid "(no days)" msgstr "(لا يوم)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 msgid "Forever" msgstr "إلى الأبد" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 msgid "Start date/time" msgstr "تاريخ البدء / الوقت" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 msgid "End date" msgstr "تاريخ الانتهاء" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 msgid "Interval" msgstr "فترة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 msgid "Week days" msgstr "ايام الاسبوع" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 msgid "Invalid or incomplete rule. Please, fix field $FIELD" msgstr "قاعدة غير صحيحة أو غير كاملة. الرجاء إصلاح الحقل $ FIELD" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 msgid "This rule will be valid every" msgstr "هذه القاعدة ستكون صالحة كل" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 msgid "of any week" msgstr "في أي أسبوع" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 msgid "from" msgstr "من" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 msgid "until" msgstr "حتى" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:171 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 msgid "onwards" msgstr "فصاعدا" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:134 msgid "starting at" msgstr "ابتداء من الساعة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:173 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 msgid "and every event will be active for" msgstr "وسيتم تنشيط كل حدث لـ" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 msgid "with no duration" msgstr "بدون مدة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 msgid "Delete calendar rule" msgstr "احذف قاعدة التقويم" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 msgid "Set time mark" msgstr "ضبط علامة الوقت" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 msgid "New account" msgstr "حساب جديد" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 msgid "Edit account" msgstr "تحرير الحساب" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 msgid "Delete account" msgstr "حذف الحساب" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:93 msgid "Time mark" msgstr "علامة الوقت" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:94 msgid "Set time mark for $NAME to current date/time?" msgstr "هل تريد تعيين علامة توقيت لـ $ NAME على التاريخ / الوقت الحالي؟" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:95 msgid "Time mark stablished" msgstr "وضع علامة زمنية" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:97 msgid "No time mark" msgstr "لا يوجد علامة الوقت" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 msgid "Delete account usage" msgstr "حذف استخدام الحساب" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:255 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 msgid "Image is too big (max. upload size is 256Kb)" msgstr "الصورة كبيرة جداً (بحد أقصى لحجم التحميل هو 256 كيلو بايت)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:257 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 msgid "Invalid image type (only supports JPEG, PNG and GIF" msgstr "نوع الصورة غير صالح (يدعم فقط JPEG و PNG و GIF" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:221 msgid "Please, provide a name and a image" msgstr "من فضلك ، تقديم اسم وصورة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 msgid "Delete image" msgstr "حذف صورة" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:263 -#: static/admin/translations-fakejs.js:267 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/translations-fakejs.js:229 msgid "Generate report" msgstr "إنشاء تقرير" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 msgid "Generating report..." msgstr "جارٍ إنشاء التقرير ..." -#: static/admin/main.js:1 static/admin/translations-fakejs.js:265 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 msgid "Report finished" msgstr "انتهى التقرير" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 msgid "Configuration saved" msgstr "حفظ التكوين" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 msgid "Delete actor token - USE WITH EXTREME CAUTION!!!" msgstr "حذف الرمز المميز للممثل - استخدام بحذر شديد !!!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:230 msgid "Delete tunnel token - USE WITH EXTREME CAUTION!!!" msgstr "حذف رمز النفق - استخدمه بحذر شديد !!!" @@ -1030,508 +1033,516 @@ msgstr "مواد لكل صفحة" msgid ", (%i more items)" msgstr "(٪ i المزيد من العناصر)" -#: static/admin/translations-fakejs.js:275 +#: static/admin/translations-fakejs.js:278 msgid "Remove all" msgstr "حذف الكل" -#: static/admin/translations-fakejs.js:276 +#: static/admin/translations-fakejs.js:279 msgid "Add" msgstr "إضافة" -#: static/admin/translations-fakejs.js:278 -#: static/admin/translations-fakejs.js:284 -#: static/admin/translations-fakejs.js:289 -#: static/admin/translations-fakejs.js:338 -#: static/admin/translations-fakejs.js:350 -#: static/admin/translations-fakejs.js:365 -#: static/admin/translations-fakejs.js:370 -#: static/admin/translations-fakejs.js:391 -#: static/admin/translations-fakejs.js:399 -#: static/admin/translations-fakejs.js:411 +#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:287 +#: static/admin/translations-fakejs.js:292 +#: static/admin/translations-fakejs.js:355 +#: static/admin/translations-fakejs.js:363 +#: static/admin/translations-fakejs.js:375 +#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:401 +#: static/admin/translations-fakejs.js:403 +#: static/admin/translations-fakejs.js:414 #: static/admin/translations-fakejs.js:416 -#: static/admin/translations-fakejs.js:424 -#: static/admin/translations-fakejs.js:429 -#: static/admin/translations-fakejs.js:433 -#: static/admin/translations-fakejs.js:437 -#: static/admin/translations-fakejs.js:439 -#: static/admin/translations-fakejs.js:450 -#: static/admin/translations-fakejs.js:452 -#: static/admin/translations-fakejs.js:466 +#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:465 +#: static/admin/translations-fakejs.js:477 #: static/admin/translations-fakejs.js:492 +#: static/admin/translations-fakejs.js:497 msgid "Ok" msgstr "حسنا" -#: static/admin/translations-fakejs.js:279 +#: static/admin/translations-fakejs.js:282 msgid "Discard & close" msgstr "تجاهل وإغلاق" -#: static/admin/translations-fakejs.js:280 -#: static/admin/translations-fakejs.js:484 +#: static/admin/translations-fakejs.js:283 +#: static/admin/translations-fakejs.js:448 msgid "Save" msgstr "حفظ" -#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:284 msgid "New user permission for" msgstr "إذن مستخدم جديد لـ" -#: static/admin/translations-fakejs.js:282 +#: static/admin/translations-fakejs.js:285 msgid "New group permission for" msgstr "إذن مجموعة جديدة لـ" -#: static/admin/translations-fakejs.js:285 +#: static/admin/translations-fakejs.js:288 msgid "Permissions for" msgstr "أذونات" -#: static/admin/translations-fakejs.js:288 +#: static/admin/translations-fakejs.js:291 msgid "New permission..." msgstr "إذن جديد ..." -#: static/admin/translations-fakejs.js:291 -#: static/admin/translations-fakejs.js:298 +#: static/admin/translations-fakejs.js:294 +#: static/admin/translations-fakejs.js:301 msgid "Export" msgstr "تصدير" -#: static/admin/translations-fakejs.js:293 -#: static/admin/translations-fakejs.js:294 -#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:296 +#: static/admin/translations-fakejs.js:297 +#: static/admin/translations-fakejs.js:298 msgid "New" msgstr "جديد" -#: static/admin/translations-fakejs.js:296 -#: static/admin/translations-fakejs.js:304 +#: static/admin/translations-fakejs.js:299 +#: static/admin/translations-fakejs.js:307 msgid "Edit" msgstr "تحرير" -#: static/admin/translations-fakejs.js:297 -#: static/admin/translations-fakejs.js:305 +#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:308 msgid "Permissions" msgstr "أذونات" -#: static/admin/translations-fakejs.js:299 -#: static/admin/translations-fakejs.js:306 +#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:309 msgid "Delete" msgstr "حذف" -#: static/admin/translations-fakejs.js:301 +#: static/admin/translations-fakejs.js:304 msgid "Selected items" msgstr "العناصر المختارة" -#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:305 msgid "Copy" msgstr "ينسخ" -#: static/admin/translations-fakejs.js:303 +#: static/admin/translations-fakejs.js:306 msgid "Detail" msgstr "التفاصيل" -#: static/admin/translations-fakejs.js:307 +#: static/admin/translations-fakejs.js:310 #: static/modern/translations-fakejs.js:43 msgid "Close" msgstr "إغلاق" -#: static/admin/translations-fakejs.js:310 +#: static/admin/translations-fakejs.js:313 msgid "User mode" msgstr "وضع المستخدم" -#: static/admin/translations-fakejs.js:311 +#: static/admin/translations-fakejs.js:314 #: static/modern/translations-fakejs.js:48 msgid "Logout" msgstr "الخروج" -#: static/admin/translations-fakejs.js:312 -#: static/admin/translations-fakejs.js:371 -#: static/admin/translations-fakejs.js:389 -#: static/admin/translations-fakejs.js:400 -#: static/admin/translations-fakejs.js:453 -#: static/admin/translations-fakejs.js:467 +#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:353 +#: static/admin/translations-fakejs.js:364 +#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:431 +#: static/admin/translations-fakejs.js:457 msgid "Summary" msgstr "ملخص" -#: static/admin/translations-fakejs.js:313 -#: static/admin/translations-fakejs.js:468 +#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:432 msgid "Services" msgstr "خدمات" -#: static/admin/translations-fakejs.js:314 +#: static/admin/translations-fakejs.js:317 +msgid "Authentication" +msgstr "المصادقة" + +#: static/admin/translations-fakejs.js:318 msgid "Authenticators" msgstr "الموثقون" -#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:319 +msgid "Multi Factor" +msgstr "متعدد العوامل" + +#: static/admin/translations-fakejs.js:320 msgid "Os Managers" msgstr "مدراء Os" -#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:321 msgid "Connectivity" msgstr "الاتصال" -#: static/admin/translations-fakejs.js:317 -#: static/admin/translations-fakejs.js:457 +#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:421 #: static/modern/translations-fakejs.js:39 msgid "Transports" msgstr "وسائل النقل" -#: static/admin/translations-fakejs.js:318 +#: static/admin/translations-fakejs.js:323 #: static/modern/translations-fakejs.js:41 msgid "Networks" msgstr "الشبكات" -#: static/admin/translations-fakejs.js:319 +#: static/admin/translations-fakejs.js:324 msgid "Proxies" msgstr "وكلاء" -#: static/admin/translations-fakejs.js:320 +#: static/admin/translations-fakejs.js:325 msgid "Pools" msgstr "حمامات" -#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:327 msgid "Meta pools" msgstr "حمامات ميتا" -#: static/admin/translations-fakejs.js:324 +#: static/admin/translations-fakejs.js:329 msgid "Calendars" msgstr "التقويمات" -#: static/admin/translations-fakejs.js:325 +#: static/admin/translations-fakejs.js:330 msgid "Accounts" msgstr "حسابات" -#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:331 msgid "Tools" msgstr "أدوات" -#: static/admin/translations-fakejs.js:327 +#: static/admin/translations-fakejs.js:332 msgid "Gallery" msgstr "صالة عرض" -#: static/admin/translations-fakejs.js:328 +#: static/admin/translations-fakejs.js:333 msgid "Reports" msgstr "تقارير" -#: static/admin/translations-fakejs.js:329 +#: static/admin/translations-fakejs.js:334 msgid "Tokens" msgstr "الرموز" -#: static/admin/translations-fakejs.js:330 +#: static/admin/translations-fakejs.js:335 msgid "Actor" msgstr "الممثل" -#: static/admin/translations-fakejs.js:331 +#: static/admin/translations-fakejs.js:336 msgid "Tunnel" msgstr "نفق" -#: static/admin/translations-fakejs.js:332 +#: static/admin/translations-fakejs.js:337 msgid "Configuration" msgstr "ترتيب" -#: static/admin/translations-fakejs.js:333 +#: static/admin/translations-fakejs.js:338 msgid "Flush Cache" msgstr "مخبأ دافق" -#: static/admin/translations-fakejs.js:334 -#: static/admin/translations-fakejs.js:366 -#: static/admin/translations-fakejs.js:463 -msgid "Information for" -msgstr "معلومات عن" - #: static/admin/translations-fakejs.js:339 -msgid "Edit group" -msgstr "تحرير مجموعة" - -#: static/admin/translations-fakejs.js:340 -msgid "New group" -msgstr "مجموعة جديدة" - -#: static/admin/translations-fakejs.js:341 -msgid "Meta group name" -msgstr "اسم مجموعة التعريف" - -#: static/admin/translations-fakejs.js:346 -msgid "Service Pools" -msgstr "مجمعات الخدمة" - -#: static/admin/translations-fakejs.js:347 -msgid "Match mode" -msgstr "وضع التطابق" - -#: static/admin/translations-fakejs.js:348 -msgid "Selected Groups" -msgstr "المجموعات المختارة" - -#: static/admin/translations-fakejs.js:351 -msgid "Edit user" -msgstr "تحرير المستخدم" - -#: static/admin/translations-fakejs.js:352 -msgid "New user" -msgstr "مستخدم جديد" - -#: static/admin/translations-fakejs.js:353 -msgid "Real name" -msgstr "الاسم الحقيقي" - -#: static/admin/translations-fakejs.js:359 -msgid "Role" -msgstr "وظيفة" - -#: static/admin/translations-fakejs.js:360 -msgid "Admin" -msgstr "مشرف" - -#: static/admin/translations-fakejs.js:361 -msgid "Staff member" -msgstr "موظف" - -#: static/admin/translations-fakejs.js:369 -msgid "Assigned Services" -msgstr "الخدمات المعينة" - -#: static/admin/translations-fakejs.js:375 msgid "Account usage" msgstr "استخدام الحساب" -#: static/admin/translations-fakejs.js:376 +#: static/admin/translations-fakejs.js:340 msgid "Edit rule" msgstr "تحرير القاعدة" -#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:341 msgid "New rule" msgstr "قانون جديد" -#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:344 msgid "Event" msgstr "هدف" -#: static/admin/translations-fakejs.js:381 +#: static/admin/translations-fakejs.js:345 msgid "Start time" msgstr "وقت البدء" -#: static/admin/translations-fakejs.js:382 +#: static/admin/translations-fakejs.js:346 msgid "Duration" msgstr "المدة الزمنية" -#: static/admin/translations-fakejs.js:383 +#: static/admin/translations-fakejs.js:347 msgid "Duration units" msgstr "وحدات المدة" -#: static/admin/translations-fakejs.js:384 +#: static/admin/translations-fakejs.js:348 msgid "Start date" msgstr "تاريخ البدء" -#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:349 msgid "Repeat until date" msgstr "كرر حتى التاريخ" -#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:350 msgid "Frequency" msgstr "تكرر" -#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:352 msgid "Repeat every" msgstr "تكرار كل" -#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:356 msgid "Rules" msgstr "قواعد" -#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:357 msgid "New member pool" msgstr "تجمع عضو جديد" -#: static/admin/translations-fakejs.js:394 +#: static/admin/translations-fakejs.js:358 msgid "Edit member pool" msgstr "تحرير تجمع الأعضاء" -#: static/admin/translations-fakejs.js:395 -#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:359 +#: static/admin/translations-fakejs.js:384 msgid "Priority" msgstr "أفضلية" -#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:360 msgid "Service pool" msgstr "تجمع خدمة" -#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:361 msgid "Enabled?" msgstr "تمكين؟" -#: static/admin/translations-fakejs.js:404 -#: static/admin/translations-fakejs.js:460 +#: static/admin/translations-fakejs.js:368 +#: static/admin/translations-fakejs.js:424 msgid "Access calendars" msgstr "تقاويم الوصول" -#: static/admin/translations-fakejs.js:406 +#: static/admin/translations-fakejs.js:370 msgid "Assign service to user manually" msgstr "تخصيص الخدمة للمستخدم يدويا" -#: static/admin/translations-fakejs.js:407 +#: static/admin/translations-fakejs.js:371 msgid "Service" msgstr "الخدمات" -#: static/admin/translations-fakejs.js:412 +#: static/admin/translations-fakejs.js:376 msgid "Change owner of assigned service" msgstr "تغيير مالك الخدمة المعينة" -#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:381 msgid "New access rule for" msgstr "قاعدة وصول جديدة لـ" -#: static/admin/translations-fakejs.js:418 +#: static/admin/translations-fakejs.js:382 msgid "Edit access rule for" msgstr "تحرير قاعدة الوصول لـ" -#: static/admin/translations-fakejs.js:419 +#: static/admin/translations-fakejs.js:383 msgid "Default fallback access for" msgstr "العودة الاحتياطية الافتراضية ل" -#: static/admin/translations-fakejs.js:421 -#: static/admin/translations-fakejs.js:442 +#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:406 msgid "Calendar" msgstr "التقويم" -#: static/admin/translations-fakejs.js:422 -#: static/admin/translations-fakejs.js:445 +#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:409 msgid "Action" msgstr "عمل" -#: static/admin/translations-fakejs.js:425 +#: static/admin/translations-fakejs.js:389 msgid "New group for" msgstr "مجموعة جديدة لـ" -#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:394 msgid "New transport for" msgstr "النقل الجديد ل" -#: static/admin/translations-fakejs.js:431 -#: static/admin/translations-fakejs.js:446 +#: static/admin/translations-fakejs.js:395 +#: static/admin/translations-fakejs.js:410 msgid "Transport" msgstr "المواصلات" -#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:398 msgid "New publication for" msgstr "منشور جديد لـ" -#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:402 msgid "Changelog of" msgstr "التغيير من" -#: static/admin/translations-fakejs.js:440 +#: static/admin/translations-fakejs.js:404 msgid "Edit action for" msgstr "تحرير العمل ل" -#: static/admin/translations-fakejs.js:441 +#: static/admin/translations-fakejs.js:405 msgid "New action for" msgstr "عمل جديد ل" -#: static/admin/translations-fakejs.js:443 +#: static/admin/translations-fakejs.js:407 msgid "Events offset (minutes)" msgstr "إزاحة الأحداث (بالدقائق)" -#: static/admin/translations-fakejs.js:444 +#: static/admin/translations-fakejs.js:408 msgid "At the beginning of the interval?" msgstr "في بداية الفاصل؟" -#: static/admin/translations-fakejs.js:451 +#: static/admin/translations-fakejs.js:415 msgid "Logs of" msgstr "سجلات من" -#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:419 msgid "Cache" msgstr "ذاكرة التخزين المؤقت" -#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:422 msgid "Publications" msgstr "المنشورات" -#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:423 msgid "Scheduled actions" msgstr "الإجراءات المجدولة" -#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:425 msgid "Charts" msgstr "الرسوم البيانية" -#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:427 +#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:493 +msgid "Information for" +msgstr "معلومات عن" + +#: static/admin/translations-fakejs.js:428 msgid "Services pools" msgstr "تجمع الخدمات" -#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:433 msgid "Usage" msgstr "استعمال" -#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:435 #: static/modern/translations-fakejs.js:46 msgid "Dashboard" msgstr "لوحة القيادة" -#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:436 msgid "View authenticators" msgstr "عرض المصادقين" -#: static/admin/translations-fakejs.js:473 -#: static/admin/translations-fakejs.js:474 -#: static/admin/translations-fakejs.js:475 +#: static/admin/translations-fakejs.js:437 +#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:439 msgid "View service pools" msgstr "عرض حمامات الخدمة" -#: static/admin/translations-fakejs.js:476 +#: static/admin/translations-fakejs.js:440 msgid "Assigned services chart" msgstr "مخطط الخدمات المعينة" -#: static/admin/translations-fakejs.js:477 +#: static/admin/translations-fakejs.js:441 msgid "In use services chart" msgstr "مخطط الخدمات قيد الاستخدام" -#: static/admin/translations-fakejs.js:478 +#: static/admin/translations-fakejs.js:442 msgid "UDS Administration" msgstr "إدارة UDS" -#: static/admin/translations-fakejs.js:479 +#: static/admin/translations-fakejs.js:443 msgid "You are accessing UDS Administration as staff member." msgstr "أنت تصل إلى إدارة UDS كموظف." -#: static/admin/translations-fakejs.js:480 +#: static/admin/translations-fakejs.js:444 msgid "This means that you have restricted access to elements." msgstr "هذا يعني أن لديك تقييد الوصول إلى العناصر." -#: static/admin/translations-fakejs.js:481 +#: static/admin/translations-fakejs.js:445 msgid "" "In order to increase your access privileges, please contact your local UDS " "administrator." msgstr "" "من أجل زيادة امتيازات الوصول الخاصة بك ، يرجى الاتصال بمسؤول UDS المحلي." -#: static/admin/translations-fakejs.js:482 +#: static/admin/translations-fakejs.js:446 msgid "Thank you." msgstr "شكرا لكم." -#: static/admin/translations-fakejs.js:483 +#: static/admin/translations-fakejs.js:447 msgid "UDS Configuration" msgstr "تكوين UDS" -#: static/admin/translations-fakejs.js:485 +#: static/admin/translations-fakejs.js:449 msgid "New image for" msgstr "صورة جديدة ل" -#: static/admin/translations-fakejs.js:486 +#: static/admin/translations-fakejs.js:450 msgid "Edit for" msgstr "تحرير ل" -#: static/admin/translations-fakejs.js:487 +#: static/admin/translations-fakejs.js:451 msgid "Image name" msgstr "اسم الصورة" -#: static/admin/translations-fakejs.js:488 +#: static/admin/translations-fakejs.js:452 msgid "Image (click to change)" msgstr "صورة (انقر للتغيير)" -#: static/admin/translations-fakejs.js:489 +#: static/admin/translations-fakejs.js:453 msgid "For optimal results, use " msgstr "للحصول على أفضل النتائج ، استخدم" -#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:454 msgid "The image will be resized on upload to" msgstr "سيتم تغيير حجم الصورة عند التحميل إلى" +#: static/admin/translations-fakejs.js:466 +msgid "Edit group" +msgstr "تحرير مجموعة" + +#: static/admin/translations-fakejs.js:467 +msgid "New group" +msgstr "مجموعة جديدة" + +#: static/admin/translations-fakejs.js:468 +msgid "Meta group name" +msgstr "اسم مجموعة التعريف" + +#: static/admin/translations-fakejs.js:473 +msgid "Service Pools" +msgstr "مجمعات الخدمة" + +#: static/admin/translations-fakejs.js:474 +msgid "Match mode" +msgstr "وضع التطابق" + +#: static/admin/translations-fakejs.js:475 +msgid "Selected Groups" +msgstr "المجموعات المختارة" + +#: static/admin/translations-fakejs.js:478 +msgid "Edit user" +msgstr "تحرير المستخدم" + +#: static/admin/translations-fakejs.js:479 +msgid "New user" +msgstr "مستخدم جديد" + +#: static/admin/translations-fakejs.js:480 +msgid "Real name" +msgstr "الاسم الحقيقي" + +#: static/admin/translations-fakejs.js:486 +msgid "Role" +msgstr "وظيفة" + +#: static/admin/translations-fakejs.js:487 +msgid "Admin" +msgstr "مشرف" + +#: static/admin/translations-fakejs.js:488 +msgid "Staff member" +msgstr "موظف" + +#: static/admin/translations-fakejs.js:496 +msgid "Assigned Services" +msgstr "الخدمات المعينة" + #: static/modern/main-es5.js:1 msgid "Error communicating with your service. Please, retry again." msgstr "خطأ في الاتصال بخدمتك. من فضلك ، أعد المحاولة مرة أخرى." @@ -1591,7 +1602,8 @@ msgstr "اتصالك قيد الإعداد. سيتم فتحه في نافذة ج msgid "Launching service" msgstr "إطلاق الخدمة" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 +#: static/modern/translations-fakejs.js:25 msgid "Errors found" msgstr "العثور على أخطاء" @@ -1631,18 +1643,14 @@ msgstr "إعادة الخدمة" msgid "Are you sure?" msgstr "هل أنت واثق؟" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 msgid "Warning" msgstr "تحذير" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:25 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 msgid "Service is in maintenance and cannot be executed" msgstr "الخدمة في الصيانة ولا يمكن تنفيذها" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 -msgid "Invalid error string" -msgstr "سلسلة خطأ غير صالحة" - #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:26 msgid "We use cookies to track usage and preferences" msgstr "نحن نستخدم ملفات تعريف الارتباط لتتبع الاستخدام والتفضيلات" @@ -1784,3 +1792,15 @@ msgstr "كلمه السر" #: static/modern/translations-fakejs.js:73 msgid "Login" msgstr "تسجيل الدخول" + +#: static/modern/translations-fakejs.js:74 +msgid "Login Verification" +msgstr "التحقق الدخول" + +#: static/modern/translations-fakejs.js:75 +msgid "Remember Me" +msgstr "تذكرنى" + +#: static/modern/translations-fakejs.js:76 +msgid "Submit" +msgstr "يُقدِّم" diff --git a/server/src/uds/locale/ca/LC_MESSAGES/django.po b/server/src/uds/locale/ca/LC_MESSAGES/django.po index 44f0dbfb..bbe73781 100644 --- a/server/src/uds/locale/ca/LC_MESSAGES/django.po +++ b/server/src/uds/locale/ca/LC_MESSAGES/django.po @@ -10,9 +10,9 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-14 11:34+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:14+0000\n" +"Last-Translator: Javier , 2020\n" "Language-Team: Catalan (http://www.transifex.com/openuds/openuds/language/" "ca/)\n" "Language: ca\n" @@ -25,26 +25,26 @@ msgstr "" msgid "Accounts" msgstr "Comptes" -#: REST/methods/accounts.py:63 REST/methods/authenticators.py:66 +#: REST/methods/accounts.py:63 REST/methods/authenticators.py:67 #: REST/methods/calendars.py:63 REST/methods/images.py:67 -#: REST/methods/meta_pools.py:81 REST/methods/networks.py:63 -#: REST/methods/osmanagers.py:55 REST/methods/providers.py:71 -#: REST/methods/proxies.py:60 REST/methods/reports.py:69 -#: REST/methods/services_pool_groups.py:71 REST/methods/services_pools.py:136 -#: REST/methods/transports.py:66 REST/methods/user_services.py:325 -#: REST/methods/user_services.py:400 REST/methods/users_groups.py:167 -#: REST/model.py:149 +#: REST/methods/meta_pools.py:81 REST/methods/mfas.py:56 +#: REST/methods/networks.py:63 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:71 REST/methods/proxies.py:60 +#: REST/methods/reports.py:69 REST/methods/services_pool_groups.py:71 +#: REST/methods/services_pools.py:136 REST/methods/transports.py:66 +#: REST/methods/user_services.py:325 REST/methods/user_services.py:400 +#: REST/methods/users_groups.py:167 REST/model.py:149 msgid "Name" msgstr "Nom" -#: REST/methods/accounts.py:64 REST/methods/authenticators.py:68 +#: REST/methods/accounts.py:64 REST/methods/authenticators.py:69 #: REST/methods/calendarrules.py:110 REST/methods/calendars.py:69 -#: REST/methods/meta_pools.py:82 REST/methods/osmanagers.py:57 -#: REST/methods/providers.py:73 REST/methods/proxies.py:63 -#: REST/methods/services.py:241 REST/methods/services_pool_groups.py:72 -#: REST/methods/transports.py:68 REST/methods/user_services.py:402 -#: REST/methods/users_groups.py:168 REST/methods/users_groups.py:386 -#: REST/model.py:173 +#: REST/methods/meta_pools.py:82 REST/methods/mfas.py:58 +#: REST/methods/osmanagers.py:57 REST/methods/providers.py:73 +#: REST/methods/proxies.py:63 REST/methods/services.py:241 +#: REST/methods/services_pool_groups.py:72 REST/methods/transports.py:68 +#: REST/methods/user_services.py:402 REST/methods/users_groups.py:168 +#: REST/methods/users_groups.py:384 REST/model.py:173 msgid "Comments" msgstr "Comentaris" @@ -52,12 +52,12 @@ msgstr "Comentaris" msgid "Time mark" msgstr "Marca de temps" -#: REST/methods/accounts.py:66 REST/methods/authenticators.py:73 +#: REST/methods/accounts.py:66 REST/methods/authenticators.py:75 #: REST/methods/calendars.py:71 REST/methods/meta_pools.py:89 -#: REST/methods/networks.py:71 REST/methods/osmanagers.py:59 -#: REST/methods/providers.py:79 REST/methods/proxies.py:64 -#: REST/methods/services.py:250 REST/methods/services_pools.py:145 -#: REST/methods/transports.py:77 +#: REST/methods/mfas.py:59 REST/methods/networks.py:71 +#: REST/methods/osmanagers.py:59 REST/methods/providers.py:79 +#: REST/methods/proxies.py:64 REST/methods/services.py:250 +#: REST/methods/services_pools.py:145 REST/methods/transports.py:77 msgid "tags" msgstr "etiquetes" @@ -112,7 +112,7 @@ msgstr "Clau incorrecta" msgid "Unmanaged host" msgstr "Host no administrat" -#: REST/methods/actor.py:207 web/util/errors.py:85 +#: REST/methods/actor.py:207 web/util/errors.py:87 msgid "User service not found" msgstr "Servei d'usuari no trobat" @@ -121,9 +121,9 @@ msgid "Actor tokens" msgstr "Tokens de l'actor" #: REST/methods/actor_token.py:54 REST/methods/tunnel_token.py:52 -#: reports/auto/fields.py:58 reports/stats/pools_performance.py:218 -#: reports/stats/pools_performance.py:237 reports/stats/pools_usage_day.py:64 -#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:191 +#: reports/auto/fields.py:58 reports/stats/pools_performance.py:201 +#: reports/stats/pools_performance.py:220 reports/stats/pools_usage_day.py:64 +#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:176 #: templates/uds/reports/stats/authenticator_stats.html:14 msgid "Date" msgstr "Data" @@ -162,64 +162,79 @@ msgstr "Nivell de registre" msgid "Token isued by {} from {}" msgstr "El token es mostra per {} de {}" -#: REST/methods/authenticators.py:63 +#: REST/methods/authenticators.py:64 msgid "Authenticators" msgstr "Autenticadors" -#: REST/methods/authenticators.py:65 +#: REST/methods/authenticators.py:66 msgid "Id" msgstr "ID" -#: REST/methods/authenticators.py:67 REST/methods/osmanagers.py:56 -#: REST/methods/providers.py:72 REST/methods/services.py:242 -#: REST/methods/transports.py:67 REST/methods/user_services.py:401 +#: REST/methods/authenticators.py:68 REST/methods/mfas.py:57 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:72 +#: REST/methods/services.py:242 REST/methods/transports.py:67 +#: REST/methods/user_services.py:401 msgid "Type" msgstr "Tipus" -#: REST/methods/authenticators.py:69 REST/methods/meta_service_pools.py:88 +#: REST/methods/authenticators.py:70 REST/methods/meta_service_pools.py:88 #: REST/methods/op_calendars.py:83 REST/methods/services_pool_groups.py:62 #: REST/methods/transports.py:65 REST/methods/user_services.py:399 #: REST/model.py:185 models/meta_pool.py:73 msgid "Priority" msgstr "Prioritat" -#: REST/methods/authenticators.py:70 REST/methods/authenticators.py:107 +#: REST/methods/authenticators.py:71 REST/methods/authenticators.py:110 #: REST/methods/meta_pools.py:86 REST/methods/meta_pools.py:193 #: REST/methods/services_pools.py:141 REST/methods/services_pools.py:386 msgid "Visible" msgstr "Visible" -#: REST/methods/authenticators.py:71 REST/methods/meta_pools.py:88 +#: REST/methods/authenticators.py:72 REST/methods/meta_pools.py:88 #: REST/methods/transports.py:164 REST/model.py:201 msgid "Label" msgstr "Etiqueta" -#: REST/methods/authenticators.py:72 core/util/stats/counters.py:252 -#: reports/stats/pools_performance.py:223 -#: reports/stats/pools_performance.py:286 reports/stats/user_access.py:254 -#: reports/stats/user_access.py:297 services/RDS_enterprise/provider.py:74 +#: REST/methods/authenticators.py:73 core/util/stats/counters.py:252 +#: reports/stats/pools_performance.py:206 +#: reports/stats/pools_performance.py:269 reports/stats/user_access.py:239 +#: reports/stats/user_access.py:282 services/RDS_enterprise/provider.py:74 #: templates/uds/reports/stats/authenticator_stats.html:15 #: templates/uds/reports/stats/pools-performance.html:35 #: templates/uds/reports/stats/user-access.html:35 msgid "Users" msgstr "Usuaris" -#: REST/methods/authenticators.py:109 REST/methods/services_pools.py:387 -msgid "If active, transport will be visible for users" -msgstr "Si està activat, el transport serà visible per als usuaris" +#: REST/methods/authenticators.py:74 core/ui/user_interface.py:104 +msgid "MFA" +msgstr "MFA" -#: REST/methods/authenticators.py:113 REST/methods/services_pools.py:390 -#: REST/methods/services_pools.py:405 REST/methods/services_pools.py:422 -#: REST/methods/services_pools.py:433 core/ui/user_interface.py:103 -#: services/OVirt/service.py:188 -msgid "Display" -msgstr "Pantalla" +#: REST/methods/authenticators.py:112 +msgid "If active, authenticator will be visible for users" +msgstr "Si està actiu, l'autenticador serà visible per als usuaris" -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:125 core/services/service.py:143 +#: core/services/service.py:154 mfas/Email/mfa.py:46 mfas/SMS/mfa.py:112 +#: models/permissions.py:92 models/permissions.py:96 +#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 +#: services/Proxmox/service.py:208 services/Sample/service.py:100 +#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 +msgid "None" +msgstr "Cap" + +#: REST/methods/authenticators.py:132 +msgid "MFA Provider" +msgstr "Proveïdor de MFA" + +#: REST/methods/authenticators.py:134 +msgid "MFA provider to use for this authenticator" +msgstr "Proveïdor de MFA que cal utilitzar per a aquest autenticador" + +#: REST/methods/authenticators.py:193 msgid "Too many results..." msgstr "Hi ha massa resultats ..." -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:193 msgid "Refine your query" msgstr "Refineu la vostra consulta" @@ -378,7 +393,7 @@ msgstr "Data de creació" #: REST/methods/meta_service_pools.py:195 REST/methods/services_usage.py:125 #: reports/stats/pool_users_summary.py:60 -#: reports/stats/pools_performance.py:284 reports/stats/pools_usage_day.py:171 +#: reports/stats/pools_performance.py:267 reports/stats/pools_usage_day.py:169 #: reports/stats/pools_usage_summary.py:156 reports/stats/usage_by_pool.py:59 #: reports/stats/usage_by_pool.py:173 services/Proxmox/service.py:111 #: templates/uds/reports/stats/pools-performance.html:33 @@ -437,6 +452,28 @@ msgstr "Element ja eliminat" msgid "Item is not removable" msgstr "Element que no pot eliminar-se" +#: REST/methods/mfas.py:54 +msgid "Multi Factor Authentication" +msgstr "Autenticació de múltiples factors" + +#: REST/methods/mfas.py:80 +msgid "Device Caching" +msgstr "Emmagatzematge en memòria cau del dispositiu" + +#: REST/methods/mfas.py:82 +msgid "Time in hours to cache device so MFA is not required again. User based." +msgstr "" +"Temps en hores per emmagatzemar el dispositiu a la memòria cau, de manera " +"que no es requereix MFA de nou. Basat en l'usuari." + +#: REST/methods/mfas.py:94 +msgid "MFA code validity" +msgstr "Validesa del codi MFA" + +#: REST/methods/mfas.py:96 +msgid "Time in minutes to allow MFA code to be used." +msgstr "Temps en minuts per permetre l'ús del codi MFA." + #: REST/methods/networks.py:59 REST/methods/transports.py:114 msgid "Networks" msgstr "Xarxes" @@ -525,7 +562,7 @@ msgstr "Proveïdors de servei" msgid "Status" msgstr "Estat" -#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:171 +#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:169 #: templates/uds/reports/stats/authenticator_stats.html:16 #: templates/uds/reports/stats/pools-usage-day.html:29 msgid "Services" @@ -620,13 +657,13 @@ msgstr "" msgid "Available reports" msgstr "Informes disponibles" -#: REST/methods/reports.py:67 REST/methods/users_groups.py:377 -#: REST/methods/users_groups.py:398 -#: auths/ActiveDirectory_enterprise/authenticator.py:143 +#: REST/methods/reports.py:67 REST/methods/users_groups.py:375 +#: REST/methods/users_groups.py:396 +#: auths/ActiveDirectory_enterprise/authenticator.py:153 #: auths/AzureAD_enterprise/azure_ad.py:95 #: auths/EDirectory_enterprise/authenticator.py:105 #: auths/Radius/authenticator.py:63 auths/RegexLdap/authenticator.py:191 -#: auths/SAML_enterprise/saml.py:121 auths/SimpleLDAP/authenticator.py:182 +#: auths/SAML_enterprise/saml.py:109 auths/SimpleLDAP/authenticator.py:182 #: models/calendar_action.py:147 models/calendar_action.py:154 msgid "Group" msgstr "Grup" @@ -691,13 +728,13 @@ msgstr "Proxy per a serveis darrere d'un tallafoc" msgid "Advanced" msgstr "Avançat" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "With errors" msgstr "Amb errors" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "Ok" msgstr "D'acord" @@ -775,6 +812,16 @@ msgstr "" "Si l'opció està habilitada, UDS no intentarà detectar ni eliminar els " "serveis d'usuari assignats que no s'utilitzin." +#: REST/methods/services_pools.py:387 +msgid "If active, transport will be visible for users" +msgstr "Si està activat, el transport serà visible per als usuaris" + +#: REST/methods/services_pools.py:390 REST/methods/services_pools.py:405 +#: REST/methods/services_pools.py:422 REST/methods/services_pools.py:433 +#: core/ui/user_interface.py:103 services/OVirt/service.py:188 +msgid "Display" +msgstr "Pantalla" + #: REST/methods/services_pools.py:439 msgid "Initial available services" msgstr "Serveis inicialment disponibles" @@ -984,7 +1031,7 @@ msgstr "Membre del personal" #: auths/AzureAD_enterprise/azure_ad.py:94 #: auths/EDirectory_enterprise/authenticator.py:69 #: auths/Radius/authenticator.py:62 auths/RegexLdap/authenticator.py:91 -#: auths/SAML_enterprise/saml.py:118 reports/stats/pool_users_summary.py:177 +#: auths/SAML_enterprise/saml.py:106 reports/stats/pool_users_summary.py:177 #: reports/stats/usage_by_pool.py:171 #: templates/uds/reports/stats/pool-users-summary.html:14 #: templates/uds/reports/stats/usage-by-pool.html:15 @@ -1001,10 +1048,10 @@ msgid "Current users" msgstr "Usuaris actuals" #: REST/methods/users_groups.py:160 -#: auths/ActiveDirectory_enterprise/authenticator.py:141 +#: auths/ActiveDirectory_enterprise/authenticator.py:151 #: auths/EDirectory_enterprise/authenticator.py:103 #: auths/RegexLdap/authenticator.py:189 auths/SimpleLDAP/authenticator.py:180 -#: services/HyperV_enterprise/legacy/provider.py:103 +#: mfas/Email/mfa.py:54 services/HyperV_enterprise/legacy/provider.py:103 #: services/HyperV_enterprise/provider.py:86 #: services/NutanixPrism_enterprise/provider.py:54 #: services/Nutanix_enterprise/provider.py:54 services/OVirt/provider.py:121 @@ -1018,7 +1065,7 @@ msgstr "Usuaris actuals" #: transports/NoMachine_enterprise/nomachine_base.py:63 #: transports/PCoIP_enterprise/pcoip.py:61 transports/RDP/rdp_base.py:75 #: transports/SPICE/spice_base.py:69 transports/X2GO/x2go_base.py:70 -#: web/forms/LoginForm.py:43 +#: web/forms/LoginForm.py:44 msgid "Username" msgstr "Nom d'usuari" @@ -1026,7 +1073,7 @@ msgstr "Nom d'usuari" msgid "Role" msgstr "Paper" -#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:389 +#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:387 msgid "state" msgstr "estat" @@ -1038,32 +1085,32 @@ msgstr "Darrer accés" msgid "Username cannot be empty" msgstr "El nom d'usuari no pot estar buit" -#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:470 +#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:468 msgid "User already exists (duplicate key error)" msgstr "Aquest usuari ja existeix (error de clau duplicada)" -#: REST/methods/users_groups.py:365 +#: REST/methods/users_groups.py:363 #, python-brace-format msgid "Groups of {0}" msgstr "Grups de {0}" -#: REST/methods/users_groups.py:371 +#: REST/methods/users_groups.py:369 msgid "Current groups" msgstr "Grups actuals" -#: REST/methods/users_groups.py:398 +#: REST/methods/users_groups.py:396 msgid "UDS Group" msgstr "Grup UDS" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "Meta group" msgstr "Metagrup" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "UDS Meta Group" msgstr "Metagrup UDS" -#: REST/methods/users_groups.py:430 +#: REST/methods/users_groups.py:428 msgid "Group name is required" msgstr "El nom del grup és obligatori" @@ -1114,7 +1161,7 @@ msgstr "Mètode no trobat a {}: {}" msgid "Item not found" msgstr "Element no trobat" -#: REST/model.py:336 web/util/authentication.py:140 web/util/errors.py:79 +#: REST/model.py:336 web/util/authentication.py:143 web/util/errors.py:81 msgid "Access denied" msgstr "Accés denegat" @@ -1122,7 +1169,7 @@ msgstr "Accés denegat" msgid "Operation not supported" msgstr "Operació no suportada" -#: admin/views/__init__.py:59 +#: admin/views/__init__.py:72 msgid "requested a template that do not exist" msgstr "heu sol·licitat una plantilla que no existeix" @@ -1156,11 +1203,11 @@ msgstr "" "format USUARI@DOMINI)" #: auths/ActiveDirectory_enterprise/authenticator.py:80 -#: auths/ActiveDirectory_enterprise/authenticator.py:145 +#: auths/ActiveDirectory_enterprise/authenticator.py:155 #: auths/EDirectory_enterprise/authenticator.py:77 #: auths/RegexLdap/authenticator.py:99 auths/RegexLdap/authenticator.py:193 #: auths/SimpleLDAP/authenticator.py:90 auths/SimpleLDAP/authenticator.py:184 -#: core/auths/authenticator.py:147 +#: core/auths/authenticator.py:147 mfas/Email/mfa.py:63 #: osmanagers/WindowsOsManager/windows_domain.py:85 #: osmanagers/WindowsOsManager/windows_random.py:76 #: services/HyperV_enterprise/legacy/provider.py:110 @@ -1176,8 +1223,8 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcv_base.py:52 #: transports/NoMachine_enterprise/nomachine_base.py:69 #: transports/PCoIP_enterprise/pcoip.py:67 transports/RDP/rdp_base.py:81 -#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:45 -#: web/forms/LoginForm.py:46 +#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:46 +#: web/forms/LoginForm.py:47 msgid "Password" msgstr "Contrasenya" @@ -1244,22 +1291,32 @@ msgstr "" "Si no està buit, aquest amfitrió s'utilitzarà en cas que no es pugui accedir " "al servidor principal" -#: auths/ActiveDirectory_enterprise/authenticator.py:130 +#: auths/ActiveDirectory_enterprise/authenticator.py:133 +#: auths/SAML_enterprise/saml.py:207 +msgid "MFA attribute" +msgstr "Atribut MFA" + +#: auths/ActiveDirectory_enterprise/authenticator.py:135 +#: auths/SAML_enterprise/saml.py:209 +msgid "Attribute from where to extract the MFA code" +msgstr "Atribut d'on extreure el codi MFA" + +#: auths/ActiveDirectory_enterprise/authenticator.py:140 msgid "Active Directory Authenticator" msgstr "Autenticador del Directori Actiu" -#: auths/ActiveDirectory_enterprise/authenticator.py:132 +#: auths/ActiveDirectory_enterprise/authenticator.py:142 msgid "Authenticate against Active Directory" msgstr "Autenticar sobre Directori Actiu" -#: auths/ActiveDirectory_enterprise/authenticator.py:175 -#: auths/ActiveDirectory_enterprise/authenticator.py:602 +#: auths/ActiveDirectory_enterprise/authenticator.py:187 +#: auths/ActiveDirectory_enterprise/authenticator.py:648 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "Cal especificar el nom d'usuari en format USUARI@DOMINI.DOM" -#: auths/ActiveDirectory_enterprise/authenticator.py:481 -#: auths/ActiveDirectory_enterprise/authenticator.py:532 -#: auths/AzureAD_enterprise/azure_ad.py:313 +#: auths/ActiveDirectory_enterprise/authenticator.py:521 +#: auths/ActiveDirectory_enterprise/authenticator.py:578 +#: auths/AzureAD_enterprise/azure_ad.py:315 #: auths/EDirectory_enterprise/authenticator.py:269 #: auths/EDirectory_enterprise/authenticator.py:300 #: auths/RegexLdap/authenticator.py:538 auths/RegexLdap/authenticator.py:569 @@ -1267,34 +1324,34 @@ msgstr "Cal especificar el nom d'usuari en format USUARI@DOMINI.DOM" msgid "Username not found" msgstr "Nom d'usuari no trobat" -#: auths/ActiveDirectory_enterprise/authenticator.py:514 +#: auths/ActiveDirectory_enterprise/authenticator.py:560 #: auths/SimpleLDAP/authenticator.py:468 msgid "Group not found" msgstr "Grup no trobat" -#: auths/ActiveDirectory_enterprise/authenticator.py:559 -#: auths/ActiveDirectory_enterprise/authenticator.py:581 +#: auths/ActiveDirectory_enterprise/authenticator.py:605 +#: auths/ActiveDirectory_enterprise/authenticator.py:627 #: auths/EDirectory_enterprise/authenticator.py:322 #: auths/RegexLdap/authenticator.py:597 auths/SimpleLDAP/authenticator.py:503 #: auths/SimpleLDAP/authenticator.py:523 msgid "Too many results, be more specific" msgstr "Massa resultats, cal especificar més" -#: auths/ActiveDirectory_enterprise/authenticator.py:613 +#: auths/ActiveDirectory_enterprise/authenticator.py:659 msgid "Domain seems to be incorrect, please check it" msgstr "El Domini sembla ser incorrecte, si us plau verifiqueu-ho" -#: auths/ActiveDirectory_enterprise/authenticator.py:632 +#: auths/ActiveDirectory_enterprise/authenticator.py:678 msgid "" "Server does not seem an Active Directory (it does not have user objects)" msgstr "El servidor sembla no ser un Directori Actiu (no té objectes d'usuari)" -#: auths/ActiveDirectory_enterprise/authenticator.py:655 +#: auths/ActiveDirectory_enterprise/authenticator.py:701 msgid "" "Server does not seem an Active Directory (it does not have group objects)" msgstr "El servidor sembla no ser un Directori Actiu (no té objectes de grup)" -#: auths/ActiveDirectory_enterprise/authenticator.py:664 +#: auths/ActiveDirectory_enterprise/authenticator.py:710 #: auths/EDirectory_enterprise/authenticator.py:445 #: auths/RegexLdap/authenticator.py:707 auths/SimpleLDAP/authenticator.py:686 msgid "Connection params seem correct, test was succesfully executed" @@ -1389,21 +1446,21 @@ msgstr "Tancament de sessió de Microsoft" msgid "Office 365 logout" msgstr "Tancament de sessió d'Office 365" -#: auths/AzureAD_enterprise/azure_ad.py:176 auths/SAML_enterprise/saml.py:217 +#: auths/AzureAD_enterprise/azure_ad.py:176 msgid "SAML Authenticator does not support white spaces on field NAME" msgstr "L'Autenticador SAML no admet espais blancs al camp NAME" -#: auths/AzureAD_enterprise/azure_ad.py:323 -#: auths/AzureAD_enterprise/azure_ad.py:349 -#: auths/AzureAD_enterprise/azure_ad.py:359 +#: auths/AzureAD_enterprise/azure_ad.py:325 +#: auths/AzureAD_enterprise/azure_ad.py:351 +#: auths/AzureAD_enterprise/azure_ad.py:361 msgid "Authenticator exception:" msgstr "Excepció d'autenticador:" -#: auths/AzureAD_enterprise/azure_ad.py:394 core/util/ldaputil.py:49 +#: auths/AzureAD_enterprise/azure_ad.py:396 core/util/ldaputil.py:49 msgid "Connection error: " msgstr "Error de connexió:" -#: auths/AzureAD_enterprise/azure_ad.py:397 +#: auths/AzureAD_enterprise/azure_ad.py:399 msgid "Connection params seems correct, test was succesfully executed" msgstr "" "Els paràmetres de connexió semblen correctes, la prova s'ha executat " @@ -1512,7 +1569,7 @@ msgstr "Autenticador IP" msgid "IP Range" msgstr "Rang IP" -#: auths/IP/authenticator.py:119 auths/IP/authenticator.py:122 +#: auths/IP/authenticator.py:122 auths/IP/authenticator.py:125 msgid "All seems to be fine." msgstr "Tot sembla ser correcte" @@ -1707,19 +1764,19 @@ msgstr "" "L'atribut d'ID de grup de LDAP sembla incorrecte (no s'ha trobat cap grup " "amb aquest atribut)" -#: auths/SAML_enterprise/saml.py:88 +#: auths/SAML_enterprise/saml.py:76 msgid "SAML Authenticator" msgstr "Autenticador SAML" -#: auths/SAML_enterprise/saml.py:100 +#: auths/SAML_enterprise/saml.py:88 msgid "SAML (v2.0) Authenticator" msgstr "Autenticador SAML (v2.0)" -#: auths/SAML_enterprise/saml.py:130 +#: auths/SAML_enterprise/saml.py:118 msgid "Private key" msgstr "Clau privada" -#: auths/SAML_enterprise/saml.py:133 +#: auths/SAML_enterprise/saml.py:121 msgid "" "Private key used for sign and encription, as generated in base 64 from " "openssl" @@ -1727,15 +1784,15 @@ msgstr "" "Clau privada utilitzada per a signar i encriptar, generada en base 64 des " "d'OPENSSL" -#: auths/SAML_enterprise/saml.py:136 auths/SAML_enterprise/saml.py:147 +#: auths/SAML_enterprise/saml.py:124 auths/SAML_enterprise/saml.py:135 msgid "Certificates" msgstr "Certificats" -#: auths/SAML_enterprise/saml.py:141 transports/SPICE/spice_base.py:83 +#: auths/SAML_enterprise/saml.py:129 transports/SPICE/spice_base.py:83 msgid "Certificate" msgstr "Certificat" -#: auths/SAML_enterprise/saml.py:144 +#: auths/SAML_enterprise/saml.py:132 msgid "" "Public key used for sign and encription (public part of previous private " "key), as generated in base 64 from openssl" @@ -1743,60 +1800,82 @@ msgstr "" "Clau pública utilitzada per a signar i encriptar (part pública de la clau " "privada anterior), generada en base 64 des d'OPENSSL" -#: auths/SAML_enterprise/saml.py:152 +#: auths/SAML_enterprise/saml.py:140 msgid "IDP Metadata" msgstr "Metadades IDP" -#: auths/SAML_enterprise/saml.py:155 +#: auths/SAML_enterprise/saml.py:143 msgid "" "You can enter here the URL or the IDP metadata or the metadata itself (xml)" msgstr "" "Podeu posar aquí l'URL o les metadades IDP o les mateixes metadades (xml)" -#: auths/SAML_enterprise/saml.py:158 auths/SAML_enterprise/saml.py:167 +#: auths/SAML_enterprise/saml.py:146 auths/SAML_enterprise/saml.py:155 msgid "Metadata" msgstr "Metadades" -#: auths/SAML_enterprise/saml.py:162 +#: auths/SAML_enterprise/saml.py:150 msgid "Entity ID" msgstr "ID de l'entitat" -#: auths/SAML_enterprise/saml.py:165 +#: auths/SAML_enterprise/saml.py:153 msgid "ID of the SP. If left blank, this will be autogenerated from server URL" msgstr "" "ID del SP. Si es deixa en blanc, es generarà automàticament des del servidor " "URL" -#: auths/SAML_enterprise/saml.py:173 +#: auths/SAML_enterprise/saml.py:161 msgid "User name attrs" msgstr "Atributs de nom d'usuari" -#: auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:163 msgid "Fields from where to extract user name" msgstr "Camps d'on obtenir el nom d'usuari" -#: auths/SAML_enterprise/saml.py:177 auths/SAML_enterprise/saml.py:187 -#: auths/SAML_enterprise/saml.py:197 +#: auths/SAML_enterprise/saml.py:165 auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:185 msgid "Attributes" msgstr "Atributs" -#: auths/SAML_enterprise/saml.py:183 +#: auths/SAML_enterprise/saml.py:171 msgid "Group name attrs" msgstr "Atributs de Nom de grup" -#: auths/SAML_enterprise/saml.py:185 +#: auths/SAML_enterprise/saml.py:173 msgid "Fields from where to extract the groups" msgstr "Camps d'on obtenir els grups" -#: auths/SAML_enterprise/saml.py:193 +#: auths/SAML_enterprise/saml.py:181 msgid "Real name attrs" msgstr "Atributs de Nom real" -#: auths/SAML_enterprise/saml.py:195 +#: auths/SAML_enterprise/saml.py:183 msgid "Fields from where to extract the real name" msgstr "Camps d'on obtenir el nom real" +#: auths/SAML_enterprise/saml.py:189 +msgid "Global logout" +msgstr "Tancament de sessió global" + +#: auths/SAML_enterprise/saml.py:192 +msgid "If set, logout from UDS will trigger SAML logout" +msgstr "Si s'estableix, la sessió d'UDS activarà la sortida de SAML" + +#: auths/SAML_enterprise/saml.py:197 +msgid "ADFS compatibility" +msgstr "Compatibilitat ADFS" + +#: auths/SAML_enterprise/saml.py:200 +msgid "If set, enable lowercase url encoding so ADFS can work correctly" +msgstr "" +"Si s'estableix, activeu la codificació d'URL en minúscules perquè " +"ADFS pugui funcionar correctament" + #: auths/SAML_enterprise/saml.py:231 +msgid "This kind of Authenticator does not support white spaces on field NAME" +msgstr "Aquest tipus d'autenticador no admet espais en blanc al camp NOM" + +#: auths/SAML_enterprise/saml.py:245 msgid "" "Server certificate should be a valid PEM (PEM certificates starts with -----" "BEGIN CERTIFICATE-----)" @@ -1804,11 +1883,11 @@ msgstr "" "El certificat del servidor ha de ser PEM vàlid (els certificats PEM comencen " "amb -----BEGIN CERTIFICATE-----)" -#: auths/SAML_enterprise/saml.py:239 +#: auths/SAML_enterprise/saml.py:253 msgid "Invalid server certificate. " msgstr "Certificat de servidor no vàlid" -#: auths/SAML_enterprise/saml.py:250 +#: auths/SAML_enterprise/saml.py:264 msgid "" "Private key should be a valid PEM (PEM private keys starts with -----BEGIN " "RSA PRIVATE KEY-----" @@ -1816,27 +1895,47 @@ msgstr "" "La clau privada ha de ser PEM vàlida (les claus privades PEM comencen amb " "-----BEGIN RSA PRIVATE KEY-----)" -#: auths/SAML_enterprise/saml.py:258 +#: auths/SAML_enterprise/saml.py:272 msgid "Invalid private key. " msgstr "Clau privada incorrecta." -#: auths/SAML_enterprise/saml.py:277 +#: auths/SAML_enterprise/saml.py:291 #, python-brace-format msgid "Can't fetch url {0}: {1}" msgstr "No es por extreure URL {0}: {1}" -#: auths/SAML_enterprise/saml.py:288 +#: auths/SAML_enterprise/saml.py:302 msgid " (obtained from URL)" msgstr " (obtingut de l'URL)" -#: auths/SAML_enterprise/saml.py:290 +#: auths/SAML_enterprise/saml.py:304 msgid "XML does not seem valid for IDP Metadata " msgstr "El XML no sembla vàlid per a metadades IDP" -#: auths/SAML_enterprise/saml.py:312 +#: auths/SAML_enterprise/saml.py:357 msgid "Can't access idp metadata" msgstr "No es pot accedir a les metadades IDP" +#: auths/SAML_enterprise/saml.py:424 +msgid "Error validating SP metadata: " +msgstr "Error en validar les metadades de SP:" + +#: auths/SAML_enterprise/saml.py:528 +msgid "Error processing SLO: " +msgstr "Error en processar SLO:" + +#: auths/SAML_enterprise/saml.py:558 +msgid "Error processing SAML response: " +msgstr "Error en processar la resposta SAML:" + +#: auths/SAML_enterprise/saml.py:571 +msgid "SAML response not authenticated" +msgstr "La resposta SAML no s'ha autenticat" + +#: auths/SAML_enterprise/saml.py:598 +msgid "No attributes returned from IdP" +msgstr "No s'ha retornat cap atribut d'IdP" + #: auths/Sample/SampleAuth.py:79 msgid "Sample Authenticator" msgstr "Autenticador d'exemple" @@ -1932,11 +2031,11 @@ msgstr "" msgid "Can't locate any group with the membership attribute specified" msgstr "No es pot localitzar cap grup amb l’atribut de membres especificat" -#: core/auths/auth.py:110 +#: core/auths/auth.py:111 msgid "System Administrator" msgstr "Administrador del sistema" -#: core/auths/auth.py:150 +#: core/auths/auth.py:155 msgid "Forbidden" msgstr "Prohibit" @@ -1971,19 +2070,19 @@ msgstr "No es pot anul·lar una publicació que no es pot utilitzar" msgid "Can't unpublish publications with services in process" msgstr "No es poden anul·lar publicacions amb serveis en procés" -#: core/managers/user_service.py:337 +#: core/managers/user_service.py:348 msgid "Can't remove a non active element" msgstr "No es pot eliminar un element no actiu" -#: core/managers/user_service.py:363 +#: core/managers/user_service.py:374 msgid "Can't remove nor cancel {} cause its state don't allow it" msgstr "No es pot eliminar ni cancel·lar {} perquè el seu estat no ho permet" -#: core/managers/user_service.py:395 +#: core/managers/user_service.py:406 msgid "The requested service is restrained" msgstr "El servei sol·licitat està restringit" -#: core/managers/user_service.py:761 web/util/errors.py:81 +#: core/managers/user_service.py:770 web/util/errors.py:83 msgid "" "Invalid service. The service is not available at this moment. Please, try " "later" @@ -1991,14 +2090,22 @@ msgstr "" "Servei no vàlid. El servei no està disponible ara mateix. Si us plau, " "intenteu-ho més tard" -#: core/managers/user_service.py:798 +#: core/managers/user_service.py:807 msgid "The requested transport {} is not valid for {}" msgstr "El transport sol·licitat {} no és vàlid per a {}" -#: core/managers/user_service.py:1078 +#: core/managers/user_service.py:1084 msgid "The service is not accessible from this device" msgstr "El servei no és accessible des d'aquest dispositiu" +#: core/mfas/mfa.py:60 core/mfas/mfa.py:72 +msgid "Base MFA" +msgstr "Base MFA" + +#: core/mfas/mfa.py:184 +msgid "Invalid MFA code" +msgstr "Codi MFA no vàlid" + #: core/module.py:215 msgid "No connection checking method is implemented." msgstr "No s'ha implementat cap mètode per a comprovar la connexió" @@ -2043,14 +2150,6 @@ msgstr "S'ha imprès el {now:%Y,% b%, %d} a les {now:%H:%M}" msgid "Base Service" msgstr "Servei base" -#: core/services/service.py:143 core/services/service.py:154 -#: models/permissions.py:92 models/permissions.py:96 -#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 -#: services/Proxmox/service.py:208 services/Sample/service.py:100 -#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 -msgid "None" -msgstr "Cap" - #: core/transports/transport.py:52 msgid "Direct" msgstr "Directe" @@ -2175,23 +2274,23 @@ msgstr "Usuaris amb serveis" msgid "Cached" msgstr "A la memòria cau" -#: core/util/tools.py:152 +#: core/util/tools.py:155 msgid "{} days {:d}:{:02d}:{:02d}" msgstr "{} dies {: d}: {: 02d}: {: 02d}" -#: core/util/tools.py:171 +#: core/util/tools.py:174 msgid "The basename is not a valid for a hostname" msgstr "El nom base no és vàlid per a un nom de host" -#: core/util/tools.py:176 +#: core/util/tools.py:179 msgid "The length of basename plus length must be greater than 0" msgstr "La llargada del nom base més la llargada ha de ser superior a 0" -#: core/util/tools.py:181 +#: core/util/tools.py:184 msgid "The length of basename plus length must not be greater than 15" msgstr "La llargada del nom base més la llargada no pot ser superior a 15" -#: core/util/tools.py:186 +#: core/util/tools.py:189 msgid "The machine name can't be only numbers" msgstr "El nom de màquina no pot contenir només valors numèrics" @@ -2222,7 +2321,11 @@ msgstr "{} supera la llargada màxima del nom de host." msgid "{} is not a valid hostname" msgstr "{} no és un nom de host vàlid" -#: core/util/validators.py:152 +#: core/util/validators.py:131 +msgid "{} is not a valid host:port pair" +msgstr "{} no és un parell host:port vàlid" + +#: core/util/validators.py:168 msgid "" "Invalid mac range. Mac range must be in format XX:XX:XX:XX:XX:XX-XX:XX:XX:XX:" "XX:XX" @@ -2230,67 +2333,353 @@ msgstr "" "Rang mac no vàlid. El format del rang mac ha de ser XX:XX:XX:XX:XX:XX-XX:XX:" "XX:XX:XX:XX" -#: dispatchers/wyse_enterprise/views.py:118 +#: core/util/validators.py:182 +msgid "Email address is too long" +msgstr "L'adreça electrònica és massa llarga" + +#: core/util/validators.py:187 +msgid "Email address is not valid" +msgstr "L'adreça de correu electrònic no és vàlida" + +#: dispatchers/wyse_enterprise/views.py:119 msgid "There are no authenticators available for login" msgstr "No hi ha autenticadors disponibles per a iniciar sessió" -#: dispatchers/wyse_enterprise/views.py:138 +#: dispatchers/wyse_enterprise/views.py:139 #, python-brace-format msgid "The authenticator {0} is not usable" msgstr "L'autenticador {0} no es pot utilitzar" -#: dispatchers/wyse_enterprise/views.py:145 +#: dispatchers/wyse_enterprise/views.py:146 msgid "Invalid credentials" msgstr "Credencials no vàlides" -#: dispatchers/wyse_enterprise/views.py:152 +#: dispatchers/wyse_enterprise/views.py:153 #, python-brace-format msgid "The domain {0} does not exists" msgstr "El domini {0} no existeix" -#: dispatchers/wyse_enterprise/views.py:228 +#: dispatchers/wyse_enterprise/views.py:229 msgid "No services available" msgstr "No hi ha serveis disponibles" -#: dispatchers/wyse_enterprise/views.py:244 -#: dispatchers/wyse_enterprise/views.py:344 +#: dispatchers/wyse_enterprise/views.py:245 +#: dispatchers/wyse_enterprise/views.py:345 msgid "Invalid session" msgstr "Sessió no vàlida" -#: dispatchers/wyse_enterprise/views.py:248 -#: dispatchers/wyse_enterprise/views.py:348 +#: dispatchers/wyse_enterprise/views.py:249 +#: dispatchers/wyse_enterprise/views.py:349 msgid "Invalid authorization" msgstr "Autorització no vàlida" -#: dispatchers/wyse_enterprise/views.py:259 -#: dispatchers/wyse_enterprise/views.py:354 +#: dispatchers/wyse_enterprise/views.py:260 +#: dispatchers/wyse_enterprise/views.py:355 msgid "Invalid request" msgstr "Petició no vàlida" -#: dispatchers/wyse_enterprise/views.py:262 -#: dispatchers/wyse_enterprise/views.py:357 +#: dispatchers/wyse_enterprise/views.py:263 +#: dispatchers/wyse_enterprise/views.py:358 msgid "Invalid credentials used" msgstr "Credencials utilitzades no vàlides" -#: dispatchers/wyse_enterprise/views.py:277 web/util/errors.py:78 +#: dispatchers/wyse_enterprise/views.py:278 web/util/errors.py:80 msgid "Service not found" msgstr "Servei no trobat" -#: dispatchers/wyse_enterprise/views.py:281 +#: dispatchers/wyse_enterprise/views.py:282 msgid "Invalid machine uuid." msgstr "Uuid de màquina no vàlid." -#: dispatchers/wyse_enterprise/views.py:295 web/util/errors.py:77 +#: dispatchers/wyse_enterprise/views.py:296 web/util/errors.py:79 msgid "Transport not found" msgstr "Transport no trobat" -#: dispatchers/wyse_enterprise/views.py:300 -#: dispatchers/wyse_enterprise/views.py:308 -#: dispatchers/wyse_enterprise/views.py:315 +#: dispatchers/wyse_enterprise/views.py:301 +#: dispatchers/wyse_enterprise/views.py:309 +#: dispatchers/wyse_enterprise/views.py:316 msgid "Service not ready at this moment. Please, try again in a while." msgstr "" "Servei no disponible en aquest moment. Si us plau, intenteu-ho més tard." +#: mfas/Email/mfa.py:22 +msgid "Email Multi Factor" +msgstr "Correu electrònic multifactor" + +#: mfas/Email/mfa.py:24 +msgid "Email Multi Factor Authenticator" +msgstr "Correu electrònic Multifactor Authenticator" + +#: mfas/Email/mfa.py:29 +msgid "SMTP Host" +msgstr "Amfitrió SMTP" + +#: mfas/Email/mfa.py:32 +msgid "" +"SMTP Server hostname or IP address. If you are using a non-standard port, " +"add it after a colon, for example: smtp.gmail.com:587" +msgstr "" +"Nom d'amfitrió del servidor SMTP o adreça IP. Si utilitzeu un port no " +"estàndard, afegiu-lo després de dos punts, per exemple: smtp.gmail.com:587" + +#: mfas/Email/mfa.py:37 mfas/Email/mfa.py:50 mfas/Email/mfa.py:59 +#: mfas/Email/mfa.py:68 +msgid "SMTP Server" +msgstr "Servidor SMTP" + +#: mfas/Email/mfa.py:41 transports/HTML5RDP/html5rdp.py:268 +#: transports/HTML5RDS_enterprise/html5rds.py:255 +msgid "Security" +msgstr "Seguretat" + +#: mfas/Email/mfa.py:42 +msgid "Security protocol to use" +msgstr "Protocol de seguretat a utilitzar" + +#: mfas/Email/mfa.py:44 +msgid "TLS" +msgstr "TLS" + +#: mfas/Email/mfa.py:45 +msgid "SSL" +msgstr "SSL" + +#: mfas/Email/mfa.py:56 +msgid "User with access to SMTP server" +msgstr "Usuari amb accés al servidor SMTP" + +#: mfas/Email/mfa.py:65 +msgid "Password of the user with access to SMTP server" +msgstr "Contrasenya de l'usuari amb accés al servidor SMTP" + +#: mfas/Email/mfa.py:74 +msgid "Subject" +msgstr "Assignatura" + +#: mfas/Email/mfa.py:76 +msgid "Subject of the email" +msgstr "Assumpte del correu electrònic" + +#: mfas/Email/mfa.py:78 mfas/Email/mfa.py:87 mfas/Email/mfa.py:95 +msgid "Config" +msgstr "Config" + +#: mfas/Email/mfa.py:83 +msgid "From Email" +msgstr "Des del correu electrònic" + +#: mfas/Email/mfa.py:85 +msgid "Email address that will be used as sender" +msgstr "Adreça de correu electrònic que s'utilitzarà com a remitent" + +#: mfas/Email/mfa.py:91 +msgid "Enable HTML" +msgstr "Activa HTML" + +#: mfas/Email/mfa.py:93 +msgid "Enable HTML in emails" +msgstr "Activa l'HTML als correus electrònics" + +#: mfas/Email/mfa.py:110 +msgid "Invalid SMTP hostname" +msgstr "Nom d'amfitrió SMTP no vàlid" + +#: mfas/SMS/mfa.py:19 +msgid "SMS Thought HTTP" +msgstr "SMS Pensat HTTP" + +#: mfas/SMS/mfa.py:21 +msgid "Simple SMS sending MFA using HTTP" +msgstr "SMS senzill que envia MFA mitjançant HTTP" + +#: mfas/SMS/mfa.py:26 +msgid "URL pattern for SMS sending" +msgstr "Patró d'URL per enviar SMS" + +#: mfas/SMS/mfa.py:29 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"URL pattern for SMS sending. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"Patró d'URL per enviar SMS. Pot contenir les variables següents: * {code}" +" - el codi a enviar * {telèfon/+telèfon} - el número de telèfon * {username} " +"- el nom d'usuari * {justUsername} - el nom d'usuari sense @...." + +#: mfas/SMS/mfa.py:37 mfas/SMS/mfa.py:43 mfas/SMS/mfa.py:56 mfas/SMS/mfa.py:75 +#: mfas/SMS/mfa.py:92 mfas/SMS/mfa.py:101 +msgid "HTTP Server" +msgstr "Servidor HTTP" + +#: mfas/SMS/mfa.py:41 +msgid "Ignore certificate errors" +msgstr "Ignora els errors del certificat" + +#: mfas/SMS/mfa.py:46 +msgid "" +"If checked, the server certificate will be ignored. This is useful if the " +"server uses a self-signed certificate." +msgstr "" +"Si està marcat, el certificat del servidor s'ignorarà. Això és útil si " +"el servidor utilitza un certificat autofirmat." + +#: mfas/SMS/mfa.py:52 +msgid "SMS sending method" +msgstr "Mètode d'enviament de SMS" + +#: mfas/SMS/mfa.py:54 mfas/SMS/mfa.py:108 +msgid "Method for sending SMS" +msgstr "Mètode per enviar SMS" + +#: mfas/SMS/mfa.py:63 +msgid "Headers for SMS requests" +msgstr "Capçaleres per a sol·licituds d'SMS" + +#: mfas/SMS/mfa.py:66 +msgid "" +"Headers for SMS requests. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @....\n" +"Headers are in the form of \"Header: Value\". (without the quotes)" +msgstr "" +"Capçaleres per a sol·licituds d'SMS. Pot contenir les variables " +"següents: * {codi} - el codi a enviar * {telèfon/+telèfon} - el número de " +"telèfon * {username} - el nom d'usuari * {justUsername} - el nom d'" +"usuari sense @.... Les capçaleres estan a la forma de \"Encapçalament: valor" +"\". (sense cometes)" + +#: mfas/SMS/mfa.py:81 +msgid "Parameters for SMS POST/PUT sending" +msgstr "Paràmetres per a l'enviament de SMS POST/PUT" + +#: mfas/SMS/mfa.py:84 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"Parameters for SMS sending via POST/PUT. It can contain the following " +"variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"Paràmetres per a l'enviament de SMS via POST/PUT. Pot contenir les " +"variables següents: * {code} - el codi a enviar * {telèfon/+telèfon} - el " +"número de telèfon * {username} - el nom d'usuari * {justUsername} - el " +"nom d'usuari sense @...." + +#: mfas/SMS/mfa.py:96 +msgid "SMS encoding" +msgstr "Codificació de SMS" + +#: mfas/SMS/mfa.py:99 +msgid "Encoding for SMS" +msgstr "Codificació per a SMS" + +#: mfas/SMS/mfa.py:106 +msgid "SMS authentication method" +msgstr "Mètode d'autenticació per SMS" + +#: mfas/SMS/mfa.py:110 mfas/SMS/mfa.py:124 mfas/SMS/mfa.py:133 +msgid "HTTP Authentication" +msgstr "Autenticació HTTP" + +#: mfas/SMS/mfa.py:113 +msgid "HTTP Basic Auth" +msgstr "Autenticació bàsica HTTP" + +#: mfas/SMS/mfa.py:114 +msgid "HTTP Digest Auth" +msgstr "HTTP Digest Auth" + +#: mfas/SMS/mfa.py:120 +msgid "SMS authentication user or token" +msgstr "Usuari o testimoni d'autenticació per SMS" + +#: mfas/SMS/mfa.py:122 +msgid "User or token for SMS authentication" +msgstr "Usuari o testimoni per a l'autenticació per SMS" + +#: mfas/SMS/mfa.py:129 +msgid "SMS authentication password" +msgstr "Contrasenya d'autenticació per SMS" + +#: mfas/SMS/mfa.py:131 +msgid "Password for SMS authentication" +msgstr "Contrasenya per a l'autenticació per SMS" + +#: mfas/SMS/mfa.py:138 +msgid "SMS response OK regex" +msgstr "Resposta d'SMS OK regex" + +#: mfas/SMS/mfa.py:141 +msgid "" +"Regex for SMS response OK. If emty, the response is considered OK if status " +"code is 200." +msgstr "" +"Regex per a la resposta d'SMS OK. Si està buida, la resposta es " +"considera correcta si el codi d'estat és 200." + +#: mfas/SMS/mfa.py:144 mfas/SMS/mfa.py:153 +msgid "HTTP Response" +msgstr "Resposta HTTP" + +#: mfas/SMS/mfa.py:148 +msgid "SMS response error action" +msgstr "Acció d'error de resposta SMS" + +#: mfas/SMS/mfa.py:151 +msgid "Action for SMS response error" +msgstr "Acció per error de resposta SMS" + +#: mfas/SMS/mfa.py:155 +msgid "Allow user log in without MFA" +msgstr "Permet que l'usuari iniciï sessió sense MFA" + +#: mfas/SMS/mfa.py:156 +msgid "Deny user log in" +msgstr "Denegueu l'inici de sessió de l'usuari" + +#: mfas/SMS/mfa.py:199 +msgid "SMS sending failed" +msgstr "S'ha produït un error en l'enviament de SMS" + +#: mfas/SMS/mfa.py:263 web/views/modern.py:275 +msgid "MFA Code" +msgstr "Codi MFA" + +#: mfas/Sample/mfa.py:16 +msgid "Sample Multi Factor" +msgstr "Mostra de múltiples factors" + +#: mfas/Sample/mfa.py:18 +msgid "Sample Multi Factor Authenticator" +msgstr "Exemple d'autenticador de múltiples factors" + +#: mfas/Sample/mfa.py:22 +msgid "Sample useless field" +msgstr "Camp inútil de mostra" + +#: mfas/Sample/mfa.py:25 +msgid "This is a useless field, for sample and testing pourposes" +msgstr "Aquest és un camp inútil, per a mostres i proves" + #: models/calendar_action.py:63 msgid "Publish" msgstr "Publicar" @@ -2848,7 +3237,7 @@ msgid "Service pool for report" msgstr "Pool de servei per a l'informe" #: reports/auto/fields.py:104 reports/lists/users.py:61 -#: web/forms/LoginForm.py:50 +#: web/forms/LoginForm.py:51 msgid "Authenticator" msgstr "Autenticador" @@ -2900,11 +3289,11 @@ msgstr "ID d'usuari" msgid "Real Name" msgstr "Nom real" -#: reports/stats/auth_stats.py:58 +#: reports/stats/auth_stats.py:59 msgid "Statistics by authenticator" msgstr "Estadístiques per autenticador" -#: reports/stats/auth_stats.py:60 +#: reports/stats/auth_stats.py:61 msgid "" "Generates a report with the statistics of an authenticator for a desired " "period" @@ -2912,14 +3301,14 @@ msgstr "" "Generar un informe amb les estadístiques d’un autenticador del període " "desitjat" -#: reports/stats/auth_stats.py:136 reports/stats/usage_by_pool.py:146 +#: reports/stats/auth_stats.py:123 reports/stats/usage_by_pool.py:146 #: templates/uds/reports/stats/authenticator_stats.html:4 #: templates/uds/reports/stats/usage-by-pool.html:4 #: templates/uds/reports/stats/usage-by-pool.html:6 msgid "Users usage list" msgstr "Llista d’ús d’usuaris" -#: reports/stats/auth_stats.py:137 reports/stats/usage_by_pool.py:147 +#: reports/stats/auth_stats.py:124 reports/stats/usage_by_pool.py:147 msgid "UDS Report of users usage" msgstr "Informe UDS d’ús d’usuaris" @@ -2992,30 +3381,26 @@ msgstr "Nombre d’intervals" msgid "Number of sampling points used in charts" msgstr "Nombre de punts de mostra utilitzats a les gràfiques" -#: reports/stats/pools_performance.py:128 -msgid "Select at least a service pool for the report" -msgstr "Seleccioneu al menys un pool de servei per a l'informe" - -#: reports/stats/pools_performance.py:211 +#: reports/stats/pools_performance.py:194 msgid "Distinct Users" msgstr "Usuaris distints" -#: reports/stats/pools_performance.py:230 -#: reports/stats/pools_performance.py:242 -#: reports/stats/pools_performance.py:287 +#: reports/stats/pools_performance.py:213 +#: reports/stats/pools_performance.py:225 +#: reports/stats/pools_performance.py:270 #: templates/uds/reports/stats/pools-performance.html:36 msgid "Accesses" msgstr "Accessos" -#: reports/stats/pools_performance.py:258 +#: reports/stats/pools_performance.py:241 msgid "UDS Pools Performance Report" msgstr "Informe de rendiment de pools UDS" -#: reports/stats/pools_performance.py:259 +#: reports/stats/pools_performance.py:242 msgid "Pools Performance" msgstr "Rendiment dels pools" -#: reports/stats/pools_performance.py:285 reports/stats/user_access.py:297 +#: reports/stats/pools_performance.py:268 reports/stats/user_access.py:282 #: templates/uds/reports/stats/pools-performance.html:34 #: templates/uds/reports/stats/user-access.html:34 msgid "Date range" @@ -3029,21 +3414,21 @@ msgstr "Ús de pools en un dia" msgid "Pools usage counters for an specific day" msgstr "Comptadors d'ús de pools un dia específic" -#: reports/stats/pools_usage_day.py:128 +#: reports/stats/pools_usage_day.py:126 msgid "Services by hour" msgstr "Serveis per hora" -#: reports/stats/pools_usage_day.py:133 reports/stats/pools_usage_day.py:171 -#: reports/stats/user_access.py:228 reports/stats/user_access.py:240 +#: reports/stats/pools_usage_day.py:131 reports/stats/pools_usage_day.py:169 +#: reports/stats/user_access.py:213 reports/stats/user_access.py:225 #: templates/uds/reports/stats/pools-usage-day.html:28 msgid "Hour" msgstr "Hora" -#: reports/stats/pools_usage_day.py:152 +#: reports/stats/pools_usage_day.py:150 msgid "Services usage report for a day" msgstr "Informe d'ús dels serveis durant un dia" -#: reports/stats/pools_usage_day.py:153 +#: reports/stats/pools_usage_day.py:151 msgid "Service usage report" msgstr "Informe d'ús del servei" @@ -3111,63 +3496,63 @@ msgstr "TOTS ELS POOLS" msgid "Seconds" msgstr "Segons" -#: reports/stats/user_access.py:59 reports/stats/user_access.py:281 +#: reports/stats/user_access.py:59 reports/stats/user_access.py:266 msgid "Users access report by date" msgstr "Informe d'accés d'usuaris per data" -#: reports/stats/user_access.py:60 reports/stats/user_access.py:282 +#: reports/stats/user_access.py:60 reports/stats/user_access.py:267 msgid "Report of user access to platform by date" msgstr "Informe d'accés d'usuari a la plataforma per data" -#: reports/stats/user_access.py:186 +#: reports/stats/user_access.py:171 msgid "Users Access (global)" msgstr "Accés d'usuaris (global)" -#: reports/stats/user_access.py:206 +#: reports/stats/user_access.py:191 msgid "Users Access (by week)" msgstr "Accés d'usuaris (setmanal)" -#: reports/stats/user_access.py:209 reports/stats/user_access.py:245 +#: reports/stats/user_access.py:194 reports/stats/user_access.py:230 msgid "Monday" msgstr "Dilluns" -#: reports/stats/user_access.py:210 reports/stats/user_access.py:246 +#: reports/stats/user_access.py:195 reports/stats/user_access.py:231 msgid "Tuesday" msgstr "Dimarts" -#: reports/stats/user_access.py:211 reports/stats/user_access.py:247 +#: reports/stats/user_access.py:196 reports/stats/user_access.py:232 msgid "Wednesday" msgstr "Dimecres" -#: reports/stats/user_access.py:212 reports/stats/user_access.py:248 +#: reports/stats/user_access.py:197 reports/stats/user_access.py:233 msgid "Thursday" msgstr "Dijous" -#: reports/stats/user_access.py:213 reports/stats/user_access.py:249 +#: reports/stats/user_access.py:198 reports/stats/user_access.py:234 msgid "Friday" msgstr "Divendres" -#: reports/stats/user_access.py:214 reports/stats/user_access.py:250 +#: reports/stats/user_access.py:199 reports/stats/user_access.py:235 msgid "Saturday" msgstr "Dissabte" -#: reports/stats/user_access.py:215 reports/stats/user_access.py:251 +#: reports/stats/user_access.py:200 reports/stats/user_access.py:236 msgid "Sunday" msgstr "Diumenge" -#: reports/stats/user_access.py:217 reports/stats/user_access.py:243 +#: reports/stats/user_access.py:202 reports/stats/user_access.py:228 msgid "Day of week" msgstr "Dia de la setmana" -#: reports/stats/user_access.py:226 reports/stats/user_access.py:238 +#: reports/stats/user_access.py:211 reports/stats/user_access.py:223 msgid "Users Access (by hour)" msgstr "Accés d'usuaris (per hora)" -#: reports/stats/user_access.py:267 +#: reports/stats/user_access.py:252 msgid "Users access to UDS" msgstr "Accés d'usuaris a UDS" -#: reports/stats/user_access.py:268 +#: reports/stats/user_access.py:253 msgid "UDS Report for users access" msgstr "Informe UDS d'accés d'usuaris" @@ -4422,12 +4807,12 @@ msgstr "Proveïdor de màquines amb IP estàtica" msgid "Provides connection to machines by IP" msgstr "Proporciona connexió a màquines mitjançant IP" -#: services/PhysicalMachines/service_multi.py:64 +#: services/PhysicalMachines/service_multi.py:62 #: services/Vmware_enterprise/service_fixed.py:55 msgid "Service Token" msgstr "Token de servei" -#: services/PhysicalMachines/service_multi.py:67 +#: services/PhysicalMachines/service_multi.py:65 #: services/Vmware_enterprise/service_fixed.py:57 msgid "" "Service token that will be used by actors to communicate with service. Leave " @@ -4436,40 +4821,40 @@ msgstr "" "Token de servei que faran servir els actors per comunicar-se amb el servei. " "Deixeu-lo buit per a una assignació persistent." -#: services/PhysicalMachines/service_multi.py:75 +#: services/PhysicalMachines/service_multi.py:73 #: services/RDS_enterprise/provider.py:51 msgid "List of servers" msgstr "Llistat de servidors" -#: services/PhysicalMachines/service_multi.py:76 +#: services/PhysicalMachines/service_multi.py:74 msgid "List of servers available for this service" msgstr "Llistat de servidors disponibles per a aquest servei" -#: services/PhysicalMachines/service_multi.py:81 +#: services/PhysicalMachines/service_multi.py:79 msgid "Check Port" msgstr "Consultar Port" -#: services/PhysicalMachines/service_multi.py:85 +#: services/PhysicalMachines/service_multi.py:83 msgid "" "If non zero, only hosts responding to connection on that port will be served." msgstr "" "Si no és zero, només es donarà servei als hostes que responguin a la " "connexió en aquest port." -#: services/PhysicalMachines/service_multi.py:92 +#: services/PhysicalMachines/service_multi.py:90 msgid "Skip time" msgstr "Pasar el temps" -#: services/PhysicalMachines/service_multi.py:95 +#: services/PhysicalMachines/service_multi.py:93 msgid "If a host fails to check, skip it for this time (in minutes)." msgstr "" "Si falla la comprovació d'un host, ometeu-la durant aquest temps (en minuts)." -#: services/PhysicalMachines/service_multi.py:103 +#: services/PhysicalMachines/service_multi.py:101 msgid "Max session per machine" msgstr "Màxim de sessió per màquina" -#: services/PhysicalMachines/service_multi.py:107 +#: services/PhysicalMachines/service_multi.py:105 msgid "" "Maximum session duration before UDS thinks this machine got locked and " "releases it (hours). 0 means \"never\"." @@ -4477,25 +4862,25 @@ msgstr "" "Durada màxima de la sessió abans que UDS cregui que aquesta màquina està " "bloquejada i l'alliberi (en hores). 0 significa \"mai\"." -#: services/PhysicalMachines/service_multi.py:114 +#: services/PhysicalMachines/service_multi.py:112 msgid "Lock machine by external access" msgstr "Bloquejar la màquina per a accés extern" -#: services/PhysicalMachines/service_multi.py:115 +#: services/PhysicalMachines/service_multi.py:113 msgid "" "If checked, UDS will lock the machine if it is accesed from outside UDS." msgstr "" "Si està marcat, UDS bloquejarà la màquina si s’hi accedeix des de fora d'UDS." -#: services/PhysicalMachines/service_multi.py:122 +#: services/PhysicalMachines/service_multi.py:120 msgid "Static Multiple IP" msgstr "IP múltiple estàtica" -#: services/PhysicalMachines/service_multi.py:124 +#: services/PhysicalMachines/service_multi.py:122 msgid "This service provides access to POWERED-ON Machines by IP" msgstr "Aquest servei proporciona accés per IP a màquines engegades" -#: services/PhysicalMachines/service_multi.py:158 +#: services/PhysicalMachines/service_multi.py:156 msgid "Invalid value detected on servers list: \"{}\"" msgstr "S'ha detectat un valor no vàlid a la llista de servidors: \"{}\"" @@ -5400,47 +5785,47 @@ msgstr "Shadow" msgid "Shadow memory multiplier (use with care)" msgstr "Multiplicador de memòria \"shadow\" (utilitzeu amb compte)" -#: temp_for_locales.py:96 +#: temp_for_locales.py:99 msgid "Spanish" msgstr "Espanyol" -#: temp_for_locales.py:97 +#: temp_for_locales.py:100 msgid "English" msgstr "Anglès" -#: temp_for_locales.py:98 +#: temp_for_locales.py:101 msgid "French" msgstr "Francès" -#: temp_for_locales.py:99 +#: temp_for_locales.py:102 msgid "German" msgstr "Alemany" -#: temp_for_locales.py:100 +#: temp_for_locales.py:103 msgid "Portuguese" msgstr "Portuguès" -#: temp_for_locales.py:101 +#: temp_for_locales.py:104 msgid "Italian" msgstr "Italià" -#: temp_for_locales.py:102 +#: temp_for_locales.py:105 msgid "Basque" msgstr "Basc" -#: temp_for_locales.py:103 +#: temp_for_locales.py:106 msgid "Arabic" msgstr "Àrab" -#: temp_for_locales.py:104 +#: temp_for_locales.py:107 msgid "Russian" msgstr "Rus" -#: temp_for_locales.py:105 +#: temp_for_locales.py:108 msgid "Catalan" msgstr "Català" -#: temp_for_locales.py:106 +#: temp_for_locales.py:109 msgid "Chinese" msgstr "Xinès" @@ -5649,7 +6034,7 @@ msgstr "Mostrar el fons de pantalla" #: transports/HTML5RDP/html5rdp.py:134 #: transports/HTML5RDS_enterprise/html5rds.py:123 -#: transports/RDP/rdp_base.py:222 +#: transports/RDP/rdp_base.py:241 msgid "" "If checked, the wallpaper and themes will be shown on machine (better user " "experience, more bandwidth)" @@ -5659,19 +6044,19 @@ msgstr "" #: transports/HTML5RDP/html5rdp.py:139 #: transports/HTML5RDS_enterprise/html5rds.py:128 -#: transports/RDP/rdp_base.py:235 +#: transports/RDP/rdp_base.py:254 msgid "Allow Desk.Comp." msgstr "Permetre composició d'escriptori" #: transports/HTML5RDP/html5rdp.py:141 #: transports/HTML5RDS_enterprise/html5rds.py:130 -#: transports/RDP/rdp_base.py:237 +#: transports/RDP/rdp_base.py:256 msgid "If checked, desktop composition will be allowed" msgstr "Si està seleccionat, es permet la composició d'escriptori" #: transports/HTML5RDP/html5rdp.py:145 #: transports/HTML5RDS_enterprise/html5rds.py:134 -#: transports/RDP/rdp_base.py:241 transports/RDS_enterprise/rds_base.py:150 +#: transports/RDP/rdp_base.py:260 transports/RDS_enterprise/rds_base.py:150 msgid "Font Smoothing" msgstr "Suavització de fonts" @@ -5935,11 +6320,6 @@ msgstr "Forçar l'obertura de totes les connexions en una finestra nova." msgid "Override UDS window and replace it with the connection." msgstr "Substitueix la finestra d'UDS per la connexió." -#: transports/HTML5RDP/html5rdp.py:268 -#: transports/HTML5RDS_enterprise/html5rds.py:255 -msgid "Security" -msgstr "Seguretat" - #: transports/HTML5RDP/html5rdp.py:269 #: transports/HTML5RDS_enterprise/html5rds.py:256 msgid "Connection security mode for Guacamole RDP connection" @@ -5977,11 +6357,11 @@ msgstr "" msgid "TLS (Transport Security Layer encryption)" msgstr "TLS (xifrat de capa de seguretat de transport)" -#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:173 +#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:192 msgid "RDP Port" msgstr "Port RDP" -#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:174 +#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:193 msgid "Use this port as RDP port. Defaults to 3389." msgstr "Utilitzeu aquest port com a port RDP. Per defecte és el 3389." @@ -5999,13 +6379,13 @@ msgstr "" "Ruta personalitzada per al túnel Glyptodon Enterprise. (Vàlida només per al " "túnel Glyptodon Enterprise)" -#: transports/HTML5RDP/html5rdp.py:327 +#: transports/HTML5RDP/html5rdp.py:326 #: transports/HTML5RDS_enterprise/html5rds.py:296 #: transports/HTML5VNC/html5vnc.py:187 msgid "The server must be http or https" msgstr "El servidor ha de ser http o https" -#: transports/HTML5RDP/html5rdp.py:332 +#: transports/HTML5RDP/html5rdp.py:331 #: transports/HTML5RDS_enterprise/html5rds.py:301 msgid "" "Empty credentials (on Credentials tab) is only allowed with Security level " @@ -6046,7 +6426,7 @@ msgstr "Port del servidor VNC" msgid "Port of the VNC server." msgstr "Port del servidor VNC." -#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:205 +#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:224 #: transports/RDS_enterprise/rds_base.py:136 msgid "Color depth" msgstr "Profunditat de color" @@ -6102,12 +6482,12 @@ msgid "If checked, the connection will be opened in full screen mode" msgstr "Si està seleccionat, la connexió s'obrirà en mode de pantalla completa" #: transports/NICEDCV_enterprise/nicedcv_base.py:66 -#: transports/RDP/rdp_base.py:227 +#: transports/RDP/rdp_base.py:246 msgid "Multiple monitors" msgstr "Monitors múltiples" #: transports/NICEDCV_enterprise/nicedcv_base.py:69 -#: transports/RDP/rdp_base.py:230 +#: transports/RDP/rdp_base.py:249 msgid "" "If checked, all client monitors will be used for displaying (only works on " "windows clients)" @@ -6163,7 +6543,7 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcvtunnel.py:91 #: transports/NoMachine_enterprise/nomachine_tunneltransport.py:114 -#: transports/RDP/rdptunnel.py:135 transports/RDS_enterprise/rdstunnel.py:126 +#: transports/RDP/rdptunnel.py:136 transports/RDS_enterprise/rdstunnel.py:126 #: transports/SPICE/spice_tunnel.py:107 transports/X2GO/x2go_tunnel.py:116 msgid "Must use HOST:PORT in Tunnel Server Field" msgstr "Cal utilitzar HOST:PORT al camp Servidor de túnel" @@ -6306,92 +6686,100 @@ msgstr "Activar la càmera web" msgid "If checked, webcam will be redirected (ONLY Windows)." msgstr "Si està seleccionat, la càmera web es redirigirà (NOMÉS a Windows)." -#: transports/RDP/rdp_base.py:164 transports/RDS_enterprise/rds_base.py:128 +#: transports/RDP/rdp_base.py:164 +msgid "USB redirection" +msgstr "Redirecció USB" + +#: transports/RDP/rdp_base.py:166 +msgid "USB redirection policy" +msgstr "Política de redirecció USB" + +#: transports/RDP/rdp_base.py:183 transports/RDS_enterprise/rds_base.py:128 msgid "Credssp Support" msgstr "Support Credssp" -#: transports/RDP/rdp_base.py:166 transports/RDS_enterprise/rds_base.py:130 +#: transports/RDP/rdp_base.py:185 transports/RDS_enterprise/rds_base.py:130 msgid "If checked, will enable Credentials Provider Support)" msgstr "" "Si està seleccionat, s'habilitarà el suport de proveïdor de credencials" -#: transports/RDP/rdp_base.py:181 +#: transports/RDP/rdp_base.py:200 msgid "Screen Size" msgstr "Mida de pantalla" -#: transports/RDP/rdp_base.py:183 +#: transports/RDP/rdp_base.py:202 msgid "Screen size for this transport" msgstr "Mida de pantalla per a aquest transport" -#: transports/RDP/rdp_base.py:207 transports/RDS_enterprise/rds_base.py:138 +#: transports/RDP/rdp_base.py:226 transports/RDS_enterprise/rds_base.py:138 msgid "Color depth for this connection" msgstr "Profunditat de color per a aquesta connexió" -#: transports/RDP/rdp_base.py:219 +#: transports/RDP/rdp_base.py:238 msgid "Wallpaper/theme" msgstr "Fons de pantalla/tema" -#: transports/RDP/rdp_base.py:244 +#: transports/RDP/rdp_base.py:263 msgid "If checked, fonts smoothing will be allowed" msgstr "Si està seleccionat, es permet la suavització de fonts." -#: transports/RDP/rdp_base.py:248 +#: transports/RDP/rdp_base.py:267 msgid "Connection Bar" msgstr "Barra de connexió" -#: transports/RDP/rdp_base.py:250 +#: transports/RDP/rdp_base.py:269 msgid "If checked, connection bar will be shown (only on Windows clients)" msgstr "" "Si està seleccionat, es mostrarà la barra de connexió (només a clients " "Windows)" -#: transports/RDP/rdp_base.py:256 transports/RDS_enterprise/rds_base.py:181 +#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:181 msgid "Multimedia sync" msgstr "Sincronització multimèdia" -#: transports/RDP/rdp_base.py:259 transports/RDS_enterprise/rds_base.py:184 +#: transports/RDP/rdp_base.py:278 transports/RDS_enterprise/rds_base.py:184 msgid "If checked. Linux client will use multimedia parameter for xfreerdp" msgstr "" "Si està seleccionat, el client Linux utilitzarà el paràmetre multimèdia per " "a xfreerdp" -#: transports/RDP/rdp_base.py:264 transports/RDS_enterprise/rds_base.py:189 +#: transports/RDP/rdp_base.py:283 transports/RDS_enterprise/rds_base.py:189 msgid "Use Alsa" msgstr "Utilitzar ALSA" -#: transports/RDP/rdp_base.py:267 transports/RDS_enterprise/rds_base.py:192 +#: transports/RDP/rdp_base.py:286 transports/RDS_enterprise/rds_base.py:192 msgid "" "If checked, Linux client will try to use ALSA, otherwise Pulse will be used" msgstr "" "Si està seleccionat, el client Linux intentarà utilitzar ALSA, d'altra " "manera s'utilitzarà PULSE" -#: transports/RDP/rdp_base.py:272 transports/RDS_enterprise/rds_base.py:197 +#: transports/RDP/rdp_base.py:291 transports/RDS_enterprise/rds_base.py:197 msgid "Printer string" msgstr "Cadena d'impressora" -#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:200 +#: transports/RDP/rdp_base.py:294 transports/RDS_enterprise/rds_base.py:200 msgid "If printer is checked, the printer string used with xfreerdp client" msgstr "" "Si Impressora està seleccionat, la cadena d'impressora utilitzada amb el " "client xfreerdp" -#: transports/RDP/rdp_base.py:281 transports/RDS_enterprise/rds_base.py:206 +#: transports/RDP/rdp_base.py:300 transports/RDS_enterprise/rds_base.py:206 msgid "Smartcard string" msgstr "Cadena de targeta intel·ligent" -#: transports/RDP/rdp_base.py:284 transports/RDS_enterprise/rds_base.py:209 +#: transports/RDP/rdp_base.py:303 transports/RDS_enterprise/rds_base.py:209 msgid "If smartcard is checked, the smartcard string used with xfreerdp client" msgstr "" "Si Targeta intel·ligent està seleccionat, la cadena de targeta intel·ligent " "utilitzada amb el client xfreerdp" -#: transports/RDP/rdp_base.py:290 transports/RDP/rdp_base.py:310 +#: transports/RDP/rdp_base.py:309 transports/RDP/rdp_base.py:329 #: transports/RDS_enterprise/rds_base.py:215 msgid "Custom parameters" msgstr "Paràmetres personalitzats" -#: transports/RDP/rdp_base.py:293 transports/RDS_enterprise/rds_base.py:218 +#: transports/RDP/rdp_base.py:312 transports/RDS_enterprise/rds_base.py:218 msgid "" "If not empty, extra parameter to include for Linux Client (for example /usb:" "id,dev:054c:0268, or aything compatible with your xfreerdp client)" @@ -6400,11 +6788,11 @@ msgstr "" "exemple /usb:id,dev:054c:0268, o alguna cosa compatible amb el vostre client " "xfreerdp)" -#: transports/RDP/rdp_base.py:300 +#: transports/RDP/rdp_base.py:319 msgid "Allow Microsoft Rdp Client" msgstr "Permetre el client Microsoft RDP" -#: transports/RDP/rdp_base.py:303 +#: transports/RDP/rdp_base.py:322 msgid "" "If checked, allows use of Microsoft Remote Desktop Client. PASSWORD WILL BE " "PROMPTED!" @@ -6412,7 +6800,7 @@ msgstr "" "Si està seleccionat, permetre l'ús del client d'escriptori remot de " "Microsoft. ES MOSTRARÀ LA CONTRASENYA!!" -#: transports/RDP/rdp_base.py:313 +#: transports/RDP/rdp_base.py:332 msgid "" "If not empty, extra parameter to include for Mac OS X Freerdp Client (for " "example /usb:id,dev:054c:0268, or aything compatible with your xfreerdp " @@ -6664,75 +7052,75 @@ msgstr "Excés d'errors d'autenticació. Usuari bloquejat temporalment" msgid "Access tried from an unallowed source" msgstr "Accés intentat des d'un origen no permès" -#: web/util/authentication.py:155 +#: web/util/authentication.py:158 msgid "Invalid data" msgstr "Dades no vàlides" -#: web/util/configjs.py:170 +#: web/util/configjs.py:163 msgid "Access limited by calendar" msgstr "Accés limitat per calendari" -#: web/util/configjs.py:226 +#: web/util/configjs.py:222 msgid "Windows client" msgstr "Client Windows" -#: web/util/configjs.py:230 +#: web/util/configjs.py:226 msgid "Mac OS X client" msgstr "Client MacOS X" -#: web/util/configjs.py:233 +#: web/util/configjs.py:229 msgid "Debian based Linux client" msgstr "Client Linux basat en Debian" -#: web/util/configjs.py:235 web/util/configjs.py:243 web/util/configjs.py:263 +#: web/util/configjs.py:231 web/util/configjs.py:239 web/util/configjs.py:259 msgid "(requires Python-3.6 or newer)" msgstr "(requereix Python-3.6 o més recent)" -#: web/util/configjs.py:241 +#: web/util/configjs.py:237 msgid "RPM based Linux client (Fedora, Suse, ...)" msgstr "Client de Linux basat en RPM (Fedora, Suse, ...)" -#: web/util/configjs.py:249 +#: web/util/configjs.py:245 msgid "Binary appimage X86_64 Linux client" msgstr "Client de Linux en Binari appimage X86_64" -#: web/util/configjs.py:255 +#: web/util/configjs.py:251 msgid "Binary appimage Raspberry Linux client" msgstr "Client de Raspberry Linux en Binari appimage" -#: web/util/configjs.py:261 +#: web/util/configjs.py:257 msgid "Generic .tar.gz Linux client" msgstr " Client Linux genèric .tar.gz" -#: web/util/errors.py:76 +#: web/util/errors.py:78 msgid "Unknown error" msgstr "Error desconegut" -#: web/util/errors.py:83 +#: web/util/errors.py:85 msgid "Maximum services limit reached. Please, contact administrator" msgstr "" "S'ha assolit el límit màxim de serveis. Si us plau, contacteu amb " "l'administrador" -#: web/util/errors.py:84 +#: web/util/errors.py:86 msgid "You need to enable cookies to let this application work" msgstr "" "Necessiteu habilitar les cookies per a permetre que aquesta aplicació " "funcioni" -#: web/util/errors.py:86 +#: web/util/errors.py:88 msgid "Authenticator not found" msgstr "No s'ha trobat l'autenticador" -#: web/util/errors.py:87 +#: web/util/errors.py:89 msgid "Invalid authenticator" msgstr "Autenticador no vàlid" -#: web/util/errors.py:88 +#: web/util/errors.py:90 msgid "Invalid request received" msgstr "S'ha rebut una petició no vàlida" -#: web/util/errors.py:90 +#: web/util/errors.py:92 msgid "" "Your browser is not supported. Please, upgrade it to a modern HTML5 browser " "like Firefox or Chrome" @@ -6740,11 +7128,11 @@ msgstr "" "El vostre navegador no està suportat. Si us plau actualitzeu-lo a una versió " "que suporti HTML5, com Firefox o Chrome" -#: web/util/errors.py:92 +#: web/util/errors.py:94 msgid "The requested service is in maintenance mode" msgstr "El servei sol·licitat està en mode manteniment" -#: web/util/errors.py:93 +#: web/util/errors.py:95 msgid "" "The service is not ready.\n" "Please, try again in a few moments." @@ -6752,29 +7140,33 @@ msgstr "" "El servei no està preparat.\n" "Si us plau, intenteu-ho en uns moments." -#: web/util/errors.py:94 +#: web/util/errors.py:96 msgid "Preparing service" msgstr "Preparant el servei" -#: web/util/errors.py:95 +#: web/util/errors.py:97 msgid "Service access denied by calendars" msgstr "Accés al servei denegat per calendaris" -#: web/util/errors.py:96 +#: web/util/errors.py:98 msgid "Page not found" msgstr "Pàgina no trobada" -#: web/util/errors.py:97 +#: web/util/errors.py:99 msgid "Unexpected error" msgstr "Error inesperat" -#: web/util/errors.py:98 +#: web/util/errors.py:100 msgid "" "Reloading this page is not supported. Please, reopen service from origin." msgstr "" "No es pot recarregar aquesta pàgina. Si us plau, torneu a obrir el servei " "des de l'origen." +#: web/util/errors.py:101 +msgid "Invalid Multi-Factor Authentication code" +msgstr "Codi d'autenticació multifactor no vàlid" + #: web/util/services.py:319 msgid "" "This service is about to be replaced by a new version. Please, close the " @@ -6795,6 +7187,14 @@ msgstr "" "El vostre servei s'està creant, si us plau, espereu uns segons mentre es " "completa.)" -#: web/views/auth.py:177 +#: web/views/auth.py:189 msgid "Authenticator does not provide information" msgstr "L'autenticador no proporciona informació" + +#: web/views/modern.py:269 +msgid "{} days" +msgstr "{} dies" + +#: web/views/modern.py:271 +msgid "{} hours" +msgstr "{} hores" diff --git a/server/src/uds/locale/ca/LC_MESSAGES/djangojs.po b/server/src/uds/locale/ca/LC_MESSAGES/djangojs.po index 7fdd378c..e7266ecf 100644 --- a/server/src/uds/locale/ca/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/ca/LC_MESSAGES/djangojs.po @@ -9,9 +9,9 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-10 13:33+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:16+0000\n" +"Last-Translator: Adolfo Gómez , 2017,2020\n" "Language-Team: Catalan (http://www.transifex.com/openuds/openuds/language/" "ca/)\n" "Language: ca\n" @@ -31,14 +31,14 @@ msgstr "Principal" #: static/admin/main.js:1 static/admin/translations-fakejs.js:11 #: static/admin/translations-fakejs.js:29 -#: static/admin/translations-fakejs.js:179 -#: static/admin/translations-fakejs.js:191 -#: static/admin/translations-fakejs.js:193 -#: static/admin/translations-fakejs.js:195 -#: static/admin/translations-fakejs.js:197 -#: static/admin/translations-fakejs.js:254 -#: static/admin/translations-fakejs.js:256 -#: static/admin/translations-fakejs.js:258 static/modern/main-es5.js:1 +#: static/admin/translations-fakejs.js:141 +#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:216 +#: static/admin/translations-fakejs.js:218 +#: static/admin/translations-fakejs.js:220 static/modern/main-es5.js:1 #: static/modern/translations-fakejs.js:14 msgid "Error" msgstr "Error" @@ -65,12 +65,12 @@ msgstr "Carregant dades ..." #: static/admin/translations-fakejs.js:38 #: static/admin/translations-fakejs.js:40 #: static/admin/translations-fakejs.js:43 -#: static/admin/translations-fakejs.js:134 -#: static/admin/translations-fakejs.js:216 -#: static/admin/translations-fakejs.js:221 -#: static/admin/translations-fakejs.js:253 -#: static/admin/translations-fakejs.js:261 -#: static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:96 +#: static/admin/translations-fakejs.js:178 +#: static/admin/translations-fakejs.js:183 +#: static/admin/translations-fakejs.js:215 +#: static/admin/translations-fakejs.js:223 +#: static/admin/translations-fakejs.js:228 msgid "dismiss" msgstr "descartar" @@ -87,7 +87,7 @@ msgid "Test passed successfully" msgstr "Prova superada" #: static/admin/main.js:1 static/admin/translations-fakejs.js:37 -#: static/admin/translations-fakejs.js:260 +#: static/admin/translations-fakejs.js:222 msgid "Successfully saved" msgstr "S'ha desat correctament" @@ -143,58 +143,58 @@ msgstr "grup de pools" msgid "Go to" msgstr "Anar a" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:275 msgid "yes" msgstr "sí" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:276 msgid "no" msgstr "no" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:269 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 msgid "Error saving: " msgstr "S'ha produït un error desant:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:270 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 msgid "Error saving element" msgstr "S'ha produït un error desant l'element" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:271 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:274 msgid "Error handling your request" msgstr "S'ha produït un error gestionant la vostra sol·licitud" #: static/admin/main.js:1 static/admin/translations-fakejs.js:56 -#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:115 msgid "Sunday" msgstr " Diumenge" #: static/admin/main.js:1 static/admin/translations-fakejs.js:57 -#: static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:116 msgid "Monday" msgstr "Dilluns" #: static/admin/main.js:1 static/admin/translations-fakejs.js:58 -#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:117 msgid "Tuesday" msgstr " Dimarts" #: static/admin/main.js:1 static/admin/translations-fakejs.js:59 -#: static/admin/translations-fakejs.js:156 +#: static/admin/translations-fakejs.js:118 msgid "Wednesday" msgstr "Dimecres" #: static/admin/main.js:1 static/admin/translations-fakejs.js:60 -#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:119 msgid "Thursday" msgstr "Dijous" #: static/admin/main.js:1 static/admin/translations-fakejs.js:61 -#: static/admin/translations-fakejs.js:158 +#: static/admin/translations-fakejs.js:120 msgid "Friday" msgstr "Divendres" #: static/admin/main.js:1 static/admin/translations-fakejs.js:62 -#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:121 msgid "Saturday" msgstr "Dissabte" @@ -266,20 +266,20 @@ msgstr "#SERVICES_NUMBER# serveis d'usuari" msgid "#RESTRAINED_NUMBER# restrained services!" msgstr "#RESTRAINED_NUMBER# serveis restringits!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 -#: static/admin/translations-fakejs.js:249 -#: static/admin/translations-fakejs.js:402 -#: static/admin/translations-fakejs.js:454 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:211 +#: static/admin/translations-fakejs.js:265 +#: static/admin/translations-fakejs.js:366 +#: static/admin/translations-fakejs.js:418 msgid "Assigned services" msgstr "Serveis assignats" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 msgid "Services in use" msgstr "Serveis en ús" #: static/admin/main.js:1 static/admin/translations-fakejs.js:21 -#: static/admin/translations-fakejs.js:292 -#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:303 #: static/modern/translations-fakejs.js:30 msgid "Filter" msgstr "Filtre" @@ -297,25 +297,25 @@ msgid "Full Access" msgstr "Accés complet" #: static/admin/main.js:1 static/admin/translations-fakejs.js:15 -#: static/admin/translations-fakejs.js:362 -#: static/admin/translations-fakejs.js:409 -#: static/admin/translations-fakejs.js:414 +#: static/admin/translations-fakejs.js:373 +#: static/admin/translations-fakejs.js:378 +#: static/admin/translations-fakejs.js:489 msgid "User" msgstr "Usuari" #: static/admin/main.js:1 static/admin/translations-fakejs.js:16 -#: static/admin/translations-fakejs.js:83 -#: static/admin/translations-fakejs.js:93 -#: static/admin/translations-fakejs.js:427 -#: static/admin/translations-fakejs.js:448 +#: static/admin/translations-fakejs.js:243 +#: static/admin/translations-fakejs.js:253 +#: static/admin/translations-fakejs.js:391 +#: static/admin/translations-fakejs.js:412 msgid "Group" msgstr "Grup" #: static/admin/main.js:1 static/admin/translations-fakejs.js:17 -#: static/admin/translations-fakejs.js:408 -#: static/admin/translations-fakejs.js:413 -#: static/admin/translations-fakejs.js:426 -#: static/admin/translations-fakejs.js:447 +#: static/admin/translations-fakejs.js:372 +#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:390 +#: static/admin/translations-fakejs.js:411 #: static/modern/translations-fakejs.js:72 msgid "Authenticator" msgstr "Autenticador" @@ -332,89 +332,89 @@ msgstr "Eliminar" msgid "Confirm revokation of permission" msgstr "Confirmar la revocació del permís" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:238 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 msgid "Maintenance" msgstr "Manteniment" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 msgid "Exit maintenance mode" msgstr "Sortir del mode de manteniment" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 msgid "Enter maintenance mode" msgstr "Entrar en mode de manteniment" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 msgid "New provider" msgstr "Nou proveïdor" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 msgid "Edit provider" msgstr "Editar proveïdor" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:243 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 msgid "Delete provider" msgstr "Suprimir proveïdor" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 msgid "Exit maintenance mode?" msgstr "Voleu sortir del mode de manteniment?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 msgid "Enter maintenance mode?" msgstr "Voeu entrar en mode de manteniment?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 msgid "Maintenance mode for" msgstr "Mode de manteniment per a" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 -#: static/admin/translations-fakejs.js:247 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:209 +#: static/admin/translations-fakejs.js:232 msgid "In Maintenance" msgstr "En manteniment" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 -#: static/admin/translations-fakejs.js:248 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/translations-fakejs.js:233 msgid "Active" msgstr "Actiu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 -#: static/admin/translations-fakejs.js:95 -#: static/admin/translations-fakejs.js:229 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:191 +#: static/admin/translations-fakejs.js:236 +#: static/admin/translations-fakejs.js:255 msgid "Pool" msgstr "Pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 -#: static/admin/translations-fakejs.js:96 -#: static/admin/translations-fakejs.js:230 -#: static/admin/translations-fakejs.js:343 -#: static/admin/translations-fakejs.js:355 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 +#: static/admin/translations-fakejs.js:237 +#: static/admin/translations-fakejs.js:256 +#: static/admin/translations-fakejs.js:470 +#: static/admin/translations-fakejs.js:482 msgid "State" msgstr "Estat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 -#: static/admin/translations-fakejs.js:97 -#: static/admin/translations-fakejs.js:231 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:193 +#: static/admin/translations-fakejs.js:238 +#: static/admin/translations-fakejs.js:257 msgid "User Services" msgstr "Serveis d'usuari" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 -#: static/admin/translations-fakejs.js:232 -#: static/admin/translations-fakejs.js:321 -#: static/admin/translations-fakejs.js:401 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:194 +#: static/admin/translations-fakejs.js:248 +#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:365 msgid "Service pools" msgstr "Pools de servei" #: static/admin/main.js:1 static/admin/translations-fakejs.js:3 #: static/admin/translations-fakejs.js:7 -#: static/admin/translations-fakejs.js:308 +#: static/admin/translations-fakejs.js:311 #: static/modern/translations-fakejs.js:44 msgid "Yes" msgstr "Sí" #: static/admin/main.js:1 static/admin/translations-fakejs.js:4 #: static/admin/translations-fakejs.js:8 -#: static/admin/translations-fakejs.js:309 +#: static/admin/translations-fakejs.js:312 #: static/modern/translations-fakejs.js:45 msgid "No" msgstr "No" @@ -427,593 +427,596 @@ msgstr "(ocult)" msgid "Selected items :" msgstr "Elements seleccionats:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 -#: static/admin/translations-fakejs.js:233 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:195 +#: static/admin/translations-fakejs.js:231 #: static/modern/translations-fakejs.js:35 msgid "Information" msgstr "Informació" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 msgid "New service" msgstr "Nou servei" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:197 msgid "Edit service" msgstr "Editar servei" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:236 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 msgid "Delete service" msgstr "Suprimir servei" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:237 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 msgid "Delete user service" msgstr "Suprimir servei d'usuari" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:269 msgid "New Authenticator" msgstr "Autenticador nou" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:267 +#: static/admin/translations-fakejs.js:270 msgid "Edit Authenticator" msgstr "Editar Autenticador" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/translations-fakejs.js:271 msgid "Delete Authenticator" msgstr "Suprimir Autenticador" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 msgid "Any" msgstr "Algun" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 msgid "All" msgstr "Tots" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 -#: static/admin/translations-fakejs.js:94 -#: static/admin/translations-fakejs.js:342 -#: static/admin/translations-fakejs.js:354 -#: static/admin/translations-fakejs.js:379 -#: static/admin/translations-fakejs.js:435 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/translations-fakejs.js:254 +#: static/admin/translations-fakejs.js:343 +#: static/admin/translations-fakejs.js:399 +#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:481 msgid "Comments" msgstr "Comentaris" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:258 msgid "Unique ID" msgstr "Identificador únic" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 msgid "Friendly Name" msgstr "Nom amigable" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:260 msgid "In Use" msgstr "En ús" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:261 msgid "IP" msgstr "IP" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 msgid "Services Pool" msgstr "Pool de serveis" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 -#: static/admin/translations-fakejs.js:103 -#: static/admin/translations-fakejs.js:287 -#: static/admin/translations-fakejs.js:323 -#: static/admin/translations-fakejs.js:337 -#: static/admin/translations-fakejs.js:363 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/translations-fakejs.js:263 +#: static/admin/translations-fakejs.js:290 +#: static/admin/translations-fakejs.js:328 #: static/admin/translations-fakejs.js:367 -#: static/admin/translations-fakejs.js:373 -#: static/admin/translations-fakejs.js:403 -#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:494 msgid "Groups" msgstr "Grups" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 -#: static/admin/translations-fakejs.js:335 -#: static/admin/translations-fakejs.js:368 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/translations-fakejs.js:462 +#: static/admin/translations-fakejs.js:495 msgid "Services Pools" msgstr "Pools de serveis" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 -#: static/admin/translations-fakejs.js:378 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/translations-fakejs.js:342 msgid "Name" msgstr "Nom" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 msgid "Real Name" msgstr "Nom real" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 msgid "state" msgstr "estat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 msgid "Last access" msgstr "Últim accés" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 -#: static/admin/translations-fakejs.js:286 -#: static/admin/translations-fakejs.js:336 -#: static/admin/translations-fakejs.js:372 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:249 +#: static/admin/translations-fakejs.js:289 +#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:463 msgid "Users" msgstr "Usuaris" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 -#: static/admin/translations-fakejs.js:344 -#: static/admin/translations-fakejs.js:356 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:483 msgid "Enabled" msgstr "Habilitat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 -#: static/admin/translations-fakejs.js:345 -#: static/admin/translations-fakejs.js:357 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:484 msgid "Disabled" msgstr "Deshabilitat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 -#: static/admin/translations-fakejs.js:358 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:247 +#: static/admin/translations-fakejs.js:485 msgid "Blocked" msgstr "Bloquejat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 msgid "Delete user" msgstr "Suprimir usuari" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 msgid "Delete group" msgstr "Suprimir grup" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 msgid "New OS Manager" msgstr "Nou Gestor de Sistema Operatiu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 msgid "Edit OS Manager" msgstr "Editar Gestor de Sistema Operatiu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 msgid "Delete OS Manager" msgstr "Suprimir Gestor de Sistema Operatiu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:120 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 msgid "New Transport" msgstr "Nou transport" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:121 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:83 msgid "Edit Transport" msgstr "Editar Transport" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 msgid "Delete Transport" msgstr "Suprimir Transport" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 msgid "New Network" msgstr "Nova Xarxa" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:115 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 msgid "Edit Network" msgstr "Editar Xarxa" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:116 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 msgid "Delete Network" msgstr "Suprimir Xarxa" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:117 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 msgid "New Proxy" msgstr "Nou Proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:118 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 msgid "Edit Proxy" msgstr "Editar Proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:119 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 msgid "Delete Proxy" msgstr "Suprimir Proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:223 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 msgid "(This service does not requires an OS Manager)" msgstr "(Aquest servei no requereix un Gestor de SO)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 msgid "New service Pool" msgstr "Nou Pool de servei" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 msgid "Publish on creation" msgstr "Publicar al moment de la creació" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 msgid "If selected, will initiate the publication inmediatly after creation" msgstr "" "Si està seleccionat, s'iniciarà la publicació just després de la creació" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 msgid "Edit Service Pool" msgstr "Editar Pool de servei" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:228 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 msgid "Delete service pool" msgstr "Suprimir Pool de servei" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 -#: static/admin/translations-fakejs.js:194 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:156 msgid "Please, select a valid user" msgstr "Si us plau, seleccioneu un usuari vàlid" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:158 msgid "Please, select a valid group" msgstr "Si us plau, seleccioneu un grup vàlid" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 msgid "Please, select a valid transport" msgstr "Si us plau, seleccioneu un transport vàlid" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 msgid "Assigned" msgstr "Assignat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 msgid "Cached" msgstr "A la memòria cau" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 msgid "In use" msgstr "En ús" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 -#: static/admin/translations-fakejs.js:290 -#: static/admin/translations-fakejs.js:374 -#: static/admin/translations-fakejs.js:405 -#: static/admin/translations-fakejs.js:462 -#: static/admin/translations-fakejs.js:465 -#: static/admin/translations-fakejs.js:470 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/translations-fakejs.js:293 +#: static/admin/translations-fakejs.js:369 +#: static/admin/translations-fakejs.js:426 +#: static/admin/translations-fakejs.js:429 +#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:460 msgid "Logs" msgstr "Registres" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 msgid "VNC" msgstr "VNC" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 msgid "Launch now" msgstr "Iniciar ara" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 msgid "Change owner" msgstr "Canviar el propietari" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 msgid "Assign service" msgstr "Assignar servei" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 -#: static/admin/translations-fakejs.js:277 -#: static/admin/translations-fakejs.js:283 -#: static/admin/translations-fakejs.js:349 -#: static/admin/translations-fakejs.js:364 -#: static/admin/translations-fakejs.js:390 -#: static/admin/translations-fakejs.js:398 -#: static/admin/translations-fakejs.js:410 -#: static/admin/translations-fakejs.js:415 -#: static/admin/translations-fakejs.js:423 -#: static/admin/translations-fakejs.js:428 -#: static/admin/translations-fakejs.js:432 -#: static/admin/translations-fakejs.js:436 -#: static/admin/translations-fakejs.js:449 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/translations-fakejs.js:280 +#: static/admin/translations-fakejs.js:286 +#: static/admin/translations-fakejs.js:354 +#: static/admin/translations-fakejs.js:362 +#: static/admin/translations-fakejs.js:374 +#: static/admin/translations-fakejs.js:379 +#: static/admin/translations-fakejs.js:387 +#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:400 +#: static/admin/translations-fakejs.js:413 +#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:476 #: static/admin/translations-fakejs.js:491 msgid "Cancel" msgstr "Cancel·lar" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 msgid "Changelog" msgstr "Registre de canvis" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 -#: static/admin/translations-fakejs.js:209 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/translations-fakejs.js:171 msgid "Delete assigned service" msgstr "Suprimir servei assignat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 msgid "Delete cached service" msgstr "Suprimir servei en memòria cau" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:183 -#: static/admin/translations-fakejs.js:211 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/translations-fakejs.js:173 msgid "Delete assigned group" msgstr "Suprimir grup assignat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 msgid "Delete assigned transport" msgstr "Suprimir transport assignat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 msgid "Publication" msgstr "Publicació" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 msgid "Cancel publication?" msgstr "Cancel·lar la publicació?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:215 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 msgid "Publication canceled" msgstr "Publicació cancel·lada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:179 msgid "Delete scheduled action" msgstr "Suprimir acció programada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:218 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 msgid "Execute scheduled action" msgstr "Executar l'acció programada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 msgid "Execute scheduled action right now?" msgstr "Executar l'acció programada ara mateix?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:220 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 msgid "Scheduled action executed" msgstr "Acció programada executada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:184 -#: static/admin/translations-fakejs.js:222 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/translations-fakejs.js:184 msgid "Delete calendar access rule" msgstr "Suprimir regla d'accés al calendari" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 msgid "New meta pool" msgstr "Nou meta pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 msgid "Edit meta pool" msgstr "Editar meta pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 msgid "Delete meta pool" msgstr "Suprimir meta pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 msgid "Please, select a valid service pool" msgstr "Si us plau, seleccioneu un Pool de servei vàlid" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 msgid "Remove member pool" msgstr "Eliminar member pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 msgid "New pool group" msgstr "Nou grup de pools" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 msgid "Edit pool group" msgstr "Editar el grup de pools" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 msgid "Delete pool group" msgstr "Suprimir el grup de pools" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 msgid "New calendar" msgstr "Nou calendari" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 msgid "Edit calendar" msgstr "Editar calendari" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:178 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 msgid "Delete calendar" msgstr "Suprimir calendari" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 msgid "day" msgstr "dia" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 msgid "days" msgstr "dies" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 msgid "Daily" msgstr "Diari" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 msgid "week" msgstr "setmana" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 msgid "weeks" msgstr "setmanes" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:141 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:103 msgid "Weekly" msgstr "Setmanal" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 msgid "month" msgstr "mes" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 msgid "months" msgstr "mesos" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 msgid "Monthly" msgstr "Mensual" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 msgid "year" msgstr "any" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 msgid "years" msgstr "anys" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 msgid "Yearly" msgstr "Anual" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 -#: static/admin/translations-fakejs.js:387 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/translations-fakejs.js:351 msgid "Weekdays" msgstr "Dies de la setmana" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 msgid "Minutes" msgstr "Minuts" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 msgid "Hours" msgstr "Hores" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 msgid "Days" msgstr "Dies" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 msgid "Weeks" msgstr "Setmanes" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 msgid "(no days)" msgstr "(sense dies)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 msgid "Forever" msgstr "Per sempre" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 msgid "Start date/time" msgstr "Data/hora d'inici " -#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 msgid "End date" msgstr "Data de finalització" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 msgid "Interval" msgstr "Interval" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 msgid "Week days" msgstr "Dies de la setmana" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 msgid "Invalid or incomplete rule. Please, fix field $FIELD" msgstr "Regla no vàlida o incompleta. Si us plau, corregiu el camp $FIELD" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 msgid "This rule will be valid every" msgstr "Aquesta regla serà vàlida cada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 msgid "of any week" msgstr "de qualsevol setmana" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 msgid "from" msgstr "des de" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 msgid "until" msgstr "fins a" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:171 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 msgid "onwards" msgstr "cap endavant" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:134 msgid "starting at" msgstr "començant a les" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:173 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 msgid "and every event will be active for" msgstr "i cada esdeveniment estarà actiu durant" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 msgid "with no duration" msgstr "sense durada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 msgid "Delete calendar rule" msgstr "Suprimir regla del calendari" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 msgid "Set time mark" msgstr "Establir marca de temps" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 msgid "New account" msgstr "Nou compte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 msgid "Edit account" msgstr "Editar compte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 msgid "Delete account" msgstr "Suprimir compte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:93 msgid "Time mark" msgstr "Marca de temps" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:94 msgid "Set time mark for $NAME to current date/time?" msgstr "Establiu la marca de temps de $NAME a la data/hora actual?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:95 msgid "Time mark stablished" msgstr "Marca horària establerta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:97 msgid "No time mark" msgstr "No hi ha marca de temps" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 msgid "Delete account usage" msgstr "Suprimir ús del compte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:255 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 msgid "Image is too big (max. upload size is 256Kb)" msgstr "Imatge massa gran (la mida màxima és de 256Kb)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:257 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 msgid "Invalid image type (only supports JPEG, PNG and GIF" msgstr "Tipus d'imatge no suportat (només es suporta JPEG, PNG i GIF" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:221 msgid "Please, provide a name and a image" msgstr "Si us plau, proporcioneu un nom i una imatge" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 msgid "Delete image" msgstr "Suprimir imatge" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:263 -#: static/admin/translations-fakejs.js:267 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/translations-fakejs.js:229 msgid "Generate report" msgstr "Generar informe" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 msgid "Generating report..." msgstr "S'està generant l'informe ..." -#: static/admin/main.js:1 static/admin/translations-fakejs.js:265 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 msgid "Report finished" msgstr "Informe finalitzat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 msgid "Configuration saved" msgstr "Configuració desada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 msgid "Delete actor token - USE WITH EXTREME CAUTION!!!" msgstr "Suprimir el token de l'actor - UTILITZEU-HO AMB PRECAUCIÓ MÀXIMA !!!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:230 msgid "Delete tunnel token - USE WITH EXTREME CAUTION!!!" msgstr "Suprimir el token del Túnel - UTILITZEU-HO AMB PRECAUCIÓ MÀXIMA !!!" @@ -1029,470 +1032,426 @@ msgstr "Elements per pàgina" msgid ", (%i more items)" msgstr ", (%i elements més)" -#: static/admin/translations-fakejs.js:275 +#: static/admin/translations-fakejs.js:278 msgid "Remove all" msgstr "Eliminar-ho tot" -#: static/admin/translations-fakejs.js:276 +#: static/admin/translations-fakejs.js:279 msgid "Add" msgstr "Afegir" -#: static/admin/translations-fakejs.js:278 -#: static/admin/translations-fakejs.js:284 -#: static/admin/translations-fakejs.js:289 -#: static/admin/translations-fakejs.js:338 -#: static/admin/translations-fakejs.js:350 -#: static/admin/translations-fakejs.js:365 -#: static/admin/translations-fakejs.js:370 -#: static/admin/translations-fakejs.js:391 -#: static/admin/translations-fakejs.js:399 -#: static/admin/translations-fakejs.js:411 +#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:287 +#: static/admin/translations-fakejs.js:292 +#: static/admin/translations-fakejs.js:355 +#: static/admin/translations-fakejs.js:363 +#: static/admin/translations-fakejs.js:375 +#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:401 +#: static/admin/translations-fakejs.js:403 +#: static/admin/translations-fakejs.js:414 #: static/admin/translations-fakejs.js:416 -#: static/admin/translations-fakejs.js:424 -#: static/admin/translations-fakejs.js:429 -#: static/admin/translations-fakejs.js:433 -#: static/admin/translations-fakejs.js:437 -#: static/admin/translations-fakejs.js:439 -#: static/admin/translations-fakejs.js:450 -#: static/admin/translations-fakejs.js:452 -#: static/admin/translations-fakejs.js:466 +#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:465 +#: static/admin/translations-fakejs.js:477 #: static/admin/translations-fakejs.js:492 +#: static/admin/translations-fakejs.js:497 msgid "Ok" msgstr "D'acord" -#: static/admin/translations-fakejs.js:279 +#: static/admin/translations-fakejs.js:282 msgid "Discard & close" msgstr "Descartar i tancar" -#: static/admin/translations-fakejs.js:280 -#: static/admin/translations-fakejs.js:484 +#: static/admin/translations-fakejs.js:283 +#: static/admin/translations-fakejs.js:448 msgid "Save" msgstr "Desar" -#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:284 msgid "New user permission for" msgstr "Nou permís d'usuari per a" -#: static/admin/translations-fakejs.js:282 +#: static/admin/translations-fakejs.js:285 msgid "New group permission for" msgstr "Nou permís de grup per a" -#: static/admin/translations-fakejs.js:285 +#: static/admin/translations-fakejs.js:288 msgid "Permissions for" msgstr "Permisos per a" -#: static/admin/translations-fakejs.js:288 +#: static/admin/translations-fakejs.js:291 msgid "New permission..." msgstr "Nou permís ..." -#: static/admin/translations-fakejs.js:291 -#: static/admin/translations-fakejs.js:298 +#: static/admin/translations-fakejs.js:294 +#: static/admin/translations-fakejs.js:301 msgid "Export" msgstr "Exportar" -#: static/admin/translations-fakejs.js:293 -#: static/admin/translations-fakejs.js:294 -#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:296 +#: static/admin/translations-fakejs.js:297 +#: static/admin/translations-fakejs.js:298 msgid "New" msgstr "Nou" -#: static/admin/translations-fakejs.js:296 -#: static/admin/translations-fakejs.js:304 +#: static/admin/translations-fakejs.js:299 +#: static/admin/translations-fakejs.js:307 msgid "Edit" msgstr "Editar" -#: static/admin/translations-fakejs.js:297 -#: static/admin/translations-fakejs.js:305 +#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:308 msgid "Permissions" msgstr "Permisos" -#: static/admin/translations-fakejs.js:299 -#: static/admin/translations-fakejs.js:306 +#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:309 msgid "Delete" msgstr "Suprimir" -#: static/admin/translations-fakejs.js:301 +#: static/admin/translations-fakejs.js:304 msgid "Selected items" msgstr "Elements seleccionats" -#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:305 msgid "Copy" msgstr "Copiar" -#: static/admin/translations-fakejs.js:303 +#: static/admin/translations-fakejs.js:306 msgid "Detail" msgstr "Detall" -#: static/admin/translations-fakejs.js:307 +#: static/admin/translations-fakejs.js:310 #: static/modern/translations-fakejs.js:43 msgid "Close" msgstr "Tanca" -#: static/admin/translations-fakejs.js:310 +#: static/admin/translations-fakejs.js:313 msgid "User mode" msgstr "Mode d'usuari" -#: static/admin/translations-fakejs.js:311 +#: static/admin/translations-fakejs.js:314 #: static/modern/translations-fakejs.js:48 msgid "Logout" msgstr "Tancar sessió" -#: static/admin/translations-fakejs.js:312 -#: static/admin/translations-fakejs.js:371 -#: static/admin/translations-fakejs.js:389 -#: static/admin/translations-fakejs.js:400 -#: static/admin/translations-fakejs.js:453 -#: static/admin/translations-fakejs.js:467 +#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:353 +#: static/admin/translations-fakejs.js:364 +#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:431 +#: static/admin/translations-fakejs.js:457 msgid "Summary" msgstr "Resum" -#: static/admin/translations-fakejs.js:313 -#: static/admin/translations-fakejs.js:468 +#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:432 msgid "Services" msgstr "Serveis" -#: static/admin/translations-fakejs.js:314 +#: static/admin/translations-fakejs.js:317 +msgid "Authentication" +msgstr "Autenticació" + +#: static/admin/translations-fakejs.js:318 msgid "Authenticators" msgstr "Autenticadors" -#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:319 +msgid "Multi Factor" +msgstr "Multifactor" + +#: static/admin/translations-fakejs.js:320 msgid "Os Managers" msgstr "Gestors de Sistema Operatiu" -#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:321 msgid "Connectivity" msgstr "Connectivitat" -#: static/admin/translations-fakejs.js:317 -#: static/admin/translations-fakejs.js:457 +#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:421 #: static/modern/translations-fakejs.js:39 msgid "Transports" msgstr "Transports" -#: static/admin/translations-fakejs.js:318 +#: static/admin/translations-fakejs.js:323 #: static/modern/translations-fakejs.js:41 msgid "Networks" msgstr "Xarxes" -#: static/admin/translations-fakejs.js:319 +#: static/admin/translations-fakejs.js:324 msgid "Proxies" msgstr "Proxies" -#: static/admin/translations-fakejs.js:320 +#: static/admin/translations-fakejs.js:325 msgid "Pools" msgstr "Pools" -#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:327 msgid "Meta pools" msgstr "Meta pools" -#: static/admin/translations-fakejs.js:324 +#: static/admin/translations-fakejs.js:329 msgid "Calendars" msgstr "Calendaris" -#: static/admin/translations-fakejs.js:325 +#: static/admin/translations-fakejs.js:330 msgid "Accounts" msgstr "Comptes" -#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:331 msgid "Tools" msgstr "Eines" -#: static/admin/translations-fakejs.js:327 +#: static/admin/translations-fakejs.js:332 msgid "Gallery" msgstr "Galeria" -#: static/admin/translations-fakejs.js:328 +#: static/admin/translations-fakejs.js:333 msgid "Reports" msgstr "Informes" -#: static/admin/translations-fakejs.js:329 +#: static/admin/translations-fakejs.js:334 msgid "Tokens" msgstr "Tokens" -#: static/admin/translations-fakejs.js:330 +#: static/admin/translations-fakejs.js:335 msgid "Actor" msgstr "Actor" -#: static/admin/translations-fakejs.js:331 +#: static/admin/translations-fakejs.js:336 msgid "Tunnel" msgstr "Túnel" -#: static/admin/translations-fakejs.js:332 +#: static/admin/translations-fakejs.js:337 msgid "Configuration" msgstr "Configuració" -#: static/admin/translations-fakejs.js:333 +#: static/admin/translations-fakejs.js:338 msgid "Flush Cache" msgstr "Buidar memòria cau" -#: static/admin/translations-fakejs.js:334 -#: static/admin/translations-fakejs.js:366 -#: static/admin/translations-fakejs.js:463 -msgid "Information for" -msgstr "Informació per a" - #: static/admin/translations-fakejs.js:339 -msgid "Edit group" -msgstr "Editar grup" - -#: static/admin/translations-fakejs.js:340 -msgid "New group" -msgstr "Nou grup" - -#: static/admin/translations-fakejs.js:341 -msgid "Meta group name" -msgstr "Nom del meta grup" - -#: static/admin/translations-fakejs.js:346 -msgid "Service Pools" -msgstr "Pools de servei" - -#: static/admin/translations-fakejs.js:347 -msgid "Match mode" -msgstr "Mode coincidència" - -#: static/admin/translations-fakejs.js:348 -msgid "Selected Groups" -msgstr "Grups seleccionats" - -#: static/admin/translations-fakejs.js:351 -msgid "Edit user" -msgstr "Editar usuari" - -#: static/admin/translations-fakejs.js:352 -msgid "New user" -msgstr "Nou usuari" - -#: static/admin/translations-fakejs.js:353 -msgid "Real name" -msgstr "Nom real" - -#: static/admin/translations-fakejs.js:359 -msgid "Role" -msgstr "Paper" - -#: static/admin/translations-fakejs.js:360 -msgid "Admin" -msgstr "Admin" - -#: static/admin/translations-fakejs.js:361 -msgid "Staff member" -msgstr "Membre del personal" - -#: static/admin/translations-fakejs.js:369 -msgid "Assigned Services" -msgstr "Serveis assignats" - -#: static/admin/translations-fakejs.js:375 msgid "Account usage" msgstr "Ús del compte" -#: static/admin/translations-fakejs.js:376 +#: static/admin/translations-fakejs.js:340 msgid "Edit rule" msgstr "Editar regla" -#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:341 msgid "New rule" msgstr "Nova regla" -#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:344 msgid "Event" msgstr "Esdeveniment" -#: static/admin/translations-fakejs.js:381 +#: static/admin/translations-fakejs.js:345 msgid "Start time" msgstr "Hora d'inici" -#: static/admin/translations-fakejs.js:382 +#: static/admin/translations-fakejs.js:346 msgid "Duration" msgstr "Durada" -#: static/admin/translations-fakejs.js:383 +#: static/admin/translations-fakejs.js:347 msgid "Duration units" msgstr "Unitats de durada" -#: static/admin/translations-fakejs.js:384 +#: static/admin/translations-fakejs.js:348 msgid "Start date" msgstr "Data d'inici" -#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:349 msgid "Repeat until date" msgstr "Repetir fins a la data" -#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:350 msgid "Frequency" msgstr "Freqüència" -#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:352 msgid "Repeat every" msgstr "Repetir cada" -#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:356 msgid "Rules" msgstr "Regles" -#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:357 msgid "New member pool" msgstr "Nou member pool" -#: static/admin/translations-fakejs.js:394 +#: static/admin/translations-fakejs.js:358 msgid "Edit member pool" msgstr "Editar member pool" -#: static/admin/translations-fakejs.js:395 -#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:359 +#: static/admin/translations-fakejs.js:384 msgid "Priority" msgstr "Prioritat" -#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:360 msgid "Service pool" msgstr "Pool de servei" -#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:361 msgid "Enabled?" msgstr "Habilitat?" -#: static/admin/translations-fakejs.js:404 -#: static/admin/translations-fakejs.js:460 +#: static/admin/translations-fakejs.js:368 +#: static/admin/translations-fakejs.js:424 msgid "Access calendars" msgstr "Calendaris d'accés" -#: static/admin/translations-fakejs.js:406 +#: static/admin/translations-fakejs.js:370 msgid "Assign service to user manually" msgstr "Assignar servei a l'usuari manualment" -#: static/admin/translations-fakejs.js:407 +#: static/admin/translations-fakejs.js:371 msgid "Service" msgstr "Servei" -#: static/admin/translations-fakejs.js:412 +#: static/admin/translations-fakejs.js:376 msgid "Change owner of assigned service" msgstr "Canviar el propietari del servei assignat" -#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:381 msgid "New access rule for" msgstr "Nova regla d'accés per a" -#: static/admin/translations-fakejs.js:418 +#: static/admin/translations-fakejs.js:382 msgid "Edit access rule for" msgstr "Editar la regla d'accés de" -#: static/admin/translations-fakejs.js:419 +#: static/admin/translations-fakejs.js:383 msgid "Default fallback access for" msgstr "Accés alternatiu predeterminat" -#: static/admin/translations-fakejs.js:421 -#: static/admin/translations-fakejs.js:442 +#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:406 msgid "Calendar" msgstr "Calendari" -#: static/admin/translations-fakejs.js:422 -#: static/admin/translations-fakejs.js:445 +#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:409 msgid "Action" msgstr "Acció" -#: static/admin/translations-fakejs.js:425 +#: static/admin/translations-fakejs.js:389 msgid "New group for" msgstr "Nou grup per a" -#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:394 msgid "New transport for" msgstr "Nou transport per a" -#: static/admin/translations-fakejs.js:431 -#: static/admin/translations-fakejs.js:446 +#: static/admin/translations-fakejs.js:395 +#: static/admin/translations-fakejs.js:410 msgid "Transport" msgstr "Transport" -#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:398 msgid "New publication for" msgstr "Nova publicació per a" -#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:402 msgid "Changelog of" msgstr "Registre de canvis de" -#: static/admin/translations-fakejs.js:440 +#: static/admin/translations-fakejs.js:404 msgid "Edit action for" msgstr "Editar l'acció per a" -#: static/admin/translations-fakejs.js:441 +#: static/admin/translations-fakejs.js:405 msgid "New action for" msgstr "Nova acció per a" -#: static/admin/translations-fakejs.js:443 +#: static/admin/translations-fakejs.js:407 msgid "Events offset (minutes)" msgstr "Compensació dels esdeveniments (minuts)" -#: static/admin/translations-fakejs.js:444 +#: static/admin/translations-fakejs.js:408 msgid "At the beginning of the interval?" msgstr "A l'inici de l'interval?" -#: static/admin/translations-fakejs.js:451 +#: static/admin/translations-fakejs.js:415 msgid "Logs of" msgstr "Registres de" -#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:419 msgid "Cache" msgstr "Memòria cau" -#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:422 msgid "Publications" msgstr "Publicacions" -#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:423 msgid "Scheduled actions" msgstr "Accions programades" -#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:425 msgid "Charts" msgstr "Gràfics" -#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:427 +#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:493 +msgid "Information for" +msgstr "Informació per a" + +#: static/admin/translations-fakejs.js:428 msgid "Services pools" msgstr "Pools de serveis" -#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:433 msgid "Usage" msgstr "Ús" -#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:435 #: static/modern/translations-fakejs.js:46 msgid "Dashboard" msgstr "Panell" -#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:436 msgid "View authenticators" msgstr "Veure autenticadors" -#: static/admin/translations-fakejs.js:473 -#: static/admin/translations-fakejs.js:474 -#: static/admin/translations-fakejs.js:475 +#: static/admin/translations-fakejs.js:437 +#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:439 msgid "View service pools" msgstr "Veure Pools de servei" -#: static/admin/translations-fakejs.js:476 +#: static/admin/translations-fakejs.js:440 msgid "Assigned services chart" msgstr "Gràfic de serveis assignats" -#: static/admin/translations-fakejs.js:477 +#: static/admin/translations-fakejs.js:441 msgid "In use services chart" msgstr "Gràfic de serveis en ús" -#: static/admin/translations-fakejs.js:478 +#: static/admin/translations-fakejs.js:442 msgid "UDS Administration" msgstr "Administració d'UDS" -#: static/admin/translations-fakejs.js:479 +#: static/admin/translations-fakejs.js:443 msgid "You are accessing UDS Administration as staff member." msgstr "Esteu accedint a l’administració d’UDS com a membre del personal." -#: static/admin/translations-fakejs.js:480 +#: static/admin/translations-fakejs.js:444 msgid "This means that you have restricted access to elements." msgstr "Això vol dir que teniu accés restringit als elements." -#: static/admin/translations-fakejs.js:481 +#: static/admin/translations-fakejs.js:445 msgid "" "In order to increase your access privileges, please contact your local UDS " "administrator." @@ -1500,38 +1459,90 @@ msgstr "" "Per incrementar els vostres privilegis d’accés, contacteu amb " "l’administrador d'UDS." -#: static/admin/translations-fakejs.js:482 +#: static/admin/translations-fakejs.js:446 msgid "Thank you." msgstr "Gràcies." -#: static/admin/translations-fakejs.js:483 +#: static/admin/translations-fakejs.js:447 msgid "UDS Configuration" msgstr "Configuració UDS" -#: static/admin/translations-fakejs.js:485 +#: static/admin/translations-fakejs.js:449 msgid "New image for" msgstr "Nova imatge per a" -#: static/admin/translations-fakejs.js:486 +#: static/admin/translations-fakejs.js:450 msgid "Edit for" msgstr "Editar per a" -#: static/admin/translations-fakejs.js:487 +#: static/admin/translations-fakejs.js:451 msgid "Image name" msgstr "Nom de la imatge" -#: static/admin/translations-fakejs.js:488 +#: static/admin/translations-fakejs.js:452 msgid "Image (click to change)" msgstr "Imatge (feu clic per canviar)" -#: static/admin/translations-fakejs.js:489 +#: static/admin/translations-fakejs.js:453 msgid "For optimal results, use " msgstr "Per obtenir resultats òptims, utilitzeu" -#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:454 msgid "The image will be resized on upload to" msgstr "La imatge quan es carregui es redimensionarà a" +#: static/admin/translations-fakejs.js:466 +msgid "Edit group" +msgstr "Editar grup" + +#: static/admin/translations-fakejs.js:467 +msgid "New group" +msgstr "Nou grup" + +#: static/admin/translations-fakejs.js:468 +msgid "Meta group name" +msgstr "Nom del meta grup" + +#: static/admin/translations-fakejs.js:473 +msgid "Service Pools" +msgstr "Pools de servei" + +#: static/admin/translations-fakejs.js:474 +msgid "Match mode" +msgstr "Mode coincidència" + +#: static/admin/translations-fakejs.js:475 +msgid "Selected Groups" +msgstr "Grups seleccionats" + +#: static/admin/translations-fakejs.js:478 +msgid "Edit user" +msgstr "Editar usuari" + +#: static/admin/translations-fakejs.js:479 +msgid "New user" +msgstr "Nou usuari" + +#: static/admin/translations-fakejs.js:480 +msgid "Real name" +msgstr "Nom real" + +#: static/admin/translations-fakejs.js:486 +msgid "Role" +msgstr "Paper" + +#: static/admin/translations-fakejs.js:487 +msgid "Admin" +msgstr "Admin" + +#: static/admin/translations-fakejs.js:488 +msgid "Staff member" +msgstr "Membre del personal" + +#: static/admin/translations-fakejs.js:496 +msgid "Assigned Services" +msgstr "Serveis assignats" + #: static/modern/main-es5.js:1 msgid "Error communicating with your service. Please, retry again." msgstr "Error de comunicació amb el vostre servei. Torneu-ho a provar." @@ -1594,7 +1605,8 @@ msgstr "" msgid "Launching service" msgstr "Iniciant el servei" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 +#: static/modern/translations-fakejs.js:25 msgid "Errors found" msgstr "S'han trobat errors" @@ -1635,18 +1647,14 @@ msgstr "Servei restablert" msgid "Are you sure?" msgstr "Estàs segur?" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 msgid "Warning" msgstr "Avís" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:25 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 msgid "Service is in maintenance and cannot be executed" msgstr "El servei està en manteniment i no es pot executar" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 -msgid "Invalid error string" -msgstr "Cadena d'error no vàlida" - #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:26 msgid "We use cookies to track usage and preferences" msgstr "Utilitzem cookies per fer un seguiment d'ús i preferències" @@ -1792,3 +1800,15 @@ msgstr "Contrasenya" #: static/modern/translations-fakejs.js:73 msgid "Login" msgstr "Iniciar sessió" + +#: static/modern/translations-fakejs.js:74 +msgid "Login Verification" +msgstr "Verificació d'inici de sessió" + +#: static/modern/translations-fakejs.js:75 +msgid "Remember Me" +msgstr "Recorda'm" + +#: static/modern/translations-fakejs.js:76 +msgid "Submit" +msgstr "Presentar" diff --git a/server/src/uds/locale/de/LC_MESSAGES/django.po b/server/src/uds/locale/de/LC_MESSAGES/django.po index d751b643..a344d435 100644 --- a/server/src/uds/locale/de/LC_MESSAGES/django.po +++ b/server/src/uds/locale/de/LC_MESSAGES/django.po @@ -5,13 +5,14 @@ # Translators: # Adolfo Gómez , 2012 # Víctor Alonso , 2022 +# Víctor Alonso , 2022 msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-02-04 16:19+0000\n" -"Last-Translator: Víctor Alonso \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:14+0000\n" +"Last-Translator: Víctor Alonso , 2022\n" "Language-Team: German (http://www.transifex.com/openuds/openuds/language/" "de/)\n" "Language: de\n" @@ -24,26 +25,26 @@ msgstr "" msgid "Accounts" msgstr "Konten" -#: REST/methods/accounts.py:63 REST/methods/authenticators.py:66 +#: REST/methods/accounts.py:63 REST/methods/authenticators.py:67 #: REST/methods/calendars.py:63 REST/methods/images.py:67 -#: REST/methods/meta_pools.py:81 REST/methods/networks.py:63 -#: REST/methods/osmanagers.py:55 REST/methods/providers.py:71 -#: REST/methods/proxies.py:60 REST/methods/reports.py:69 -#: REST/methods/services_pool_groups.py:71 REST/methods/services_pools.py:136 -#: REST/methods/transports.py:66 REST/methods/user_services.py:325 -#: REST/methods/user_services.py:400 REST/methods/users_groups.py:167 -#: REST/model.py:149 +#: REST/methods/meta_pools.py:81 REST/methods/mfas.py:56 +#: REST/methods/networks.py:63 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:71 REST/methods/proxies.py:60 +#: REST/methods/reports.py:69 REST/methods/services_pool_groups.py:71 +#: REST/methods/services_pools.py:136 REST/methods/transports.py:66 +#: REST/methods/user_services.py:325 REST/methods/user_services.py:400 +#: REST/methods/users_groups.py:167 REST/model.py:149 msgid "Name" msgstr "Name" -#: REST/methods/accounts.py:64 REST/methods/authenticators.py:68 +#: REST/methods/accounts.py:64 REST/methods/authenticators.py:69 #: REST/methods/calendarrules.py:110 REST/methods/calendars.py:69 -#: REST/methods/meta_pools.py:82 REST/methods/osmanagers.py:57 -#: REST/methods/providers.py:73 REST/methods/proxies.py:63 -#: REST/methods/services.py:241 REST/methods/services_pool_groups.py:72 -#: REST/methods/transports.py:68 REST/methods/user_services.py:402 -#: REST/methods/users_groups.py:168 REST/methods/users_groups.py:386 -#: REST/model.py:173 +#: REST/methods/meta_pools.py:82 REST/methods/mfas.py:58 +#: REST/methods/osmanagers.py:57 REST/methods/providers.py:73 +#: REST/methods/proxies.py:63 REST/methods/services.py:241 +#: REST/methods/services_pool_groups.py:72 REST/methods/transports.py:68 +#: REST/methods/user_services.py:402 REST/methods/users_groups.py:168 +#: REST/methods/users_groups.py:384 REST/model.py:173 msgid "Comments" msgstr "Bemerkungen" @@ -51,12 +52,12 @@ msgstr "Bemerkungen" msgid "Time mark" msgstr "Zeitmarke" -#: REST/methods/accounts.py:66 REST/methods/authenticators.py:73 +#: REST/methods/accounts.py:66 REST/methods/authenticators.py:75 #: REST/methods/calendars.py:71 REST/methods/meta_pools.py:89 -#: REST/methods/networks.py:71 REST/methods/osmanagers.py:59 -#: REST/methods/providers.py:79 REST/methods/proxies.py:64 -#: REST/methods/services.py:250 REST/methods/services_pools.py:145 -#: REST/methods/transports.py:77 +#: REST/methods/mfas.py:59 REST/methods/networks.py:71 +#: REST/methods/osmanagers.py:59 REST/methods/providers.py:79 +#: REST/methods/proxies.py:64 REST/methods/services.py:250 +#: REST/methods/services_pools.py:145 REST/methods/transports.py:77 msgid "tags" msgstr "Stichworte" @@ -111,7 +112,7 @@ msgstr "Ungültiger Schlüssel" msgid "Unmanaged host" msgstr "Nicht verwalteter Host" -#: REST/methods/actor.py:207 web/util/errors.py:85 +#: REST/methods/actor.py:207 web/util/errors.py:87 msgid "User service not found" msgstr "User Service nicht gefunden" @@ -120,9 +121,9 @@ msgid "Actor tokens" msgstr "Schauspieler-Token" #: REST/methods/actor_token.py:54 REST/methods/tunnel_token.py:52 -#: reports/auto/fields.py:58 reports/stats/pools_performance.py:218 -#: reports/stats/pools_performance.py:237 reports/stats/pools_usage_day.py:64 -#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:191 +#: reports/auto/fields.py:58 reports/stats/pools_performance.py:201 +#: reports/stats/pools_performance.py:220 reports/stats/pools_usage_day.py:64 +#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:176 #: templates/uds/reports/stats/authenticator_stats.html:14 msgid "Date" msgstr "Datum" @@ -161,64 +162,79 @@ msgstr "Protokollstufe" msgid "Token isued by {} from {}" msgstr "Token wird von {} von {} ausgegeben" -#: REST/methods/authenticators.py:63 +#: REST/methods/authenticators.py:64 msgid "Authenticators" msgstr "Authentifikatoren" -#: REST/methods/authenticators.py:65 +#: REST/methods/authenticators.py:66 msgid "Id" msgstr "Ich würde" -#: REST/methods/authenticators.py:67 REST/methods/osmanagers.py:56 -#: REST/methods/providers.py:72 REST/methods/services.py:242 -#: REST/methods/transports.py:67 REST/methods/user_services.py:401 +#: REST/methods/authenticators.py:68 REST/methods/mfas.py:57 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:72 +#: REST/methods/services.py:242 REST/methods/transports.py:67 +#: REST/methods/user_services.py:401 msgid "Type" msgstr "Art" -#: REST/methods/authenticators.py:69 REST/methods/meta_service_pools.py:88 +#: REST/methods/authenticators.py:70 REST/methods/meta_service_pools.py:88 #: REST/methods/op_calendars.py:83 REST/methods/services_pool_groups.py:62 #: REST/methods/transports.py:65 REST/methods/user_services.py:399 #: REST/model.py:185 models/meta_pool.py:73 msgid "Priority" msgstr "Priorität" -#: REST/methods/authenticators.py:70 REST/methods/authenticators.py:107 +#: REST/methods/authenticators.py:71 REST/methods/authenticators.py:110 #: REST/methods/meta_pools.py:86 REST/methods/meta_pools.py:193 #: REST/methods/services_pools.py:141 REST/methods/services_pools.py:386 msgid "Visible" msgstr "Sichtbar" -#: REST/methods/authenticators.py:71 REST/methods/meta_pools.py:88 +#: REST/methods/authenticators.py:72 REST/methods/meta_pools.py:88 #: REST/methods/transports.py:164 REST/model.py:201 msgid "Label" msgstr "Etikette" -#: REST/methods/authenticators.py:72 core/util/stats/counters.py:252 -#: reports/stats/pools_performance.py:223 -#: reports/stats/pools_performance.py:286 reports/stats/user_access.py:254 -#: reports/stats/user_access.py:297 services/RDS_enterprise/provider.py:74 +#: REST/methods/authenticators.py:73 core/util/stats/counters.py:252 +#: reports/stats/pools_performance.py:206 +#: reports/stats/pools_performance.py:269 reports/stats/user_access.py:239 +#: reports/stats/user_access.py:282 services/RDS_enterprise/provider.py:74 #: templates/uds/reports/stats/authenticator_stats.html:15 #: templates/uds/reports/stats/pools-performance.html:35 #: templates/uds/reports/stats/user-access.html:35 msgid "Users" msgstr "Benutzer" -#: REST/methods/authenticators.py:109 REST/methods/services_pools.py:387 -msgid "If active, transport will be visible for users" -msgstr "Wenn aktiv, ist der Transport für Benutzer sichtbar" +#: REST/methods/authenticators.py:74 core/ui/user_interface.py:104 +msgid "MFA" +msgstr "MFA" -#: REST/methods/authenticators.py:113 REST/methods/services_pools.py:390 -#: REST/methods/services_pools.py:405 REST/methods/services_pools.py:422 -#: REST/methods/services_pools.py:433 core/ui/user_interface.py:103 -#: services/OVirt/service.py:188 -msgid "Display" -msgstr "Anzeige" +#: REST/methods/authenticators.py:112 +msgid "If active, authenticator will be visible for users" +msgstr "Wenn aktiv, ist der Authentifikator für Benutzer sichtbar" -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:125 core/services/service.py:143 +#: core/services/service.py:154 mfas/Email/mfa.py:46 mfas/SMS/mfa.py:112 +#: models/permissions.py:92 models/permissions.py:96 +#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 +#: services/Proxmox/service.py:208 services/Sample/service.py:100 +#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 +msgid "None" +msgstr "Keiner" + +#: REST/methods/authenticators.py:132 +msgid "MFA Provider" +msgstr "MFA-Anbieter" + +#: REST/methods/authenticators.py:134 +msgid "MFA provider to use for this authenticator" +msgstr "MFA-Anbieter, der für diesen Authentifikator verwendet werden soll" + +#: REST/methods/authenticators.py:193 msgid "Too many results..." msgstr "Zu viele Ergebnisse ..." -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:193 msgid "Refine your query" msgstr "Verfeinern Sie Ihre Suchanfrage" @@ -376,7 +392,7 @@ msgstr "Erstellungsdatum" #: REST/methods/meta_service_pools.py:195 REST/methods/services_usage.py:125 #: reports/stats/pool_users_summary.py:60 -#: reports/stats/pools_performance.py:284 reports/stats/pools_usage_day.py:171 +#: reports/stats/pools_performance.py:267 reports/stats/pools_usage_day.py:169 #: reports/stats/pools_usage_summary.py:156 reports/stats/usage_by_pool.py:59 #: reports/stats/usage_by_pool.py:173 services/Proxmox/service.py:111 #: templates/uds/reports/stats/pools-performance.html:33 @@ -435,6 +451,28 @@ msgstr "Artikel wurde bereits entfernt" msgid "Item is not removable" msgstr "Artikel ist nicht abnehmbar" +#: REST/methods/mfas.py:54 +msgid "Multi Factor Authentication" +msgstr "Multi-Faktor-Authentifizierung" + +#: REST/methods/mfas.py:80 +msgid "Device Caching" +msgstr "Geräte-Caching" + +#: REST/methods/mfas.py:82 +msgid "Time in hours to cache device so MFA is not required again. User based." +msgstr "" +"Zeit in Stunden zum Zwischenspeichern des Geräts, sodass MFA nicht erneut " +"erforderlich ist. Benutzerbasiert." + +#: REST/methods/mfas.py:94 +msgid "MFA code validity" +msgstr "Gültigkeit des MFA-Codes" + +#: REST/methods/mfas.py:96 +msgid "Time in minutes to allow MFA code to be used." +msgstr "Zeit in Minuten, um MFA-Code verwenden zu können." + #: REST/methods/networks.py:59 REST/methods/transports.py:114 msgid "Networks" msgstr "Netzwerke" @@ -525,7 +563,7 @@ msgstr "Dienstleister" msgid "Status" msgstr "Status" -#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:171 +#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:169 #: templates/uds/reports/stats/authenticator_stats.html:16 #: templates/uds/reports/stats/pools-usage-day.html:29 msgid "Services" @@ -620,13 +658,13 @@ msgstr "" msgid "Available reports" msgstr "Verfügbare Berichte" -#: REST/methods/reports.py:67 REST/methods/users_groups.py:377 -#: REST/methods/users_groups.py:398 -#: auths/ActiveDirectory_enterprise/authenticator.py:143 +#: REST/methods/reports.py:67 REST/methods/users_groups.py:375 +#: REST/methods/users_groups.py:396 +#: auths/ActiveDirectory_enterprise/authenticator.py:153 #: auths/AzureAD_enterprise/azure_ad.py:95 #: auths/EDirectory_enterprise/authenticator.py:105 #: auths/Radius/authenticator.py:63 auths/RegexLdap/authenticator.py:191 -#: auths/SAML_enterprise/saml.py:121 auths/SimpleLDAP/authenticator.py:182 +#: auths/SAML_enterprise/saml.py:109 auths/SimpleLDAP/authenticator.py:182 #: models/calendar_action.py:147 models/calendar_action.py:154 msgid "Group" msgstr "Gruppe" @@ -691,13 +729,13 @@ msgstr "Proxy für Dienste hinter einer Firewall" msgid "Advanced" msgstr "Erweitert" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "With errors" msgstr "Mit Fehlern" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "Ok" msgstr "OK" @@ -778,6 +816,16 @@ msgstr "" "Wenn die Option aktiviert ist, versucht das System nicht, die zugewiesenen, " "jedoch nicht verwendeten User-Services zu erkennen und zu entfernen." +#: REST/methods/services_pools.py:387 +msgid "If active, transport will be visible for users" +msgstr "Wenn aktiv, ist der Transport für Benutzer sichtbar" + +#: REST/methods/services_pools.py:390 REST/methods/services_pools.py:405 +#: REST/methods/services_pools.py:422 REST/methods/services_pools.py:433 +#: core/ui/user_interface.py:103 services/OVirt/service.py:188 +msgid "Display" +msgstr "Anzeige" + #: REST/methods/services_pools.py:439 msgid "Initial available services" msgstr "Anfangs verfügbare Services" @@ -987,7 +1035,7 @@ msgstr "Mitarbeiter" #: auths/AzureAD_enterprise/azure_ad.py:94 #: auths/EDirectory_enterprise/authenticator.py:69 #: auths/Radius/authenticator.py:62 auths/RegexLdap/authenticator.py:91 -#: auths/SAML_enterprise/saml.py:118 reports/stats/pool_users_summary.py:177 +#: auths/SAML_enterprise/saml.py:106 reports/stats/pool_users_summary.py:177 #: reports/stats/usage_by_pool.py:171 #: templates/uds/reports/stats/pool-users-summary.html:14 #: templates/uds/reports/stats/usage-by-pool.html:15 @@ -1004,10 +1052,10 @@ msgid "Current users" msgstr "Derzeitige Nutzer" #: REST/methods/users_groups.py:160 -#: auths/ActiveDirectory_enterprise/authenticator.py:141 +#: auths/ActiveDirectory_enterprise/authenticator.py:151 #: auths/EDirectory_enterprise/authenticator.py:103 #: auths/RegexLdap/authenticator.py:189 auths/SimpleLDAP/authenticator.py:180 -#: services/HyperV_enterprise/legacy/provider.py:103 +#: mfas/Email/mfa.py:54 services/HyperV_enterprise/legacy/provider.py:103 #: services/HyperV_enterprise/provider.py:86 #: services/NutanixPrism_enterprise/provider.py:54 #: services/Nutanix_enterprise/provider.py:54 services/OVirt/provider.py:121 @@ -1021,7 +1069,7 @@ msgstr "Derzeitige Nutzer" #: transports/NoMachine_enterprise/nomachine_base.py:63 #: transports/PCoIP_enterprise/pcoip.py:61 transports/RDP/rdp_base.py:75 #: transports/SPICE/spice_base.py:69 transports/X2GO/x2go_base.py:70 -#: web/forms/LoginForm.py:43 +#: web/forms/LoginForm.py:44 msgid "Username" msgstr "Benutzername" @@ -1029,7 +1077,7 @@ msgstr "Benutzername" msgid "Role" msgstr "Rolle" -#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:389 +#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:387 msgid "state" msgstr "Zustand" @@ -1041,32 +1089,32 @@ msgstr "Letzter Zugriff" msgid "Username cannot be empty" msgstr "Benutzername darf nicht leer sein" -#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:470 +#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:468 msgid "User already exists (duplicate key error)" msgstr "Benutzer ist bereits vorhanden (Fehler durch doppelten Schlüssel)" -#: REST/methods/users_groups.py:365 +#: REST/methods/users_groups.py:363 #, python-brace-format msgid "Groups of {0}" msgstr "Gruppen von {0}" -#: REST/methods/users_groups.py:371 +#: REST/methods/users_groups.py:369 msgid "Current groups" msgstr "Aktuelle Gruppen" -#: REST/methods/users_groups.py:398 +#: REST/methods/users_groups.py:396 msgid "UDS Group" msgstr "UDS-Gruppe" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "Meta group" msgstr "Metagruppe" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "UDS Meta Group" msgstr "UDS-Metagruppe" -#: REST/methods/users_groups.py:430 +#: REST/methods/users_groups.py:428 msgid "Group name is required" msgstr "Gruppenname ist erforderlich" @@ -1117,7 +1165,7 @@ msgstr "Methode nicht gefunden in {}: {}" msgid "Item not found" msgstr "Artikel nicht gefunden" -#: REST/model.py:336 web/util/authentication.py:140 web/util/errors.py:79 +#: REST/model.py:336 web/util/authentication.py:143 web/util/errors.py:81 msgid "Access denied" msgstr "Zugriff verweigert" @@ -1125,7 +1173,7 @@ msgstr "Zugriff verweigert" msgid "Operation not supported" msgstr "Vorgang wird nicht unterstützt" -#: admin/views/__init__.py:59 +#: admin/views/__init__.py:72 msgid "requested a template that do not exist" msgstr "eine Vorlage angefordert, die nicht vorhanden ist" @@ -1159,11 +1207,11 @@ msgstr "" "hierfür das Format USER@DOMAIN.DOM)" #: auths/ActiveDirectory_enterprise/authenticator.py:80 -#: auths/ActiveDirectory_enterprise/authenticator.py:145 +#: auths/ActiveDirectory_enterprise/authenticator.py:155 #: auths/EDirectory_enterprise/authenticator.py:77 #: auths/RegexLdap/authenticator.py:99 auths/RegexLdap/authenticator.py:193 #: auths/SimpleLDAP/authenticator.py:90 auths/SimpleLDAP/authenticator.py:184 -#: core/auths/authenticator.py:147 +#: core/auths/authenticator.py:147 mfas/Email/mfa.py:63 #: osmanagers/WindowsOsManager/windows_domain.py:85 #: osmanagers/WindowsOsManager/windows_random.py:76 #: services/HyperV_enterprise/legacy/provider.py:110 @@ -1179,8 +1227,8 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcv_base.py:52 #: transports/NoMachine_enterprise/nomachine_base.py:69 #: transports/PCoIP_enterprise/pcoip.py:67 transports/RDP/rdp_base.py:81 -#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:45 -#: web/forms/LoginForm.py:46 +#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:46 +#: web/forms/LoginForm.py:47 msgid "Password" msgstr "Passwort" @@ -1247,22 +1295,32 @@ msgstr "" "Wenn nicht leer, wird dieser Host verwendet, falls der Haupthostserver nicht " "erreichbar ist" -#: auths/ActiveDirectory_enterprise/authenticator.py:130 +#: auths/ActiveDirectory_enterprise/authenticator.py:133 +#: auths/SAML_enterprise/saml.py:207 +msgid "MFA attribute" +msgstr "MFA-Attribut" + +#: auths/ActiveDirectory_enterprise/authenticator.py:135 +#: auths/SAML_enterprise/saml.py:209 +msgid "Attribute from where to extract the MFA code" +msgstr "Attribut, aus dem der MFA-Code extrahiert werden soll" + +#: auths/ActiveDirectory_enterprise/authenticator.py:140 msgid "Active Directory Authenticator" msgstr "Active Directory Authenticator" -#: auths/ActiveDirectory_enterprise/authenticator.py:132 +#: auths/ActiveDirectory_enterprise/authenticator.py:142 msgid "Authenticate against Active Directory" msgstr "Authentifizieren Sie sich gegen Active Directory" -#: auths/ActiveDirectory_enterprise/authenticator.py:175 -#: auths/ActiveDirectory_enterprise/authenticator.py:602 +#: auths/ActiveDirectory_enterprise/authenticator.py:187 +#: auths/ActiveDirectory_enterprise/authenticator.py:648 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "Der Benutzername muss in der Form USERNAME@DOMAIN.DOM angegeben werden" -#: auths/ActiveDirectory_enterprise/authenticator.py:481 -#: auths/ActiveDirectory_enterprise/authenticator.py:532 -#: auths/AzureAD_enterprise/azure_ad.py:313 +#: auths/ActiveDirectory_enterprise/authenticator.py:521 +#: auths/ActiveDirectory_enterprise/authenticator.py:578 +#: auths/AzureAD_enterprise/azure_ad.py:315 #: auths/EDirectory_enterprise/authenticator.py:269 #: auths/EDirectory_enterprise/authenticator.py:300 #: auths/RegexLdap/authenticator.py:538 auths/RegexLdap/authenticator.py:569 @@ -1270,36 +1328,36 @@ msgstr "Der Benutzername muss in der Form USERNAME@DOMAIN.DOM angegeben werden" msgid "Username not found" msgstr "Benutzername nicht gefunden" -#: auths/ActiveDirectory_enterprise/authenticator.py:514 +#: auths/ActiveDirectory_enterprise/authenticator.py:560 #: auths/SimpleLDAP/authenticator.py:468 msgid "Group not found" msgstr "Gruppe nicht gefunden" -#: auths/ActiveDirectory_enterprise/authenticator.py:559 -#: auths/ActiveDirectory_enterprise/authenticator.py:581 +#: auths/ActiveDirectory_enterprise/authenticator.py:605 +#: auths/ActiveDirectory_enterprise/authenticator.py:627 #: auths/EDirectory_enterprise/authenticator.py:322 #: auths/RegexLdap/authenticator.py:597 auths/SimpleLDAP/authenticator.py:503 #: auths/SimpleLDAP/authenticator.py:523 msgid "Too many results, be more specific" msgstr "Zu viele Ergebnisse, bitte konkretisieren" -#: auths/ActiveDirectory_enterprise/authenticator.py:613 +#: auths/ActiveDirectory_enterprise/authenticator.py:659 msgid "Domain seems to be incorrect, please check it" msgstr "Die Domain scheint falsch zu sein, bitte überprüfen Sie es" -#: auths/ActiveDirectory_enterprise/authenticator.py:632 +#: auths/ActiveDirectory_enterprise/authenticator.py:678 msgid "" "Server does not seem an Active Directory (it does not have user objects)" msgstr "" "Server scheint kein Active Directory zu sein (es hat keine Benutzerobjekte)" -#: auths/ActiveDirectory_enterprise/authenticator.py:655 +#: auths/ActiveDirectory_enterprise/authenticator.py:701 msgid "" "Server does not seem an Active Directory (it does not have group objects)" msgstr "" "Server scheint kein Active Directory zu sein (er hat keine Gruppenobjekte)" -#: auths/ActiveDirectory_enterprise/authenticator.py:664 +#: auths/ActiveDirectory_enterprise/authenticator.py:710 #: auths/EDirectory_enterprise/authenticator.py:445 #: auths/RegexLdap/authenticator.py:707 auths/SimpleLDAP/authenticator.py:686 msgid "Connection params seem correct, test was succesfully executed" @@ -1394,21 +1452,21 @@ msgstr "Microsoft-Abmeldung" msgid "Office 365 logout" msgstr "Abmeldung von Office 365" -#: auths/AzureAD_enterprise/azure_ad.py:176 auths/SAML_enterprise/saml.py:217 +#: auths/AzureAD_enterprise/azure_ad.py:176 msgid "SAML Authenticator does not support white spaces on field NAME" msgstr "SAML Authenticator unterstützt keine Leerzeichen im Feld NAME" -#: auths/AzureAD_enterprise/azure_ad.py:323 -#: auths/AzureAD_enterprise/azure_ad.py:349 -#: auths/AzureAD_enterprise/azure_ad.py:359 +#: auths/AzureAD_enterprise/azure_ad.py:325 +#: auths/AzureAD_enterprise/azure_ad.py:351 +#: auths/AzureAD_enterprise/azure_ad.py:361 msgid "Authenticator exception:" msgstr "Authenticator-Ausnahme:" -#: auths/AzureAD_enterprise/azure_ad.py:394 core/util/ldaputil.py:49 +#: auths/AzureAD_enterprise/azure_ad.py:396 core/util/ldaputil.py:49 msgid "Connection error: " msgstr "Verbindungsfehler:" -#: auths/AzureAD_enterprise/azure_ad.py:397 +#: auths/AzureAD_enterprise/azure_ad.py:399 msgid "Connection params seems correct, test was succesfully executed" msgstr "" "Verbindungsparameter scheinen korrekt zu sein, der Test wurde erfolgreich " @@ -1516,7 +1574,7 @@ msgstr "IP-Authenticator" msgid "IP Range" msgstr "IP-Bereich" -#: auths/IP/authenticator.py:119 auths/IP/authenticator.py:122 +#: auths/IP/authenticator.py:122 auths/IP/authenticator.py:125 msgid "All seems to be fine." msgstr "Alles scheint gut zu sein." @@ -1712,19 +1770,19 @@ msgstr "" "Ldap-Gruppen-ID-Attribut scheint falsch zu sein (von diesem Attribut wurde " "keine Gruppe gefunden)" -#: auths/SAML_enterprise/saml.py:88 +#: auths/SAML_enterprise/saml.py:76 msgid "SAML Authenticator" msgstr "SAML Authenticator" -#: auths/SAML_enterprise/saml.py:100 +#: auths/SAML_enterprise/saml.py:88 msgid "SAML (v2.0) Authenticator" msgstr "SAML (v2.0) Authenticator" -#: auths/SAML_enterprise/saml.py:130 +#: auths/SAML_enterprise/saml.py:118 msgid "Private key" msgstr "Privat Schlüssel" -#: auths/SAML_enterprise/saml.py:133 +#: auths/SAML_enterprise/saml.py:121 msgid "" "Private key used for sign and encription, as generated in base 64 from " "openssl" @@ -1732,15 +1790,15 @@ msgstr "" "Privater Schlüssel, der zum Signieren und Schreiben verwendet wird, wie in " "Base 64 von OpenSSL generiert" -#: auths/SAML_enterprise/saml.py:136 auths/SAML_enterprise/saml.py:147 +#: auths/SAML_enterprise/saml.py:124 auths/SAML_enterprise/saml.py:135 msgid "Certificates" msgstr "Zertifikate" -#: auths/SAML_enterprise/saml.py:141 transports/SPICE/spice_base.py:83 +#: auths/SAML_enterprise/saml.py:129 transports/SPICE/spice_base.py:83 msgid "Certificate" msgstr "Zertifikat" -#: auths/SAML_enterprise/saml.py:144 +#: auths/SAML_enterprise/saml.py:132 msgid "" "Public key used for sign and encription (public part of previous private " "key), as generated in base 64 from openssl" @@ -1749,61 +1807,83 @@ msgstr "" "vorherigen privaten Schlüssels), wie er in der Basis 64 von openssl " "generiert wird" -#: auths/SAML_enterprise/saml.py:152 +#: auths/SAML_enterprise/saml.py:140 msgid "IDP Metadata" msgstr "IDP-Metadaten" -#: auths/SAML_enterprise/saml.py:155 +#: auths/SAML_enterprise/saml.py:143 msgid "" "You can enter here the URL or the IDP metadata or the metadata itself (xml)" msgstr "" "Sie können hier die URL oder die IDP-Metadaten oder die Metadaten selbst " "(xml) eingeben." -#: auths/SAML_enterprise/saml.py:158 auths/SAML_enterprise/saml.py:167 +#: auths/SAML_enterprise/saml.py:146 auths/SAML_enterprise/saml.py:155 msgid "Metadata" msgstr "Metadaten" -#: auths/SAML_enterprise/saml.py:162 +#: auths/SAML_enterprise/saml.py:150 msgid "Entity ID" msgstr "Entity-ID" -#: auths/SAML_enterprise/saml.py:165 +#: auths/SAML_enterprise/saml.py:153 msgid "ID of the SP. If left blank, this will be autogenerated from server URL" msgstr "" "ID des SP. Bleibt das Feld leer, wird dies automatisch von der Server-URL " "generiert" -#: auths/SAML_enterprise/saml.py:173 +#: auths/SAML_enterprise/saml.py:161 msgid "User name attrs" msgstr "Benutzername attrs" -#: auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:163 msgid "Fields from where to extract user name" msgstr "Felder, aus denen der Benutzername extrahiert werden soll" -#: auths/SAML_enterprise/saml.py:177 auths/SAML_enterprise/saml.py:187 -#: auths/SAML_enterprise/saml.py:197 +#: auths/SAML_enterprise/saml.py:165 auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:185 msgid "Attributes" msgstr "Attribute" -#: auths/SAML_enterprise/saml.py:183 +#: auths/SAML_enterprise/saml.py:171 msgid "Group name attrs" msgstr "Gruppenname attrs" -#: auths/SAML_enterprise/saml.py:185 +#: auths/SAML_enterprise/saml.py:173 msgid "Fields from where to extract the groups" msgstr "Felder, aus denen die Gruppen extrahiert werden sollen" -#: auths/SAML_enterprise/saml.py:193 +#: auths/SAML_enterprise/saml.py:181 msgid "Real name attrs" msgstr "Echte name attrs" -#: auths/SAML_enterprise/saml.py:195 +#: auths/SAML_enterprise/saml.py:183 msgid "Fields from where to extract the real name" msgstr "Felder, aus denen der echte Name extrahiert werden soll" +#: auths/SAML_enterprise/saml.py:189 +msgid "Global logout" +msgstr "Globale Abmeldung" + +#: auths/SAML_enterprise/saml.py:192 +msgid "If set, logout from UDS will trigger SAML logout" +msgstr "Wenn gesetzt, löst die Abmeldung von UDS die SAML-Abmeldung aus" + +#: auths/SAML_enterprise/saml.py:197 +msgid "ADFS compatibility" +msgstr "ADFS-Kompatibilität" + +#: auths/SAML_enterprise/saml.py:200 +msgid "If set, enable lowercase url encoding so ADFS can work correctly" +msgstr "" +"Wenn festgelegt, aktivieren Sie die URL-Codierung in Kleinbuchstaben, damit " +"ADFS ordnungsgemäß funktionieren kann" + #: auths/SAML_enterprise/saml.py:231 +msgid "This kind of Authenticator does not support white spaces on field NAME" +msgstr "Diese Art von Authenticator unterstützt keine Leerzeichen im Feld NAME" + +#: auths/SAML_enterprise/saml.py:245 msgid "" "Server certificate should be a valid PEM (PEM certificates starts with -----" "BEGIN CERTIFICATE-----)" @@ -1811,11 +1891,11 @@ msgstr "" "Serverzertifikat sollte ein gültiges PEM sein (PEM-Zertifikate beginnen mit " "----- BEGIN CERTIFICATE -----)" -#: auths/SAML_enterprise/saml.py:239 +#: auths/SAML_enterprise/saml.py:253 msgid "Invalid server certificate. " msgstr "Ungültiges Serverzertifikat" -#: auths/SAML_enterprise/saml.py:250 +#: auths/SAML_enterprise/saml.py:264 msgid "" "Private key should be a valid PEM (PEM private keys starts with -----BEGIN " "RSA PRIVATE KEY-----" @@ -1823,27 +1903,47 @@ msgstr "" "Der private Schlüssel sollte ein gültiges PEM sein (der private PEM- " "Schlüssel beginnt mit ----- BEGIN RSA PRIVATE KEY -----" -#: auths/SAML_enterprise/saml.py:258 +#: auths/SAML_enterprise/saml.py:272 msgid "Invalid private key. " msgstr "Ungültiger privater Schlüssel" -#: auths/SAML_enterprise/saml.py:277 +#: auths/SAML_enterprise/saml.py:291 #, python-brace-format msgid "Can't fetch url {0}: {1}" msgstr "URL {0} kann nicht abgerufen werden: {1}" -#: auths/SAML_enterprise/saml.py:288 +#: auths/SAML_enterprise/saml.py:302 msgid " (obtained from URL)" msgstr "(von URL erhalten)" -#: auths/SAML_enterprise/saml.py:290 +#: auths/SAML_enterprise/saml.py:304 msgid "XML does not seem valid for IDP Metadata " msgstr "XML scheint für IDP-Metadaten nicht gültig zu sein" -#: auths/SAML_enterprise/saml.py:312 +#: auths/SAML_enterprise/saml.py:357 msgid "Can't access idp metadata" msgstr "Ich kann nicht auf IDP-Metadaten zugreifen" +#: auths/SAML_enterprise/saml.py:424 +msgid "Error validating SP metadata: " +msgstr "Fehler beim Validieren von SP-Metadaten:" + +#: auths/SAML_enterprise/saml.py:528 +msgid "Error processing SLO: " +msgstr "Fehler bei der Verarbeitung von SLO:" + +#: auths/SAML_enterprise/saml.py:558 +msgid "Error processing SAML response: " +msgstr "Fehler bei der Verarbeitung der SAML-Antwort:" + +#: auths/SAML_enterprise/saml.py:571 +msgid "SAML response not authenticated" +msgstr "SAML-Antwort nicht authentifiziert" + +#: auths/SAML_enterprise/saml.py:598 +msgid "No attributes returned from IdP" +msgstr "Keine Attribute vom IdP zurückgegeben" + #: auths/Sample/SampleAuth.py:79 msgid "Sample Authenticator" msgstr "Beispielauthentifizierer" @@ -1940,11 +2040,11 @@ msgstr "" msgid "Can't locate any group with the membership attribute specified" msgstr "Kann keine Gruppe mit dem angegebenen Mitgliedschaftsattribut finden" -#: core/auths/auth.py:110 +#: core/auths/auth.py:111 msgid "System Administrator" msgstr "Systemadministrator" -#: core/auths/auth.py:150 +#: core/auths/auth.py:155 msgid "Forbidden" msgstr "verboten" @@ -1984,21 +2084,21 @@ msgid "Can't unpublish publications with services in process" msgstr "" "Veröffentlichungen mit laufenden Services können nicht aufgehoben werden" -#: core/managers/user_service.py:337 +#: core/managers/user_service.py:348 msgid "Can't remove a non active element" msgstr "Ein nicht aktives Element kann nicht entfernt werden" -#: core/managers/user_service.py:363 +#: core/managers/user_service.py:374 msgid "Can't remove nor cancel {} cause its state don't allow it" msgstr "" "{} Kann nicht entfernt oder abgebrochen werden, da der Status dies nicht " "zulässt" -#: core/managers/user_service.py:395 +#: core/managers/user_service.py:406 msgid "The requested service is restrained" msgstr "Der angeforderte Service ist eingeschränkt" -#: core/managers/user_service.py:761 web/util/errors.py:81 +#: core/managers/user_service.py:770 web/util/errors.py:83 msgid "" "Invalid service. The service is not available at this moment. Please, try " "later" @@ -2006,14 +2106,22 @@ msgstr "" "Ungültiger Service. Der Service ist momentan nicht verfügbar. Bitte versuch " "es später erneut" -#: core/managers/user_service.py:798 +#: core/managers/user_service.py:807 msgid "The requested transport {} is not valid for {}" msgstr "Der angeforderte Transport {} ist für {} nicht gültig" -#: core/managers/user_service.py:1078 +#: core/managers/user_service.py:1084 msgid "The service is not accessible from this device" msgstr "Der Service ist auf diesem Gerät nicht erreichbar" +#: core/mfas/mfa.py:60 core/mfas/mfa.py:72 +msgid "Base MFA" +msgstr "Basis-MFA" + +#: core/mfas/mfa.py:184 +msgid "Invalid MFA code" +msgstr "Ungültiger MFA-Code" + #: core/module.py:215 msgid "No connection checking method is implemented." msgstr "Es wird keine Verbindungsüberprüfungsmethode implementiert." @@ -2058,14 +2166,6 @@ msgstr "Gedruckt in {now:% Y,% b% d} um {now:% H:% M}" msgid "Base Service" msgstr "Basisservice" -#: core/services/service.py:143 core/services/service.py:154 -#: models/permissions.py:92 models/permissions.py:96 -#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 -#: services/Proxmox/service.py:208 services/Sample/service.py:100 -#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 -msgid "None" -msgstr "Keiner" - #: core/transports/transport.py:52 msgid "Direct" msgstr "Direkte" @@ -2190,23 +2290,23 @@ msgstr "Benutzer mit Diensten" msgid "Cached" msgstr "Zwischengespeichert" -#: core/util/tools.py:152 +#: core/util/tools.py:155 msgid "{} days {:d}:{:02d}:{:02d}" msgstr "{} Tage {: d}: {: 02d}: {: 02d}" -#: core/util/tools.py:171 +#: core/util/tools.py:174 msgid "The basename is not a valid for a hostname" msgstr "Der Basisname ist kein gültiger Hostname" -#: core/util/tools.py:176 +#: core/util/tools.py:179 msgid "The length of basename plus length must be greater than 0" msgstr "Die Länge von basename plus length muss größer als 0 sein" -#: core/util/tools.py:181 +#: core/util/tools.py:184 msgid "The length of basename plus length must not be greater than 15" msgstr "Die Länge des Basisnamens plus Länge darf nicht größer als 15 sein" -#: core/util/tools.py:186 +#: core/util/tools.py:189 msgid "The machine name can't be only numbers" msgstr "Der Maschinenname kann nicht nur aus Zahlen bestehen" @@ -2237,7 +2337,11 @@ msgstr "{} überschreitet die maximale Länge des Hostnamens." msgid "{} is not a valid hostname" msgstr "{} ist kein gültiger Hostname" -#: core/util/validators.py:152 +#: core/util/validators.py:131 +msgid "{} is not a valid host:port pair" +msgstr "{} ist kein gültiges Host:Port-Paar" + +#: core/util/validators.py:168 msgid "" "Invalid mac range. Mac range must be in format XX:XX:XX:XX:XX:XX-XX:XX:XX:XX:" "XX:XX" @@ -2245,68 +2349,354 @@ msgstr "" "Ungültiger Mac-Bereich Der Mac-Bereich muss im Format XX:XX:XX:XX:XX:XX-XX:" "XX:XX:XX:XX:XX sein" -#: dispatchers/wyse_enterprise/views.py:118 +#: core/util/validators.py:182 +msgid "Email address is too long" +msgstr "E-Mail-Adresse ist zu lang" + +#: core/util/validators.py:187 +msgid "Email address is not valid" +msgstr "Email Adresse ist nicht gültig" + +#: dispatchers/wyse_enterprise/views.py:119 msgid "There are no authenticators available for login" msgstr "Für den Login sind keine Authentifikatoren verfügbar" -#: dispatchers/wyse_enterprise/views.py:138 +#: dispatchers/wyse_enterprise/views.py:139 #, python-brace-format msgid "The authenticator {0} is not usable" msgstr "Der Authentifikator {0} ist nicht verwendbar" -#: dispatchers/wyse_enterprise/views.py:145 +#: dispatchers/wyse_enterprise/views.py:146 msgid "Invalid credentials" msgstr "Ungültige Anmeldeinformationen" -#: dispatchers/wyse_enterprise/views.py:152 +#: dispatchers/wyse_enterprise/views.py:153 #, python-brace-format msgid "The domain {0} does not exists" msgstr "Die Domäne {0} ist nicht vorhanden" -#: dispatchers/wyse_enterprise/views.py:228 +#: dispatchers/wyse_enterprise/views.py:229 msgid "No services available" msgstr "Keine Dienstleistungen verfügbar" -#: dispatchers/wyse_enterprise/views.py:244 -#: dispatchers/wyse_enterprise/views.py:344 +#: dispatchers/wyse_enterprise/views.py:245 +#: dispatchers/wyse_enterprise/views.py:345 msgid "Invalid session" msgstr "Ungültige Sitzung" -#: dispatchers/wyse_enterprise/views.py:248 -#: dispatchers/wyse_enterprise/views.py:348 +#: dispatchers/wyse_enterprise/views.py:249 +#: dispatchers/wyse_enterprise/views.py:349 msgid "Invalid authorization" msgstr "Ungültige Autorisierung" -#: dispatchers/wyse_enterprise/views.py:259 -#: dispatchers/wyse_enterprise/views.py:354 +#: dispatchers/wyse_enterprise/views.py:260 +#: dispatchers/wyse_enterprise/views.py:355 msgid "Invalid request" msgstr "Ungültige Anfrage" -#: dispatchers/wyse_enterprise/views.py:262 -#: dispatchers/wyse_enterprise/views.py:357 +#: dispatchers/wyse_enterprise/views.py:263 +#: dispatchers/wyse_enterprise/views.py:358 msgid "Invalid credentials used" msgstr "Ungültige Anmeldeinformationen verwendet" -#: dispatchers/wyse_enterprise/views.py:277 web/util/errors.py:78 +#: dispatchers/wyse_enterprise/views.py:278 web/util/errors.py:80 msgid "Service not found" msgstr "Service nicht gefunden" -#: dispatchers/wyse_enterprise/views.py:281 +#: dispatchers/wyse_enterprise/views.py:282 msgid "Invalid machine uuid." msgstr "Ungültige Maschinen-UUID." -#: dispatchers/wyse_enterprise/views.py:295 web/util/errors.py:77 +#: dispatchers/wyse_enterprise/views.py:296 web/util/errors.py:79 msgid "Transport not found" msgstr "Transport nicht gefunden" -#: dispatchers/wyse_enterprise/views.py:300 -#: dispatchers/wyse_enterprise/views.py:308 -#: dispatchers/wyse_enterprise/views.py:315 +#: dispatchers/wyse_enterprise/views.py:301 +#: dispatchers/wyse_enterprise/views.py:309 +#: dispatchers/wyse_enterprise/views.py:316 msgid "Service not ready at this moment. Please, try again in a while." msgstr "" "Der Service ist momentan nicht fertig. Bitte versuchen Sie es in einer Weile " "erneut." +#: mfas/Email/mfa.py:22 +msgid "Email Multi Factor" +msgstr "E-Mail-Multifaktor" + +#: mfas/Email/mfa.py:24 +msgid "Email Multi Factor Authenticator" +msgstr "E-Mail-Multi-Faktor-Authentifikator" + +#: mfas/Email/mfa.py:29 +msgid "SMTP Host" +msgstr "SMTP-Host" + +#: mfas/Email/mfa.py:32 +msgid "" +"SMTP Server hostname or IP address. If you are using a non-standard port, " +"add it after a colon, for example: smtp.gmail.com:587" +msgstr "" +"Hostname oder IP-Adresse des SMTP-Servers. Wenn Sie einen nicht " +"standardmäßigen Port verwenden, fügen Sie ihn nach einem Doppelpunkt hinzu, " +"zum Beispiel: smtp.gmail.com:587" + +#: mfas/Email/mfa.py:37 mfas/Email/mfa.py:50 mfas/Email/mfa.py:59 +#: mfas/Email/mfa.py:68 +msgid "SMTP Server" +msgstr "SMTP-Server" + +#: mfas/Email/mfa.py:41 transports/HTML5RDP/html5rdp.py:268 +#: transports/HTML5RDS_enterprise/html5rds.py:255 +msgid "Security" +msgstr "Sicherheit" + +#: mfas/Email/mfa.py:42 +msgid "Security protocol to use" +msgstr "Zu verwendendes Sicherheitsprotokoll" + +#: mfas/Email/mfa.py:44 +msgid "TLS" +msgstr "TLS" + +#: mfas/Email/mfa.py:45 +msgid "SSL" +msgstr "SSL" + +#: mfas/Email/mfa.py:56 +msgid "User with access to SMTP server" +msgstr "Benutzer mit Zugriff auf den SMTP-Server" + +#: mfas/Email/mfa.py:65 +msgid "Password of the user with access to SMTP server" +msgstr "Passwort des Benutzers mit Zugriff auf den SMTP-Server" + +#: mfas/Email/mfa.py:74 +msgid "Subject" +msgstr "Thema" + +#: mfas/Email/mfa.py:76 +msgid "Subject of the email" +msgstr "Betreff der E-Mail" + +#: mfas/Email/mfa.py:78 mfas/Email/mfa.py:87 mfas/Email/mfa.py:95 +msgid "Config" +msgstr "Konfig" + +#: mfas/Email/mfa.py:83 +msgid "From Email" +msgstr "Aus der Email" + +#: mfas/Email/mfa.py:85 +msgid "Email address that will be used as sender" +msgstr "E-Mail-Adresse, die als Absender verwendet wird" + +#: mfas/Email/mfa.py:91 +msgid "Enable HTML" +msgstr "HTML aktivieren" + +#: mfas/Email/mfa.py:93 +msgid "Enable HTML in emails" +msgstr "Aktivieren Sie HTML in E-Mails" + +#: mfas/Email/mfa.py:110 +msgid "Invalid SMTP hostname" +msgstr "Ungültiger SMTP-Hostname" + +#: mfas/SMS/mfa.py:19 +msgid "SMS Thought HTTP" +msgstr "SMS dachte HTTP" + +#: mfas/SMS/mfa.py:21 +msgid "Simple SMS sending MFA using HTTP" +msgstr "Einfacher SMS-Versand per MFA über HTTP" + +#: mfas/SMS/mfa.py:26 +msgid "URL pattern for SMS sending" +msgstr "URL-Muster für den SMS-Versand" + +#: mfas/SMS/mfa.py:29 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"URL pattern for SMS sending. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"URL-Muster für den SMS-Versand. Es kann die folgenden Variablen enthalten: * " +"{code} - der zu sendende Code * {phone/+phone} - die Telefonnummer * " +"{username} - der Benutzername * {justUsername} - der Benutzername ohne @...." + +#: mfas/SMS/mfa.py:37 mfas/SMS/mfa.py:43 mfas/SMS/mfa.py:56 mfas/SMS/mfa.py:75 +#: mfas/SMS/mfa.py:92 mfas/SMS/mfa.py:101 +msgid "HTTP Server" +msgstr "HTTP-Server" + +#: mfas/SMS/mfa.py:41 +msgid "Ignore certificate errors" +msgstr "Zertifikatsfehler ignorieren" + +#: mfas/SMS/mfa.py:46 +msgid "" +"If checked, the server certificate will be ignored. This is useful if the " +"server uses a self-signed certificate." +msgstr "" +"Wenn diese Option aktiviert ist, wird das Serverzertifikat ignoriert. Dies " +"ist nützlich, wenn der Server ein selbstsigniertes Zertifikat verwendet." + +#: mfas/SMS/mfa.py:52 +msgid "SMS sending method" +msgstr "SMS-Sendemethode" + +#: mfas/SMS/mfa.py:54 mfas/SMS/mfa.py:108 +msgid "Method for sending SMS" +msgstr "Methode zum Senden von SMS" + +#: mfas/SMS/mfa.py:63 +msgid "Headers for SMS requests" +msgstr "Header für SMS-Anfragen" + +#: mfas/SMS/mfa.py:66 +msgid "" +"Headers for SMS requests. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @....\n" +"Headers are in the form of \"Header: Value\". (without the quotes)" +msgstr "" +"Header für SMS-Anfragen. Es kann die folgenden Variablen enthalten: * {code} " +"- der zu sendende Code * {phone/+phone} - die Telefonnummer * {username} - " +"der Benutzername * {justUsername} - der Benutzername ohne @... Header sind " +"in die Form \"Kopfzeile: Wert\". (ohne die Anführungszeichen)" + +#: mfas/SMS/mfa.py:81 +msgid "Parameters for SMS POST/PUT sending" +msgstr "Parameter für das Senden von SMS POST/PUT" + +#: mfas/SMS/mfa.py:84 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"Parameters for SMS sending via POST/PUT. It can contain the following " +"variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"Parameter für den SMS-Versand per POST/PUT. Es kann die folgenden Variablen " +"enthalten: * {code} - der zu sendende Code * {phone/+phone} - die " +"Telefonnummer * {username} - der Benutzername * {justUsername} - der " +"Benutzername ohne @...." + +#: mfas/SMS/mfa.py:96 +msgid "SMS encoding" +msgstr "SMS-Verschlüsselung" + +#: mfas/SMS/mfa.py:99 +msgid "Encoding for SMS" +msgstr "Verschlüsselung für SMS" + +#: mfas/SMS/mfa.py:106 +msgid "SMS authentication method" +msgstr "SMS-Authentifizierungsmethode" + +#: mfas/SMS/mfa.py:110 mfas/SMS/mfa.py:124 mfas/SMS/mfa.py:133 +msgid "HTTP Authentication" +msgstr "HTTP-Authentifizierung" + +#: mfas/SMS/mfa.py:113 +msgid "HTTP Basic Auth" +msgstr "HTTP-Basis-Auth" + +#: mfas/SMS/mfa.py:114 +msgid "HTTP Digest Auth" +msgstr "HTTP-Digest-Auth" + +#: mfas/SMS/mfa.py:120 +msgid "SMS authentication user or token" +msgstr "Benutzer oder Token für die SMS-Authentifizierung" + +#: mfas/SMS/mfa.py:122 +msgid "User or token for SMS authentication" +msgstr "Benutzer oder Token für die SMS-Authentifizierung" + +#: mfas/SMS/mfa.py:129 +msgid "SMS authentication password" +msgstr "SMS-Authentifizierungspasswort" + +#: mfas/SMS/mfa.py:131 +msgid "Password for SMS authentication" +msgstr "Passwort für die SMS-Authentifizierung" + +#: mfas/SMS/mfa.py:138 +msgid "SMS response OK regex" +msgstr "SMS-Antwort OK Regex" + +#: mfas/SMS/mfa.py:141 +msgid "" +"Regex for SMS response OK. If emty, the response is considered OK if status " +"code is 200." +msgstr "" +"Regex für SMS-Antwort OK. Wenn leer, wird die Antwort als OK betrachtet, " +"wenn der Statuscode 200 ist." + +#: mfas/SMS/mfa.py:144 mfas/SMS/mfa.py:153 +msgid "HTTP Response" +msgstr "HTTP-Antwort" + +#: mfas/SMS/mfa.py:148 +msgid "SMS response error action" +msgstr "SMS-Antwort-Fehleraktion" + +#: mfas/SMS/mfa.py:151 +msgid "Action for SMS response error" +msgstr "Aktion für SMS-Antwortfehler" + +#: mfas/SMS/mfa.py:155 +msgid "Allow user log in without MFA" +msgstr "Benutzeranmeldung ohne MFA zulassen" + +#: mfas/SMS/mfa.py:156 +msgid "Deny user log in" +msgstr "Benutzeranmeldung verweigern" + +#: mfas/SMS/mfa.py:199 +msgid "SMS sending failed" +msgstr "SMS-Versand fehlgeschlagen" + +#: mfas/SMS/mfa.py:263 web/views/modern.py:275 +msgid "MFA Code" +msgstr "MFA-Code" + +#: mfas/Sample/mfa.py:16 +msgid "Sample Multi Factor" +msgstr "Beispiel Multifaktor" + +#: mfas/Sample/mfa.py:18 +msgid "Sample Multi Factor Authenticator" +msgstr "Beispiel für einen Multi-Faktor-Authentifikator" + +#: mfas/Sample/mfa.py:22 +msgid "Sample useless field" +msgstr "Beispiel für ein nutzloses Feld" + +#: mfas/Sample/mfa.py:25 +msgid "This is a useless field, for sample and testing pourposes" +msgstr "Dies ist ein nutzloses Feld für Muster- und Testzwecke" + #: models/calendar_action.py:63 msgid "Publish" msgstr "Veröffentlichen" @@ -2867,7 +3257,7 @@ msgid "Service pool for report" msgstr "Servicepool für Bericht" #: reports/auto/fields.py:104 reports/lists/users.py:61 -#: web/forms/LoginForm.py:50 +#: web/forms/LoginForm.py:51 msgid "Authenticator" msgstr "Authenticator" @@ -2919,11 +3309,11 @@ msgstr "Benutzeridentifikation" msgid "Real Name" msgstr "Echter Name" -#: reports/stats/auth_stats.py:58 +#: reports/stats/auth_stats.py:59 msgid "Statistics by authenticator" msgstr "Statistik nach Authentifikator" -#: reports/stats/auth_stats.py:60 +#: reports/stats/auth_stats.py:61 msgid "" "Generates a report with the statistics of an authenticator for a desired " "period" @@ -2931,14 +3321,14 @@ msgstr "" "Erzeugt einen Bericht mit den Statistiken eines Authentifikators für einen " "gewünschten Zeitraum" -#: reports/stats/auth_stats.py:136 reports/stats/usage_by_pool.py:146 +#: reports/stats/auth_stats.py:123 reports/stats/usage_by_pool.py:146 #: templates/uds/reports/stats/authenticator_stats.html:4 #: templates/uds/reports/stats/usage-by-pool.html:4 #: templates/uds/reports/stats/usage-by-pool.html:6 msgid "Users usage list" msgstr "Nutzungsliste der Benutzer" -#: reports/stats/auth_stats.py:137 reports/stats/usage_by_pool.py:147 +#: reports/stats/auth_stats.py:124 reports/stats/usage_by_pool.py:147 msgid "UDS Report of users usage" msgstr "UDS-Nutzungsbericht" @@ -3013,30 +3403,26 @@ msgstr "Anzahl der Intervalle" msgid "Number of sampling points used in charts" msgstr "Anzahl der in den Diagrammen verwendeten Abtastpunkte" -#: reports/stats/pools_performance.py:128 -msgid "Select at least a service pool for the report" -msgstr "Wählen Sie mindestens einen Servicepool für den Bericht aus" - -#: reports/stats/pools_performance.py:211 +#: reports/stats/pools_performance.py:194 msgid "Distinct Users" msgstr "Unterschiedliche Benutzer" -#: reports/stats/pools_performance.py:230 -#: reports/stats/pools_performance.py:242 -#: reports/stats/pools_performance.py:287 +#: reports/stats/pools_performance.py:213 +#: reports/stats/pools_performance.py:225 +#: reports/stats/pools_performance.py:270 #: templates/uds/reports/stats/pools-performance.html:36 msgid "Accesses" msgstr "Zugriffe" -#: reports/stats/pools_performance.py:258 +#: reports/stats/pools_performance.py:241 msgid "UDS Pools Performance Report" msgstr "UDS-Pools-Leistungsbericht" -#: reports/stats/pools_performance.py:259 +#: reports/stats/pools_performance.py:242 msgid "Pools Performance" msgstr "Pools Leistung" -#: reports/stats/pools_performance.py:285 reports/stats/user_access.py:297 +#: reports/stats/pools_performance.py:268 reports/stats/user_access.py:282 #: templates/uds/reports/stats/pools-performance.html:34 #: templates/uds/reports/stats/user-access.html:34 msgid "Date range" @@ -3050,21 +3436,21 @@ msgstr "Poolnutzung an einem Tag" msgid "Pools usage counters for an specific day" msgstr "Poolt Nutzungszähler für einen bestimmten Tag" -#: reports/stats/pools_usage_day.py:128 +#: reports/stats/pools_usage_day.py:126 msgid "Services by hour" msgstr "Dienstleistungen pro Stunde" -#: reports/stats/pools_usage_day.py:133 reports/stats/pools_usage_day.py:171 -#: reports/stats/user_access.py:228 reports/stats/user_access.py:240 +#: reports/stats/pools_usage_day.py:131 reports/stats/pools_usage_day.py:169 +#: reports/stats/user_access.py:213 reports/stats/user_access.py:225 #: templates/uds/reports/stats/pools-usage-day.html:28 msgid "Hour" msgstr "Stunde" -#: reports/stats/pools_usage_day.py:152 +#: reports/stats/pools_usage_day.py:150 msgid "Services usage report for a day" msgstr "Dienstnutzungsbericht für einen Tag" -#: reports/stats/pools_usage_day.py:153 +#: reports/stats/pools_usage_day.py:151 msgid "Service usage report" msgstr "Dienstnutzungsbericht" @@ -3132,63 +3518,63 @@ msgstr "ALLE POOLS" msgid "Seconds" msgstr "Sekunden" -#: reports/stats/user_access.py:59 reports/stats/user_access.py:281 +#: reports/stats/user_access.py:59 reports/stats/user_access.py:266 msgid "Users access report by date" msgstr "Benutzer greifen auf den Bericht nach Datum zu" -#: reports/stats/user_access.py:60 reports/stats/user_access.py:282 +#: reports/stats/user_access.py:60 reports/stats/user_access.py:267 msgid "Report of user access to platform by date" msgstr "Bericht des Benutzerzugriffs auf die Plattform nach Datum" -#: reports/stats/user_access.py:186 +#: reports/stats/user_access.py:171 msgid "Users Access (global)" msgstr "Benutzerzugriff (global)" -#: reports/stats/user_access.py:206 +#: reports/stats/user_access.py:191 msgid "Users Access (by week)" msgstr "Benutzerzugang (pro Woche)" -#: reports/stats/user_access.py:209 reports/stats/user_access.py:245 +#: reports/stats/user_access.py:194 reports/stats/user_access.py:230 msgid "Monday" msgstr "Montag" -#: reports/stats/user_access.py:210 reports/stats/user_access.py:246 +#: reports/stats/user_access.py:195 reports/stats/user_access.py:231 msgid "Tuesday" msgstr "Dienstag" -#: reports/stats/user_access.py:211 reports/stats/user_access.py:247 +#: reports/stats/user_access.py:196 reports/stats/user_access.py:232 msgid "Wednesday" msgstr "Mittwoch" -#: reports/stats/user_access.py:212 reports/stats/user_access.py:248 +#: reports/stats/user_access.py:197 reports/stats/user_access.py:233 msgid "Thursday" msgstr "Donnerstag" -#: reports/stats/user_access.py:213 reports/stats/user_access.py:249 +#: reports/stats/user_access.py:198 reports/stats/user_access.py:234 msgid "Friday" msgstr "Freitag" -#: reports/stats/user_access.py:214 reports/stats/user_access.py:250 +#: reports/stats/user_access.py:199 reports/stats/user_access.py:235 msgid "Saturday" msgstr "Samstag" -#: reports/stats/user_access.py:215 reports/stats/user_access.py:251 +#: reports/stats/user_access.py:200 reports/stats/user_access.py:236 msgid "Sunday" msgstr "Sonntag" -#: reports/stats/user_access.py:217 reports/stats/user_access.py:243 +#: reports/stats/user_access.py:202 reports/stats/user_access.py:228 msgid "Day of week" msgstr "Wochentag" -#: reports/stats/user_access.py:226 reports/stats/user_access.py:238 +#: reports/stats/user_access.py:211 reports/stats/user_access.py:223 msgid "Users Access (by hour)" msgstr "Benutzerzugang (nach Stunden)" -#: reports/stats/user_access.py:267 +#: reports/stats/user_access.py:252 msgid "Users access to UDS" msgstr "Benutzer greifen auf UDS zu" -#: reports/stats/user_access.py:268 +#: reports/stats/user_access.py:253 msgid "UDS Report for users access" msgstr "UDS-Bericht für Benutzerzugriff" @@ -4439,12 +4825,12 @@ msgstr "Anbieter statischer IP-Maschinen" msgid "Provides connection to machines by IP" msgstr "Bietet eine Verbindung zu Computern per IP" -#: services/PhysicalMachines/service_multi.py:64 +#: services/PhysicalMachines/service_multi.py:62 #: services/Vmware_enterprise/service_fixed.py:55 msgid "Service Token" msgstr "Service-Token" -#: services/PhysicalMachines/service_multi.py:67 +#: services/PhysicalMachines/service_multi.py:65 #: services/Vmware_enterprise/service_fixed.py:57 msgid "" "Service token that will be used by actors to communicate with service. Leave " @@ -4453,41 +4839,41 @@ msgstr "" "Service-Token, das von den Akteuren zur Kommunikation mit dem Service " "verwendet wird. Für dauerhafte Zuordnung leer lassen." -#: services/PhysicalMachines/service_multi.py:75 +#: services/PhysicalMachines/service_multi.py:73 #: services/RDS_enterprise/provider.py:51 msgid "List of servers" msgstr "Liste der Server" -#: services/PhysicalMachines/service_multi.py:76 +#: services/PhysicalMachines/service_multi.py:74 msgid "List of servers available for this service" msgstr "Liste der für diesen Service verfügbaren Server" -#: services/PhysicalMachines/service_multi.py:81 +#: services/PhysicalMachines/service_multi.py:79 msgid "Check Port" msgstr "Überprüfen Sie den Port" -#: services/PhysicalMachines/service_multi.py:85 +#: services/PhysicalMachines/service_multi.py:83 msgid "" "If non zero, only hosts responding to connection on that port will be served." msgstr "" "Wenn nicht null, werden nur Hosts bedient, die auf die Verbindung an diesem " "Port antworten." -#: services/PhysicalMachines/service_multi.py:92 +#: services/PhysicalMachines/service_multi.py:90 msgid "Skip time" msgstr "Zeit überspringen" -#: services/PhysicalMachines/service_multi.py:95 +#: services/PhysicalMachines/service_multi.py:93 msgid "If a host fails to check, skip it for this time (in minutes)." msgstr "" "Wenn ein Host dies nicht überprüft, überspringen Sie es für diese Zeit (in " "Minuten)." -#: services/PhysicalMachines/service_multi.py:103 +#: services/PhysicalMachines/service_multi.py:101 msgid "Max session per machine" msgstr "Maximale Sitzung pro Maschine" -#: services/PhysicalMachines/service_multi.py:107 +#: services/PhysicalMachines/service_multi.py:105 msgid "" "Maximum session duration before UDS thinks this machine got locked and " "releases it (hours). 0 means \"never\"." @@ -4495,26 +4881,26 @@ msgstr "" "Maximale Sitzungsdauer, bevor UDS denkt, dass diese Maschine gesperrt wurde " "und sie freigibt (Stunden). 0 bedeutet „nie“." -#: services/PhysicalMachines/service_multi.py:114 +#: services/PhysicalMachines/service_multi.py:112 msgid "Lock machine by external access" msgstr "Maschine durch externen Zugriff sperren" -#: services/PhysicalMachines/service_multi.py:115 +#: services/PhysicalMachines/service_multi.py:113 msgid "" "If checked, UDS will lock the machine if it is accesed from outside UDS." msgstr "" "Wenn diese Option aktiviert ist, sperrt UDS die Maschine, wenn von außerhalb " "von UDS darauf zugegriffen wird." -#: services/PhysicalMachines/service_multi.py:122 +#: services/PhysicalMachines/service_multi.py:120 msgid "Static Multiple IP" msgstr "Statische mehrfache IP" -#: services/PhysicalMachines/service_multi.py:124 +#: services/PhysicalMachines/service_multi.py:122 msgid "This service provides access to POWERED-ON Machines by IP" msgstr "Dieser Service ermöglicht den Zugriff auf POWERED-ON-Rechner über IP" -#: services/PhysicalMachines/service_multi.py:158 +#: services/PhysicalMachines/service_multi.py:156 msgid "Invalid value detected on servers list: \"{}\"" msgstr "Ungültiger Wert in der Serverliste erkannt: \"{}\"" @@ -5420,47 +5806,47 @@ msgstr "Schatten" msgid "Shadow memory multiplier (use with care)" msgstr "Schattenspeicher-Multiplikator (vorsichtig verwenden)" -#: temp_for_locales.py:96 +#: temp_for_locales.py:99 msgid "Spanish" msgstr "Spanisch" -#: temp_for_locales.py:97 +#: temp_for_locales.py:100 msgid "English" msgstr "Englisch" -#: temp_for_locales.py:98 +#: temp_for_locales.py:101 msgid "French" msgstr "Französisch" -#: temp_for_locales.py:99 +#: temp_for_locales.py:102 msgid "German" msgstr "Deutsch" -#: temp_for_locales.py:100 +#: temp_for_locales.py:103 msgid "Portuguese" msgstr "Portugiesisch" -#: temp_for_locales.py:101 +#: temp_for_locales.py:104 msgid "Italian" msgstr "Italienisch" -#: temp_for_locales.py:102 +#: temp_for_locales.py:105 msgid "Basque" msgstr "baskisch" -#: temp_for_locales.py:103 +#: temp_for_locales.py:106 msgid "Arabic" msgstr "Arabisch" -#: temp_for_locales.py:104 +#: temp_for_locales.py:107 msgid "Russian" msgstr "Russisch" -#: temp_for_locales.py:105 +#: temp_for_locales.py:108 msgid "Catalan" msgstr "katalanisch" -#: temp_for_locales.py:106 +#: temp_for_locales.py:109 msgid "Chinese" msgstr "Chinesisch" @@ -5671,7 +6057,7 @@ msgstr "Hintergrundbild anzeigen" #: transports/HTML5RDP/html5rdp.py:134 #: transports/HTML5RDS_enterprise/html5rds.py:123 -#: transports/RDP/rdp_base.py:222 +#: transports/RDP/rdp_base.py:241 msgid "" "If checked, the wallpaper and themes will be shown on machine (better user " "experience, more bandwidth)" @@ -5681,19 +6067,19 @@ msgstr "" #: transports/HTML5RDP/html5rdp.py:139 #: transports/HTML5RDS_enterprise/html5rds.py:128 -#: transports/RDP/rdp_base.py:235 +#: transports/RDP/rdp_base.py:254 msgid "Allow Desk.Comp." msgstr "Erlauben Sie Desk.Comp." #: transports/HTML5RDP/html5rdp.py:141 #: transports/HTML5RDS_enterprise/html5rds.py:130 -#: transports/RDP/rdp_base.py:237 +#: transports/RDP/rdp_base.py:256 msgid "If checked, desktop composition will be allowed" msgstr "Wenn diese Option aktiviert ist, ist die Desktop-Erstellung zulässig" #: transports/HTML5RDP/html5rdp.py:145 #: transports/HTML5RDS_enterprise/html5rds.py:134 -#: transports/RDP/rdp_base.py:241 transports/RDS_enterprise/rds_base.py:150 +#: transports/RDP/rdp_base.py:260 transports/RDS_enterprise/rds_base.py:150 msgid "Font Smoothing" msgstr "Schriftglättung" @@ -5958,11 +6344,6 @@ msgid "Override UDS window and replace it with the connection." msgstr "" "Überschreiben Sie das UDS-Fenster und ersetzen Sie es durch die Verbindung." -#: transports/HTML5RDP/html5rdp.py:268 -#: transports/HTML5RDS_enterprise/html5rds.py:255 -msgid "Security" -msgstr "Sicherheit" - #: transports/HTML5RDP/html5rdp.py:269 #: transports/HTML5RDS_enterprise/html5rds.py:256 msgid "Connection security mode for Guacamole RDP connection" @@ -6002,11 +6383,11 @@ msgstr "" msgid "TLS (Transport Security Layer encryption)" msgstr "TLS (Transport Security Layer-Verschlüsselung)" -#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:173 +#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:192 msgid "RDP Port" msgstr "RDP-Port" -#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:174 +#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:193 msgid "Use this port as RDP port. Defaults to 3389." msgstr "Verwenden Sie diesen Port als RDP-Port. Standardmäßig auf 3389." @@ -6024,13 +6405,13 @@ msgstr "" "Benutzerdefinierter Pfad für den Glyptodon Enterprise-Tunnel. (Nur gültig " "für Glyptodon Enterprise Tunnel)" -#: transports/HTML5RDP/html5rdp.py:327 +#: transports/HTML5RDP/html5rdp.py:326 #: transports/HTML5RDS_enterprise/html5rds.py:296 #: transports/HTML5VNC/html5vnc.py:187 msgid "The server must be http or https" msgstr "Der Server muss http oder https sein" -#: transports/HTML5RDP/html5rdp.py:332 +#: transports/HTML5RDP/html5rdp.py:331 #: transports/HTML5RDS_enterprise/html5rds.py:301 msgid "" "Empty credentials (on Credentials tab) is only allowed with Security level " @@ -6072,7 +6453,7 @@ msgstr "VNC-Server-Port" msgid "Port of the VNC server." msgstr "Port des VNC-Servers." -#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:205 +#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:224 #: transports/RDS_enterprise/rds_base.py:136 msgid "Color depth" msgstr "Farbtiefe" @@ -6128,12 +6509,12 @@ msgid "If checked, the connection will be opened in full screen mode" msgstr "Wenn aktiviert, wird die Verbindung im Vollbildmodus geöffnet" #: transports/NICEDCV_enterprise/nicedcv_base.py:66 -#: transports/RDP/rdp_base.py:227 +#: transports/RDP/rdp_base.py:246 msgid "Multiple monitors" msgstr "Mehrere Monitore" #: transports/NICEDCV_enterprise/nicedcv_base.py:69 -#: transports/RDP/rdp_base.py:230 +#: transports/RDP/rdp_base.py:249 msgid "" "If checked, all client monitors will be used for displaying (only works on " "windows clients)" @@ -6188,7 +6569,7 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcvtunnel.py:91 #: transports/NoMachine_enterprise/nomachine_tunneltransport.py:114 -#: transports/RDP/rdptunnel.py:135 transports/RDS_enterprise/rdstunnel.py:126 +#: transports/RDP/rdptunnel.py:136 transports/RDS_enterprise/rdstunnel.py:126 #: transports/SPICE/spice_tunnel.py:107 transports/X2GO/x2go_tunnel.py:116 msgid "Must use HOST:PORT in Tunnel Server Field" msgstr "Muss HOST: PORT im Tunnelserverfeld verwenden" @@ -6335,92 +6716,100 @@ msgid "If checked, webcam will be redirected (ONLY Windows)." msgstr "" "Wenn diese Option aktiviert ist, wird die Webcam umgeleitet (NUR Windows)." -#: transports/RDP/rdp_base.py:164 transports/RDS_enterprise/rds_base.py:128 +#: transports/RDP/rdp_base.py:164 +msgid "USB redirection" +msgstr "USB-Umleitung" + +#: transports/RDP/rdp_base.py:166 +msgid "USB redirection policy" +msgstr "USB-Umleitungsrichtlinie" + +#: transports/RDP/rdp_base.py:183 transports/RDS_enterprise/rds_base.py:128 msgid "Credssp Support" msgstr "Credssp-Unterstützung" -#: transports/RDP/rdp_base.py:166 transports/RDS_enterprise/rds_base.py:130 +#: transports/RDP/rdp_base.py:185 transports/RDS_enterprise/rds_base.py:130 msgid "If checked, will enable Credentials Provider Support)" msgstr "" "Wenn diese Option aktiviert ist, wird der Provider-Support für " "Anmeldeinformationen aktiviert." -#: transports/RDP/rdp_base.py:181 +#: transports/RDP/rdp_base.py:200 msgid "Screen Size" msgstr "Bildschirmgröße" -#: transports/RDP/rdp_base.py:183 +#: transports/RDP/rdp_base.py:202 msgid "Screen size for this transport" msgstr "Bildschirmgröße für diesen Transport" -#: transports/RDP/rdp_base.py:207 transports/RDS_enterprise/rds_base.py:138 +#: transports/RDP/rdp_base.py:226 transports/RDS_enterprise/rds_base.py:138 msgid "Color depth for this connection" msgstr "Color depth für diese Verbindung" -#: transports/RDP/rdp_base.py:219 +#: transports/RDP/rdp_base.py:238 msgid "Wallpaper/theme" msgstr "Wallpaper/Thema" -#: transports/RDP/rdp_base.py:244 +#: transports/RDP/rdp_base.py:263 msgid "If checked, fonts smoothing will be allowed" msgstr "" "Wenn diese Option aktiviert ist, wird das Glätten von Schriftarten zugelassen" -#: transports/RDP/rdp_base.py:248 +#: transports/RDP/rdp_base.py:267 msgid "Connection Bar" msgstr "Verbindungsleiste" -#: transports/RDP/rdp_base.py:250 +#: transports/RDP/rdp_base.py:269 msgid "If checked, connection bar will be shown (only on Windows clients)" msgstr "" "Wenn aktiviert, wird die Verbindungsleiste angezeigt (nur bei Windows-" "Clients)" -#: transports/RDP/rdp_base.py:256 transports/RDS_enterprise/rds_base.py:181 +#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:181 msgid "Multimedia sync" msgstr "Multimedia-Synchronisierung" -#: transports/RDP/rdp_base.py:259 transports/RDS_enterprise/rds_base.py:184 +#: transports/RDP/rdp_base.py:278 transports/RDS_enterprise/rds_base.py:184 msgid "If checked. Linux client will use multimedia parameter for xfreerdp" msgstr "Wenn geprüft Linux-Client verwendet Multimedia-Parameter für xfreerdp" -#: transports/RDP/rdp_base.py:264 transports/RDS_enterprise/rds_base.py:189 +#: transports/RDP/rdp_base.py:283 transports/RDS_enterprise/rds_base.py:189 msgid "Use Alsa" msgstr "Verwenden Sie ALSA" -#: transports/RDP/rdp_base.py:267 transports/RDS_enterprise/rds_base.py:192 +#: transports/RDP/rdp_base.py:286 transports/RDS_enterprise/rds_base.py:192 msgid "" "If checked, Linux client will try to use ALSA, otherwise Pulse will be used" msgstr "" "Wenn diese Option aktiviert ist, versucht der Linux-Client, ALSA zu " "verwenden. Andernfalls wird Pulse verwendet" -#: transports/RDP/rdp_base.py:272 transports/RDS_enterprise/rds_base.py:197 +#: transports/RDP/rdp_base.py:291 transports/RDS_enterprise/rds_base.py:197 msgid "Printer string" msgstr "Druckerzeichenfolge" -#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:200 +#: transports/RDP/rdp_base.py:294 transports/RDS_enterprise/rds_base.py:200 msgid "If printer is checked, the printer string used with xfreerdp client" msgstr "" "Wenn der Drucker markiert ist, wird die mit dem xfreerdp-Client verwendete " "Druckerzeichenfolge verwendet" -#: transports/RDP/rdp_base.py:281 transports/RDS_enterprise/rds_base.py:206 +#: transports/RDP/rdp_base.py:300 transports/RDS_enterprise/rds_base.py:206 msgid "Smartcard string" msgstr "Smartcard-Zeichenfolge" -#: transports/RDP/rdp_base.py:284 transports/RDS_enterprise/rds_base.py:209 +#: transports/RDP/rdp_base.py:303 transports/RDS_enterprise/rds_base.py:209 msgid "If smartcard is checked, the smartcard string used with xfreerdp client" msgstr "" "Wenn die Smartcard markiert ist, die mit dem xfreerdp-Client verwendete " "Smartcard-Zeichenfolge" -#: transports/RDP/rdp_base.py:290 transports/RDP/rdp_base.py:310 +#: transports/RDP/rdp_base.py:309 transports/RDP/rdp_base.py:329 #: transports/RDS_enterprise/rds_base.py:215 msgid "Custom parameters" msgstr "Benutzerdefinierte Parameter" -#: transports/RDP/rdp_base.py:293 transports/RDS_enterprise/rds_base.py:218 +#: transports/RDP/rdp_base.py:312 transports/RDS_enterprise/rds_base.py:218 msgid "" "If not empty, extra parameter to include for Linux Client (for example /usb:" "id,dev:054c:0268, or aything compatible with your xfreerdp client)" @@ -6428,11 +6817,11 @@ msgstr "" "Falls nicht leer, zusätzliche Parameter für Linux-Client (zum Beispiel /usb:" "id,dev:054c:0268 oder alles, was mit Ihrem xfreerdp-Client kompatibel ist)" -#: transports/RDP/rdp_base.py:300 +#: transports/RDP/rdp_base.py:319 msgid "Allow Microsoft Rdp Client" msgstr "Microsoft Rdp-Client zulassen" -#: transports/RDP/rdp_base.py:303 +#: transports/RDP/rdp_base.py:322 msgid "" "If checked, allows use of Microsoft Remote Desktop Client. PASSWORD WILL BE " "PROMPTED!" @@ -6440,7 +6829,7 @@ msgstr "" "Wenn diese Option aktiviert ist, können Sie den Microsoft Remote Desktop " "Client verwenden. PASSWORT WIRD ABGEGEBEN!" -#: transports/RDP/rdp_base.py:313 +#: transports/RDP/rdp_base.py:332 msgid "" "If not empty, extra parameter to include for Mac OS X Freerdp Client (for " "example /usb:id,dev:054c:0268, or aything compatible with your xfreerdp " @@ -6696,72 +7085,72 @@ msgstr "Zu viele Authentifizierungsfehler. Benutzer vorübergehend gesperrt" msgid "Access tried from an unallowed source" msgstr "Zugriff von einer unzulässigen Quelle versucht" -#: web/util/authentication.py:155 +#: web/util/authentication.py:158 msgid "Invalid data" msgstr "Ungültige Daten" -#: web/util/configjs.py:170 +#: web/util/configjs.py:163 msgid "Access limited by calendar" msgstr "Zugriff durch Kalender begrenzt" -#: web/util/configjs.py:226 +#: web/util/configjs.py:222 msgid "Windows client" msgstr "Windows-Client" -#: web/util/configjs.py:230 +#: web/util/configjs.py:226 msgid "Mac OS X client" msgstr "Mac OS X-Client" -#: web/util/configjs.py:233 +#: web/util/configjs.py:229 msgid "Debian based Linux client" msgstr "Debian-basierter Linux-Client" -#: web/util/configjs.py:235 web/util/configjs.py:243 web/util/configjs.py:263 +#: web/util/configjs.py:231 web/util/configjs.py:239 web/util/configjs.py:259 msgid "(requires Python-3.6 or newer)" msgstr "(erfordert Python-3.6 oder neuer)" -#: web/util/configjs.py:241 +#: web/util/configjs.py:237 msgid "RPM based Linux client (Fedora, Suse, ...)" msgstr "RPM-basierter Linux-Client (Fedora, Suse, ...)" -#: web/util/configjs.py:249 +#: web/util/configjs.py:245 msgid "Binary appimage X86_64 Linux client" msgstr "Binäres Appimage X86_64 Linux-Client" -#: web/util/configjs.py:255 +#: web/util/configjs.py:251 msgid "Binary appimage Raspberry Linux client" msgstr "Binäres Appimage Raspberry Linux-Client" -#: web/util/configjs.py:261 +#: web/util/configjs.py:257 msgid "Generic .tar.gz Linux client" msgstr "Generischer .tar.gz Linux-Client" -#: web/util/errors.py:76 +#: web/util/errors.py:78 msgid "Unknown error" msgstr "Unbekannter Fehler" -#: web/util/errors.py:83 +#: web/util/errors.py:85 msgid "Maximum services limit reached. Please, contact administrator" msgstr "" "Maximales Servicelimit erreicht. Bitte wenden Sie sich an den Administrator" -#: web/util/errors.py:84 +#: web/util/errors.py:86 msgid "You need to enable cookies to let this application work" msgstr "Sie müssen Cookies zulassen, damit diese Anwendung funktioniert" -#: web/util/errors.py:86 +#: web/util/errors.py:88 msgid "Authenticator not found" msgstr "Authenticator nicht gefunden" -#: web/util/errors.py:87 +#: web/util/errors.py:89 msgid "Invalid authenticator" msgstr "Ungültiger Authentifikator" -#: web/util/errors.py:88 +#: web/util/errors.py:90 msgid "Invalid request received" msgstr "Ungültige Anfrage erhalten" -#: web/util/errors.py:90 +#: web/util/errors.py:92 msgid "" "Your browser is not supported. Please, upgrade it to a modern HTML5 browser " "like Firefox or Chrome" @@ -6769,11 +7158,11 @@ msgstr "" "Ihr Browser wird nicht unterstützt. Aktualisieren Sie es auf einen modernen " "HTML5-Browser wie Firefox oder Chrome" -#: web/util/errors.py:92 +#: web/util/errors.py:94 msgid "The requested service is in maintenance mode" msgstr "Der angeforderte Dienst befindet sich im Wartungsmodus" -#: web/util/errors.py:93 +#: web/util/errors.py:95 msgid "" "The service is not ready.\n" "Please, try again in a few moments." @@ -6781,29 +7170,33 @@ msgstr "" "Der Dienst ist nicht bereit. Bitte versuchen Sie es in einigen Augenblicken " "erneut." -#: web/util/errors.py:94 +#: web/util/errors.py:96 msgid "Preparing service" msgstr "Service vorbereiten" -#: web/util/errors.py:95 +#: web/util/errors.py:97 msgid "Service access denied by calendars" msgstr "Servicezugriff von Kalender verweigert" -#: web/util/errors.py:96 +#: web/util/errors.py:98 msgid "Page not found" msgstr "Seite nicht gefunden" -#: web/util/errors.py:97 +#: web/util/errors.py:99 msgid "Unexpected error" msgstr "Unerwarteter Fehler" -#: web/util/errors.py:98 +#: web/util/errors.py:100 msgid "" "Reloading this page is not supported. Please, reopen service from origin." msgstr "" "Das erneute Laden dieser Seite wird nicht unterstützt. Bitte öffnen Sie den " "Dienst wieder vom Ursprung." +#: web/util/errors.py:101 +msgid "Invalid Multi-Factor Authentication code" +msgstr "Ungültiger Multi-Factor Authentication-Code" + #: web/util/services.py:319 msgid "" "This service is about to be replaced by a new version. Please, close the " @@ -6824,6 +7217,14 @@ msgstr "" "Ihr Service wird erstellt. Bitte warten Sie einige Sekunden, bis wir ihn " "abgeschlossen haben.)" -#: web/views/auth.py:177 +#: web/views/auth.py:189 msgid "Authenticator does not provide information" msgstr "Der Authentifikator liefert keine Informationen" + +#: web/views/modern.py:269 +msgid "{} days" +msgstr "{} Tage" + +#: web/views/modern.py:271 +msgid "{} hours" +msgstr "{} Std" diff --git a/server/src/uds/locale/de/LC_MESSAGES/djangojs.po b/server/src/uds/locale/de/LC_MESSAGES/djangojs.po index e08b11e6..e81bc194 100644 --- a/server/src/uds/locale/de/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/de/LC_MESSAGES/djangojs.po @@ -5,15 +5,15 @@ # Translators: # Adolfo Gómez , 2012 # Thorsten Latka , 2020 -# Víctor Alonso , 2020 +# Víctor Alonso , 2020,2022 # Víctor Alonso , 2020,2022 msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-02-03 08:33+0000\n" -"Last-Translator: Víctor Alonso \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:16+0000\n" +"Last-Translator: Víctor Alonso , 2020,2022\n" "Language-Team: German (http://www.transifex.com/openuds/openuds/language/" "de/)\n" "Language: de\n" @@ -33,14 +33,14 @@ msgstr "Main" #: static/admin/main.js:1 static/admin/translations-fakejs.js:11 #: static/admin/translations-fakejs.js:29 -#: static/admin/translations-fakejs.js:179 -#: static/admin/translations-fakejs.js:191 -#: static/admin/translations-fakejs.js:193 -#: static/admin/translations-fakejs.js:195 -#: static/admin/translations-fakejs.js:197 -#: static/admin/translations-fakejs.js:254 -#: static/admin/translations-fakejs.js:256 -#: static/admin/translations-fakejs.js:258 static/modern/main-es5.js:1 +#: static/admin/translations-fakejs.js:141 +#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:216 +#: static/admin/translations-fakejs.js:218 +#: static/admin/translations-fakejs.js:220 static/modern/main-es5.js:1 #: static/modern/translations-fakejs.js:14 msgid "Error" msgstr "Fehler" @@ -67,12 +67,12 @@ msgstr "Daten werden geladen..." #: static/admin/translations-fakejs.js:38 #: static/admin/translations-fakejs.js:40 #: static/admin/translations-fakejs.js:43 -#: static/admin/translations-fakejs.js:134 -#: static/admin/translations-fakejs.js:216 -#: static/admin/translations-fakejs.js:221 -#: static/admin/translations-fakejs.js:253 -#: static/admin/translations-fakejs.js:261 -#: static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:96 +#: static/admin/translations-fakejs.js:178 +#: static/admin/translations-fakejs.js:183 +#: static/admin/translations-fakejs.js:215 +#: static/admin/translations-fakejs.js:223 +#: static/admin/translations-fakejs.js:228 msgid "dismiss" msgstr "verwerfen" @@ -89,7 +89,7 @@ msgid "Test passed successfully" msgstr "Test erfolgreich bestanden" #: static/admin/main.js:1 static/admin/translations-fakejs.js:37 -#: static/admin/translations-fakejs.js:260 +#: static/admin/translations-fakejs.js:222 msgid "Successfully saved" msgstr "Erfolgreich gespeichert" @@ -145,58 +145,58 @@ msgstr "Poolgruppe" msgid "Go to" msgstr "Gehe zu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:275 msgid "yes" msgstr "Ja" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:276 msgid "no" msgstr "Nein" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:269 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 msgid "Error saving: " msgstr "Fehler beim Speichern:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:270 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 msgid "Error saving element" msgstr "Fehler beim Speichern des Elements" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:271 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:274 msgid "Error handling your request" msgstr "Fehler bei der Bearbeitung Ihrer Anfrage" #: static/admin/main.js:1 static/admin/translations-fakejs.js:56 -#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:115 msgid "Sunday" msgstr "Sonntag" #: static/admin/main.js:1 static/admin/translations-fakejs.js:57 -#: static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:116 msgid "Monday" msgstr "Montag" #: static/admin/main.js:1 static/admin/translations-fakejs.js:58 -#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:117 msgid "Tuesday" msgstr "Dienstag" #: static/admin/main.js:1 static/admin/translations-fakejs.js:59 -#: static/admin/translations-fakejs.js:156 +#: static/admin/translations-fakejs.js:118 msgid "Wednesday" msgstr "Mittwoch" #: static/admin/main.js:1 static/admin/translations-fakejs.js:60 -#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:119 msgid "Thursday" msgstr "Donnerstag" #: static/admin/main.js:1 static/admin/translations-fakejs.js:61 -#: static/admin/translations-fakejs.js:158 +#: static/admin/translations-fakejs.js:120 msgid "Friday" msgstr "Freitag" #: static/admin/main.js:1 static/admin/translations-fakejs.js:62 -#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:121 msgid "Saturday" msgstr "Samstag" @@ -268,20 +268,20 @@ msgstr "#SERVICES_NUMBER# User Services" msgid "#RESTRAINED_NUMBER# restrained services!" msgstr "#RESTRAINED_NUMBER# Zurückhaltende Services!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 -#: static/admin/translations-fakejs.js:249 -#: static/admin/translations-fakejs.js:402 -#: static/admin/translations-fakejs.js:454 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:211 +#: static/admin/translations-fakejs.js:265 +#: static/admin/translations-fakejs.js:366 +#: static/admin/translations-fakejs.js:418 msgid "Assigned services" msgstr "Zugewiesene Services" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 msgid "Services in use" msgstr "Dienste im Einsatz" #: static/admin/main.js:1 static/admin/translations-fakejs.js:21 -#: static/admin/translations-fakejs.js:292 -#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:303 #: static/modern/translations-fakejs.js:30 msgid "Filter" msgstr "Filter" @@ -299,25 +299,25 @@ msgid "Full Access" msgstr "Voller Zugriff" #: static/admin/main.js:1 static/admin/translations-fakejs.js:15 -#: static/admin/translations-fakejs.js:362 -#: static/admin/translations-fakejs.js:409 -#: static/admin/translations-fakejs.js:414 +#: static/admin/translations-fakejs.js:373 +#: static/admin/translations-fakejs.js:378 +#: static/admin/translations-fakejs.js:489 msgid "User" msgstr "Nutzer" #: static/admin/main.js:1 static/admin/translations-fakejs.js:16 -#: static/admin/translations-fakejs.js:83 -#: static/admin/translations-fakejs.js:93 -#: static/admin/translations-fakejs.js:427 -#: static/admin/translations-fakejs.js:448 +#: static/admin/translations-fakejs.js:243 +#: static/admin/translations-fakejs.js:253 +#: static/admin/translations-fakejs.js:391 +#: static/admin/translations-fakejs.js:412 msgid "Group" msgstr "Gruppe" #: static/admin/main.js:1 static/admin/translations-fakejs.js:17 -#: static/admin/translations-fakejs.js:408 -#: static/admin/translations-fakejs.js:413 -#: static/admin/translations-fakejs.js:426 -#: static/admin/translations-fakejs.js:447 +#: static/admin/translations-fakejs.js:372 +#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:390 +#: static/admin/translations-fakejs.js:411 #: static/modern/translations-fakejs.js:72 msgid "Authenticator" msgstr "Authenticator" @@ -334,89 +334,89 @@ msgstr "Löschen" msgid "Confirm revokation of permission" msgstr "Widerruf der Genehmigung bestätigen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:238 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 msgid "Maintenance" msgstr "Instandhaltung" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 msgid "Exit maintenance mode" msgstr "Beenden des Wartungsmodus" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 msgid "Enter maintenance mode" msgstr "Aktivieren des Wartungsmodus" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 msgid "New provider" msgstr "Neuer Anbieter" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 msgid "Edit provider" msgstr "Anbieter bearbeiten" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:243 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 msgid "Delete provider" msgstr "Anbieter löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 msgid "Exit maintenance mode?" msgstr "Wartungsmodus beenden?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 msgid "Enter maintenance mode?" msgstr "Wartungsmodus aktivieren?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 msgid "Maintenance mode for" msgstr "Wartungsmodus für" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 -#: static/admin/translations-fakejs.js:247 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:209 +#: static/admin/translations-fakejs.js:232 msgid "In Maintenance" msgstr "In Wartung" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 -#: static/admin/translations-fakejs.js:248 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/translations-fakejs.js:233 msgid "Active" msgstr "Aktiv" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 -#: static/admin/translations-fakejs.js:95 -#: static/admin/translations-fakejs.js:229 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:191 +#: static/admin/translations-fakejs.js:236 +#: static/admin/translations-fakejs.js:255 msgid "Pool" msgstr "Pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 -#: static/admin/translations-fakejs.js:96 -#: static/admin/translations-fakejs.js:230 -#: static/admin/translations-fakejs.js:343 -#: static/admin/translations-fakejs.js:355 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 +#: static/admin/translations-fakejs.js:237 +#: static/admin/translations-fakejs.js:256 +#: static/admin/translations-fakejs.js:470 +#: static/admin/translations-fakejs.js:482 msgid "State" msgstr "Zustand" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 -#: static/admin/translations-fakejs.js:97 -#: static/admin/translations-fakejs.js:231 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:193 +#: static/admin/translations-fakejs.js:238 +#: static/admin/translations-fakejs.js:257 msgid "User Services" msgstr "User Services" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 -#: static/admin/translations-fakejs.js:232 -#: static/admin/translations-fakejs.js:321 -#: static/admin/translations-fakejs.js:401 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:194 +#: static/admin/translations-fakejs.js:248 +#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:365 msgid "Service pools" msgstr "Service-Pools" #: static/admin/main.js:1 static/admin/translations-fakejs.js:3 #: static/admin/translations-fakejs.js:7 -#: static/admin/translations-fakejs.js:308 +#: static/admin/translations-fakejs.js:311 #: static/modern/translations-fakejs.js:44 msgid "Yes" msgstr "Ja" #: static/admin/main.js:1 static/admin/translations-fakejs.js:4 #: static/admin/translations-fakejs.js:8 -#: static/admin/translations-fakejs.js:309 +#: static/admin/translations-fakejs.js:312 #: static/modern/translations-fakejs.js:45 msgid "No" msgstr "Nein" @@ -429,595 +429,598 @@ msgstr "(versteckt)" msgid "Selected items :" msgstr "Ausgewählte Artikel :" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 -#: static/admin/translations-fakejs.js:233 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:195 +#: static/admin/translations-fakejs.js:231 #: static/modern/translations-fakejs.js:35 msgid "Information" msgstr "Information" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 msgid "New service" msgstr "Neuer Service" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:197 msgid "Edit service" msgstr "Dienst bearbeiten" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:236 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 msgid "Delete service" msgstr "Dienst löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:237 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 msgid "Delete user service" msgstr "Benutzerdienst löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:269 msgid "New Authenticator" msgstr "Neuer Authenticator" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:267 +#: static/admin/translations-fakejs.js:270 msgid "Edit Authenticator" msgstr "Authenticator bearbeiten" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/translations-fakejs.js:271 msgid "Delete Authenticator" msgstr "Authenticator löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 msgid "Any" msgstr "Irgendein" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 msgid "All" msgstr "Alles" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 -#: static/admin/translations-fakejs.js:94 -#: static/admin/translations-fakejs.js:342 -#: static/admin/translations-fakejs.js:354 -#: static/admin/translations-fakejs.js:379 -#: static/admin/translations-fakejs.js:435 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/translations-fakejs.js:254 +#: static/admin/translations-fakejs.js:343 +#: static/admin/translations-fakejs.js:399 +#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:481 msgid "Comments" msgstr "Bemerkungen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:258 msgid "Unique ID" msgstr "Eindeutige ich würde" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 msgid "Friendly Name" msgstr "Freundlicher Name" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:260 msgid "In Use" msgstr "In Benutzung" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:261 msgid "IP" msgstr "IP" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 msgid "Services Pool" msgstr "Dienstleistungen Pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 -#: static/admin/translations-fakejs.js:103 -#: static/admin/translations-fakejs.js:287 -#: static/admin/translations-fakejs.js:323 -#: static/admin/translations-fakejs.js:337 -#: static/admin/translations-fakejs.js:363 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/translations-fakejs.js:263 +#: static/admin/translations-fakejs.js:290 +#: static/admin/translations-fakejs.js:328 #: static/admin/translations-fakejs.js:367 -#: static/admin/translations-fakejs.js:373 -#: static/admin/translations-fakejs.js:403 -#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:494 msgid "Groups" msgstr "Gruppen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 -#: static/admin/translations-fakejs.js:335 -#: static/admin/translations-fakejs.js:368 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/translations-fakejs.js:462 +#: static/admin/translations-fakejs.js:495 msgid "Services Pools" msgstr "Service-Pools" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 -#: static/admin/translations-fakejs.js:378 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/translations-fakejs.js:342 msgid "Name" msgstr "Name" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 msgid "Real Name" msgstr "Echter Name" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 msgid "state" msgstr "Zustand" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 msgid "Last access" msgstr "Letzter Zugriff" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 -#: static/admin/translations-fakejs.js:286 -#: static/admin/translations-fakejs.js:336 -#: static/admin/translations-fakejs.js:372 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:249 +#: static/admin/translations-fakejs.js:289 +#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:463 msgid "Users" msgstr "Benutzer" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 -#: static/admin/translations-fakejs.js:344 -#: static/admin/translations-fakejs.js:356 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:483 msgid "Enabled" msgstr "Aktiviert" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 -#: static/admin/translations-fakejs.js:345 -#: static/admin/translations-fakejs.js:357 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:484 msgid "Disabled" msgstr "Deaktiviert" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 -#: static/admin/translations-fakejs.js:358 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:247 +#: static/admin/translations-fakejs.js:485 msgid "Blocked" msgstr "Blockiert" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 msgid "Delete user" msgstr "Benutzer löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 msgid "Delete group" msgstr "Gruppe löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 msgid "New OS Manager" msgstr "Neuer OS Manager" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 msgid "Edit OS Manager" msgstr "Bearbeiten Sie den OS Manager" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 msgid "Delete OS Manager" msgstr "Löschen Sie den OS Manager" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:120 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 msgid "New Transport" msgstr "Neuer Transport" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:121 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:83 msgid "Edit Transport" msgstr "Transport bearbeiten" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 msgid "Delete Transport" msgstr "Transport löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 msgid "New Network" msgstr "Neues Netzwerk" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:115 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 msgid "Edit Network" msgstr "Netzwerk bearbeiten" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:116 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 msgid "Delete Network" msgstr "Netzwerk löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:117 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 msgid "New Proxy" msgstr "Neuer Proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:118 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 msgid "Edit Proxy" msgstr "Proxy bearbeiten" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:119 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 msgid "Delete Proxy" msgstr "Proxy löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:223 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 msgid "(This service does not requires an OS Manager)" msgstr "(Dieser Dienst erfordert keinen OS Manager.)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 msgid "New service Pool" msgstr "Neuer Service-Pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 msgid "Publish on creation" msgstr "Bei Erstellung veröffentlichen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 msgid "If selected, will initiate the publication inmediatly after creation" msgstr "" "Wenn ausgewählt, wird die Veröffentlichung sofort nach der Erstellung " "gestartet" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 msgid "Edit Service Pool" msgstr "Service-Pool bearbeiten" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:228 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 msgid "Delete service pool" msgstr "Dienstpool löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 -#: static/admin/translations-fakejs.js:194 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:156 msgid "Please, select a valid user" msgstr "Bitte wählen Sie einen gültigen Benutzer aus" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:158 msgid "Please, select a valid group" msgstr "Bitte wählen Sie eine gültige Gruppe aus" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 msgid "Please, select a valid transport" msgstr "Bitte wählen Sie einen gültigen Transport aus" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 msgid "Assigned" msgstr "Zugewiesen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 msgid "Cached" msgstr "Zwischengespeichert" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 msgid "In use" msgstr "In Benutzung" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 -#: static/admin/translations-fakejs.js:290 -#: static/admin/translations-fakejs.js:374 -#: static/admin/translations-fakejs.js:405 -#: static/admin/translations-fakejs.js:462 -#: static/admin/translations-fakejs.js:465 -#: static/admin/translations-fakejs.js:470 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/translations-fakejs.js:293 +#: static/admin/translations-fakejs.js:369 +#: static/admin/translations-fakejs.js:426 +#: static/admin/translations-fakejs.js:429 +#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:460 msgid "Logs" msgstr "Protokolle" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 msgid "VNC" msgstr "VNC" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 msgid "Launch now" msgstr "Starte jetzt" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 msgid "Change owner" msgstr "Besitzer wechseln" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 msgid "Assign service" msgstr "Service zuweisen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 -#: static/admin/translations-fakejs.js:277 -#: static/admin/translations-fakejs.js:283 -#: static/admin/translations-fakejs.js:349 -#: static/admin/translations-fakejs.js:364 -#: static/admin/translations-fakejs.js:390 -#: static/admin/translations-fakejs.js:398 -#: static/admin/translations-fakejs.js:410 -#: static/admin/translations-fakejs.js:415 -#: static/admin/translations-fakejs.js:423 -#: static/admin/translations-fakejs.js:428 -#: static/admin/translations-fakejs.js:432 -#: static/admin/translations-fakejs.js:436 -#: static/admin/translations-fakejs.js:449 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/translations-fakejs.js:280 +#: static/admin/translations-fakejs.js:286 +#: static/admin/translations-fakejs.js:354 +#: static/admin/translations-fakejs.js:362 +#: static/admin/translations-fakejs.js:374 +#: static/admin/translations-fakejs.js:379 +#: static/admin/translations-fakejs.js:387 +#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:400 +#: static/admin/translations-fakejs.js:413 +#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:476 #: static/admin/translations-fakejs.js:491 msgid "Cancel" msgstr "Stornieren" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 msgid "Changelog" msgstr "Änderungsprotokoll" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 -#: static/admin/translations-fakejs.js:209 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/translations-fakejs.js:171 msgid "Delete assigned service" msgstr "Löschen Sie den zugewiesenen Dienst" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 msgid "Delete cached service" msgstr "Löschen Sie den zwischengespeicherten Dienst" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:183 -#: static/admin/translations-fakejs.js:211 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/translations-fakejs.js:173 msgid "Delete assigned group" msgstr "Zugeordnete Gruppe löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 msgid "Delete assigned transport" msgstr "Löschen Sie den zugewiesenen Transport" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 msgid "Publication" msgstr "Veröffentlichung" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 msgid "Cancel publication?" msgstr "Veröffentlichung abbrechen?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:215 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 msgid "Publication canceled" msgstr "Veröffentlichung abgebrochen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:179 msgid "Delete scheduled action" msgstr "Geplante Aktion löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:218 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 msgid "Execute scheduled action" msgstr "Geplante Aktion ausführen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 msgid "Execute scheduled action right now?" msgstr "Geplante Aktion sofort ausführen?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:220 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 msgid "Scheduled action executed" msgstr "Geplante Aktion ausgeführt" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:184 -#: static/admin/translations-fakejs.js:222 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/translations-fakejs.js:184 msgid "Delete calendar access rule" msgstr "Kalenderzugriffsregel löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 msgid "New meta pool" msgstr "Neuer Metapool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 msgid "Edit meta pool" msgstr "Metapool bearbeiten" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 msgid "Delete meta pool" msgstr "Metapool löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 msgid "Please, select a valid service pool" msgstr "Bitte wählen Sie einen gültigen Service-Pool aus" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 msgid "Remove member pool" msgstr "Mitgliederpool entfernen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 msgid "New pool group" msgstr "Neue Poolgruppe" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 msgid "Edit pool group" msgstr "Poolgruppe bearbeiten" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 msgid "Delete pool group" msgstr "Poolgruppe löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 msgid "New calendar" msgstr "Neuer Kalender" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 msgid "Edit calendar" msgstr "Kalender bearbeiten" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:178 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 msgid "Delete calendar" msgstr "Kalender löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 msgid "day" msgstr "Tag" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 msgid "days" msgstr "Tage" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 msgid "Daily" msgstr "Täglich" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 msgid "week" msgstr "Woche" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 msgid "weeks" msgstr "Wochen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:141 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:103 msgid "Weekly" msgstr "Wöchentlich" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 msgid "month" msgstr "Monat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 msgid "months" msgstr "Monate" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 msgid "Monthly" msgstr "Monatlich" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 msgid "year" msgstr "Jahr" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 msgid "years" msgstr "Jahre" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 msgid "Yearly" msgstr "Jährlich" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 -#: static/admin/translations-fakejs.js:387 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/translations-fakejs.js:351 msgid "Weekdays" msgstr "Wochentage" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 msgid "Minutes" msgstr "Protokoll" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 msgid "Hours" msgstr "Stunden" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 msgid "Days" msgstr "Tage" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 msgid "Weeks" msgstr "Wochen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 msgid "(no days)" msgstr "(keine tage)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 msgid "Forever" msgstr "Immer" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 msgid "Start date/time" msgstr "Startdatum / Uhrzeit" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 msgid "End date" msgstr "Enddatum" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 msgid "Interval" msgstr "Intervall" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 msgid "Week days" msgstr "Wochentage" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 msgid "Invalid or incomplete rule. Please, fix field $FIELD" msgstr "" "Ungültige oder unvollständige Regel Bitte korrigieren Sie das Feld $ FIELD" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 msgid "This rule will be valid every" msgstr "Diese Regel gilt für alle" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 msgid "of any week" msgstr "von einer Woche" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 msgid "from" msgstr "von" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 msgid "until" msgstr "bis um" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:171 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 msgid "onwards" msgstr "weiter" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:134 msgid "starting at" msgstr "beginnt um" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:173 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 msgid "and every event will be active for" msgstr "und jedes Event wird aktiv sein bis" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 msgid "with no duration" msgstr "ohne dauer" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 msgid "Delete calendar rule" msgstr "Kalenderregel löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 msgid "Set time mark" msgstr "Zeitmarke setzen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 msgid "New account" msgstr "Neues Konto" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 msgid "Edit account" msgstr "Konto bearbeiten" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 msgid "Delete account" msgstr "Konto löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:93 msgid "Time mark" msgstr "Zeitmarke" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:94 msgid "Set time mark for $NAME to current date/time?" msgstr "Zeitmarke für $ NAME auf aktuelles Datum/Uhrzeit setzen?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:95 msgid "Time mark stablished" msgstr "Zeitmarke gesetzt" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:97 msgid "No time mark" msgstr "Keine Zeitmarke" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 msgid "Delete account usage" msgstr "Benutzerkonto löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:255 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 msgid "Image is too big (max. upload size is 256Kb)" msgstr "Bild ist zu groß (max. Upload-Größe beträgt 256Kb)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:257 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 msgid "Invalid image type (only supports JPEG, PNG and GIF" msgstr "Ungültiger Bildtyp (unterstützt nur JPEG, PNG und GIF" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:221 msgid "Please, provide a name and a image" msgstr "Bitte geben Sie einen Namen und ein Bild an" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 msgid "Delete image" msgstr "Bild löschen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:263 -#: static/admin/translations-fakejs.js:267 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/translations-fakejs.js:229 msgid "Generate report" msgstr "Bericht generieren" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 msgid "Generating report..." msgstr "Bericht wird erstellt ..." -#: static/admin/main.js:1 static/admin/translations-fakejs.js:265 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 msgid "Report finished" msgstr "Bericht beendet" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 msgid "Configuration saved" msgstr "Konfiguration gespeichert" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 msgid "Delete actor token - USE WITH EXTREME CAUTION!!!" msgstr "Actor-Token löschen - MIT EXTREMER VORSICHT VERWENDEN !!!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:230 msgid "Delete tunnel token - USE WITH EXTREME CAUTION!!!" msgstr "Tunnel-Token löschen - MIT EXTREM VORSICHT VERWENDEN!!!" @@ -1033,470 +1036,426 @@ msgstr "Objekte pro Seite" msgid ", (%i more items)" msgstr ", (% i weitere Artikel)" -#: static/admin/translations-fakejs.js:275 +#: static/admin/translations-fakejs.js:278 msgid "Remove all" msgstr "Alles entfernen" -#: static/admin/translations-fakejs.js:276 +#: static/admin/translations-fakejs.js:279 msgid "Add" msgstr "Hinzufügen" -#: static/admin/translations-fakejs.js:278 -#: static/admin/translations-fakejs.js:284 -#: static/admin/translations-fakejs.js:289 -#: static/admin/translations-fakejs.js:338 -#: static/admin/translations-fakejs.js:350 -#: static/admin/translations-fakejs.js:365 -#: static/admin/translations-fakejs.js:370 -#: static/admin/translations-fakejs.js:391 -#: static/admin/translations-fakejs.js:399 -#: static/admin/translations-fakejs.js:411 +#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:287 +#: static/admin/translations-fakejs.js:292 +#: static/admin/translations-fakejs.js:355 +#: static/admin/translations-fakejs.js:363 +#: static/admin/translations-fakejs.js:375 +#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:401 +#: static/admin/translations-fakejs.js:403 +#: static/admin/translations-fakejs.js:414 #: static/admin/translations-fakejs.js:416 -#: static/admin/translations-fakejs.js:424 -#: static/admin/translations-fakejs.js:429 -#: static/admin/translations-fakejs.js:433 -#: static/admin/translations-fakejs.js:437 -#: static/admin/translations-fakejs.js:439 -#: static/admin/translations-fakejs.js:450 -#: static/admin/translations-fakejs.js:452 -#: static/admin/translations-fakejs.js:466 +#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:465 +#: static/admin/translations-fakejs.js:477 #: static/admin/translations-fakejs.js:492 +#: static/admin/translations-fakejs.js:497 msgid "Ok" msgstr "OK" -#: static/admin/translations-fakejs.js:279 +#: static/admin/translations-fakejs.js:282 msgid "Discard & close" msgstr "Verwerfen und schließen" -#: static/admin/translations-fakejs.js:280 -#: static/admin/translations-fakejs.js:484 +#: static/admin/translations-fakejs.js:283 +#: static/admin/translations-fakejs.js:448 msgid "Save" msgstr "Speichern" -#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:284 msgid "New user permission for" msgstr "Neue Benutzerberechtigung für" -#: static/admin/translations-fakejs.js:282 +#: static/admin/translations-fakejs.js:285 msgid "New group permission for" msgstr "Neue Gruppenerlaubnis für" -#: static/admin/translations-fakejs.js:285 +#: static/admin/translations-fakejs.js:288 msgid "Permissions for" msgstr "Berechtigungen für" -#: static/admin/translations-fakejs.js:288 +#: static/admin/translations-fakejs.js:291 msgid "New permission..." msgstr "Neue Berechtigung ..." -#: static/admin/translations-fakejs.js:291 -#: static/admin/translations-fakejs.js:298 +#: static/admin/translations-fakejs.js:294 +#: static/admin/translations-fakejs.js:301 msgid "Export" msgstr "Export" -#: static/admin/translations-fakejs.js:293 -#: static/admin/translations-fakejs.js:294 -#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:296 +#: static/admin/translations-fakejs.js:297 +#: static/admin/translations-fakejs.js:298 msgid "New" msgstr "Neu" -#: static/admin/translations-fakejs.js:296 -#: static/admin/translations-fakejs.js:304 +#: static/admin/translations-fakejs.js:299 +#: static/admin/translations-fakejs.js:307 msgid "Edit" msgstr "Bearbeiten" -#: static/admin/translations-fakejs.js:297 -#: static/admin/translations-fakejs.js:305 +#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:308 msgid "Permissions" msgstr "Berechtigungen" -#: static/admin/translations-fakejs.js:299 -#: static/admin/translations-fakejs.js:306 +#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:309 msgid "Delete" msgstr "Löschen" -#: static/admin/translations-fakejs.js:301 +#: static/admin/translations-fakejs.js:304 msgid "Selected items" msgstr "Ausgewählte Artikel" -#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:305 msgid "Copy" msgstr "Kopieren" -#: static/admin/translations-fakejs.js:303 +#: static/admin/translations-fakejs.js:306 msgid "Detail" msgstr "Detail" -#: static/admin/translations-fakejs.js:307 +#: static/admin/translations-fakejs.js:310 #: static/modern/translations-fakejs.js:43 msgid "Close" msgstr "Beenden" -#: static/admin/translations-fakejs.js:310 +#: static/admin/translations-fakejs.js:313 msgid "User mode" msgstr "Benutzermodus" -#: static/admin/translations-fakejs.js:311 +#: static/admin/translations-fakejs.js:314 #: static/modern/translations-fakejs.js:48 msgid "Logout" msgstr "Abmelden" -#: static/admin/translations-fakejs.js:312 -#: static/admin/translations-fakejs.js:371 -#: static/admin/translations-fakejs.js:389 -#: static/admin/translations-fakejs.js:400 -#: static/admin/translations-fakejs.js:453 -#: static/admin/translations-fakejs.js:467 +#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:353 +#: static/admin/translations-fakejs.js:364 +#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:431 +#: static/admin/translations-fakejs.js:457 msgid "Summary" msgstr "Zusammenfassung" -#: static/admin/translations-fakejs.js:313 -#: static/admin/translations-fakejs.js:468 +#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:432 msgid "Services" msgstr "Dienstleistungen" -#: static/admin/translations-fakejs.js:314 +#: static/admin/translations-fakejs.js:317 +msgid "Authentication" +msgstr "Authentifizierung" + +#: static/admin/translations-fakejs.js:318 msgid "Authenticators" msgstr "Authentifikatoren" -#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:319 +msgid "Multi Factor" +msgstr "Multifaktor" + +#: static/admin/translations-fakejs.js:320 msgid "Os Managers" msgstr "OS-Manager" -#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:321 msgid "Connectivity" msgstr "Konnektivität" -#: static/admin/translations-fakejs.js:317 -#: static/admin/translations-fakejs.js:457 +#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:421 #: static/modern/translations-fakejs.js:39 msgid "Transports" msgstr "Transporte" -#: static/admin/translations-fakejs.js:318 +#: static/admin/translations-fakejs.js:323 #: static/modern/translations-fakejs.js:41 msgid "Networks" msgstr "Netzwerke" -#: static/admin/translations-fakejs.js:319 +#: static/admin/translations-fakejs.js:324 msgid "Proxies" msgstr "Proxies" -#: static/admin/translations-fakejs.js:320 +#: static/admin/translations-fakejs.js:325 msgid "Pools" msgstr "Pools" -#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:327 msgid "Meta pools" msgstr "Metapools" -#: static/admin/translations-fakejs.js:324 +#: static/admin/translations-fakejs.js:329 msgid "Calendars" msgstr "Kalender" -#: static/admin/translations-fakejs.js:325 +#: static/admin/translations-fakejs.js:330 msgid "Accounts" msgstr "Konten" -#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:331 msgid "Tools" msgstr "Werkzeuge" -#: static/admin/translations-fakejs.js:327 +#: static/admin/translations-fakejs.js:332 msgid "Gallery" msgstr "Galerie" -#: static/admin/translations-fakejs.js:328 +#: static/admin/translations-fakejs.js:333 msgid "Reports" msgstr "Berichte" -#: static/admin/translations-fakejs.js:329 +#: static/admin/translations-fakejs.js:334 msgid "Tokens" msgstr "Token" -#: static/admin/translations-fakejs.js:330 +#: static/admin/translations-fakejs.js:335 msgid "Actor" msgstr "Schauspieler" -#: static/admin/translations-fakejs.js:331 +#: static/admin/translations-fakejs.js:336 msgid "Tunnel" msgstr "Tunnel" -#: static/admin/translations-fakejs.js:332 +#: static/admin/translations-fakejs.js:337 msgid "Configuration" msgstr "Konfiguration" -#: static/admin/translations-fakejs.js:333 +#: static/admin/translations-fakejs.js:338 msgid "Flush Cache" msgstr "Cache leeren" -#: static/admin/translations-fakejs.js:334 -#: static/admin/translations-fakejs.js:366 -#: static/admin/translations-fakejs.js:463 -msgid "Information for" -msgstr "Information für" - #: static/admin/translations-fakejs.js:339 -msgid "Edit group" -msgstr "Gruppe bearbeiten" - -#: static/admin/translations-fakejs.js:340 -msgid "New group" -msgstr "Neue Gruppe" - -#: static/admin/translations-fakejs.js:341 -msgid "Meta group name" -msgstr "Name der Metagruppe" - -#: static/admin/translations-fakejs.js:346 -msgid "Service Pools" -msgstr "Service-Pools" - -#: static/admin/translations-fakejs.js:347 -msgid "Match mode" -msgstr "Match-Modus" - -#: static/admin/translations-fakejs.js:348 -msgid "Selected Groups" -msgstr "Ausgewählte Gruppen" - -#: static/admin/translations-fakejs.js:351 -msgid "Edit user" -msgstr "Benutzer bearbeiten" - -#: static/admin/translations-fakejs.js:352 -msgid "New user" -msgstr "Neuer Benutzer" - -#: static/admin/translations-fakejs.js:353 -msgid "Real name" -msgstr "Echter Name" - -#: static/admin/translations-fakejs.js:359 -msgid "Role" -msgstr "Rolle" - -#: static/admin/translations-fakejs.js:360 -msgid "Admin" -msgstr "Administrator" - -#: static/admin/translations-fakejs.js:361 -msgid "Staff member" -msgstr "Mitarbeiter" - -#: static/admin/translations-fakejs.js:369 -msgid "Assigned Services" -msgstr "Zugewiesene Services" - -#: static/admin/translations-fakejs.js:375 msgid "Account usage" msgstr "Kontonutzung" -#: static/admin/translations-fakejs.js:376 +#: static/admin/translations-fakejs.js:340 msgid "Edit rule" msgstr "Regel bearbeiten" -#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:341 msgid "New rule" msgstr "Neue Regel" -#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:344 msgid "Event" msgstr "Veranstaltung" -#: static/admin/translations-fakejs.js:381 +#: static/admin/translations-fakejs.js:345 msgid "Start time" msgstr "Startzeit" -#: static/admin/translations-fakejs.js:382 +#: static/admin/translations-fakejs.js:346 msgid "Duration" msgstr "Dauer" -#: static/admin/translations-fakejs.js:383 +#: static/admin/translations-fakejs.js:347 msgid "Duration units" msgstr "Dauer einheiten" -#: static/admin/translations-fakejs.js:384 +#: static/admin/translations-fakejs.js:348 msgid "Start date" msgstr "Anfangsdatum" -#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:349 msgid "Repeat until date" msgstr "Wiederholen bis zum datum" -#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:350 msgid "Frequency" msgstr "Häufigkeit" -#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:352 msgid "Repeat every" msgstr "Wiederhole jeden" -#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:356 msgid "Rules" msgstr "Regeln" -#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:357 msgid "New member pool" msgstr "Neuer Mitgliederpool" -#: static/admin/translations-fakejs.js:394 +#: static/admin/translations-fakejs.js:358 msgid "Edit member pool" msgstr "Mitgliederpool bearbeiten" -#: static/admin/translations-fakejs.js:395 -#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:359 +#: static/admin/translations-fakejs.js:384 msgid "Priority" msgstr "Priorität" -#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:360 msgid "Service pool" msgstr "Service-Pool" -#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:361 msgid "Enabled?" msgstr "Aktiviert?" -#: static/admin/translations-fakejs.js:404 -#: static/admin/translations-fakejs.js:460 +#: static/admin/translations-fakejs.js:368 +#: static/admin/translations-fakejs.js:424 msgid "Access calendars" msgstr "Zugriff auf Kalender" -#: static/admin/translations-fakejs.js:406 +#: static/admin/translations-fakejs.js:370 msgid "Assign service to user manually" msgstr "Ordnen Sie den Dienst manuell dem Benutzer zu" -#: static/admin/translations-fakejs.js:407 +#: static/admin/translations-fakejs.js:371 msgid "Service" msgstr "Bedienung" -#: static/admin/translations-fakejs.js:412 +#: static/admin/translations-fakejs.js:376 msgid "Change owner of assigned service" msgstr "Besitzer des zugewiesenen Dienstes ändern" -#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:381 msgid "New access rule for" msgstr "Neue Zugriffsregel für" -#: static/admin/translations-fakejs.js:418 +#: static/admin/translations-fakejs.js:382 msgid "Edit access rule for" msgstr "Zugriffsregel für bearbeiten" -#: static/admin/translations-fakejs.js:419 +#: static/admin/translations-fakejs.js:383 msgid "Default fallback access for" msgstr "Standard-Fallback-Zugriff für" -#: static/admin/translations-fakejs.js:421 -#: static/admin/translations-fakejs.js:442 +#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:406 msgid "Calendar" msgstr "Kalender" -#: static/admin/translations-fakejs.js:422 -#: static/admin/translations-fakejs.js:445 +#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:409 msgid "Action" msgstr "Aktion" -#: static/admin/translations-fakejs.js:425 +#: static/admin/translations-fakejs.js:389 msgid "New group for" msgstr "Neue Gruppe für" -#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:394 msgid "New transport for" msgstr "Neuer Transport für" -#: static/admin/translations-fakejs.js:431 -#: static/admin/translations-fakejs.js:446 +#: static/admin/translations-fakejs.js:395 +#: static/admin/translations-fakejs.js:410 msgid "Transport" msgstr "Transport" -#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:398 msgid "New publication for" msgstr "Neue Veröffentlichung für" -#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:402 msgid "Changelog of" msgstr "Änderungsprotokoll von" -#: static/admin/translations-fakejs.js:440 +#: static/admin/translations-fakejs.js:404 msgid "Edit action for" msgstr "Aktion bearbeiten für" -#: static/admin/translations-fakejs.js:441 +#: static/admin/translations-fakejs.js:405 msgid "New action for" msgstr "Neue Aktion für" -#: static/admin/translations-fakejs.js:443 +#: static/admin/translations-fakejs.js:407 msgid "Events offset (minutes)" msgstr "Versatz der Ereignisse (Minuten)" -#: static/admin/translations-fakejs.js:444 +#: static/admin/translations-fakejs.js:408 msgid "At the beginning of the interval?" msgstr "Am Anfang des Intervalls?" -#: static/admin/translations-fakejs.js:451 +#: static/admin/translations-fakejs.js:415 msgid "Logs of" msgstr "Protokolle von" -#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:419 msgid "Cache" msgstr "Zwischenspeicher" -#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:422 msgid "Publications" msgstr "Veröffentlichungen" -#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:423 msgid "Scheduled actions" msgstr "Geplante Aktionen" -#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:425 msgid "Charts" msgstr "Diagramme" -#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:427 +#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:493 +msgid "Information for" +msgstr "Information für" + +#: static/admin/translations-fakejs.js:428 msgid "Services pools" msgstr "Service-Pools" -#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:433 msgid "Usage" msgstr "Verwendungszweck" -#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:435 #: static/modern/translations-fakejs.js:46 msgid "Dashboard" msgstr "Übersicht" -#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:436 msgid "View authenticators" msgstr "Authentifikatoren anzeigen" -#: static/admin/translations-fakejs.js:473 -#: static/admin/translations-fakejs.js:474 -#: static/admin/translations-fakejs.js:475 +#: static/admin/translations-fakejs.js:437 +#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:439 msgid "View service pools" msgstr "Service-Pools anzeigen" -#: static/admin/translations-fakejs.js:476 +#: static/admin/translations-fakejs.js:440 msgid "Assigned services chart" msgstr "Tabelle der Zugewiesene Services" -#: static/admin/translations-fakejs.js:477 +#: static/admin/translations-fakejs.js:441 msgid "In use services chart" msgstr "Tabelle der im Einsatz befindlichen Dienste" -#: static/admin/translations-fakejs.js:478 +#: static/admin/translations-fakejs.js:442 msgid "UDS Administration" msgstr "UDS-Administration" -#: static/admin/translations-fakejs.js:479 +#: static/admin/translations-fakejs.js:443 msgid "You are accessing UDS Administration as staff member." msgstr "Sie greifen als Mitarbeiter auf die UDS-Administration zu." -#: static/admin/translations-fakejs.js:480 +#: static/admin/translations-fakejs.js:444 msgid "This means that you have restricted access to elements." msgstr "Das bedeutet, dass Sie Zugriff auf Elemente haben." -#: static/admin/translations-fakejs.js:481 +#: static/admin/translations-fakejs.js:445 msgid "" "In order to increase your access privileges, please contact your local UDS " "administrator." @@ -1504,38 +1463,90 @@ msgstr "" "Wenden Sie sich an Ihren lokalen UDS-Administrator, um Ihre Zugriffsrechte " "zu erhöhen." -#: static/admin/translations-fakejs.js:482 +#: static/admin/translations-fakejs.js:446 msgid "Thank you." msgstr "Vielen Dank." -#: static/admin/translations-fakejs.js:483 +#: static/admin/translations-fakejs.js:447 msgid "UDS Configuration" msgstr "UDS-Konfiguration" -#: static/admin/translations-fakejs.js:485 +#: static/admin/translations-fakejs.js:449 msgid "New image for" msgstr "Neues Bild für" -#: static/admin/translations-fakejs.js:486 +#: static/admin/translations-fakejs.js:450 msgid "Edit for" msgstr "Bearbeiten für" -#: static/admin/translations-fakejs.js:487 +#: static/admin/translations-fakejs.js:451 msgid "Image name" msgstr "Bildname" -#: static/admin/translations-fakejs.js:488 +#: static/admin/translations-fakejs.js:452 msgid "Image (click to change)" msgstr "Bild (zum Ändern klicken)" -#: static/admin/translations-fakejs.js:489 +#: static/admin/translations-fakejs.js:453 msgid "For optimal results, use " msgstr "Für optimale Ergebnisse nutzen Sie" -#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:454 msgid "The image will be resized on upload to" msgstr "Die Größe des Bildes wird beim Hochladen angepasst" +#: static/admin/translations-fakejs.js:466 +msgid "Edit group" +msgstr "Gruppe bearbeiten" + +#: static/admin/translations-fakejs.js:467 +msgid "New group" +msgstr "Neue Gruppe" + +#: static/admin/translations-fakejs.js:468 +msgid "Meta group name" +msgstr "Name der Metagruppe" + +#: static/admin/translations-fakejs.js:473 +msgid "Service Pools" +msgstr "Service-Pools" + +#: static/admin/translations-fakejs.js:474 +msgid "Match mode" +msgstr "Match-Modus" + +#: static/admin/translations-fakejs.js:475 +msgid "Selected Groups" +msgstr "Ausgewählte Gruppen" + +#: static/admin/translations-fakejs.js:478 +msgid "Edit user" +msgstr "Benutzer bearbeiten" + +#: static/admin/translations-fakejs.js:479 +msgid "New user" +msgstr "Neuer Benutzer" + +#: static/admin/translations-fakejs.js:480 +msgid "Real name" +msgstr "Echter Name" + +#: static/admin/translations-fakejs.js:486 +msgid "Role" +msgstr "Rolle" + +#: static/admin/translations-fakejs.js:487 +msgid "Admin" +msgstr "Administrator" + +#: static/admin/translations-fakejs.js:488 +msgid "Staff member" +msgstr "Mitarbeiter" + +#: static/admin/translations-fakejs.js:496 +msgid "Assigned Services" +msgstr "Zugewiesene Services" + #: static/modern/main-es5.js:1 msgid "Error communicating with your service. Please, retry again." msgstr "" @@ -1601,7 +1612,8 @@ msgstr "" msgid "Launching service" msgstr "Dienst starten" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 +#: static/modern/translations-fakejs.js:25 msgid "Errors found" msgstr "Fehler gefunden" @@ -1643,18 +1655,14 @@ msgstr "Service zurückgesetzt" msgid "Are you sure?" msgstr "Sind Sie sicher?" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 msgid "Warning" msgstr "Warnung" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:25 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 msgid "Service is in maintenance and cannot be executed" msgstr "Der Service ist in Wartung und kann nicht ausgeführt werden" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 -msgid "Invalid error string" -msgstr "Ungültige Fehlerzeichenfolge" - #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:26 msgid "We use cookies to track usage and preferences" msgstr "Wir verwenden Cookies, um die Nutzung und Präferenzen zu verfolgen" @@ -1803,3 +1811,15 @@ msgstr "Passwort" #: static/modern/translations-fakejs.js:73 msgid "Login" msgstr "Anmeldung" + +#: static/modern/translations-fakejs.js:74 +msgid "Login Verification" +msgstr "Anmeldebestätigung" + +#: static/modern/translations-fakejs.js:75 +msgid "Remember Me" +msgstr "Erinnere dich an mich" + +#: static/modern/translations-fakejs.js:76 +msgid "Submit" +msgstr "Einreichen" diff --git a/server/src/uds/locale/en/LC_MESSAGES/django.po b/server/src/uds/locale/en/LC_MESSAGES/django.po index 488334ea..cd8a3a18 100644 --- a/server/src/uds/locale/en/LC_MESSAGES/django.po +++ b/server/src/uds/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -21,26 +21,26 @@ msgstr "" msgid "Accounts" msgstr "" -#: REST/methods/accounts.py:63 REST/methods/authenticators.py:66 +#: REST/methods/accounts.py:63 REST/methods/authenticators.py:67 #: REST/methods/calendars.py:63 REST/methods/images.py:67 -#: REST/methods/meta_pools.py:81 REST/methods/networks.py:63 -#: REST/methods/osmanagers.py:55 REST/methods/providers.py:71 -#: REST/methods/proxies.py:60 REST/methods/reports.py:69 -#: REST/methods/services_pool_groups.py:71 REST/methods/services_pools.py:136 -#: REST/methods/transports.py:66 REST/methods/user_services.py:325 -#: REST/methods/user_services.py:400 REST/methods/users_groups.py:167 -#: REST/model.py:149 +#: REST/methods/meta_pools.py:81 REST/methods/mfas.py:56 +#: REST/methods/networks.py:63 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:71 REST/methods/proxies.py:60 +#: REST/methods/reports.py:69 REST/methods/services_pool_groups.py:71 +#: REST/methods/services_pools.py:136 REST/methods/transports.py:66 +#: REST/methods/user_services.py:325 REST/methods/user_services.py:400 +#: REST/methods/users_groups.py:167 REST/model.py:149 msgid "Name" msgstr "" -#: REST/methods/accounts.py:64 REST/methods/authenticators.py:68 +#: REST/methods/accounts.py:64 REST/methods/authenticators.py:69 #: REST/methods/calendarrules.py:110 REST/methods/calendars.py:69 -#: REST/methods/meta_pools.py:82 REST/methods/osmanagers.py:57 -#: REST/methods/providers.py:73 REST/methods/proxies.py:63 -#: REST/methods/services.py:241 REST/methods/services_pool_groups.py:72 -#: REST/methods/transports.py:68 REST/methods/user_services.py:402 -#: REST/methods/users_groups.py:168 REST/methods/users_groups.py:386 -#: REST/model.py:173 +#: REST/methods/meta_pools.py:82 REST/methods/mfas.py:58 +#: REST/methods/osmanagers.py:57 REST/methods/providers.py:73 +#: REST/methods/proxies.py:63 REST/methods/services.py:241 +#: REST/methods/services_pool_groups.py:72 REST/methods/transports.py:68 +#: REST/methods/user_services.py:402 REST/methods/users_groups.py:168 +#: REST/methods/users_groups.py:384 REST/model.py:173 msgid "Comments" msgstr "" @@ -48,12 +48,12 @@ msgstr "" msgid "Time mark" msgstr "" -#: REST/methods/accounts.py:66 REST/methods/authenticators.py:73 +#: REST/methods/accounts.py:66 REST/methods/authenticators.py:75 #: REST/methods/calendars.py:71 REST/methods/meta_pools.py:89 -#: REST/methods/networks.py:71 REST/methods/osmanagers.py:59 -#: REST/methods/providers.py:79 REST/methods/proxies.py:64 -#: REST/methods/services.py:250 REST/methods/services_pools.py:145 -#: REST/methods/transports.py:77 +#: REST/methods/mfas.py:59 REST/methods/networks.py:71 +#: REST/methods/osmanagers.py:59 REST/methods/providers.py:79 +#: REST/methods/proxies.py:64 REST/methods/services.py:250 +#: REST/methods/services_pools.py:145 REST/methods/transports.py:77 msgid "tags" msgstr "" @@ -108,7 +108,7 @@ msgstr "" msgid "Unmanaged host" msgstr "" -#: REST/methods/actor.py:207 web/util/errors.py:85 +#: REST/methods/actor.py:207 web/util/errors.py:87 msgid "User service not found" msgstr "" @@ -117,9 +117,9 @@ msgid "Actor tokens" msgstr "" #: REST/methods/actor_token.py:54 REST/methods/tunnel_token.py:52 -#: reports/auto/fields.py:58 reports/stats/pools_performance.py:218 -#: reports/stats/pools_performance.py:237 reports/stats/pools_usage_day.py:64 -#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:191 +#: reports/auto/fields.py:58 reports/stats/pools_performance.py:201 +#: reports/stats/pools_performance.py:220 reports/stats/pools_usage_day.py:64 +#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:176 #: templates/uds/reports/stats/authenticator_stats.html:14 msgid "Date" msgstr "" @@ -158,64 +158,79 @@ msgstr "" msgid "Token isued by {} from {}" msgstr "" -#: REST/methods/authenticators.py:63 +#: REST/methods/authenticators.py:64 msgid "Authenticators" msgstr "" -#: REST/methods/authenticators.py:65 +#: REST/methods/authenticators.py:66 msgid "Id" msgstr "" -#: REST/methods/authenticators.py:67 REST/methods/osmanagers.py:56 -#: REST/methods/providers.py:72 REST/methods/services.py:242 -#: REST/methods/transports.py:67 REST/methods/user_services.py:401 +#: REST/methods/authenticators.py:68 REST/methods/mfas.py:57 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:72 +#: REST/methods/services.py:242 REST/methods/transports.py:67 +#: REST/methods/user_services.py:401 msgid "Type" msgstr "" -#: REST/methods/authenticators.py:69 REST/methods/meta_service_pools.py:88 +#: REST/methods/authenticators.py:70 REST/methods/meta_service_pools.py:88 #: REST/methods/op_calendars.py:83 REST/methods/services_pool_groups.py:62 #: REST/methods/transports.py:65 REST/methods/user_services.py:399 #: REST/model.py:185 models/meta_pool.py:73 msgid "Priority" msgstr "" -#: REST/methods/authenticators.py:70 REST/methods/authenticators.py:107 +#: REST/methods/authenticators.py:71 REST/methods/authenticators.py:110 #: REST/methods/meta_pools.py:86 REST/methods/meta_pools.py:193 #: REST/methods/services_pools.py:141 REST/methods/services_pools.py:386 msgid "Visible" msgstr "" -#: REST/methods/authenticators.py:71 REST/methods/meta_pools.py:88 +#: REST/methods/authenticators.py:72 REST/methods/meta_pools.py:88 #: REST/methods/transports.py:164 REST/model.py:201 msgid "Label" msgstr "" -#: REST/methods/authenticators.py:72 core/util/stats/counters.py:252 -#: reports/stats/pools_performance.py:223 -#: reports/stats/pools_performance.py:286 reports/stats/user_access.py:254 -#: reports/stats/user_access.py:297 services/RDS_enterprise/provider.py:74 +#: REST/methods/authenticators.py:73 core/util/stats/counters.py:252 +#: reports/stats/pools_performance.py:206 +#: reports/stats/pools_performance.py:269 reports/stats/user_access.py:239 +#: reports/stats/user_access.py:282 services/RDS_enterprise/provider.py:74 #: templates/uds/reports/stats/authenticator_stats.html:15 #: templates/uds/reports/stats/pools-performance.html:35 #: templates/uds/reports/stats/user-access.html:35 msgid "Users" msgstr "" -#: REST/methods/authenticators.py:109 REST/methods/services_pools.py:387 -msgid "If active, transport will be visible for users" +#: REST/methods/authenticators.py:74 core/ui/user_interface.py:104 +msgid "MFA" msgstr "" -#: REST/methods/authenticators.py:113 REST/methods/services_pools.py:390 -#: REST/methods/services_pools.py:405 REST/methods/services_pools.py:422 -#: REST/methods/services_pools.py:433 core/ui/user_interface.py:103 -#: services/OVirt/service.py:188 -msgid "Display" +#: REST/methods/authenticators.py:112 +msgid "If active, authenticator will be visible for users" msgstr "" -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:125 core/services/service.py:143 +#: core/services/service.py:154 mfas/Email/mfa.py:46 mfas/SMS/mfa.py:112 +#: models/permissions.py:92 models/permissions.py:96 +#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 +#: services/Proxmox/service.py:208 services/Sample/service.py:100 +#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 +msgid "None" +msgstr "" + +#: REST/methods/authenticators.py:132 +msgid "MFA Provider" +msgstr "" + +#: REST/methods/authenticators.py:134 +msgid "MFA provider to use for this authenticator" +msgstr "" + +#: REST/methods/authenticators.py:193 msgid "Too many results..." msgstr "" -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:193 msgid "Refine your query" msgstr "" @@ -371,7 +386,7 @@ msgstr "" #: REST/methods/meta_service_pools.py:195 REST/methods/services_usage.py:125 #: reports/stats/pool_users_summary.py:60 -#: reports/stats/pools_performance.py:284 reports/stats/pools_usage_day.py:171 +#: reports/stats/pools_performance.py:267 reports/stats/pools_usage_day.py:169 #: reports/stats/pools_usage_summary.py:156 reports/stats/usage_by_pool.py:59 #: reports/stats/usage_by_pool.py:173 services/Proxmox/service.py:111 #: templates/uds/reports/stats/pools-performance.html:33 @@ -430,6 +445,26 @@ msgstr "" msgid "Item is not removable" msgstr "" +#: REST/methods/mfas.py:54 +msgid "Multi Factor Authentication" +msgstr "" + +#: REST/methods/mfas.py:80 +msgid "Device Caching" +msgstr "" + +#: REST/methods/mfas.py:82 +msgid "Time in hours to cache device so MFA is not required again. User based." +msgstr "" + +#: REST/methods/mfas.py:94 +msgid "MFA code validity" +msgstr "" + +#: REST/methods/mfas.py:96 +msgid "Time in minutes to allow MFA code to be used." +msgstr "" + #: REST/methods/networks.py:59 REST/methods/transports.py:114 msgid "Networks" msgstr "" @@ -516,7 +551,7 @@ msgstr "" msgid "Status" msgstr "" -#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:171 +#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:169 #: templates/uds/reports/stats/authenticator_stats.html:16 #: templates/uds/reports/stats/pools-usage-day.html:29 msgid "Services" @@ -609,13 +644,13 @@ msgstr "" msgid "Available reports" msgstr "" -#: REST/methods/reports.py:67 REST/methods/users_groups.py:377 -#: REST/methods/users_groups.py:398 -#: auths/ActiveDirectory_enterprise/authenticator.py:143 +#: REST/methods/reports.py:67 REST/methods/users_groups.py:375 +#: REST/methods/users_groups.py:396 +#: auths/ActiveDirectory_enterprise/authenticator.py:153 #: auths/AzureAD_enterprise/azure_ad.py:95 #: auths/EDirectory_enterprise/authenticator.py:105 #: auths/Radius/authenticator.py:63 auths/RegexLdap/authenticator.py:191 -#: auths/SAML_enterprise/saml.py:121 auths/SimpleLDAP/authenticator.py:182 +#: auths/SAML_enterprise/saml.py:109 auths/SimpleLDAP/authenticator.py:182 #: models/calendar_action.py:147 models/calendar_action.py:154 msgid "Group" msgstr "" @@ -678,13 +713,13 @@ msgstr "" msgid "Advanced" msgstr "" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "With errors" msgstr "" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "Ok" msgstr "" @@ -758,6 +793,16 @@ msgid "" "services assigned but not in use." msgstr "" +#: REST/methods/services_pools.py:387 +msgid "If active, transport will be visible for users" +msgstr "" + +#: REST/methods/services_pools.py:390 REST/methods/services_pools.py:405 +#: REST/methods/services_pools.py:422 REST/methods/services_pools.py:433 +#: core/ui/user_interface.py:103 services/OVirt/service.py:188 +msgid "Display" +msgstr "" + #: REST/methods/services_pools.py:439 msgid "Initial available services" msgstr "" @@ -951,7 +996,7 @@ msgstr "" #: auths/AzureAD_enterprise/azure_ad.py:94 #: auths/EDirectory_enterprise/authenticator.py:69 #: auths/Radius/authenticator.py:62 auths/RegexLdap/authenticator.py:91 -#: auths/SAML_enterprise/saml.py:118 reports/stats/pool_users_summary.py:177 +#: auths/SAML_enterprise/saml.py:106 reports/stats/pool_users_summary.py:177 #: reports/stats/usage_by_pool.py:171 #: templates/uds/reports/stats/pool-users-summary.html:14 #: templates/uds/reports/stats/usage-by-pool.html:15 @@ -968,10 +1013,10 @@ msgid "Current users" msgstr "" #: REST/methods/users_groups.py:160 -#: auths/ActiveDirectory_enterprise/authenticator.py:141 +#: auths/ActiveDirectory_enterprise/authenticator.py:151 #: auths/EDirectory_enterprise/authenticator.py:103 #: auths/RegexLdap/authenticator.py:189 auths/SimpleLDAP/authenticator.py:180 -#: services/HyperV_enterprise/legacy/provider.py:103 +#: mfas/Email/mfa.py:54 services/HyperV_enterprise/legacy/provider.py:103 #: services/HyperV_enterprise/provider.py:86 #: services/NutanixPrism_enterprise/provider.py:54 #: services/Nutanix_enterprise/provider.py:54 services/OVirt/provider.py:121 @@ -985,7 +1030,7 @@ msgstr "" #: transports/NoMachine_enterprise/nomachine_base.py:63 #: transports/PCoIP_enterprise/pcoip.py:61 transports/RDP/rdp_base.py:75 #: transports/SPICE/spice_base.py:69 transports/X2GO/x2go_base.py:70 -#: web/forms/LoginForm.py:43 +#: web/forms/LoginForm.py:44 msgid "Username" msgstr "" @@ -993,7 +1038,7 @@ msgstr "" msgid "Role" msgstr "" -#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:389 +#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:387 msgid "state" msgstr "" @@ -1005,32 +1050,32 @@ msgstr "" msgid "Username cannot be empty" msgstr "" -#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:470 +#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:468 msgid "User already exists (duplicate key error)" msgstr "" -#: REST/methods/users_groups.py:365 +#: REST/methods/users_groups.py:363 #, python-brace-format msgid "Groups of {0}" msgstr "" -#: REST/methods/users_groups.py:371 +#: REST/methods/users_groups.py:369 msgid "Current groups" msgstr "" -#: REST/methods/users_groups.py:398 +#: REST/methods/users_groups.py:396 msgid "UDS Group" msgstr "" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "Meta group" msgstr "" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "UDS Meta Group" msgstr "" -#: REST/methods/users_groups.py:430 +#: REST/methods/users_groups.py:428 msgid "Group name is required" msgstr "" @@ -1079,7 +1124,7 @@ msgstr "" msgid "Item not found" msgstr "" -#: REST/model.py:336 web/util/authentication.py:140 web/util/errors.py:79 +#: REST/model.py:336 web/util/authentication.py:143 web/util/errors.py:81 msgid "Access denied" msgstr "" @@ -1087,7 +1132,7 @@ msgstr "" msgid "Operation not supported" msgstr "" -#: admin/views/__init__.py:59 +#: admin/views/__init__.py:72 msgid "requested a template that do not exist" msgstr "" @@ -1116,11 +1161,11 @@ msgid "" msgstr "" #: auths/ActiveDirectory_enterprise/authenticator.py:80 -#: auths/ActiveDirectory_enterprise/authenticator.py:145 +#: auths/ActiveDirectory_enterprise/authenticator.py:155 #: auths/EDirectory_enterprise/authenticator.py:77 #: auths/RegexLdap/authenticator.py:99 auths/RegexLdap/authenticator.py:193 #: auths/SimpleLDAP/authenticator.py:90 auths/SimpleLDAP/authenticator.py:184 -#: core/auths/authenticator.py:147 +#: core/auths/authenticator.py:147 mfas/Email/mfa.py:63 #: osmanagers/WindowsOsManager/windows_domain.py:85 #: osmanagers/WindowsOsManager/windows_random.py:76 #: services/HyperV_enterprise/legacy/provider.py:110 @@ -1136,8 +1181,8 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcv_base.py:52 #: transports/NoMachine_enterprise/nomachine_base.py:69 #: transports/PCoIP_enterprise/pcoip.py:67 transports/RDP/rdp_base.py:81 -#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:45 -#: web/forms/LoginForm.py:46 +#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:46 +#: web/forms/LoginForm.py:47 msgid "Password" msgstr "" @@ -1197,22 +1242,32 @@ msgid "" "reachable" msgstr "" -#: auths/ActiveDirectory_enterprise/authenticator.py:130 +#: auths/ActiveDirectory_enterprise/authenticator.py:133 +#: auths/SAML_enterprise/saml.py:207 +msgid "MFA attribute" +msgstr "" + +#: auths/ActiveDirectory_enterprise/authenticator.py:135 +#: auths/SAML_enterprise/saml.py:209 +msgid "Attribute from where to extract the MFA code" +msgstr "" + +#: auths/ActiveDirectory_enterprise/authenticator.py:140 msgid "Active Directory Authenticator" msgstr "" -#: auths/ActiveDirectory_enterprise/authenticator.py:132 +#: auths/ActiveDirectory_enterprise/authenticator.py:142 msgid "Authenticate against Active Directory" msgstr "" -#: auths/ActiveDirectory_enterprise/authenticator.py:175 -#: auths/ActiveDirectory_enterprise/authenticator.py:602 +#: auths/ActiveDirectory_enterprise/authenticator.py:187 +#: auths/ActiveDirectory_enterprise/authenticator.py:648 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "" -#: auths/ActiveDirectory_enterprise/authenticator.py:481 -#: auths/ActiveDirectory_enterprise/authenticator.py:532 -#: auths/AzureAD_enterprise/azure_ad.py:313 +#: auths/ActiveDirectory_enterprise/authenticator.py:521 +#: auths/ActiveDirectory_enterprise/authenticator.py:578 +#: auths/AzureAD_enterprise/azure_ad.py:315 #: auths/EDirectory_enterprise/authenticator.py:269 #: auths/EDirectory_enterprise/authenticator.py:300 #: auths/RegexLdap/authenticator.py:538 auths/RegexLdap/authenticator.py:569 @@ -1220,34 +1275,34 @@ msgstr "" msgid "Username not found" msgstr "" -#: auths/ActiveDirectory_enterprise/authenticator.py:514 +#: auths/ActiveDirectory_enterprise/authenticator.py:560 #: auths/SimpleLDAP/authenticator.py:468 msgid "Group not found" msgstr "" -#: auths/ActiveDirectory_enterprise/authenticator.py:559 -#: auths/ActiveDirectory_enterprise/authenticator.py:581 +#: auths/ActiveDirectory_enterprise/authenticator.py:605 +#: auths/ActiveDirectory_enterprise/authenticator.py:627 #: auths/EDirectory_enterprise/authenticator.py:322 #: auths/RegexLdap/authenticator.py:597 auths/SimpleLDAP/authenticator.py:503 #: auths/SimpleLDAP/authenticator.py:523 msgid "Too many results, be more specific" msgstr "" -#: auths/ActiveDirectory_enterprise/authenticator.py:613 +#: auths/ActiveDirectory_enterprise/authenticator.py:659 msgid "Domain seems to be incorrect, please check it" msgstr "" -#: auths/ActiveDirectory_enterprise/authenticator.py:632 +#: auths/ActiveDirectory_enterprise/authenticator.py:678 msgid "" "Server does not seem an Active Directory (it does not have user objects)" msgstr "" -#: auths/ActiveDirectory_enterprise/authenticator.py:655 +#: auths/ActiveDirectory_enterprise/authenticator.py:701 msgid "" "Server does not seem an Active Directory (it does not have group objects)" msgstr "" -#: auths/ActiveDirectory_enterprise/authenticator.py:664 +#: auths/ActiveDirectory_enterprise/authenticator.py:710 #: auths/EDirectory_enterprise/authenticator.py:445 #: auths/RegexLdap/authenticator.py:707 auths/SimpleLDAP/authenticator.py:686 msgid "Connection params seem correct, test was succesfully executed" @@ -1335,21 +1390,21 @@ msgstr "" msgid "Office 365 logout" msgstr "" -#: auths/AzureAD_enterprise/azure_ad.py:176 auths/SAML_enterprise/saml.py:217 +#: auths/AzureAD_enterprise/azure_ad.py:176 msgid "SAML Authenticator does not support white spaces on field NAME" msgstr "" -#: auths/AzureAD_enterprise/azure_ad.py:323 -#: auths/AzureAD_enterprise/azure_ad.py:349 -#: auths/AzureAD_enterprise/azure_ad.py:359 +#: auths/AzureAD_enterprise/azure_ad.py:325 +#: auths/AzureAD_enterprise/azure_ad.py:351 +#: auths/AzureAD_enterprise/azure_ad.py:361 msgid "Authenticator exception:" msgstr "" -#: auths/AzureAD_enterprise/azure_ad.py:394 core/util/ldaputil.py:49 +#: auths/AzureAD_enterprise/azure_ad.py:396 core/util/ldaputil.py:49 msgid "Connection error: " msgstr "" -#: auths/AzureAD_enterprise/azure_ad.py:397 +#: auths/AzureAD_enterprise/azure_ad.py:399 msgid "Connection params seems correct, test was succesfully executed" msgstr "" @@ -1442,7 +1497,7 @@ msgstr "" msgid "IP Range" msgstr "" -#: auths/IP/authenticator.py:119 auths/IP/authenticator.py:122 +#: auths/IP/authenticator.py:122 auths/IP/authenticator.py:125 msgid "All seems to be fine." msgstr "" @@ -1625,125 +1680,165 @@ msgid "" "attribute)" msgstr "" -#: auths/SAML_enterprise/saml.py:88 +#: auths/SAML_enterprise/saml.py:76 msgid "SAML Authenticator" msgstr "" -#: auths/SAML_enterprise/saml.py:100 +#: auths/SAML_enterprise/saml.py:88 msgid "SAML (v2.0) Authenticator" msgstr "" -#: auths/SAML_enterprise/saml.py:130 +#: auths/SAML_enterprise/saml.py:118 msgid "Private key" msgstr "" -#: auths/SAML_enterprise/saml.py:133 +#: auths/SAML_enterprise/saml.py:121 msgid "" "Private key used for sign and encription, as generated in base 64 from " "openssl" msgstr "" -#: auths/SAML_enterprise/saml.py:136 auths/SAML_enterprise/saml.py:147 +#: auths/SAML_enterprise/saml.py:124 auths/SAML_enterprise/saml.py:135 msgid "Certificates" msgstr "" -#: auths/SAML_enterprise/saml.py:141 transports/SPICE/spice_base.py:83 +#: auths/SAML_enterprise/saml.py:129 transports/SPICE/spice_base.py:83 msgid "Certificate" msgstr "" -#: auths/SAML_enterprise/saml.py:144 +#: auths/SAML_enterprise/saml.py:132 msgid "" "Public key used for sign and encription (public part of previous private " "key), as generated in base 64 from openssl" msgstr "" -#: auths/SAML_enterprise/saml.py:152 +#: auths/SAML_enterprise/saml.py:140 msgid "IDP Metadata" msgstr "" -#: auths/SAML_enterprise/saml.py:155 +#: auths/SAML_enterprise/saml.py:143 msgid "" "You can enter here the URL or the IDP metadata or the metadata itself (xml)" msgstr "" -#: auths/SAML_enterprise/saml.py:158 auths/SAML_enterprise/saml.py:167 +#: auths/SAML_enterprise/saml.py:146 auths/SAML_enterprise/saml.py:155 msgid "Metadata" msgstr "" -#: auths/SAML_enterprise/saml.py:162 +#: auths/SAML_enterprise/saml.py:150 msgid "Entity ID" msgstr "" -#: auths/SAML_enterprise/saml.py:165 +#: auths/SAML_enterprise/saml.py:153 msgid "ID of the SP. If left blank, this will be autogenerated from server URL" msgstr "" -#: auths/SAML_enterprise/saml.py:173 +#: auths/SAML_enterprise/saml.py:161 msgid "User name attrs" msgstr "" -#: auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:163 msgid "Fields from where to extract user name" msgstr "" -#: auths/SAML_enterprise/saml.py:177 auths/SAML_enterprise/saml.py:187 -#: auths/SAML_enterprise/saml.py:197 +#: auths/SAML_enterprise/saml.py:165 auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:185 msgid "Attributes" msgstr "" -#: auths/SAML_enterprise/saml.py:183 +#: auths/SAML_enterprise/saml.py:171 msgid "Group name attrs" msgstr "" -#: auths/SAML_enterprise/saml.py:185 +#: auths/SAML_enterprise/saml.py:173 msgid "Fields from where to extract the groups" msgstr "" -#: auths/SAML_enterprise/saml.py:193 +#: auths/SAML_enterprise/saml.py:181 msgid "Real name attrs" msgstr "" -#: auths/SAML_enterprise/saml.py:195 +#: auths/SAML_enterprise/saml.py:183 msgid "Fields from where to extract the real name" msgstr "" +#: auths/SAML_enterprise/saml.py:189 +msgid "Global logout" +msgstr "" + +#: auths/SAML_enterprise/saml.py:192 +msgid "If set, logout from UDS will trigger SAML logout" +msgstr "" + +#: auths/SAML_enterprise/saml.py:197 +msgid "ADFS compatibility" +msgstr "" + +#: auths/SAML_enterprise/saml.py:200 +msgid "If set, enable lowercase url encoding so ADFS can work correctly" +msgstr "" + #: auths/SAML_enterprise/saml.py:231 +msgid "This kind of Authenticator does not support white spaces on field NAME" +msgstr "" + +#: auths/SAML_enterprise/saml.py:245 msgid "" "Server certificate should be a valid PEM (PEM certificates starts with -----" "BEGIN CERTIFICATE-----)" msgstr "" -#: auths/SAML_enterprise/saml.py:239 +#: auths/SAML_enterprise/saml.py:253 msgid "Invalid server certificate. " msgstr "" -#: auths/SAML_enterprise/saml.py:250 +#: auths/SAML_enterprise/saml.py:264 msgid "" "Private key should be a valid PEM (PEM private keys starts with -----BEGIN " "RSA PRIVATE KEY-----" msgstr "" -#: auths/SAML_enterprise/saml.py:258 +#: auths/SAML_enterprise/saml.py:272 msgid "Invalid private key. " msgstr "" -#: auths/SAML_enterprise/saml.py:277 +#: auths/SAML_enterprise/saml.py:291 #, python-brace-format msgid "Can't fetch url {0}: {1}" msgstr "" -#: auths/SAML_enterprise/saml.py:288 +#: auths/SAML_enterprise/saml.py:302 msgid " (obtained from URL)" msgstr "" -#: auths/SAML_enterprise/saml.py:290 +#: auths/SAML_enterprise/saml.py:304 msgid "XML does not seem valid for IDP Metadata " msgstr "" -#: auths/SAML_enterprise/saml.py:312 +#: auths/SAML_enterprise/saml.py:357 msgid "Can't access idp metadata" msgstr "" +#: auths/SAML_enterprise/saml.py:424 +msgid "Error validating SP metadata: " +msgstr "" + +#: auths/SAML_enterprise/saml.py:528 +msgid "Error processing SLO: " +msgstr "" + +#: auths/SAML_enterprise/saml.py:558 +msgid "Error processing SAML response: " +msgstr "" + +#: auths/SAML_enterprise/saml.py:571 +msgid "SAML response not authenticated" +msgstr "" + +#: auths/SAML_enterprise/saml.py:598 +msgid "No attributes returned from IdP" +msgstr "" + #: auths/Sample/SampleAuth.py:79 msgid "Sample Authenticator" msgstr "" @@ -1832,11 +1927,11 @@ msgstr "" msgid "Can't locate any group with the membership attribute specified" msgstr "" -#: core/auths/auth.py:110 +#: core/auths/auth.py:111 msgid "System Administrator" msgstr "" -#: core/auths/auth.py:150 +#: core/auths/auth.py:155 msgid "Forbidden" msgstr "" @@ -1869,32 +1964,40 @@ msgstr "" msgid "Can't unpublish publications with services in process" msgstr "" -#: core/managers/user_service.py:337 +#: core/managers/user_service.py:348 msgid "Can't remove a non active element" msgstr "" -#: core/managers/user_service.py:363 +#: core/managers/user_service.py:374 msgid "Can't remove nor cancel {} cause its state don't allow it" msgstr "" -#: core/managers/user_service.py:395 +#: core/managers/user_service.py:406 msgid "The requested service is restrained" msgstr "" -#: core/managers/user_service.py:761 web/util/errors.py:81 +#: core/managers/user_service.py:770 web/util/errors.py:83 msgid "" "Invalid service. The service is not available at this moment. Please, try " "later" msgstr "" -#: core/managers/user_service.py:798 +#: core/managers/user_service.py:807 msgid "The requested transport {} is not valid for {}" msgstr "" -#: core/managers/user_service.py:1078 +#: core/managers/user_service.py:1084 msgid "The service is not accessible from this device" msgstr "" +#: core/mfas/mfa.py:60 core/mfas/mfa.py:72 +msgid "Base MFA" +msgstr "" + +#: core/mfas/mfa.py:184 +msgid "Invalid MFA code" +msgstr "" + #: core/module.py:215 msgid "No connection checking method is implemented." msgstr "" @@ -1939,14 +2042,6 @@ msgstr "" msgid "Base Service" msgstr "" -#: core/services/service.py:143 core/services/service.py:154 -#: models/permissions.py:92 models/permissions.py:96 -#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 -#: services/Proxmox/service.py:208 services/Sample/service.py:100 -#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 -msgid "None" -msgstr "" - #: core/transports/transport.py:52 msgid "Direct" msgstr "" @@ -2071,23 +2166,23 @@ msgstr "" msgid "Cached" msgstr "" -#: core/util/tools.py:152 +#: core/util/tools.py:155 msgid "{} days {:d}:{:02d}:{:02d}" msgstr "" -#: core/util/tools.py:171 +#: core/util/tools.py:174 msgid "The basename is not a valid for a hostname" msgstr "" -#: core/util/tools.py:176 +#: core/util/tools.py:179 msgid "The length of basename plus length must be greater than 0" msgstr "" -#: core/util/tools.py:181 +#: core/util/tools.py:184 msgid "The length of basename plus length must not be greater than 15" msgstr "" -#: core/util/tools.py:186 +#: core/util/tools.py:189 msgid "The machine name can't be only numbers" msgstr "" @@ -2118,72 +2213,330 @@ msgstr "" msgid "{} is not a valid hostname" msgstr "" -#: core/util/validators.py:152 +#: core/util/validators.py:131 +msgid "{} is not a valid host:port pair" +msgstr "" + +#: core/util/validators.py:168 msgid "" "Invalid mac range. Mac range must be in format XX:XX:XX:XX:XX:XX-XX:XX:XX:XX:" "XX:XX" msgstr "" -#: dispatchers/wyse_enterprise/views.py:118 +#: core/util/validators.py:182 +msgid "Email address is too long" +msgstr "" + +#: core/util/validators.py:187 +msgid "Email address is not valid" +msgstr "" + +#: dispatchers/wyse_enterprise/views.py:119 msgid "There are no authenticators available for login" msgstr "" -#: dispatchers/wyse_enterprise/views.py:138 +#: dispatchers/wyse_enterprise/views.py:139 #, python-brace-format msgid "The authenticator {0} is not usable" msgstr "" -#: dispatchers/wyse_enterprise/views.py:145 +#: dispatchers/wyse_enterprise/views.py:146 msgid "Invalid credentials" msgstr "" -#: dispatchers/wyse_enterprise/views.py:152 +#: dispatchers/wyse_enterprise/views.py:153 #, python-brace-format msgid "The domain {0} does not exists" msgstr "" -#: dispatchers/wyse_enterprise/views.py:228 +#: dispatchers/wyse_enterprise/views.py:229 msgid "No services available" msgstr "" -#: dispatchers/wyse_enterprise/views.py:244 -#: dispatchers/wyse_enterprise/views.py:344 +#: dispatchers/wyse_enterprise/views.py:245 +#: dispatchers/wyse_enterprise/views.py:345 msgid "Invalid session" msgstr "" -#: dispatchers/wyse_enterprise/views.py:248 -#: dispatchers/wyse_enterprise/views.py:348 +#: dispatchers/wyse_enterprise/views.py:249 +#: dispatchers/wyse_enterprise/views.py:349 msgid "Invalid authorization" msgstr "" -#: dispatchers/wyse_enterprise/views.py:259 -#: dispatchers/wyse_enterprise/views.py:354 +#: dispatchers/wyse_enterprise/views.py:260 +#: dispatchers/wyse_enterprise/views.py:355 msgid "Invalid request" msgstr "" -#: dispatchers/wyse_enterprise/views.py:262 -#: dispatchers/wyse_enterprise/views.py:357 +#: dispatchers/wyse_enterprise/views.py:263 +#: dispatchers/wyse_enterprise/views.py:358 msgid "Invalid credentials used" msgstr "" -#: dispatchers/wyse_enterprise/views.py:277 web/util/errors.py:78 +#: dispatchers/wyse_enterprise/views.py:278 web/util/errors.py:80 msgid "Service not found" msgstr "" -#: dispatchers/wyse_enterprise/views.py:281 +#: dispatchers/wyse_enterprise/views.py:282 msgid "Invalid machine uuid." msgstr "" -#: dispatchers/wyse_enterprise/views.py:295 web/util/errors.py:77 +#: dispatchers/wyse_enterprise/views.py:296 web/util/errors.py:79 msgid "Transport not found" msgstr "" -#: dispatchers/wyse_enterprise/views.py:300 -#: dispatchers/wyse_enterprise/views.py:308 -#: dispatchers/wyse_enterprise/views.py:315 +#: dispatchers/wyse_enterprise/views.py:301 +#: dispatchers/wyse_enterprise/views.py:309 +#: dispatchers/wyse_enterprise/views.py:316 msgid "Service not ready at this moment. Please, try again in a while." msgstr "" +#: mfas/Email/mfa.py:22 +msgid "Email Multi Factor" +msgstr "" + +#: mfas/Email/mfa.py:24 +msgid "Email Multi Factor Authenticator" +msgstr "" + +#: mfas/Email/mfa.py:29 +msgid "SMTP Host" +msgstr "" + +#: mfas/Email/mfa.py:32 +msgid "" +"SMTP Server hostname or IP address. If you are using a non-standard port, " +"add it after a colon, for example: smtp.gmail.com:587" +msgstr "" + +#: mfas/Email/mfa.py:37 mfas/Email/mfa.py:50 mfas/Email/mfa.py:59 +#: mfas/Email/mfa.py:68 +msgid "SMTP Server" +msgstr "" + +#: mfas/Email/mfa.py:41 transports/HTML5RDP/html5rdp.py:268 +#: transports/HTML5RDS_enterprise/html5rds.py:255 +msgid "Security" +msgstr "" + +#: mfas/Email/mfa.py:42 +msgid "Security protocol to use" +msgstr "" + +#: mfas/Email/mfa.py:44 +msgid "TLS" +msgstr "" + +#: mfas/Email/mfa.py:45 +msgid "SSL" +msgstr "" + +#: mfas/Email/mfa.py:56 +msgid "User with access to SMTP server" +msgstr "" + +#: mfas/Email/mfa.py:65 +msgid "Password of the user with access to SMTP server" +msgstr "" + +#: mfas/Email/mfa.py:74 +msgid "Subject" +msgstr "" + +#: mfas/Email/mfa.py:76 +msgid "Subject of the email" +msgstr "" + +#: mfas/Email/mfa.py:78 mfas/Email/mfa.py:87 mfas/Email/mfa.py:95 +msgid "Config" +msgstr "" + +#: mfas/Email/mfa.py:83 +msgid "From Email" +msgstr "" + +#: mfas/Email/mfa.py:85 +msgid "Email address that will be used as sender" +msgstr "" + +#: mfas/Email/mfa.py:91 +msgid "Enable HTML" +msgstr "" + +#: mfas/Email/mfa.py:93 +msgid "Enable HTML in emails" +msgstr "" + +#: mfas/Email/mfa.py:110 +msgid "Invalid SMTP hostname" +msgstr "" + +#: mfas/SMS/mfa.py:19 +msgid "SMS Thought HTTP" +msgstr "" + +#: mfas/SMS/mfa.py:21 +msgid "Simple SMS sending MFA using HTTP" +msgstr "" + +#: mfas/SMS/mfa.py:26 +msgid "URL pattern for SMS sending" +msgstr "" + +#: mfas/SMS/mfa.py:29 +msgid "" +"URL pattern for SMS sending. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" + +#: mfas/SMS/mfa.py:37 mfas/SMS/mfa.py:43 mfas/SMS/mfa.py:56 mfas/SMS/mfa.py:75 +#: mfas/SMS/mfa.py:92 mfas/SMS/mfa.py:101 +msgid "HTTP Server" +msgstr "" + +#: mfas/SMS/mfa.py:41 +msgid "Ignore certificate errors" +msgstr "" + +#: mfas/SMS/mfa.py:46 +msgid "" +"If checked, the server certificate will be ignored. This is useful if the " +"server uses a self-signed certificate." +msgstr "" + +#: mfas/SMS/mfa.py:52 +msgid "SMS sending method" +msgstr "" + +#: mfas/SMS/mfa.py:54 mfas/SMS/mfa.py:108 +msgid "Method for sending SMS" +msgstr "" + +#: mfas/SMS/mfa.py:63 +msgid "Headers for SMS requests" +msgstr "" + +#: mfas/SMS/mfa.py:66 +msgid "" +"Headers for SMS requests. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @....\n" +"Headers are in the form of \"Header: Value\". (without the quotes)" +msgstr "" + +#: mfas/SMS/mfa.py:81 +msgid "Parameters for SMS POST/PUT sending" +msgstr "" + +#: mfas/SMS/mfa.py:84 +msgid "" +"Parameters for SMS sending via POST/PUT. It can contain the following " +"variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" + +#: mfas/SMS/mfa.py:96 +msgid "SMS encoding" +msgstr "" + +#: mfas/SMS/mfa.py:99 +msgid "Encoding for SMS" +msgstr "" + +#: mfas/SMS/mfa.py:106 +msgid "SMS authentication method" +msgstr "" + +#: mfas/SMS/mfa.py:110 mfas/SMS/mfa.py:124 mfas/SMS/mfa.py:133 +msgid "HTTP Authentication" +msgstr "" + +#: mfas/SMS/mfa.py:113 +msgid "HTTP Basic Auth" +msgstr "" + +#: mfas/SMS/mfa.py:114 +msgid "HTTP Digest Auth" +msgstr "" + +#: mfas/SMS/mfa.py:120 +msgid "SMS authentication user or token" +msgstr "" + +#: mfas/SMS/mfa.py:122 +msgid "User or token for SMS authentication" +msgstr "" + +#: mfas/SMS/mfa.py:129 +msgid "SMS authentication password" +msgstr "" + +#: mfas/SMS/mfa.py:131 +msgid "Password for SMS authentication" +msgstr "" + +#: mfas/SMS/mfa.py:138 +msgid "SMS response OK regex" +msgstr "" + +#: mfas/SMS/mfa.py:141 +msgid "" +"Regex for SMS response OK. If emty, the response is considered OK if status " +"code is 200." +msgstr "" + +#: mfas/SMS/mfa.py:144 mfas/SMS/mfa.py:153 +msgid "HTTP Response" +msgstr "" + +#: mfas/SMS/mfa.py:148 +msgid "SMS response error action" +msgstr "" + +#: mfas/SMS/mfa.py:151 +msgid "Action for SMS response error" +msgstr "" + +#: mfas/SMS/mfa.py:155 +msgid "Allow user log in without MFA" +msgstr "" + +#: mfas/SMS/mfa.py:156 +msgid "Deny user log in" +msgstr "" + +#: mfas/SMS/mfa.py:199 +msgid "SMS sending failed" +msgstr "" + +#: mfas/SMS/mfa.py:263 web/views/modern.py:275 +msgid "MFA Code" +msgstr "" + +#: mfas/Sample/mfa.py:16 +msgid "Sample Multi Factor" +msgstr "" + +#: mfas/Sample/mfa.py:18 +msgid "Sample Multi Factor Authenticator" +msgstr "" + +#: mfas/Sample/mfa.py:22 +msgid "Sample useless field" +msgstr "" + +#: mfas/Sample/mfa.py:25 +msgid "This is a useless field, for sample and testing pourposes" +msgstr "" + #: models/calendar_action.py:63 msgid "Publish" msgstr "" @@ -2701,7 +3054,7 @@ msgid "Service pool for report" msgstr "" #: reports/auto/fields.py:104 reports/lists/users.py:61 -#: web/forms/LoginForm.py:50 +#: web/forms/LoginForm.py:51 msgid "Authenticator" msgstr "" @@ -2753,24 +3106,24 @@ msgstr "" msgid "Real Name" msgstr "" -#: reports/stats/auth_stats.py:58 +#: reports/stats/auth_stats.py:59 msgid "Statistics by authenticator" msgstr "" -#: reports/stats/auth_stats.py:60 +#: reports/stats/auth_stats.py:61 msgid "" "Generates a report with the statistics of an authenticator for a desired " "period" msgstr "" -#: reports/stats/auth_stats.py:136 reports/stats/usage_by_pool.py:146 +#: reports/stats/auth_stats.py:123 reports/stats/usage_by_pool.py:146 #: templates/uds/reports/stats/authenticator_stats.html:4 #: templates/uds/reports/stats/usage-by-pool.html:4 #: templates/uds/reports/stats/usage-by-pool.html:6 msgid "Users usage list" msgstr "" -#: reports/stats/auth_stats.py:137 reports/stats/usage_by_pool.py:147 +#: reports/stats/auth_stats.py:124 reports/stats/usage_by_pool.py:147 msgid "UDS Report of users usage" msgstr "" @@ -2843,30 +3196,26 @@ msgstr "" msgid "Number of sampling points used in charts" msgstr "" -#: reports/stats/pools_performance.py:128 -msgid "Select at least a service pool for the report" -msgstr "" - -#: reports/stats/pools_performance.py:211 +#: reports/stats/pools_performance.py:194 msgid "Distinct Users" msgstr "" -#: reports/stats/pools_performance.py:230 -#: reports/stats/pools_performance.py:242 -#: reports/stats/pools_performance.py:287 +#: reports/stats/pools_performance.py:213 +#: reports/stats/pools_performance.py:225 +#: reports/stats/pools_performance.py:270 #: templates/uds/reports/stats/pools-performance.html:36 msgid "Accesses" msgstr "" -#: reports/stats/pools_performance.py:258 +#: reports/stats/pools_performance.py:241 msgid "UDS Pools Performance Report" msgstr "" -#: reports/stats/pools_performance.py:259 +#: reports/stats/pools_performance.py:242 msgid "Pools Performance" msgstr "" -#: reports/stats/pools_performance.py:285 reports/stats/user_access.py:297 +#: reports/stats/pools_performance.py:268 reports/stats/user_access.py:282 #: templates/uds/reports/stats/pools-performance.html:34 #: templates/uds/reports/stats/user-access.html:34 msgid "Date range" @@ -2880,21 +3229,21 @@ msgstr "" msgid "Pools usage counters for an specific day" msgstr "" -#: reports/stats/pools_usage_day.py:128 +#: reports/stats/pools_usage_day.py:126 msgid "Services by hour" msgstr "" -#: reports/stats/pools_usage_day.py:133 reports/stats/pools_usage_day.py:171 -#: reports/stats/user_access.py:228 reports/stats/user_access.py:240 +#: reports/stats/pools_usage_day.py:131 reports/stats/pools_usage_day.py:169 +#: reports/stats/user_access.py:213 reports/stats/user_access.py:225 #: templates/uds/reports/stats/pools-usage-day.html:28 msgid "Hour" msgstr "" -#: reports/stats/pools_usage_day.py:152 +#: reports/stats/pools_usage_day.py:150 msgid "Services usage report for a day" msgstr "" -#: reports/stats/pools_usage_day.py:153 +#: reports/stats/pools_usage_day.py:151 msgid "Service usage report" msgstr "" @@ -2960,63 +3309,63 @@ msgstr "" msgid "Seconds" msgstr "" -#: reports/stats/user_access.py:59 reports/stats/user_access.py:281 +#: reports/stats/user_access.py:59 reports/stats/user_access.py:266 msgid "Users access report by date" msgstr "" -#: reports/stats/user_access.py:60 reports/stats/user_access.py:282 +#: reports/stats/user_access.py:60 reports/stats/user_access.py:267 msgid "Report of user access to platform by date" msgstr "" -#: reports/stats/user_access.py:186 +#: reports/stats/user_access.py:171 msgid "Users Access (global)" msgstr "" -#: reports/stats/user_access.py:206 +#: reports/stats/user_access.py:191 msgid "Users Access (by week)" msgstr "" -#: reports/stats/user_access.py:209 reports/stats/user_access.py:245 +#: reports/stats/user_access.py:194 reports/stats/user_access.py:230 msgid "Monday" msgstr "" -#: reports/stats/user_access.py:210 reports/stats/user_access.py:246 +#: reports/stats/user_access.py:195 reports/stats/user_access.py:231 msgid "Tuesday" msgstr "" -#: reports/stats/user_access.py:211 reports/stats/user_access.py:247 +#: reports/stats/user_access.py:196 reports/stats/user_access.py:232 msgid "Wednesday" msgstr "" -#: reports/stats/user_access.py:212 reports/stats/user_access.py:248 +#: reports/stats/user_access.py:197 reports/stats/user_access.py:233 msgid "Thursday" msgstr "" -#: reports/stats/user_access.py:213 reports/stats/user_access.py:249 +#: reports/stats/user_access.py:198 reports/stats/user_access.py:234 msgid "Friday" msgstr "" -#: reports/stats/user_access.py:214 reports/stats/user_access.py:250 +#: reports/stats/user_access.py:199 reports/stats/user_access.py:235 msgid "Saturday" msgstr "" -#: reports/stats/user_access.py:215 reports/stats/user_access.py:251 +#: reports/stats/user_access.py:200 reports/stats/user_access.py:236 msgid "Sunday" msgstr "" -#: reports/stats/user_access.py:217 reports/stats/user_access.py:243 +#: reports/stats/user_access.py:202 reports/stats/user_access.py:228 msgid "Day of week" msgstr "" -#: reports/stats/user_access.py:226 reports/stats/user_access.py:238 +#: reports/stats/user_access.py:211 reports/stats/user_access.py:223 msgid "Users Access (by hour)" msgstr "" -#: reports/stats/user_access.py:267 +#: reports/stats/user_access.py:252 msgid "Users access to UDS" msgstr "" -#: reports/stats/user_access.py:268 +#: reports/stats/user_access.py:253 msgid "UDS Report for users access" msgstr "" @@ -4201,72 +4550,72 @@ msgstr "" msgid "Provides connection to machines by IP" msgstr "" -#: services/PhysicalMachines/service_multi.py:64 +#: services/PhysicalMachines/service_multi.py:62 #: services/Vmware_enterprise/service_fixed.py:55 msgid "Service Token" msgstr "" -#: services/PhysicalMachines/service_multi.py:67 +#: services/PhysicalMachines/service_multi.py:65 #: services/Vmware_enterprise/service_fixed.py:57 msgid "" "Service token that will be used by actors to communicate with service. Leave " "empty for persistent assignation." msgstr "" -#: services/PhysicalMachines/service_multi.py:75 +#: services/PhysicalMachines/service_multi.py:73 #: services/RDS_enterprise/provider.py:51 msgid "List of servers" msgstr "" -#: services/PhysicalMachines/service_multi.py:76 +#: services/PhysicalMachines/service_multi.py:74 msgid "List of servers available for this service" msgstr "" -#: services/PhysicalMachines/service_multi.py:81 +#: services/PhysicalMachines/service_multi.py:79 msgid "Check Port" msgstr "" -#: services/PhysicalMachines/service_multi.py:85 +#: services/PhysicalMachines/service_multi.py:83 msgid "" "If non zero, only hosts responding to connection on that port will be served." msgstr "" -#: services/PhysicalMachines/service_multi.py:92 +#: services/PhysicalMachines/service_multi.py:90 msgid "Skip time" msgstr "" -#: services/PhysicalMachines/service_multi.py:95 +#: services/PhysicalMachines/service_multi.py:93 msgid "If a host fails to check, skip it for this time (in minutes)." msgstr "" -#: services/PhysicalMachines/service_multi.py:103 +#: services/PhysicalMachines/service_multi.py:101 msgid "Max session per machine" msgstr "" -#: services/PhysicalMachines/service_multi.py:107 +#: services/PhysicalMachines/service_multi.py:105 msgid "" "Maximum session duration before UDS thinks this machine got locked and " "releases it (hours). 0 means \"never\"." msgstr "" -#: services/PhysicalMachines/service_multi.py:114 +#: services/PhysicalMachines/service_multi.py:112 msgid "Lock machine by external access" msgstr "" -#: services/PhysicalMachines/service_multi.py:115 +#: services/PhysicalMachines/service_multi.py:113 msgid "" "If checked, UDS will lock the machine if it is accesed from outside UDS." msgstr "" -#: services/PhysicalMachines/service_multi.py:122 +#: services/PhysicalMachines/service_multi.py:120 msgid "Static Multiple IP" msgstr "" -#: services/PhysicalMachines/service_multi.py:124 +#: services/PhysicalMachines/service_multi.py:122 msgid "This service provides access to POWERED-ON Machines by IP" msgstr "" -#: services/PhysicalMachines/service_multi.py:158 +#: services/PhysicalMachines/service_multi.py:156 msgid "Invalid value detected on servers list: \"{}\"" msgstr "" @@ -5106,47 +5455,47 @@ msgstr "" msgid "Shadow memory multiplier (use with care)" msgstr "" -#: temp_for_locales.py:96 +#: temp_for_locales.py:99 msgid "Spanish" msgstr "" -#: temp_for_locales.py:97 +#: temp_for_locales.py:100 msgid "English" msgstr "" -#: temp_for_locales.py:98 +#: temp_for_locales.py:101 msgid "French" msgstr "" -#: temp_for_locales.py:99 +#: temp_for_locales.py:102 msgid "German" msgstr "" -#: temp_for_locales.py:100 +#: temp_for_locales.py:103 msgid "Portuguese" msgstr "" -#: temp_for_locales.py:101 +#: temp_for_locales.py:104 msgid "Italian" msgstr "" -#: temp_for_locales.py:102 +#: temp_for_locales.py:105 msgid "Basque" msgstr "" -#: temp_for_locales.py:103 +#: temp_for_locales.py:106 msgid "Arabic" msgstr "" -#: temp_for_locales.py:104 +#: temp_for_locales.py:107 msgid "Russian" msgstr "" -#: temp_for_locales.py:105 +#: temp_for_locales.py:108 msgid "Catalan" msgstr "" -#: temp_for_locales.py:106 +#: temp_for_locales.py:109 msgid "Chinese" msgstr "" @@ -5343,7 +5692,7 @@ msgstr "" #: transports/HTML5RDP/html5rdp.py:134 #: transports/HTML5RDS_enterprise/html5rds.py:123 -#: transports/RDP/rdp_base.py:222 +#: transports/RDP/rdp_base.py:241 msgid "" "If checked, the wallpaper and themes will be shown on machine (better user " "experience, more bandwidth)" @@ -5351,19 +5700,19 @@ msgstr "" #: transports/HTML5RDP/html5rdp.py:139 #: transports/HTML5RDS_enterprise/html5rds.py:128 -#: transports/RDP/rdp_base.py:235 +#: transports/RDP/rdp_base.py:254 msgid "Allow Desk.Comp." msgstr "" #: transports/HTML5RDP/html5rdp.py:141 #: transports/HTML5RDS_enterprise/html5rds.py:130 -#: transports/RDP/rdp_base.py:237 +#: transports/RDP/rdp_base.py:256 msgid "If checked, desktop composition will be allowed" msgstr "" #: transports/HTML5RDP/html5rdp.py:145 #: transports/HTML5RDS_enterprise/html5rds.py:134 -#: transports/RDP/rdp_base.py:241 transports/RDS_enterprise/rds_base.py:150 +#: transports/RDP/rdp_base.py:260 transports/RDS_enterprise/rds_base.py:150 msgid "Font Smoothing" msgstr "" @@ -5614,11 +5963,6 @@ msgstr "" msgid "Override UDS window and replace it with the connection." msgstr "" -#: transports/HTML5RDP/html5rdp.py:268 -#: transports/HTML5RDS_enterprise/html5rds.py:255 -msgid "Security" -msgstr "" - #: transports/HTML5RDP/html5rdp.py:269 #: transports/HTML5RDS_enterprise/html5rds.py:256 msgid "Connection security mode for Guacamole RDP connection" @@ -5652,11 +5996,11 @@ msgstr "" msgid "TLS (Transport Security Layer encryption)" msgstr "" -#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:173 +#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:192 msgid "RDP Port" msgstr "" -#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:174 +#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:193 msgid "Use this port as RDP port. Defaults to 3389." msgstr "" @@ -5672,13 +6016,13 @@ msgid "" "Enterprise Tunnel)" msgstr "" -#: transports/HTML5RDP/html5rdp.py:327 +#: transports/HTML5RDP/html5rdp.py:326 #: transports/HTML5RDS_enterprise/html5rds.py:296 #: transports/HTML5VNC/html5vnc.py:187 msgid "The server must be http or https" msgstr "" -#: transports/HTML5RDP/html5rdp.py:332 +#: transports/HTML5RDP/html5rdp.py:331 #: transports/HTML5RDS_enterprise/html5rds.py:301 msgid "" "Empty credentials (on Credentials tab) is only allowed with Security level " @@ -5717,7 +6061,7 @@ msgstr "" msgid "Port of the VNC server." msgstr "" -#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:205 +#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:224 #: transports/RDS_enterprise/rds_base.py:136 msgid "Color depth" msgstr "" @@ -5769,12 +6113,12 @@ msgid "If checked, the connection will be opened in full screen mode" msgstr "" #: transports/NICEDCV_enterprise/nicedcv_base.py:66 -#: transports/RDP/rdp_base.py:227 +#: transports/RDP/rdp_base.py:246 msgid "Multiple monitors" msgstr "" #: transports/NICEDCV_enterprise/nicedcv_base.py:69 -#: transports/RDP/rdp_base.py:230 +#: transports/RDP/rdp_base.py:249 msgid "" "If checked, all client monitors will be used for displaying (only works on " "windows clients)" @@ -5824,7 +6168,7 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcvtunnel.py:91 #: transports/NoMachine_enterprise/nomachine_tunneltransport.py:114 -#: transports/RDP/rdptunnel.py:135 transports/RDS_enterprise/rdstunnel.py:126 +#: transports/RDP/rdptunnel.py:136 transports/RDS_enterprise/rdstunnel.py:126 #: transports/SPICE/spice_tunnel.py:107 transports/X2GO/x2go_tunnel.py:116 msgid "Must use HOST:PORT in Tunnel Server Field" msgstr "" @@ -5955,97 +6299,105 @@ msgstr "" msgid "If checked, webcam will be redirected (ONLY Windows)." msgstr "" -#: transports/RDP/rdp_base.py:164 transports/RDS_enterprise/rds_base.py:128 +#: transports/RDP/rdp_base.py:164 +msgid "USB redirection" +msgstr "" + +#: transports/RDP/rdp_base.py:166 +msgid "USB redirection policy" +msgstr "" + +#: transports/RDP/rdp_base.py:183 transports/RDS_enterprise/rds_base.py:128 msgid "Credssp Support" msgstr "" -#: transports/RDP/rdp_base.py:166 transports/RDS_enterprise/rds_base.py:130 +#: transports/RDP/rdp_base.py:185 transports/RDS_enterprise/rds_base.py:130 msgid "If checked, will enable Credentials Provider Support)" msgstr "" -#: transports/RDP/rdp_base.py:181 +#: transports/RDP/rdp_base.py:200 msgid "Screen Size" msgstr "" -#: transports/RDP/rdp_base.py:183 +#: transports/RDP/rdp_base.py:202 msgid "Screen size for this transport" msgstr "" -#: transports/RDP/rdp_base.py:207 transports/RDS_enterprise/rds_base.py:138 +#: transports/RDP/rdp_base.py:226 transports/RDS_enterprise/rds_base.py:138 msgid "Color depth for this connection" msgstr "" -#: transports/RDP/rdp_base.py:219 +#: transports/RDP/rdp_base.py:238 msgid "Wallpaper/theme" msgstr "" -#: transports/RDP/rdp_base.py:244 +#: transports/RDP/rdp_base.py:263 msgid "If checked, fonts smoothing will be allowed" msgstr "" -#: transports/RDP/rdp_base.py:248 +#: transports/RDP/rdp_base.py:267 msgid "Connection Bar" msgstr "" -#: transports/RDP/rdp_base.py:250 +#: transports/RDP/rdp_base.py:269 msgid "If checked, connection bar will be shown (only on Windows clients)" msgstr "" -#: transports/RDP/rdp_base.py:256 transports/RDS_enterprise/rds_base.py:181 +#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:181 msgid "Multimedia sync" msgstr "" -#: transports/RDP/rdp_base.py:259 transports/RDS_enterprise/rds_base.py:184 +#: transports/RDP/rdp_base.py:278 transports/RDS_enterprise/rds_base.py:184 msgid "If checked. Linux client will use multimedia parameter for xfreerdp" msgstr "" -#: transports/RDP/rdp_base.py:264 transports/RDS_enterprise/rds_base.py:189 +#: transports/RDP/rdp_base.py:283 transports/RDS_enterprise/rds_base.py:189 msgid "Use Alsa" msgstr "" -#: transports/RDP/rdp_base.py:267 transports/RDS_enterprise/rds_base.py:192 +#: transports/RDP/rdp_base.py:286 transports/RDS_enterprise/rds_base.py:192 msgid "" "If checked, Linux client will try to use ALSA, otherwise Pulse will be used" msgstr "" -#: transports/RDP/rdp_base.py:272 transports/RDS_enterprise/rds_base.py:197 +#: transports/RDP/rdp_base.py:291 transports/RDS_enterprise/rds_base.py:197 msgid "Printer string" msgstr "" -#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:200 +#: transports/RDP/rdp_base.py:294 transports/RDS_enterprise/rds_base.py:200 msgid "If printer is checked, the printer string used with xfreerdp client" msgstr "" -#: transports/RDP/rdp_base.py:281 transports/RDS_enterprise/rds_base.py:206 +#: transports/RDP/rdp_base.py:300 transports/RDS_enterprise/rds_base.py:206 msgid "Smartcard string" msgstr "" -#: transports/RDP/rdp_base.py:284 transports/RDS_enterprise/rds_base.py:209 +#: transports/RDP/rdp_base.py:303 transports/RDS_enterprise/rds_base.py:209 msgid "If smartcard is checked, the smartcard string used with xfreerdp client" msgstr "" -#: transports/RDP/rdp_base.py:290 transports/RDP/rdp_base.py:310 +#: transports/RDP/rdp_base.py:309 transports/RDP/rdp_base.py:329 #: transports/RDS_enterprise/rds_base.py:215 msgid "Custom parameters" msgstr "" -#: transports/RDP/rdp_base.py:293 transports/RDS_enterprise/rds_base.py:218 +#: transports/RDP/rdp_base.py:312 transports/RDS_enterprise/rds_base.py:218 msgid "" "If not empty, extra parameter to include for Linux Client (for example /usb:" "id,dev:054c:0268, or aything compatible with your xfreerdp client)" msgstr "" -#: transports/RDP/rdp_base.py:300 +#: transports/RDP/rdp_base.py:319 msgid "Allow Microsoft Rdp Client" msgstr "" -#: transports/RDP/rdp_base.py:303 +#: transports/RDP/rdp_base.py:322 msgid "" "If checked, allows use of Microsoft Remote Desktop Client. PASSWORD WILL BE " "PROMPTED!" msgstr "" -#: transports/RDP/rdp_base.py:313 +#: transports/RDP/rdp_base.py:332 msgid "" "If not empty, extra parameter to include for Mac OS X Freerdp Client (for " "example /usb:id,dev:054c:0268, or aything compatible with your xfreerdp " @@ -6279,107 +6631,111 @@ msgstr "" msgid "Access tried from an unallowed source" msgstr "" -#: web/util/authentication.py:155 +#: web/util/authentication.py:158 msgid "Invalid data" msgstr "" -#: web/util/configjs.py:170 +#: web/util/configjs.py:163 msgid "Access limited by calendar" msgstr "" -#: web/util/configjs.py:226 +#: web/util/configjs.py:222 msgid "Windows client" msgstr "" -#: web/util/configjs.py:230 +#: web/util/configjs.py:226 msgid "Mac OS X client" msgstr "" -#: web/util/configjs.py:233 +#: web/util/configjs.py:229 msgid "Debian based Linux client" msgstr "" -#: web/util/configjs.py:235 web/util/configjs.py:243 web/util/configjs.py:263 +#: web/util/configjs.py:231 web/util/configjs.py:239 web/util/configjs.py:259 msgid "(requires Python-3.6 or newer)" msgstr "" -#: web/util/configjs.py:241 +#: web/util/configjs.py:237 msgid "RPM based Linux client (Fedora, Suse, ...)" msgstr "" -#: web/util/configjs.py:249 +#: web/util/configjs.py:245 msgid "Binary appimage X86_64 Linux client" msgstr "" -#: web/util/configjs.py:255 +#: web/util/configjs.py:251 msgid "Binary appimage Raspberry Linux client" msgstr "" -#: web/util/configjs.py:261 +#: web/util/configjs.py:257 msgid "Generic .tar.gz Linux client" msgstr "" -#: web/util/errors.py:76 +#: web/util/errors.py:78 msgid "Unknown error" msgstr "" -#: web/util/errors.py:83 +#: web/util/errors.py:85 msgid "Maximum services limit reached. Please, contact administrator" msgstr "" -#: web/util/errors.py:84 +#: web/util/errors.py:86 msgid "You need to enable cookies to let this application work" msgstr "" -#: web/util/errors.py:86 +#: web/util/errors.py:88 msgid "Authenticator not found" msgstr "" -#: web/util/errors.py:87 +#: web/util/errors.py:89 msgid "Invalid authenticator" msgstr "" -#: web/util/errors.py:88 +#: web/util/errors.py:90 msgid "Invalid request received" msgstr "" -#: web/util/errors.py:90 +#: web/util/errors.py:92 msgid "" "Your browser is not supported. Please, upgrade it to a modern HTML5 browser " "like Firefox or Chrome" msgstr "" -#: web/util/errors.py:92 +#: web/util/errors.py:94 msgid "The requested service is in maintenance mode" msgstr "" -#: web/util/errors.py:93 +#: web/util/errors.py:95 msgid "" "The service is not ready.\n" "Please, try again in a few moments." msgstr "" -#: web/util/errors.py:94 +#: web/util/errors.py:96 msgid "Preparing service" msgstr "" -#: web/util/errors.py:95 +#: web/util/errors.py:97 msgid "Service access denied by calendars" msgstr "" -#: web/util/errors.py:96 +#: web/util/errors.py:98 msgid "Page not found" msgstr "" -#: web/util/errors.py:97 +#: web/util/errors.py:99 msgid "Unexpected error" msgstr "" -#: web/util/errors.py:98 +#: web/util/errors.py:100 msgid "" "Reloading this page is not supported. Please, reopen service from origin." msgstr "" +#: web/util/errors.py:101 +msgid "Invalid Multi-Factor Authentication code" +msgstr "" + #: web/util/services.py:319 msgid "" "This service is about to be replaced by a new version. Please, close the " @@ -6396,6 +6752,14 @@ msgid "" "complete it.)" msgstr "" -#: web/views/auth.py:177 +#: web/views/auth.py:189 msgid "Authenticator does not provide information" msgstr "" + +#: web/views/modern.py:269 +msgid "{} days" +msgstr "" + +#: web/views/modern.py:271 +msgid "{} hours" +msgstr "" diff --git a/server/src/uds/locale/en/LC_MESSAGES/djangojs.po b/server/src/uds/locale/en/LC_MESSAGES/djangojs.po index e97808fa..4ab8d40f 100644 --- a/server/src/uds/locale/en/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/en/LC_MESSAGES/djangojs.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -28,14 +28,14 @@ msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:11 #: static/admin/translations-fakejs.js:29 -#: static/admin/translations-fakejs.js:179 -#: static/admin/translations-fakejs.js:191 -#: static/admin/translations-fakejs.js:193 -#: static/admin/translations-fakejs.js:195 -#: static/admin/translations-fakejs.js:197 -#: static/admin/translations-fakejs.js:254 -#: static/admin/translations-fakejs.js:256 -#: static/admin/translations-fakejs.js:258 static/modern/main-es5.js:1 +#: static/admin/translations-fakejs.js:141 +#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:216 +#: static/admin/translations-fakejs.js:218 +#: static/admin/translations-fakejs.js:220 static/modern/main-es5.js:1 #: static/modern/translations-fakejs.js:14 msgid "Error" msgstr "" @@ -62,12 +62,12 @@ msgstr "" #: static/admin/translations-fakejs.js:38 #: static/admin/translations-fakejs.js:40 #: static/admin/translations-fakejs.js:43 -#: static/admin/translations-fakejs.js:134 -#: static/admin/translations-fakejs.js:216 -#: static/admin/translations-fakejs.js:221 -#: static/admin/translations-fakejs.js:253 -#: static/admin/translations-fakejs.js:261 -#: static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:96 +#: static/admin/translations-fakejs.js:178 +#: static/admin/translations-fakejs.js:183 +#: static/admin/translations-fakejs.js:215 +#: static/admin/translations-fakejs.js:223 +#: static/admin/translations-fakejs.js:228 msgid "dismiss" msgstr "" @@ -84,7 +84,7 @@ msgid "Test passed successfully" msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:37 -#: static/admin/translations-fakejs.js:260 +#: static/admin/translations-fakejs.js:222 msgid "Successfully saved" msgstr "" @@ -140,58 +140,58 @@ msgstr "" msgid "Go to" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:275 msgid "yes" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:276 msgid "no" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:269 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 msgid "Error saving: " msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:270 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 msgid "Error saving element" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:271 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:274 msgid "Error handling your request" msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:56 -#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:115 msgid "Sunday" msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:57 -#: static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:116 msgid "Monday" msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:58 -#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:117 msgid "Tuesday" msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:59 -#: static/admin/translations-fakejs.js:156 +#: static/admin/translations-fakejs.js:118 msgid "Wednesday" msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:60 -#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:119 msgid "Thursday" msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:61 -#: static/admin/translations-fakejs.js:158 +#: static/admin/translations-fakejs.js:120 msgid "Friday" msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:62 -#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:121 msgid "Saturday" msgstr "" @@ -263,20 +263,20 @@ msgstr "" msgid "#RESTRAINED_NUMBER# restrained services!" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 -#: static/admin/translations-fakejs.js:249 -#: static/admin/translations-fakejs.js:402 -#: static/admin/translations-fakejs.js:454 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:211 +#: static/admin/translations-fakejs.js:265 +#: static/admin/translations-fakejs.js:366 +#: static/admin/translations-fakejs.js:418 msgid "Assigned services" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 msgid "Services in use" msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:21 -#: static/admin/translations-fakejs.js:292 -#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:303 #: static/modern/translations-fakejs.js:30 msgid "Filter" msgstr "" @@ -294,25 +294,25 @@ msgid "Full Access" msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:15 -#: static/admin/translations-fakejs.js:362 -#: static/admin/translations-fakejs.js:409 -#: static/admin/translations-fakejs.js:414 +#: static/admin/translations-fakejs.js:373 +#: static/admin/translations-fakejs.js:378 +#: static/admin/translations-fakejs.js:489 msgid "User" msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:16 -#: static/admin/translations-fakejs.js:83 -#: static/admin/translations-fakejs.js:93 -#: static/admin/translations-fakejs.js:427 -#: static/admin/translations-fakejs.js:448 +#: static/admin/translations-fakejs.js:243 +#: static/admin/translations-fakejs.js:253 +#: static/admin/translations-fakejs.js:391 +#: static/admin/translations-fakejs.js:412 msgid "Group" msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:17 -#: static/admin/translations-fakejs.js:408 -#: static/admin/translations-fakejs.js:413 -#: static/admin/translations-fakejs.js:426 -#: static/admin/translations-fakejs.js:447 +#: static/admin/translations-fakejs.js:372 +#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:390 +#: static/admin/translations-fakejs.js:411 #: static/modern/translations-fakejs.js:72 msgid "Authenticator" msgstr "" @@ -329,89 +329,89 @@ msgstr "" msgid "Confirm revokation of permission" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:238 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 msgid "Maintenance" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 msgid "Exit maintenance mode" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 msgid "Enter maintenance mode" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 msgid "New provider" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 msgid "Edit provider" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:243 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 msgid "Delete provider" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 msgid "Exit maintenance mode?" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 msgid "Enter maintenance mode?" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 msgid "Maintenance mode for" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 -#: static/admin/translations-fakejs.js:247 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:209 +#: static/admin/translations-fakejs.js:232 msgid "In Maintenance" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 -#: static/admin/translations-fakejs.js:248 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/translations-fakejs.js:233 msgid "Active" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 -#: static/admin/translations-fakejs.js:95 -#: static/admin/translations-fakejs.js:229 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:191 +#: static/admin/translations-fakejs.js:236 +#: static/admin/translations-fakejs.js:255 msgid "Pool" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 -#: static/admin/translations-fakejs.js:96 -#: static/admin/translations-fakejs.js:230 -#: static/admin/translations-fakejs.js:343 -#: static/admin/translations-fakejs.js:355 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 +#: static/admin/translations-fakejs.js:237 +#: static/admin/translations-fakejs.js:256 +#: static/admin/translations-fakejs.js:470 +#: static/admin/translations-fakejs.js:482 msgid "State" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 -#: static/admin/translations-fakejs.js:97 -#: static/admin/translations-fakejs.js:231 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:193 +#: static/admin/translations-fakejs.js:238 +#: static/admin/translations-fakejs.js:257 msgid "User Services" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 -#: static/admin/translations-fakejs.js:232 -#: static/admin/translations-fakejs.js:321 -#: static/admin/translations-fakejs.js:401 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:194 +#: static/admin/translations-fakejs.js:248 +#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:365 msgid "Service pools" msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:3 #: static/admin/translations-fakejs.js:7 -#: static/admin/translations-fakejs.js:308 +#: static/admin/translations-fakejs.js:311 #: static/modern/translations-fakejs.js:44 msgid "Yes" msgstr "" #: static/admin/main.js:1 static/admin/translations-fakejs.js:4 #: static/admin/translations-fakejs.js:8 -#: static/admin/translations-fakejs.js:309 +#: static/admin/translations-fakejs.js:312 #: static/modern/translations-fakejs.js:45 msgid "No" msgstr "" @@ -424,592 +424,595 @@ msgstr "" msgid "Selected items :" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 -#: static/admin/translations-fakejs.js:233 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:195 +#: static/admin/translations-fakejs.js:231 #: static/modern/translations-fakejs.js:35 msgid "Information" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 msgid "New service" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:197 msgid "Edit service" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:236 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 msgid "Delete service" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:237 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 msgid "Delete user service" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:269 msgid "New Authenticator" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:267 +#: static/admin/translations-fakejs.js:270 msgid "Edit Authenticator" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/translations-fakejs.js:271 msgid "Delete Authenticator" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 msgid "Any" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 msgid "All" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 -#: static/admin/translations-fakejs.js:94 -#: static/admin/translations-fakejs.js:342 -#: static/admin/translations-fakejs.js:354 -#: static/admin/translations-fakejs.js:379 -#: static/admin/translations-fakejs.js:435 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/translations-fakejs.js:254 +#: static/admin/translations-fakejs.js:343 +#: static/admin/translations-fakejs.js:399 +#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:481 msgid "Comments" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:258 msgid "Unique ID" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 msgid "Friendly Name" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:260 msgid "In Use" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:261 msgid "IP" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 msgid "Services Pool" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 -#: static/admin/translations-fakejs.js:103 -#: static/admin/translations-fakejs.js:287 -#: static/admin/translations-fakejs.js:323 -#: static/admin/translations-fakejs.js:337 -#: static/admin/translations-fakejs.js:363 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/translations-fakejs.js:263 +#: static/admin/translations-fakejs.js:290 +#: static/admin/translations-fakejs.js:328 #: static/admin/translations-fakejs.js:367 -#: static/admin/translations-fakejs.js:373 -#: static/admin/translations-fakejs.js:403 -#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:494 msgid "Groups" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 -#: static/admin/translations-fakejs.js:335 -#: static/admin/translations-fakejs.js:368 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/translations-fakejs.js:462 +#: static/admin/translations-fakejs.js:495 msgid "Services Pools" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 -#: static/admin/translations-fakejs.js:378 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/translations-fakejs.js:342 msgid "Name" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 msgid "Real Name" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 msgid "state" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 msgid "Last access" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 -#: static/admin/translations-fakejs.js:286 -#: static/admin/translations-fakejs.js:336 -#: static/admin/translations-fakejs.js:372 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:249 +#: static/admin/translations-fakejs.js:289 +#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:463 msgid "Users" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 -#: static/admin/translations-fakejs.js:344 -#: static/admin/translations-fakejs.js:356 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:483 msgid "Enabled" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 -#: static/admin/translations-fakejs.js:345 -#: static/admin/translations-fakejs.js:357 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:484 msgid "Disabled" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 -#: static/admin/translations-fakejs.js:358 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:247 +#: static/admin/translations-fakejs.js:485 msgid "Blocked" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 msgid "Delete user" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 msgid "Delete group" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 msgid "New OS Manager" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 msgid "Edit OS Manager" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 msgid "Delete OS Manager" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:120 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 msgid "New Transport" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:121 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:83 msgid "Edit Transport" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 msgid "Delete Transport" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 msgid "New Network" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:115 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 msgid "Edit Network" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:116 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 msgid "Delete Network" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:117 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 msgid "New Proxy" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:118 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 msgid "Edit Proxy" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:119 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 msgid "Delete Proxy" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:223 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 msgid "(This service does not requires an OS Manager)" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 msgid "New service Pool" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 msgid "Publish on creation" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 msgid "If selected, will initiate the publication inmediatly after creation" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 msgid "Edit Service Pool" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:228 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 msgid "Delete service pool" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 -#: static/admin/translations-fakejs.js:194 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:156 msgid "Please, select a valid user" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:158 msgid "Please, select a valid group" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 msgid "Please, select a valid transport" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 msgid "Assigned" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 msgid "Cached" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 msgid "In use" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 -#: static/admin/translations-fakejs.js:290 -#: static/admin/translations-fakejs.js:374 -#: static/admin/translations-fakejs.js:405 -#: static/admin/translations-fakejs.js:462 -#: static/admin/translations-fakejs.js:465 -#: static/admin/translations-fakejs.js:470 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/translations-fakejs.js:293 +#: static/admin/translations-fakejs.js:369 +#: static/admin/translations-fakejs.js:426 +#: static/admin/translations-fakejs.js:429 +#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:460 msgid "Logs" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 msgid "VNC" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 msgid "Launch now" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 msgid "Change owner" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 msgid "Assign service" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 -#: static/admin/translations-fakejs.js:277 -#: static/admin/translations-fakejs.js:283 -#: static/admin/translations-fakejs.js:349 -#: static/admin/translations-fakejs.js:364 -#: static/admin/translations-fakejs.js:390 -#: static/admin/translations-fakejs.js:398 -#: static/admin/translations-fakejs.js:410 -#: static/admin/translations-fakejs.js:415 -#: static/admin/translations-fakejs.js:423 -#: static/admin/translations-fakejs.js:428 -#: static/admin/translations-fakejs.js:432 -#: static/admin/translations-fakejs.js:436 -#: static/admin/translations-fakejs.js:449 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/translations-fakejs.js:280 +#: static/admin/translations-fakejs.js:286 +#: static/admin/translations-fakejs.js:354 +#: static/admin/translations-fakejs.js:362 +#: static/admin/translations-fakejs.js:374 +#: static/admin/translations-fakejs.js:379 +#: static/admin/translations-fakejs.js:387 +#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:400 +#: static/admin/translations-fakejs.js:413 +#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:476 #: static/admin/translations-fakejs.js:491 msgid "Cancel" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 msgid "Changelog" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 -#: static/admin/translations-fakejs.js:209 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/translations-fakejs.js:171 msgid "Delete assigned service" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 msgid "Delete cached service" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:183 -#: static/admin/translations-fakejs.js:211 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/translations-fakejs.js:173 msgid "Delete assigned group" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 msgid "Delete assigned transport" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 msgid "Publication" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 msgid "Cancel publication?" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:215 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 msgid "Publication canceled" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:179 msgid "Delete scheduled action" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:218 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 msgid "Execute scheduled action" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 msgid "Execute scheduled action right now?" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:220 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 msgid "Scheduled action executed" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:184 -#: static/admin/translations-fakejs.js:222 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/translations-fakejs.js:184 msgid "Delete calendar access rule" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 msgid "New meta pool" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 msgid "Edit meta pool" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 msgid "Delete meta pool" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 msgid "Please, select a valid service pool" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 msgid "Remove member pool" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 msgid "New pool group" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 msgid "Edit pool group" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 msgid "Delete pool group" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 msgid "New calendar" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 msgid "Edit calendar" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:178 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 msgid "Delete calendar" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 msgid "day" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 msgid "days" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 msgid "Daily" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 msgid "week" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 msgid "weeks" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:141 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:103 msgid "Weekly" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 msgid "month" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 msgid "months" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 msgid "Monthly" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 msgid "year" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 msgid "years" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 msgid "Yearly" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 -#: static/admin/translations-fakejs.js:387 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/translations-fakejs.js:351 msgid "Weekdays" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 msgid "Minutes" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 msgid "Hours" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 msgid "Days" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 msgid "Weeks" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 msgid "(no days)" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 msgid "Forever" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 msgid "Start date/time" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 msgid "End date" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 msgid "Interval" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 msgid "Week days" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 msgid "Invalid or incomplete rule. Please, fix field $FIELD" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 msgid "This rule will be valid every" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 msgid "of any week" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 msgid "from" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 msgid "until" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:171 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 msgid "onwards" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:134 msgid "starting at" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:173 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 msgid "and every event will be active for" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 msgid "with no duration" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 msgid "Delete calendar rule" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 msgid "Set time mark" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 msgid "New account" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 msgid "Edit account" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 msgid "Delete account" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:93 msgid "Time mark" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:94 msgid "Set time mark for $NAME to current date/time?" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:95 msgid "Time mark stablished" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:97 msgid "No time mark" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 msgid "Delete account usage" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:255 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 msgid "Image is too big (max. upload size is 256Kb)" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:257 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 msgid "Invalid image type (only supports JPEG, PNG and GIF" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:221 msgid "Please, provide a name and a image" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 msgid "Delete image" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:263 -#: static/admin/translations-fakejs.js:267 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/translations-fakejs.js:229 msgid "Generate report" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 msgid "Generating report..." msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:265 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 msgid "Report finished" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 msgid "Configuration saved" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 msgid "Delete actor token - USE WITH EXTREME CAUTION!!!" msgstr "" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:230 msgid "Delete tunnel token - USE WITH EXTREME CAUTION!!!" msgstr "" @@ -1025,507 +1028,515 @@ msgstr "" msgid ", (%i more items)" msgstr "" -#: static/admin/translations-fakejs.js:275 +#: static/admin/translations-fakejs.js:278 msgid "Remove all" msgstr "" -#: static/admin/translations-fakejs.js:276 +#: static/admin/translations-fakejs.js:279 msgid "Add" msgstr "" -#: static/admin/translations-fakejs.js:278 -#: static/admin/translations-fakejs.js:284 -#: static/admin/translations-fakejs.js:289 -#: static/admin/translations-fakejs.js:338 -#: static/admin/translations-fakejs.js:350 -#: static/admin/translations-fakejs.js:365 -#: static/admin/translations-fakejs.js:370 -#: static/admin/translations-fakejs.js:391 -#: static/admin/translations-fakejs.js:399 -#: static/admin/translations-fakejs.js:411 +#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:287 +#: static/admin/translations-fakejs.js:292 +#: static/admin/translations-fakejs.js:355 +#: static/admin/translations-fakejs.js:363 +#: static/admin/translations-fakejs.js:375 +#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:401 +#: static/admin/translations-fakejs.js:403 +#: static/admin/translations-fakejs.js:414 #: static/admin/translations-fakejs.js:416 -#: static/admin/translations-fakejs.js:424 -#: static/admin/translations-fakejs.js:429 -#: static/admin/translations-fakejs.js:433 -#: static/admin/translations-fakejs.js:437 -#: static/admin/translations-fakejs.js:439 -#: static/admin/translations-fakejs.js:450 -#: static/admin/translations-fakejs.js:452 -#: static/admin/translations-fakejs.js:466 +#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:465 +#: static/admin/translations-fakejs.js:477 #: static/admin/translations-fakejs.js:492 +#: static/admin/translations-fakejs.js:497 msgid "Ok" msgstr "" -#: static/admin/translations-fakejs.js:279 +#: static/admin/translations-fakejs.js:282 msgid "Discard & close" msgstr "" -#: static/admin/translations-fakejs.js:280 -#: static/admin/translations-fakejs.js:484 +#: static/admin/translations-fakejs.js:283 +#: static/admin/translations-fakejs.js:448 msgid "Save" msgstr "" -#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:284 msgid "New user permission for" msgstr "" -#: static/admin/translations-fakejs.js:282 +#: static/admin/translations-fakejs.js:285 msgid "New group permission for" msgstr "" -#: static/admin/translations-fakejs.js:285 +#: static/admin/translations-fakejs.js:288 msgid "Permissions for" msgstr "" -#: static/admin/translations-fakejs.js:288 +#: static/admin/translations-fakejs.js:291 msgid "New permission..." msgstr "" -#: static/admin/translations-fakejs.js:291 -#: static/admin/translations-fakejs.js:298 +#: static/admin/translations-fakejs.js:294 +#: static/admin/translations-fakejs.js:301 msgid "Export" msgstr "" -#: static/admin/translations-fakejs.js:293 -#: static/admin/translations-fakejs.js:294 -#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:296 +#: static/admin/translations-fakejs.js:297 +#: static/admin/translations-fakejs.js:298 msgid "New" msgstr "" -#: static/admin/translations-fakejs.js:296 -#: static/admin/translations-fakejs.js:304 +#: static/admin/translations-fakejs.js:299 +#: static/admin/translations-fakejs.js:307 msgid "Edit" msgstr "" -#: static/admin/translations-fakejs.js:297 -#: static/admin/translations-fakejs.js:305 +#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:308 msgid "Permissions" msgstr "" -#: static/admin/translations-fakejs.js:299 -#: static/admin/translations-fakejs.js:306 +#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:309 msgid "Delete" msgstr "" -#: static/admin/translations-fakejs.js:301 +#: static/admin/translations-fakejs.js:304 msgid "Selected items" msgstr "" -#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:305 msgid "Copy" msgstr "" -#: static/admin/translations-fakejs.js:303 +#: static/admin/translations-fakejs.js:306 msgid "Detail" msgstr "" -#: static/admin/translations-fakejs.js:307 +#: static/admin/translations-fakejs.js:310 #: static/modern/translations-fakejs.js:43 msgid "Close" msgstr "" -#: static/admin/translations-fakejs.js:310 +#: static/admin/translations-fakejs.js:313 msgid "User mode" msgstr "" -#: static/admin/translations-fakejs.js:311 +#: static/admin/translations-fakejs.js:314 #: static/modern/translations-fakejs.js:48 msgid "Logout" msgstr "" -#: static/admin/translations-fakejs.js:312 -#: static/admin/translations-fakejs.js:371 -#: static/admin/translations-fakejs.js:389 -#: static/admin/translations-fakejs.js:400 -#: static/admin/translations-fakejs.js:453 -#: static/admin/translations-fakejs.js:467 +#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:353 +#: static/admin/translations-fakejs.js:364 +#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:431 +#: static/admin/translations-fakejs.js:457 msgid "Summary" msgstr "" -#: static/admin/translations-fakejs.js:313 -#: static/admin/translations-fakejs.js:468 +#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:432 msgid "Services" msgstr "" -#: static/admin/translations-fakejs.js:314 +#: static/admin/translations-fakejs.js:317 +msgid "Authentication" +msgstr "" + +#: static/admin/translations-fakejs.js:318 msgid "Authenticators" msgstr "" -#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:319 +msgid "Multi Factor" +msgstr "" + +#: static/admin/translations-fakejs.js:320 msgid "Os Managers" msgstr "" -#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:321 msgid "Connectivity" msgstr "" -#: static/admin/translations-fakejs.js:317 -#: static/admin/translations-fakejs.js:457 +#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:421 #: static/modern/translations-fakejs.js:39 msgid "Transports" msgstr "" -#: static/admin/translations-fakejs.js:318 +#: static/admin/translations-fakejs.js:323 #: static/modern/translations-fakejs.js:41 msgid "Networks" msgstr "" -#: static/admin/translations-fakejs.js:319 +#: static/admin/translations-fakejs.js:324 msgid "Proxies" msgstr "" -#: static/admin/translations-fakejs.js:320 +#: static/admin/translations-fakejs.js:325 msgid "Pools" msgstr "" -#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:327 msgid "Meta pools" msgstr "" -#: static/admin/translations-fakejs.js:324 +#: static/admin/translations-fakejs.js:329 msgid "Calendars" msgstr "" -#: static/admin/translations-fakejs.js:325 +#: static/admin/translations-fakejs.js:330 msgid "Accounts" msgstr "" -#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:331 msgid "Tools" msgstr "" -#: static/admin/translations-fakejs.js:327 +#: static/admin/translations-fakejs.js:332 msgid "Gallery" msgstr "" -#: static/admin/translations-fakejs.js:328 +#: static/admin/translations-fakejs.js:333 msgid "Reports" msgstr "" -#: static/admin/translations-fakejs.js:329 +#: static/admin/translations-fakejs.js:334 msgid "Tokens" msgstr "" -#: static/admin/translations-fakejs.js:330 +#: static/admin/translations-fakejs.js:335 msgid "Actor" msgstr "" -#: static/admin/translations-fakejs.js:331 +#: static/admin/translations-fakejs.js:336 msgid "Tunnel" msgstr "" -#: static/admin/translations-fakejs.js:332 +#: static/admin/translations-fakejs.js:337 msgid "Configuration" msgstr "" -#: static/admin/translations-fakejs.js:333 +#: static/admin/translations-fakejs.js:338 msgid "Flush Cache" msgstr "" -#: static/admin/translations-fakejs.js:334 -#: static/admin/translations-fakejs.js:366 -#: static/admin/translations-fakejs.js:463 -msgid "Information for" -msgstr "" - #: static/admin/translations-fakejs.js:339 -msgid "Edit group" -msgstr "" - -#: static/admin/translations-fakejs.js:340 -msgid "New group" -msgstr "" - -#: static/admin/translations-fakejs.js:341 -msgid "Meta group name" -msgstr "" - -#: static/admin/translations-fakejs.js:346 -msgid "Service Pools" -msgstr "" - -#: static/admin/translations-fakejs.js:347 -msgid "Match mode" -msgstr "" - -#: static/admin/translations-fakejs.js:348 -msgid "Selected Groups" -msgstr "" - -#: static/admin/translations-fakejs.js:351 -msgid "Edit user" -msgstr "" - -#: static/admin/translations-fakejs.js:352 -msgid "New user" -msgstr "" - -#: static/admin/translations-fakejs.js:353 -msgid "Real name" -msgstr "" - -#: static/admin/translations-fakejs.js:359 -msgid "Role" -msgstr "" - -#: static/admin/translations-fakejs.js:360 -msgid "Admin" -msgstr "" - -#: static/admin/translations-fakejs.js:361 -msgid "Staff member" -msgstr "" - -#: static/admin/translations-fakejs.js:369 -msgid "Assigned Services" -msgstr "" - -#: static/admin/translations-fakejs.js:375 msgid "Account usage" msgstr "" -#: static/admin/translations-fakejs.js:376 +#: static/admin/translations-fakejs.js:340 msgid "Edit rule" msgstr "" -#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:341 msgid "New rule" msgstr "" -#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:344 msgid "Event" msgstr "" -#: static/admin/translations-fakejs.js:381 +#: static/admin/translations-fakejs.js:345 msgid "Start time" msgstr "" -#: static/admin/translations-fakejs.js:382 +#: static/admin/translations-fakejs.js:346 msgid "Duration" msgstr "" -#: static/admin/translations-fakejs.js:383 +#: static/admin/translations-fakejs.js:347 msgid "Duration units" msgstr "" -#: static/admin/translations-fakejs.js:384 +#: static/admin/translations-fakejs.js:348 msgid "Start date" msgstr "" -#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:349 msgid "Repeat until date" msgstr "" -#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:350 msgid "Frequency" msgstr "" -#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:352 msgid "Repeat every" msgstr "" -#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:356 msgid "Rules" msgstr "" -#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:357 msgid "New member pool" msgstr "" -#: static/admin/translations-fakejs.js:394 +#: static/admin/translations-fakejs.js:358 msgid "Edit member pool" msgstr "" -#: static/admin/translations-fakejs.js:395 -#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:359 +#: static/admin/translations-fakejs.js:384 msgid "Priority" msgstr "" -#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:360 msgid "Service pool" msgstr "" -#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:361 msgid "Enabled?" msgstr "" -#: static/admin/translations-fakejs.js:404 -#: static/admin/translations-fakejs.js:460 +#: static/admin/translations-fakejs.js:368 +#: static/admin/translations-fakejs.js:424 msgid "Access calendars" msgstr "" -#: static/admin/translations-fakejs.js:406 +#: static/admin/translations-fakejs.js:370 msgid "Assign service to user manually" msgstr "" -#: static/admin/translations-fakejs.js:407 +#: static/admin/translations-fakejs.js:371 msgid "Service" msgstr "" -#: static/admin/translations-fakejs.js:412 +#: static/admin/translations-fakejs.js:376 msgid "Change owner of assigned service" msgstr "" -#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:381 msgid "New access rule for" msgstr "" -#: static/admin/translations-fakejs.js:418 +#: static/admin/translations-fakejs.js:382 msgid "Edit access rule for" msgstr "" -#: static/admin/translations-fakejs.js:419 +#: static/admin/translations-fakejs.js:383 msgid "Default fallback access for" msgstr "" -#: static/admin/translations-fakejs.js:421 -#: static/admin/translations-fakejs.js:442 +#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:406 msgid "Calendar" msgstr "" -#: static/admin/translations-fakejs.js:422 -#: static/admin/translations-fakejs.js:445 +#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:409 msgid "Action" msgstr "" -#: static/admin/translations-fakejs.js:425 +#: static/admin/translations-fakejs.js:389 msgid "New group for" msgstr "" -#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:394 msgid "New transport for" msgstr "" -#: static/admin/translations-fakejs.js:431 -#: static/admin/translations-fakejs.js:446 +#: static/admin/translations-fakejs.js:395 +#: static/admin/translations-fakejs.js:410 msgid "Transport" msgstr "" -#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:398 msgid "New publication for" msgstr "" -#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:402 msgid "Changelog of" msgstr "" -#: static/admin/translations-fakejs.js:440 +#: static/admin/translations-fakejs.js:404 msgid "Edit action for" msgstr "" -#: static/admin/translations-fakejs.js:441 +#: static/admin/translations-fakejs.js:405 msgid "New action for" msgstr "" -#: static/admin/translations-fakejs.js:443 +#: static/admin/translations-fakejs.js:407 msgid "Events offset (minutes)" msgstr "" -#: static/admin/translations-fakejs.js:444 +#: static/admin/translations-fakejs.js:408 msgid "At the beginning of the interval?" msgstr "" -#: static/admin/translations-fakejs.js:451 +#: static/admin/translations-fakejs.js:415 msgid "Logs of" msgstr "" -#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:419 msgid "Cache" msgstr "" -#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:422 msgid "Publications" msgstr "" -#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:423 msgid "Scheduled actions" msgstr "" -#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:425 msgid "Charts" msgstr "" -#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:427 +#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:493 +msgid "Information for" +msgstr "" + +#: static/admin/translations-fakejs.js:428 msgid "Services pools" msgstr "" -#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:433 msgid "Usage" msgstr "" -#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:435 #: static/modern/translations-fakejs.js:46 msgid "Dashboard" msgstr "" -#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:436 msgid "View authenticators" msgstr "" -#: static/admin/translations-fakejs.js:473 -#: static/admin/translations-fakejs.js:474 -#: static/admin/translations-fakejs.js:475 +#: static/admin/translations-fakejs.js:437 +#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:439 msgid "View service pools" msgstr "" -#: static/admin/translations-fakejs.js:476 +#: static/admin/translations-fakejs.js:440 msgid "Assigned services chart" msgstr "" -#: static/admin/translations-fakejs.js:477 +#: static/admin/translations-fakejs.js:441 msgid "In use services chart" msgstr "" -#: static/admin/translations-fakejs.js:478 +#: static/admin/translations-fakejs.js:442 msgid "UDS Administration" msgstr "" -#: static/admin/translations-fakejs.js:479 +#: static/admin/translations-fakejs.js:443 msgid "You are accessing UDS Administration as staff member." msgstr "" -#: static/admin/translations-fakejs.js:480 +#: static/admin/translations-fakejs.js:444 msgid "This means that you have restricted access to elements." msgstr "" -#: static/admin/translations-fakejs.js:481 +#: static/admin/translations-fakejs.js:445 msgid "" "In order to increase your access privileges, please contact your local UDS " "administrator." msgstr "" -#: static/admin/translations-fakejs.js:482 +#: static/admin/translations-fakejs.js:446 msgid "Thank you." msgstr "" -#: static/admin/translations-fakejs.js:483 +#: static/admin/translations-fakejs.js:447 msgid "UDS Configuration" msgstr "" -#: static/admin/translations-fakejs.js:485 +#: static/admin/translations-fakejs.js:449 msgid "New image for" msgstr "" -#: static/admin/translations-fakejs.js:486 +#: static/admin/translations-fakejs.js:450 msgid "Edit for" msgstr "" -#: static/admin/translations-fakejs.js:487 +#: static/admin/translations-fakejs.js:451 msgid "Image name" msgstr "" -#: static/admin/translations-fakejs.js:488 +#: static/admin/translations-fakejs.js:452 msgid "Image (click to change)" msgstr "" -#: static/admin/translations-fakejs.js:489 +#: static/admin/translations-fakejs.js:453 msgid "For optimal results, use " msgstr "" -#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:454 msgid "The image will be resized on upload to" msgstr "" +#: static/admin/translations-fakejs.js:466 +msgid "Edit group" +msgstr "" + +#: static/admin/translations-fakejs.js:467 +msgid "New group" +msgstr "" + +#: static/admin/translations-fakejs.js:468 +msgid "Meta group name" +msgstr "" + +#: static/admin/translations-fakejs.js:473 +msgid "Service Pools" +msgstr "" + +#: static/admin/translations-fakejs.js:474 +msgid "Match mode" +msgstr "" + +#: static/admin/translations-fakejs.js:475 +msgid "Selected Groups" +msgstr "" + +#: static/admin/translations-fakejs.js:478 +msgid "Edit user" +msgstr "" + +#: static/admin/translations-fakejs.js:479 +msgid "New user" +msgstr "" + +#: static/admin/translations-fakejs.js:480 +msgid "Real name" +msgstr "" + +#: static/admin/translations-fakejs.js:486 +msgid "Role" +msgstr "" + +#: static/admin/translations-fakejs.js:487 +msgid "Admin" +msgstr "" + +#: static/admin/translations-fakejs.js:488 +msgid "Staff member" +msgstr "" + +#: static/admin/translations-fakejs.js:496 +msgid "Assigned Services" +msgstr "" + #: static/modern/main-es5.js:1 msgid "Error communicating with your service. Please, retry again." msgstr "" @@ -1584,7 +1595,8 @@ msgstr "" msgid "Launching service" msgstr "" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 +#: static/modern/translations-fakejs.js:25 msgid "Errors found" msgstr "" @@ -1624,18 +1636,14 @@ msgstr "" msgid "Are you sure?" msgstr "" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 msgid "Warning" msgstr "" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:25 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 msgid "Service is in maintenance and cannot be executed" msgstr "" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 -msgid "Invalid error string" -msgstr "" - #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:26 msgid "We use cookies to track usage and preferences" msgstr "" @@ -1776,3 +1784,15 @@ msgstr "" #: static/modern/translations-fakejs.js:73 msgid "Login" msgstr "" + +#: static/modern/translations-fakejs.js:74 +msgid "Login Verification" +msgstr "" + +#: static/modern/translations-fakejs.js:75 +msgid "Remember Me" +msgstr "" + +#: static/modern/translations-fakejs.js:76 +msgid "Submit" +msgstr "" diff --git a/server/src/uds/locale/es/LC_MESSAGES/django.po b/server/src/uds/locale/es/LC_MESSAGES/django.po index 1188c7d8..4509f390 100644 --- a/server/src/uds/locale/es/LC_MESSAGES/django.po +++ b/server/src/uds/locale/es/LC_MESSAGES/django.po @@ -12,8 +12,8 @@ # blafuente , 2014-2016 # Javier Gomez , 2021 # Javier , 2014 -# Javier Gomez , 2021 -# Javier , 2014,2018,2020 +# Javier Gomez , 2021-2022 +# Javier , 2014,2018,2020,2022 # Javier , 2014 # Luis Fagundez , 2018 # Víctor Alonso , 2020 @@ -22,41 +22,42 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-14 11:34+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:14+0000\n" +"Last-Translator: Víctor Alonso , 2020\n" "Language-Team: Spanish (http://www.transifex.com/openuds/openuds/language/" "es/)\n" "Language: es\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" +"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? " +"1 : 2;\n" #: REST/methods/accounts.py:61 msgid "Accounts" msgstr "Cuentas" -#: REST/methods/accounts.py:63 REST/methods/authenticators.py:66 +#: REST/methods/accounts.py:63 REST/methods/authenticators.py:67 #: REST/methods/calendars.py:63 REST/methods/images.py:67 -#: REST/methods/meta_pools.py:81 REST/methods/networks.py:63 -#: REST/methods/osmanagers.py:55 REST/methods/providers.py:71 -#: REST/methods/proxies.py:60 REST/methods/reports.py:69 -#: REST/methods/services_pool_groups.py:71 REST/methods/services_pools.py:136 -#: REST/methods/transports.py:66 REST/methods/user_services.py:325 -#: REST/methods/user_services.py:400 REST/methods/users_groups.py:167 -#: REST/model.py:149 +#: REST/methods/meta_pools.py:81 REST/methods/mfas.py:56 +#: REST/methods/networks.py:63 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:71 REST/methods/proxies.py:60 +#: REST/methods/reports.py:69 REST/methods/services_pool_groups.py:71 +#: REST/methods/services_pools.py:136 REST/methods/transports.py:66 +#: REST/methods/user_services.py:325 REST/methods/user_services.py:400 +#: REST/methods/users_groups.py:167 REST/model.py:149 msgid "Name" msgstr "Nombre" -#: REST/methods/accounts.py:64 REST/methods/authenticators.py:68 +#: REST/methods/accounts.py:64 REST/methods/authenticators.py:69 #: REST/methods/calendarrules.py:110 REST/methods/calendars.py:69 -#: REST/methods/meta_pools.py:82 REST/methods/osmanagers.py:57 -#: REST/methods/providers.py:73 REST/methods/proxies.py:63 -#: REST/methods/services.py:241 REST/methods/services_pool_groups.py:72 -#: REST/methods/transports.py:68 REST/methods/user_services.py:402 -#: REST/methods/users_groups.py:168 REST/methods/users_groups.py:386 -#: REST/model.py:173 +#: REST/methods/meta_pools.py:82 REST/methods/mfas.py:58 +#: REST/methods/osmanagers.py:57 REST/methods/providers.py:73 +#: REST/methods/proxies.py:63 REST/methods/services.py:241 +#: REST/methods/services_pool_groups.py:72 REST/methods/transports.py:68 +#: REST/methods/user_services.py:402 REST/methods/users_groups.py:168 +#: REST/methods/users_groups.py:384 REST/model.py:173 msgid "Comments" msgstr "Comentarios" @@ -64,12 +65,12 @@ msgstr "Comentarios" msgid "Time mark" msgstr "Marca de tiempo" -#: REST/methods/accounts.py:66 REST/methods/authenticators.py:73 +#: REST/methods/accounts.py:66 REST/methods/authenticators.py:75 #: REST/methods/calendars.py:71 REST/methods/meta_pools.py:89 -#: REST/methods/networks.py:71 REST/methods/osmanagers.py:59 -#: REST/methods/providers.py:79 REST/methods/proxies.py:64 -#: REST/methods/services.py:250 REST/methods/services_pools.py:145 -#: REST/methods/transports.py:77 +#: REST/methods/mfas.py:59 REST/methods/networks.py:71 +#: REST/methods/osmanagers.py:59 REST/methods/providers.py:79 +#: REST/methods/proxies.py:64 REST/methods/services.py:250 +#: REST/methods/services_pools.py:145 REST/methods/transports.py:77 msgid "tags" msgstr "Etiquetas" @@ -124,7 +125,7 @@ msgstr "Clave no válida" msgid "Unmanaged host" msgstr "Host no administrado" -#: REST/methods/actor.py:207 web/util/errors.py:85 +#: REST/methods/actor.py:207 web/util/errors.py:87 msgid "User service not found" msgstr "Servicio de usuario no encontrado" @@ -133,9 +134,9 @@ msgid "Actor tokens" msgstr "Tokens del Actor" #: REST/methods/actor_token.py:54 REST/methods/tunnel_token.py:52 -#: reports/auto/fields.py:58 reports/stats/pools_performance.py:218 -#: reports/stats/pools_performance.py:237 reports/stats/pools_usage_day.py:64 -#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:191 +#: reports/auto/fields.py:58 reports/stats/pools_performance.py:201 +#: reports/stats/pools_performance.py:220 reports/stats/pools_usage_day.py:64 +#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:176 #: templates/uds/reports/stats/authenticator_stats.html:14 msgid "Date" msgstr "Fecha" @@ -174,64 +175,79 @@ msgstr "Nivel de log" msgid "Token isued by {} from {}" msgstr "Token emitido por {} de {}" -#: REST/methods/authenticators.py:63 +#: REST/methods/authenticators.py:64 msgid "Authenticators" msgstr "Autenticadores" -#: REST/methods/authenticators.py:65 +#: REST/methods/authenticators.py:66 msgid "Id" msgstr "Id" -#: REST/methods/authenticators.py:67 REST/methods/osmanagers.py:56 -#: REST/methods/providers.py:72 REST/methods/services.py:242 -#: REST/methods/transports.py:67 REST/methods/user_services.py:401 +#: REST/methods/authenticators.py:68 REST/methods/mfas.py:57 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:72 +#: REST/methods/services.py:242 REST/methods/transports.py:67 +#: REST/methods/user_services.py:401 msgid "Type" msgstr "Tipo" -#: REST/methods/authenticators.py:69 REST/methods/meta_service_pools.py:88 +#: REST/methods/authenticators.py:70 REST/methods/meta_service_pools.py:88 #: REST/methods/op_calendars.py:83 REST/methods/services_pool_groups.py:62 #: REST/methods/transports.py:65 REST/methods/user_services.py:399 #: REST/model.py:185 models/meta_pool.py:73 msgid "Priority" msgstr "Prioridad" -#: REST/methods/authenticators.py:70 REST/methods/authenticators.py:107 +#: REST/methods/authenticators.py:71 REST/methods/authenticators.py:110 #: REST/methods/meta_pools.py:86 REST/methods/meta_pools.py:193 #: REST/methods/services_pools.py:141 REST/methods/services_pools.py:386 msgid "Visible" msgstr "Visible" -#: REST/methods/authenticators.py:71 REST/methods/meta_pools.py:88 +#: REST/methods/authenticators.py:72 REST/methods/meta_pools.py:88 #: REST/methods/transports.py:164 REST/model.py:201 msgid "Label" msgstr "Etiqueta" -#: REST/methods/authenticators.py:72 core/util/stats/counters.py:252 -#: reports/stats/pools_performance.py:223 -#: reports/stats/pools_performance.py:286 reports/stats/user_access.py:254 -#: reports/stats/user_access.py:297 services/RDS_enterprise/provider.py:74 +#: REST/methods/authenticators.py:73 core/util/stats/counters.py:252 +#: reports/stats/pools_performance.py:206 +#: reports/stats/pools_performance.py:269 reports/stats/user_access.py:239 +#: reports/stats/user_access.py:282 services/RDS_enterprise/provider.py:74 #: templates/uds/reports/stats/authenticator_stats.html:15 #: templates/uds/reports/stats/pools-performance.html:35 #: templates/uds/reports/stats/user-access.html:35 msgid "Users" msgstr "Usuarios" -#: REST/methods/authenticators.py:109 REST/methods/services_pools.py:387 -msgid "If active, transport will be visible for users" -msgstr "Si está activo, el transporte será visible para los usuarios." +#: REST/methods/authenticators.py:74 core/ui/user_interface.py:104 +msgid "MFA" +msgstr "AMF" -#: REST/methods/authenticators.py:113 REST/methods/services_pools.py:390 -#: REST/methods/services_pools.py:405 REST/methods/services_pools.py:422 -#: REST/methods/services_pools.py:433 core/ui/user_interface.py:103 -#: services/OVirt/service.py:188 -msgid "Display" -msgstr "Visualización" +#: REST/methods/authenticators.py:112 +msgid "If active, authenticator will be visible for users" +msgstr "Si está activo, el autenticador será visible para los usuarios" -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:125 core/services/service.py:143 +#: core/services/service.py:154 mfas/Email/mfa.py:46 mfas/SMS/mfa.py:112 +#: models/permissions.py:92 models/permissions.py:96 +#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 +#: services/Proxmox/service.py:208 services/Sample/service.py:100 +#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 +msgid "None" +msgstr "Ninguno" + +#: REST/methods/authenticators.py:132 +msgid "MFA Provider" +msgstr "Proveedor de MFA" + +#: REST/methods/authenticators.py:134 +msgid "MFA provider to use for this authenticator" +msgstr "Proveedor de MFA que se usará para este autenticador" + +#: REST/methods/authenticators.py:193 msgid "Too many results..." msgstr "Demasiados resultados..." -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:193 msgid "Refine your query" msgstr "Depura tu consulta" @@ -390,7 +406,7 @@ msgstr "Fecha de creación" #: REST/methods/meta_service_pools.py:195 REST/methods/services_usage.py:125 #: reports/stats/pool_users_summary.py:60 -#: reports/stats/pools_performance.py:284 reports/stats/pools_usage_day.py:171 +#: reports/stats/pools_performance.py:267 reports/stats/pools_usage_day.py:169 #: reports/stats/pools_usage_summary.py:156 reports/stats/usage_by_pool.py:59 #: reports/stats/usage_by_pool.py:173 services/Proxmox/service.py:111 #: templates/uds/reports/stats/pools-performance.html:33 @@ -449,6 +465,28 @@ msgstr "Elemento ya eliminado" msgid "Item is not removable" msgstr "El elemento no se puede eliminar" +#: REST/methods/mfas.py:54 +msgid "Multi Factor Authentication" +msgstr "Autenticación multifactor" + +#: REST/methods/mfas.py:80 +msgid "Device Caching" +msgstr "Almacenamiento en caché del dispositivo" + +#: REST/methods/mfas.py:82 +msgid "Time in hours to cache device so MFA is not required again. User based." +msgstr "" +"Tiempo en horas para almacenar en caché el dispositivo para que MFA no sea " +"necesario nuevamente. Basado en el usuario." + +#: REST/methods/mfas.py:94 +msgid "MFA code validity" +msgstr "Validez del código MFA" + +#: REST/methods/mfas.py:96 +msgid "Time in minutes to allow MFA code to be used." +msgstr "Tiempo en minutos para permitir el uso del código MFA." + #: REST/methods/networks.py:59 REST/methods/transports.py:114 msgid "Networks" msgstr "Redes" @@ -537,7 +575,7 @@ msgstr "Proveedores de servicios" msgid "Status" msgstr "Estado" -#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:171 +#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:169 #: templates/uds/reports/stats/authenticator_stats.html:16 #: templates/uds/reports/stats/pools-usage-day.html:29 msgid "Services" @@ -632,13 +670,13 @@ msgstr "" msgid "Available reports" msgstr "Informes disponibles" -#: REST/methods/reports.py:67 REST/methods/users_groups.py:377 -#: REST/methods/users_groups.py:398 -#: auths/ActiveDirectory_enterprise/authenticator.py:143 +#: REST/methods/reports.py:67 REST/methods/users_groups.py:375 +#: REST/methods/users_groups.py:396 +#: auths/ActiveDirectory_enterprise/authenticator.py:153 #: auths/AzureAD_enterprise/azure_ad.py:95 #: auths/EDirectory_enterprise/authenticator.py:105 #: auths/Radius/authenticator.py:63 auths/RegexLdap/authenticator.py:191 -#: auths/SAML_enterprise/saml.py:121 auths/SimpleLDAP/authenticator.py:182 +#: auths/SAML_enterprise/saml.py:109 auths/SimpleLDAP/authenticator.py:182 #: models/calendar_action.py:147 models/calendar_action.py:154 msgid "Group" msgstr "Grupo" @@ -703,13 +741,13 @@ msgstr "Proxy para servicios detrás de un firewall" msgid "Advanced" msgstr "Avanzado" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "With errors" msgstr "Con errores" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "Ok" msgstr "Ok" @@ -788,6 +826,16 @@ msgstr "" "Si la opción está activada, UDS no intentará detectar y eliminar el servicio " "de usuario asignado pero no en uso." +#: REST/methods/services_pools.py:387 +msgid "If active, transport will be visible for users" +msgstr "Si está activo, el transporte será visible para los usuarios." + +#: REST/methods/services_pools.py:390 REST/methods/services_pools.py:405 +#: REST/methods/services_pools.py:422 REST/methods/services_pools.py:433 +#: core/ui/user_interface.py:103 services/OVirt/service.py:188 +msgid "Display" +msgstr "Visualización" + #: REST/methods/services_pools.py:439 msgid "Initial available services" msgstr "Servicios disponibles inicialmente" @@ -996,7 +1044,7 @@ msgstr "Miembro del personal" #: auths/AzureAD_enterprise/azure_ad.py:94 #: auths/EDirectory_enterprise/authenticator.py:69 #: auths/Radius/authenticator.py:62 auths/RegexLdap/authenticator.py:91 -#: auths/SAML_enterprise/saml.py:118 reports/stats/pool_users_summary.py:177 +#: auths/SAML_enterprise/saml.py:106 reports/stats/pool_users_summary.py:177 #: reports/stats/usage_by_pool.py:171 #: templates/uds/reports/stats/pool-users-summary.html:14 #: templates/uds/reports/stats/usage-by-pool.html:15 @@ -1013,10 +1061,10 @@ msgid "Current users" msgstr "Usuarios actuales" #: REST/methods/users_groups.py:160 -#: auths/ActiveDirectory_enterprise/authenticator.py:141 +#: auths/ActiveDirectory_enterprise/authenticator.py:151 #: auths/EDirectory_enterprise/authenticator.py:103 #: auths/RegexLdap/authenticator.py:189 auths/SimpleLDAP/authenticator.py:180 -#: services/HyperV_enterprise/legacy/provider.py:103 +#: mfas/Email/mfa.py:54 services/HyperV_enterprise/legacy/provider.py:103 #: services/HyperV_enterprise/provider.py:86 #: services/NutanixPrism_enterprise/provider.py:54 #: services/Nutanix_enterprise/provider.py:54 services/OVirt/provider.py:121 @@ -1030,7 +1078,7 @@ msgstr "Usuarios actuales" #: transports/NoMachine_enterprise/nomachine_base.py:63 #: transports/PCoIP_enterprise/pcoip.py:61 transports/RDP/rdp_base.py:75 #: transports/SPICE/spice_base.py:69 transports/X2GO/x2go_base.py:70 -#: web/forms/LoginForm.py:43 +#: web/forms/LoginForm.py:44 msgid "Username" msgstr "Nombre de usuario" @@ -1038,7 +1086,7 @@ msgstr "Nombre de usuario" msgid "Role" msgstr "Rol" -#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:389 +#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:387 msgid "state" msgstr "estado" @@ -1050,32 +1098,32 @@ msgstr "Último acceso" msgid "Username cannot be empty" msgstr "El nombre de usuario no puede estar vacío" -#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:470 +#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:468 msgid "User already exists (duplicate key error)" msgstr "Este usuario ya existe (error de clave duplicada)" -#: REST/methods/users_groups.py:365 +#: REST/methods/users_groups.py:363 #, python-brace-format msgid "Groups of {0}" msgstr "Grupos de {0}" -#: REST/methods/users_groups.py:371 +#: REST/methods/users_groups.py:369 msgid "Current groups" msgstr "Grupos actuales" -#: REST/methods/users_groups.py:398 +#: REST/methods/users_groups.py:396 msgid "UDS Group" msgstr "Grupo UDS" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "Meta group" msgstr "Metagrupo" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "UDS Meta Group" msgstr "Metagrupo UDS " -#: REST/methods/users_groups.py:430 +#: REST/methods/users_groups.py:428 msgid "Group name is required" msgstr "El nombre del grupo es obligatorio" @@ -1125,7 +1173,7 @@ msgstr "Método no encontrado en {}: {}" msgid "Item not found" msgstr "Elemento no encontrado" -#: REST/model.py:336 web/util/authentication.py:140 web/util/errors.py:79 +#: REST/model.py:336 web/util/authentication.py:143 web/util/errors.py:81 msgid "Access denied" msgstr "Acceso denegado" @@ -1133,7 +1181,7 @@ msgstr "Acceso denegado" msgid "Operation not supported" msgstr "Operación no soportada" -#: admin/views/__init__.py:59 +#: admin/views/__init__.py:72 msgid "requested a template that do not exist" msgstr "solicitó una plantilla que no existe" @@ -1166,11 +1214,11 @@ msgstr "" "formato USUARIO@DOMINIO.DOM)" #: auths/ActiveDirectory_enterprise/authenticator.py:80 -#: auths/ActiveDirectory_enterprise/authenticator.py:145 +#: auths/ActiveDirectory_enterprise/authenticator.py:155 #: auths/EDirectory_enterprise/authenticator.py:77 #: auths/RegexLdap/authenticator.py:99 auths/RegexLdap/authenticator.py:193 #: auths/SimpleLDAP/authenticator.py:90 auths/SimpleLDAP/authenticator.py:184 -#: core/auths/authenticator.py:147 +#: core/auths/authenticator.py:147 mfas/Email/mfa.py:63 #: osmanagers/WindowsOsManager/windows_domain.py:85 #: osmanagers/WindowsOsManager/windows_random.py:76 #: services/HyperV_enterprise/legacy/provider.py:110 @@ -1186,8 +1234,8 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcv_base.py:52 #: transports/NoMachine_enterprise/nomachine_base.py:69 #: transports/PCoIP_enterprise/pcoip.py:67 transports/RDP/rdp_base.py:81 -#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:45 -#: web/forms/LoginForm.py:46 +#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:46 +#: web/forms/LoginForm.py:47 msgid "Password" msgstr "Contraseña" @@ -1254,24 +1302,34 @@ msgstr "" "Si no está vacío, este host se utilizará en caso de que el servidor host " "principal no sea accesible" -#: auths/ActiveDirectory_enterprise/authenticator.py:130 +#: auths/ActiveDirectory_enterprise/authenticator.py:133 +#: auths/SAML_enterprise/saml.py:207 +msgid "MFA attribute" +msgstr "atributo MFA" + +#: auths/ActiveDirectory_enterprise/authenticator.py:135 +#: auths/SAML_enterprise/saml.py:209 +msgid "Attribute from where to extract the MFA code" +msgstr "Atributo desde donde extraer el código MFA" + +#: auths/ActiveDirectory_enterprise/authenticator.py:140 msgid "Active Directory Authenticator" msgstr "Autenticador Active Directory" -#: auths/ActiveDirectory_enterprise/authenticator.py:132 +#: auths/ActiveDirectory_enterprise/authenticator.py:142 msgid "Authenticate against Active Directory" msgstr "Autenticar contra Active Directory" -#: auths/ActiveDirectory_enterprise/authenticator.py:175 -#: auths/ActiveDirectory_enterprise/authenticator.py:602 +#: auths/ActiveDirectory_enterprise/authenticator.py:187 +#: auths/ActiveDirectory_enterprise/authenticator.py:648 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "" "Debe especificar el nombre de usuario con este formato: " "NOMBREDEUSUARIO@DOMAIN.DOM" -#: auths/ActiveDirectory_enterprise/authenticator.py:481 -#: auths/ActiveDirectory_enterprise/authenticator.py:532 -#: auths/AzureAD_enterprise/azure_ad.py:313 +#: auths/ActiveDirectory_enterprise/authenticator.py:521 +#: auths/ActiveDirectory_enterprise/authenticator.py:578 +#: auths/AzureAD_enterprise/azure_ad.py:315 #: auths/EDirectory_enterprise/authenticator.py:269 #: auths/EDirectory_enterprise/authenticator.py:300 #: auths/RegexLdap/authenticator.py:538 auths/RegexLdap/authenticator.py:569 @@ -1279,34 +1337,34 @@ msgstr "" msgid "Username not found" msgstr "Nombre de usuario no encontrado" -#: auths/ActiveDirectory_enterprise/authenticator.py:514 +#: auths/ActiveDirectory_enterprise/authenticator.py:560 #: auths/SimpleLDAP/authenticator.py:468 msgid "Group not found" msgstr "Grupo no encontrado" -#: auths/ActiveDirectory_enterprise/authenticator.py:559 -#: auths/ActiveDirectory_enterprise/authenticator.py:581 +#: auths/ActiveDirectory_enterprise/authenticator.py:605 +#: auths/ActiveDirectory_enterprise/authenticator.py:627 #: auths/EDirectory_enterprise/authenticator.py:322 #: auths/RegexLdap/authenticator.py:597 auths/SimpleLDAP/authenticator.py:503 #: auths/SimpleLDAP/authenticator.py:523 msgid "Too many results, be more specific" msgstr "Demasiados resultados, sea más específico" -#: auths/ActiveDirectory_enterprise/authenticator.py:613 +#: auths/ActiveDirectory_enterprise/authenticator.py:659 msgid "Domain seems to be incorrect, please check it" msgstr "Dominio parece incorrecto, por favor compruébelo" -#: auths/ActiveDirectory_enterprise/authenticator.py:632 +#: auths/ActiveDirectory_enterprise/authenticator.py:678 msgid "" "Server does not seem an Active Directory (it does not have user objects)" msgstr "Servidor no parece un Active Directory (no tiene objetos de usuario)" -#: auths/ActiveDirectory_enterprise/authenticator.py:655 +#: auths/ActiveDirectory_enterprise/authenticator.py:701 msgid "" "Server does not seem an Active Directory (it does not have group objects)" msgstr "Servidor no parece un Active Directory (no tiene objetos de grupo)" -#: auths/ActiveDirectory_enterprise/authenticator.py:664 +#: auths/ActiveDirectory_enterprise/authenticator.py:710 #: auths/EDirectory_enterprise/authenticator.py:445 #: auths/RegexLdap/authenticator.py:707 auths/SimpleLDAP/authenticator.py:686 msgid "Connection params seem correct, test was succesfully executed" @@ -1400,21 +1458,21 @@ msgstr "Cierre de sesión de Microsoft" msgid "Office 365 logout" msgstr "Cierre de sesión de Office 365" -#: auths/AzureAD_enterprise/azure_ad.py:176 auths/SAML_enterprise/saml.py:217 +#: auths/AzureAD_enterprise/azure_ad.py:176 msgid "SAML Authenticator does not support white spaces on field NAME" msgstr "El autenticador SAML no admite espacios en blanco en el campo NOMBRE" -#: auths/AzureAD_enterprise/azure_ad.py:323 -#: auths/AzureAD_enterprise/azure_ad.py:349 -#: auths/AzureAD_enterprise/azure_ad.py:359 +#: auths/AzureAD_enterprise/azure_ad.py:325 +#: auths/AzureAD_enterprise/azure_ad.py:351 +#: auths/AzureAD_enterprise/azure_ad.py:361 msgid "Authenticator exception:" msgstr "Excepción de autenticador:" -#: auths/AzureAD_enterprise/azure_ad.py:394 core/util/ldaputil.py:49 +#: auths/AzureAD_enterprise/azure_ad.py:396 core/util/ldaputil.py:49 msgid "Connection error: " msgstr "Error de conexión: " -#: auths/AzureAD_enterprise/azure_ad.py:397 +#: auths/AzureAD_enterprise/azure_ad.py:399 msgid "Connection params seems correct, test was succesfully executed" msgstr "" "Los parámetros de conexión parecen validos, el test fue ejecutado " @@ -1522,7 +1580,7 @@ msgstr "Autenticador IP" msgid "IP Range" msgstr "Rango IP" -#: auths/IP/authenticator.py:119 auths/IP/authenticator.py:122 +#: auths/IP/authenticator.py:122 auths/IP/authenticator.py:125 msgid "All seems to be fine." msgstr "Parece que todo está bien." @@ -1572,11 +1630,11 @@ msgstr "Puerto de autenticación Radius (generalmente 1812)" #: auths/Radius/authenticator.py:82 msgid "Secret" -msgstr "Secreto" +msgstr "Secret" #: auths/Radius/authenticator.py:84 msgid "Radius client secret" -msgstr "Secreto del cliente Radius" +msgstr "\"Secret\" del cliente Radius" #: auths/Radius/authenticator.py:90 msgid "NAS Identifier" @@ -1717,19 +1775,19 @@ msgstr "" "El atributo de id de grupo LDAP parece ser incorrecto (ningún grupo " "encontrado por ese atributo)" -#: auths/SAML_enterprise/saml.py:88 +#: auths/SAML_enterprise/saml.py:76 msgid "SAML Authenticator" msgstr "Autenticador SAML " -#: auths/SAML_enterprise/saml.py:100 +#: auths/SAML_enterprise/saml.py:88 msgid "SAML (v2.0) Authenticator" msgstr "Autenticador SAML (v2.0) " -#: auths/SAML_enterprise/saml.py:130 +#: auths/SAML_enterprise/saml.py:118 msgid "Private key" msgstr "Clave privada" -#: auths/SAML_enterprise/saml.py:133 +#: auths/SAML_enterprise/saml.py:121 msgid "" "Private key used for sign and encription, as generated in base 64 from " "openssl" @@ -1737,15 +1795,15 @@ msgstr "" "Clave privada utilizada para firmar y encriptar, la generada en la base 64 " "de OpenSSL" -#: auths/SAML_enterprise/saml.py:136 auths/SAML_enterprise/saml.py:147 +#: auths/SAML_enterprise/saml.py:124 auths/SAML_enterprise/saml.py:135 msgid "Certificates" msgstr "Certificados" -#: auths/SAML_enterprise/saml.py:141 transports/SPICE/spice_base.py:83 +#: auths/SAML_enterprise/saml.py:129 transports/SPICE/spice_base.py:83 msgid "Certificate" msgstr "Certificado" -#: auths/SAML_enterprise/saml.py:144 +#: auths/SAML_enterprise/saml.py:132 msgid "" "Public key used for sign and encription (public part of previous private " "key), as generated in base 64 from openssl" @@ -1753,101 +1811,146 @@ msgstr "" "Clave pública utilizada para firma y encriptación (parte pública de la clave " "privada anterior), como se genera en base 64 usando openssl" -#: auths/SAML_enterprise/saml.py:152 +#: auths/SAML_enterprise/saml.py:140 msgid "IDP Metadata" msgstr "Metadatos IDP " -#: auths/SAML_enterprise/saml.py:155 +#: auths/SAML_enterprise/saml.py:143 msgid "" "You can enter here the URL or the IDP metadata or the metadata itself (xml)" msgstr "" "Puede introducir aquí la URL o los metadatos IDP o simplemente los metadatos " "(xml)" -#: auths/SAML_enterprise/saml.py:158 auths/SAML_enterprise/saml.py:167 +#: auths/SAML_enterprise/saml.py:146 auths/SAML_enterprise/saml.py:155 msgid "Metadata" msgstr "Metadatos " -#: auths/SAML_enterprise/saml.py:162 +#: auths/SAML_enterprise/saml.py:150 msgid "Entity ID" msgstr "ID de la entidad" -#: auths/SAML_enterprise/saml.py:165 +#: auths/SAML_enterprise/saml.py:153 msgid "ID of the SP. If left blank, this will be autogenerated from server URL" msgstr "" "ID del SP. Si se deja en blanco, se generará automáticamente desde la " "dirección URL del servidor" -#: auths/SAML_enterprise/saml.py:173 +#: auths/SAML_enterprise/saml.py:161 msgid "User name attrs" msgstr "Atrs del nombre de usuario" -#: auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:163 msgid "Fields from where to extract user name" msgstr "Campos de los que se extrae el nombre de usuario" -#: auths/SAML_enterprise/saml.py:177 auths/SAML_enterprise/saml.py:187 -#: auths/SAML_enterprise/saml.py:197 +#: auths/SAML_enterprise/saml.py:165 auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:185 msgid "Attributes" msgstr "Atributos" -#: auths/SAML_enterprise/saml.py:183 +#: auths/SAML_enterprise/saml.py:171 msgid "Group name attrs" msgstr "Atrs del nombre de grupo " -#: auths/SAML_enterprise/saml.py:185 +#: auths/SAML_enterprise/saml.py:173 msgid "Fields from where to extract the groups" msgstr "Campos de los que extraer los grupos" -#: auths/SAML_enterprise/saml.py:193 +#: auths/SAML_enterprise/saml.py:181 msgid "Real name attrs" msgstr "Atrs del nombre real " -#: auths/SAML_enterprise/saml.py:195 +#: auths/SAML_enterprise/saml.py:183 msgid "Fields from where to extract the real name" msgstr "Campos de los que se extrae el nombre real" +#: auths/SAML_enterprise/saml.py:189 +msgid "Global logout" +msgstr "Cierre de sesión global" + +#: auths/SAML_enterprise/saml.py:192 +msgid "If set, logout from UDS will trigger SAML logout" +msgstr "" +"Si se establece, el cierre de sesión de UDS activará el cierre de sesión de " +"SAML" + +#: auths/SAML_enterprise/saml.py:197 +msgid "ADFS compatibility" +msgstr "Compatibilidad con ADFS" + +#: auths/SAML_enterprise/saml.py:200 +msgid "If set, enable lowercase url encoding so ADFS can work correctly" +msgstr "" +"Si está configurado, habilite la codificación de URL en minúsculas para que " +"ADFS pueda funcionar correctamente" + #: auths/SAML_enterprise/saml.py:231 +msgid "This kind of Authenticator does not support white spaces on field NAME" +msgstr "" +"Este tipo de autenticador no admite espacios en blanco en el campo NOMBRE" + +#: auths/SAML_enterprise/saml.py:245 msgid "" "Server certificate should be a valid PEM (PEM certificates starts with -----" "BEGIN CERTIFICATE-----)" msgstr "" "El certificado del servidor debe ser un PEM válido (Los certificados PEM " -"empiezan con---EMPEZAR CERTIFICADO---)" +"empiezan con---BEGIN CERTIFICATE---)" -#: auths/SAML_enterprise/saml.py:239 +#: auths/SAML_enterprise/saml.py:253 msgid "Invalid server certificate. " msgstr "Certificado de servidor no válido. " -#: auths/SAML_enterprise/saml.py:250 +#: auths/SAML_enterprise/saml.py:264 msgid "" "Private key should be a valid PEM (PEM private keys starts with -----BEGIN " "RSA PRIVATE KEY-----" msgstr "" "La clave privada debe ser un PEM válido (Las claves privadas PEM empiezan " -"con---EMPEZAR CLAVE PRIVADA RSA---" +"con---BEGIN RSA PRIVATE KEY---" -#: auths/SAML_enterprise/saml.py:258 +#: auths/SAML_enterprise/saml.py:272 msgid "Invalid private key. " msgstr "Clave privada inválida. " -#: auths/SAML_enterprise/saml.py:277 +#: auths/SAML_enterprise/saml.py:291 #, python-brace-format msgid "Can't fetch url {0}: {1}" msgstr "No se puede extraer url {0}: {1}" -#: auths/SAML_enterprise/saml.py:288 +#: auths/SAML_enterprise/saml.py:302 msgid " (obtained from URL)" msgstr " (Obtenido de la URL)" -#: auths/SAML_enterprise/saml.py:290 +#: auths/SAML_enterprise/saml.py:304 msgid "XML does not seem valid for IDP Metadata " msgstr "XML no parece válido para metadatos IDP " -#: auths/SAML_enterprise/saml.py:312 +#: auths/SAML_enterprise/saml.py:357 msgid "Can't access idp metadata" msgstr "No se puede acceder a los metadatos IDP" +#: auths/SAML_enterprise/saml.py:424 +msgid "Error validating SP metadata: " +msgstr "Error al validar los metadatos del SP:" + +#: auths/SAML_enterprise/saml.py:528 +msgid "Error processing SLO: " +msgstr "Error al procesar SLO:" + +#: auths/SAML_enterprise/saml.py:558 +msgid "Error processing SAML response: " +msgstr "Error al procesar la respuesta SAML:" + +#: auths/SAML_enterprise/saml.py:571 +msgid "SAML response not authenticated" +msgstr "Respuesta SAML no autenticada" + +#: auths/SAML_enterprise/saml.py:598 +msgid "No attributes returned from IdP" +msgstr "Ningún atributo devuelto por IdP" + #: auths/Sample/SampleAuth.py:79 msgid "Sample Authenticator" msgstr "Autenticador de muestra" @@ -1945,11 +2048,11 @@ msgid "Can't locate any group with the membership attribute specified" msgstr "" "No se puede localizar ningún grupo al que pertenezca el atributo especificado" -#: core/auths/auth.py:110 +#: core/auths/auth.py:111 msgid "System Administrator" msgstr "Administrador del sistema" -#: core/auths/auth.py:150 +#: core/auths/auth.py:155 msgid "Forbidden" msgstr "Prohibido" @@ -1985,19 +2088,19 @@ msgstr "No se puede anular una publicación que no se está utilizando" msgid "Can't unpublish publications with services in process" msgstr "No se pueden anular publicaciones con servicios en proceso" -#: core/managers/user_service.py:337 +#: core/managers/user_service.py:348 msgid "Can't remove a non active element" msgstr "No se puede eliminar un elemento que no está activo" -#: core/managers/user_service.py:363 +#: core/managers/user_service.py:374 msgid "Can't remove nor cancel {} cause its state don't allow it" msgstr "No se puede eliminar ni cancelar {} porque su estado no lo permite" -#: core/managers/user_service.py:395 +#: core/managers/user_service.py:406 msgid "The requested service is restrained" msgstr "El servicio solicitado está restringido." -#: core/managers/user_service.py:761 web/util/errors.py:81 +#: core/managers/user_service.py:770 web/util/errors.py:83 msgid "" "Invalid service. The service is not available at this moment. Please, try " "later" @@ -2005,14 +2108,22 @@ msgstr "" "Servicio inválido. El servicio no está disponible en estos momentos. Por " "favor, inténtelo de nuevo pasados unos instantes." -#: core/managers/user_service.py:798 +#: core/managers/user_service.py:807 msgid "The requested transport {} is not valid for {}" msgstr "El transporte solicitado {} no es válido para {}" -#: core/managers/user_service.py:1078 +#: core/managers/user_service.py:1084 msgid "The service is not accessible from this device" msgstr "El servicio no es accesible desde este dispositivo." +#: core/mfas/mfa.py:60 core/mfas/mfa.py:72 +msgid "Base MFA" +msgstr "MFA base" + +#: core/mfas/mfa.py:184 +msgid "Invalid MFA code" +msgstr "Código MFA no válido" + #: core/module.py:215 msgid "No connection checking method is implemented." msgstr "No se ha implementado ningún metodo de verificación de conexión" @@ -2057,14 +2168,6 @@ msgstr "Impreso en {ahora:% Y,% b% d} en {ahora:% H:% M}" msgid "Base Service" msgstr "Servicio Base" -#: core/services/service.py:143 core/services/service.py:154 -#: models/permissions.py:92 models/permissions.py:96 -#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 -#: services/Proxmox/service.py:208 services/Sample/service.py:100 -#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 -msgid "None" -msgstr "Ninguno" - #: core/transports/transport.py:52 msgid "Direct" msgstr "Directo" @@ -2189,23 +2292,23 @@ msgstr "Usuarios con servicios" msgid "Cached" msgstr "En caché" -#: core/util/tools.py:152 +#: core/util/tools.py:155 msgid "{} days {:d}:{:02d}:{:02d}" msgstr "{} días {: d}: {: 02d}: {: 02d}" -#: core/util/tools.py:171 +#: core/util/tools.py:174 msgid "The basename is not a valid for a hostname" msgstr "El nombre no es válido para un nombre de host" -#: core/util/tools.py:176 +#: core/util/tools.py:179 msgid "The length of basename plus length must be greater than 0" msgstr "El nombre base más el contador debe ser mayor que 0" -#: core/util/tools.py:181 +#: core/util/tools.py:184 msgid "The length of basename plus length must not be greater than 15" msgstr "El nombre base más el contador no debe ser superior a 15" -#: core/util/tools.py:186 +#: core/util/tools.py:189 msgid "The machine name can't be only numbers" msgstr "" "El nombre de la máquina no puede estar compuesto únicamente por números" @@ -2237,75 +2340,367 @@ msgstr "{} excede la longitud máxima de un nombre de host." msgid "{} is not a valid hostname" msgstr "{} no es un nombre de host válido" -#: core/util/validators.py:152 +#: core/util/validators.py:131 +msgid "{} is not a valid host:port pair" +msgstr "{} no es un par host:puerto válido" + +#: core/util/validators.py:168 msgid "" "Invalid mac range. Mac range must be in format XX:XX:XX:XX:XX:XX-XX:XX:XX:XX:" "XX:XX" msgstr "" "Rango mac no válido. El rango mac debe estar en formato XX-XX:XX:XX:XX:XX:XX" -#: dispatchers/wyse_enterprise/views.py:118 +#: core/util/validators.py:182 +msgid "Email address is too long" +msgstr "La dirección de correo electrónico es demasiado larga" + +#: core/util/validators.py:187 +msgid "Email address is not valid" +msgstr "La dirección de correo electrónico no es válida" + +#: dispatchers/wyse_enterprise/views.py:119 msgid "There are no authenticators available for login" msgstr "No hay ningún autenticador disponibles para iniciar sesión" -#: dispatchers/wyse_enterprise/views.py:138 +#: dispatchers/wyse_enterprise/views.py:139 #, python-brace-format msgid "The authenticator {0} is not usable" msgstr "El autenticador {0} no se puede usar" -#: dispatchers/wyse_enterprise/views.py:145 +#: dispatchers/wyse_enterprise/views.py:146 msgid "Invalid credentials" msgstr "Credenciales no válidas" -#: dispatchers/wyse_enterprise/views.py:152 +#: dispatchers/wyse_enterprise/views.py:153 #, python-brace-format msgid "The domain {0} does not exists" msgstr "No existe el dominio {0}" -#: dispatchers/wyse_enterprise/views.py:228 +#: dispatchers/wyse_enterprise/views.py:229 msgid "No services available" msgstr "No hay servicios disponibles" -#: dispatchers/wyse_enterprise/views.py:244 -#: dispatchers/wyse_enterprise/views.py:344 +#: dispatchers/wyse_enterprise/views.py:245 +#: dispatchers/wyse_enterprise/views.py:345 msgid "Invalid session" msgstr "Sesión no válida" -#: dispatchers/wyse_enterprise/views.py:248 -#: dispatchers/wyse_enterprise/views.py:348 +#: dispatchers/wyse_enterprise/views.py:249 +#: dispatchers/wyse_enterprise/views.py:349 msgid "Invalid authorization" msgstr "Autorización no válida" -#: dispatchers/wyse_enterprise/views.py:259 -#: dispatchers/wyse_enterprise/views.py:354 +#: dispatchers/wyse_enterprise/views.py:260 +#: dispatchers/wyse_enterprise/views.py:355 msgid "Invalid request" msgstr "Solicitud inválida" -#: dispatchers/wyse_enterprise/views.py:262 -#: dispatchers/wyse_enterprise/views.py:357 +#: dispatchers/wyse_enterprise/views.py:263 +#: dispatchers/wyse_enterprise/views.py:358 msgid "Invalid credentials used" msgstr "Credenciales usadas no válidas " -#: dispatchers/wyse_enterprise/views.py:277 web/util/errors.py:78 +#: dispatchers/wyse_enterprise/views.py:278 web/util/errors.py:80 msgid "Service not found" msgstr "Servicio no encontrado" -#: dispatchers/wyse_enterprise/views.py:281 +#: dispatchers/wyse_enterprise/views.py:282 msgid "Invalid machine uuid." msgstr "UUID de máquina, inválido" -#: dispatchers/wyse_enterprise/views.py:295 web/util/errors.py:77 +#: dispatchers/wyse_enterprise/views.py:296 web/util/errors.py:79 msgid "Transport not found" msgstr "Transporte no encontrado" -#: dispatchers/wyse_enterprise/views.py:300 -#: dispatchers/wyse_enterprise/views.py:308 -#: dispatchers/wyse_enterprise/views.py:315 +#: dispatchers/wyse_enterprise/views.py:301 +#: dispatchers/wyse_enterprise/views.py:309 +#: dispatchers/wyse_enterprise/views.py:316 msgid "Service not ready at this moment. Please, try again in a while." msgstr "" "El servicio no está disponible en este momento. Por favor, inténtelo de " "nuevo pasados unos instantes." +#: mfas/Email/mfa.py:22 +msgid "Email Multi Factor" +msgstr "Correo electrónico multifactor" + +#: mfas/Email/mfa.py:24 +msgid "Email Multi Factor Authenticator" +msgstr "Autenticador multifactor de correo electrónico" + +#: mfas/Email/mfa.py:29 +msgid "SMTP Host" +msgstr "Anfitrión SMTP" + +#: mfas/Email/mfa.py:32 +msgid "" +"SMTP Server hostname or IP address. If you are using a non-standard port, " +"add it after a colon, for example: smtp.gmail.com:587" +msgstr "" +"Nombre de host o dirección IP del servidor SMTP. Si está utilizando un " +"puerto no estándar, agréguelo después de dos puntos, por ejemplo: smtp.gmail." +"com:587" + +#: mfas/Email/mfa.py:37 mfas/Email/mfa.py:50 mfas/Email/mfa.py:59 +#: mfas/Email/mfa.py:68 +msgid "SMTP Server" +msgstr "Servidor SMTP" + +#: mfas/Email/mfa.py:41 transports/HTML5RDP/html5rdp.py:268 +#: transports/HTML5RDS_enterprise/html5rds.py:255 +msgid "Security" +msgstr "Seguridad" + +#: mfas/Email/mfa.py:42 +msgid "Security protocol to use" +msgstr "Protocolo de seguridad a utilizar" + +#: mfas/Email/mfa.py:44 +msgid "TLS" +msgstr "TLS" + +#: mfas/Email/mfa.py:45 +msgid "SSL" +msgstr "SSL" + +#: mfas/Email/mfa.py:56 +msgid "User with access to SMTP server" +msgstr "Usuario con acceso al servidor SMTP" + +#: mfas/Email/mfa.py:65 +msgid "Password of the user with access to SMTP server" +msgstr "Contraseña del usuario con acceso al servidor SMTP" + +#: mfas/Email/mfa.py:74 +msgid "Subject" +msgstr "Tema" + +#: mfas/Email/mfa.py:76 +msgid "Subject of the email" +msgstr "Asunto del correo electrónico" + +#: mfas/Email/mfa.py:78 mfas/Email/mfa.py:87 mfas/Email/mfa.py:95 +msgid "Config" +msgstr "Configuración" + +#: mfas/Email/mfa.py:83 +msgid "From Email" +msgstr "Desde el e-mail" + +#: mfas/Email/mfa.py:85 +msgid "Email address that will be used as sender" +msgstr "Dirección de correo electrónico que se utilizará como remitente" + +#: mfas/Email/mfa.py:91 +msgid "Enable HTML" +msgstr "Habilitar HTML" + +#: mfas/Email/mfa.py:93 +msgid "Enable HTML in emails" +msgstr "Habilitar HTML en correos electrónicos" + +#: mfas/Email/mfa.py:110 +msgid "Invalid SMTP hostname" +msgstr "Nombre de host SMTP no válido" + +#: mfas/SMS/mfa.py:19 +msgid "SMS Thought HTTP" +msgstr "SMS pensamiento HTTP" + +#: mfas/SMS/mfa.py:21 +msgid "Simple SMS sending MFA using HTTP" +msgstr "MFA de envío de SMS simple usando HTTP" + +#: mfas/SMS/mfa.py:26 +msgid "URL pattern for SMS sending" +msgstr "Patrón de URL para envío de SMS" + +#: mfas/SMS/mfa.py:29 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"URL pattern for SMS sending. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"Patrón de URL para envío de SMS. Puede contener las siguientes variables: * " +"{code} - el código a enviar * {phone/+phone} - el número de teléfono * " +"{username} - el nombre de usuario * {justUsername} - el nombre de usuario " +"sin @...." + +#: mfas/SMS/mfa.py:37 mfas/SMS/mfa.py:43 mfas/SMS/mfa.py:56 mfas/SMS/mfa.py:75 +#: mfas/SMS/mfa.py:92 mfas/SMS/mfa.py:101 +msgid "HTTP Server" +msgstr "Servidor HTTP" + +#: mfas/SMS/mfa.py:41 +msgid "Ignore certificate errors" +msgstr "Ignorar errores de certificado" + +#: mfas/SMS/mfa.py:46 +msgid "" +"If checked, the server certificate will be ignored. This is useful if the " +"server uses a self-signed certificate." +msgstr "" +"Si está marcado, se ignorará el certificado del servidor. Esto es útil si el " +"servidor usa un certificado autofirmado." + +#: mfas/SMS/mfa.py:52 +msgid "SMS sending method" +msgstr "Método de envío de SMS" + +#: mfas/SMS/mfa.py:54 mfas/SMS/mfa.py:108 +msgid "Method for sending SMS" +msgstr "Método para enviar SMS" + +#: mfas/SMS/mfa.py:63 +msgid "Headers for SMS requests" +msgstr "Encabezados para solicitudes de SMS" + +#: mfas/SMS/mfa.py:66 +msgid "" +"Headers for SMS requests. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @....\n" +"Headers are in the form of \"Header: Value\". (without the quotes)" +msgstr "" +"Encabezados para solicitudes de SMS. Puede contener las siguientes " +"variables: * {code} - el código para enviar * {phone/+phone} - el número de " +"teléfono * {username} - el nombre de usuario * {justUsername} - el nombre de " +"usuario sin @.... Los encabezados están en la forma de \"Encabezado: Valor" +"\". (sin las comillas)" + +#: mfas/SMS/mfa.py:81 +msgid "Parameters for SMS POST/PUT sending" +msgstr "Parámetros para el envío de SMS POST/PUT" + +#: mfas/SMS/mfa.py:84 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"Parameters for SMS sending via POST/PUT. It can contain the following " +"variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"Parámetros para envío de SMS vía POST/PUT. Puede contener las siguientes " +"variables: * {code} - el código a enviar * {phone/+phone} - el número de " +"teléfono * {username} - el nombre de usuario * {justUsername} - el nombre de " +"usuario sin @...." + +#: mfas/SMS/mfa.py:96 +msgid "SMS encoding" +msgstr "Codificación de SMS" + +#: mfas/SMS/mfa.py:99 +msgid "Encoding for SMS" +msgstr "Codificación para SMS" + +#: mfas/SMS/mfa.py:106 +msgid "SMS authentication method" +msgstr "Método de autenticación por SMS" + +#: mfas/SMS/mfa.py:110 mfas/SMS/mfa.py:124 mfas/SMS/mfa.py:133 +msgid "HTTP Authentication" +msgstr "Autenticación HTTP" + +#: mfas/SMS/mfa.py:113 +msgid "HTTP Basic Auth" +msgstr "Autenticación básica HTTP" + +#: mfas/SMS/mfa.py:114 +msgid "HTTP Digest Auth" +msgstr "Autenticación de resumen HTTP" + +#: mfas/SMS/mfa.py:120 +msgid "SMS authentication user or token" +msgstr "Usuario o token de autenticación por SMS" + +#: mfas/SMS/mfa.py:122 +msgid "User or token for SMS authentication" +msgstr "Usuario o token para autenticación por SMS" + +#: mfas/SMS/mfa.py:129 +msgid "SMS authentication password" +msgstr "Contraseña de autenticación de SMS" + +#: mfas/SMS/mfa.py:131 +msgid "Password for SMS authentication" +msgstr "Contraseña para la autenticación por SMS" + +#: mfas/SMS/mfa.py:138 +msgid "SMS response OK regex" +msgstr "Respuesta de SMS OK expresión regular" + +#: mfas/SMS/mfa.py:141 +msgid "" +"Regex for SMS response OK. If emty, the response is considered OK if status " +"code is 200." +msgstr "" +"Regex para respuesta SMS OK. Si está vacío, la respuesta se considera " +"correcta si el código de estado es 200." + +#: mfas/SMS/mfa.py:144 mfas/SMS/mfa.py:153 +msgid "HTTP Response" +msgstr "Respuesta HTTP" + +#: mfas/SMS/mfa.py:148 +msgid "SMS response error action" +msgstr "Acción de error de respuesta de SMS" + +#: mfas/SMS/mfa.py:151 +msgid "Action for SMS response error" +msgstr "Acción para el error de respuesta de SMS" + +#: mfas/SMS/mfa.py:155 +msgid "Allow user log in without MFA" +msgstr "Permitir que el usuario inicie sesión sin MFA" + +#: mfas/SMS/mfa.py:156 +msgid "Deny user log in" +msgstr "Denegar el inicio de sesión del usuario" + +#: mfas/SMS/mfa.py:199 +msgid "SMS sending failed" +msgstr "Envío de SMS fallido" + +#: mfas/SMS/mfa.py:263 web/views/modern.py:275 +msgid "MFA Code" +msgstr "Código MFA" + +#: mfas/Sample/mfa.py:16 +msgid "Sample Multi Factor" +msgstr "Ejemplo de multifactor" + +#: mfas/Sample/mfa.py:18 +msgid "Sample Multi Factor Authenticator" +msgstr "Ejemplo de autenticador multifactor" + +#: mfas/Sample/mfa.py:22 +msgid "Sample useless field" +msgstr "Ejemplo de campo inútil" + +#: mfas/Sample/mfa.py:25 +msgid "This is a useless field, for sample and testing pourposes" +msgstr "Este es un campo inútil, para fines de muestra y prueba." + #: models/calendar_action.py:63 msgid "Publish" msgstr "Publicar" @@ -2861,7 +3256,7 @@ msgid "Service pool for report" msgstr "Pool de servicios para el informe" #: reports/auto/fields.py:104 reports/lists/users.py:61 -#: web/forms/LoginForm.py:50 +#: web/forms/LoginForm.py:51 msgid "Authenticator" msgstr "Autenticador" @@ -2913,11 +3308,11 @@ msgstr "ID de usuario" msgid "Real Name" msgstr "Nombre real" -#: reports/stats/auth_stats.py:58 +#: reports/stats/auth_stats.py:59 msgid "Statistics by authenticator" msgstr "Estadísticas por autenticador" -#: reports/stats/auth_stats.py:60 +#: reports/stats/auth_stats.py:61 msgid "" "Generates a report with the statistics of an authenticator for a desired " "period" @@ -2925,14 +3320,14 @@ msgstr "" "Genera un informe con estadísticas de un autenticador durante un periodo " "específico" -#: reports/stats/auth_stats.py:136 reports/stats/usage_by_pool.py:146 +#: reports/stats/auth_stats.py:123 reports/stats/usage_by_pool.py:146 #: templates/uds/reports/stats/authenticator_stats.html:4 #: templates/uds/reports/stats/usage-by-pool.html:4 #: templates/uds/reports/stats/usage-by-pool.html:6 msgid "Users usage list" msgstr "Lista del uso de los usuarios" -#: reports/stats/auth_stats.py:137 reports/stats/usage_by_pool.py:147 +#: reports/stats/auth_stats.py:124 reports/stats/usage_by_pool.py:147 msgid "UDS Report of users usage" msgstr "Informe del uso de los usuarios" @@ -3007,30 +3402,26 @@ msgstr "Número de intervalos" msgid "Number of sampling points used in charts" msgstr "Número de puntos de muestreo utilizados en gráficos" -#: reports/stats/pools_performance.py:128 -msgid "Select at least a service pool for the report" -msgstr "Seleccione al menos un Pool de Servicio para el informe" - -#: reports/stats/pools_performance.py:211 +#: reports/stats/pools_performance.py:194 msgid "Distinct Users" msgstr "Usuarios distintos" -#: reports/stats/pools_performance.py:230 -#: reports/stats/pools_performance.py:242 -#: reports/stats/pools_performance.py:287 +#: reports/stats/pools_performance.py:213 +#: reports/stats/pools_performance.py:225 +#: reports/stats/pools_performance.py:270 #: templates/uds/reports/stats/pools-performance.html:36 msgid "Accesses" msgstr "Accesos" -#: reports/stats/pools_performance.py:258 +#: reports/stats/pools_performance.py:241 msgid "UDS Pools Performance Report" msgstr "Informe de rendimeinto de Pools de UDS" -#: reports/stats/pools_performance.py:259 +#: reports/stats/pools_performance.py:242 msgid "Pools Performance" msgstr "Rendimiento de Pools" -#: reports/stats/pools_performance.py:285 reports/stats/user_access.py:297 +#: reports/stats/pools_performance.py:268 reports/stats/user_access.py:282 #: templates/uds/reports/stats/pools-performance.html:34 #: templates/uds/reports/stats/user-access.html:34 msgid "Date range" @@ -3044,21 +3435,21 @@ msgstr "Uso de pools en un día" msgid "Pools usage counters for an specific day" msgstr "Contadores de uso de pools para un día específico" -#: reports/stats/pools_usage_day.py:128 +#: reports/stats/pools_usage_day.py:126 msgid "Services by hour" msgstr "Servicios por hora" -#: reports/stats/pools_usage_day.py:133 reports/stats/pools_usage_day.py:171 -#: reports/stats/user_access.py:228 reports/stats/user_access.py:240 +#: reports/stats/pools_usage_day.py:131 reports/stats/pools_usage_day.py:169 +#: reports/stats/user_access.py:213 reports/stats/user_access.py:225 #: templates/uds/reports/stats/pools-usage-day.html:28 msgid "Hour" msgstr "Hora" -#: reports/stats/pools_usage_day.py:152 +#: reports/stats/pools_usage_day.py:150 msgid "Services usage report for a day" msgstr "Informe del uso de servicios por día." -#: reports/stats/pools_usage_day.py:153 +#: reports/stats/pools_usage_day.py:151 msgid "Service usage report" msgstr "Informe del uso de servicios" @@ -3124,63 +3515,63 @@ msgstr "TODOS LOS POOLS" msgid "Seconds" msgstr "Segundos" -#: reports/stats/user_access.py:59 reports/stats/user_access.py:281 +#: reports/stats/user_access.py:59 reports/stats/user_access.py:266 msgid "Users access report by date" msgstr "Informe de accesos de usuarios por fecha" -#: reports/stats/user_access.py:60 reports/stats/user_access.py:282 +#: reports/stats/user_access.py:60 reports/stats/user_access.py:267 msgid "Report of user access to platform by date" msgstr "Informe de acceso de usuarios a la plataforma por fecha" -#: reports/stats/user_access.py:186 +#: reports/stats/user_access.py:171 msgid "Users Access (global)" msgstr "Acceso de usuarios (global)" -#: reports/stats/user_access.py:206 +#: reports/stats/user_access.py:191 msgid "Users Access (by week)" msgstr "Acceso de usuarios (por semana)" -#: reports/stats/user_access.py:209 reports/stats/user_access.py:245 +#: reports/stats/user_access.py:194 reports/stats/user_access.py:230 msgid "Monday" msgstr "Lunes" -#: reports/stats/user_access.py:210 reports/stats/user_access.py:246 +#: reports/stats/user_access.py:195 reports/stats/user_access.py:231 msgid "Tuesday" msgstr "Martes" -#: reports/stats/user_access.py:211 reports/stats/user_access.py:247 +#: reports/stats/user_access.py:196 reports/stats/user_access.py:232 msgid "Wednesday" msgstr "Miércoles" -#: reports/stats/user_access.py:212 reports/stats/user_access.py:248 +#: reports/stats/user_access.py:197 reports/stats/user_access.py:233 msgid "Thursday" msgstr "Jueves" -#: reports/stats/user_access.py:213 reports/stats/user_access.py:249 +#: reports/stats/user_access.py:198 reports/stats/user_access.py:234 msgid "Friday" msgstr "Viernes" -#: reports/stats/user_access.py:214 reports/stats/user_access.py:250 +#: reports/stats/user_access.py:199 reports/stats/user_access.py:235 msgid "Saturday" msgstr "Sábado" -#: reports/stats/user_access.py:215 reports/stats/user_access.py:251 +#: reports/stats/user_access.py:200 reports/stats/user_access.py:236 msgid "Sunday" msgstr "Domingo" -#: reports/stats/user_access.py:217 reports/stats/user_access.py:243 +#: reports/stats/user_access.py:202 reports/stats/user_access.py:228 msgid "Day of week" msgstr "Día de la semana" -#: reports/stats/user_access.py:226 reports/stats/user_access.py:238 +#: reports/stats/user_access.py:211 reports/stats/user_access.py:223 msgid "Users Access (by hour)" msgstr "Acceso de usuarios (por hora)" -#: reports/stats/user_access.py:267 +#: reports/stats/user_access.py:252 msgid "Users access to UDS" msgstr "Acceso de usuarios a UDS" -#: reports/stats/user_access.py:268 +#: reports/stats/user_access.py:253 msgid "UDS Report for users access" msgstr "Informe de acceso de usuarios" @@ -3190,7 +3581,7 @@ msgstr "ID de clave de acceso" #: services/AWS_enterprise/provider.py:39 msgid "Obtained from user created on AWS IAM for UDS Enterprise" -msgstr "Obtenido de usuario creado en AWS IAM para UDS Enterprise" +msgstr "Obtenido del usuario creado en AWS IAM para UDS Enterprise" #: services/AWS_enterprise/provider.py:45 msgid "Secret Access Key" @@ -3198,7 +3589,7 @@ msgstr "Clave de acceso secreta" #: services/AWS_enterprise/provider.py:47 msgid "Obtained from user created on AWS IAM for UDS Enteprise - Keys" -msgstr "Obtenido de usuario creado en AWS IAM para UDS Enteprise - Claves" +msgstr "Obtenido del usuario creado en AWS IAM para UDS Enteprise - Claves" #: services/AWS_enterprise/provider.py:54 #: services/Azure_enterprise/provider.py:76 @@ -3274,7 +3665,7 @@ msgstr "Región predeterminada" #: services/AWS_enterprise/provider.py:100 msgid "Default region to use for connecting to EC2" -msgstr "Región predeterminada para usar para conectarse a EC2" +msgstr "Región predeterminada para conectarse a EC2" #: services/AWS_enterprise/provider.py:130 msgid "AWS Platform Provider" @@ -3602,7 +3993,7 @@ msgstr "Publicación de UDS para {0} en {1}" #: services/HyperV_enterprise/legacy/service.py:59 msgid "HyperV Linked Clone (LEGACY))" -msgstr "Clon vinculado a HyperV (LEGACY))" +msgstr " HyperV Linked Clon (LEGACY))" #: services/HyperV_enterprise/legacy/service.py:62 msgid "Hyper Services based on templates and differential disks (LEGACY)" @@ -3808,7 +4199,7 @@ msgstr "Servicio HyperV basado en plantillas y discos diferenciales" #: services/NutanixPrism_enterprise/provider.py:30 msgid "Prism Central Platform Provider" -msgstr "Proveedor de la plataforma central de Prism" +msgstr "Proveedor de plataforma Prism central" #: services/NutanixPrism_enterprise/provider.py:32 msgid "Nutanix Prism Central based VM provider" @@ -3844,7 +4235,7 @@ msgstr "Conexión funciona bien" #: services/NutanixPrism_enterprise/service.py:32 msgid "Prism Central Service" -msgstr "Servicio Central Prism" +msgstr "Servicio Prism Central" #: services/NutanixPrism_enterprise/service.py:34 msgid "Nutanix Prism Central based service" @@ -3928,7 +4319,7 @@ msgstr "Se requieren cores por vCPU y Número de vCPUs" #: services/Nutanix_enterprise/provider.py:30 msgid "Nutanix Acropolis Platform Provider" -msgstr "Proveedor de Plataforma Nutanix Acrópolis" +msgstr "Proveedor de plataforma Nutanix Acrópolis" #: services/Nutanix_enterprise/provider.py:32 msgid "Nutanix based VM provider" @@ -3962,7 +4353,7 @@ msgstr "Red para las máquinas (cada máquina creada se adjuntará a esta red)" #: services/OVirt/provider.py:80 msgid "oVirt/RHEV Platform Provider" -msgstr "Proveedor de Plataformas oVirt/RHEV " +msgstr "Proveedor de plataforma oVirt/RHEV " #: services/OVirt/provider.py:84 msgid "oVirt platform service provider" @@ -4166,7 +4557,7 @@ msgstr "" #: services/OpenNebula/provider.py:58 msgid "OpenNebula Platform Provider" -msgstr "Proveedor de Plataforma OpenNebula" +msgstr "Proveedor de plataforma OpenNebula" #: services/OpenNebula/provider.py:62 msgid "OpenNebula platform service provider" @@ -4242,7 +4633,7 @@ msgstr "" #: services/OpenStack/provider.py:80 msgid "OpenStack Platform Provider" -msgstr "Proveedor de Plataforma OpenStack" +msgstr "Proveedor de plataforma OpenStack" #: services/OpenStack/provider.py:84 msgid "OpenStack platform service provider" @@ -4429,12 +4820,12 @@ msgstr "Proveedor de máquinas con IP estática" msgid "Provides connection to machines by IP" msgstr "Proporciona conexión a máquinas vía IP" -#: services/PhysicalMachines/service_multi.py:64 +#: services/PhysicalMachines/service_multi.py:62 #: services/Vmware_enterprise/service_fixed.py:55 msgid "Service Token" msgstr "Token del servicio" -#: services/PhysicalMachines/service_multi.py:67 +#: services/PhysicalMachines/service_multi.py:65 #: services/Vmware_enterprise/service_fixed.py:57 msgid "" "Service token that will be used by actors to communicate with service. Leave " @@ -4444,67 +4835,68 @@ msgstr "" "Deje en blanco para no gestionar el servicio y disponer de asignación " "persistente." -#: services/PhysicalMachines/service_multi.py:75 +#: services/PhysicalMachines/service_multi.py:73 #: services/RDS_enterprise/provider.py:51 msgid "List of servers" msgstr "Lista de servidores" -#: services/PhysicalMachines/service_multi.py:76 +#: services/PhysicalMachines/service_multi.py:74 msgid "List of servers available for this service" msgstr "Lista de IPs de máquinas disponibles para este servicio." -#: services/PhysicalMachines/service_multi.py:81 +#: services/PhysicalMachines/service_multi.py:79 msgid "Check Port" msgstr "Comprobar puerto" -#: services/PhysicalMachines/service_multi.py:85 +#: services/PhysicalMachines/service_multi.py:83 msgid "" "If non zero, only hosts responding to connection on that port will be served." msgstr "" "Si no es cero, solo se asignarán las IPs de las máquinas que respondan a la " "conexión con el puerto indicado." -#: services/PhysicalMachines/service_multi.py:92 +#: services/PhysicalMachines/service_multi.py:90 msgid "Skip time" msgstr "Tiempo de comprobación" -#: services/PhysicalMachines/service_multi.py:95 +#: services/PhysicalMachines/service_multi.py:93 msgid "If a host fails to check, skip it for this time (in minutes)." msgstr "" "Si en una maquina no se puede verificar su conexión, omítala para una nueva " "comprobación por este tiempo (en minutos)." -#: services/PhysicalMachines/service_multi.py:103 +#: services/PhysicalMachines/service_multi.py:101 msgid "Max session per machine" msgstr "Sesión máxima por máquina" -#: services/PhysicalMachines/service_multi.py:107 +#: services/PhysicalMachines/service_multi.py:105 msgid "" "Maximum session duration before UDS thinks this machine got locked and " "releases it (hours). 0 means \"never\"." msgstr "" -"Duración máxima de la sesión antes de que UDS considere que esta máquina se " -"bloqueó y la libera (horas). 0 significa \"nunca\"." +"Duración máxima de la sesión antes de que UDS (internamente) considere que " +"esta máquina se bloqueó por uso local y la libere (horas). 0 significa " +"\"nunca\"." -#: services/PhysicalMachines/service_multi.py:114 +#: services/PhysicalMachines/service_multi.py:112 msgid "Lock machine by external access" msgstr "Bloquear la máquina por acceso externo" -#: services/PhysicalMachines/service_multi.py:115 +#: services/PhysicalMachines/service_multi.py:113 msgid "" "If checked, UDS will lock the machine if it is accesed from outside UDS." msgstr "" "Si está marcado, UDS bloqueará la máquina si se accede desde fuera de UDS." -#: services/PhysicalMachines/service_multi.py:122 +#: services/PhysicalMachines/service_multi.py:120 msgid "Static Multiple IP" msgstr "Estatica, Multiples IPs" -#: services/PhysicalMachines/service_multi.py:124 +#: services/PhysicalMachines/service_multi.py:122 msgid "This service provides access to POWERED-ON Machines by IP" msgstr "Este servicio proporciona acceso a las máquinas POWERED-ON por IP" -#: services/PhysicalMachines/service_multi.py:158 +#: services/PhysicalMachines/service_multi.py:156 msgid "Invalid value detected on servers list: \"{}\"" msgstr "Se detectó un valor no válido en la lista de servidores: \"{}\"" @@ -5148,7 +5540,7 @@ msgstr "" #: services/Vmware_enterprise/provider.py:126 msgid "VMWare VCenter Platform Provider" -msgstr "Proveedor de Plataforma VMware vCenter" +msgstr "Proveedor de plataforma VMware vCenter" #: services/Vmware_enterprise/provider.py:128 msgid "Provides connection to Virtual Center Services" @@ -5402,47 +5794,47 @@ msgstr "Shadow" msgid "Shadow memory multiplier (use with care)" msgstr "Multiplicador de memoria (usar con cuidado)" -#: temp_for_locales.py:96 +#: temp_for_locales.py:99 msgid "Spanish" msgstr "Español" -#: temp_for_locales.py:97 +#: temp_for_locales.py:100 msgid "English" msgstr "Inglés" -#: temp_for_locales.py:98 +#: temp_for_locales.py:101 msgid "French" msgstr "Francés" -#: temp_for_locales.py:99 +#: temp_for_locales.py:102 msgid "German" msgstr "Alemán" -#: temp_for_locales.py:100 +#: temp_for_locales.py:103 msgid "Portuguese" msgstr "Portugués" -#: temp_for_locales.py:101 +#: temp_for_locales.py:104 msgid "Italian" msgstr "Italiano" -#: temp_for_locales.py:102 +#: temp_for_locales.py:105 msgid "Basque" msgstr "Euskera" -#: temp_for_locales.py:103 +#: temp_for_locales.py:106 msgid "Arabic" msgstr "Árabe" -#: temp_for_locales.py:104 +#: temp_for_locales.py:107 msgid "Russian" msgstr "Ruso" -#: temp_for_locales.py:105 +#: temp_for_locales.py:108 msgid "Catalan" msgstr "Catalán" -#: temp_for_locales.py:106 +#: temp_for_locales.py:109 msgid "Chinese" msgstr "Chino" @@ -5651,7 +6043,7 @@ msgstr "Mostrar fondo de pantalla " #: transports/HTML5RDP/html5rdp.py:134 #: transports/HTML5RDS_enterprise/html5rds.py:123 -#: transports/RDP/rdp_base.py:222 +#: transports/RDP/rdp_base.py:241 msgid "" "If checked, the wallpaper and themes will be shown on machine (better user " "experience, more bandwidth)" @@ -5661,19 +6053,19 @@ msgstr "" #: transports/HTML5RDP/html5rdp.py:139 #: transports/HTML5RDS_enterprise/html5rds.py:128 -#: transports/RDP/rdp_base.py:235 +#: transports/RDP/rdp_base.py:254 msgid "Allow Desk.Comp." msgstr "Permitir Comp.Escr." #: transports/HTML5RDP/html5rdp.py:141 #: transports/HTML5RDS_enterprise/html5rds.py:130 -#: transports/RDP/rdp_base.py:237 +#: transports/RDP/rdp_base.py:256 msgid "If checked, desktop composition will be allowed" msgstr "Si está marcada, se permitirá la composición de escritorio" #: transports/HTML5RDP/html5rdp.py:145 #: transports/HTML5RDS_enterprise/html5rds.py:134 -#: transports/RDP/rdp_base.py:241 transports/RDS_enterprise/rds_base.py:150 +#: transports/RDP/rdp_base.py:260 transports/RDS_enterprise/rds_base.py:150 msgid "Font Smoothing" msgstr "Suavizado de fuentes" @@ -5937,11 +6329,6 @@ msgstr "Fuerza que todas las conexiones se abran en una nueva ventana." msgid "Override UDS window and replace it with the connection." msgstr "Anule la ventana UDS y reemplácela con la conexión." -#: transports/HTML5RDP/html5rdp.py:268 -#: transports/HTML5RDS_enterprise/html5rds.py:255 -msgid "Security" -msgstr "Seguridad" - #: transports/HTML5RDP/html5rdp.py:269 #: transports/HTML5RDS_enterprise/html5rds.py:256 msgid "Connection security mode for Guacamole RDP connection" @@ -5979,11 +6366,11 @@ msgstr "" msgid "TLS (Transport Security Layer encryption)" msgstr "TLS (encriptación de capa de seguridad de transporte)" -#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:173 +#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:192 msgid "RDP Port" msgstr "Puerto RDP" -#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:174 +#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:193 msgid "Use this port as RDP port. Defaults to 3389." msgstr "Utilice este puerto como puerto RDP. El valor predeterminado es 3389." @@ -6001,13 +6388,13 @@ msgstr "" "Ruta personalizada para el túnel de Glyptodon Enterprise. (Solo válido para " "Glyptodon Enterprise Tunnel)" -#: transports/HTML5RDP/html5rdp.py:327 +#: transports/HTML5RDP/html5rdp.py:326 #: transports/HTML5RDS_enterprise/html5rds.py:296 #: transports/HTML5VNC/html5vnc.py:187 msgid "The server must be http or https" msgstr "El servidor debe ser http o https" -#: transports/HTML5RDP/html5rdp.py:332 +#: transports/HTML5RDP/html5rdp.py:331 #: transports/HTML5RDS_enterprise/html5rds.py:301 msgid "" "Empty credentials (on Credentials tab) is only allowed with Security level " @@ -6048,7 +6435,7 @@ msgstr "Puerto del servidor VNC" msgid "Port of the VNC server." msgstr "Puerto del servidor VNC." -#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:205 +#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:224 #: transports/RDS_enterprise/rds_base.py:136 msgid "Color depth" msgstr "Profundidad de color" @@ -6104,12 +6491,12 @@ msgid "If checked, the connection will be opened in full screen mode" msgstr "Si está marcado, la conexión se abrirá en modo de pantalla completa" #: transports/NICEDCV_enterprise/nicedcv_base.py:66 -#: transports/RDP/rdp_base.py:227 +#: transports/RDP/rdp_base.py:246 msgid "Multiple monitors" msgstr "Varios monitores" #: transports/NICEDCV_enterprise/nicedcv_base.py:69 -#: transports/RDP/rdp_base.py:230 +#: transports/RDP/rdp_base.py:249 msgid "" "If checked, all client monitors will be used for displaying (only works on " "windows clients)" @@ -6165,7 +6552,7 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcvtunnel.py:91 #: transports/NoMachine_enterprise/nomachine_tunneltransport.py:114 -#: transports/RDP/rdptunnel.py:135 transports/RDS_enterprise/rdstunnel.py:126 +#: transports/RDP/rdptunnel.py:136 transports/RDS_enterprise/rdstunnel.py:126 #: transports/SPICE/spice_tunnel.py:107 transports/X2GO/x2go_tunnel.py:116 msgid "Must use HOST:PORT in Tunnel Server Field" msgstr "Debe utilizar HOST: PUERTO en el Campo Servidor de Túnel" @@ -6306,89 +6693,97 @@ msgstr "Habilitar cámara web" msgid "If checked, webcam will be redirected (ONLY Windows)." msgstr "Si está marcado, la cámara web será redirigida (SOLO Windows)." -#: transports/RDP/rdp_base.py:164 transports/RDS_enterprise/rds_base.py:128 +#: transports/RDP/rdp_base.py:164 +msgid "USB redirection" +msgstr "redirección USB" + +#: transports/RDP/rdp_base.py:166 +msgid "USB redirection policy" +msgstr "Política de redirección USB" + +#: transports/RDP/rdp_base.py:183 transports/RDS_enterprise/rds_base.py:128 msgid "Credssp Support" msgstr "Soporte CredSSP" -#: transports/RDP/rdp_base.py:166 transports/RDS_enterprise/rds_base.py:130 +#: transports/RDP/rdp_base.py:185 transports/RDS_enterprise/rds_base.py:130 msgid "If checked, will enable Credentials Provider Support)" msgstr "Si está marcada, permitirá el soporte de proveedor de credenciales)" -#: transports/RDP/rdp_base.py:181 +#: transports/RDP/rdp_base.py:200 msgid "Screen Size" msgstr "Tamaño de pantalla" -#: transports/RDP/rdp_base.py:183 +#: transports/RDP/rdp_base.py:202 msgid "Screen size for this transport" msgstr "Tamaño de la pantalla para este transporte" -#: transports/RDP/rdp_base.py:207 transports/RDS_enterprise/rds_base.py:138 +#: transports/RDP/rdp_base.py:226 transports/RDS_enterprise/rds_base.py:138 msgid "Color depth for this connection" msgstr "Profundidad de color para esta conexión" -#: transports/RDP/rdp_base.py:219 +#: transports/RDP/rdp_base.py:238 msgid "Wallpaper/theme" msgstr "Tema de fondo de pantalla" -#: transports/RDP/rdp_base.py:244 +#: transports/RDP/rdp_base.py:263 msgid "If checked, fonts smoothing will be allowed" msgstr "Si está marcada, se permitirá el suavizado de fuentes" -#: transports/RDP/rdp_base.py:248 +#: transports/RDP/rdp_base.py:267 msgid "Connection Bar" msgstr "Barra de conexión" -#: transports/RDP/rdp_base.py:250 +#: transports/RDP/rdp_base.py:269 msgid "If checked, connection bar will be shown (only on Windows clients)" msgstr "" "Si está marcada, aparecerá barra de conexión (sólo en clientes de Windows)" -#: transports/RDP/rdp_base.py:256 transports/RDS_enterprise/rds_base.py:181 +#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:181 msgid "Multimedia sync" msgstr "Sincronización multimedia" -#: transports/RDP/rdp_base.py:259 transports/RDS_enterprise/rds_base.py:184 +#: transports/RDP/rdp_base.py:278 transports/RDS_enterprise/rds_base.py:184 msgid "If checked. Linux client will use multimedia parameter for xfreerdp" msgstr "" "Si está marcada, el cliente Linux usará el parámetro multimedia para xfreerdp" -#: transports/RDP/rdp_base.py:264 transports/RDS_enterprise/rds_base.py:189 +#: transports/RDP/rdp_base.py:283 transports/RDS_enterprise/rds_base.py:189 msgid "Use Alsa" msgstr "Use ALSA" -#: transports/RDP/rdp_base.py:267 transports/RDS_enterprise/rds_base.py:192 +#: transports/RDP/rdp_base.py:286 transports/RDS_enterprise/rds_base.py:192 msgid "" "If checked, Linux client will try to use ALSA, otherwise Pulse will be used" msgstr "" "Si está marcado, el cliente Linux intentará usar ALSA, en caso contrario " "usará Pulse" -#: transports/RDP/rdp_base.py:272 transports/RDS_enterprise/rds_base.py:197 +#: transports/RDP/rdp_base.py:291 transports/RDS_enterprise/rds_base.py:197 msgid "Printer string" msgstr "Cadena de impresora" -#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:200 +#: transports/RDP/rdp_base.py:294 transports/RDS_enterprise/rds_base.py:200 msgid "If printer is checked, the printer string used with xfreerdp client" msgstr "" "Si la impresora está activada, la cadena de impresora utilizadada con el " "cliente xfreerdp" -#: transports/RDP/rdp_base.py:281 transports/RDS_enterprise/rds_base.py:206 +#: transports/RDP/rdp_base.py:300 transports/RDS_enterprise/rds_base.py:206 msgid "Smartcard string" msgstr "Cadena de tarjeta inteligente" -#: transports/RDP/rdp_base.py:284 transports/RDS_enterprise/rds_base.py:209 +#: transports/RDP/rdp_base.py:303 transports/RDS_enterprise/rds_base.py:209 msgid "If smartcard is checked, the smartcard string used with xfreerdp client" msgstr "" "Si la smartcard está activada, la cadena de smartcard utilizada con el " "cliente xfreerdp" -#: transports/RDP/rdp_base.py:290 transports/RDP/rdp_base.py:310 +#: transports/RDP/rdp_base.py:309 transports/RDP/rdp_base.py:329 #: transports/RDS_enterprise/rds_base.py:215 msgid "Custom parameters" msgstr "Parámetros personalizados" -#: transports/RDP/rdp_base.py:293 transports/RDS_enterprise/rds_base.py:218 +#: transports/RDP/rdp_base.py:312 transports/RDS_enterprise/rds_base.py:218 msgid "" "If not empty, extra parameter to include for Linux Client (for example /usb:" "id,dev:054c:0268, or aything compatible with your xfreerdp client)" @@ -6396,11 +6791,11 @@ msgstr "" "Si no vacía, parámetros extra para el cliente Linux (por ejemplo /usb:id, " "dev:054c:0268, o cualquier cosa compatible con su cliente xfreerdp)" -#: transports/RDP/rdp_base.py:300 +#: transports/RDP/rdp_base.py:319 msgid "Allow Microsoft Rdp Client" msgstr "Permitir cliente Rdp de Microsoft" -#: transports/RDP/rdp_base.py:303 +#: transports/RDP/rdp_base.py:322 msgid "" "If checked, allows use of Microsoft Remote Desktop Client. PASSWORD WILL BE " "PROMPTED!" @@ -6408,7 +6803,7 @@ msgstr "" "Si está marcado, permite el uso de Microsoft Remote Desktop Client. ¡SE " "DEBERÁ INDICAR LA CONTRASEÑA EN EL ACCESO!" -#: transports/RDP/rdp_base.py:313 +#: transports/RDP/rdp_base.py:332 msgid "" "If not empty, extra parameter to include for Mac OS X Freerdp Client (for " "example /usb:id,dev:054c:0268, or aything compatible with your xfreerdp " @@ -6661,73 +7056,73 @@ msgstr "" msgid "Access tried from an unallowed source" msgstr "Acceso intentado desde una fuente no permitida" -#: web/util/authentication.py:155 +#: web/util/authentication.py:158 msgid "Invalid data" msgstr "Datos incorrectos" -#: web/util/configjs.py:170 +#: web/util/configjs.py:163 msgid "Access limited by calendar" msgstr "Acceso limitado por calendario" -#: web/util/configjs.py:226 +#: web/util/configjs.py:222 msgid "Windows client" msgstr "Cliente de Windows" -#: web/util/configjs.py:230 +#: web/util/configjs.py:226 msgid "Mac OS X client" msgstr "Cliente de Mac OS X" -#: web/util/configjs.py:233 +#: web/util/configjs.py:229 msgid "Debian based Linux client" msgstr "Cliente Linux basado en Debian" -#: web/util/configjs.py:235 web/util/configjs.py:243 web/util/configjs.py:263 +#: web/util/configjs.py:231 web/util/configjs.py:239 web/util/configjs.py:259 msgid "(requires Python-3.6 or newer)" msgstr "(requiere Python-3.6 o más reciente)" -#: web/util/configjs.py:241 +#: web/util/configjs.py:237 msgid "RPM based Linux client (Fedora, Suse, ...)" msgstr "Cliente Linux basado en RPM (Fedora, Suse, ...)" -#: web/util/configjs.py:249 +#: web/util/configjs.py:245 msgid "Binary appimage X86_64 Linux client" msgstr "Cliente Linux appimage X86_64 binario" -#: web/util/configjs.py:255 +#: web/util/configjs.py:251 msgid "Binary appimage Raspberry Linux client" msgstr "Cliente de Linux para Raspberry (Portable)" -#: web/util/configjs.py:261 +#: web/util/configjs.py:257 msgid "Generic .tar.gz Linux client" msgstr "Cliente Linux genérico .tar.gz" -#: web/util/errors.py:76 +#: web/util/errors.py:78 msgid "Unknown error" msgstr "Error desconocido" -#: web/util/errors.py:83 +#: web/util/errors.py:85 msgid "Maximum services limit reached. Please, contact administrator" msgstr "" "Número máximo de servicios alcanzado. Por favor, contacte con su " "administrador." -#: web/util/errors.py:84 +#: web/util/errors.py:86 msgid "You need to enable cookies to let this application work" msgstr "Necesita habilitar las cookies para que esta aplicación funcione" -#: web/util/errors.py:86 +#: web/util/errors.py:88 msgid "Authenticator not found" msgstr "Autenticador no encontrado" -#: web/util/errors.py:87 +#: web/util/errors.py:89 msgid "Invalid authenticator" msgstr "Autenticador no válido" -#: web/util/errors.py:88 +#: web/util/errors.py:90 msgid "Invalid request received" msgstr "Solicitud recibida no válida" -#: web/util/errors.py:90 +#: web/util/errors.py:92 msgid "" "Your browser is not supported. Please, upgrade it to a modern HTML5 browser " "like Firefox or Chrome" @@ -6735,11 +7130,11 @@ msgstr "" "Su navegador no es compatible. Por favor, actualice a un navegador HTML5 más " "moderno como Firefox o Chrome" -#: web/util/errors.py:92 +#: web/util/errors.py:94 msgid "The requested service is in maintenance mode" msgstr "El servicio solicitado está en modo de mantenimiento" -#: web/util/errors.py:93 +#: web/util/errors.py:95 msgid "" "The service is not ready.\n" "Please, try again in a few moments." @@ -6747,29 +7142,33 @@ msgstr "" "El servicio no está listo.\n" "Por favor, inténtalo de nuevo en unos momentos." -#: web/util/errors.py:94 +#: web/util/errors.py:96 msgid "Preparing service" msgstr "Preparando servicio" -#: web/util/errors.py:95 +#: web/util/errors.py:97 msgid "Service access denied by calendars" msgstr "Acceso al servicio denegado por calendarios" -#: web/util/errors.py:96 +#: web/util/errors.py:98 msgid "Page not found" msgstr "Página no encontrada" -#: web/util/errors.py:97 +#: web/util/errors.py:99 msgid "Unexpected error" msgstr "Error inesperado" -#: web/util/errors.py:98 +#: web/util/errors.py:100 msgid "" "Reloading this page is not supported. Please, reopen service from origin." msgstr "" "No se admite la recarga de esta página. Por favor, vuelva a abrir el " "servicio desde el origen." +#: web/util/errors.py:101 +msgid "Invalid Multi-Factor Authentication code" +msgstr "Código de autenticación multifactor no válido" + #: web/util/services.py:319 msgid "" "This service is about to be replaced by a new version. Please, close the " @@ -6790,6 +7189,14 @@ msgid "" msgstr "" "Su servicio se está creando (espere unos segundos mientras se completa)." -#: web/views/auth.py:177 +#: web/views/auth.py:189 msgid "Authenticator does not provide information" msgstr "El Autenticador no proporciona información" + +#: web/views/modern.py:269 +msgid "{} days" +msgstr "{} días" + +#: web/views/modern.py:271 +msgid "{} hours" +msgstr "{} horas" diff --git a/server/src/uds/locale/es/LC_MESSAGES/djangojs.po b/server/src/uds/locale/es/LC_MESSAGES/djangojs.po index 76a41f3c..68bd18a6 100644 --- a/server/src/uds/locale/es/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/es/LC_MESSAGES/djangojs.po @@ -20,16 +20,17 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-10 13:33+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:16+0000\n" +"Last-Translator: Víctor Alonso , 2020\n" "Language-Team: Spanish (http://www.transifex.com/openuds/openuds/language/" "es/)\n" "Language: es\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" +"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? " +"1 : 2;\n" #: static/admin/main.js:1 static/admin/translations-fakejs.js:23 #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:12 @@ -42,14 +43,14 @@ msgstr "Principal" #: static/admin/main.js:1 static/admin/translations-fakejs.js:11 #: static/admin/translations-fakejs.js:29 -#: static/admin/translations-fakejs.js:179 -#: static/admin/translations-fakejs.js:191 -#: static/admin/translations-fakejs.js:193 -#: static/admin/translations-fakejs.js:195 -#: static/admin/translations-fakejs.js:197 -#: static/admin/translations-fakejs.js:254 -#: static/admin/translations-fakejs.js:256 -#: static/admin/translations-fakejs.js:258 static/modern/main-es5.js:1 +#: static/admin/translations-fakejs.js:141 +#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:216 +#: static/admin/translations-fakejs.js:218 +#: static/admin/translations-fakejs.js:220 static/modern/main-es5.js:1 #: static/modern/translations-fakejs.js:14 msgid "Error" msgstr "Error" @@ -76,12 +77,12 @@ msgstr "Cargando datos..." #: static/admin/translations-fakejs.js:38 #: static/admin/translations-fakejs.js:40 #: static/admin/translations-fakejs.js:43 -#: static/admin/translations-fakejs.js:134 -#: static/admin/translations-fakejs.js:216 -#: static/admin/translations-fakejs.js:221 -#: static/admin/translations-fakejs.js:253 -#: static/admin/translations-fakejs.js:261 -#: static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:96 +#: static/admin/translations-fakejs.js:178 +#: static/admin/translations-fakejs.js:183 +#: static/admin/translations-fakejs.js:215 +#: static/admin/translations-fakejs.js:223 +#: static/admin/translations-fakejs.js:228 msgid "dismiss" msgstr "cerrar" @@ -98,7 +99,7 @@ msgid "Test passed successfully" msgstr "Test superado con éxito" #: static/admin/main.js:1 static/admin/translations-fakejs.js:37 -#: static/admin/translations-fakejs.js:260 +#: static/admin/translations-fakejs.js:222 msgid "Successfully saved" msgstr "Guardado con éxito" @@ -154,58 +155,58 @@ msgstr "Pool group" msgid "Go to" msgstr "Ir" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:275 msgid "yes" msgstr "sí" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:276 msgid "no" msgstr "no" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:269 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 msgid "Error saving: " msgstr "Error al guardar:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:270 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 msgid "Error saving element" msgstr "Error al guardar el elemento" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:271 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:274 msgid "Error handling your request" msgstr "Error al manejar su solicitud" #: static/admin/main.js:1 static/admin/translations-fakejs.js:56 -#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:115 msgid "Sunday" msgstr "Domingo" #: static/admin/main.js:1 static/admin/translations-fakejs.js:57 -#: static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:116 msgid "Monday" msgstr "Lunes" #: static/admin/main.js:1 static/admin/translations-fakejs.js:58 -#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:117 msgid "Tuesday" msgstr "Martes" #: static/admin/main.js:1 static/admin/translations-fakejs.js:59 -#: static/admin/translations-fakejs.js:156 +#: static/admin/translations-fakejs.js:118 msgid "Wednesday" msgstr "Miércoles" #: static/admin/main.js:1 static/admin/translations-fakejs.js:60 -#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:119 msgid "Thursday" msgstr "Jueves" #: static/admin/main.js:1 static/admin/translations-fakejs.js:61 -#: static/admin/translations-fakejs.js:158 +#: static/admin/translations-fakejs.js:120 msgid "Friday" msgstr "Viernes" #: static/admin/main.js:1 static/admin/translations-fakejs.js:62 -#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:121 msgid "Saturday" msgstr "Sábado" @@ -277,20 +278,20 @@ msgstr "#SERVICES_NUMBER# servicios de usuario" msgid "#RESTRAINED_NUMBER# restrained services!" msgstr "#RESTRAINED_NUMBER# servicios restringidos" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 -#: static/admin/translations-fakejs.js:249 -#: static/admin/translations-fakejs.js:402 -#: static/admin/translations-fakejs.js:454 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:211 +#: static/admin/translations-fakejs.js:265 +#: static/admin/translations-fakejs.js:366 +#: static/admin/translations-fakejs.js:418 msgid "Assigned services" msgstr "Servicios Asignados" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 msgid "Services in use" msgstr "Servicios en uso" #: static/admin/main.js:1 static/admin/translations-fakejs.js:21 -#: static/admin/translations-fakejs.js:292 -#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:303 #: static/modern/translations-fakejs.js:30 msgid "Filter" msgstr "Filtro" @@ -308,25 +309,25 @@ msgid "Full Access" msgstr "Acceso completo" #: static/admin/main.js:1 static/admin/translations-fakejs.js:15 -#: static/admin/translations-fakejs.js:362 -#: static/admin/translations-fakejs.js:409 -#: static/admin/translations-fakejs.js:414 +#: static/admin/translations-fakejs.js:373 +#: static/admin/translations-fakejs.js:378 +#: static/admin/translations-fakejs.js:489 msgid "User" msgstr "Usuario" #: static/admin/main.js:1 static/admin/translations-fakejs.js:16 -#: static/admin/translations-fakejs.js:83 -#: static/admin/translations-fakejs.js:93 -#: static/admin/translations-fakejs.js:427 -#: static/admin/translations-fakejs.js:448 +#: static/admin/translations-fakejs.js:243 +#: static/admin/translations-fakejs.js:253 +#: static/admin/translations-fakejs.js:391 +#: static/admin/translations-fakejs.js:412 msgid "Group" msgstr "Grupo" #: static/admin/main.js:1 static/admin/translations-fakejs.js:17 -#: static/admin/translations-fakejs.js:408 -#: static/admin/translations-fakejs.js:413 -#: static/admin/translations-fakejs.js:426 -#: static/admin/translations-fakejs.js:447 +#: static/admin/translations-fakejs.js:372 +#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:390 +#: static/admin/translations-fakejs.js:411 #: static/modern/translations-fakejs.js:72 msgid "Authenticator" msgstr "Autenticador" @@ -343,89 +344,89 @@ msgstr "Eliminar" msgid "Confirm revokation of permission" msgstr "Confirmar revocación de permiso" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:238 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 msgid "Maintenance" msgstr "Mantenimiento" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 msgid "Exit maintenance mode" msgstr "Salir del modo de mantenimiento" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 msgid "Enter maintenance mode" msgstr "Entrar en modo de mantenimiento" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 msgid "New provider" msgstr "Nuevo proveedor" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 msgid "Edit provider" msgstr "Editar proveedor" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:243 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 msgid "Delete provider" msgstr "Eliminar proveedor" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 msgid "Exit maintenance mode?" msgstr "¿Salir del modo de mantenimiento?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 msgid "Enter maintenance mode?" msgstr "¿Entrar en modo de mantenimiento?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 msgid "Maintenance mode for" msgstr "Modo de mantenimiento para" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 -#: static/admin/translations-fakejs.js:247 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:209 +#: static/admin/translations-fakejs.js:232 msgid "In Maintenance" msgstr "En mantenimiento" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 -#: static/admin/translations-fakejs.js:248 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/translations-fakejs.js:233 msgid "Active" msgstr "Activo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 -#: static/admin/translations-fakejs.js:95 -#: static/admin/translations-fakejs.js:229 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:191 +#: static/admin/translations-fakejs.js:236 +#: static/admin/translations-fakejs.js:255 msgid "Pool" msgstr "Pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 -#: static/admin/translations-fakejs.js:96 -#: static/admin/translations-fakejs.js:230 -#: static/admin/translations-fakejs.js:343 -#: static/admin/translations-fakejs.js:355 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 +#: static/admin/translations-fakejs.js:237 +#: static/admin/translations-fakejs.js:256 +#: static/admin/translations-fakejs.js:470 +#: static/admin/translations-fakejs.js:482 msgid "State" msgstr "Estado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 -#: static/admin/translations-fakejs.js:97 -#: static/admin/translations-fakejs.js:231 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:193 +#: static/admin/translations-fakejs.js:238 +#: static/admin/translations-fakejs.js:257 msgid "User Services" msgstr "Servicios de usuario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 -#: static/admin/translations-fakejs.js:232 -#: static/admin/translations-fakejs.js:321 -#: static/admin/translations-fakejs.js:401 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:194 +#: static/admin/translations-fakejs.js:248 +#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:365 msgid "Service pools" msgstr "Pools de servicio" #: static/admin/main.js:1 static/admin/translations-fakejs.js:3 #: static/admin/translations-fakejs.js:7 -#: static/admin/translations-fakejs.js:308 +#: static/admin/translations-fakejs.js:311 #: static/modern/translations-fakejs.js:44 msgid "Yes" msgstr "Sí" #: static/admin/main.js:1 static/admin/translations-fakejs.js:4 #: static/admin/translations-fakejs.js:8 -#: static/admin/translations-fakejs.js:309 +#: static/admin/translations-fakejs.js:312 #: static/modern/translations-fakejs.js:45 msgid "No" msgstr "No" @@ -438,594 +439,597 @@ msgstr "(oculto)" msgid "Selected items :" msgstr "Elementos seleccionados:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 -#: static/admin/translations-fakejs.js:233 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:195 +#: static/admin/translations-fakejs.js:231 #: static/modern/translations-fakejs.js:35 msgid "Information" msgstr "Información" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 msgid "New service" msgstr "Nuevo servicio" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:197 msgid "Edit service" msgstr "Editar servicio" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:236 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 msgid "Delete service" msgstr "Eliminar servicio" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:237 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 msgid "Delete user service" msgstr "Eliminar servicio de usuario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:269 msgid "New Authenticator" msgstr "Nuevo Autenticador" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:267 +#: static/admin/translations-fakejs.js:270 msgid "Edit Authenticator" msgstr "Editar Autentificador" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/translations-fakejs.js:271 msgid "Delete Authenticator" msgstr "Eliminar Autenticador" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 msgid "Any" msgstr "Cualquiera" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 msgid "All" msgstr "Todos" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 -#: static/admin/translations-fakejs.js:94 -#: static/admin/translations-fakejs.js:342 -#: static/admin/translations-fakejs.js:354 -#: static/admin/translations-fakejs.js:379 -#: static/admin/translations-fakejs.js:435 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/translations-fakejs.js:254 +#: static/admin/translations-fakejs.js:343 +#: static/admin/translations-fakejs.js:399 +#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:481 msgid "Comments" msgstr "Comentarios" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:258 msgid "Unique ID" msgstr "ID único" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 msgid "Friendly Name" msgstr "Nombre descriptivo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:260 msgid "In Use" msgstr "En uso" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:261 msgid "IP" msgstr "IP" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 msgid "Services Pool" msgstr "Pool de Servicios" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 -#: static/admin/translations-fakejs.js:103 -#: static/admin/translations-fakejs.js:287 -#: static/admin/translations-fakejs.js:323 -#: static/admin/translations-fakejs.js:337 -#: static/admin/translations-fakejs.js:363 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/translations-fakejs.js:263 +#: static/admin/translations-fakejs.js:290 +#: static/admin/translations-fakejs.js:328 #: static/admin/translations-fakejs.js:367 -#: static/admin/translations-fakejs.js:373 -#: static/admin/translations-fakejs.js:403 -#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:494 msgid "Groups" msgstr "Grupos" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 -#: static/admin/translations-fakejs.js:335 -#: static/admin/translations-fakejs.js:368 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/translations-fakejs.js:462 +#: static/admin/translations-fakejs.js:495 msgid "Services Pools" msgstr "Pools de Servicios" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 -#: static/admin/translations-fakejs.js:378 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/translations-fakejs.js:342 msgid "Name" msgstr "Nombre" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 msgid "Real Name" msgstr "Nombre Real" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 msgid "state" msgstr "Estado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 msgid "Last access" msgstr "Ultimo acceso" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 -#: static/admin/translations-fakejs.js:286 -#: static/admin/translations-fakejs.js:336 -#: static/admin/translations-fakejs.js:372 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:249 +#: static/admin/translations-fakejs.js:289 +#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:463 msgid "Users" msgstr "Usuarios" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 -#: static/admin/translations-fakejs.js:344 -#: static/admin/translations-fakejs.js:356 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:483 msgid "Enabled" msgstr "Habilitado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 -#: static/admin/translations-fakejs.js:345 -#: static/admin/translations-fakejs.js:357 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:484 msgid "Disabled" msgstr "Deshabilitado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 -#: static/admin/translations-fakejs.js:358 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:247 +#: static/admin/translations-fakejs.js:485 msgid "Blocked" msgstr "Bloqueado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 msgid "Delete user" msgstr "Eliminar usuario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 msgid "Delete group" msgstr "Borrar grupo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 msgid "New OS Manager" msgstr "Nuevo OS Manager" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 msgid "Edit OS Manager" msgstr "Editar OS Manager" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 msgid "Delete OS Manager" msgstr "Eliminar OS Manager" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:120 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 msgid "New Transport" msgstr "Nuevo Transporte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:121 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:83 msgid "Edit Transport" msgstr "Editar Transporte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 msgid "Delete Transport" msgstr "Eliminar Transporte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 msgid "New Network" msgstr "Nueva Red" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:115 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 msgid "Edit Network" msgstr "Editar Red" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:116 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 msgid "Delete Network" msgstr "Eliminar Red" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:117 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 msgid "New Proxy" msgstr "Nuevo Proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:118 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 msgid "Edit Proxy" msgstr "Editar Proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:119 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 msgid "Delete Proxy" msgstr "Eliminar Proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:223 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 msgid "(This service does not requires an OS Manager)" msgstr "(Este servicio no requiere de un OS Manager)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 msgid "New service Pool" msgstr "Nuevo Pool de Servicios" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 msgid "Publish on creation" msgstr "Publicar en la creación" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 msgid "If selected, will initiate the publication inmediatly after creation" msgstr "" "Si se selecciona, se iniciará la publicación inmediatamente después de la " "creación" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 msgid "Edit Service Pool" msgstr "Editar Pool de Servicios" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:228 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 msgid "Delete service pool" msgstr "Eliminar Pool de Servicios" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 -#: static/admin/translations-fakejs.js:194 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:156 msgid "Please, select a valid user" msgstr "Por favor, seleccione un usuario válido" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:158 msgid "Please, select a valid group" msgstr "Por favor, seleccione un grupo válido" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 msgid "Please, select a valid transport" msgstr "Por favor, seleccione un transporte válido" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 msgid "Assigned" msgstr "Asignado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 msgid "Cached" msgstr "En caché" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 msgid "In use" msgstr "En uso" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 -#: static/admin/translations-fakejs.js:290 -#: static/admin/translations-fakejs.js:374 -#: static/admin/translations-fakejs.js:405 -#: static/admin/translations-fakejs.js:462 -#: static/admin/translations-fakejs.js:465 -#: static/admin/translations-fakejs.js:470 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/translations-fakejs.js:293 +#: static/admin/translations-fakejs.js:369 +#: static/admin/translations-fakejs.js:426 +#: static/admin/translations-fakejs.js:429 +#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:460 msgid "Logs" msgstr "Logs" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 msgid "VNC" msgstr "VNC" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 msgid "Launch now" msgstr "Lanzar ahora" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 msgid "Change owner" msgstr "Cambiar propietario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 msgid "Assign service" msgstr "Servicios asignados" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 -#: static/admin/translations-fakejs.js:277 -#: static/admin/translations-fakejs.js:283 -#: static/admin/translations-fakejs.js:349 -#: static/admin/translations-fakejs.js:364 -#: static/admin/translations-fakejs.js:390 -#: static/admin/translations-fakejs.js:398 -#: static/admin/translations-fakejs.js:410 -#: static/admin/translations-fakejs.js:415 -#: static/admin/translations-fakejs.js:423 -#: static/admin/translations-fakejs.js:428 -#: static/admin/translations-fakejs.js:432 -#: static/admin/translations-fakejs.js:436 -#: static/admin/translations-fakejs.js:449 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/translations-fakejs.js:280 +#: static/admin/translations-fakejs.js:286 +#: static/admin/translations-fakejs.js:354 +#: static/admin/translations-fakejs.js:362 +#: static/admin/translations-fakejs.js:374 +#: static/admin/translations-fakejs.js:379 +#: static/admin/translations-fakejs.js:387 +#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:400 +#: static/admin/translations-fakejs.js:413 +#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:476 #: static/admin/translations-fakejs.js:491 msgid "Cancel" msgstr "Cancelar" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 msgid "Changelog" msgstr "Registro de cambios" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 -#: static/admin/translations-fakejs.js:209 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/translations-fakejs.js:171 msgid "Delete assigned service" msgstr "Eliminar servicio asignado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 msgid "Delete cached service" msgstr "Eliminar servicio en caché" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:183 -#: static/admin/translations-fakejs.js:211 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/translations-fakejs.js:173 msgid "Delete assigned group" msgstr "Eliminar grupo asignado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 msgid "Delete assigned transport" msgstr "Eliminar transporte asignado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 msgid "Publication" msgstr "Publicación" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 msgid "Cancel publication?" msgstr "¿Cancelar la publicación?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:215 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 msgid "Publication canceled" msgstr "Publicación cancelada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:179 msgid "Delete scheduled action" msgstr "Eliminar acción programada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:218 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 msgid "Execute scheduled action" msgstr "Ejecutar acción programada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 msgid "Execute scheduled action right now?" msgstr "¿Ejecutar la acción programada ahora?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:220 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 msgid "Scheduled action executed" msgstr "Acción programada ejecutada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:184 -#: static/admin/translations-fakejs.js:222 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/translations-fakejs.js:184 msgid "Delete calendar access rule" msgstr "Eliminar regla de acceso al calendario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 msgid "New meta pool" msgstr "Nuevo meta pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 msgid "Edit meta pool" msgstr "Editar meta pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 msgid "Delete meta pool" msgstr "Eliminar meta pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 msgid "Please, select a valid service pool" msgstr "Por favor, seleccione un pool de servicios válido" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 msgid "Remove member pool" msgstr "Eliminar miembro del pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 msgid "New pool group" msgstr "Nuevo grupo de Service Pools" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 msgid "Edit pool group" msgstr "Editar grupo de Service Pools" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 msgid "Delete pool group" msgstr "Eliminar grupo de Service Pools" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 msgid "New calendar" msgstr "Nuevo calendario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 msgid "Edit calendar" msgstr "Editar calendario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:178 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 msgid "Delete calendar" msgstr "Eliminar calendario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 msgid "day" msgstr "día" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 msgid "days" msgstr "días" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 msgid "Daily" msgstr "Diario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 msgid "week" msgstr "semana" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 msgid "weeks" msgstr "semanas" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:141 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:103 msgid "Weekly" msgstr "Semanal" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 msgid "month" msgstr "mes" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 msgid "months" msgstr "meses" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 msgid "Monthly" msgstr "Mensual" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 msgid "year" msgstr "año" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 msgid "years" msgstr "años" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 msgid "Yearly" msgstr "Anual" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 -#: static/admin/translations-fakejs.js:387 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/translations-fakejs.js:351 msgid "Weekdays" msgstr "Días de la semana" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 msgid "Minutes" msgstr "Minutos" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 msgid "Hours" msgstr "Horas" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 msgid "Days" msgstr "Días" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 msgid "Weeks" msgstr "Semanas" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 msgid "(no days)" msgstr "(sin días)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 msgid "Forever" msgstr "Siempre" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 msgid "Start date/time" msgstr "Fecha/hora de inicio" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 msgid "End date" msgstr "Fecha fin" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 msgid "Interval" msgstr "Intervalo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 msgid "Week days" msgstr "Dias de la semana" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 msgid "Invalid or incomplete rule. Please, fix field $FIELD" msgstr "Regla inválida o incompleta. Por favor, revisa el campo $FIELD" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 msgid "This rule will be valid every" msgstr "Esta regla será válida cada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 msgid "of any week" msgstr "de cualquier semana" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 msgid "from" msgstr "Desde el" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 msgid "until" msgstr "Hasta el" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:171 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 msgid "onwards" msgstr "en adelante" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:134 msgid "starting at" msgstr "comenzando a las" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:173 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 msgid "and every event will be active for" msgstr "y cada evento estará activo para" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 msgid "with no duration" msgstr "sin duración" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 msgid "Delete calendar rule" msgstr "Eliminar regla de calendario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 msgid "Set time mark" msgstr "Establecer marca de tiempo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 msgid "New account" msgstr "Nuevo contador" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 msgid "Edit account" msgstr "Editar contador" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 msgid "Delete account" msgstr "Borrar contador" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:93 msgid "Time mark" msgstr "Marca de tiempo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:94 msgid "Set time mark for $NAME to current date/time?" msgstr "¿Establecer marca de tiempo para $NAME a la fecha/hora actual?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:95 msgid "Time mark stablished" msgstr "Marca de tiempo establecida" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:97 msgid "No time mark" msgstr "Sin marca de tiempo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 msgid "Delete account usage" msgstr "Eliminar uso de la cuenta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:255 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 msgid "Image is too big (max. upload size is 256Kb)" msgstr "La imagen es demasiado grande (el tamaño máximo es de 256Kb)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:257 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 msgid "Invalid image type (only supports JPEG, PNG and GIF" msgstr "Tipo de imagen no válido (solo soporta JPEG, PNG y GIF)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:221 msgid "Please, provide a name and a image" msgstr "Por favor, proporcione un nombre y una imagen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 msgid "Delete image" msgstr "Eliminar Imagen" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:263 -#: static/admin/translations-fakejs.js:267 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/translations-fakejs.js:229 msgid "Generate report" msgstr "Generar informe" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 msgid "Generating report..." msgstr "Generando informe..." -#: static/admin/main.js:1 static/admin/translations-fakejs.js:265 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 msgid "Report finished" msgstr "Informe terminado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 msgid "Configuration saved" msgstr "Configuración guardada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 msgid "Delete actor token - USE WITH EXTREME CAUTION!!!" msgstr "Eliminar token de actor - ¡USAR CON EXTREMA PRECAUCIÓN!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:230 msgid "Delete tunnel token - USE WITH EXTREME CAUTION!!!" msgstr "Elimine el token del túnel: ¡UTILICE CON EXTREMA PRECAUCIÓN!" @@ -1041,471 +1045,427 @@ msgstr "Entradas por página" msgid ", (%i more items)" msgstr ", (%i más artículos)" -#: static/admin/translations-fakejs.js:275 +#: static/admin/translations-fakejs.js:278 msgid "Remove all" msgstr "Eliminar todo" -#: static/admin/translations-fakejs.js:276 +#: static/admin/translations-fakejs.js:279 msgid "Add" msgstr "Añadir" -#: static/admin/translations-fakejs.js:278 -#: static/admin/translations-fakejs.js:284 -#: static/admin/translations-fakejs.js:289 -#: static/admin/translations-fakejs.js:338 -#: static/admin/translations-fakejs.js:350 -#: static/admin/translations-fakejs.js:365 -#: static/admin/translations-fakejs.js:370 -#: static/admin/translations-fakejs.js:391 -#: static/admin/translations-fakejs.js:399 -#: static/admin/translations-fakejs.js:411 +#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:287 +#: static/admin/translations-fakejs.js:292 +#: static/admin/translations-fakejs.js:355 +#: static/admin/translations-fakejs.js:363 +#: static/admin/translations-fakejs.js:375 +#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:401 +#: static/admin/translations-fakejs.js:403 +#: static/admin/translations-fakejs.js:414 #: static/admin/translations-fakejs.js:416 -#: static/admin/translations-fakejs.js:424 -#: static/admin/translations-fakejs.js:429 -#: static/admin/translations-fakejs.js:433 -#: static/admin/translations-fakejs.js:437 -#: static/admin/translations-fakejs.js:439 -#: static/admin/translations-fakejs.js:450 -#: static/admin/translations-fakejs.js:452 -#: static/admin/translations-fakejs.js:466 +#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:465 +#: static/admin/translations-fakejs.js:477 #: static/admin/translations-fakejs.js:492 +#: static/admin/translations-fakejs.js:497 msgid "Ok" msgstr "Ok" -#: static/admin/translations-fakejs.js:279 +#: static/admin/translations-fakejs.js:282 msgid "Discard & close" msgstr "Descartar y cerrar" -#: static/admin/translations-fakejs.js:280 -#: static/admin/translations-fakejs.js:484 +#: static/admin/translations-fakejs.js:283 +#: static/admin/translations-fakejs.js:448 msgid "Save" msgstr "Guardar" -#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:284 msgid "New user permission for" msgstr "Nuevo permiso de usuario para" -#: static/admin/translations-fakejs.js:282 +#: static/admin/translations-fakejs.js:285 msgid "New group permission for" msgstr "Nuevo permiso de grupo para" -#: static/admin/translations-fakejs.js:285 +#: static/admin/translations-fakejs.js:288 msgid "Permissions for" msgstr "Permisos para" -#: static/admin/translations-fakejs.js:288 +#: static/admin/translations-fakejs.js:291 msgid "New permission..." msgstr "Nuevo permiso..." -#: static/admin/translations-fakejs.js:291 -#: static/admin/translations-fakejs.js:298 +#: static/admin/translations-fakejs.js:294 +#: static/admin/translations-fakejs.js:301 msgid "Export" msgstr "Exportar" -#: static/admin/translations-fakejs.js:293 -#: static/admin/translations-fakejs.js:294 -#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:296 +#: static/admin/translations-fakejs.js:297 +#: static/admin/translations-fakejs.js:298 msgid "New" msgstr "Nuevo" -#: static/admin/translations-fakejs.js:296 -#: static/admin/translations-fakejs.js:304 +#: static/admin/translations-fakejs.js:299 +#: static/admin/translations-fakejs.js:307 msgid "Edit" msgstr "Editar" -#: static/admin/translations-fakejs.js:297 -#: static/admin/translations-fakejs.js:305 +#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:308 msgid "Permissions" msgstr "Permisos" -#: static/admin/translations-fakejs.js:299 -#: static/admin/translations-fakejs.js:306 +#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:309 msgid "Delete" msgstr "Borrar" -#: static/admin/translations-fakejs.js:301 +#: static/admin/translations-fakejs.js:304 msgid "Selected items" msgstr "Elementos seleccionados" -#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:305 msgid "Copy" msgstr "Copiar" -#: static/admin/translations-fakejs.js:303 +#: static/admin/translations-fakejs.js:306 msgid "Detail" msgstr "Detalles" -#: static/admin/translations-fakejs.js:307 +#: static/admin/translations-fakejs.js:310 #: static/modern/translations-fakejs.js:43 msgid "Close" msgstr "Cerrar" -#: static/admin/translations-fakejs.js:310 +#: static/admin/translations-fakejs.js:313 msgid "User mode" msgstr "Modo de usuario" -#: static/admin/translations-fakejs.js:311 +#: static/admin/translations-fakejs.js:314 #: static/modern/translations-fakejs.js:48 msgid "Logout" msgstr "Cerrar sesión" -#: static/admin/translations-fakejs.js:312 -#: static/admin/translations-fakejs.js:371 -#: static/admin/translations-fakejs.js:389 -#: static/admin/translations-fakejs.js:400 -#: static/admin/translations-fakejs.js:453 -#: static/admin/translations-fakejs.js:467 +#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:353 +#: static/admin/translations-fakejs.js:364 +#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:431 +#: static/admin/translations-fakejs.js:457 msgid "Summary" msgstr "Resumen" -#: static/admin/translations-fakejs.js:313 -#: static/admin/translations-fakejs.js:468 +#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:432 msgid "Services" msgstr "Servicios" -#: static/admin/translations-fakejs.js:314 +#: static/admin/translations-fakejs.js:317 +msgid "Authentication" +msgstr "Autenticación" + +#: static/admin/translations-fakejs.js:318 msgid "Authenticators" msgstr "Autenticadores" -#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:319 +msgid "Multi Factor" +msgstr "multifactor" + +#: static/admin/translations-fakejs.js:320 msgid "Os Managers" msgstr "OS Managers" -#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:321 msgid "Connectivity" msgstr "Conectividad" -#: static/admin/translations-fakejs.js:317 -#: static/admin/translations-fakejs.js:457 +#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:421 #: static/modern/translations-fakejs.js:39 msgid "Transports" msgstr "Transportes" -#: static/admin/translations-fakejs.js:318 +#: static/admin/translations-fakejs.js:323 #: static/modern/translations-fakejs.js:41 msgid "Networks" msgstr "Redes" -#: static/admin/translations-fakejs.js:319 +#: static/admin/translations-fakejs.js:324 msgid "Proxies" msgstr "Proxies" -#: static/admin/translations-fakejs.js:320 +#: static/admin/translations-fakejs.js:325 msgid "Pools" msgstr "Pools" -#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:327 msgid "Meta pools" msgstr "Meta pools" -#: static/admin/translations-fakejs.js:324 +#: static/admin/translations-fakejs.js:329 msgid "Calendars" msgstr "Calendarios" -#: static/admin/translations-fakejs.js:325 +#: static/admin/translations-fakejs.js:330 msgid "Accounts" msgstr "Contadores" -#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:331 msgid "Tools" msgstr "Herramientas" -#: static/admin/translations-fakejs.js:327 +#: static/admin/translations-fakejs.js:332 msgid "Gallery" msgstr "Galería" -#: static/admin/translations-fakejs.js:328 +#: static/admin/translations-fakejs.js:333 msgid "Reports" msgstr "Informes" -#: static/admin/translations-fakejs.js:329 +#: static/admin/translations-fakejs.js:334 msgid "Tokens" msgstr "Tokens" -#: static/admin/translations-fakejs.js:330 +#: static/admin/translations-fakejs.js:335 msgid "Actor" msgstr "Actor" -#: static/admin/translations-fakejs.js:331 +#: static/admin/translations-fakejs.js:336 msgid "Tunnel" msgstr "Túnel" -#: static/admin/translations-fakejs.js:332 +#: static/admin/translations-fakejs.js:337 msgid "Configuration" msgstr "Configuración" -#: static/admin/translations-fakejs.js:333 +#: static/admin/translations-fakejs.js:338 msgid "Flush Cache" msgstr "Vaciar caché" -#: static/admin/translations-fakejs.js:334 -#: static/admin/translations-fakejs.js:366 -#: static/admin/translations-fakejs.js:463 -msgid "Information for" -msgstr "Información para" - #: static/admin/translations-fakejs.js:339 -msgid "Edit group" -msgstr "Editar grupo" - -#: static/admin/translations-fakejs.js:340 -msgid "New group" -msgstr "Nuevo grupo" - -#: static/admin/translations-fakejs.js:341 -msgid "Meta group name" -msgstr "Nombre del meta grupo" - -#: static/admin/translations-fakejs.js:346 -msgid "Service Pools" -msgstr "Service Pool" - -#: static/admin/translations-fakejs.js:347 -msgid "Match mode" -msgstr "Modo de coincidencia" - -#: static/admin/translations-fakejs.js:348 -msgid "Selected Groups" -msgstr "Grupos seleccionados" - -#: static/admin/translations-fakejs.js:351 -msgid "Edit user" -msgstr "Editar usuario" - -#: static/admin/translations-fakejs.js:352 -msgid "New user" -msgstr "Nuevo usuario" - -#: static/admin/translations-fakejs.js:353 -msgid "Real name" -msgstr "Nombre real" - -#: static/admin/translations-fakejs.js:359 -msgid "Role" -msgstr "Rol" - -#: static/admin/translations-fakejs.js:360 -msgid "Admin" -msgstr "Admin" - -#: static/admin/translations-fakejs.js:361 -msgid "Staff member" -msgstr "Miembro del personal" - -#: static/admin/translations-fakejs.js:369 -msgid "Assigned Services" -msgstr "Servicios Asignados" - -#: static/admin/translations-fakejs.js:375 msgid "Account usage" msgstr "Uso de la cuenta" -#: static/admin/translations-fakejs.js:376 +#: static/admin/translations-fakejs.js:340 msgid "Edit rule" msgstr "Editar regla" -#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:341 msgid "New rule" msgstr "Nueva regla" -#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:344 msgid "Event" msgstr "Evento" -#: static/admin/translations-fakejs.js:381 +#: static/admin/translations-fakejs.js:345 msgid "Start time" msgstr "Hora de inicio" -#: static/admin/translations-fakejs.js:382 +#: static/admin/translations-fakejs.js:346 msgid "Duration" msgstr "Duración" -#: static/admin/translations-fakejs.js:383 +#: static/admin/translations-fakejs.js:347 msgid "Duration units" msgstr "Unidades de duración" -#: static/admin/translations-fakejs.js:384 +#: static/admin/translations-fakejs.js:348 msgid "Start date" msgstr "Fecha de inicio" -#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:349 msgid "Repeat until date" msgstr "Repetir hasta la fecha" -#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:350 msgid "Frequency" msgstr "Frecuencia" -#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:352 msgid "Repeat every" msgstr "Repite cada" -#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:356 msgid "Rules" msgstr "Reglas" -#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:357 msgid "New member pool" msgstr "Nuevo miembro en el pool" -#: static/admin/translations-fakejs.js:394 +#: static/admin/translations-fakejs.js:358 msgid "Edit member pool" msgstr "Editar miembros en el pool" -#: static/admin/translations-fakejs.js:395 -#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:359 +#: static/admin/translations-fakejs.js:384 msgid "Priority" msgstr "Prioridad" -#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:360 msgid "Service pool" msgstr "Service pool" -#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:361 msgid "Enabled?" msgstr "¿Habilitado?" -#: static/admin/translations-fakejs.js:404 -#: static/admin/translations-fakejs.js:460 +#: static/admin/translations-fakejs.js:368 +#: static/admin/translations-fakejs.js:424 msgid "Access calendars" msgstr "Calendarios de acceso" -#: static/admin/translations-fakejs.js:406 +#: static/admin/translations-fakejs.js:370 msgid "Assign service to user manually" msgstr "Asignar servicio al usuario manualmente" -#: static/admin/translations-fakejs.js:407 +#: static/admin/translations-fakejs.js:371 msgid "Service" msgstr "Servicio" -#: static/admin/translations-fakejs.js:412 +#: static/admin/translations-fakejs.js:376 msgid "Change owner of assigned service" msgstr "Cambiar propietario del servicio asignado" -#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:381 msgid "New access rule for" msgstr "Nueva regla de acceso para" -#: static/admin/translations-fakejs.js:418 +#: static/admin/translations-fakejs.js:382 msgid "Edit access rule for" msgstr "Editar regla de acceso para" -#: static/admin/translations-fakejs.js:419 +#: static/admin/translations-fakejs.js:383 msgid "Default fallback access for" msgstr "Acceso de reserva predeterminado para" -#: static/admin/translations-fakejs.js:421 -#: static/admin/translations-fakejs.js:442 +#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:406 msgid "Calendar" msgstr "Calendario" -#: static/admin/translations-fakejs.js:422 -#: static/admin/translations-fakejs.js:445 +#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:409 msgid "Action" msgstr "Acción" -#: static/admin/translations-fakejs.js:425 +#: static/admin/translations-fakejs.js:389 msgid "New group for" msgstr "Nuevo grupo para" -#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:394 msgid "New transport for" msgstr "Nuevo transporte para" -#: static/admin/translations-fakejs.js:431 -#: static/admin/translations-fakejs.js:446 +#: static/admin/translations-fakejs.js:395 +#: static/admin/translations-fakejs.js:410 msgid "Transport" msgstr "Transporte" -#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:398 msgid "New publication for" msgstr "Nueva publicación para" -#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:402 msgid "Changelog of" msgstr "Registro de cambios de" -#: static/admin/translations-fakejs.js:440 +#: static/admin/translations-fakejs.js:404 msgid "Edit action for" msgstr "Editar acción para" -#: static/admin/translations-fakejs.js:441 +#: static/admin/translations-fakejs.js:405 msgid "New action for" msgstr "Nueva accion para" -#: static/admin/translations-fakejs.js:443 +#: static/admin/translations-fakejs.js:407 msgid "Events offset (minutes)" msgstr "Eventos compensados (minutos)" -#: static/admin/translations-fakejs.js:444 +#: static/admin/translations-fakejs.js:408 msgid "At the beginning of the interval?" msgstr "¿Al principio del intervalo?" -#: static/admin/translations-fakejs.js:451 +#: static/admin/translations-fakejs.js:415 msgid "Logs of" msgstr "Registros de" -#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:419 msgid "Cache" msgstr "Caché" -#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:422 msgid "Publications" msgstr "Publicaciones" -#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:423 msgid "Scheduled actions" msgstr "Acciones programadas" -#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:425 msgid "Charts" msgstr "Gráficos" -#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:427 +#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:493 +msgid "Information for" +msgstr "Información para" + +#: static/admin/translations-fakejs.js:428 msgid "Services pools" msgstr "Services pools" -#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:433 msgid "Usage" msgstr "Uso" -#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:435 #: static/modern/translations-fakejs.js:46 msgid "Dashboard" msgstr "Panel de control" -#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:436 msgid "View authenticators" msgstr "Ver autenticadores" -#: static/admin/translations-fakejs.js:473 -#: static/admin/translations-fakejs.js:474 -#: static/admin/translations-fakejs.js:475 +#: static/admin/translations-fakejs.js:437 +#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:439 msgid "View service pools" msgstr "Ver service pools" -#: static/admin/translations-fakejs.js:476 +#: static/admin/translations-fakejs.js:440 msgid "Assigned services chart" msgstr "Gráfico de servicios asignados" -#: static/admin/translations-fakejs.js:477 +#: static/admin/translations-fakejs.js:441 msgid "In use services chart" msgstr "Gráfico de servicios en uso" -#: static/admin/translations-fakejs.js:478 +#: static/admin/translations-fakejs.js:442 msgid "UDS Administration" msgstr "Administración de UDS" -#: static/admin/translations-fakejs.js:479 +#: static/admin/translations-fakejs.js:443 msgid "You are accessing UDS Administration as staff member." msgstr "" "Usted está accediendo al Panel de control de UDS como miembro del personal." -#: static/admin/translations-fakejs.js:480 +#: static/admin/translations-fakejs.js:444 msgid "This means that you have restricted access to elements." msgstr "Esto significa que tienes acceso restringido a los elementos." -#: static/admin/translations-fakejs.js:481 +#: static/admin/translations-fakejs.js:445 msgid "" "In order to increase your access privileges, please contact your local UDS " "administrator." @@ -1513,38 +1473,90 @@ msgstr "" "Para aumentar sus privilegios de acceso, comuníquese con su administrador de " "UDS." -#: static/admin/translations-fakejs.js:482 +#: static/admin/translations-fakejs.js:446 msgid "Thank you." msgstr "Gracias." -#: static/admin/translations-fakejs.js:483 +#: static/admin/translations-fakejs.js:447 msgid "UDS Configuration" msgstr "Configuración UDS" -#: static/admin/translations-fakejs.js:485 +#: static/admin/translations-fakejs.js:449 msgid "New image for" msgstr "Nueva imagen para" -#: static/admin/translations-fakejs.js:486 +#: static/admin/translations-fakejs.js:450 msgid "Edit for" msgstr "Editar para" -#: static/admin/translations-fakejs.js:487 +#: static/admin/translations-fakejs.js:451 msgid "Image name" msgstr "Nombre de la imágen" -#: static/admin/translations-fakejs.js:488 +#: static/admin/translations-fakejs.js:452 msgid "Image (click to change)" msgstr "Imagen (click para cambiar)" -#: static/admin/translations-fakejs.js:489 +#: static/admin/translations-fakejs.js:453 msgid "For optimal results, use " msgstr "Para obtener resultados óptimos, use" -#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:454 msgid "The image will be resized on upload to" msgstr "La imagen se redimensionará al subir a" +#: static/admin/translations-fakejs.js:466 +msgid "Edit group" +msgstr "Editar grupo" + +#: static/admin/translations-fakejs.js:467 +msgid "New group" +msgstr "Nuevo grupo" + +#: static/admin/translations-fakejs.js:468 +msgid "Meta group name" +msgstr "Nombre del meta grupo" + +#: static/admin/translations-fakejs.js:473 +msgid "Service Pools" +msgstr "Service Pool" + +#: static/admin/translations-fakejs.js:474 +msgid "Match mode" +msgstr "Modo de coincidencia" + +#: static/admin/translations-fakejs.js:475 +msgid "Selected Groups" +msgstr "Grupos seleccionados" + +#: static/admin/translations-fakejs.js:478 +msgid "Edit user" +msgstr "Editar usuario" + +#: static/admin/translations-fakejs.js:479 +msgid "New user" +msgstr "Nuevo usuario" + +#: static/admin/translations-fakejs.js:480 +msgid "Real name" +msgstr "Nombre real" + +#: static/admin/translations-fakejs.js:486 +msgid "Role" +msgstr "Rol" + +#: static/admin/translations-fakejs.js:487 +msgid "Admin" +msgstr "Admin" + +#: static/admin/translations-fakejs.js:488 +msgid "Staff member" +msgstr "Miembro del personal" + +#: static/admin/translations-fakejs.js:496 +msgid "Assigned Services" +msgstr "Servicios Asignados" + #: static/modern/main-es5.js:1 msgid "Error communicating with your service. Please, retry again." msgstr "Error al comunicarse con su servicio. Por favor, vuelva a intentarlo." @@ -1609,7 +1621,8 @@ msgstr "" msgid "Launching service" msgstr "Lanzador de servicio" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 +#: static/modern/translations-fakejs.js:25 msgid "Errors found" msgstr "Errores encontrados" @@ -1650,18 +1663,14 @@ msgstr "Servicio restablecido" msgid "Are you sure?" msgstr "¿Está seguro?" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 msgid "Warning" msgstr "Advertencia" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:25 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 msgid "Service is in maintenance and cannot be executed" msgstr "El servicio está en mantenimiento y no puede ser ejecutado." -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 -msgid "Invalid error string" -msgstr "Cadena de error no válida" - #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:26 msgid "We use cookies to track usage and preferences" msgstr "Usamos cookies para rastrear el uso y las preferencias." @@ -1807,3 +1816,15 @@ msgstr "Contraseña" #: static/modern/translations-fakejs.js:73 msgid "Login" msgstr "Iniciar sesión" + +#: static/modern/translations-fakejs.js:74 +msgid "Login Verification" +msgstr "Verificacion de inicio de sesion" + +#: static/modern/translations-fakejs.js:75 +msgid "Remember Me" +msgstr "Recuérdame" + +#: static/modern/translations-fakejs.js:76 +msgid "Submit" +msgstr "Enviar" diff --git a/server/src/uds/locale/eu/LC_MESSAGES/django.po b/server/src/uds/locale/eu/LC_MESSAGES/django.po index eb689fc2..6d2e3a3a 100644 --- a/server/src/uds/locale/eu/LC_MESSAGES/django.po +++ b/server/src/uds/locale/eu/LC_MESSAGES/django.po @@ -9,9 +9,9 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-14 11:34+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:14+0000\n" +"Last-Translator: Adolfo Gómez , 2015\n" "Language-Team: Basque (http://www.transifex.com/openuds/openuds/language/" "eu/)\n" "Language: eu\n" @@ -24,26 +24,26 @@ msgstr "" msgid "Accounts" msgstr "Kontuak" -#: REST/methods/accounts.py:63 REST/methods/authenticators.py:66 +#: REST/methods/accounts.py:63 REST/methods/authenticators.py:67 #: REST/methods/calendars.py:63 REST/methods/images.py:67 -#: REST/methods/meta_pools.py:81 REST/methods/networks.py:63 -#: REST/methods/osmanagers.py:55 REST/methods/providers.py:71 -#: REST/methods/proxies.py:60 REST/methods/reports.py:69 -#: REST/methods/services_pool_groups.py:71 REST/methods/services_pools.py:136 -#: REST/methods/transports.py:66 REST/methods/user_services.py:325 -#: REST/methods/user_services.py:400 REST/methods/users_groups.py:167 -#: REST/model.py:149 +#: REST/methods/meta_pools.py:81 REST/methods/mfas.py:56 +#: REST/methods/networks.py:63 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:71 REST/methods/proxies.py:60 +#: REST/methods/reports.py:69 REST/methods/services_pool_groups.py:71 +#: REST/methods/services_pools.py:136 REST/methods/transports.py:66 +#: REST/methods/user_services.py:325 REST/methods/user_services.py:400 +#: REST/methods/users_groups.py:167 REST/model.py:149 msgid "Name" msgstr "Izena" -#: REST/methods/accounts.py:64 REST/methods/authenticators.py:68 +#: REST/methods/accounts.py:64 REST/methods/authenticators.py:69 #: REST/methods/calendarrules.py:110 REST/methods/calendars.py:69 -#: REST/methods/meta_pools.py:82 REST/methods/osmanagers.py:57 -#: REST/methods/providers.py:73 REST/methods/proxies.py:63 -#: REST/methods/services.py:241 REST/methods/services_pool_groups.py:72 -#: REST/methods/transports.py:68 REST/methods/user_services.py:402 -#: REST/methods/users_groups.py:168 REST/methods/users_groups.py:386 -#: REST/model.py:173 +#: REST/methods/meta_pools.py:82 REST/methods/mfas.py:58 +#: REST/methods/osmanagers.py:57 REST/methods/providers.py:73 +#: REST/methods/proxies.py:63 REST/methods/services.py:241 +#: REST/methods/services_pool_groups.py:72 REST/methods/transports.py:68 +#: REST/methods/user_services.py:402 REST/methods/users_groups.py:168 +#: REST/methods/users_groups.py:384 REST/model.py:173 msgid "Comments" msgstr "Iruzkinak" @@ -51,12 +51,12 @@ msgstr "Iruzkinak" msgid "Time mark" msgstr "Denbora-marka" -#: REST/methods/accounts.py:66 REST/methods/authenticators.py:73 +#: REST/methods/accounts.py:66 REST/methods/authenticators.py:75 #: REST/methods/calendars.py:71 REST/methods/meta_pools.py:89 -#: REST/methods/networks.py:71 REST/methods/osmanagers.py:59 -#: REST/methods/providers.py:79 REST/methods/proxies.py:64 -#: REST/methods/services.py:250 REST/methods/services_pools.py:145 -#: REST/methods/transports.py:77 +#: REST/methods/mfas.py:59 REST/methods/networks.py:71 +#: REST/methods/osmanagers.py:59 REST/methods/providers.py:79 +#: REST/methods/proxies.py:64 REST/methods/services.py:250 +#: REST/methods/services_pools.py:145 REST/methods/transports.py:77 msgid "tags" msgstr "Etiketak" @@ -111,7 +111,7 @@ msgstr "Tekla okerra" msgid "Unmanaged host" msgstr "Kudeaketa gabeko ostalaria" -#: REST/methods/actor.py:207 web/util/errors.py:85 +#: REST/methods/actor.py:207 web/util/errors.py:87 msgid "User service not found" msgstr "Ez da Erabiltzaile-zerbitzurik aurkitu" @@ -120,9 +120,9 @@ msgid "Actor tokens" msgstr "Aktoreen marka-ikurrak" #: REST/methods/actor_token.py:54 REST/methods/tunnel_token.py:52 -#: reports/auto/fields.py:58 reports/stats/pools_performance.py:218 -#: reports/stats/pools_performance.py:237 reports/stats/pools_usage_day.py:64 -#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:191 +#: reports/auto/fields.py:58 reports/stats/pools_performance.py:201 +#: reports/stats/pools_performance.py:220 reports/stats/pools_usage_day.py:64 +#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:176 #: templates/uds/reports/stats/authenticator_stats.html:14 msgid "Date" msgstr "Data" @@ -161,64 +161,79 @@ msgstr "Erregistro maila" msgid "Token isued by {} from {}" msgstr "Token {} etatik {} isued" -#: REST/methods/authenticators.py:63 +#: REST/methods/authenticators.py:64 msgid "Authenticators" msgstr "Autentikatzaileak" -#: REST/methods/authenticators.py:65 +#: REST/methods/authenticators.py:66 msgid "Id" msgstr "Id" -#: REST/methods/authenticators.py:67 REST/methods/osmanagers.py:56 -#: REST/methods/providers.py:72 REST/methods/services.py:242 -#: REST/methods/transports.py:67 REST/methods/user_services.py:401 +#: REST/methods/authenticators.py:68 REST/methods/mfas.py:57 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:72 +#: REST/methods/services.py:242 REST/methods/transports.py:67 +#: REST/methods/user_services.py:401 msgid "Type" msgstr "Mota" -#: REST/methods/authenticators.py:69 REST/methods/meta_service_pools.py:88 +#: REST/methods/authenticators.py:70 REST/methods/meta_service_pools.py:88 #: REST/methods/op_calendars.py:83 REST/methods/services_pool_groups.py:62 #: REST/methods/transports.py:65 REST/methods/user_services.py:399 #: REST/model.py:185 models/meta_pool.py:73 msgid "Priority" msgstr "Lehentasuna" -#: REST/methods/authenticators.py:70 REST/methods/authenticators.py:107 +#: REST/methods/authenticators.py:71 REST/methods/authenticators.py:110 #: REST/methods/meta_pools.py:86 REST/methods/meta_pools.py:193 #: REST/methods/services_pools.py:141 REST/methods/services_pools.py:386 msgid "Visible" msgstr "Ikusgai" -#: REST/methods/authenticators.py:71 REST/methods/meta_pools.py:88 +#: REST/methods/authenticators.py:72 REST/methods/meta_pools.py:88 #: REST/methods/transports.py:164 REST/model.py:201 msgid "Label" msgstr "Etiketa" -#: REST/methods/authenticators.py:72 core/util/stats/counters.py:252 -#: reports/stats/pools_performance.py:223 -#: reports/stats/pools_performance.py:286 reports/stats/user_access.py:254 -#: reports/stats/user_access.py:297 services/RDS_enterprise/provider.py:74 +#: REST/methods/authenticators.py:73 core/util/stats/counters.py:252 +#: reports/stats/pools_performance.py:206 +#: reports/stats/pools_performance.py:269 reports/stats/user_access.py:239 +#: reports/stats/user_access.py:282 services/RDS_enterprise/provider.py:74 #: templates/uds/reports/stats/authenticator_stats.html:15 #: templates/uds/reports/stats/pools-performance.html:35 #: templates/uds/reports/stats/user-access.html:35 msgid "Users" msgstr "Erabiltzaileak" -#: REST/methods/authenticators.py:109 REST/methods/services_pools.py:387 -msgid "If active, transport will be visible for users" -msgstr "Aktibo bada, garraioak ikusgai egongo dira erabiltzaileentzat" +#: REST/methods/authenticators.py:74 core/ui/user_interface.py:104 +msgid "MFA" +msgstr "MFA" -#: REST/methods/authenticators.py:113 REST/methods/services_pools.py:390 -#: REST/methods/services_pools.py:405 REST/methods/services_pools.py:422 -#: REST/methods/services_pools.py:433 core/ui/user_interface.py:103 -#: services/OVirt/service.py:188 -msgid "Display" -msgstr "Pantaila" +#: REST/methods/authenticators.py:112 +msgid "If active, authenticator will be visible for users" +msgstr "Aktibo badago, autentifikatzailea ikusgai egongo da erabiltzaileentzat" -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:125 core/services/service.py:143 +#: core/services/service.py:154 mfas/Email/mfa.py:46 mfas/SMS/mfa.py:112 +#: models/permissions.py:92 models/permissions.py:96 +#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 +#: services/Proxmox/service.py:208 services/Sample/service.py:100 +#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 +msgid "None" +msgstr "Bat ere" + +#: REST/methods/authenticators.py:132 +msgid "MFA Provider" +msgstr "MFA hornitzailea" + +#: REST/methods/authenticators.py:134 +msgid "MFA provider to use for this authenticator" +msgstr "MFA hornitzailea autentifikatzaile honetarako erabiltzeko" + +#: REST/methods/authenticators.py:193 msgid "Too many results..." msgstr "Emaitz gehiegi ..." -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:193 msgid "Refine your query" msgstr "Zure kontsulta hobetu" @@ -377,7 +392,7 @@ msgstr "Sortze data" #: REST/methods/meta_service_pools.py:195 REST/methods/services_usage.py:125 #: reports/stats/pool_users_summary.py:60 -#: reports/stats/pools_performance.py:284 reports/stats/pools_usage_day.py:171 +#: reports/stats/pools_performance.py:267 reports/stats/pools_usage_day.py:169 #: reports/stats/pools_usage_summary.py:156 reports/stats/usage_by_pool.py:59 #: reports/stats/usage_by_pool.py:173 services/Proxmox/service.py:111 #: templates/uds/reports/stats/pools-performance.html:33 @@ -436,6 +451,28 @@ msgstr "Elementua dagoeneko ezabatzen ari da" msgid "Item is not removable" msgstr "Elementua ez da ezabagarria" +#: REST/methods/mfas.py:54 +msgid "Multi Factor Authentication" +msgstr "Faktore anitzeko autentifikazioa" + +#: REST/methods/mfas.py:80 +msgid "Device Caching" +msgstr "Gailuaren cachea" + +#: REST/methods/mfas.py:82 +msgid "Time in hours to cache device so MFA is not required again. User based." +msgstr "" +"Gailua cachean gordetzeko denbora orduetan, MFA berriro beharrezkoa ez da. " +"Erabiltzailean oinarrituta." + +#: REST/methods/mfas.py:94 +msgid "MFA code validity" +msgstr "MFA kodearen baliozkotasuna" + +#: REST/methods/mfas.py:96 +msgid "Time in minutes to allow MFA code to be used." +msgstr "MFA kodea erabiltzeko denbora minututan." + #: REST/methods/networks.py:59 REST/methods/transports.py:114 msgid "Networks" msgstr "Sareak" @@ -526,7 +563,7 @@ msgstr "Zerbitzu Hornitzaileak" msgid "Status" msgstr "Egoera" -#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:171 +#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:169 #: templates/uds/reports/stats/authenticator_stats.html:16 #: templates/uds/reports/stats/pools-usage-day.html:29 msgid "Services" @@ -621,13 +658,13 @@ msgstr "" msgid "Available reports" msgstr "Txosten erabilgarriak" -#: REST/methods/reports.py:67 REST/methods/users_groups.py:377 -#: REST/methods/users_groups.py:398 -#: auths/ActiveDirectory_enterprise/authenticator.py:143 +#: REST/methods/reports.py:67 REST/methods/users_groups.py:375 +#: REST/methods/users_groups.py:396 +#: auths/ActiveDirectory_enterprise/authenticator.py:153 #: auths/AzureAD_enterprise/azure_ad.py:95 #: auths/EDirectory_enterprise/authenticator.py:105 #: auths/Radius/authenticator.py:63 auths/RegexLdap/authenticator.py:191 -#: auths/SAML_enterprise/saml.py:121 auths/SimpleLDAP/authenticator.py:182 +#: auths/SAML_enterprise/saml.py:109 auths/SimpleLDAP/authenticator.py:182 #: models/calendar_action.py:147 models/calendar_action.py:154 msgid "Group" msgstr "Taldea" @@ -692,13 +729,13 @@ msgstr "Suebaki baten atzean zerbitzuen proxya" msgid "Advanced" msgstr "Aurreratua" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "With errors" msgstr "Erroreekin" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "Ok" msgstr "Ondo" @@ -777,6 +814,16 @@ msgstr "" "Aukera hori gaituta badago, UDS-k ez du erabiltzaileari esleitutako " "zerbitzuen detekzioa eta kentzea saiatuko." +#: REST/methods/services_pools.py:387 +msgid "If active, transport will be visible for users" +msgstr "Aktibo bada, garraioak ikusgai egongo dira erabiltzaileentzat" + +#: REST/methods/services_pools.py:390 REST/methods/services_pools.py:405 +#: REST/methods/services_pools.py:422 REST/methods/services_pools.py:433 +#: core/ui/user_interface.py:103 services/OVirt/service.py:188 +msgid "Display" +msgstr "Pantaila" + #: REST/methods/services_pools.py:439 msgid "Initial available services" msgstr "Azierako zerbitzu erabilgarriak" @@ -982,7 +1029,7 @@ msgstr "Langile Kidea" #: auths/AzureAD_enterprise/azure_ad.py:94 #: auths/EDirectory_enterprise/authenticator.py:69 #: auths/Radius/authenticator.py:62 auths/RegexLdap/authenticator.py:91 -#: auths/SAML_enterprise/saml.py:118 reports/stats/pool_users_summary.py:177 +#: auths/SAML_enterprise/saml.py:106 reports/stats/pool_users_summary.py:177 #: reports/stats/usage_by_pool.py:171 #: templates/uds/reports/stats/pool-users-summary.html:14 #: templates/uds/reports/stats/usage-by-pool.html:15 @@ -999,10 +1046,10 @@ msgid "Current users" msgstr "Momentuko erabiltzaileak" #: REST/methods/users_groups.py:160 -#: auths/ActiveDirectory_enterprise/authenticator.py:141 +#: auths/ActiveDirectory_enterprise/authenticator.py:151 #: auths/EDirectory_enterprise/authenticator.py:103 #: auths/RegexLdap/authenticator.py:189 auths/SimpleLDAP/authenticator.py:180 -#: services/HyperV_enterprise/legacy/provider.py:103 +#: mfas/Email/mfa.py:54 services/HyperV_enterprise/legacy/provider.py:103 #: services/HyperV_enterprise/provider.py:86 #: services/NutanixPrism_enterprise/provider.py:54 #: services/Nutanix_enterprise/provider.py:54 services/OVirt/provider.py:121 @@ -1016,7 +1063,7 @@ msgstr "Momentuko erabiltzaileak" #: transports/NoMachine_enterprise/nomachine_base.py:63 #: transports/PCoIP_enterprise/pcoip.py:61 transports/RDP/rdp_base.py:75 #: transports/SPICE/spice_base.py:69 transports/X2GO/x2go_base.py:70 -#: web/forms/LoginForm.py:43 +#: web/forms/LoginForm.py:44 msgid "Username" msgstr "Erabiltzaile izena" @@ -1024,7 +1071,7 @@ msgstr "Erabiltzaile izena" msgid "Role" msgstr "Rol" -#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:389 +#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:387 msgid "state" msgstr "Egoera" @@ -1036,32 +1083,32 @@ msgstr "Azken sarrera" msgid "Username cannot be empty" msgstr "Erabiltzaile izena ezin da hutsik egon" -#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:470 +#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:468 msgid "User already exists (duplicate key error)" msgstr "Dagoeneko erabiltzailea existitzen da (Hutsa,gako bikoiztua)" -#: REST/methods/users_groups.py:365 +#: REST/methods/users_groups.py:363 #, python-brace-format msgid "Groups of {0}" msgstr "{0} talde" -#: REST/methods/users_groups.py:371 +#: REST/methods/users_groups.py:369 msgid "Current groups" msgstr "Momentuko taldeak" -#: REST/methods/users_groups.py:398 +#: REST/methods/users_groups.py:396 msgid "UDS Group" msgstr "UDS Taldea" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "Meta group" msgstr "Meta-taldea" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "UDS Meta Group" msgstr "UDS Meta-taldea" -#: REST/methods/users_groups.py:430 +#: REST/methods/users_groups.py:428 msgid "Group name is required" msgstr "Taldearen izena beharrezkoa da" @@ -1110,7 +1157,7 @@ msgstr "Ez da metodorik aurkitu {}:{}-an" msgid "Item not found" msgstr "Elementua ez da aurkitu" -#: REST/model.py:336 web/util/authentication.py:140 web/util/errors.py:79 +#: REST/model.py:336 web/util/authentication.py:143 web/util/errors.py:81 msgid "Access denied" msgstr "Sarrera debekaturik" @@ -1118,7 +1165,7 @@ msgstr "Sarrera debekaturik" msgid "Operation not supported" msgstr "Ezinezko eragiketa" -#: admin/views/__init__.py:59 +#: admin/views/__init__.py:72 msgid "requested a template that do not exist" msgstr "Existitzen ez den txantiloia eskatu da" @@ -1150,11 +1197,11 @@ msgstr "" "USER@DOMAIN.DOM)" #: auths/ActiveDirectory_enterprise/authenticator.py:80 -#: auths/ActiveDirectory_enterprise/authenticator.py:145 +#: auths/ActiveDirectory_enterprise/authenticator.py:155 #: auths/EDirectory_enterprise/authenticator.py:77 #: auths/RegexLdap/authenticator.py:99 auths/RegexLdap/authenticator.py:193 #: auths/SimpleLDAP/authenticator.py:90 auths/SimpleLDAP/authenticator.py:184 -#: core/auths/authenticator.py:147 +#: core/auths/authenticator.py:147 mfas/Email/mfa.py:63 #: osmanagers/WindowsOsManager/windows_domain.py:85 #: osmanagers/WindowsOsManager/windows_random.py:76 #: services/HyperV_enterprise/legacy/provider.py:110 @@ -1170,8 +1217,8 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcv_base.py:52 #: transports/NoMachine_enterprise/nomachine_base.py:69 #: transports/PCoIP_enterprise/pcoip.py:67 transports/RDP/rdp_base.py:81 -#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:45 -#: web/forms/LoginForm.py:46 +#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:46 +#: web/forms/LoginForm.py:47 msgid "Password" msgstr "Pasahitza" @@ -1238,22 +1285,32 @@ msgstr "" "Hutsik ez badago, ostalari hau erabiliko da ostalari zerbitzari nagusia " "heltzen ez bada" -#: auths/ActiveDirectory_enterprise/authenticator.py:130 +#: auths/ActiveDirectory_enterprise/authenticator.py:133 +#: auths/SAML_enterprise/saml.py:207 +msgid "MFA attribute" +msgstr "MFA atributua" + +#: auths/ActiveDirectory_enterprise/authenticator.py:135 +#: auths/SAML_enterprise/saml.py:209 +msgid "Attribute from where to extract the MFA code" +msgstr "Atributua nondik atera MFA kodea" + +#: auths/ActiveDirectory_enterprise/authenticator.py:140 msgid "Active Directory Authenticator" msgstr "Active Directory autentikatzailea" -#: auths/ActiveDirectory_enterprise/authenticator.py:132 +#: auths/ActiveDirectory_enterprise/authenticator.py:142 msgid "Authenticate against Active Directory" msgstr "Active Directory-aren kontra autentikatu" -#: auths/ActiveDirectory_enterprise/authenticator.py:175 -#: auths/ActiveDirectory_enterprise/authenticator.py:602 +#: auths/ActiveDirectory_enterprise/authenticator.py:187 +#: auths/ActiveDirectory_enterprise/authenticator.py:648 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "Erabiltzailea USERNAME@DOMAIN.DOM formatuan jarri behar da " -#: auths/ActiveDirectory_enterprise/authenticator.py:481 -#: auths/ActiveDirectory_enterprise/authenticator.py:532 -#: auths/AzureAD_enterprise/azure_ad.py:313 +#: auths/ActiveDirectory_enterprise/authenticator.py:521 +#: auths/ActiveDirectory_enterprise/authenticator.py:578 +#: auths/AzureAD_enterprise/azure_ad.py:315 #: auths/EDirectory_enterprise/authenticator.py:269 #: auths/EDirectory_enterprise/authenticator.py:300 #: auths/RegexLdap/authenticator.py:538 auths/RegexLdap/authenticator.py:569 @@ -1261,38 +1318,38 @@ msgstr "Erabiltzailea USERNAME@DOMAIN.DOM formatuan jarri behar da " msgid "Username not found" msgstr "Erabiltzaile ez da aurkitu" -#: auths/ActiveDirectory_enterprise/authenticator.py:514 +#: auths/ActiveDirectory_enterprise/authenticator.py:560 #: auths/SimpleLDAP/authenticator.py:468 msgid "Group not found" msgstr "Ez da aurkitu talderik" -#: auths/ActiveDirectory_enterprise/authenticator.py:559 -#: auths/ActiveDirectory_enterprise/authenticator.py:581 +#: auths/ActiveDirectory_enterprise/authenticator.py:605 +#: auths/ActiveDirectory_enterprise/authenticator.py:627 #: auths/EDirectory_enterprise/authenticator.py:322 #: auths/RegexLdap/authenticator.py:597 auths/SimpleLDAP/authenticator.py:503 #: auths/SimpleLDAP/authenticator.py:523 msgid "Too many results, be more specific" msgstr "konkretuagoa izan, emaitz gehiegi daude eta." -#: auths/ActiveDirectory_enterprise/authenticator.py:613 +#: auths/ActiveDirectory_enterprise/authenticator.py:659 msgid "Domain seems to be incorrect, please check it" msgstr "Domeinua txarto omen dago, egiazta ezazu." -#: auths/ActiveDirectory_enterprise/authenticator.py:632 +#: auths/ActiveDirectory_enterprise/authenticator.py:678 msgid "" "Server does not seem an Active Directory (it does not have user objects)" msgstr "" "Zerbitzaria ez omen da Active Directory Zerbitzari bat (ez du erabiltzaile " "objeturik)" -#: auths/ActiveDirectory_enterprise/authenticator.py:655 +#: auths/ActiveDirectory_enterprise/authenticator.py:701 msgid "" "Server does not seem an Active Directory (it does not have group objects)" msgstr "" "Zerbitzaria ez omen da Active Directory Zerbitzari bat (ez du talde " "objeturik)" -#: auths/ActiveDirectory_enterprise/authenticator.py:664 +#: auths/ActiveDirectory_enterprise/authenticator.py:710 #: auths/EDirectory_enterprise/authenticator.py:445 #: auths/RegexLdap/authenticator.py:707 auths/SimpleLDAP/authenticator.py:686 msgid "Connection params seem correct, test was succesfully executed" @@ -1384,21 +1441,21 @@ msgstr "Microsoft-en saioa amaitzea" msgid "Office 365 logout" msgstr "Office 365 saioa amaitzea" -#: auths/AzureAD_enterprise/azure_ad.py:176 auths/SAML_enterprise/saml.py:217 +#: auths/AzureAD_enterprise/azure_ad.py:176 msgid "SAML Authenticator does not support white spaces on field NAME" msgstr "SAML autetikatzaileak ez du NAME eremuan espaziorik onartzen" -#: auths/AzureAD_enterprise/azure_ad.py:323 -#: auths/AzureAD_enterprise/azure_ad.py:349 -#: auths/AzureAD_enterprise/azure_ad.py:359 +#: auths/AzureAD_enterprise/azure_ad.py:325 +#: auths/AzureAD_enterprise/azure_ad.py:351 +#: auths/AzureAD_enterprise/azure_ad.py:361 msgid "Authenticator exception:" msgstr "Autentikatzaile salbuespena:" -#: auths/AzureAD_enterprise/azure_ad.py:394 core/util/ldaputil.py:49 +#: auths/AzureAD_enterprise/azure_ad.py:396 core/util/ldaputil.py:49 msgid "Connection error: " msgstr "Konexioaren errorea:" -#: auths/AzureAD_enterprise/azure_ad.py:397 +#: auths/AzureAD_enterprise/azure_ad.py:399 msgid "Connection params seems correct, test was succesfully executed" msgstr "Konexioaren parametak zuzena dirudi, proba ondo exekutatu da" @@ -1503,7 +1560,7 @@ msgstr "IP autentikatzailea" msgid "IP Range" msgstr "IP bitartea" -#: auths/IP/authenticator.py:119 auths/IP/authenticator.py:122 +#: auths/IP/authenticator.py:122 auths/IP/authenticator.py:125 msgid "All seems to be fine." msgstr "Dirudienez dena ondo dago" @@ -1700,19 +1757,19 @@ msgstr "" "LDAP taldearen ID atributua txarto dagoela dirudi (ez da talderik aurkitu " "atributu horrekin )" -#: auths/SAML_enterprise/saml.py:88 +#: auths/SAML_enterprise/saml.py:76 msgid "SAML Authenticator" msgstr "SAML autentikatzailea" -#: auths/SAML_enterprise/saml.py:100 +#: auths/SAML_enterprise/saml.py:88 msgid "SAML (v2.0) Authenticator" msgstr "SAML (v2.0) autentikatzailea" -#: auths/SAML_enterprise/saml.py:130 +#: auths/SAML_enterprise/saml.py:118 msgid "Private key" msgstr "Gako pribatua" -#: auths/SAML_enterprise/saml.py:133 +#: auths/SAML_enterprise/saml.py:121 msgid "" "Private key used for sign and encription, as generated in base 64 from " "openssl" @@ -1720,15 +1777,15 @@ msgstr "" "Seinale eta enkripzioan erabilitako gako pribatua, oinarrian sortutako 64 " "ataka irekitik" -#: auths/SAML_enterprise/saml.py:136 auths/SAML_enterprise/saml.py:147 +#: auths/SAML_enterprise/saml.py:124 auths/SAML_enterprise/saml.py:135 msgid "Certificates" msgstr "Ziurtagiriak" -#: auths/SAML_enterprise/saml.py:141 transports/SPICE/spice_base.py:83 +#: auths/SAML_enterprise/saml.py:129 transports/SPICE/spice_base.py:83 msgid "Certificate" msgstr "Ziurtagiria" -#: auths/SAML_enterprise/saml.py:144 +#: auths/SAML_enterprise/saml.py:132 msgid "" "Public key used for sign and encription (public part of previous private " "key), as generated in base 64 from openssl" @@ -1736,58 +1793,80 @@ msgstr "" "Sartu eta erregistratzeko (gako pribatuaren aurreko atal publikoa) " "erabilitako gako publikoa, oinarrian sortua 64 ataka irekitik" -#: auths/SAML_enterprise/saml.py:152 +#: auths/SAML_enterprise/saml.py:140 msgid "IDP Metadata" msgstr "IDP Metadata" -#: auths/SAML_enterprise/saml.py:155 +#: auths/SAML_enterprise/saml.py:143 msgid "" "You can enter here the URL or the IDP metadata or the metadata itself (xml)" msgstr "Hemen sar dezakezu URLa edo IDP metadatuak edo metadatu bera (xml)" -#: auths/SAML_enterprise/saml.py:158 auths/SAML_enterprise/saml.py:167 +#: auths/SAML_enterprise/saml.py:146 auths/SAML_enterprise/saml.py:155 msgid "Metadata" msgstr "Metadata" -#: auths/SAML_enterprise/saml.py:162 +#: auths/SAML_enterprise/saml.py:150 msgid "Entity ID" msgstr "Erakunde IDa" -#: auths/SAML_enterprise/saml.py:165 +#: auths/SAML_enterprise/saml.py:153 msgid "ID of the SP. If left blank, this will be autogenerated from server URL" msgstr "" "SP IDa. Utzi hutsik badaude, zerbitzariaren URLa automatikoki sortuko da" -#: auths/SAML_enterprise/saml.py:173 +#: auths/SAML_enterprise/saml.py:161 msgid "User name attrs" msgstr "Erabiltzaile-izen atributuak" -#: auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:163 msgid "Fields from where to extract user name" msgstr "Erabiltzaile izena ateratzeko eremuak" -#: auths/SAML_enterprise/saml.py:177 auths/SAML_enterprise/saml.py:187 -#: auths/SAML_enterprise/saml.py:197 +#: auths/SAML_enterprise/saml.py:165 auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:185 msgid "Attributes" msgstr "Atributuak" -#: auths/SAML_enterprise/saml.py:183 +#: auths/SAML_enterprise/saml.py:171 msgid "Group name attrs" msgstr "Talde-izen atributuak" -#: auths/SAML_enterprise/saml.py:185 +#: auths/SAML_enterprise/saml.py:173 msgid "Fields from where to extract the groups" msgstr "Taldeak ateratzeko eremuak" -#: auths/SAML_enterprise/saml.py:193 +#: auths/SAML_enterprise/saml.py:181 msgid "Real name attrs" msgstr "Benetazko izenaren atributuak" -#: auths/SAML_enterprise/saml.py:195 +#: auths/SAML_enterprise/saml.py:183 msgid "Fields from where to extract the real name" msgstr "Izen erreala ateratzeko eremuetatik" +#: auths/SAML_enterprise/saml.py:189 +msgid "Global logout" +msgstr "Amaitzeko saioa globala" + +#: auths/SAML_enterprise/saml.py:192 +msgid "If set, logout from UDS will trigger SAML logout" +msgstr "Ezarrita badago, UDStik saioa egiteak SAML saioa amaituko du" + +#: auths/SAML_enterprise/saml.py:197 +msgid "ADFS compatibility" +msgstr "ADFS bateragarritasuna" + +#: auths/SAML_enterprise/saml.py:200 +msgid "If set, enable lowercase url encoding so ADFS can work correctly" +msgstr "" +"Ezarrita badago, gaitu minuskulak url kodeketa, ADFS behar bezala funtziona " +"dezan" + #: auths/SAML_enterprise/saml.py:231 +msgid "This kind of Authenticator does not support white spaces on field NAME" +msgstr "Authenticator mota honek ez ditu zuriunerik onartzen IZENA eremuan" + +#: auths/SAML_enterprise/saml.py:245 msgid "" "Server certificate should be a valid PEM (PEM certificates starts with -----" "BEGIN CERTIFICATE-----)" @@ -1795,11 +1874,11 @@ msgstr "" "Zerbitzariaren ziurtagiria PEM baliagarria izan behar da (PEM ziurtagiriak " "hasi behar dira ----- ZIURTATUEI BEGIN -----)" -#: auths/SAML_enterprise/saml.py:239 +#: auths/SAML_enterprise/saml.py:253 msgid "Invalid server certificate. " msgstr "Baliogabeko zerbitzari ziiurtagiria" -#: auths/SAML_enterprise/saml.py:250 +#: auths/SAML_enterprise/saml.py:264 msgid "" "Private key should be a valid PEM (PEM private keys starts with -----BEGIN " "RSA PRIVATE KEY-----" @@ -1807,27 +1886,47 @@ msgstr "" "Gako pribatua PEM baliagarria izan behar da (PEM gako pribatuak hasten dira " "----- BEGIN RSA PRIBATUA KEY -----" -#: auths/SAML_enterprise/saml.py:258 +#: auths/SAML_enterprise/saml.py:272 msgid "Invalid private key. " msgstr "Gako pribatua baliogabea da." -#: auths/SAML_enterprise/saml.py:277 +#: auths/SAML_enterprise/saml.py:291 #, python-brace-format msgid "Can't fetch url {0}: {1}" msgstr "Ezin da URL {0} eskuratu: {1}" -#: auths/SAML_enterprise/saml.py:288 +#: auths/SAML_enterprise/saml.py:302 msgid " (obtained from URL)" msgstr "(URLetik lortzen da)" -#: auths/SAML_enterprise/saml.py:290 +#: auths/SAML_enterprise/saml.py:304 msgid "XML does not seem valid for IDP Metadata " msgstr "XML IDP Metadata ez da baliozkoa" -#: auths/SAML_enterprise/saml.py:312 +#: auths/SAML_enterprise/saml.py:357 msgid "Can't access idp metadata" msgstr "Ezin dira idp metadatuak atzitu" +#: auths/SAML_enterprise/saml.py:424 +msgid "Error validating SP metadata: " +msgstr "Errore bat gertatu da SP metadatuak baliozkotzean:" + +#: auths/SAML_enterprise/saml.py:528 +msgid "Error processing SLO: " +msgstr "Errore bat gertatu da SLO prozesatzen:" + +#: auths/SAML_enterprise/saml.py:558 +msgid "Error processing SAML response: " +msgstr "Errore bat gertatu da SAML erantzuna prozesatzen:" + +#: auths/SAML_enterprise/saml.py:571 +msgid "SAML response not authenticated" +msgstr "SAML erantzuna ez da autentifikatu" + +#: auths/SAML_enterprise/saml.py:598 +msgid "No attributes returned from IdP" +msgstr "Ez da atributurik itzuli IdPtik" + #: auths/Sample/SampleAuth.py:79 msgid "Sample Authenticator" msgstr "Adibide autetikatzailea" @@ -1923,11 +2022,11 @@ msgstr "" msgid "Can't locate any group with the membership attribute specified" msgstr "Ezin da edozein taldek aurkitu zehaztutako partaidetza atributuarekin" -#: core/auths/auth.py:110 +#: core/auths/auth.py:111 msgid "System Administrator" msgstr "Sistema-administratzaileak" -#: core/auths/auth.py:150 +#: core/auths/auth.py:155 msgid "Forbidden" msgstr "Debekatuta" @@ -1961,19 +2060,19 @@ msgstr "Ezin da argitalpen erabilgarririk argitaratu" msgid "Can't unpublish publications with services in process" msgstr "Ezin dira argitalpenak argitaratu zerbitzuen prozesuan" -#: core/managers/user_service.py:337 +#: core/managers/user_service.py:348 msgid "Can't remove a non active element" msgstr "Ezin da elementu ez aktiboa ezabatu" -#: core/managers/user_service.py:363 +#: core/managers/user_service.py:374 msgid "Can't remove nor cancel {} cause its state don't allow it" msgstr "Ezin da {} kendu edo ezeztatu {} egoera ez baimendu horrek" -#: core/managers/user_service.py:395 +#: core/managers/user_service.py:406 msgid "The requested service is restrained" msgstr "Eskatutako zerbitzua geldiarazi egiten da" -#: core/managers/user_service.py:761 web/util/errors.py:81 +#: core/managers/user_service.py:770 web/util/errors.py:83 msgid "" "Invalid service. The service is not available at this moment. Please, try " "later" @@ -1981,14 +2080,22 @@ msgstr "" "Zerbitzu baliogabea. Une honetan zerbitzua ez dago erabilgarri. Saiatu " "geroago" -#: core/managers/user_service.py:798 +#: core/managers/user_service.py:807 msgid "The requested transport {} is not valid for {}" msgstr "Eskatutako garraioa {} ez da {} baliozkoa" -#: core/managers/user_service.py:1078 +#: core/managers/user_service.py:1084 msgid "The service is not accessible from this device" msgstr "Zerbitzua ez dago gailutik eskura" +#: core/mfas/mfa.py:60 core/mfas/mfa.py:72 +msgid "Base MFA" +msgstr "Oinarrizko MFA" + +#: core/mfas/mfa.py:184 +msgid "Invalid MFA code" +msgstr "MFA kodea baliogabea" + #: core/module.py:215 msgid "No connection checking method is implemented." msgstr "Ez da konexio-egiaztapen metodo bat inplementatu." @@ -2033,14 +2140,6 @@ msgstr "Inprimatu da {orain:% Y,% b% d} at {orain:% H:% M}" msgid "Base Service" msgstr "Oinarrizko Zerbitzua" -#: core/services/service.py:143 core/services/service.py:154 -#: models/permissions.py:92 models/permissions.py:96 -#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 -#: services/Proxmox/service.py:208 services/Sample/service.py:100 -#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 -msgid "None" -msgstr "Bat ere" - #: core/transports/transport.py:52 msgid "Direct" msgstr "Zuzenean" @@ -2165,23 +2264,23 @@ msgstr "Zerbitzuak dituzten erabiltzaileak" msgid "Cached" msgstr "Cachean gordeta" -#: core/util/tools.py:152 +#: core/util/tools.py:155 msgid "{} days {:d}:{:02d}:{:02d}" msgstr "{} egun {: d}: {: 02d}: {: 02d}" -#: core/util/tools.py:171 +#: core/util/tools.py:174 msgid "The basename is not a valid for a hostname" msgstr "Oinarri-izena ez da baliozko ostalari-izen baterako" -#: core/util/tools.py:176 +#: core/util/tools.py:179 msgid "The length of basename plus length must be greater than 0" msgstr "Izenaren oinarria gehi luzera 0 baino handiagoa izan behar da" -#: core/util/tools.py:181 +#: core/util/tools.py:184 msgid "The length of basename plus length must not be greater than 15" msgstr "Basename plus luzeraren luzera ez da 15 baino handiagoa izan behar" -#: core/util/tools.py:186 +#: core/util/tools.py:189 msgid "The machine name can't be only numbers" msgstr "Makinaren izena ezin da zenbaki bakarra izan" @@ -2212,7 +2311,11 @@ msgstr "{}-k ostalariaren izenaren luzera gainditzen du." msgid "{} is not a valid hostname" msgstr "{} ez da baliozko ostalari izena" -#: core/util/validators.py:152 +#: core/util/validators.py:131 +msgid "{} is not a valid host:port pair" +msgstr "{} ez da baliozko host:portu bikotea" + +#: core/util/validators.py:168 msgid "" "Invalid mac range. Mac range must be in format XX:XX:XX:XX:XX:XX-XX:XX:XX:XX:" "XX:XX" @@ -2220,66 +2323,352 @@ msgstr "" "Mac barraren baliogabea. Mac gama formatoan XX: XX: XX: XX: XX: XX-XX: XX: " "XX: XX: XX: XX" -#: dispatchers/wyse_enterprise/views.py:118 +#: core/util/validators.py:182 +msgid "Email address is too long" +msgstr "Helbide elektronikoa luzeegia da" + +#: core/util/validators.py:187 +msgid "Email address is not valid" +msgstr "Helbide elektronikoak ez du balio" + +#: dispatchers/wyse_enterprise/views.py:119 msgid "There are no authenticators available for login" msgstr "Ez dago autentikatzailerik erabilgarri" -#: dispatchers/wyse_enterprise/views.py:138 +#: dispatchers/wyse_enterprise/views.py:139 #, python-brace-format msgid "The authenticator {0} is not usable" msgstr "{0} autentikatzailea ez dago erabilgarri" -#: dispatchers/wyse_enterprise/views.py:145 +#: dispatchers/wyse_enterprise/views.py:146 msgid "Invalid credentials" msgstr "Baliogabeko egiaztagiriak" -#: dispatchers/wyse_enterprise/views.py:152 +#: dispatchers/wyse_enterprise/views.py:153 #, python-brace-format msgid "The domain {0} does not exists" msgstr "{0} domeinua ez da existitzen" -#: dispatchers/wyse_enterprise/views.py:228 +#: dispatchers/wyse_enterprise/views.py:229 msgid "No services available" msgstr "Ez dago zerbitzurik eskuragarri" -#: dispatchers/wyse_enterprise/views.py:244 -#: dispatchers/wyse_enterprise/views.py:344 +#: dispatchers/wyse_enterprise/views.py:245 +#: dispatchers/wyse_enterprise/views.py:345 msgid "Invalid session" msgstr "Saioa baliogabea" -#: dispatchers/wyse_enterprise/views.py:248 -#: dispatchers/wyse_enterprise/views.py:348 +#: dispatchers/wyse_enterprise/views.py:249 +#: dispatchers/wyse_enterprise/views.py:349 msgid "Invalid authorization" msgstr "Baimen baliogabea" -#: dispatchers/wyse_enterprise/views.py:259 -#: dispatchers/wyse_enterprise/views.py:354 +#: dispatchers/wyse_enterprise/views.py:260 +#: dispatchers/wyse_enterprise/views.py:355 msgid "Invalid request" msgstr "Eskaera baliogabea" -#: dispatchers/wyse_enterprise/views.py:262 -#: dispatchers/wyse_enterprise/views.py:357 +#: dispatchers/wyse_enterprise/views.py:263 +#: dispatchers/wyse_enterprise/views.py:358 msgid "Invalid credentials used" msgstr "Erabilitako kredentzial baliogabeak" -#: dispatchers/wyse_enterprise/views.py:277 web/util/errors.py:78 +#: dispatchers/wyse_enterprise/views.py:278 web/util/errors.py:80 msgid "Service not found" msgstr "Ez da aurkitu Zerbitzurik" -#: dispatchers/wyse_enterprise/views.py:281 +#: dispatchers/wyse_enterprise/views.py:282 msgid "Invalid machine uuid." msgstr "Makina uuid baliogabea." -#: dispatchers/wyse_enterprise/views.py:295 web/util/errors.py:77 +#: dispatchers/wyse_enterprise/views.py:296 web/util/errors.py:79 msgid "Transport not found" msgstr "Ez da aurkitu garraiorik" -#: dispatchers/wyse_enterprise/views.py:300 -#: dispatchers/wyse_enterprise/views.py:308 -#: dispatchers/wyse_enterprise/views.py:315 +#: dispatchers/wyse_enterprise/views.py:301 +#: dispatchers/wyse_enterprise/views.py:309 +#: dispatchers/wyse_enterprise/views.py:316 msgid "Service not ready at this moment. Please, try again in a while." msgstr "Zerbitzua ez dago prest une honetan. Saiatu berriz pixka bat." +#: mfas/Email/mfa.py:22 +msgid "Email Multi Factor" +msgstr "Posta elektronikoa Faktore anitzeko" + +#: mfas/Email/mfa.py:24 +msgid "Email Multi Factor Authenticator" +msgstr "Posta elektronikoa Faktore anitzeko autentifikazioa" + +#: mfas/Email/mfa.py:29 +msgid "SMTP Host" +msgstr "SMTP ostalaria" + +#: mfas/Email/mfa.py:32 +msgid "" +"SMTP Server hostname or IP address. If you are using a non-standard port, " +"add it after a colon, for example: smtp.gmail.com:587" +msgstr "" +"SMTP zerbitzariaren ostalari-izena edo IP helbidea. Estandarra ez den ataka " +"erabiltzen ari bazara, gehitu bi punturen ondoren, adibidez: smtp.gmail." +"com:587" + +#: mfas/Email/mfa.py:37 mfas/Email/mfa.py:50 mfas/Email/mfa.py:59 +#: mfas/Email/mfa.py:68 +msgid "SMTP Server" +msgstr "SMTP zerbitzaria" + +#: mfas/Email/mfa.py:41 transports/HTML5RDP/html5rdp.py:268 +#: transports/HTML5RDS_enterprise/html5rds.py:255 +msgid "Security" +msgstr "Segurtasuna" + +#: mfas/Email/mfa.py:42 +msgid "Security protocol to use" +msgstr "Erabili beharreko segurtasun-protokoloa" + +#: mfas/Email/mfa.py:44 +msgid "TLS" +msgstr "TLS" + +#: mfas/Email/mfa.py:45 +msgid "SSL" +msgstr "SSL" + +#: mfas/Email/mfa.py:56 +msgid "User with access to SMTP server" +msgstr "SMTP zerbitzarirako sarbidea duen erabiltzailea" + +#: mfas/Email/mfa.py:65 +msgid "Password of the user with access to SMTP server" +msgstr "SMTP zerbitzarirako sarbidea duen erabiltzailearen pasahitza" + +#: mfas/Email/mfa.py:74 +msgid "Subject" +msgstr "Gaia" + +#: mfas/Email/mfa.py:76 +msgid "Subject of the email" +msgstr "Posta elektronikoaren gaia" + +#: mfas/Email/mfa.py:78 mfas/Email/mfa.py:87 mfas/Email/mfa.py:95 +msgid "Config" +msgstr "Konfig" + +#: mfas/Email/mfa.py:83 +msgid "From Email" +msgstr "Posta elektronikotik" + +#: mfas/Email/mfa.py:85 +msgid "Email address that will be used as sender" +msgstr "Igorle gisa erabiliko den helbide elektronikoa" + +#: mfas/Email/mfa.py:91 +msgid "Enable HTML" +msgstr "Gaitu HTML" + +#: mfas/Email/mfa.py:93 +msgid "Enable HTML in emails" +msgstr "Gaitu HTML mezu elektronikoetan" + +#: mfas/Email/mfa.py:110 +msgid "Invalid SMTP hostname" +msgstr "SMTP ostalari-izen baliogabea" + +#: mfas/SMS/mfa.py:19 +msgid "SMS Thought HTTP" +msgstr "SMS Pentsamendua HTTP" + +#: mfas/SMS/mfa.py:21 +msgid "Simple SMS sending MFA using HTTP" +msgstr "SMS sinpleak MFA bidaltzen ditu HTTP erabiliz" + +#: mfas/SMS/mfa.py:26 +msgid "URL pattern for SMS sending" +msgstr "SMSak bidaltzeko URL eredua" + +#: mfas/SMS/mfa.py:29 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"URL pattern for SMS sending. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"SMSak bidaltzeko URL eredua. Aldagai hauek izan ditzake: * {kodea} - bidali " +"beharreko kodea * {telefonoa/+telefonoa} - telefono-zenbakia * {erabiltzaile-" +"izena} - erabiltzaile-izena * {justUsername} - erabiltzaile-izena @ gabe...." + +#: mfas/SMS/mfa.py:37 mfas/SMS/mfa.py:43 mfas/SMS/mfa.py:56 mfas/SMS/mfa.py:75 +#: mfas/SMS/mfa.py:92 mfas/SMS/mfa.py:101 +msgid "HTTP Server" +msgstr "HTTP zerbitzaria" + +#: mfas/SMS/mfa.py:41 +msgid "Ignore certificate errors" +msgstr "Ez ikusi ziurtagiri-erroreei" + +#: mfas/SMS/mfa.py:46 +msgid "" +"If checked, the server certificate will be ignored. This is useful if the " +"server uses a self-signed certificate." +msgstr "" +"Hautatzen bada, zerbitzariaren ziurtagiria ez ikusi egingo da. Hau " +"erabilgarria da zerbitzariak berez sinatutako ziurtagiria erabiltzen badu." + +#: mfas/SMS/mfa.py:52 +msgid "SMS sending method" +msgstr "SMSak bidaltzeko metodoa" + +#: mfas/SMS/mfa.py:54 mfas/SMS/mfa.py:108 +msgid "Method for sending SMS" +msgstr "SMSak bidaltzeko metodoa" + +#: mfas/SMS/mfa.py:63 +msgid "Headers for SMS requests" +msgstr "SMS eskaeren goiburuak" + +#: mfas/SMS/mfa.py:66 +msgid "" +"Headers for SMS requests. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @....\n" +"Headers are in the form of \"Header: Value\". (without the quotes)" +msgstr "" +"SMS eskaeren goiburuak. Aldagai hauek izan ditzake: * {kodea} - bidali " +"beharreko kodea * {telefonoa/+telefonoa} - telefono-zenbakia * {erabiltzaile-" +"izena} - erabiltzaile-izena * {justUsername} - erabiltzaile-izena @ gabe.... " +"Goiburuak sartuta daude \"Goiburua: balioa\" forma. (komatxorik gabe)" + +#: mfas/SMS/mfa.py:81 +msgid "Parameters for SMS POST/PUT sending" +msgstr "SMS POST/PUT bidaltzeko parametroak" + +#: mfas/SMS/mfa.py:84 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"Parameters for SMS sending via POST/PUT. It can contain the following " +"variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"POST/PUT bidez SMSak bidaltzeko parametroak. Aldagai hauek izan ditzake: * " +"{kodea} - bidali beharreko kodea * {telefonoa/+telefonoa} - telefono-" +"zenbakia * {erabiltzaile-izena} - erabiltzaile-izena * {justUsername} - " +"erabiltzaile-izena @ gabe...." + +#: mfas/SMS/mfa.py:96 +msgid "SMS encoding" +msgstr "SMS kodeketa" + +#: mfas/SMS/mfa.py:99 +msgid "Encoding for SMS" +msgstr "SMSetarako kodeketa" + +#: mfas/SMS/mfa.py:106 +msgid "SMS authentication method" +msgstr "SMS autentifikazio metodoa" + +#: mfas/SMS/mfa.py:110 mfas/SMS/mfa.py:124 mfas/SMS/mfa.py:133 +msgid "HTTP Authentication" +msgstr "HTTP autentifikazioa" + +#: mfas/SMS/mfa.py:113 +msgid "HTTP Basic Auth" +msgstr "HTTP oinarrizko autentifikazioa" + +#: mfas/SMS/mfa.py:114 +msgid "HTTP Digest Auth" +msgstr "HTTP Digest Auth" + +#: mfas/SMS/mfa.py:120 +msgid "SMS authentication user or token" +msgstr "SMS autentifikazioaren erabiltzailea edo tokena" + +#: mfas/SMS/mfa.py:122 +msgid "User or token for SMS authentication" +msgstr "SMS autentifikaziorako erabiltzailea edo tokena" + +#: mfas/SMS/mfa.py:129 +msgid "SMS authentication password" +msgstr "SMS autentifikazio pasahitza" + +#: mfas/SMS/mfa.py:131 +msgid "Password for SMS authentication" +msgstr "SMS autentifikaziorako pasahitza" + +#: mfas/SMS/mfa.py:138 +msgid "SMS response OK regex" +msgstr "SMS erantzuna OK regex" + +#: mfas/SMS/mfa.py:141 +msgid "" +"Regex for SMS response OK. If emty, the response is considered OK if status " +"code is 200." +msgstr "" +"SMS erantzunerako erregulazioa Ados. Hutsik badago, erantzuna ontzat joko da " +"egoera kodea 200 bada." + +#: mfas/SMS/mfa.py:144 mfas/SMS/mfa.py:153 +msgid "HTTP Response" +msgstr "HTTP Erantzuna" + +#: mfas/SMS/mfa.py:148 +msgid "SMS response error action" +msgstr "SMS erantzunaren errore ekintza" + +#: mfas/SMS/mfa.py:151 +msgid "Action for SMS response error" +msgstr "SMSen erantzunaren errorearen ekintza" + +#: mfas/SMS/mfa.py:155 +msgid "Allow user log in without MFA" +msgstr "Baimendu erabiltzaileari saioa hasteko MFArik gabe" + +#: mfas/SMS/mfa.py:156 +msgid "Deny user log in" +msgstr "Ukatu erabiltzaileari saioa hastea" + +#: mfas/SMS/mfa.py:199 +msgid "SMS sending failed" +msgstr "Ezin izan da SMS bidaltzean" + +#: mfas/SMS/mfa.py:263 web/views/modern.py:275 +msgid "MFA Code" +msgstr "MFA kodea" + +#: mfas/Sample/mfa.py:16 +msgid "Sample Multi Factor" +msgstr "Faktore anitzeko lagina" + +#: mfas/Sample/mfa.py:18 +msgid "Sample Multi Factor Authenticator" +msgstr "Faktore anitzeko autentifikazio lagina" + +#: mfas/Sample/mfa.py:22 +msgid "Sample useless field" +msgstr "Alferrikako eremu lagina" + +#: mfas/Sample/mfa.py:25 +msgid "This is a useless field, for sample and testing pourposes" +msgstr "Hau alferrikako eremua da, laginak eta probak egiteko" + #: models/calendar_action.py:63 msgid "Publish" msgstr "Argitaratu" @@ -2835,7 +3224,7 @@ msgid "Service pool for report" msgstr "Txostena emateko zerbitzu-multzoa" #: reports/auto/fields.py:104 reports/lists/users.py:61 -#: web/forms/LoginForm.py:50 +#: web/forms/LoginForm.py:51 msgid "Authenticator" msgstr "Autentikatzaile" @@ -2887,11 +3276,11 @@ msgstr "Erabiltzaile ID" msgid "Real Name" msgstr "Benetazko Izena" -#: reports/stats/auth_stats.py:58 +#: reports/stats/auth_stats.py:59 msgid "Statistics by authenticator" msgstr "Estatistikak autentikatzailearen arabera" -#: reports/stats/auth_stats.py:60 +#: reports/stats/auth_stats.py:61 msgid "" "Generates a report with the statistics of an authenticator for a desired " "period" @@ -2899,14 +3288,14 @@ msgstr "" "Nahi duzun aldirako autentifikatzaile baten estatistikekin txostena sortzen " "du" -#: reports/stats/auth_stats.py:136 reports/stats/usage_by_pool.py:146 +#: reports/stats/auth_stats.py:123 reports/stats/usage_by_pool.py:146 #: templates/uds/reports/stats/authenticator_stats.html:4 #: templates/uds/reports/stats/usage-by-pool.html:4 #: templates/uds/reports/stats/usage-by-pool.html:6 msgid "Users usage list" msgstr "Erabiltzaileen erabilera zerrenda" -#: reports/stats/auth_stats.py:137 reports/stats/usage_by_pool.py:147 +#: reports/stats/auth_stats.py:124 reports/stats/usage_by_pool.py:147 msgid "UDS Report of users usage" msgstr "Erabiltzaileen erabileraren txostena" @@ -2981,30 +3370,26 @@ msgstr "Tarte kopurua" msgid "Number of sampling points used in charts" msgstr "Txarteletan erabilitako laginketa-puntuen kopurua" -#: reports/stats/pools_performance.py:128 -msgid "Select at least a service pool for the report" -msgstr "Aukeratu gutxienez zerbitzu-pool bat txostenarentzat" - -#: reports/stats/pools_performance.py:211 +#: reports/stats/pools_performance.py:194 msgid "Distinct Users" msgstr "Erabiltzaile desberdinak" -#: reports/stats/pools_performance.py:230 -#: reports/stats/pools_performance.py:242 -#: reports/stats/pools_performance.py:287 +#: reports/stats/pools_performance.py:213 +#: reports/stats/pools_performance.py:225 +#: reports/stats/pools_performance.py:270 #: templates/uds/reports/stats/pools-performance.html:36 msgid "Accesses" msgstr "Sarbideak" -#: reports/stats/pools_performance.py:258 +#: reports/stats/pools_performance.py:241 msgid "UDS Pools Performance Report" msgstr "UDS Pools Performance Report" -#: reports/stats/pools_performance.py:259 +#: reports/stats/pools_performance.py:242 msgid "Pools Performance" msgstr "Pool-en errendimendua" -#: reports/stats/pools_performance.py:285 reports/stats/user_access.py:297 +#: reports/stats/pools_performance.py:268 reports/stats/user_access.py:282 #: templates/uds/reports/stats/pools-performance.html:34 #: templates/uds/reports/stats/user-access.html:34 msgid "Date range" @@ -3018,21 +3403,21 @@ msgstr "Pool-en erabilera egun batean" msgid "Pools usage counters for an specific day" msgstr "Pool erabilera egun jakin bateko kontulariak" -#: reports/stats/pools_usage_day.py:128 +#: reports/stats/pools_usage_day.py:126 msgid "Services by hour" msgstr "Orduko zerbitzuak" -#: reports/stats/pools_usage_day.py:133 reports/stats/pools_usage_day.py:171 -#: reports/stats/user_access.py:228 reports/stats/user_access.py:240 +#: reports/stats/pools_usage_day.py:131 reports/stats/pools_usage_day.py:169 +#: reports/stats/user_access.py:213 reports/stats/user_access.py:225 #: templates/uds/reports/stats/pools-usage-day.html:28 msgid "Hour" msgstr "Ordu" -#: reports/stats/pools_usage_day.py:152 +#: reports/stats/pools_usage_day.py:150 msgid "Services usage report for a day" msgstr "Zerbitzuen erabilera txostena egun baterako" -#: reports/stats/pools_usage_day.py:153 +#: reports/stats/pools_usage_day.py:151 msgid "Service usage report" msgstr "Zerbitzuaren erabilera txostena" @@ -3100,63 +3485,63 @@ msgstr "POOL GUZTIAK" msgid "Seconds" msgstr "Segunduak" -#: reports/stats/user_access.py:59 reports/stats/user_access.py:281 +#: reports/stats/user_access.py:59 reports/stats/user_access.py:266 msgid "Users access report by date" msgstr "Erabiltzaileek data arabera jasotzen dute" -#: reports/stats/user_access.py:60 reports/stats/user_access.py:282 +#: reports/stats/user_access.py:60 reports/stats/user_access.py:267 msgid "Report of user access to platform by date" msgstr "Plataformaren erabiltzaileen sarbide data txostena" -#: reports/stats/user_access.py:186 +#: reports/stats/user_access.py:171 msgid "Users Access (global)" msgstr "Erabiltzaile sarbidea (global)" -#: reports/stats/user_access.py:206 +#: reports/stats/user_access.py:191 msgid "Users Access (by week)" msgstr "Erabiltzaile sarbidea (astean)" -#: reports/stats/user_access.py:209 reports/stats/user_access.py:245 +#: reports/stats/user_access.py:194 reports/stats/user_access.py:230 msgid "Monday" msgstr "Astelehena" -#: reports/stats/user_access.py:210 reports/stats/user_access.py:246 +#: reports/stats/user_access.py:195 reports/stats/user_access.py:231 msgid "Tuesday" msgstr "Asteartea" -#: reports/stats/user_access.py:211 reports/stats/user_access.py:247 +#: reports/stats/user_access.py:196 reports/stats/user_access.py:232 msgid "Wednesday" msgstr "Asteazkena" -#: reports/stats/user_access.py:212 reports/stats/user_access.py:248 +#: reports/stats/user_access.py:197 reports/stats/user_access.py:233 msgid "Thursday" msgstr "Osteguna" -#: reports/stats/user_access.py:213 reports/stats/user_access.py:249 +#: reports/stats/user_access.py:198 reports/stats/user_access.py:234 msgid "Friday" msgstr "Ostirala" -#: reports/stats/user_access.py:214 reports/stats/user_access.py:250 +#: reports/stats/user_access.py:199 reports/stats/user_access.py:235 msgid "Saturday" msgstr "Larunbata" -#: reports/stats/user_access.py:215 reports/stats/user_access.py:251 +#: reports/stats/user_access.py:200 reports/stats/user_access.py:236 msgid "Sunday" msgstr "Igandea" -#: reports/stats/user_access.py:217 reports/stats/user_access.py:243 +#: reports/stats/user_access.py:202 reports/stats/user_access.py:228 msgid "Day of week" msgstr "Asteko egunean" -#: reports/stats/user_access.py:226 reports/stats/user_access.py:238 +#: reports/stats/user_access.py:211 reports/stats/user_access.py:223 msgid "Users Access (by hour)" msgstr "Erabiltzaile sarbidea (ordubete)" -#: reports/stats/user_access.py:267 +#: reports/stats/user_access.py:252 msgid "Users access to UDS" msgstr "Erabiltzaileak UDS-ra sartzeko" -#: reports/stats/user_access.py:268 +#: reports/stats/user_access.py:253 msgid "UDS Report for users access" msgstr "Erabiltzaileentzako sarbideen UDS txostena" @@ -4394,12 +4779,12 @@ msgstr "IP Makinen hornitzaile estatikoa" msgid "Provides connection to machines by IP" msgstr "Makinen konexioa eskaintzen du IP bidez" -#: services/PhysicalMachines/service_multi.py:64 +#: services/PhysicalMachines/service_multi.py:62 #: services/Vmware_enterprise/service_fixed.py:55 msgid "Service Token" msgstr "Zerbitzuaren tokena" -#: services/PhysicalMachines/service_multi.py:67 +#: services/PhysicalMachines/service_multi.py:65 #: services/Vmware_enterprise/service_fixed.py:57 msgid "" "Service token that will be used by actors to communicate with service. Leave " @@ -4408,41 +4793,41 @@ msgstr "" "Aktoreek zerbitzuarekin komunikatzeko erabiliko duten token zerbitzua. Utzi " "hutsik iraunkorra esleitzeko." -#: services/PhysicalMachines/service_multi.py:75 +#: services/PhysicalMachines/service_multi.py:73 #: services/RDS_enterprise/provider.py:51 msgid "List of servers" msgstr "Zerbitzari zerrenda" -#: services/PhysicalMachines/service_multi.py:76 +#: services/PhysicalMachines/service_multi.py:74 msgid "List of servers available for this service" msgstr "Zerbitzu honetarako erabilgarri dauden zerbitzuen zerrenda" -#: services/PhysicalMachines/service_multi.py:81 +#: services/PhysicalMachines/service_multi.py:79 msgid "Check Port" msgstr "Begiratu Portua" -#: services/PhysicalMachines/service_multi.py:85 +#: services/PhysicalMachines/service_multi.py:83 msgid "" "If non zero, only hosts responding to connection on that port will be served." msgstr "" "Zero ez bada, portu horretako konexioei erantzuten dieten ostalariak soilik " "zerbitzatuko dira." -#: services/PhysicalMachines/service_multi.py:92 +#: services/PhysicalMachines/service_multi.py:90 msgid "Skip time" msgstr "Saltatu denbora" -#: services/PhysicalMachines/service_multi.py:95 +#: services/PhysicalMachines/service_multi.py:93 msgid "If a host fails to check, skip it for this time (in minutes)." msgstr "" "Ostalari batek huts egiten badu egiaztatzen bada, salta ezazu oraingoan " "(minutu batzuetan)." -#: services/PhysicalMachines/service_multi.py:103 +#: services/PhysicalMachines/service_multi.py:101 msgid "Max session per machine" msgstr "Makina bakoitzeko gehienezko saioa" -#: services/PhysicalMachines/service_multi.py:107 +#: services/PhysicalMachines/service_multi.py:105 msgid "" "Maximum session duration before UDS thinks this machine got locked and " "releases it (hours). 0 means \"never\"." @@ -4450,24 +4835,24 @@ msgstr "" "Saioaren gehieneko iraupena, UDSk makina hau blokeatu egin dela eta askatu " "(orduak) pentsatu aurretik. 0 \"inoiz\" esan nahi du." -#: services/PhysicalMachines/service_multi.py:114 +#: services/PhysicalMachines/service_multi.py:112 msgid "Lock machine by external access" msgstr "Blokeatu makina kanpoko sarbidearen bidez" -#: services/PhysicalMachines/service_multi.py:115 +#: services/PhysicalMachines/service_multi.py:113 msgid "" "If checked, UDS will lock the machine if it is accesed from outside UDS." msgstr "Markatuta badago, UDS blokeatuko du makina UDS kanpotik sartzen bada." -#: services/PhysicalMachines/service_multi.py:122 +#: services/PhysicalMachines/service_multi.py:120 msgid "Static Multiple IP" msgstr "IP estatiko anitz" -#: services/PhysicalMachines/service_multi.py:124 +#: services/PhysicalMachines/service_multi.py:122 msgid "This service provides access to POWERED-ON Machines by IP" msgstr "Zerbitzu honek POWERED-ON makinak IP bidez sarbidea eskaintzen du" -#: services/PhysicalMachines/service_multi.py:158 +#: services/PhysicalMachines/service_multi.py:156 msgid "Invalid value detected on servers list: \"{}\"" msgstr "Zerbitzari zerrendan hautemandako balio baliogabea: \"{}\"" @@ -5369,47 +5754,47 @@ msgstr "Itzala" msgid "Shadow memory multiplier (use with care)" msgstr "Itzal memoria biderkatzailea (erabili arretaz)" -#: temp_for_locales.py:96 +#: temp_for_locales.py:99 msgid "Spanish" msgstr "Gaztelera" -#: temp_for_locales.py:97 +#: temp_for_locales.py:100 msgid "English" msgstr "English" -#: temp_for_locales.py:98 +#: temp_for_locales.py:101 msgid "French" msgstr "Frantses" -#: temp_for_locales.py:99 +#: temp_for_locales.py:102 msgid "German" msgstr "Aleman" -#: temp_for_locales.py:100 +#: temp_for_locales.py:103 msgid "Portuguese" msgstr "Portugesa" -#: temp_for_locales.py:101 +#: temp_for_locales.py:104 msgid "Italian" msgstr "Italiera" -#: temp_for_locales.py:102 +#: temp_for_locales.py:105 msgid "Basque" msgstr "Euskera" -#: temp_for_locales.py:103 +#: temp_for_locales.py:106 msgid "Arabic" msgstr "Arabiera" -#: temp_for_locales.py:104 +#: temp_for_locales.py:107 msgid "Russian" msgstr "Errusiera" -#: temp_for_locales.py:105 +#: temp_for_locales.py:108 msgid "Catalan" msgstr "Katalan" -#: temp_for_locales.py:106 +#: temp_for_locales.py:109 msgid "Chinese" msgstr "Txinera" @@ -5615,7 +6000,7 @@ msgstr "Erakutsi horma-papera" #: transports/HTML5RDP/html5rdp.py:134 #: transports/HTML5RDS_enterprise/html5rds.py:123 -#: transports/RDP/rdp_base.py:222 +#: transports/RDP/rdp_base.py:241 msgid "" "If checked, the wallpaper and themes will be shown on machine (better user " "experience, more bandwidth)" @@ -5625,19 +6010,19 @@ msgstr "" #: transports/HTML5RDP/html5rdp.py:139 #: transports/HTML5RDS_enterprise/html5rds.py:128 -#: transports/RDP/rdp_base.py:235 +#: transports/RDP/rdp_base.py:254 msgid "Allow Desk.Comp." msgstr "Baimendu Desk.Comp." #: transports/HTML5RDP/html5rdp.py:141 #: transports/HTML5RDS_enterprise/html5rds.py:130 -#: transports/RDP/rdp_base.py:237 +#: transports/RDP/rdp_base.py:256 msgid "If checked, desktop composition will be allowed" msgstr "Egiaztatuta badago, mahaigaineko konposizioa onartuko da" #: transports/HTML5RDP/html5rdp.py:145 #: transports/HTML5RDS_enterprise/html5rds.py:134 -#: transports/RDP/rdp_base.py:241 transports/RDS_enterprise/rds_base.py:150 +#: transports/RDP/rdp_base.py:260 transports/RDS_enterprise/rds_base.py:150 msgid "Font Smoothing" msgstr "Letra tipoaren leuntzea" @@ -5898,11 +6283,6 @@ msgstr "Behartu konexio guztiak leiho berri batean irekitzera." msgid "Override UDS window and replace it with the connection." msgstr "Gainidatzi UDS leihoa eta ordeztu konexioarekin." -#: transports/HTML5RDP/html5rdp.py:268 -#: transports/HTML5RDS_enterprise/html5rds.py:255 -msgid "Security" -msgstr "Segurtasuna" - #: transports/HTML5RDP/html5rdp.py:269 #: transports/HTML5RDS_enterprise/html5rds.py:256 msgid "Connection security mode for Guacamole RDP connection" @@ -5940,11 +6320,11 @@ msgstr "" msgid "TLS (Transport Security Layer encryption)" msgstr "TLS (Garraioaren segurtasunaren geruza enkriptatzea)" -#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:173 +#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:192 msgid "RDP Port" msgstr "RDP ataka" -#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:174 +#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:193 msgid "Use this port as RDP port. Defaults to 3389." msgstr "Erabili ataka hau RDP ataka gisa. 3389 balio lehenetsia." @@ -5962,13 +6342,13 @@ msgstr "" "Glyptodon Enterprise tunelerako pertsonalizatutako bidea. (Glyptodon " "Enterprise Tunnelerako soilik balio du)" -#: transports/HTML5RDP/html5rdp.py:327 +#: transports/HTML5RDP/html5rdp.py:326 #: transports/HTML5RDS_enterprise/html5rds.py:296 #: transports/HTML5VNC/html5vnc.py:187 msgid "The server must be http or https" msgstr "Zerbitzariak http edo https izan behar du" -#: transports/HTML5RDP/html5rdp.py:332 +#: transports/HTML5RDP/html5rdp.py:331 #: transports/HTML5RDS_enterprise/html5rds.py:301 msgid "" "Empty credentials (on Credentials tab) is only allowed with Security level " @@ -6009,7 +6389,7 @@ msgstr "VNC zerbitzariaren ataka" msgid "Port of the VNC server." msgstr "VNC zerbitzariaren ataka." -#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:205 +#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:224 #: transports/RDS_enterprise/rds_base.py:136 msgid "Color depth" msgstr "Koloreen sakonera" @@ -6064,12 +6444,12 @@ msgid "If checked, the connection will be opened in full screen mode" msgstr "Markatuta badago, konexioa pantaila osoko moduan irekiko da" #: transports/NICEDCV_enterprise/nicedcv_base.py:66 -#: transports/RDP/rdp_base.py:227 +#: transports/RDP/rdp_base.py:246 msgid "Multiple monitors" msgstr "Hainbat monitore" #: transports/NICEDCV_enterprise/nicedcv_base.py:69 -#: transports/RDP/rdp_base.py:230 +#: transports/RDP/rdp_base.py:249 msgid "" "If checked, all client monitors will be used for displaying (only works on " "windows clients)" @@ -6125,7 +6505,7 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcvtunnel.py:91 #: transports/NoMachine_enterprise/nomachine_tunneltransport.py:114 -#: transports/RDP/rdptunnel.py:135 transports/RDS_enterprise/rdstunnel.py:126 +#: transports/RDP/rdptunnel.py:136 transports/RDS_enterprise/rdstunnel.py:126 #: transports/SPICE/spice_tunnel.py:107 transports/X2GO/x2go_tunnel.py:116 msgid "Must use HOST:PORT in Tunnel Server Field" msgstr "Tunnel zerbitzariaren eremuan HOSTALARI : PORTUA erabili behar da " @@ -6267,89 +6647,97 @@ msgstr "Gaitu webcam" msgid "If checked, webcam will be redirected (ONLY Windows)." msgstr "Markatuta badago, webcam-a birbideratuko da (Windows BAKARRIK)." -#: transports/RDP/rdp_base.py:164 transports/RDS_enterprise/rds_base.py:128 +#: transports/RDP/rdp_base.py:164 +msgid "USB redirection" +msgstr "USB birbideratzea" + +#: transports/RDP/rdp_base.py:166 +msgid "USB redirection policy" +msgstr "USB birbideratze politika" + +#: transports/RDP/rdp_base.py:183 transports/RDS_enterprise/rds_base.py:128 msgid "Credssp Support" msgstr "Credssp laguntza" -#: transports/RDP/rdp_base.py:166 transports/RDS_enterprise/rds_base.py:130 +#: transports/RDP/rdp_base.py:185 transports/RDS_enterprise/rds_base.py:130 msgid "If checked, will enable Credentials Provider Support)" msgstr "Hautatuta badago, kredentzialak hornitzailearen euskarria gaituko du)" -#: transports/RDP/rdp_base.py:181 +#: transports/RDP/rdp_base.py:200 msgid "Screen Size" msgstr "Pantaila-neurria" -#: transports/RDP/rdp_base.py:183 +#: transports/RDP/rdp_base.py:202 msgid "Screen size for this transport" msgstr "Garraioaren tamainaren tamaina" -#: transports/RDP/rdp_base.py:207 transports/RDS_enterprise/rds_base.py:138 +#: transports/RDP/rdp_base.py:226 transports/RDS_enterprise/rds_base.py:138 msgid "Color depth for this connection" msgstr "Kolorearen sakontasuna konexio honetarako" -#: transports/RDP/rdp_base.py:219 +#: transports/RDP/rdp_base.py:238 msgid "Wallpaper/theme" msgstr "Wallpaper / gaiaren" -#: transports/RDP/rdp_base.py:244 +#: transports/RDP/rdp_base.py:263 msgid "If checked, fonts smoothing will be allowed" msgstr "Egiaztatuta badago, letra-tipoak leuntzeko aukera izango da" -#: transports/RDP/rdp_base.py:248 +#: transports/RDP/rdp_base.py:267 msgid "Connection Bar" msgstr "Konexio barra" -#: transports/RDP/rdp_base.py:250 +#: transports/RDP/rdp_base.py:269 msgid "If checked, connection bar will be shown (only on Windows clients)" msgstr "" "Egiaztatuta badago, konexioaren barra agertuko da (Windows bezeroetan soilik)" -#: transports/RDP/rdp_base.py:256 transports/RDS_enterprise/rds_base.py:181 +#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:181 msgid "Multimedia sync" msgstr "Multimedia sinkronizazioa" -#: transports/RDP/rdp_base.py:259 transports/RDS_enterprise/rds_base.py:184 +#: transports/RDP/rdp_base.py:278 transports/RDS_enterprise/rds_base.py:184 msgid "If checked. Linux client will use multimedia parameter for xfreerdp" msgstr "" "Egiaztatuta badago. Linux bezeroak xfreerdp-ren multimedia parametroa " "erabiliko du" -#: transports/RDP/rdp_base.py:264 transports/RDS_enterprise/rds_base.py:189 +#: transports/RDP/rdp_base.py:283 transports/RDS_enterprise/rds_base.py:189 msgid "Use Alsa" msgstr "Erabili Alsa" -#: transports/RDP/rdp_base.py:267 transports/RDS_enterprise/rds_base.py:192 +#: transports/RDP/rdp_base.py:286 transports/RDS_enterprise/rds_base.py:192 msgid "" "If checked, Linux client will try to use ALSA, otherwise Pulse will be used" msgstr "" "Egiaztatuta badago, Linux bezeroak ALSA erabiliko du, bestela Pulse " "erabiliko da" -#: transports/RDP/rdp_base.py:272 transports/RDS_enterprise/rds_base.py:197 +#: transports/RDP/rdp_base.py:291 transports/RDS_enterprise/rds_base.py:197 msgid "Printer string" msgstr "Inprimagailuen katea" -#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:200 +#: transports/RDP/rdp_base.py:294 transports/RDS_enterprise/rds_base.py:200 msgid "If printer is checked, the printer string used with xfreerdp client" msgstr "" "Inprimagailua hautatuta badago, xfreerdp bezeroarekin erabiliko den " "inprimagailuaren katea" -#: transports/RDP/rdp_base.py:281 transports/RDS_enterprise/rds_base.py:206 +#: transports/RDP/rdp_base.py:300 transports/RDS_enterprise/rds_base.py:206 msgid "Smartcard string" msgstr "Smartcard katea" -#: transports/RDP/rdp_base.py:284 transports/RDS_enterprise/rds_base.py:209 +#: transports/RDP/rdp_base.py:303 transports/RDS_enterprise/rds_base.py:209 msgid "If smartcard is checked, the smartcard string used with xfreerdp client" msgstr "" "Smartcard egiaztatzen bada, xfreerdp bezeroarekin erabilitako smartcard katea" -#: transports/RDP/rdp_base.py:290 transports/RDP/rdp_base.py:310 +#: transports/RDP/rdp_base.py:309 transports/RDP/rdp_base.py:329 #: transports/RDS_enterprise/rds_base.py:215 msgid "Custom parameters" msgstr "Parametro pertsonalizatuak" -#: transports/RDP/rdp_base.py:293 transports/RDS_enterprise/rds_base.py:218 +#: transports/RDP/rdp_base.py:312 transports/RDS_enterprise/rds_base.py:218 msgid "" "If not empty, extra parameter to include for Linux Client (for example /usb:" "id,dev:054c:0268, or aything compatible with your xfreerdp client)" @@ -6357,11 +6745,11 @@ msgstr "" "Ez bada hutsik, parametro gehigarria Linux Client-era sartzeko (adibidez / " "usb: id, dev: 054c: 0268 edo zure xfreerdp bezeroarekin bateragarria)" -#: transports/RDP/rdp_base.py:300 +#: transports/RDP/rdp_base.py:319 msgid "Allow Microsoft Rdp Client" msgstr "Baimendu Microsoft Rdp bezeroa" -#: transports/RDP/rdp_base.py:303 +#: transports/RDP/rdp_base.py:322 msgid "" "If checked, allows use of Microsoft Remote Desktop Client. PASSWORD WILL BE " "PROMPTED!" @@ -6369,7 +6757,7 @@ msgstr "" "Markatuta badago, Microsoft Remote Desktop Client erabiltzeko baimena ematen " "du. PASAHITZA AHAL IZANGO DA!" -#: transports/RDP/rdp_base.py:313 +#: transports/RDP/rdp_base.py:332 msgid "" "If not empty, extra parameter to include for Mac OS X Freerdp Client (for " "example /usb:id,dev:054c:0268, or aything compatible with your xfreerdp " @@ -6619,71 +7007,71 @@ msgstr "Autentifikazio errore gehiegi. Erabiltzailea aldi baterako blokeatu da" msgid "Access tried from an unallowed source" msgstr "Sarbidea baimendu gabeko iturri batetik saiatu da" -#: web/util/authentication.py:155 +#: web/util/authentication.py:158 msgid "Invalid data" msgstr "Datu baliogabeak" -#: web/util/configjs.py:170 +#: web/util/configjs.py:163 msgid "Access limited by calendar" msgstr "Sarbidea egutegian mugatua" -#: web/util/configjs.py:226 +#: web/util/configjs.py:222 msgid "Windows client" msgstr "Windows bezeroa" -#: web/util/configjs.py:230 +#: web/util/configjs.py:226 msgid "Mac OS X client" msgstr "Mac OS X bezeroa" -#: web/util/configjs.py:233 +#: web/util/configjs.py:229 msgid "Debian based Linux client" msgstr "Debian oinarritutako Linux bezeroa" -#: web/util/configjs.py:235 web/util/configjs.py:243 web/util/configjs.py:263 +#: web/util/configjs.py:231 web/util/configjs.py:239 web/util/configjs.py:259 msgid "(requires Python-3.6 or newer)" msgstr "(Python-3.6 edo berriagoa behar du)" -#: web/util/configjs.py:241 +#: web/util/configjs.py:237 msgid "RPM based Linux client (Fedora, Suse, ...)" msgstr "RPM oinarritutako Linux bezeroa (Fedora, Suse, ...)" -#: web/util/configjs.py:249 +#: web/util/configjs.py:245 msgid "Binary appimage X86_64 Linux client" msgstr "Appimage bitarra X86_64 Linux bezeroa" -#: web/util/configjs.py:255 +#: web/util/configjs.py:251 msgid "Binary appimage Raspberry Linux client" msgstr "Appimage bitarra Raspberry Linux bezeroa" -#: web/util/configjs.py:261 +#: web/util/configjs.py:257 msgid "Generic .tar.gz Linux client" msgstr "Generic .tar.gz Linux bezeroa" -#: web/util/errors.py:76 +#: web/util/errors.py:78 msgid "Unknown error" msgstr "Errore ezezaguna" -#: web/util/errors.py:83 +#: web/util/errors.py:85 msgid "Maximum services limit reached. Please, contact administrator" msgstr "Gehienezko zerbitzuak mugara iritsi. Mesedez, harremanetan ipini" -#: web/util/errors.py:84 +#: web/util/errors.py:86 msgid "You need to enable cookies to let this application work" msgstr "Cookieak gaitu behar dituzu aplikazioa lan egiteko" -#: web/util/errors.py:86 +#: web/util/errors.py:88 msgid "Authenticator not found" msgstr "Autentikatzailea ez da aurkitu" -#: web/util/errors.py:87 +#: web/util/errors.py:89 msgid "Invalid authenticator" msgstr "Balio gabeko autentifikatzailea" -#: web/util/errors.py:88 +#: web/util/errors.py:90 msgid "Invalid request received" msgstr "Jasotako eskaera baliogabea" -#: web/util/errors.py:90 +#: web/util/errors.py:92 msgid "" "Your browser is not supported. Please, upgrade it to a modern HTML5 browser " "like Firefox or Chrome" @@ -6691,39 +7079,43 @@ msgstr "" "Zure arakatzailea ez da onartzen. Mesedez, eguneratu HTML5 arakatzaile " "moderno bat Firefox edo Chrome bezalako" -#: web/util/errors.py:92 +#: web/util/errors.py:94 msgid "The requested service is in maintenance mode" msgstr "Eskatutako zerbitzua mantenimendu moduan dago" -#: web/util/errors.py:93 +#: web/util/errors.py:95 msgid "" "The service is not ready.\n" "Please, try again in a few moments." msgstr "Zerbitzua ez dago prest. Saiatu berriro uneoro." -#: web/util/errors.py:94 +#: web/util/errors.py:96 msgid "Preparing service" msgstr "Zerbitzua prestatzen" -#: web/util/errors.py:95 +#: web/util/errors.py:97 msgid "Service access denied by calendars" msgstr "Zerbitzu sarbidea egutegien bidez ukatua" -#: web/util/errors.py:96 +#: web/util/errors.py:98 msgid "Page not found" msgstr "Ez da orria aurkitu" -#: web/util/errors.py:97 +#: web/util/errors.py:99 msgid "Unexpected error" msgstr "Ustekabeko errorea" -#: web/util/errors.py:98 +#: web/util/errors.py:100 msgid "" "Reloading this page is not supported. Please, reopen service from origin." msgstr "" "Orrialde hau berriro kargatzen ez da onartzen. Mesedez, berriro ireki " "zerbitzua jatorrian." +#: web/util/errors.py:101 +msgid "Invalid Multi-Factor Authentication code" +msgstr "Faktore anitzeko autentifikazio-kode baliogabea" + #: web/util/services.py:319 msgid "" "This service is about to be replaced by a new version. Please, close the " @@ -6745,6 +7137,14 @@ msgstr "" "Zure zerbitzua sortzen ari da, mesedez, itxaron segundo batzuk betetzen " "dugun bitartean.)" -#: web/views/auth.py:177 +#: web/views/auth.py:189 msgid "Authenticator does not provide information" msgstr "Autentikatzaileak ez du informaziorik eman." + +#: web/views/modern.py:269 +msgid "{} days" +msgstr "{} egun" + +#: web/views/modern.py:271 +msgid "{} hours" +msgstr "{} ordu" diff --git a/server/src/uds/locale/eu/LC_MESSAGES/djangojs.po b/server/src/uds/locale/eu/LC_MESSAGES/djangojs.po index 1e837d81..4d5e16de 100644 --- a/server/src/uds/locale/eu/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/eu/LC_MESSAGES/djangojs.po @@ -13,9 +13,9 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-10 13:33+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:16+0000\n" +"Last-Translator: Víctor Alonso , 2020\n" "Language-Team: Basque (http://www.transifex.com/openuds/openuds/language/" "eu/)\n" "Language: eu\n" @@ -35,14 +35,14 @@ msgstr "Nagusia" #: static/admin/main.js:1 static/admin/translations-fakejs.js:11 #: static/admin/translations-fakejs.js:29 -#: static/admin/translations-fakejs.js:179 -#: static/admin/translations-fakejs.js:191 -#: static/admin/translations-fakejs.js:193 -#: static/admin/translations-fakejs.js:195 -#: static/admin/translations-fakejs.js:197 -#: static/admin/translations-fakejs.js:254 -#: static/admin/translations-fakejs.js:256 -#: static/admin/translations-fakejs.js:258 static/modern/main-es5.js:1 +#: static/admin/translations-fakejs.js:141 +#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:216 +#: static/admin/translations-fakejs.js:218 +#: static/admin/translations-fakejs.js:220 static/modern/main-es5.js:1 #: static/modern/translations-fakejs.js:14 msgid "Error" msgstr "Errorea" @@ -69,12 +69,12 @@ msgstr "Datuak kargatzen ..." #: static/admin/translations-fakejs.js:38 #: static/admin/translations-fakejs.js:40 #: static/admin/translations-fakejs.js:43 -#: static/admin/translations-fakejs.js:134 -#: static/admin/translations-fakejs.js:216 -#: static/admin/translations-fakejs.js:221 -#: static/admin/translations-fakejs.js:253 -#: static/admin/translations-fakejs.js:261 -#: static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:96 +#: static/admin/translations-fakejs.js:178 +#: static/admin/translations-fakejs.js:183 +#: static/admin/translations-fakejs.js:215 +#: static/admin/translations-fakejs.js:223 +#: static/admin/translations-fakejs.js:228 msgid "dismiss" msgstr "baztertu" @@ -91,7 +91,7 @@ msgid "Test passed successfully" msgstr "Egiaztapena arrakastaz gainditua" #: static/admin/main.js:1 static/admin/translations-fakejs.js:37 -#: static/admin/translations-fakejs.js:260 +#: static/admin/translations-fakejs.js:222 msgid "Successfully saved" msgstr "Ondo gordeta." @@ -147,58 +147,58 @@ msgstr "Multzo taldea" msgid "Go to" msgstr "Joan" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:275 msgid "yes" msgstr "Bai" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:276 msgid "no" msgstr "Ez" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:269 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 msgid "Error saving: " msgstr "Gordetzerakoan errorea:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:270 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 msgid "Error saving element" msgstr "Elementua gordetzerakoan errorea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:271 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:274 msgid "Error handling your request" msgstr "Errorea eskaera kudeatzean" #: static/admin/main.js:1 static/admin/translations-fakejs.js:56 -#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:115 msgid "Sunday" msgstr "Igandea" #: static/admin/main.js:1 static/admin/translations-fakejs.js:57 -#: static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:116 msgid "Monday" msgstr "Astelehena" #: static/admin/main.js:1 static/admin/translations-fakejs.js:58 -#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:117 msgid "Tuesday" msgstr "Asteartea" #: static/admin/main.js:1 static/admin/translations-fakejs.js:59 -#: static/admin/translations-fakejs.js:156 +#: static/admin/translations-fakejs.js:118 msgid "Wednesday" msgstr "Asteazkena" #: static/admin/main.js:1 static/admin/translations-fakejs.js:60 -#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:119 msgid "Thursday" msgstr "Osteguna" #: static/admin/main.js:1 static/admin/translations-fakejs.js:61 -#: static/admin/translations-fakejs.js:158 +#: static/admin/translations-fakejs.js:120 msgid "Friday" msgstr "Ostirala" #: static/admin/main.js:1 static/admin/translations-fakejs.js:62 -#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:121 msgid "Saturday" msgstr "Larunbata" @@ -270,20 +270,20 @@ msgstr "#SERVICES_NUMBER# Erabiltzaile-zerbitzu" msgid "#RESTRAINED_NUMBER# restrained services!" msgstr "#RESTRAINED_NUMBER# murriztutako zerbitzuak!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 -#: static/admin/translations-fakejs.js:249 -#: static/admin/translations-fakejs.js:402 -#: static/admin/translations-fakejs.js:454 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:211 +#: static/admin/translations-fakejs.js:265 +#: static/admin/translations-fakejs.js:366 +#: static/admin/translations-fakejs.js:418 msgid "Assigned services" msgstr "Zerbitzu esleituak" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 msgid "Services in use" msgstr "Erabilitako zerbitzuak" #: static/admin/main.js:1 static/admin/translations-fakejs.js:21 -#: static/admin/translations-fakejs.js:292 -#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:303 #: static/modern/translations-fakejs.js:30 msgid "Filter" msgstr "iragazkia" @@ -301,25 +301,25 @@ msgid "Full Access" msgstr "Sarbide osoa" #: static/admin/main.js:1 static/admin/translations-fakejs.js:15 -#: static/admin/translations-fakejs.js:362 -#: static/admin/translations-fakejs.js:409 -#: static/admin/translations-fakejs.js:414 +#: static/admin/translations-fakejs.js:373 +#: static/admin/translations-fakejs.js:378 +#: static/admin/translations-fakejs.js:489 msgid "User" msgstr "Erabiltzailea" #: static/admin/main.js:1 static/admin/translations-fakejs.js:16 -#: static/admin/translations-fakejs.js:83 -#: static/admin/translations-fakejs.js:93 -#: static/admin/translations-fakejs.js:427 -#: static/admin/translations-fakejs.js:448 +#: static/admin/translations-fakejs.js:243 +#: static/admin/translations-fakejs.js:253 +#: static/admin/translations-fakejs.js:391 +#: static/admin/translations-fakejs.js:412 msgid "Group" msgstr "Taldea" #: static/admin/main.js:1 static/admin/translations-fakejs.js:17 -#: static/admin/translations-fakejs.js:408 -#: static/admin/translations-fakejs.js:413 -#: static/admin/translations-fakejs.js:426 -#: static/admin/translations-fakejs.js:447 +#: static/admin/translations-fakejs.js:372 +#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:390 +#: static/admin/translations-fakejs.js:411 #: static/modern/translations-fakejs.js:72 msgid "Authenticator" msgstr "Autentikatzailea" @@ -336,89 +336,89 @@ msgstr "Kendu" msgid "Confirm revokation of permission" msgstr "Baimen ezeztapena berretsi" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:238 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 msgid "Maintenance" msgstr "Mantenua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 msgid "Exit maintenance mode" msgstr "Mantentze-modutik irten" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 msgid "Enter maintenance mode" msgstr "Mantentze-moduan jarri" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 msgid "New provider" msgstr "Hornitzaile berria" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 msgid "Edit provider" msgstr "Hornitzailea editatu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:243 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 msgid "Delete provider" msgstr "Hornitzailea ezabatu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 msgid "Exit maintenance mode?" msgstr "Mantentze modutik irten?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 msgid "Enter maintenance mode?" msgstr "Mantentze-moduan jarri?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 msgid "Maintenance mode for" msgstr "Mantentze modua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 -#: static/admin/translations-fakejs.js:247 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:209 +#: static/admin/translations-fakejs.js:232 msgid "In Maintenance" msgstr "Mantentze lanetan" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 -#: static/admin/translations-fakejs.js:248 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/translations-fakejs.js:233 msgid "Active" msgstr "Aktibo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 -#: static/admin/translations-fakejs.js:95 -#: static/admin/translations-fakejs.js:229 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:191 +#: static/admin/translations-fakejs.js:236 +#: static/admin/translations-fakejs.js:255 msgid "Pool" msgstr "Multzoa" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 -#: static/admin/translations-fakejs.js:96 -#: static/admin/translations-fakejs.js:230 -#: static/admin/translations-fakejs.js:343 -#: static/admin/translations-fakejs.js:355 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 +#: static/admin/translations-fakejs.js:237 +#: static/admin/translations-fakejs.js:256 +#: static/admin/translations-fakejs.js:470 +#: static/admin/translations-fakejs.js:482 msgid "State" msgstr "Egoera" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 -#: static/admin/translations-fakejs.js:97 -#: static/admin/translations-fakejs.js:231 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:193 +#: static/admin/translations-fakejs.js:238 +#: static/admin/translations-fakejs.js:257 msgid "User Services" msgstr "Erabiltzaile-zerbitzuak" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 -#: static/admin/translations-fakejs.js:232 -#: static/admin/translations-fakejs.js:321 -#: static/admin/translations-fakejs.js:401 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:194 +#: static/admin/translations-fakejs.js:248 +#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:365 msgid "Service pools" msgstr "Zerbitzu-multzoak" #: static/admin/main.js:1 static/admin/translations-fakejs.js:3 #: static/admin/translations-fakejs.js:7 -#: static/admin/translations-fakejs.js:308 +#: static/admin/translations-fakejs.js:311 #: static/modern/translations-fakejs.js:44 msgid "Yes" msgstr "Bai" #: static/admin/main.js:1 static/admin/translations-fakejs.js:4 #: static/admin/translations-fakejs.js:8 -#: static/admin/translations-fakejs.js:309 +#: static/admin/translations-fakejs.js:312 #: static/modern/translations-fakejs.js:45 msgid "No" msgstr "Ez" @@ -431,592 +431,595 @@ msgstr "(Ezkututa)" msgid "Selected items :" msgstr "Hautatutako elementuak:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 -#: static/admin/translations-fakejs.js:233 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:195 +#: static/admin/translations-fakejs.js:231 #: static/modern/translations-fakejs.js:35 msgid "Information" msgstr "Informazioa" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 msgid "New service" msgstr "Zerbitzu berria" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:197 msgid "Edit service" msgstr "Zerbitzua editatu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:236 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 msgid "Delete service" msgstr "Zerbitzua ezabatu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:237 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 msgid "Delete user service" msgstr "Ezabatu erabiltzaile-zerbitzua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:269 msgid "New Authenticator" msgstr "Autentikatzaile berria" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:267 +#: static/admin/translations-fakejs.js:270 msgid "Edit Authenticator" msgstr "Editatu autentikatzailea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/translations-fakejs.js:271 msgid "Delete Authenticator" msgstr "Ezabatu autentikatzailea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 msgid "Any" msgstr "Edozein" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 msgid "All" msgstr "Denak" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 -#: static/admin/translations-fakejs.js:94 -#: static/admin/translations-fakejs.js:342 -#: static/admin/translations-fakejs.js:354 -#: static/admin/translations-fakejs.js:379 -#: static/admin/translations-fakejs.js:435 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/translations-fakejs.js:254 +#: static/admin/translations-fakejs.js:343 +#: static/admin/translations-fakejs.js:399 +#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:481 msgid "Comments" msgstr "Oharrak" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:258 msgid "Unique ID" msgstr "ID bakarra" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 msgid "Friendly Name" msgstr "Izen erabilerraza" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:260 msgid "In Use" msgstr "Erabiltzen ari da" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:261 msgid "IP" msgstr "IP" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 msgid "Services Pool" msgstr "Zerbitzu-multzoak" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 -#: static/admin/translations-fakejs.js:103 -#: static/admin/translations-fakejs.js:287 -#: static/admin/translations-fakejs.js:323 -#: static/admin/translations-fakejs.js:337 -#: static/admin/translations-fakejs.js:363 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/translations-fakejs.js:263 +#: static/admin/translations-fakejs.js:290 +#: static/admin/translations-fakejs.js:328 #: static/admin/translations-fakejs.js:367 -#: static/admin/translations-fakejs.js:373 -#: static/admin/translations-fakejs.js:403 -#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:494 msgid "Groups" msgstr "Taldeak" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 -#: static/admin/translations-fakejs.js:335 -#: static/admin/translations-fakejs.js:368 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/translations-fakejs.js:462 +#: static/admin/translations-fakejs.js:495 msgid "Services Pools" msgstr "Zerbitzu-multzoak" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 -#: static/admin/translations-fakejs.js:378 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/translations-fakejs.js:342 msgid "Name" msgstr "Izena" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 msgid "Real Name" msgstr "Benetako izena" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 msgid "state" msgstr "Egoera" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 msgid "Last access" msgstr "Atzitutako azken aldia" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 -#: static/admin/translations-fakejs.js:286 -#: static/admin/translations-fakejs.js:336 -#: static/admin/translations-fakejs.js:372 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:249 +#: static/admin/translations-fakejs.js:289 +#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:463 msgid "Users" msgstr "Erabiltzaileak" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 -#: static/admin/translations-fakejs.js:344 -#: static/admin/translations-fakejs.js:356 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:483 msgid "Enabled" msgstr "Gaituta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 -#: static/admin/translations-fakejs.js:345 -#: static/admin/translations-fakejs.js:357 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:484 msgid "Disabled" msgstr "Desgaituta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 -#: static/admin/translations-fakejs.js:358 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:247 +#: static/admin/translations-fakejs.js:485 msgid "Blocked" msgstr "Blokeatuta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 msgid "Delete user" msgstr "Erabiltzailea ezabatu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 msgid "Delete group" msgstr "Taldea ezabatu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 msgid "New OS Manager" msgstr "SE kudeatzaile berria" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 msgid "Edit OS Manager" msgstr "Editatu SE kudeatzailea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 msgid "Delete OS Manager" msgstr "Ezabatu SE kudeatzailea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:120 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 msgid "New Transport" msgstr "Garraio berria" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:121 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:83 msgid "Edit Transport" msgstr "Editatu garraioa" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 msgid "Delete Transport" msgstr "Ezabatu Garraioa" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 msgid "New Network" msgstr "Sare berria" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:115 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 msgid "Edit Network" msgstr "Editatu sarea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:116 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 msgid "Delete Network" msgstr "Ezabatu sarea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:117 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 msgid "New Proxy" msgstr "Proxy berria" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:118 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 msgid "Edit Proxy" msgstr "Editatu proxya" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:119 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 msgid "Delete Proxy" msgstr "Ezabatu proxya" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:223 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 msgid "(This service does not requires an OS Manager)" msgstr "(Zerbitzu honek ez du SE kudeatzailearik behar)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 msgid "New service Pool" msgstr "Zerbitzu-multzo berria" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 msgid "Publish on creation" msgstr "Sortzean argitaratu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 msgid "If selected, will initiate the publication inmediatly after creation" msgstr "Hautatuta badago, sortu ostean argitaratuko da." -#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 msgid "Edit Service Pool" msgstr "Zerbitzu-multzoa editatu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:228 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 msgid "Delete service pool" msgstr "Zerbitzu-multzoa ezabatu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 -#: static/admin/translations-fakejs.js:194 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:156 msgid "Please, select a valid user" msgstr "Mesedez, aukeratu baliozko erabiltzaile bat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:158 msgid "Please, select a valid group" msgstr "Mesedez, aukeratu baliozko talde bat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 msgid "Please, select a valid transport" msgstr "Mesedez, aukeratu baliozko garraio bat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 msgid "Assigned" msgstr "Esleitua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 msgid "Cached" msgstr "Cachean gordeta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 msgid "In use" msgstr "Erabileran" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 -#: static/admin/translations-fakejs.js:290 -#: static/admin/translations-fakejs.js:374 -#: static/admin/translations-fakejs.js:405 -#: static/admin/translations-fakejs.js:462 -#: static/admin/translations-fakejs.js:465 -#: static/admin/translations-fakejs.js:470 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/translations-fakejs.js:293 +#: static/admin/translations-fakejs.js:369 +#: static/admin/translations-fakejs.js:426 +#: static/admin/translations-fakejs.js:429 +#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:460 msgid "Logs" msgstr "Agerraldiak" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 msgid "VNC" msgstr "VNC" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 msgid "Launch now" msgstr "Abiarazi orain" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 msgid "Change owner" msgstr "Aldatu jabea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 msgid "Assign service" msgstr "Esleitu zerbitzua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 -#: static/admin/translations-fakejs.js:277 -#: static/admin/translations-fakejs.js:283 -#: static/admin/translations-fakejs.js:349 -#: static/admin/translations-fakejs.js:364 -#: static/admin/translations-fakejs.js:390 -#: static/admin/translations-fakejs.js:398 -#: static/admin/translations-fakejs.js:410 -#: static/admin/translations-fakejs.js:415 -#: static/admin/translations-fakejs.js:423 -#: static/admin/translations-fakejs.js:428 -#: static/admin/translations-fakejs.js:432 -#: static/admin/translations-fakejs.js:436 -#: static/admin/translations-fakejs.js:449 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/translations-fakejs.js:280 +#: static/admin/translations-fakejs.js:286 +#: static/admin/translations-fakejs.js:354 +#: static/admin/translations-fakejs.js:362 +#: static/admin/translations-fakejs.js:374 +#: static/admin/translations-fakejs.js:379 +#: static/admin/translations-fakejs.js:387 +#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:400 +#: static/admin/translations-fakejs.js:413 +#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:476 #: static/admin/translations-fakejs.js:491 msgid "Cancel" msgstr "Ezeztatu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 msgid "Changelog" msgstr "Aldaketa-egunkaria" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 -#: static/admin/translations-fakejs.js:209 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/translations-fakejs.js:171 msgid "Delete assigned service" msgstr "Ezabatu esleitutako zerbitzua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 msgid "Delete cached service" msgstr "Ezabatu cachean dagoen zerbitzua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:183 -#: static/admin/translations-fakejs.js:211 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/translations-fakejs.js:173 msgid "Delete assigned group" msgstr "Ezabatu esleitutako taldea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 msgid "Delete assigned transport" msgstr "Ezabatu esleitutako garraioa" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 msgid "Publication" msgstr "Argitalpena" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 msgid "Cancel publication?" msgstr "Argitalpena ezeztatu?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:215 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 msgid "Publication canceled" msgstr "Argitalpena ezeztatua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:179 msgid "Delete scheduled action" msgstr "Ezabatu ekintza" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:218 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 msgid "Execute scheduled action" msgstr "Exekutatu ekintza" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 msgid "Execute scheduled action right now?" msgstr "Ekintza exekutatu oraintxe bertan?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:220 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 msgid "Scheduled action executed" msgstr "Ekintza exekutatua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:184 -#: static/admin/translations-fakejs.js:222 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/translations-fakejs.js:184 msgid "Delete calendar access rule" msgstr "Ezabatu egutegi-sarbide araua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 msgid "New meta pool" msgstr "Meta-multzo berria" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 msgid "Edit meta pool" msgstr "Editatu meta-multzoa" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 msgid "Delete meta pool" msgstr "Ezabatu meta-multzoa" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 msgid "Please, select a valid service pool" msgstr "Mesedez, aukeratu baliozko multzo zerbitzu bat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 msgid "Remove member pool" msgstr "Kendu multzo-kidea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 msgid "New pool group" msgstr "Multzo-talde berria" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 msgid "Edit pool group" msgstr "Editatu multzo-taldea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 msgid "Delete pool group" msgstr "Ezabatu multzo-taldea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 msgid "New calendar" msgstr "Egutegi berria" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 msgid "Edit calendar" msgstr "Egutegia editatu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:178 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 msgid "Delete calendar" msgstr "Egutegia ezabatu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 msgid "day" msgstr "eguna" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 msgid "days" msgstr "egun" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 msgid "Daily" msgstr "egunero" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 msgid "week" msgstr "Astea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 msgid "weeks" msgstr "Asteak" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:141 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:103 msgid "Weekly" msgstr "Astero" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 msgid "month" msgstr "Hilabetea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 msgid "months" msgstr "Hilabeteak" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 msgid "Monthly" msgstr "Hilabetero" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 msgid "year" msgstr "Urtea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 msgid "years" msgstr "Urteak" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 msgid "Yearly" msgstr "Urtero" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 -#: static/admin/translations-fakejs.js:387 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/translations-fakejs.js:351 msgid "Weekdays" msgstr "Astegunak" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 msgid "Minutes" msgstr "Minutu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 msgid "Hours" msgstr "Ordu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 msgid "Days" msgstr "Egun" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 msgid "Weeks" msgstr "Aste" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 msgid "(no days)" msgstr "(egun gabe)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 msgid "Forever" msgstr "Betirako" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 msgid "Start date/time" msgstr "Hasiera eguna/ordua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 msgid "End date" msgstr "Amaiera eguna" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 msgid "Interval" msgstr "Tartea" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 msgid "Week days" msgstr "Aste-egunak" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 msgid "Invalid or incomplete rule. Please, fix field $FIELD" msgstr "Arau baliogabea edo osatugabea. Mesedez, konpon ezazu $FIELD eremua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 msgid "This rule will be valid every" msgstr "Arau hau baliozkoa izango da" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 msgid "of any week" msgstr "Edozein asteko" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 msgid "from" msgstr "Noiztik" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 msgid "until" msgstr "arte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:171 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 msgid "onwards" msgstr "aurrera" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:134 msgid "starting at" msgstr "hasita" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:173 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 msgid "and every event will be active for" msgstr "eta gertaera denak aktibo izango dira" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 msgid "with no duration" msgstr "Iraupenik gabe" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 msgid "Delete calendar rule" msgstr "Ezabatu egutegi-araua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 msgid "Set time mark" msgstr "Ezarri denbora marka" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 msgid "New account" msgstr "Kontu berria" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 msgid "Edit account" msgstr "Editatu kontua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 msgid "Delete account" msgstr "Ezabatu kontua" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:93 msgid "Time mark" msgstr "Denbora marka" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:94 msgid "Set time mark for $NAME to current date/time?" msgstr "Ezarri ordu-marka $NAME uneko data/ordura?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:95 msgid "Time mark stablished" msgstr "Denbora marka finkatuta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:97 msgid "No time mark" msgstr "Ez dago denbora markarik" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 msgid "Delete account usage" msgstr "Ezabatu kontuaren erabilera" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:255 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 msgid "Image is too big (max. upload size is 256Kb)" msgstr "Irudia handiegia da (gehienezko tamaina 256Kb)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:257 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 msgid "Invalid image type (only supports JPEG, PNG and GIF" msgstr "Irudi mota okerra (JPEG, PNG eta GIF bakarrik onartzen dira)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:221 msgid "Please, provide a name and a image" msgstr "Mesedez, eman izen bat eta irudi bat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 msgid "Delete image" msgstr "Ezabatu irudia" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:263 -#: static/admin/translations-fakejs.js:267 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/translations-fakejs.js:229 msgid "Generate report" msgstr "Txostena sortu" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 msgid "Generating report..." msgstr "Txostena sortzen ..." -#: static/admin/main.js:1 static/admin/translations-fakejs.js:265 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 msgid "Report finished" msgstr "Txostena amaituta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 msgid "Configuration saved" msgstr "Konfigurazioa gordeta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 msgid "Delete actor token - USE WITH EXTREME CAUTION!!!" msgstr "Ezabatu aktoreen tokenak - ERABILI KONTUZ!!!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:230 msgid "Delete tunnel token - USE WITH EXTREME CAUTION!!!" msgstr "Ezabatu tunelaren token-a. ERABILI KONTUZ." @@ -1032,470 +1035,426 @@ msgstr "Elementuak orrialdeko" msgid ", (%i more items)" msgstr ", (%i elementu gehiago)" -#: static/admin/translations-fakejs.js:275 +#: static/admin/translations-fakejs.js:278 msgid "Remove all" msgstr "Kendu guztiak" -#: static/admin/translations-fakejs.js:276 +#: static/admin/translations-fakejs.js:279 msgid "Add" msgstr "Gehitu" -#: static/admin/translations-fakejs.js:278 -#: static/admin/translations-fakejs.js:284 -#: static/admin/translations-fakejs.js:289 -#: static/admin/translations-fakejs.js:338 -#: static/admin/translations-fakejs.js:350 -#: static/admin/translations-fakejs.js:365 -#: static/admin/translations-fakejs.js:370 -#: static/admin/translations-fakejs.js:391 -#: static/admin/translations-fakejs.js:399 -#: static/admin/translations-fakejs.js:411 +#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:287 +#: static/admin/translations-fakejs.js:292 +#: static/admin/translations-fakejs.js:355 +#: static/admin/translations-fakejs.js:363 +#: static/admin/translations-fakejs.js:375 +#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:401 +#: static/admin/translations-fakejs.js:403 +#: static/admin/translations-fakejs.js:414 #: static/admin/translations-fakejs.js:416 -#: static/admin/translations-fakejs.js:424 -#: static/admin/translations-fakejs.js:429 -#: static/admin/translations-fakejs.js:433 -#: static/admin/translations-fakejs.js:437 -#: static/admin/translations-fakejs.js:439 -#: static/admin/translations-fakejs.js:450 -#: static/admin/translations-fakejs.js:452 -#: static/admin/translations-fakejs.js:466 +#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:465 +#: static/admin/translations-fakejs.js:477 #: static/admin/translations-fakejs.js:492 +#: static/admin/translations-fakejs.js:497 msgid "Ok" msgstr "Ados" -#: static/admin/translations-fakejs.js:279 +#: static/admin/translations-fakejs.js:282 msgid "Discard & close" msgstr "Baztertu eta itxi" -#: static/admin/translations-fakejs.js:280 -#: static/admin/translations-fakejs.js:484 +#: static/admin/translations-fakejs.js:283 +#: static/admin/translations-fakejs.js:448 msgid "Save" msgstr "Gorde" -#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:284 msgid "New user permission for" msgstr "Erabiltzaile baimen berria honentzako:" -#: static/admin/translations-fakejs.js:282 +#: static/admin/translations-fakejs.js:285 msgid "New group permission for" msgstr "Talde baimen berria honentzako:" -#: static/admin/translations-fakejs.js:285 +#: static/admin/translations-fakejs.js:288 msgid "Permissions for" msgstr "Baimenak" -#: static/admin/translations-fakejs.js:288 +#: static/admin/translations-fakejs.js:291 msgid "New permission..." msgstr "Baimen berria ..." -#: static/admin/translations-fakejs.js:291 -#: static/admin/translations-fakejs.js:298 +#: static/admin/translations-fakejs.js:294 +#: static/admin/translations-fakejs.js:301 msgid "Export" msgstr "Esportazioa" -#: static/admin/translations-fakejs.js:293 -#: static/admin/translations-fakejs.js:294 -#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:296 +#: static/admin/translations-fakejs.js:297 +#: static/admin/translations-fakejs.js:298 msgid "New" msgstr "Berria" -#: static/admin/translations-fakejs.js:296 -#: static/admin/translations-fakejs.js:304 +#: static/admin/translations-fakejs.js:299 +#: static/admin/translations-fakejs.js:307 msgid "Edit" msgstr "Editatu" -#: static/admin/translations-fakejs.js:297 -#: static/admin/translations-fakejs.js:305 +#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:308 msgid "Permissions" msgstr "Baimenak" -#: static/admin/translations-fakejs.js:299 -#: static/admin/translations-fakejs.js:306 +#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:309 msgid "Delete" msgstr "Ezabatu" -#: static/admin/translations-fakejs.js:301 +#: static/admin/translations-fakejs.js:304 msgid "Selected items" msgstr "Hautatutako elementuak" -#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:305 msgid "Copy" msgstr "Kopiatu" -#: static/admin/translations-fakejs.js:303 +#: static/admin/translations-fakejs.js:306 msgid "Detail" msgstr "Xehetasun" -#: static/admin/translations-fakejs.js:307 +#: static/admin/translations-fakejs.js:310 #: static/modern/translations-fakejs.js:43 msgid "Close" msgstr "Itxi" -#: static/admin/translations-fakejs.js:310 +#: static/admin/translations-fakejs.js:313 msgid "User mode" msgstr "Erabiltzaile modua" -#: static/admin/translations-fakejs.js:311 +#: static/admin/translations-fakejs.js:314 #: static/modern/translations-fakejs.js:48 msgid "Logout" msgstr "Saioa amaitu" -#: static/admin/translations-fakejs.js:312 -#: static/admin/translations-fakejs.js:371 -#: static/admin/translations-fakejs.js:389 -#: static/admin/translations-fakejs.js:400 -#: static/admin/translations-fakejs.js:453 -#: static/admin/translations-fakejs.js:467 +#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:353 +#: static/admin/translations-fakejs.js:364 +#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:431 +#: static/admin/translations-fakejs.js:457 msgid "Summary" msgstr "Laburpena" -#: static/admin/translations-fakejs.js:313 -#: static/admin/translations-fakejs.js:468 +#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:432 msgid "Services" msgstr "Zerbitzuak" -#: static/admin/translations-fakejs.js:314 +#: static/admin/translations-fakejs.js:317 +msgid "Authentication" +msgstr "Autentifikazioa" + +#: static/admin/translations-fakejs.js:318 msgid "Authenticators" msgstr "Autentikatzaileak" -#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:319 +msgid "Multi Factor" +msgstr "Faktore anitzekoa" + +#: static/admin/translations-fakejs.js:320 msgid "Os Managers" msgstr "SE Kudeatzaileak" -#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:321 msgid "Connectivity" msgstr "Konektagarritasuna" -#: static/admin/translations-fakejs.js:317 -#: static/admin/translations-fakejs.js:457 +#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:421 #: static/modern/translations-fakejs.js:39 msgid "Transports" msgstr "Garraioak" -#: static/admin/translations-fakejs.js:318 +#: static/admin/translations-fakejs.js:323 #: static/modern/translations-fakejs.js:41 msgid "Networks" msgstr "Sareak" -#: static/admin/translations-fakejs.js:319 +#: static/admin/translations-fakejs.js:324 msgid "Proxies" msgstr "Proxyak" -#: static/admin/translations-fakejs.js:320 +#: static/admin/translations-fakejs.js:325 msgid "Pools" msgstr "Multzoak" -#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:327 msgid "Meta pools" msgstr "Meta-multzoak" -#: static/admin/translations-fakejs.js:324 +#: static/admin/translations-fakejs.js:329 msgid "Calendars" msgstr "Egutegiak" -#: static/admin/translations-fakejs.js:325 +#: static/admin/translations-fakejs.js:330 msgid "Accounts" msgstr "Kontuak" -#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:331 msgid "Tools" msgstr "Tresnak" -#: static/admin/translations-fakejs.js:327 +#: static/admin/translations-fakejs.js:332 msgid "Gallery" msgstr "Galeria" -#: static/admin/translations-fakejs.js:328 +#: static/admin/translations-fakejs.js:333 msgid "Reports" msgstr "Txostenak" -#: static/admin/translations-fakejs.js:329 +#: static/admin/translations-fakejs.js:334 msgid "Tokens" msgstr "Tokens" -#: static/admin/translations-fakejs.js:330 +#: static/admin/translations-fakejs.js:335 msgid "Actor" msgstr "Aktorea" -#: static/admin/translations-fakejs.js:331 +#: static/admin/translations-fakejs.js:336 msgid "Tunnel" msgstr "Tunel" -#: static/admin/translations-fakejs.js:332 +#: static/admin/translations-fakejs.js:337 msgid "Configuration" msgstr "Konfigurazioa" -#: static/admin/translations-fakejs.js:333 +#: static/admin/translations-fakejs.js:338 msgid "Flush Cache" msgstr "Cachea hustu" -#: static/admin/translations-fakejs.js:334 -#: static/admin/translations-fakejs.js:366 -#: static/admin/translations-fakejs.js:463 -msgid "Information for" -msgstr "Informazioa honentzako" - #: static/admin/translations-fakejs.js:339 -msgid "Edit group" -msgstr "Taldea editatu" - -#: static/admin/translations-fakejs.js:340 -msgid "New group" -msgstr "Talde Berria" - -#: static/admin/translations-fakejs.js:341 -msgid "Meta group name" -msgstr "Meta taldearen izena" - -#: static/admin/translations-fakejs.js:346 -msgid "Service Pools" -msgstr "Zerbitzu-multzoak" - -#: static/admin/translations-fakejs.js:347 -msgid "Match mode" -msgstr "Bat egiteko modua" - -#: static/admin/translations-fakejs.js:348 -msgid "Selected Groups" -msgstr "Hautatutako taldeak" - -#: static/admin/translations-fakejs.js:351 -msgid "Edit user" -msgstr "Editatu erabiltzailea" - -#: static/admin/translations-fakejs.js:352 -msgid "New user" -msgstr "Erabiltzaile berria" - -#: static/admin/translations-fakejs.js:353 -msgid "Real name" -msgstr "Benetako izena" - -#: static/admin/translations-fakejs.js:359 -msgid "Role" -msgstr "Rola" - -#: static/admin/translations-fakejs.js:360 -msgid "Admin" -msgstr "Admin" - -#: static/admin/translations-fakejs.js:361 -msgid "Staff member" -msgstr "Langilea" - -#: static/admin/translations-fakejs.js:369 -msgid "Assigned Services" -msgstr "Zerbitzu esleituak" - -#: static/admin/translations-fakejs.js:375 msgid "Account usage" msgstr "Kontuaren erabilera" -#: static/admin/translations-fakejs.js:376 +#: static/admin/translations-fakejs.js:340 msgid "Edit rule" msgstr "Editatu araua" -#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:341 msgid "New rule" msgstr "Arau berria" -#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:344 msgid "Event" msgstr "Gertaera" -#: static/admin/translations-fakejs.js:381 +#: static/admin/translations-fakejs.js:345 msgid "Start time" msgstr "Hasiera-denbora" -#: static/admin/translations-fakejs.js:382 +#: static/admin/translations-fakejs.js:346 msgid "Duration" msgstr "Iraupena" -#: static/admin/translations-fakejs.js:383 +#: static/admin/translations-fakejs.js:347 msgid "Duration units" msgstr "Iraupen unitateak" -#: static/admin/translations-fakejs.js:384 +#: static/admin/translations-fakejs.js:348 msgid "Start date" msgstr "Hasiera data" -#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:349 msgid "Repeat until date" msgstr "Errepikatu data arte" -#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:350 msgid "Frequency" msgstr " Frekuentzia" -#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:352 msgid "Repeat every" msgstr "Errepikatu" -#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:356 msgid "Rules" msgstr "Arauak" -#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:357 msgid "New member pool" msgstr "Multzo-kide berria" -#: static/admin/translations-fakejs.js:394 +#: static/admin/translations-fakejs.js:358 msgid "Edit member pool" msgstr "Editatu multzo-kidea" -#: static/admin/translations-fakejs.js:395 -#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:359 +#: static/admin/translations-fakejs.js:384 msgid "Priority" msgstr "Lehentasuna" -#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:360 msgid "Service pool" msgstr "Zerbitzu-multzoa" -#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:361 msgid "Enabled?" msgstr "Gaituta?" -#: static/admin/translations-fakejs.js:404 -#: static/admin/translations-fakejs.js:460 +#: static/admin/translations-fakejs.js:368 +#: static/admin/translations-fakejs.js:424 msgid "Access calendars" msgstr "Sarbide-egutegiak" -#: static/admin/translations-fakejs.js:406 +#: static/admin/translations-fakejs.js:370 msgid "Assign service to user manually" msgstr "Zerbitzua eskuz esleitu erabiltzaileari" -#: static/admin/translations-fakejs.js:407 +#: static/admin/translations-fakejs.js:371 msgid "Service" msgstr "Zerbitzua" -#: static/admin/translations-fakejs.js:412 +#: static/admin/translations-fakejs.js:376 msgid "Change owner of assigned service" msgstr "Aldatu esleitutako zerbitzuaren jabea" -#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:381 msgid "New access rule for" msgstr "Sarbide arau berria honentzako:" -#: static/admin/translations-fakejs.js:418 +#: static/admin/translations-fakejs.js:382 msgid "Edit access rule for" msgstr "Editatu sarbide-araua honentzako:" -#: static/admin/translations-fakejs.js:419 +#: static/admin/translations-fakejs.js:383 msgid "Default fallback access for" msgstr "Lehenetsitako sarrera alternatiboa honentzako:" -#: static/admin/translations-fakejs.js:421 -#: static/admin/translations-fakejs.js:442 +#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:406 msgid "Calendar" msgstr "Egutegia" -#: static/admin/translations-fakejs.js:422 -#: static/admin/translations-fakejs.js:445 +#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:409 msgid "Action" msgstr "Ekintza" -#: static/admin/translations-fakejs.js:425 +#: static/admin/translations-fakejs.js:389 msgid "New group for" msgstr "Talde berria honentzako:" -#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:394 msgid "New transport for" msgstr "Garraio berria" -#: static/admin/translations-fakejs.js:431 -#: static/admin/translations-fakejs.js:446 +#: static/admin/translations-fakejs.js:395 +#: static/admin/translations-fakejs.js:410 msgid "Transport" msgstr "Garraioa" -#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:398 msgid "New publication for" msgstr "Argitaratze berria honentzako:" -#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:402 msgid "Changelog of" msgstr "Honen aldaketa egunkaria" -#: static/admin/translations-fakejs.js:440 +#: static/admin/translations-fakejs.js:404 msgid "Edit action for" msgstr "Editatu ekintza honentzako:" -#: static/admin/translations-fakejs.js:441 +#: static/admin/translations-fakejs.js:405 msgid "New action for" msgstr "Ekintza berri bat honentzako:" -#: static/admin/translations-fakejs.js:443 +#: static/admin/translations-fakejs.js:407 msgid "Events offset (minutes)" msgstr "Ekintzaren desplazamendua (minutuetan)" -#: static/admin/translations-fakejs.js:444 +#: static/admin/translations-fakejs.js:408 msgid "At the beginning of the interval?" msgstr "Tarte hasieran?" -#: static/admin/translations-fakejs.js:451 +#: static/admin/translations-fakejs.js:415 msgid "Logs of" msgstr "Erregistroak" -#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:419 msgid "Cache" msgstr "Cachea" -#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:422 msgid "Publications" msgstr "Argitalpenak" -#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:423 msgid "Scheduled actions" msgstr "Antolatutako ekintzak" -#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:425 msgid "Charts" msgstr "Taulak" -#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:427 +#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:493 +msgid "Information for" +msgstr "Informazioa honentzako" + +#: static/admin/translations-fakejs.js:428 msgid "Services pools" msgstr "Zerbitzu-multzoak" -#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:433 msgid "Usage" msgstr "Erabilpena" -#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:435 #: static/modern/translations-fakejs.js:46 msgid "Dashboard" msgstr "Arbela" -#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:436 msgid "View authenticators" msgstr "Ikusi autentikatzaileak" -#: static/admin/translations-fakejs.js:473 -#: static/admin/translations-fakejs.js:474 -#: static/admin/translations-fakejs.js:475 +#: static/admin/translations-fakejs.js:437 +#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:439 msgid "View service pools" msgstr "Ikusi zerbitzu-multzoak" -#: static/admin/translations-fakejs.js:476 +#: static/admin/translations-fakejs.js:440 msgid "Assigned services chart" msgstr "Esleitutako zerbitzuen taula" -#: static/admin/translations-fakejs.js:477 +#: static/admin/translations-fakejs.js:441 msgid "In use services chart" msgstr "Erabilera zerbitzuen taula" -#: static/admin/translations-fakejs.js:478 +#: static/admin/translations-fakejs.js:442 msgid "UDS Administration" msgstr "UDS Administrazioa" -#: static/admin/translations-fakejs.js:479 +#: static/admin/translations-fakejs.js:443 msgid "You are accessing UDS Administration as staff member." msgstr "Langile gisa satzen ari zara UDSren administrazioan" -#: static/admin/translations-fakejs.js:480 +#: static/admin/translations-fakejs.js:444 msgid "This means that you have restricted access to elements." msgstr "Horrek esan nahi du elementuetarako sarbide mugatua duzula." -#: static/admin/translations-fakejs.js:481 +#: static/admin/translations-fakejs.js:445 msgid "" "In order to increase your access privileges, please contact your local UDS " "administrator." @@ -1503,38 +1462,90 @@ msgstr "" "Sarbide pribilegioak handitzeko, jarri harremanetan zure UDS " "administratzailearekin." -#: static/admin/translations-fakejs.js:482 +#: static/admin/translations-fakejs.js:446 msgid "Thank you." msgstr "Eskerrik asko." -#: static/admin/translations-fakejs.js:483 +#: static/admin/translations-fakejs.js:447 msgid "UDS Configuration" msgstr "UDS konfigurazioa" -#: static/admin/translations-fakejs.js:485 +#: static/admin/translations-fakejs.js:449 msgid "New image for" msgstr "Irudi berria honentzako:" -#: static/admin/translations-fakejs.js:486 +#: static/admin/translations-fakejs.js:450 msgid "Edit for" msgstr "Editatu honentzako" -#: static/admin/translations-fakejs.js:487 +#: static/admin/translations-fakejs.js:451 msgid "Image name" msgstr "Irudiaren izena" -#: static/admin/translations-fakejs.js:488 +#: static/admin/translations-fakejs.js:452 msgid "Image (click to change)" msgstr "Irudia (egin klik aldatzeko)" -#: static/admin/translations-fakejs.js:489 +#: static/admin/translations-fakejs.js:453 msgid "For optimal results, use " msgstr "Emaitza hobeak lortzeko, erabili" -#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:454 msgid "The image will be resized on upload to" msgstr "Igo ostean, irudiaren tamaina aldatu egingo da" +#: static/admin/translations-fakejs.js:466 +msgid "Edit group" +msgstr "Taldea editatu" + +#: static/admin/translations-fakejs.js:467 +msgid "New group" +msgstr "Talde Berria" + +#: static/admin/translations-fakejs.js:468 +msgid "Meta group name" +msgstr "Meta taldearen izena" + +#: static/admin/translations-fakejs.js:473 +msgid "Service Pools" +msgstr "Zerbitzu-multzoak" + +#: static/admin/translations-fakejs.js:474 +msgid "Match mode" +msgstr "Bat egiteko modua" + +#: static/admin/translations-fakejs.js:475 +msgid "Selected Groups" +msgstr "Hautatutako taldeak" + +#: static/admin/translations-fakejs.js:478 +msgid "Edit user" +msgstr "Editatu erabiltzailea" + +#: static/admin/translations-fakejs.js:479 +msgid "New user" +msgstr "Erabiltzaile berria" + +#: static/admin/translations-fakejs.js:480 +msgid "Real name" +msgstr "Benetako izena" + +#: static/admin/translations-fakejs.js:486 +msgid "Role" +msgstr "Rola" + +#: static/admin/translations-fakejs.js:487 +msgid "Admin" +msgstr "Admin" + +#: static/admin/translations-fakejs.js:488 +msgid "Staff member" +msgstr "Langilea" + +#: static/admin/translations-fakejs.js:496 +msgid "Assigned Services" +msgstr "Zerbitzu esleituak" + #: static/modern/main-es5.js:1 msgid "Error communicating with your service. Please, retry again." msgstr "Errorea zure zerbitzuarekin komunikatzean. Mesedez, saiatu berriro." @@ -1597,7 +1608,8 @@ msgstr "" msgid "Launching service" msgstr "Zerbitzua abiarazten" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 +#: static/modern/translations-fakejs.js:25 msgid "Errors found" msgstr "Akatsak aurkitu dira" @@ -1639,18 +1651,14 @@ msgstr "Zerbitzua berrezarri da" msgid "Are you sure?" msgstr "Ziur zaude?" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 msgid "Warning" msgstr "Abisua" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:25 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 msgid "Service is in maintenance and cannot be executed" msgstr "Zerbitzua mantenimenduan dago eta ezin da exekutatu" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 -msgid "Invalid error string" -msgstr "Errore-kate baliogabea" - #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:26 msgid "We use cookies to track usage and preferences" msgstr "Cookie-ak erabiltzen ditugu erabilera eta lehentasunak arakatzeko." @@ -1798,3 +1806,15 @@ msgstr "Pasahitza" #: static/modern/translations-fakejs.js:73 msgid "Login" msgstr "Saioa hasi" + +#: static/modern/translations-fakejs.js:74 +msgid "Login Verification" +msgstr "Saioa hasteko egiaztapena" + +#: static/modern/translations-fakejs.js:75 +msgid "Remember Me" +msgstr "Gogora nazazu" + +#: static/modern/translations-fakejs.js:76 +msgid "Submit" +msgstr "Bidali" diff --git a/server/src/uds/locale/fr/LC_MESSAGES/django.po b/server/src/uds/locale/fr/LC_MESSAGES/django.po index 2fb58eed..1528fd50 100644 --- a/server/src/uds/locale/fr/LC_MESSAGES/django.po +++ b/server/src/uds/locale/fr/LC_MESSAGES/django.po @@ -9,41 +9,42 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-14 11:34+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:14+0000\n" +"Last-Translator: Adolfo Gómez , 2012\n" "Language-Team: French (http://www.transifex.com/openuds/openuds/language/" "fr/)\n" "Language: fr\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" +"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % " +"1000000 == 0 ? 1 : 2;\n" #: REST/methods/accounts.py:61 msgid "Accounts" msgstr "Comptes" -#: REST/methods/accounts.py:63 REST/methods/authenticators.py:66 +#: REST/methods/accounts.py:63 REST/methods/authenticators.py:67 #: REST/methods/calendars.py:63 REST/methods/images.py:67 -#: REST/methods/meta_pools.py:81 REST/methods/networks.py:63 -#: REST/methods/osmanagers.py:55 REST/methods/providers.py:71 -#: REST/methods/proxies.py:60 REST/methods/reports.py:69 -#: REST/methods/services_pool_groups.py:71 REST/methods/services_pools.py:136 -#: REST/methods/transports.py:66 REST/methods/user_services.py:325 -#: REST/methods/user_services.py:400 REST/methods/users_groups.py:167 -#: REST/model.py:149 +#: REST/methods/meta_pools.py:81 REST/methods/mfas.py:56 +#: REST/methods/networks.py:63 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:71 REST/methods/proxies.py:60 +#: REST/methods/reports.py:69 REST/methods/services_pool_groups.py:71 +#: REST/methods/services_pools.py:136 REST/methods/transports.py:66 +#: REST/methods/user_services.py:325 REST/methods/user_services.py:400 +#: REST/methods/users_groups.py:167 REST/model.py:149 msgid "Name" msgstr "Nom" -#: REST/methods/accounts.py:64 REST/methods/authenticators.py:68 +#: REST/methods/accounts.py:64 REST/methods/authenticators.py:69 #: REST/methods/calendarrules.py:110 REST/methods/calendars.py:69 -#: REST/methods/meta_pools.py:82 REST/methods/osmanagers.py:57 -#: REST/methods/providers.py:73 REST/methods/proxies.py:63 -#: REST/methods/services.py:241 REST/methods/services_pool_groups.py:72 -#: REST/methods/transports.py:68 REST/methods/user_services.py:402 -#: REST/methods/users_groups.py:168 REST/methods/users_groups.py:386 -#: REST/model.py:173 +#: REST/methods/meta_pools.py:82 REST/methods/mfas.py:58 +#: REST/methods/osmanagers.py:57 REST/methods/providers.py:73 +#: REST/methods/proxies.py:63 REST/methods/services.py:241 +#: REST/methods/services_pool_groups.py:72 REST/methods/transports.py:68 +#: REST/methods/user_services.py:402 REST/methods/users_groups.py:168 +#: REST/methods/users_groups.py:384 REST/model.py:173 msgid "Comments" msgstr "Commentaires" @@ -51,12 +52,12 @@ msgstr "Commentaires" msgid "Time mark" msgstr "Marque de temps" -#: REST/methods/accounts.py:66 REST/methods/authenticators.py:73 +#: REST/methods/accounts.py:66 REST/methods/authenticators.py:75 #: REST/methods/calendars.py:71 REST/methods/meta_pools.py:89 -#: REST/methods/networks.py:71 REST/methods/osmanagers.py:59 -#: REST/methods/providers.py:79 REST/methods/proxies.py:64 -#: REST/methods/services.py:250 REST/methods/services_pools.py:145 -#: REST/methods/transports.py:77 +#: REST/methods/mfas.py:59 REST/methods/networks.py:71 +#: REST/methods/osmanagers.py:59 REST/methods/providers.py:79 +#: REST/methods/proxies.py:64 REST/methods/services.py:250 +#: REST/methods/services_pools.py:145 REST/methods/transports.py:77 msgid "tags" msgstr "Tags" @@ -111,7 +112,7 @@ msgstr "Clé non valide" msgid "Unmanaged host" msgstr "Hôte non managé" -#: REST/methods/actor.py:207 web/util/errors.py:85 +#: REST/methods/actor.py:207 web/util/errors.py:87 msgid "User service not found" msgstr "Service utilisateur introuvable" @@ -120,9 +121,9 @@ msgid "Actor tokens" msgstr "Jetons d'acteur" #: REST/methods/actor_token.py:54 REST/methods/tunnel_token.py:52 -#: reports/auto/fields.py:58 reports/stats/pools_performance.py:218 -#: reports/stats/pools_performance.py:237 reports/stats/pools_usage_day.py:64 -#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:191 +#: reports/auto/fields.py:58 reports/stats/pools_performance.py:201 +#: reports/stats/pools_performance.py:220 reports/stats/pools_usage_day.py:64 +#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:176 #: templates/uds/reports/stats/authenticator_stats.html:14 msgid "Date" msgstr "Date" @@ -161,64 +162,80 @@ msgstr "Niveau de journal" msgid "Token isued by {} from {}" msgstr "Le jeton est émis par {} de {}" -#: REST/methods/authenticators.py:63 +#: REST/methods/authenticators.py:64 msgid "Authenticators" msgstr "Authentificateurs" -#: REST/methods/authenticators.py:65 +#: REST/methods/authenticators.py:66 msgid "Id" msgstr "ID" -#: REST/methods/authenticators.py:67 REST/methods/osmanagers.py:56 -#: REST/methods/providers.py:72 REST/methods/services.py:242 -#: REST/methods/transports.py:67 REST/methods/user_services.py:401 +#: REST/methods/authenticators.py:68 REST/methods/mfas.py:57 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:72 +#: REST/methods/services.py:242 REST/methods/transports.py:67 +#: REST/methods/user_services.py:401 msgid "Type" msgstr "Type" -#: REST/methods/authenticators.py:69 REST/methods/meta_service_pools.py:88 +#: REST/methods/authenticators.py:70 REST/methods/meta_service_pools.py:88 #: REST/methods/op_calendars.py:83 REST/methods/services_pool_groups.py:62 #: REST/methods/transports.py:65 REST/methods/user_services.py:399 #: REST/model.py:185 models/meta_pool.py:73 msgid "Priority" msgstr "Priorité" -#: REST/methods/authenticators.py:70 REST/methods/authenticators.py:107 +#: REST/methods/authenticators.py:71 REST/methods/authenticators.py:110 #: REST/methods/meta_pools.py:86 REST/methods/meta_pools.py:193 #: REST/methods/services_pools.py:141 REST/methods/services_pools.py:386 msgid "Visible" msgstr "Visible" -#: REST/methods/authenticators.py:71 REST/methods/meta_pools.py:88 +#: REST/methods/authenticators.py:72 REST/methods/meta_pools.py:88 #: REST/methods/transports.py:164 REST/model.py:201 msgid "Label" msgstr "Étiquette" -#: REST/methods/authenticators.py:72 core/util/stats/counters.py:252 -#: reports/stats/pools_performance.py:223 -#: reports/stats/pools_performance.py:286 reports/stats/user_access.py:254 -#: reports/stats/user_access.py:297 services/RDS_enterprise/provider.py:74 +#: REST/methods/authenticators.py:73 core/util/stats/counters.py:252 +#: reports/stats/pools_performance.py:206 +#: reports/stats/pools_performance.py:269 reports/stats/user_access.py:239 +#: reports/stats/user_access.py:282 services/RDS_enterprise/provider.py:74 #: templates/uds/reports/stats/authenticator_stats.html:15 #: templates/uds/reports/stats/pools-performance.html:35 #: templates/uds/reports/stats/user-access.html:35 msgid "Users" msgstr "Utilisateurs" -#: REST/methods/authenticators.py:109 REST/methods/services_pools.py:387 -msgid "If active, transport will be visible for users" -msgstr "Si actif, le transport sera visible pour les utilisateurs" +#: REST/methods/authenticators.py:74 core/ui/user_interface.py:104 +msgid "MFA" +msgstr "AMF" -#: REST/methods/authenticators.py:113 REST/methods/services_pools.py:390 -#: REST/methods/services_pools.py:405 REST/methods/services_pools.py:422 -#: REST/methods/services_pools.py:433 core/ui/user_interface.py:103 -#: services/OVirt/service.py:188 -msgid "Display" -msgstr "Affichage" +#: REST/methods/authenticators.py:112 +msgid "If active, authenticator will be visible for users" +msgstr "" +"S'il est actif, l'authentificateur sera visible pour les utilisateurs" -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:125 core/services/service.py:143 +#: core/services/service.py:154 mfas/Email/mfa.py:46 mfas/SMS/mfa.py:112 +#: models/permissions.py:92 models/permissions.py:96 +#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 +#: services/Proxmox/service.py:208 services/Sample/service.py:100 +#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 +msgid "None" +msgstr "Aucun" + +#: REST/methods/authenticators.py:132 +msgid "MFA Provider" +msgstr "Fournisseur MFA" + +#: REST/methods/authenticators.py:134 +msgid "MFA provider to use for this authenticator" +msgstr "Fournisseur MFA à utiliser pour cet authentificateur" + +#: REST/methods/authenticators.py:193 msgid "Too many results..." msgstr "Trop de résultats ..." -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:193 msgid "Refine your query" msgstr "Affinez votre requête" @@ -378,7 +395,7 @@ msgstr "Date de création" #: REST/methods/meta_service_pools.py:195 REST/methods/services_usage.py:125 #: reports/stats/pool_users_summary.py:60 -#: reports/stats/pools_performance.py:284 reports/stats/pools_usage_day.py:171 +#: reports/stats/pools_performance.py:267 reports/stats/pools_usage_day.py:169 #: reports/stats/pools_usage_summary.py:156 reports/stats/usage_by_pool.py:59 #: reports/stats/usage_by_pool.py:173 services/Proxmox/service.py:111 #: templates/uds/reports/stats/pools-performance.html:33 @@ -437,6 +454,28 @@ msgstr "Élément déjà retiré" msgid "Item is not removable" msgstr "Point non amovible" +#: REST/methods/mfas.py:54 +msgid "Multi Factor Authentication" +msgstr "Authentification multifacteur" + +#: REST/methods/mfas.py:80 +msgid "Device Caching" +msgstr "Mise en cache des appareils" + +#: REST/methods/mfas.py:82 +msgid "Time in hours to cache device so MFA is not required again. User based." +msgstr "" +"Temps en heures pour mettre en cache le périphérique afin que MFA ne soit " +"plus nécessaire. Basé sur l'utilisateur." + +#: REST/methods/mfas.py:94 +msgid "MFA code validity" +msgstr "Validité du code MFA" + +#: REST/methods/mfas.py:96 +msgid "Time in minutes to allow MFA code to be used." +msgstr "Temps en minutes pour autoriser l'utilisation du code MFA." + #: REST/methods/networks.py:59 REST/methods/transports.py:114 msgid "Networks" msgstr "Réseaux" @@ -525,7 +564,7 @@ msgstr "Fournisseurs de services" msgid "Status" msgstr "Statut" -#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:171 +#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:169 #: templates/uds/reports/stats/authenticator_stats.html:16 #: templates/uds/reports/stats/pools-usage-day.html:29 msgid "Services" @@ -622,13 +661,13 @@ msgstr "" msgid "Available reports" msgstr "Rapports disponibles" -#: REST/methods/reports.py:67 REST/methods/users_groups.py:377 -#: REST/methods/users_groups.py:398 -#: auths/ActiveDirectory_enterprise/authenticator.py:143 +#: REST/methods/reports.py:67 REST/methods/users_groups.py:375 +#: REST/methods/users_groups.py:396 +#: auths/ActiveDirectory_enterprise/authenticator.py:153 #: auths/AzureAD_enterprise/azure_ad.py:95 #: auths/EDirectory_enterprise/authenticator.py:105 #: auths/Radius/authenticator.py:63 auths/RegexLdap/authenticator.py:191 -#: auths/SAML_enterprise/saml.py:121 auths/SimpleLDAP/authenticator.py:182 +#: auths/SAML_enterprise/saml.py:109 auths/SimpleLDAP/authenticator.py:182 #: models/calendar_action.py:147 models/calendar_action.py:154 msgid "Group" msgstr "Groupe" @@ -693,13 +732,13 @@ msgstr "Proxy pour les services derrière un pare-feu" msgid "Advanced" msgstr "Avancé" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "With errors" msgstr "Avec Erreurs" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "Ok" msgstr "Bien" @@ -779,6 +818,16 @@ msgstr "" "Si l’option est activée, UDS ne va pas tenter de détecter et supprimer les " "services d’utilisateurs affectés, Sinon ceux qui sont en cours d’utilisation." +#: REST/methods/services_pools.py:387 +msgid "If active, transport will be visible for users" +msgstr "Si actif, le transport sera visible pour les utilisateurs" + +#: REST/methods/services_pools.py:390 REST/methods/services_pools.py:405 +#: REST/methods/services_pools.py:422 REST/methods/services_pools.py:433 +#: core/ui/user_interface.py:103 services/OVirt/service.py:188 +msgid "Display" +msgstr "Affichage" + #: REST/methods/services_pools.py:439 msgid "Initial available services" msgstr "Services initiaux disponibles" @@ -989,7 +1038,7 @@ msgstr "Membre du personnel" #: auths/AzureAD_enterprise/azure_ad.py:94 #: auths/EDirectory_enterprise/authenticator.py:69 #: auths/Radius/authenticator.py:62 auths/RegexLdap/authenticator.py:91 -#: auths/SAML_enterprise/saml.py:118 reports/stats/pool_users_summary.py:177 +#: auths/SAML_enterprise/saml.py:106 reports/stats/pool_users_summary.py:177 #: reports/stats/usage_by_pool.py:171 #: templates/uds/reports/stats/pool-users-summary.html:14 #: templates/uds/reports/stats/usage-by-pool.html:15 @@ -1006,10 +1055,10 @@ msgid "Current users" msgstr "Utilisateurs actuels" #: REST/methods/users_groups.py:160 -#: auths/ActiveDirectory_enterprise/authenticator.py:141 +#: auths/ActiveDirectory_enterprise/authenticator.py:151 #: auths/EDirectory_enterprise/authenticator.py:103 #: auths/RegexLdap/authenticator.py:189 auths/SimpleLDAP/authenticator.py:180 -#: services/HyperV_enterprise/legacy/provider.py:103 +#: mfas/Email/mfa.py:54 services/HyperV_enterprise/legacy/provider.py:103 #: services/HyperV_enterprise/provider.py:86 #: services/NutanixPrism_enterprise/provider.py:54 #: services/Nutanix_enterprise/provider.py:54 services/OVirt/provider.py:121 @@ -1023,7 +1072,7 @@ msgstr "Utilisateurs actuels" #: transports/NoMachine_enterprise/nomachine_base.py:63 #: transports/PCoIP_enterprise/pcoip.py:61 transports/RDP/rdp_base.py:75 #: transports/SPICE/spice_base.py:69 transports/X2GO/x2go_base.py:70 -#: web/forms/LoginForm.py:43 +#: web/forms/LoginForm.py:44 msgid "Username" msgstr "Nom d'utilisateur" @@ -1031,7 +1080,7 @@ msgstr "Nom d'utilisateur" msgid "Role" msgstr "Rôle" -#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:389 +#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:387 msgid "state" msgstr "État" @@ -1043,32 +1092,32 @@ msgstr "Dernier accès" msgid "Username cannot be empty" msgstr "Le nom d'utilisateur ne peut pas être vide" -#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:470 +#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:468 msgid "User already exists (duplicate key error)" msgstr "L'utilisateur existe déjà (erreur de clé en double)" -#: REST/methods/users_groups.py:365 +#: REST/methods/users_groups.py:363 #, python-brace-format msgid "Groups of {0}" msgstr "Groupes de {0}" -#: REST/methods/users_groups.py:371 +#: REST/methods/users_groups.py:369 msgid "Current groups" msgstr "Groupes actuels" -#: REST/methods/users_groups.py:398 +#: REST/methods/users_groups.py:396 msgid "UDS Group" msgstr "Groupe d'UDS" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "Meta group" msgstr "Groupe Meta" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "UDS Meta Group" msgstr "UDS Meta Group" -#: REST/methods/users_groups.py:430 +#: REST/methods/users_groups.py:428 msgid "Group name is required" msgstr "Le nom du groupe est requis" @@ -1119,7 +1168,7 @@ msgstr "Méthode introuvable {}: {}" msgid "Item not found" msgstr "Élément introuvable" -#: REST/model.py:336 web/util/authentication.py:140 web/util/errors.py:79 +#: REST/model.py:336 web/util/authentication.py:143 web/util/errors.py:81 msgid "Access denied" msgstr "Accès refusé" @@ -1127,7 +1176,7 @@ msgstr "Accès refusé" msgid "Operation not supported" msgstr "Opération non prise en charge" -#: admin/views/__init__.py:59 +#: admin/views/__init__.py:72 msgid "requested a template that do not exist" msgstr "demandé un modèle qui n'existent pas" @@ -1160,11 +1209,11 @@ msgstr "" "(utilisation USER@DOMAIN.Forme de DOM pour cela)" #: auths/ActiveDirectory_enterprise/authenticator.py:80 -#: auths/ActiveDirectory_enterprise/authenticator.py:145 +#: auths/ActiveDirectory_enterprise/authenticator.py:155 #: auths/EDirectory_enterprise/authenticator.py:77 #: auths/RegexLdap/authenticator.py:99 auths/RegexLdap/authenticator.py:193 #: auths/SimpleLDAP/authenticator.py:90 auths/SimpleLDAP/authenticator.py:184 -#: core/auths/authenticator.py:147 +#: core/auths/authenticator.py:147 mfas/Email/mfa.py:63 #: osmanagers/WindowsOsManager/windows_domain.py:85 #: osmanagers/WindowsOsManager/windows_random.py:76 #: services/HyperV_enterprise/legacy/provider.py:110 @@ -1180,8 +1229,8 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcv_base.py:52 #: transports/NoMachine_enterprise/nomachine_base.py:69 #: transports/PCoIP_enterprise/pcoip.py:67 transports/RDP/rdp_base.py:81 -#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:45 -#: web/forms/LoginForm.py:46 +#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:46 +#: web/forms/LoginForm.py:47 msgid "Password" msgstr "Mot de passe" @@ -1248,22 +1297,32 @@ msgstr "" "S'il n'est pas vide, cet hôte sera utilisé au cas où le serveur hôte " "principal ne serait pas accessible" -#: auths/ActiveDirectory_enterprise/authenticator.py:130 +#: auths/ActiveDirectory_enterprise/authenticator.py:133 +#: auths/SAML_enterprise/saml.py:207 +msgid "MFA attribute" +msgstr "Attribut MFA" + +#: auths/ActiveDirectory_enterprise/authenticator.py:135 +#: auths/SAML_enterprise/saml.py:209 +msgid "Attribute from where to extract the MFA code" +msgstr "Attribut d'où extraire le code MFA" + +#: auths/ActiveDirectory_enterprise/authenticator.py:140 msgid "Active Directory Authenticator" msgstr "Authentificateur de Active Directory" -#: auths/ActiveDirectory_enterprise/authenticator.py:132 +#: auths/ActiveDirectory_enterprise/authenticator.py:142 msgid "Authenticate against Active Directory" msgstr "S'authentifier sur Active Directory" -#: auths/ActiveDirectory_enterprise/authenticator.py:175 -#: auths/ActiveDirectory_enterprise/authenticator.py:602 +#: auths/ActiveDirectory_enterprise/authenticator.py:187 +#: auths/ActiveDirectory_enterprise/authenticator.py:648 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" -#: auths/ActiveDirectory_enterprise/authenticator.py:481 -#: auths/ActiveDirectory_enterprise/authenticator.py:532 -#: auths/AzureAD_enterprise/azure_ad.py:313 +#: auths/ActiveDirectory_enterprise/authenticator.py:521 +#: auths/ActiveDirectory_enterprise/authenticator.py:578 +#: auths/AzureAD_enterprise/azure_ad.py:315 #: auths/EDirectory_enterprise/authenticator.py:269 #: auths/EDirectory_enterprise/authenticator.py:300 #: auths/RegexLdap/authenticator.py:538 auths/RegexLdap/authenticator.py:569 @@ -1271,38 +1330,38 @@ msgstr "Doit spécifier le nom d'utilisateur sous la forme USERNAME@DOMAIN.DOM" msgid "Username not found" msgstr "Nom d'utilisateur introuvable" -#: auths/ActiveDirectory_enterprise/authenticator.py:514 +#: auths/ActiveDirectory_enterprise/authenticator.py:560 #: auths/SimpleLDAP/authenticator.py:468 msgid "Group not found" msgstr "Groupe introuvable" -#: auths/ActiveDirectory_enterprise/authenticator.py:559 -#: auths/ActiveDirectory_enterprise/authenticator.py:581 +#: auths/ActiveDirectory_enterprise/authenticator.py:605 +#: auths/ActiveDirectory_enterprise/authenticator.py:627 #: auths/EDirectory_enterprise/authenticator.py:322 #: auths/RegexLdap/authenticator.py:597 auths/SimpleLDAP/authenticator.py:503 #: auths/SimpleLDAP/authenticator.py:523 msgid "Too many results, be more specific" msgstr "Trop de résultats, être plus spécifique" -#: auths/ActiveDirectory_enterprise/authenticator.py:613 +#: auths/ActiveDirectory_enterprise/authenticator.py:659 msgid "Domain seems to be incorrect, please check it" msgstr "Domaine semble être incorrect, veuillez bien consulter le" -#: auths/ActiveDirectory_enterprise/authenticator.py:632 +#: auths/ActiveDirectory_enterprise/authenticator.py:678 msgid "" "Server does not seem an Active Directory (it does not have user objects)" msgstr "" "Serveur ne semble pas un serveur Active Directory (il n'a pas d'objets " "utilisateur)" -#: auths/ActiveDirectory_enterprise/authenticator.py:655 +#: auths/ActiveDirectory_enterprise/authenticator.py:701 msgid "" "Server does not seem an Active Directory (it does not have group objects)" msgstr "" "Serveur ne semble pas un serveur Active Directory (il n'a pas d'objets de " "groupe)" -#: auths/ActiveDirectory_enterprise/authenticator.py:664 +#: auths/ActiveDirectory_enterprise/authenticator.py:710 #: auths/EDirectory_enterprise/authenticator.py:445 #: auths/RegexLdap/authenticator.py:707 auths/SimpleLDAP/authenticator.py:686 msgid "Connection params seem correct, test was succesfully executed" @@ -1398,23 +1457,23 @@ msgstr "Déconnexion Microsoft" msgid "Office 365 logout" msgstr "Déconnexion Office 365" -#: auths/AzureAD_enterprise/azure_ad.py:176 auths/SAML_enterprise/saml.py:217 +#: auths/AzureAD_enterprise/azure_ad.py:176 msgid "SAML Authenticator does not support white spaces on field NAME" msgstr "" "SAML Authenticator ne prend pas en charge les espaces blancs sur le champ " "NAME" -#: auths/AzureAD_enterprise/azure_ad.py:323 -#: auths/AzureAD_enterprise/azure_ad.py:349 -#: auths/AzureAD_enterprise/azure_ad.py:359 +#: auths/AzureAD_enterprise/azure_ad.py:325 +#: auths/AzureAD_enterprise/azure_ad.py:351 +#: auths/AzureAD_enterprise/azure_ad.py:361 msgid "Authenticator exception:" msgstr "Exception d’authentificateur :" -#: auths/AzureAD_enterprise/azure_ad.py:394 core/util/ldaputil.py:49 +#: auths/AzureAD_enterprise/azure_ad.py:396 core/util/ldaputil.py:49 msgid "Connection error: " msgstr "Erreur de connexion : " -#: auths/AzureAD_enterprise/azure_ad.py:397 +#: auths/AzureAD_enterprise/azure_ad.py:399 msgid "Connection params seems correct, test was succesfully executed" msgstr "" "Params de connexion semble correcte, le test a été correctement exécuté" @@ -1521,7 +1580,7 @@ msgstr "Authentificateur IP" msgid "IP Range" msgstr "Plage d'adresses IP" -#: auths/IP/authenticator.py:119 auths/IP/authenticator.py:122 +#: auths/IP/authenticator.py:122 auths/IP/authenticator.py:125 msgid "All seems to be fine." msgstr "Tout semble aller bien." @@ -1722,19 +1781,19 @@ msgstr "" "Attribut d'id groupe LDAP semble incorrect (aucun groupe trouvée par cet " "attribut)" -#: auths/SAML_enterprise/saml.py:88 +#: auths/SAML_enterprise/saml.py:76 msgid "SAML Authenticator" msgstr " Authentificateur SAML" -#: auths/SAML_enterprise/saml.py:100 +#: auths/SAML_enterprise/saml.py:88 msgid "SAML (v2.0) Authenticator" msgstr "SAML (v2.0) authentificateur" -#: auths/SAML_enterprise/saml.py:130 +#: auths/SAML_enterprise/saml.py:118 msgid "Private key" msgstr "Clé privée" -#: auths/SAML_enterprise/saml.py:133 +#: auths/SAML_enterprise/saml.py:121 msgid "" "Private key used for sign and encription, as generated in base 64 from " "openssl" @@ -1742,15 +1801,15 @@ msgstr "" "Clé privée utilisée pour signature et cryptage, tel qu'elle est générée en " "base 64 de OpenSSL" -#: auths/SAML_enterprise/saml.py:136 auths/SAML_enterprise/saml.py:147 +#: auths/SAML_enterprise/saml.py:124 auths/SAML_enterprise/saml.py:135 msgid "Certificates" msgstr "Certificats" -#: auths/SAML_enterprise/saml.py:141 transports/SPICE/spice_base.py:83 +#: auths/SAML_enterprise/saml.py:129 transports/SPICE/spice_base.py:83 msgid "Certificate" msgstr "Certificat" -#: auths/SAML_enterprise/saml.py:144 +#: auths/SAML_enterprise/saml.py:132 msgid "" "Public key used for sign and encription (public part of previous private " "key), as generated in base 64 from openssl" @@ -1758,61 +1817,85 @@ msgstr "" "Clé publique utilisée pour signature et cryptage (partie publique de la clé " "privé précédente), tel qu'elle est générée en base 64 d’openssl" -#: auths/SAML_enterprise/saml.py:152 +#: auths/SAML_enterprise/saml.py:140 msgid "IDP Metadata" msgstr "Métadonnées de l'IDP" -#: auths/SAML_enterprise/saml.py:155 +#: auths/SAML_enterprise/saml.py:143 msgid "" "You can enter here the URL or the IDP metadata or the metadata itself (xml)" msgstr "" "Ici, vous pouvez entrer le URL ou les métadonnées d'IDP ou les métadonnées " "eux-même (xml)" -#: auths/SAML_enterprise/saml.py:158 auths/SAML_enterprise/saml.py:167 +#: auths/SAML_enterprise/saml.py:146 auths/SAML_enterprise/saml.py:155 msgid "Metadata" msgstr "Métadonnées" -#: auths/SAML_enterprise/saml.py:162 +#: auths/SAML_enterprise/saml.py:150 msgid "Entity ID" msgstr "ID de l'entité" -#: auths/SAML_enterprise/saml.py:165 +#: auths/SAML_enterprise/saml.py:153 msgid "ID of the SP. If left blank, this will be autogenerated from server URL" msgstr "" "ID de la SP. Si laissé vide, ce sera généré automatiquement a partir des URL " "du serveur" -#: auths/SAML_enterprise/saml.py:173 +#: auths/SAML_enterprise/saml.py:161 msgid "User name attrs" msgstr "Utilisateur nom attrs" -#: auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:163 msgid "Fields from where to extract user name" msgstr "Champs d'où extraire le nom d'utilisateur" -#: auths/SAML_enterprise/saml.py:177 auths/SAML_enterprise/saml.py:187 -#: auths/SAML_enterprise/saml.py:197 +#: auths/SAML_enterprise/saml.py:165 auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:185 msgid "Attributes" msgstr "Attributs" -#: auths/SAML_enterprise/saml.py:183 +#: auths/SAML_enterprise/saml.py:171 msgid "Group name attrs" msgstr "Groupe nom attrs" -#: auths/SAML_enterprise/saml.py:185 +#: auths/SAML_enterprise/saml.py:173 msgid "Fields from where to extract the groups" msgstr "Champs d'où extraire les groupes" -#: auths/SAML_enterprise/saml.py:193 +#: auths/SAML_enterprise/saml.py:181 msgid "Real name attrs" msgstr "Vrai nom attrs" -#: auths/SAML_enterprise/saml.py:195 +#: auths/SAML_enterprise/saml.py:183 msgid "Fields from where to extract the real name" msgstr "Champs d'où extraire le nom réel" +#: auths/SAML_enterprise/saml.py:189 +msgid "Global logout" +msgstr "Déconnexion globale" + +#: auths/SAML_enterprise/saml.py:192 +msgid "If set, logout from UDS will trigger SAML logout" +msgstr "Si défini, la déconnexion d'UDS déclenchera la déconnexion SAML" + +#: auths/SAML_enterprise/saml.py:197 +msgid "ADFS compatibility" +msgstr "Compatibilité ADFS" + +#: auths/SAML_enterprise/saml.py:200 +msgid "If set, enable lowercase url encoding so ADFS can work correctly" +msgstr "" +"Si défini, activez l'encodage d'URL en minuscules pour qu'ADFS " +"puisse fonctionner correctement" + #: auths/SAML_enterprise/saml.py:231 +msgid "This kind of Authenticator does not support white spaces on field NAME" +msgstr "" +"Ce type d'authentificateur ne prend pas en charge les espaces blancs sur " +"le champ NAME" + +#: auths/SAML_enterprise/saml.py:245 msgid "" "Server certificate should be a valid PEM (PEM certificates starts with -----" "BEGIN CERTIFICATE-----)" @@ -1820,11 +1903,11 @@ msgstr "" "Certificat de serveur doit être un PEM valide (certificats PEM commencent " "par---BEGIN CERTIFICATE---)" -#: auths/SAML_enterprise/saml.py:239 +#: auths/SAML_enterprise/saml.py:253 msgid "Invalid server certificate. " msgstr "Certificat de serveur non valide. " -#: auths/SAML_enterprise/saml.py:250 +#: auths/SAML_enterprise/saml.py:264 msgid "" "Private key should be a valid PEM (PEM private keys starts with -----BEGIN " "RSA PRIVATE KEY-----" @@ -1832,27 +1915,47 @@ msgstr "" "Clé privée doit être un PEM valide (clés privées PEM commencent par---BEGIN " "RSA PRIVATE KEY---" -#: auths/SAML_enterprise/saml.py:258 +#: auths/SAML_enterprise/saml.py:272 msgid "Invalid private key. " msgstr "Clé privée non valide. " -#: auths/SAML_enterprise/saml.py:277 +#: auths/SAML_enterprise/saml.py:291 #, python-brace-format msgid "Can't fetch url {0}: {1}" msgstr "Impossible d'extraire url {0}: {1}" -#: auths/SAML_enterprise/saml.py:288 +#: auths/SAML_enterprise/saml.py:302 msgid " (obtained from URL)" msgstr " (obtenu à partir d'URL)" -#: auths/SAML_enterprise/saml.py:290 +#: auths/SAML_enterprise/saml.py:304 msgid "XML does not seem valid for IDP Metadata " msgstr "XML ne semble pas etre valide pour les métadonnées de l'IDP " -#: auths/SAML_enterprise/saml.py:312 +#: auths/SAML_enterprise/saml.py:357 msgid "Can't access idp metadata" msgstr "Ne peut pas accéder aux métadonnées de l'idp" +#: auths/SAML_enterprise/saml.py:424 +msgid "Error validating SP metadata: " +msgstr "Erreur lors de la validation des métadonnées SP :" + +#: auths/SAML_enterprise/saml.py:528 +msgid "Error processing SLO: " +msgstr "Erreur lors du traitement du SLO :" + +#: auths/SAML_enterprise/saml.py:558 +msgid "Error processing SAML response: " +msgstr "Erreur lors du traitement de la réponse SAML :" + +#: auths/SAML_enterprise/saml.py:571 +msgid "SAML response not authenticated" +msgstr "Réponse SAML non authentifiée" + +#: auths/SAML_enterprise/saml.py:598 +msgid "No attributes returned from IdP" +msgstr "Aucun attribut renvoyé par l'IdP" + #: auths/Sample/SampleAuth.py:79 msgid "Sample Authenticator" msgstr "Échantillon authentificateur" @@ -1951,11 +2054,11 @@ msgstr "" "Impossible de localiser un groupe avec l'attribut d'appartenance " "spécifié" -#: core/auths/auth.py:110 +#: core/auths/auth.py:111 msgid "System Administrator" msgstr "Administrateur système" -#: core/auths/auth.py:150 +#: core/auths/auth.py:155 msgid "Forbidden" msgstr "Interdit" @@ -1992,20 +2095,20 @@ msgid "Can't unpublish publications with services in process" msgstr "" "Ne peut annuler la publication des publications avec services en processus" -#: core/managers/user_service.py:337 +#: core/managers/user_service.py:348 msgid "Can't remove a non active element" msgstr "Impossible de supprimer un élément non actif" -#: core/managers/user_service.py:363 +#: core/managers/user_service.py:374 msgid "Can't remove nor cancel {} cause its state don't allow it" msgstr "" "Impossible de supprimer ni d'annuler {} car son état ne le permet pas" -#: core/managers/user_service.py:395 +#: core/managers/user_service.py:406 msgid "The requested service is restrained" msgstr "Le service demandé est restreint" -#: core/managers/user_service.py:761 web/util/errors.py:81 +#: core/managers/user_service.py:770 web/util/errors.py:83 msgid "" "Invalid service. The service is not available at this moment. Please, try " "later" @@ -2013,14 +2116,22 @@ msgstr "" "Service non valide. Le service n'est pas disponible en ce moment. SVP, " "essayez plus tard" -#: core/managers/user_service.py:798 +#: core/managers/user_service.py:807 msgid "The requested transport {} is not valid for {}" msgstr "Le transport demandé {} n'est pas valide pour {}." -#: core/managers/user_service.py:1078 +#: core/managers/user_service.py:1084 msgid "The service is not accessible from this device" msgstr "Le service n'est pas accessible depuis cet appareil" +#: core/mfas/mfa.py:60 core/mfas/mfa.py:72 +msgid "Base MFA" +msgstr "AMF de base" + +#: core/mfas/mfa.py:184 +msgid "Invalid MFA code" +msgstr "Code MFA invalide" + #: core/module.py:215 msgid "No connection checking method is implemented." msgstr "Aucun lien pour vérifier la méthode n'est implémentée." @@ -2065,14 +2176,6 @@ msgstr "Imprimé au {maintenant:% Y,% b% d} à {maintenant:% H:% M}" msgid "Base Service" msgstr "Service de base" -#: core/services/service.py:143 core/services/service.py:154 -#: models/permissions.py:92 models/permissions.py:96 -#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 -#: services/Proxmox/service.py:208 services/Sample/service.py:100 -#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 -msgid "None" -msgstr "Aucun" - #: core/transports/transport.py:52 msgid "Direct" msgstr "Direct" @@ -2197,24 +2300,24 @@ msgstr "Utilisateurs avec services" msgid "Cached" msgstr "En cache" -#: core/util/tools.py:152 +#: core/util/tools.py:155 msgid "{} days {:d}:{:02d}:{:02d}" msgstr "{} jours {: d}: {: 02d}: {: 02d}" -#: core/util/tools.py:171 +#: core/util/tools.py:174 msgid "The basename is not a valid for a hostname" msgstr "Le nom de base n'est pas valide pour un nom d'hôte" -#: core/util/tools.py:176 +#: core/util/tools.py:179 msgid "The length of basename plus length must be greater than 0" msgstr "La longueur du nom de base plus la longueur doit être supérieure à 0" -#: core/util/tools.py:181 +#: core/util/tools.py:184 msgid "The length of basename plus length must not be greater than 15" msgstr "" "La longueur du nom de base plus la longueur ne doit pas être supérieure à 15" -#: core/util/tools.py:186 +#: core/util/tools.py:189 msgid "The machine name can't be only numbers" msgstr "Nom de l'ordinateur ne peut pas être uniquement des nombres" @@ -2245,75 +2348,367 @@ msgstr "{} dépasse la longueur maximale du nom d'hôte." msgid "{} is not a valid hostname" msgstr "{} n'est pas un nom d'hôte valide" -#: core/util/validators.py:152 +#: core/util/validators.py:131 +msgid "{} is not a valid host:port pair" +msgstr "{} n'est pas une paire hôte:port valide" + +#: core/util/validators.py:168 msgid "" "Invalid mac range. Mac range must be in format XX:XX:XX:XX:XX:XX-XX:XX:XX:XX:" "XX:XX" msgstr "" "Gamme mac non valide. Gamme Mac doit être au format XX-XX:XX:XX:XX :XX: XX" -#: dispatchers/wyse_enterprise/views.py:118 +#: core/util/validators.py:182 +msgid "Email address is too long" +msgstr "L'adresse e-mail est trop longue" + +#: core/util/validators.py:187 +msgid "Email address is not valid" +msgstr "l'adresse email n'est pas valide" + +#: dispatchers/wyse_enterprise/views.py:119 msgid "There are no authenticators available for login" msgstr "Il n'existe aucun authentificateurs pour effectuer la connexion" -#: dispatchers/wyse_enterprise/views.py:138 +#: dispatchers/wyse_enterprise/views.py:139 #, python-brace-format msgid "The authenticator {0} is not usable" msgstr "L'authentificateur {0} n'est pas utilisable" -#: dispatchers/wyse_enterprise/views.py:145 +#: dispatchers/wyse_enterprise/views.py:146 msgid "Invalid credentials" msgstr "Informations d'identification non valides" -#: dispatchers/wyse_enterprise/views.py:152 +#: dispatchers/wyse_enterprise/views.py:153 #, python-brace-format msgid "The domain {0} does not exists" msgstr "Le domaine {0} n'existe pas" -#: dispatchers/wyse_enterprise/views.py:228 +#: dispatchers/wyse_enterprise/views.py:229 msgid "No services available" msgstr "Aucun service disponible" -#: dispatchers/wyse_enterprise/views.py:244 -#: dispatchers/wyse_enterprise/views.py:344 +#: dispatchers/wyse_enterprise/views.py:245 +#: dispatchers/wyse_enterprise/views.py:345 msgid "Invalid session" msgstr "Session invalide" -#: dispatchers/wyse_enterprise/views.py:248 -#: dispatchers/wyse_enterprise/views.py:348 +#: dispatchers/wyse_enterprise/views.py:249 +#: dispatchers/wyse_enterprise/views.py:349 msgid "Invalid authorization" msgstr "Autorisation non valide" -#: dispatchers/wyse_enterprise/views.py:259 -#: dispatchers/wyse_enterprise/views.py:354 +#: dispatchers/wyse_enterprise/views.py:260 +#: dispatchers/wyse_enterprise/views.py:355 msgid "Invalid request" msgstr "Requête non valide" -#: dispatchers/wyse_enterprise/views.py:262 -#: dispatchers/wyse_enterprise/views.py:357 +#: dispatchers/wyse_enterprise/views.py:263 +#: dispatchers/wyse_enterprise/views.py:358 msgid "Invalid credentials used" msgstr "Informations d'identification non valides utilisées" -#: dispatchers/wyse_enterprise/views.py:277 web/util/errors.py:78 +#: dispatchers/wyse_enterprise/views.py:278 web/util/errors.py:80 msgid "Service not found" msgstr "Service introuvable" -#: dispatchers/wyse_enterprise/views.py:281 +#: dispatchers/wyse_enterprise/views.py:282 msgid "Invalid machine uuid." msgstr "Uuid machine non valide." -#: dispatchers/wyse_enterprise/views.py:295 web/util/errors.py:77 +#: dispatchers/wyse_enterprise/views.py:296 web/util/errors.py:79 msgid "Transport not found" msgstr "Transport introuvable" -#: dispatchers/wyse_enterprise/views.py:300 -#: dispatchers/wyse_enterprise/views.py:308 -#: dispatchers/wyse_enterprise/views.py:315 +#: dispatchers/wyse_enterprise/views.py:301 +#: dispatchers/wyse_enterprise/views.py:309 +#: dispatchers/wyse_enterprise/views.py:316 msgid "Service not ready at this moment. Please, try again in a while." msgstr "" "Le service n'est pas prêt à ce moment. S'il vous plaît, essayez à nouveau " "dans un moment." +#: mfas/Email/mfa.py:22 +msgid "Email Multi Factor" +msgstr "E-mail multi-facteur" + +#: mfas/Email/mfa.py:24 +msgid "Email Multi Factor Authenticator" +msgstr "Authentificateur multifacteur de messagerie" + +#: mfas/Email/mfa.py:29 +msgid "SMTP Host" +msgstr "Hôte SMTP" + +#: mfas/Email/mfa.py:32 +msgid "" +"SMTP Server hostname or IP address. If you are using a non-standard port, " +"add it after a colon, for example: smtp.gmail.com:587" +msgstr "" +"Nom d'hôte ou adresse IP du serveur SMTP. Si vous utilisez un port non " +"standard, ajoutez-le après deux-points, par exemple : smtp.gmail.com:587" + +#: mfas/Email/mfa.py:37 mfas/Email/mfa.py:50 mfas/Email/mfa.py:59 +#: mfas/Email/mfa.py:68 +msgid "SMTP Server" +msgstr "Serveur SMTP" + +#: mfas/Email/mfa.py:41 transports/HTML5RDP/html5rdp.py:268 +#: transports/HTML5RDS_enterprise/html5rds.py:255 +msgid "Security" +msgstr "Sécurité" + +#: mfas/Email/mfa.py:42 +msgid "Security protocol to use" +msgstr "Protocole de sécurité à utiliser" + +#: mfas/Email/mfa.py:44 +msgid "TLS" +msgstr "TLS" + +#: mfas/Email/mfa.py:45 +msgid "SSL" +msgstr "SSL" + +#: mfas/Email/mfa.py:56 +msgid "User with access to SMTP server" +msgstr "Utilisateur ayant accès au serveur SMTP" + +#: mfas/Email/mfa.py:65 +msgid "Password of the user with access to SMTP server" +msgstr "Mot de passe de l'utilisateur ayant accès au serveur SMTP" + +#: mfas/Email/mfa.py:74 +msgid "Subject" +msgstr "Matière" + +#: mfas/Email/mfa.py:76 +msgid "Subject of the email" +msgstr "Objet du mail" + +#: mfas/Email/mfa.py:78 mfas/Email/mfa.py:87 mfas/Email/mfa.py:95 +msgid "Config" +msgstr "Configuration" + +#: mfas/Email/mfa.py:83 +msgid "From Email" +msgstr "De l'email" + +#: mfas/Email/mfa.py:85 +msgid "Email address that will be used as sender" +msgstr "Adresse e-mail qui sera utilisée comme expéditeur" + +#: mfas/Email/mfa.py:91 +msgid "Enable HTML" +msgstr "Activer HTML" + +#: mfas/Email/mfa.py:93 +msgid "Enable HTML in emails" +msgstr "Activer le HTML dans les e-mails" + +#: mfas/Email/mfa.py:110 +msgid "Invalid SMTP hostname" +msgstr "Nom d'hôte SMTP non valide" + +#: mfas/SMS/mfa.py:19 +msgid "SMS Thought HTTP" +msgstr "SMS Pensée HTTP" + +#: mfas/SMS/mfa.py:21 +msgid "Simple SMS sending MFA using HTTP" +msgstr "Envoi de SMS simple MFA via HTTP" + +#: mfas/SMS/mfa.py:26 +msgid "URL pattern for SMS sending" +msgstr "Modèle d'URL pour l'envoi de SMS" + +#: mfas/SMS/mfa.py:29 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"URL pattern for SMS sending. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"Modèle d'URL pour l'envoi de SMS. Il peut contenir les variables " +"suivantes : * {code} - le code à envoyer * {phone/+phone} - le numéro de " +"téléphone * {username} - le nom d'utilisateur * {justUsername} - le nom " +"d'utilisateur sans @...." + +#: mfas/SMS/mfa.py:37 mfas/SMS/mfa.py:43 mfas/SMS/mfa.py:56 mfas/SMS/mfa.py:75 +#: mfas/SMS/mfa.py:92 mfas/SMS/mfa.py:101 +msgid "HTTP Server" +msgstr "Serveur HTTP" + +#: mfas/SMS/mfa.py:41 +msgid "Ignore certificate errors" +msgstr "Ignorer les erreurs de certificat" + +#: mfas/SMS/mfa.py:46 +msgid "" +"If checked, the server certificate will be ignored. This is useful if the " +"server uses a self-signed certificate." +msgstr "" +"Si coché, le certificat du serveur sera ignoré. Ceci est utile si le serveur " +"utilise un certificat auto-signé." + +#: mfas/SMS/mfa.py:52 +msgid "SMS sending method" +msgstr "Méthode d'envoi de SMS" + +#: mfas/SMS/mfa.py:54 mfas/SMS/mfa.py:108 +msgid "Method for sending SMS" +msgstr "Méthode d'envoi de SMS" + +#: mfas/SMS/mfa.py:63 +msgid "Headers for SMS requests" +msgstr "En-têtes pour les demandes SMS" + +#: mfas/SMS/mfa.py:66 +msgid "" +"Headers for SMS requests. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @....\n" +"Headers are in the form of \"Header: Value\". (without the quotes)" +msgstr "" +"En-têtes pour les demandes SMS. Il peut contenir les variables suivantes : * " +"{code} - le code à envoyer * {phone/+phone} - le numéro de téléphone * " +"{username} - le nom d'utilisateur * {justUsername} - le nom d'" +"utilisateur sans @.... Les en-têtes sont dans sous la forme \"En-tête : " +"valeur\". (sans les guillemets)" + +#: mfas/SMS/mfa.py:81 +msgid "Parameters for SMS POST/PUT sending" +msgstr "Paramètres pour l'envoi de SMS POST/PUT" + +#: mfas/SMS/mfa.py:84 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"Parameters for SMS sending via POST/PUT. It can contain the following " +"variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"Paramètres pour l'envoi de SMS via POST/PUT. Il peut contenir les " +"variables suivantes : * {code} - le code à envoyer * {phone/+phone} - le " +"numéro de téléphone * {username} - le nom d'utilisateur * {justUsername} " +"- le nom d'utilisateur sans @...." + +#: mfas/SMS/mfa.py:96 +msgid "SMS encoding" +msgstr "Encodage SMS" + +#: mfas/SMS/mfa.py:99 +msgid "Encoding for SMS" +msgstr "Encodage pour SMS" + +#: mfas/SMS/mfa.py:106 +msgid "SMS authentication method" +msgstr "Méthode d'authentification par SMS" + +#: mfas/SMS/mfa.py:110 mfas/SMS/mfa.py:124 mfas/SMS/mfa.py:133 +msgid "HTTP Authentication" +msgstr "Authentification HTTP" + +#: mfas/SMS/mfa.py:113 +msgid "HTTP Basic Auth" +msgstr "Authentification de base HTTP" + +#: mfas/SMS/mfa.py:114 +msgid "HTTP Digest Auth" +msgstr "Authentification de résumé HTTP" + +#: mfas/SMS/mfa.py:120 +msgid "SMS authentication user or token" +msgstr "Utilisateur ou jeton d'authentification par SMS" + +#: mfas/SMS/mfa.py:122 +msgid "User or token for SMS authentication" +msgstr "Utilisateur ou jeton pour l'authentification par SMS" + +#: mfas/SMS/mfa.py:129 +msgid "SMS authentication password" +msgstr "Mot de passe d'authentification SMS" + +#: mfas/SMS/mfa.py:131 +msgid "Password for SMS authentication" +msgstr "Mot de passe pour l'authentification par SMS" + +#: mfas/SMS/mfa.py:138 +msgid "SMS response OK regex" +msgstr "Réponse SMS OK regex" + +#: mfas/SMS/mfa.py:141 +msgid "" +"Regex for SMS response OK. If emty, the response is considered OK if status " +"code is 200." +msgstr "" +"Regex pour la réponse SMS OK. Si vide, la réponse est considérée comme OK si " +"le code d'état est 200." + +#: mfas/SMS/mfa.py:144 mfas/SMS/mfa.py:153 +msgid "HTTP Response" +msgstr "Réponse HTTP" + +#: mfas/SMS/mfa.py:148 +msgid "SMS response error action" +msgstr "Action d'erreur de réponse SMS" + +#: mfas/SMS/mfa.py:151 +msgid "Action for SMS response error" +msgstr "Action en cas d'erreur de réponse SMS" + +#: mfas/SMS/mfa.py:155 +msgid "Allow user log in without MFA" +msgstr "Autoriser la connexion de l'utilisateur sans MFA" + +#: mfas/SMS/mfa.py:156 +msgid "Deny user log in" +msgstr "Refuser la connexion de l'utilisateur" + +#: mfas/SMS/mfa.py:199 +msgid "SMS sending failed" +msgstr "L'envoi du SMS a échoué" + +#: mfas/SMS/mfa.py:263 web/views/modern.py:275 +msgid "MFA Code" +msgstr "Code AMF" + +#: mfas/Sample/mfa.py:16 +msgid "Sample Multi Factor" +msgstr "Échantillon multi-facteur" + +#: mfas/Sample/mfa.py:18 +msgid "Sample Multi Factor Authenticator" +msgstr "Exemple d'authentificateur multifacteur" + +#: mfas/Sample/mfa.py:22 +msgid "Sample useless field" +msgstr "Exemple de champ inutile" + +#: mfas/Sample/mfa.py:25 +msgid "This is a useless field, for sample and testing pourposes" +msgstr "" +"C'est un champ inutile, à des fins d'échantillonnage et de test" + #: models/calendar_action.py:63 msgid "Publish" msgstr "Publier" @@ -2875,7 +3270,7 @@ msgid "Service pool for report" msgstr "Pool de services pour rapport" #: reports/auto/fields.py:104 reports/lists/users.py:61 -#: web/forms/LoginForm.py:50 +#: web/forms/LoginForm.py:51 msgid "Authenticator" msgstr "Authentificateur" @@ -2927,11 +3322,11 @@ msgstr "ID de l'utilisateur" msgid "Real Name" msgstr "Vrai nom" -#: reports/stats/auth_stats.py:58 +#: reports/stats/auth_stats.py:59 msgid "Statistics by authenticator" msgstr "Statistiques par authentificateur" -#: reports/stats/auth_stats.py:60 +#: reports/stats/auth_stats.py:61 msgid "" "Generates a report with the statistics of an authenticator for a desired " "period" @@ -2939,14 +3334,14 @@ msgstr "" "Génère un rapport avec les statistiques d'un authentificateur pour une " "période souhaitée" -#: reports/stats/auth_stats.py:136 reports/stats/usage_by_pool.py:146 +#: reports/stats/auth_stats.py:123 reports/stats/usage_by_pool.py:146 #: templates/uds/reports/stats/authenticator_stats.html:4 #: templates/uds/reports/stats/usage-by-pool.html:4 #: templates/uds/reports/stats/usage-by-pool.html:6 msgid "Users usage list" msgstr "Liste d'utilisation des utilisateurs" -#: reports/stats/auth_stats.py:137 reports/stats/usage_by_pool.py:147 +#: reports/stats/auth_stats.py:124 reports/stats/usage_by_pool.py:147 msgid "UDS Report of users usage" msgstr "Rapport UDS sur l'utilisation des utilisateurs" @@ -3021,30 +3416,26 @@ msgstr "Nombre d'intervalles" msgid "Number of sampling points used in charts" msgstr "Nombre de points de prélèvement utilisées dans les graphiques" -#: reports/stats/pools_performance.py:128 -msgid "Select at least a service pool for the report" -msgstr "Sélectionnez au moins un pool de service pour le rapport" - -#: reports/stats/pools_performance.py:211 +#: reports/stats/pools_performance.py:194 msgid "Distinct Users" msgstr "Utilisateurs distincts" -#: reports/stats/pools_performance.py:230 -#: reports/stats/pools_performance.py:242 -#: reports/stats/pools_performance.py:287 +#: reports/stats/pools_performance.py:213 +#: reports/stats/pools_performance.py:225 +#: reports/stats/pools_performance.py:270 #: templates/uds/reports/stats/pools-performance.html:36 msgid "Accesses" msgstr "Accès" -#: reports/stats/pools_performance.py:258 +#: reports/stats/pools_performance.py:241 msgid "UDS Pools Performance Report" msgstr "Rapport sur le rendement Pools UDS" -#: reports/stats/pools_performance.py:259 +#: reports/stats/pools_performance.py:242 msgid "Pools Performance" msgstr "Performance des pools" -#: reports/stats/pools_performance.py:285 reports/stats/user_access.py:297 +#: reports/stats/pools_performance.py:268 reports/stats/user_access.py:282 #: templates/uds/reports/stats/pools-performance.html:34 #: templates/uds/reports/stats/user-access.html:34 msgid "Date range" @@ -3058,21 +3449,21 @@ msgstr "Utilisation des Pools sur une journée" msgid "Pools usage counters for an specific day" msgstr "Compteurs d’utilisation de Pools pour une journée spécifique" -#: reports/stats/pools_usage_day.py:128 +#: reports/stats/pools_usage_day.py:126 msgid "Services by hour" msgstr "Services par heure" -#: reports/stats/pools_usage_day.py:133 reports/stats/pools_usage_day.py:171 -#: reports/stats/user_access.py:228 reports/stats/user_access.py:240 +#: reports/stats/pools_usage_day.py:131 reports/stats/pools_usage_day.py:169 +#: reports/stats/user_access.py:213 reports/stats/user_access.py:225 #: templates/uds/reports/stats/pools-usage-day.html:28 msgid "Hour" msgstr "Heure" -#: reports/stats/pools_usage_day.py:152 +#: reports/stats/pools_usage_day.py:150 msgid "Services usage report for a day" msgstr "Rapport d'utilisation des services pour un jour" -#: reports/stats/pools_usage_day.py:153 +#: reports/stats/pools_usage_day.py:151 msgid "Service usage report" msgstr "Rapport d'utilisation du service" @@ -3140,63 +3531,63 @@ msgstr "TOUTES LES PISCINES" msgid "Seconds" msgstr "Secondes" -#: reports/stats/user_access.py:59 reports/stats/user_access.py:281 +#: reports/stats/user_access.py:59 reports/stats/user_access.py:266 msgid "Users access report by date" msgstr "Rapport d'accés des utilisateurs par date" -#: reports/stats/user_access.py:60 reports/stats/user_access.py:282 +#: reports/stats/user_access.py:60 reports/stats/user_access.py:267 msgid "Report of user access to platform by date" msgstr "Rapport d'accés des utilisateurs á la plate-forme par date" -#: reports/stats/user_access.py:186 +#: reports/stats/user_access.py:171 msgid "Users Access (global)" msgstr "Accès des utilisateurs (global)" -#: reports/stats/user_access.py:206 +#: reports/stats/user_access.py:191 msgid "Users Access (by week)" msgstr "Accès des utilisateurs (par semaine)" -#: reports/stats/user_access.py:209 reports/stats/user_access.py:245 +#: reports/stats/user_access.py:194 reports/stats/user_access.py:230 msgid "Monday" msgstr "Lundi" -#: reports/stats/user_access.py:210 reports/stats/user_access.py:246 +#: reports/stats/user_access.py:195 reports/stats/user_access.py:231 msgid "Tuesday" msgstr "Mardi" -#: reports/stats/user_access.py:211 reports/stats/user_access.py:247 +#: reports/stats/user_access.py:196 reports/stats/user_access.py:232 msgid "Wednesday" msgstr "Mercredi" -#: reports/stats/user_access.py:212 reports/stats/user_access.py:248 +#: reports/stats/user_access.py:197 reports/stats/user_access.py:233 msgid "Thursday" msgstr "Jeudi" -#: reports/stats/user_access.py:213 reports/stats/user_access.py:249 +#: reports/stats/user_access.py:198 reports/stats/user_access.py:234 msgid "Friday" msgstr "Vendredi" -#: reports/stats/user_access.py:214 reports/stats/user_access.py:250 +#: reports/stats/user_access.py:199 reports/stats/user_access.py:235 msgid "Saturday" msgstr "samedi" -#: reports/stats/user_access.py:215 reports/stats/user_access.py:251 +#: reports/stats/user_access.py:200 reports/stats/user_access.py:236 msgid "Sunday" msgstr "dimanche" -#: reports/stats/user_access.py:217 reports/stats/user_access.py:243 +#: reports/stats/user_access.py:202 reports/stats/user_access.py:228 msgid "Day of week" msgstr "Jour de la semaine" -#: reports/stats/user_access.py:226 reports/stats/user_access.py:238 +#: reports/stats/user_access.py:211 reports/stats/user_access.py:223 msgid "Users Access (by hour)" msgstr "Accès des utilisateurs (par heure)" -#: reports/stats/user_access.py:267 +#: reports/stats/user_access.py:252 msgid "Users access to UDS" msgstr "Accès des utilisateurs à l'UDS" -#: reports/stats/user_access.py:268 +#: reports/stats/user_access.py:253 msgid "UDS Report for users access" msgstr "UDS Report pour l'accès des utilisateurs" @@ -4461,12 +4852,12 @@ msgstr "Fournisseur de machines IP statiques" msgid "Provides connection to machines by IP" msgstr "Fournit une connexion aux machines par IP" -#: services/PhysicalMachines/service_multi.py:64 +#: services/PhysicalMachines/service_multi.py:62 #: services/Vmware_enterprise/service_fixed.py:55 msgid "Service Token" msgstr "Jeton de service" -#: services/PhysicalMachines/service_multi.py:67 +#: services/PhysicalMachines/service_multi.py:65 #: services/Vmware_enterprise/service_fixed.py:57 msgid "" "Service token that will be used by actors to communicate with service. Leave " @@ -4475,41 +4866,41 @@ msgstr "" "Jeton de service qui sera utilisé par les acteurs pour communiquer avec le " "service. Laissez vide pour une affectation persistante." -#: services/PhysicalMachines/service_multi.py:75 +#: services/PhysicalMachines/service_multi.py:73 #: services/RDS_enterprise/provider.py:51 msgid "List of servers" msgstr "Liste des serveurs" -#: services/PhysicalMachines/service_multi.py:76 +#: services/PhysicalMachines/service_multi.py:74 msgid "List of servers available for this service" msgstr "Liste des serveurs disponibles pour ce service" -#: services/PhysicalMachines/service_multi.py:81 +#: services/PhysicalMachines/service_multi.py:79 msgid "Check Port" msgstr "Vérifier le port" -#: services/PhysicalMachines/service_multi.py:85 +#: services/PhysicalMachines/service_multi.py:83 msgid "" "If non zero, only hosts responding to connection on that port will be served." msgstr "" "Si différent de zéro, seuls les hôtes répondant à la connexion sur ce port " "seront servis." -#: services/PhysicalMachines/service_multi.py:92 +#: services/PhysicalMachines/service_multi.py:90 msgid "Skip time" msgstr "Passer le temps" -#: services/PhysicalMachines/service_multi.py:95 +#: services/PhysicalMachines/service_multi.py:93 msgid "If a host fails to check, skip it for this time (in minutes)." msgstr "" "Si un hôte ne parvient pas à vérifier, ignorez-le pendant cette période (en " "minutes)." -#: services/PhysicalMachines/service_multi.py:103 +#: services/PhysicalMachines/service_multi.py:101 msgid "Max session per machine" msgstr "Session max par machine" -#: services/PhysicalMachines/service_multi.py:107 +#: services/PhysicalMachines/service_multi.py:105 msgid "" "Maximum session duration before UDS thinks this machine got locked and " "releases it (hours). 0 means \"never\"." @@ -4517,26 +4908,26 @@ msgstr "" "Durée maximale de la session avant qu'UDS pense que cette machine s'" "est verrouillée et la libère (heures). 0 signifie \"jamais\"." -#: services/PhysicalMachines/service_multi.py:114 +#: services/PhysicalMachines/service_multi.py:112 msgid "Lock machine by external access" msgstr "Verrouillage de la machine par accès externe" -#: services/PhysicalMachines/service_multi.py:115 +#: services/PhysicalMachines/service_multi.py:113 msgid "" "If checked, UDS will lock the machine if it is accesed from outside UDS." msgstr "" "Si coché, UDS verrouillera la machine si elle est accessible depuis l'" "extérieur de l'UDS." -#: services/PhysicalMachines/service_multi.py:122 +#: services/PhysicalMachines/service_multi.py:120 msgid "Static Multiple IP" msgstr "IP statique multiple" -#: services/PhysicalMachines/service_multi.py:124 +#: services/PhysicalMachines/service_multi.py:122 msgid "This service provides access to POWERED-ON Machines by IP" msgstr "Ce service fournit un accès aux machines sous tension par IP" -#: services/PhysicalMachines/service_multi.py:158 +#: services/PhysicalMachines/service_multi.py:156 msgid "Invalid value detected on servers list: \"{}\"" msgstr "Valeur non valide détectée sur la liste des serveurs : \"{}\"" @@ -5448,47 +5839,47 @@ msgstr "Ombre" msgid "Shadow memory multiplier (use with care)" msgstr "Multiplicateur de mémoire fantôme (à utiliser avec précaution)" -#: temp_for_locales.py:96 +#: temp_for_locales.py:99 msgid "Spanish" msgstr "Espanol" -#: temp_for_locales.py:97 +#: temp_for_locales.py:100 msgid "English" msgstr "Anglais" -#: temp_for_locales.py:98 +#: temp_for_locales.py:101 msgid "French" msgstr "Français" -#: temp_for_locales.py:99 +#: temp_for_locales.py:102 msgid "German" msgstr "Allemand" -#: temp_for_locales.py:100 +#: temp_for_locales.py:103 msgid "Portuguese" msgstr "Portugais" -#: temp_for_locales.py:101 +#: temp_for_locales.py:104 msgid "Italian" msgstr "Italien" -#: temp_for_locales.py:102 +#: temp_for_locales.py:105 msgid "Basque" msgstr "Basque" -#: temp_for_locales.py:103 +#: temp_for_locales.py:106 msgid "Arabic" msgstr "Arabe" -#: temp_for_locales.py:104 +#: temp_for_locales.py:107 msgid "Russian" msgstr "Russe" -#: temp_for_locales.py:105 +#: temp_for_locales.py:108 msgid "Catalan" msgstr "Catalan" -#: temp_for_locales.py:106 +#: temp_for_locales.py:109 msgid "Chinese" msgstr "Chinois" @@ -5698,7 +6089,7 @@ msgstr "Afficher le papier peint" #: transports/HTML5RDP/html5rdp.py:134 #: transports/HTML5RDS_enterprise/html5rds.py:123 -#: transports/RDP/rdp_base.py:222 +#: transports/RDP/rdp_base.py:241 msgid "" "If checked, the wallpaper and themes will be shown on machine (better user " "experience, more bandwidth)" @@ -5708,19 +6099,19 @@ msgstr "" #: transports/HTML5RDP/html5rdp.py:139 #: transports/HTML5RDS_enterprise/html5rds.py:128 -#: transports/RDP/rdp_base.py:235 +#: transports/RDP/rdp_base.py:254 msgid "Allow Desk.Comp." msgstr "Autoriser Desk.Comp." #: transports/HTML5RDP/html5rdp.py:141 #: transports/HTML5RDS_enterprise/html5rds.py:130 -#: transports/RDP/rdp_base.py:237 +#: transports/RDP/rdp_base.py:256 msgid "If checked, desktop composition will be allowed" msgstr "Si cochée, la composition du bureau sera autorisée" #: transports/HTML5RDP/html5rdp.py:145 #: transports/HTML5RDS_enterprise/html5rds.py:134 -#: transports/RDP/rdp_base.py:241 transports/RDS_enterprise/rds_base.py:150 +#: transports/RDP/rdp_base.py:260 transports/RDS_enterprise/rds_base.py:150 msgid "Font Smoothing" msgstr "Lissage des polices" @@ -5984,11 +6375,6 @@ msgstr "Forcer l'ouverture de chaque connexion dans une nouvelle fenêtre." msgid "Override UDS window and replace it with the connection." msgstr "Remplacez la fenêtre UDS et remplacez-la par la connexion." -#: transports/HTML5RDP/html5rdp.py:268 -#: transports/HTML5RDS_enterprise/html5rds.py:255 -msgid "Security" -msgstr "Sécurité" - #: transports/HTML5RDP/html5rdp.py:269 #: transports/HTML5RDS_enterprise/html5rds.py:256 msgid "Connection security mode for Guacamole RDP connection" @@ -6027,11 +6413,11 @@ msgstr "" msgid "TLS (Transport Security Layer encryption)" msgstr "TLS (chiffrement de la couche de sécurité de transport)" -#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:173 +#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:192 msgid "RDP Port" msgstr "Port RDP" -#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:174 +#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:193 msgid "Use this port as RDP port. Defaults to 3389." msgstr "Utilisez ce port comme port RDP. La valeur par défaut est 3389." @@ -6049,13 +6435,13 @@ msgstr "" "Chemin personnalisé pour le tunnel Glyptodon Enterprise. (Valable uniquement " "pour Glyptodon Enterprise Tunnel)" -#: transports/HTML5RDP/html5rdp.py:327 +#: transports/HTML5RDP/html5rdp.py:326 #: transports/HTML5RDS_enterprise/html5rds.py:296 #: transports/HTML5VNC/html5vnc.py:187 msgid "The server must be http or https" msgstr "Le serveur doit être http ou https" -#: transports/HTML5RDP/html5rdp.py:332 +#: transports/HTML5RDP/html5rdp.py:331 #: transports/HTML5RDS_enterprise/html5rds.py:301 msgid "" "Empty credentials (on Credentials tab) is only allowed with Security level " @@ -6097,7 +6483,7 @@ msgstr "Port du serveur VNC" msgid "Port of the VNC server." msgstr "Port du serveur VNC." -#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:205 +#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:224 #: transports/RDS_enterprise/rds_base.py:136 msgid "Color depth" msgstr "Profondeur de couleur" @@ -6153,12 +6539,12 @@ msgid "If checked, the connection will be opened in full screen mode" msgstr "Si coché, la connexion sera ouverte en mode plein écran" #: transports/NICEDCV_enterprise/nicedcv_base.py:66 -#: transports/RDP/rdp_base.py:227 +#: transports/RDP/rdp_base.py:246 msgid "Multiple monitors" msgstr "Plusieurs moniteurs" #: transports/NICEDCV_enterprise/nicedcv_base.py:69 -#: transports/RDP/rdp_base.py:230 +#: transports/RDP/rdp_base.py:249 msgid "" "If checked, all client monitors will be used for displaying (only works on " "windows clients)" @@ -6212,7 +6598,7 @@ msgstr "Si activé, le certificat du serveur tunnel sera vérifié (recommandé) #: transports/NICEDCV_enterprise/nicedcvtunnel.py:91 #: transports/NoMachine_enterprise/nomachine_tunneltransport.py:114 -#: transports/RDP/rdptunnel.py:135 transports/RDS_enterprise/rdstunnel.py:126 +#: transports/RDP/rdptunnel.py:136 transports/RDS_enterprise/rdstunnel.py:126 #: transports/SPICE/spice_tunnel.py:107 transports/X2GO/x2go_tunnel.py:116 msgid "Must use HOST:PORT in Tunnel Server Field" msgstr "Devez utiliser HOST : PORT dans le champ serveur Tunnel" @@ -6351,90 +6737,98 @@ msgstr "Activer la webcam" msgid "If checked, webcam will be redirected (ONLY Windows)." msgstr "Si coché, la webcam sera redirigée (UNIQUEMENT Windows)." -#: transports/RDP/rdp_base.py:164 transports/RDS_enterprise/rds_base.py:128 +#: transports/RDP/rdp_base.py:164 +msgid "USB redirection" +msgstr "Redirection USB" + +#: transports/RDP/rdp_base.py:166 +msgid "USB redirection policy" +msgstr "Politique de redirection USB" + +#: transports/RDP/rdp_base.py:183 transports/RDS_enterprise/rds_base.py:128 msgid "Credssp Support" msgstr "Support CredSSP " -#: transports/RDP/rdp_base.py:166 transports/RDS_enterprise/rds_base.py:130 +#: transports/RDP/rdp_base.py:185 transports/RDS_enterprise/rds_base.py:130 msgid "If checked, will enable Credentials Provider Support)" msgstr "" "Si coché, activera le support du fournisseur d'informations d'identification)" -#: transports/RDP/rdp_base.py:181 +#: transports/RDP/rdp_base.py:200 msgid "Screen Size" msgstr "Taille de l'écran" -#: transports/RDP/rdp_base.py:183 +#: transports/RDP/rdp_base.py:202 msgid "Screen size for this transport" msgstr "Taille de l’écran pour ce type de transport" -#: transports/RDP/rdp_base.py:207 transports/RDS_enterprise/rds_base.py:138 +#: transports/RDP/rdp_base.py:226 transports/RDS_enterprise/rds_base.py:138 msgid "Color depth for this connection" msgstr "Profondeur de couleur pour cette connexion" -#: transports/RDP/rdp_base.py:219 +#: transports/RDP/rdp_base.py:238 msgid "Wallpaper/theme" msgstr "Thème/fond d’écran" -#: transports/RDP/rdp_base.py:244 +#: transports/RDP/rdp_base.py:263 msgid "If checked, fonts smoothing will be allowed" msgstr "Si coché, le lissage de polices pourront" -#: transports/RDP/rdp_base.py:248 +#: transports/RDP/rdp_base.py:267 msgid "Connection Bar" msgstr "Barre de connexion" -#: transports/RDP/rdp_base.py:250 +#: transports/RDP/rdp_base.py:269 msgid "If checked, connection bar will be shown (only on Windows clients)" msgstr "" "Si cochée, barre de connexion s’affichera (uniquement sur les clients " "Windows)" -#: transports/RDP/rdp_base.py:256 transports/RDS_enterprise/rds_base.py:181 +#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:181 msgid "Multimedia sync" msgstr "Sync Multimédia " -#: transports/RDP/rdp_base.py:259 transports/RDS_enterprise/rds_base.py:184 +#: transports/RDP/rdp_base.py:278 transports/RDS_enterprise/rds_base.py:184 msgid "If checked. Linux client will use multimedia parameter for xfreerdp" msgstr "" "S’il est activé. Client Linux utilisera le paramètre multimédia pour xfreerdp" -#: transports/RDP/rdp_base.py:264 transports/RDS_enterprise/rds_base.py:189 +#: transports/RDP/rdp_base.py:283 transports/RDS_enterprise/rds_base.py:189 msgid "Use Alsa" msgstr "Utiliser Alsa" -#: transports/RDP/rdp_base.py:267 transports/RDS_enterprise/rds_base.py:192 +#: transports/RDP/rdp_base.py:286 transports/RDS_enterprise/rds_base.py:192 msgid "" "If checked, Linux client will try to use ALSA, otherwise Pulse will be used" msgstr "" "Si coché, le client Linux essayera d'utiliser ALSA, sinon, Pulse sera utilisé" -#: transports/RDP/rdp_base.py:272 transports/RDS_enterprise/rds_base.py:197 +#: transports/RDP/rdp_base.py:291 transports/RDS_enterprise/rds_base.py:197 msgid "Printer string" msgstr "Chaîne de l’imprimante" -#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:200 +#: transports/RDP/rdp_base.py:294 transports/RDS_enterprise/rds_base.py:200 msgid "If printer is checked, the printer string used with xfreerdp client" msgstr "" "Si l’imprimante est activée, la chaîne de l’imprimante sera utilisée avec " "xfreerdp client" -#: transports/RDP/rdp_base.py:281 transports/RDS_enterprise/rds_base.py:206 +#: transports/RDP/rdp_base.py:300 transports/RDS_enterprise/rds_base.py:206 msgid "Smartcard string" msgstr "Chaîne de carte à puce" -#: transports/RDP/rdp_base.py:284 transports/RDS_enterprise/rds_base.py:209 +#: transports/RDP/rdp_base.py:303 transports/RDS_enterprise/rds_base.py:209 msgid "If smartcard is checked, the smartcard string used with xfreerdp client" msgstr "" "Si la carte à puce est cochée, la chaîne de carte à puce serautilisée avec " "xfreerdp client" -#: transports/RDP/rdp_base.py:290 transports/RDP/rdp_base.py:310 +#: transports/RDP/rdp_base.py:309 transports/RDP/rdp_base.py:329 #: transports/RDS_enterprise/rds_base.py:215 msgid "Custom parameters" msgstr "Paramètres personnalisés" -#: transports/RDP/rdp_base.py:293 transports/RDS_enterprise/rds_base.py:218 +#: transports/RDP/rdp_base.py:312 transports/RDS_enterprise/rds_base.py:218 msgid "" "If not empty, extra parameter to include for Linux Client (for example /usb:" "id,dev:054c:0268, or aything compatible with your xfreerdp client)" @@ -6443,11 +6837,11 @@ msgstr "" "exemple / usb: id, dev: 054c: 0268, ou quoi que ce soit compatible avec " "votre client xfreerdp)" -#: transports/RDP/rdp_base.py:300 +#: transports/RDP/rdp_base.py:319 msgid "Allow Microsoft Rdp Client" msgstr "Autoriser le client Microsoft Rdp" -#: transports/RDP/rdp_base.py:303 +#: transports/RDP/rdp_base.py:322 msgid "" "If checked, allows use of Microsoft Remote Desktop Client. PASSWORD WILL BE " "PROMPTED!" @@ -6455,7 +6849,7 @@ msgstr "" "Si coché, permet l'utilisation de Microsoft Remote Desktop Client. LE " "MOT DE PASSE SERA INVITÉ !" -#: transports/RDP/rdp_base.py:313 +#: transports/RDP/rdp_base.py:332 msgid "" "If not empty, extra parameter to include for Mac OS X Freerdp Client (for " "example /usb:id,dev:054c:0268, or aything compatible with your xfreerdp " @@ -6708,72 +7102,72 @@ msgstr "" msgid "Access tried from an unallowed source" msgstr "Accès tenté à partir d'une source non autorisée" -#: web/util/authentication.py:155 +#: web/util/authentication.py:158 msgid "Invalid data" msgstr "Données invalides" -#: web/util/configjs.py:170 +#: web/util/configjs.py:163 msgid "Access limited by calendar" msgstr "Accès limité par calendrier" -#: web/util/configjs.py:226 +#: web/util/configjs.py:222 msgid "Windows client" msgstr "Client Windows" -#: web/util/configjs.py:230 +#: web/util/configjs.py:226 msgid "Mac OS X client" msgstr "Client Mac OS X" -#: web/util/configjs.py:233 +#: web/util/configjs.py:229 msgid "Debian based Linux client" msgstr "Client Linux basé sur Debian" -#: web/util/configjs.py:235 web/util/configjs.py:243 web/util/configjs.py:263 +#: web/util/configjs.py:231 web/util/configjs.py:239 web/util/configjs.py:259 msgid "(requires Python-3.6 or newer)" msgstr "(nécessite Python-3.6 ou plus récent)" -#: web/util/configjs.py:241 +#: web/util/configjs.py:237 msgid "RPM based Linux client (Fedora, Suse, ...)" msgstr "Client Linux basé sur RPM (Fedora, Suse, ...)" -#: web/util/configjs.py:249 +#: web/util/configjs.py:245 msgid "Binary appimage X86_64 Linux client" msgstr "Client Linux appimage binaire X86_64" -#: web/util/configjs.py:255 +#: web/util/configjs.py:251 msgid "Binary appimage Raspberry Linux client" msgstr "Image d'application binaire Client Linux Raspberry" -#: web/util/configjs.py:261 +#: web/util/configjs.py:257 msgid "Generic .tar.gz Linux client" msgstr "Client Linux générique .tar.gz" -#: web/util/errors.py:76 +#: web/util/errors.py:78 msgid "Unknown error" msgstr "Erreur inconnue" -#: web/util/errors.py:83 +#: web/util/errors.py:85 msgid "Maximum services limit reached. Please, contact administrator" msgstr "" "Limite de services maximale atteinte. Veuillez contacter administrateur" -#: web/util/errors.py:84 +#: web/util/errors.py:86 msgid "You need to enable cookies to let this application work" msgstr "Vous devez activer les cookies pour autoriser cette application" -#: web/util/errors.py:86 +#: web/util/errors.py:88 msgid "Authenticator not found" msgstr "Authentificateur introuvable" -#: web/util/errors.py:87 +#: web/util/errors.py:89 msgid "Invalid authenticator" msgstr "Authentificateur non valide" -#: web/util/errors.py:88 +#: web/util/errors.py:90 msgid "Invalid request received" msgstr "Requête non valide reçu" -#: web/util/errors.py:90 +#: web/util/errors.py:92 msgid "" "Your browser is not supported. Please, upgrade it to a modern HTML5 browser " "like Firefox or Chrome" @@ -6781,11 +7175,11 @@ msgstr "" "Ton navigateur n'est pas supporté. S'il vous plaît, mettez à jour vers un " "navigateur HTML5 moderne comme Firefox ou Chrome" -#: web/util/errors.py:92 +#: web/util/errors.py:94 msgid "The requested service is in maintenance mode" msgstr "Le service demandé est en mode maintenance" -#: web/util/errors.py:93 +#: web/util/errors.py:95 msgid "" "The service is not ready.\n" "Please, try again in a few moments." @@ -6793,29 +7187,33 @@ msgstr "" "Le service n'est pas prêt.\n" "Veuillez réessayer dans quelques instants." -#: web/util/errors.py:94 +#: web/util/errors.py:96 msgid "Preparing service" msgstr "Préparation du service" -#: web/util/errors.py:95 +#: web/util/errors.py:97 msgid "Service access denied by calendars" msgstr "Accès au service refusé par les agendas" -#: web/util/errors.py:96 +#: web/util/errors.py:98 msgid "Page not found" msgstr "Page non trouvée" -#: web/util/errors.py:97 +#: web/util/errors.py:99 msgid "Unexpected error" msgstr "Erreur inattendue" -#: web/util/errors.py:98 +#: web/util/errors.py:100 msgid "" "Reloading this page is not supported. Please, reopen service from origin." msgstr "" "Le rechargement de cette page n'est pas pris en charge. S'il vous " "plaît, rouvrez le service d'origine." +#: web/util/errors.py:101 +msgid "Invalid Multi-Factor Authentication code" +msgstr "Code d'authentification multifacteur invalide" + #: web/util/services.py:319 msgid "" "This service is about to be replaced by a new version. Please, close the " @@ -6838,6 +7236,14 @@ msgstr "" "Votre service est en cours de création, veuillez patienter quelques secondes " "pendant que nous le terminons.)" -#: web/views/auth.py:177 +#: web/views/auth.py:189 msgid "Authenticator does not provide information" msgstr "Authentificateur ne fournit pas d'informations" + +#: web/views/modern.py:269 +msgid "{} days" +msgstr "{} journées" + +#: web/views/modern.py:271 +msgid "{} hours" +msgstr "{} heures" diff --git a/server/src/uds/locale/fr/LC_MESSAGES/djangojs.po b/server/src/uds/locale/fr/LC_MESSAGES/djangojs.po index 793a4b49..1c974718 100644 --- a/server/src/uds/locale/fr/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/fr/LC_MESSAGES/djangojs.po @@ -11,16 +11,17 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-10 13:33+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:16+0000\n" +"Last-Translator: Víctor Alonso , 2020\n" "Language-Team: French (http://www.transifex.com/openuds/openuds/language/" "fr/)\n" "Language: fr\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" +"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % " +"1000000 == 0 ? 1 : 2;\n" #: static/admin/main.js:1 static/admin/translations-fakejs.js:23 #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:12 @@ -33,14 +34,14 @@ msgstr "Principal" #: static/admin/main.js:1 static/admin/translations-fakejs.js:11 #: static/admin/translations-fakejs.js:29 -#: static/admin/translations-fakejs.js:179 -#: static/admin/translations-fakejs.js:191 -#: static/admin/translations-fakejs.js:193 -#: static/admin/translations-fakejs.js:195 -#: static/admin/translations-fakejs.js:197 -#: static/admin/translations-fakejs.js:254 -#: static/admin/translations-fakejs.js:256 -#: static/admin/translations-fakejs.js:258 static/modern/main-es5.js:1 +#: static/admin/translations-fakejs.js:141 +#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:216 +#: static/admin/translations-fakejs.js:218 +#: static/admin/translations-fakejs.js:220 static/modern/main-es5.js:1 #: static/modern/translations-fakejs.js:14 msgid "Error" msgstr "Erreur" @@ -67,12 +68,12 @@ msgstr "Chargement des données..." #: static/admin/translations-fakejs.js:38 #: static/admin/translations-fakejs.js:40 #: static/admin/translations-fakejs.js:43 -#: static/admin/translations-fakejs.js:134 -#: static/admin/translations-fakejs.js:216 -#: static/admin/translations-fakejs.js:221 -#: static/admin/translations-fakejs.js:253 -#: static/admin/translations-fakejs.js:261 -#: static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:96 +#: static/admin/translations-fakejs.js:178 +#: static/admin/translations-fakejs.js:183 +#: static/admin/translations-fakejs.js:215 +#: static/admin/translations-fakejs.js:223 +#: static/admin/translations-fakejs.js:228 msgid "dismiss" msgstr "rejeter" @@ -89,7 +90,7 @@ msgid "Test passed successfully" msgstr "Test passé avec succès" #: static/admin/main.js:1 static/admin/translations-fakejs.js:37 -#: static/admin/translations-fakejs.js:260 +#: static/admin/translations-fakejs.js:222 msgid "Successfully saved" msgstr "Enregistré avec succès" @@ -145,58 +146,58 @@ msgstr "groupe de piscine" msgid "Go to" msgstr "Aller à" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:275 msgid "yes" msgstr "Oui" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:276 msgid "no" msgstr "non" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:269 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 msgid "Error saving: " msgstr "Erreur d'enregistrement:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:270 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 msgid "Error saving element" msgstr "Erreur lors de l'enregistrement de l'élément" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:271 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:274 msgid "Error handling your request" msgstr "Erreur lors du traitement de votre demande" #: static/admin/main.js:1 static/admin/translations-fakejs.js:56 -#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:115 msgid "Sunday" msgstr "Dimanche" #: static/admin/main.js:1 static/admin/translations-fakejs.js:57 -#: static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:116 msgid "Monday" msgstr "Lundi" #: static/admin/main.js:1 static/admin/translations-fakejs.js:58 -#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:117 msgid "Tuesday" msgstr "Mardi" #: static/admin/main.js:1 static/admin/translations-fakejs.js:59 -#: static/admin/translations-fakejs.js:156 +#: static/admin/translations-fakejs.js:118 msgid "Wednesday" msgstr "Mercredi" #: static/admin/main.js:1 static/admin/translations-fakejs.js:60 -#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:119 msgid "Thursday" msgstr "Jeudi" #: static/admin/main.js:1 static/admin/translations-fakejs.js:61 -#: static/admin/translations-fakejs.js:158 +#: static/admin/translations-fakejs.js:120 msgid "Friday" msgstr "Vendredi" #: static/admin/main.js:1 static/admin/translations-fakejs.js:62 -#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:121 msgid "Saturday" msgstr "Samedi" @@ -268,20 +269,20 @@ msgstr "#SERVICES_NUMBER# services utilisateurs" msgid "#RESTRAINED_NUMBER# restrained services!" msgstr "#RESTRAINED_NUMBER# services restreints!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 -#: static/admin/translations-fakejs.js:249 -#: static/admin/translations-fakejs.js:402 -#: static/admin/translations-fakejs.js:454 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:211 +#: static/admin/translations-fakejs.js:265 +#: static/admin/translations-fakejs.js:366 +#: static/admin/translations-fakejs.js:418 msgid "Assigned services" msgstr "Services assignés" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 msgid "Services in use" msgstr "Services en cours d'utilisation" #: static/admin/main.js:1 static/admin/translations-fakejs.js:21 -#: static/admin/translations-fakejs.js:292 -#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:303 #: static/modern/translations-fakejs.js:30 msgid "Filter" msgstr "Filtre" @@ -299,25 +300,25 @@ msgid "Full Access" msgstr "Accès total" #: static/admin/main.js:1 static/admin/translations-fakejs.js:15 -#: static/admin/translations-fakejs.js:362 -#: static/admin/translations-fakejs.js:409 -#: static/admin/translations-fakejs.js:414 +#: static/admin/translations-fakejs.js:373 +#: static/admin/translations-fakejs.js:378 +#: static/admin/translations-fakejs.js:489 msgid "User" msgstr "Utilisateur" #: static/admin/main.js:1 static/admin/translations-fakejs.js:16 -#: static/admin/translations-fakejs.js:83 -#: static/admin/translations-fakejs.js:93 -#: static/admin/translations-fakejs.js:427 -#: static/admin/translations-fakejs.js:448 +#: static/admin/translations-fakejs.js:243 +#: static/admin/translations-fakejs.js:253 +#: static/admin/translations-fakejs.js:391 +#: static/admin/translations-fakejs.js:412 msgid "Group" msgstr "Groupe" #: static/admin/main.js:1 static/admin/translations-fakejs.js:17 -#: static/admin/translations-fakejs.js:408 -#: static/admin/translations-fakejs.js:413 -#: static/admin/translations-fakejs.js:426 -#: static/admin/translations-fakejs.js:447 +#: static/admin/translations-fakejs.js:372 +#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:390 +#: static/admin/translations-fakejs.js:411 #: static/modern/translations-fakejs.js:72 msgid "Authenticator" msgstr "Authentificateur" @@ -334,89 +335,89 @@ msgstr "Retirer" msgid "Confirm revokation of permission" msgstr "Confirmer la révocation de l'autorisation" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:238 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 msgid "Maintenance" msgstr "Maintenance" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 msgid "Exit maintenance mode" msgstr "Quitter le mode maintenance" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 msgid "Enter maintenance mode" msgstr "Entrer en mode maintenance" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 msgid "New provider" msgstr "Nouveau fournisseur" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 msgid "Edit provider" msgstr "Modifier le fournisseur" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:243 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 msgid "Delete provider" msgstr "Supprimer le fournisseur" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 msgid "Exit maintenance mode?" msgstr "Quitter le mode maintenance?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 msgid "Enter maintenance mode?" msgstr "Entrer en mode maintenance?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 msgid "Maintenance mode for" msgstr "Mode maintenance pour" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 -#: static/admin/translations-fakejs.js:247 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:209 +#: static/admin/translations-fakejs.js:232 msgid "In Maintenance" msgstr "en maintenance" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 -#: static/admin/translations-fakejs.js:248 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/translations-fakejs.js:233 msgid "Active" msgstr "Actif" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 -#: static/admin/translations-fakejs.js:95 -#: static/admin/translations-fakejs.js:229 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:191 +#: static/admin/translations-fakejs.js:236 +#: static/admin/translations-fakejs.js:255 msgid "Pool" msgstr "bassin" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 -#: static/admin/translations-fakejs.js:96 -#: static/admin/translations-fakejs.js:230 -#: static/admin/translations-fakejs.js:343 -#: static/admin/translations-fakejs.js:355 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 +#: static/admin/translations-fakejs.js:237 +#: static/admin/translations-fakejs.js:256 +#: static/admin/translations-fakejs.js:470 +#: static/admin/translations-fakejs.js:482 msgid "State" msgstr "Etat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 -#: static/admin/translations-fakejs.js:97 -#: static/admin/translations-fakejs.js:231 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:193 +#: static/admin/translations-fakejs.js:238 +#: static/admin/translations-fakejs.js:257 msgid "User Services" msgstr "Services utilisateur" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 -#: static/admin/translations-fakejs.js:232 -#: static/admin/translations-fakejs.js:321 -#: static/admin/translations-fakejs.js:401 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:194 +#: static/admin/translations-fakejs.js:248 +#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:365 msgid "Service pools" msgstr "Piscines de service" #: static/admin/main.js:1 static/admin/translations-fakejs.js:3 #: static/admin/translations-fakejs.js:7 -#: static/admin/translations-fakejs.js:308 +#: static/admin/translations-fakejs.js:311 #: static/modern/translations-fakejs.js:44 msgid "Yes" msgstr "Oui" #: static/admin/main.js:1 static/admin/translations-fakejs.js:4 #: static/admin/translations-fakejs.js:8 -#: static/admin/translations-fakejs.js:309 +#: static/admin/translations-fakejs.js:312 #: static/modern/translations-fakejs.js:45 msgid "No" msgstr "Non" @@ -429,596 +430,599 @@ msgstr "(caché)" msgid "Selected items :" msgstr "Articles sélectionnés:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 -#: static/admin/translations-fakejs.js:233 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:195 +#: static/admin/translations-fakejs.js:231 #: static/modern/translations-fakejs.js:35 msgid "Information" msgstr "Informations" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 msgid "New service" msgstr "Nouveau service" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:197 msgid "Edit service" msgstr "Modifier le service" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:236 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 msgid "Delete service" msgstr "Supprimer le service" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:237 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 msgid "Delete user service" msgstr "Supprimer le service de l’utilisateur" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:269 msgid "New Authenticator" msgstr "Nouvel authentificateur" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:267 +#: static/admin/translations-fakejs.js:270 msgid "Edit Authenticator" msgstr "Edit Authenticator" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/translations-fakejs.js:271 msgid "Delete Authenticator" msgstr "Supprimer l'authentificateur" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 msgid "Any" msgstr "Tout" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 msgid "All" msgstr "Tout" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 -#: static/admin/translations-fakejs.js:94 -#: static/admin/translations-fakejs.js:342 -#: static/admin/translations-fakejs.js:354 -#: static/admin/translations-fakejs.js:379 -#: static/admin/translations-fakejs.js:435 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/translations-fakejs.js:254 +#: static/admin/translations-fakejs.js:343 +#: static/admin/translations-fakejs.js:399 +#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:481 msgid "Comments" msgstr "commentaires" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:258 msgid "Unique ID" msgstr "Identifiant unique" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 msgid "Friendly Name" msgstr "Nom familier" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:260 msgid "In Use" msgstr "Utilisé" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:261 msgid "IP" msgstr "IP" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 msgid "Services Pool" msgstr "Piscine de services" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 -#: static/admin/translations-fakejs.js:103 -#: static/admin/translations-fakejs.js:287 -#: static/admin/translations-fakejs.js:323 -#: static/admin/translations-fakejs.js:337 -#: static/admin/translations-fakejs.js:363 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/translations-fakejs.js:263 +#: static/admin/translations-fakejs.js:290 +#: static/admin/translations-fakejs.js:328 #: static/admin/translations-fakejs.js:367 -#: static/admin/translations-fakejs.js:373 -#: static/admin/translations-fakejs.js:403 -#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:494 msgid "Groups" msgstr "Groupes" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 -#: static/admin/translations-fakejs.js:335 -#: static/admin/translations-fakejs.js:368 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/translations-fakejs.js:462 +#: static/admin/translations-fakejs.js:495 msgid "Services Pools" msgstr "Services Piscines" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 -#: static/admin/translations-fakejs.js:378 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/translations-fakejs.js:342 msgid "Name" msgstr "prénom" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 msgid "Real Name" msgstr "Vrai nom" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 msgid "state" msgstr "Etat" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 msgid "Last access" msgstr "Dernier accès" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 -#: static/admin/translations-fakejs.js:286 -#: static/admin/translations-fakejs.js:336 -#: static/admin/translations-fakejs.js:372 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:249 +#: static/admin/translations-fakejs.js:289 +#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:463 msgid "Users" msgstr "Utilisateurs" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 -#: static/admin/translations-fakejs.js:344 -#: static/admin/translations-fakejs.js:356 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:483 msgid "Enabled" msgstr "Activée" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 -#: static/admin/translations-fakejs.js:345 -#: static/admin/translations-fakejs.js:357 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:484 msgid "Disabled" msgstr "désactivé" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 -#: static/admin/translations-fakejs.js:358 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:247 +#: static/admin/translations-fakejs.js:485 msgid "Blocked" msgstr "Bloqué" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 msgid "Delete user" msgstr "Supprimer l'utilisateur" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 msgid "Delete group" msgstr "Supprimer le groupe" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 msgid "New OS Manager" msgstr "Nouveau gestionnaire de système d'exploitation" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 msgid "Edit OS Manager" msgstr "Modifier le gestionnaire du système d'exploitation" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 msgid "Delete OS Manager" msgstr "Supprimer OS Manager" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:120 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 msgid "New Transport" msgstr "Nouveau transport" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:121 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:83 msgid "Edit Transport" msgstr "Modifier le transport" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 msgid "Delete Transport" msgstr "Supprimer le transport" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 msgid "New Network" msgstr "Nouveau réseau" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:115 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 msgid "Edit Network" msgstr "Editer le réseau" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:116 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 msgid "Delete Network" msgstr "Supprimer le réseau" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:117 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 msgid "New Proxy" msgstr "Nouveau proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:118 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 msgid "Edit Proxy" msgstr "Modifier le proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:119 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 msgid "Delete Proxy" msgstr "Supprimer le proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:223 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 msgid "(This service does not requires an OS Manager)" msgstr "" "(Ce service ne nécessite pas de gestionnaire de système d'exploitation)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 msgid "New service Pool" msgstr "Nouveau service piscine" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 msgid "Publish on creation" msgstr "Publier sur la création" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 msgid "If selected, will initiate the publication inmediatly after creation" msgstr "Si sélectionné, lancera la publication immédiatement après création" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 msgid "Edit Service Pool" msgstr "Modifier le pool de services" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:228 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 msgid "Delete service pool" msgstr "Supprimer le pool de services" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 -#: static/admin/translations-fakejs.js:194 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:156 msgid "Please, select a valid user" msgstr "S'il vous plaît, sélectionnez un utilisateur valide" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:158 msgid "Please, select a valid group" msgstr "S'il vous plaît, sélectionnez un groupe valide" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 msgid "Please, select a valid transport" msgstr "S'il vous plaît, sélectionnez un transport valide" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 msgid "Assigned" msgstr "Attribué" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 msgid "Cached" msgstr "En cache" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 msgid "In use" msgstr "Utilisé" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 -#: static/admin/translations-fakejs.js:290 -#: static/admin/translations-fakejs.js:374 -#: static/admin/translations-fakejs.js:405 -#: static/admin/translations-fakejs.js:462 -#: static/admin/translations-fakejs.js:465 -#: static/admin/translations-fakejs.js:470 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/translations-fakejs.js:293 +#: static/admin/translations-fakejs.js:369 +#: static/admin/translations-fakejs.js:426 +#: static/admin/translations-fakejs.js:429 +#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:460 msgid "Logs" msgstr "Registres" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 msgid "VNC" msgstr "VNC" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 msgid "Launch now" msgstr "Lancer maintenant" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 msgid "Change owner" msgstr "Changer de propriétaire" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 msgid "Assign service" msgstr "Attribuer un service" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 -#: static/admin/translations-fakejs.js:277 -#: static/admin/translations-fakejs.js:283 -#: static/admin/translations-fakejs.js:349 -#: static/admin/translations-fakejs.js:364 -#: static/admin/translations-fakejs.js:390 -#: static/admin/translations-fakejs.js:398 -#: static/admin/translations-fakejs.js:410 -#: static/admin/translations-fakejs.js:415 -#: static/admin/translations-fakejs.js:423 -#: static/admin/translations-fakejs.js:428 -#: static/admin/translations-fakejs.js:432 -#: static/admin/translations-fakejs.js:436 -#: static/admin/translations-fakejs.js:449 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/translations-fakejs.js:280 +#: static/admin/translations-fakejs.js:286 +#: static/admin/translations-fakejs.js:354 +#: static/admin/translations-fakejs.js:362 +#: static/admin/translations-fakejs.js:374 +#: static/admin/translations-fakejs.js:379 +#: static/admin/translations-fakejs.js:387 +#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:400 +#: static/admin/translations-fakejs.js:413 +#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:476 #: static/admin/translations-fakejs.js:491 msgid "Cancel" msgstr "Annuler" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 msgid "Changelog" msgstr "Changelog" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 -#: static/admin/translations-fakejs.js:209 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/translations-fakejs.js:171 msgid "Delete assigned service" msgstr "Supprimer le service attribué" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 msgid "Delete cached service" msgstr "Supprimer le service en cache" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:183 -#: static/admin/translations-fakejs.js:211 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/translations-fakejs.js:173 msgid "Delete assigned group" msgstr "Supprimer le groupe attribué" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 msgid "Delete assigned transport" msgstr "Supprimer le transport affecté" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 msgid "Publication" msgstr "Publication" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 msgid "Cancel publication?" msgstr "Annuler la publication ?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:215 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 msgid "Publication canceled" msgstr "Publication annulée" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:179 msgid "Delete scheduled action" msgstr "Supprimer l'action programmée" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:218 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 msgid "Execute scheduled action" msgstr "Exécuter une action planifiée" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 msgid "Execute scheduled action right now?" msgstr "Exécuter l'action prévue maintenant?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:220 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 msgid "Scheduled action executed" msgstr "Action programmée exécutée" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:184 -#: static/admin/translations-fakejs.js:222 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/translations-fakejs.js:184 msgid "Delete calendar access rule" msgstr "Supprimer la règle d'accès au calendrier" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 msgid "New meta pool" msgstr "Nouveau méta pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 msgid "Edit meta pool" msgstr "Editer le méta pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 msgid "Delete meta pool" msgstr "Supprimer le méta-pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 msgid "Please, select a valid service pool" msgstr "Veuillez sélectionner un pool de services valide." -#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 msgid "Remove member pool" msgstr "Supprimer le pool de membres" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 msgid "New pool group" msgstr "Nouveau groupe de piscines" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 msgid "Edit pool group" msgstr "Modifier le groupe de piscines" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 msgid "Delete pool group" msgstr "Supprimer le groupe de piscines" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 msgid "New calendar" msgstr "Nouveau calendrier" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 msgid "Edit calendar" msgstr "Modifier le calendrier" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:178 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 msgid "Delete calendar" msgstr "Supprimer le calendrier" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 msgid "day" msgstr "Journée" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 msgid "days" msgstr "jours" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 msgid "Daily" msgstr "Tous les jours" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 msgid "week" msgstr "semaine" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 msgid "weeks" msgstr "semaines" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:141 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:103 msgid "Weekly" msgstr "Hebdomadaire" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 msgid "month" msgstr "mois" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 msgid "months" msgstr "mois" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 msgid "Monthly" msgstr "Mensuel" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 msgid "year" msgstr "année" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 msgid "years" msgstr "années" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 msgid "Yearly" msgstr "annuel" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 -#: static/admin/translations-fakejs.js:387 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/translations-fakejs.js:351 msgid "Weekdays" msgstr "Lundi au vendredi" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 msgid "Minutes" msgstr "Minutes" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 msgid "Hours" msgstr "Heures" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 msgid "Days" msgstr "Jours" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 msgid "Weeks" msgstr "Semaines" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 msgid "(no days)" msgstr "(pas de jours)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 msgid "Forever" msgstr "Pour toujours" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 msgid "Start date/time" msgstr "Date / heure de début" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 msgid "End date" msgstr "Date de fin" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 msgid "Interval" msgstr "Intervalle" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 msgid "Week days" msgstr "Jours de la semaine" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 msgid "Invalid or incomplete rule. Please, fix field $FIELD" msgstr "Règle invalide ou incomplète. Veuillez fixer le champ $ FIELD" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 msgid "This rule will be valid every" msgstr "Cette règle sera valable tous les" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 msgid "of any week" msgstr "de n'importe quelle semaine" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 msgid "from" msgstr "De" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 msgid "until" msgstr "jusqu'à ce que" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:171 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 msgid "onwards" msgstr "en avant" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:134 msgid "starting at" msgstr "a partir" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:173 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 msgid "and every event will be active for" msgstr "et chaque événement sera actif pour" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 msgid "with no duration" msgstr "avec aucune durée" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 msgid "Delete calendar rule" msgstr "Supprimer la règle d'agenda" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 msgid "Set time mark" msgstr "Définir la marque de temps" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 msgid "New account" msgstr "Nouveau compte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 msgid "Edit account" msgstr "Modifier le compte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 msgid "Delete account" msgstr "Supprimer le compte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:93 msgid "Time mark" msgstr "Marque de temps" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:94 msgid "Set time mark for $NAME to current date/time?" msgstr "Définir la marque de temps pour $ NAME à la date / heure actuelle?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:95 msgid "Time mark stablished" msgstr "Marque de temps établie" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:97 msgid "No time mark" msgstr "Pas de marque de temps" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 msgid "Delete account usage" msgstr "Supprimer l'utilisation du compte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:255 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 msgid "Image is too big (max. upload size is 256Kb)" msgstr "L'image est trop grande (taille de téléchargement max. est de 256Kb)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:257 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 msgid "Invalid image type (only supports JPEG, PNG and GIF" msgstr "" "Type d'image non valide (supporte uniquement les formats JPEG, PNG et " "GIF)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:221 msgid "Please, provide a name and a image" msgstr "Merci de donner un nom et une image" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 msgid "Delete image" msgstr "Supprimer l'image" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:263 -#: static/admin/translations-fakejs.js:267 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/translations-fakejs.js:229 msgid "Generate report" msgstr "Générer le rapport" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 msgid "Generating report..." msgstr "Générer un rapport ..." -#: static/admin/main.js:1 static/admin/translations-fakejs.js:265 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 msgid "Report finished" msgstr "Rapport terminé" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 msgid "Configuration saved" msgstr "Configuration sauvegardée" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 msgid "Delete actor token - USE WITH EXTREME CAUTION!!!" msgstr "" "Supprimer le jeton d'acteur - UTILISER AVEC UNE ATTENTION EXTRÊME !!!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:230 msgid "Delete tunnel token - USE WITH EXTREME CAUTION!!!" msgstr "" "Supprimer le jeton de tunnel - À UTILISER AVEC UNE EXTRÊME PRÉCAUTION !!!" @@ -1035,470 +1039,426 @@ msgstr "objets par page" msgid ", (%i more items)" msgstr ", (% i plus d'articles)" -#: static/admin/translations-fakejs.js:275 +#: static/admin/translations-fakejs.js:278 msgid "Remove all" msgstr "Enlever tout" -#: static/admin/translations-fakejs.js:276 +#: static/admin/translations-fakejs.js:279 msgid "Add" msgstr "Ajouter" -#: static/admin/translations-fakejs.js:278 -#: static/admin/translations-fakejs.js:284 -#: static/admin/translations-fakejs.js:289 -#: static/admin/translations-fakejs.js:338 -#: static/admin/translations-fakejs.js:350 -#: static/admin/translations-fakejs.js:365 -#: static/admin/translations-fakejs.js:370 -#: static/admin/translations-fakejs.js:391 -#: static/admin/translations-fakejs.js:399 -#: static/admin/translations-fakejs.js:411 +#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:287 +#: static/admin/translations-fakejs.js:292 +#: static/admin/translations-fakejs.js:355 +#: static/admin/translations-fakejs.js:363 +#: static/admin/translations-fakejs.js:375 +#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:401 +#: static/admin/translations-fakejs.js:403 +#: static/admin/translations-fakejs.js:414 #: static/admin/translations-fakejs.js:416 -#: static/admin/translations-fakejs.js:424 -#: static/admin/translations-fakejs.js:429 -#: static/admin/translations-fakejs.js:433 -#: static/admin/translations-fakejs.js:437 -#: static/admin/translations-fakejs.js:439 -#: static/admin/translations-fakejs.js:450 -#: static/admin/translations-fakejs.js:452 -#: static/admin/translations-fakejs.js:466 +#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:465 +#: static/admin/translations-fakejs.js:477 #: static/admin/translations-fakejs.js:492 +#: static/admin/translations-fakejs.js:497 msgid "Ok" msgstr "D'accord" -#: static/admin/translations-fakejs.js:279 +#: static/admin/translations-fakejs.js:282 msgid "Discard & close" msgstr "Jeter et fermer" -#: static/admin/translations-fakejs.js:280 -#: static/admin/translations-fakejs.js:484 +#: static/admin/translations-fakejs.js:283 +#: static/admin/translations-fakejs.js:448 msgid "Save" msgstr "Enregistrer" -#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:284 msgid "New user permission for" msgstr "Nouvelle autorisation utilisateur pour" -#: static/admin/translations-fakejs.js:282 +#: static/admin/translations-fakejs.js:285 msgid "New group permission for" msgstr "Nouvelle autorisation de groupe pour" -#: static/admin/translations-fakejs.js:285 +#: static/admin/translations-fakejs.js:288 msgid "Permissions for" msgstr "Autorisations pour" -#: static/admin/translations-fakejs.js:288 +#: static/admin/translations-fakejs.js:291 msgid "New permission..." msgstr "Nouvelle permission ..." -#: static/admin/translations-fakejs.js:291 -#: static/admin/translations-fakejs.js:298 +#: static/admin/translations-fakejs.js:294 +#: static/admin/translations-fakejs.js:301 msgid "Export" msgstr "Exportation" -#: static/admin/translations-fakejs.js:293 -#: static/admin/translations-fakejs.js:294 -#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:296 +#: static/admin/translations-fakejs.js:297 +#: static/admin/translations-fakejs.js:298 msgid "New" msgstr "Nouveau" -#: static/admin/translations-fakejs.js:296 -#: static/admin/translations-fakejs.js:304 +#: static/admin/translations-fakejs.js:299 +#: static/admin/translations-fakejs.js:307 msgid "Edit" msgstr "Modifier" -#: static/admin/translations-fakejs.js:297 -#: static/admin/translations-fakejs.js:305 +#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:308 msgid "Permissions" msgstr "Autorisations" -#: static/admin/translations-fakejs.js:299 -#: static/admin/translations-fakejs.js:306 +#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:309 msgid "Delete" msgstr "Supprimer" -#: static/admin/translations-fakejs.js:301 +#: static/admin/translations-fakejs.js:304 msgid "Selected items" msgstr "Articles sélectionnés" -#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:305 msgid "Copy" msgstr "Copie" -#: static/admin/translations-fakejs.js:303 +#: static/admin/translations-fakejs.js:306 msgid "Detail" msgstr "Détail" -#: static/admin/translations-fakejs.js:307 +#: static/admin/translations-fakejs.js:310 #: static/modern/translations-fakejs.js:43 msgid "Close" msgstr "Fermer" -#: static/admin/translations-fakejs.js:310 +#: static/admin/translations-fakejs.js:313 msgid "User mode" msgstr "Mode utilisateur" -#: static/admin/translations-fakejs.js:311 +#: static/admin/translations-fakejs.js:314 #: static/modern/translations-fakejs.js:48 msgid "Logout" msgstr "Connectez - Out" -#: static/admin/translations-fakejs.js:312 -#: static/admin/translations-fakejs.js:371 -#: static/admin/translations-fakejs.js:389 -#: static/admin/translations-fakejs.js:400 -#: static/admin/translations-fakejs.js:453 -#: static/admin/translations-fakejs.js:467 +#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:353 +#: static/admin/translations-fakejs.js:364 +#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:431 +#: static/admin/translations-fakejs.js:457 msgid "Summary" msgstr "Résumé" -#: static/admin/translations-fakejs.js:313 -#: static/admin/translations-fakejs.js:468 +#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:432 msgid "Services" msgstr "Prestations de service" -#: static/admin/translations-fakejs.js:314 +#: static/admin/translations-fakejs.js:317 +msgid "Authentication" +msgstr "Authentification" + +#: static/admin/translations-fakejs.js:318 msgid "Authenticators" msgstr "Authentificateurs" -#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:319 +msgid "Multi Factor" +msgstr "Multi-facteur" + +#: static/admin/translations-fakejs.js:320 msgid "Os Managers" msgstr "Gestionnaires Os" -#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:321 msgid "Connectivity" msgstr "Connectivité" -#: static/admin/translations-fakejs.js:317 -#: static/admin/translations-fakejs.js:457 +#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:421 #: static/modern/translations-fakejs.js:39 msgid "Transports" msgstr "Les transports" -#: static/admin/translations-fakejs.js:318 +#: static/admin/translations-fakejs.js:323 #: static/modern/translations-fakejs.js:41 msgid "Networks" msgstr "Les réseaux" -#: static/admin/translations-fakejs.js:319 +#: static/admin/translations-fakejs.js:324 msgid "Proxies" msgstr "Les procurations" -#: static/admin/translations-fakejs.js:320 +#: static/admin/translations-fakejs.js:325 msgid "Pools" msgstr "Les piscines" -#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:327 msgid "Meta pools" msgstr "Méta piscines" -#: static/admin/translations-fakejs.js:324 +#: static/admin/translations-fakejs.js:329 msgid "Calendars" msgstr "Calendriers" -#: static/admin/translations-fakejs.js:325 +#: static/admin/translations-fakejs.js:330 msgid "Accounts" msgstr "Comptes" -#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:331 msgid "Tools" msgstr "Outils" -#: static/admin/translations-fakejs.js:327 +#: static/admin/translations-fakejs.js:332 msgid "Gallery" msgstr "Galerie" -#: static/admin/translations-fakejs.js:328 +#: static/admin/translations-fakejs.js:333 msgid "Reports" msgstr "Rapports" -#: static/admin/translations-fakejs.js:329 +#: static/admin/translations-fakejs.js:334 msgid "Tokens" msgstr "Jetons" -#: static/admin/translations-fakejs.js:330 +#: static/admin/translations-fakejs.js:335 msgid "Actor" msgstr "Acteur" -#: static/admin/translations-fakejs.js:331 +#: static/admin/translations-fakejs.js:336 msgid "Tunnel" msgstr "Tunnel" -#: static/admin/translations-fakejs.js:332 +#: static/admin/translations-fakejs.js:337 msgid "Configuration" msgstr "Configuration" -#: static/admin/translations-fakejs.js:333 +#: static/admin/translations-fakejs.js:338 msgid "Flush Cache" msgstr "Vider le cache" -#: static/admin/translations-fakejs.js:334 -#: static/admin/translations-fakejs.js:366 -#: static/admin/translations-fakejs.js:463 -msgid "Information for" -msgstr "Information pour" - #: static/admin/translations-fakejs.js:339 -msgid "Edit group" -msgstr "Modifier groupe" - -#: static/admin/translations-fakejs.js:340 -msgid "New group" -msgstr "Nouveau groupe" - -#: static/admin/translations-fakejs.js:341 -msgid "Meta group name" -msgstr "Nom du groupe méta" - -#: static/admin/translations-fakejs.js:346 -msgid "Service Pools" -msgstr "Pools de service" - -#: static/admin/translations-fakejs.js:347 -msgid "Match mode" -msgstr "Mode match" - -#: static/admin/translations-fakejs.js:348 -msgid "Selected Groups" -msgstr "Groupes sélectionnés" - -#: static/admin/translations-fakejs.js:351 -msgid "Edit user" -msgstr "Modifier utilisateur" - -#: static/admin/translations-fakejs.js:352 -msgid "New user" -msgstr "Nouvel utilisateur" - -#: static/admin/translations-fakejs.js:353 -msgid "Real name" -msgstr "Vrai nom" - -#: static/admin/translations-fakejs.js:359 -msgid "Role" -msgstr "Rôle" - -#: static/admin/translations-fakejs.js:360 -msgid "Admin" -msgstr "Admin" - -#: static/admin/translations-fakejs.js:361 -msgid "Staff member" -msgstr "Membre du personnel" - -#: static/admin/translations-fakejs.js:369 -msgid "Assigned Services" -msgstr "Services assignés" - -#: static/admin/translations-fakejs.js:375 msgid "Account usage" msgstr "Utilisation du compte" -#: static/admin/translations-fakejs.js:376 +#: static/admin/translations-fakejs.js:340 msgid "Edit rule" msgstr "Modifier la règle" -#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:341 msgid "New rule" msgstr "Nouvelle règle" -#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:344 msgid "Event" msgstr "un événement" -#: static/admin/translations-fakejs.js:381 +#: static/admin/translations-fakejs.js:345 msgid "Start time" msgstr "Heure de début" -#: static/admin/translations-fakejs.js:382 +#: static/admin/translations-fakejs.js:346 msgid "Duration" msgstr "Durée" -#: static/admin/translations-fakejs.js:383 +#: static/admin/translations-fakejs.js:347 msgid "Duration units" msgstr "Unités de durée" -#: static/admin/translations-fakejs.js:384 +#: static/admin/translations-fakejs.js:348 msgid "Start date" msgstr "Date de début" -#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:349 msgid "Repeat until date" msgstr "Répéter jusqu'à la date" -#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:350 msgid "Frequency" msgstr "La fréquence" -#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:352 msgid "Repeat every" msgstr "Répéter tous les" -#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:356 msgid "Rules" msgstr "Règles" -#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:357 msgid "New member pool" msgstr "Nouveau pool de membres" -#: static/admin/translations-fakejs.js:394 +#: static/admin/translations-fakejs.js:358 msgid "Edit member pool" msgstr "Modifier le pool de membres" -#: static/admin/translations-fakejs.js:395 -#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:359 +#: static/admin/translations-fakejs.js:384 msgid "Priority" msgstr "Priorité" -#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:360 msgid "Service pool" msgstr "Piscine de service" -#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:361 msgid "Enabled?" msgstr "Activée?" -#: static/admin/translations-fakejs.js:404 -#: static/admin/translations-fakejs.js:460 +#: static/admin/translations-fakejs.js:368 +#: static/admin/translations-fakejs.js:424 msgid "Access calendars" msgstr "Calendriers d'accès" -#: static/admin/translations-fakejs.js:406 +#: static/admin/translations-fakejs.js:370 msgid "Assign service to user manually" msgstr "Attribuer manuellement le service à l'utilisateur" -#: static/admin/translations-fakejs.js:407 +#: static/admin/translations-fakejs.js:371 msgid "Service" msgstr "Un service" -#: static/admin/translations-fakejs.js:412 +#: static/admin/translations-fakejs.js:376 msgid "Change owner of assigned service" msgstr "Changer le propriétaire du service attribué" -#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:381 msgid "New access rule for" msgstr "Nouvelle règle d'accès pour" -#: static/admin/translations-fakejs.js:418 +#: static/admin/translations-fakejs.js:382 msgid "Edit access rule for" msgstr "Modifier la règle d'accès pour" -#: static/admin/translations-fakejs.js:419 +#: static/admin/translations-fakejs.js:383 msgid "Default fallback access for" msgstr "Accès de secours par défaut pour" -#: static/admin/translations-fakejs.js:421 -#: static/admin/translations-fakejs.js:442 +#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:406 msgid "Calendar" msgstr "Calendrier" -#: static/admin/translations-fakejs.js:422 -#: static/admin/translations-fakejs.js:445 +#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:409 msgid "Action" msgstr "action" -#: static/admin/translations-fakejs.js:425 +#: static/admin/translations-fakejs.js:389 msgid "New group for" msgstr "Nouveau groupe pour" -#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:394 msgid "New transport for" msgstr "Nouveau transport pour" -#: static/admin/translations-fakejs.js:431 -#: static/admin/translations-fakejs.js:446 +#: static/admin/translations-fakejs.js:395 +#: static/admin/translations-fakejs.js:410 msgid "Transport" msgstr "Transport" -#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:398 msgid "New publication for" msgstr "Nouvelle publication pour" -#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:402 msgid "Changelog of" msgstr "Changelog de" -#: static/admin/translations-fakejs.js:440 +#: static/admin/translations-fakejs.js:404 msgid "Edit action for" msgstr "Modifier l'action pour" -#: static/admin/translations-fakejs.js:441 +#: static/admin/translations-fakejs.js:405 msgid "New action for" msgstr "Nouvelle action pour" -#: static/admin/translations-fakejs.js:443 +#: static/admin/translations-fakejs.js:407 msgid "Events offset (minutes)" msgstr "Décalage d'événements (minutes)" -#: static/admin/translations-fakejs.js:444 +#: static/admin/translations-fakejs.js:408 msgid "At the beginning of the interval?" msgstr "Au début de l'intervalle?" -#: static/admin/translations-fakejs.js:451 +#: static/admin/translations-fakejs.js:415 msgid "Logs of" msgstr "Journaux de" -#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:419 msgid "Cache" msgstr "Cache" -#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:422 msgid "Publications" msgstr "Des publications" -#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:423 msgid "Scheduled actions" msgstr "Actions programmées" -#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:425 msgid "Charts" msgstr "Graphiques" -#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:427 +#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:493 +msgid "Information for" +msgstr "Information pour" + +#: static/admin/translations-fakejs.js:428 msgid "Services pools" msgstr "Piscines de services" -#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:433 msgid "Usage" msgstr "Usage" -#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:435 #: static/modern/translations-fakejs.js:46 msgid "Dashboard" msgstr "Tableau de bord" -#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:436 msgid "View authenticators" msgstr "Voir les authentificateurs" -#: static/admin/translations-fakejs.js:473 -#: static/admin/translations-fakejs.js:474 -#: static/admin/translations-fakejs.js:475 +#: static/admin/translations-fakejs.js:437 +#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:439 msgid "View service pools" msgstr "Voir les piscines de service" -#: static/admin/translations-fakejs.js:476 +#: static/admin/translations-fakejs.js:440 msgid "Assigned services chart" msgstr "Tableau des services attribués" -#: static/admin/translations-fakejs.js:477 +#: static/admin/translations-fakejs.js:441 msgid "In use services chart" msgstr "Tableau des services en cours d'utilisation" -#: static/admin/translations-fakejs.js:478 +#: static/admin/translations-fakejs.js:442 msgid "UDS Administration" msgstr "Administration UDS" -#: static/admin/translations-fakejs.js:479 +#: static/admin/translations-fakejs.js:443 msgid "You are accessing UDS Administration as staff member." msgstr "Vous accédez à l’administration UDS en tant que membre du personnel." -#: static/admin/translations-fakejs.js:480 +#: static/admin/translations-fakejs.js:444 msgid "This means that you have restricted access to elements." msgstr "Cela signifie que vous avez un accès restreint aux éléments." -#: static/admin/translations-fakejs.js:481 +#: static/admin/translations-fakejs.js:445 msgid "" "In order to increase your access privileges, please contact your local UDS " "administrator." @@ -1506,38 +1466,90 @@ msgstr "" "Pour augmenter vos privilèges d'accès, veuillez contacter votre " "administrateur UDS local." -#: static/admin/translations-fakejs.js:482 +#: static/admin/translations-fakejs.js:446 msgid "Thank you." msgstr "Je vous remercie." -#: static/admin/translations-fakejs.js:483 +#: static/admin/translations-fakejs.js:447 msgid "UDS Configuration" msgstr "Configuration UDS" -#: static/admin/translations-fakejs.js:485 +#: static/admin/translations-fakejs.js:449 msgid "New image for" msgstr "Nouvelle image pour" -#: static/admin/translations-fakejs.js:486 +#: static/admin/translations-fakejs.js:450 msgid "Edit for" msgstr "Modifier pour" -#: static/admin/translations-fakejs.js:487 +#: static/admin/translations-fakejs.js:451 msgid "Image name" msgstr "Nom de l'image" -#: static/admin/translations-fakejs.js:488 +#: static/admin/translations-fakejs.js:452 msgid "Image (click to change)" msgstr "Image (cliquez pour changer)" -#: static/admin/translations-fakejs.js:489 +#: static/admin/translations-fakejs.js:453 msgid "For optimal results, use " msgstr "Pour des résultats optimaux, utilisez" -#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:454 msgid "The image will be resized on upload to" msgstr "L'image sera redimensionnée lors du téléchargement sur" +#: static/admin/translations-fakejs.js:466 +msgid "Edit group" +msgstr "Modifier groupe" + +#: static/admin/translations-fakejs.js:467 +msgid "New group" +msgstr "Nouveau groupe" + +#: static/admin/translations-fakejs.js:468 +msgid "Meta group name" +msgstr "Nom du groupe méta" + +#: static/admin/translations-fakejs.js:473 +msgid "Service Pools" +msgstr "Pools de service" + +#: static/admin/translations-fakejs.js:474 +msgid "Match mode" +msgstr "Mode match" + +#: static/admin/translations-fakejs.js:475 +msgid "Selected Groups" +msgstr "Groupes sélectionnés" + +#: static/admin/translations-fakejs.js:478 +msgid "Edit user" +msgstr "Modifier utilisateur" + +#: static/admin/translations-fakejs.js:479 +msgid "New user" +msgstr "Nouvel utilisateur" + +#: static/admin/translations-fakejs.js:480 +msgid "Real name" +msgstr "Vrai nom" + +#: static/admin/translations-fakejs.js:486 +msgid "Role" +msgstr "Rôle" + +#: static/admin/translations-fakejs.js:487 +msgid "Admin" +msgstr "Admin" + +#: static/admin/translations-fakejs.js:488 +msgid "Staff member" +msgstr "Membre du personnel" + +#: static/admin/translations-fakejs.js:496 +msgid "Assigned Services" +msgstr "Services assignés" + #: static/modern/main-es5.js:1 msgid "Error communicating with your service. Please, retry again." msgstr "Erreur de communication avec votre service. Veuillez réessayer." @@ -1602,7 +1614,8 @@ msgstr "" msgid "Launching service" msgstr "Service de lancement" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 +#: static/modern/translations-fakejs.js:25 msgid "Errors found" msgstr "Erreurs trouvées" @@ -1644,18 +1657,14 @@ msgstr "Service réinitialisé" msgid "Are you sure?" msgstr "Êtes-vous sûr?" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 msgid "Warning" msgstr "Attention" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:25 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 msgid "Service is in maintenance and cannot be executed" msgstr "Le service est en maintenance et ne peut pas être exécuté" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 -msgid "Invalid error string" -msgstr "Chaîne d'erreur invalide" - #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:26 msgid "We use cookies to track usage and preferences" msgstr "" @@ -1805,3 +1814,15 @@ msgstr "Mot de passe" #: static/modern/translations-fakejs.js:73 msgid "Login" msgstr "S'identifier" + +#: static/modern/translations-fakejs.js:74 +msgid "Login Verification" +msgstr "Identification" + +#: static/modern/translations-fakejs.js:75 +msgid "Remember Me" +msgstr "Souviens-toi de moi" + +#: static/modern/translations-fakejs.js:76 +msgid "Submit" +msgstr "Soumettre" diff --git a/server/src/uds/locale/it/LC_MESSAGES/django.po b/server/src/uds/locale/it/LC_MESSAGES/django.po index 2d6e4c7f..0bf6e669 100644 --- a/server/src/uds/locale/it/LC_MESSAGES/django.po +++ b/server/src/uds/locale/it/LC_MESSAGES/django.po @@ -14,41 +14,42 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-14 11:34+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:14+0000\n" +"Last-Translator: Víctor Alonso , 2019\n" "Language-Team: Italian (http://www.transifex.com/openuds/openuds/language/" "it/)\n" "Language: it\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" +"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? " +"1 : 2;\n" #: REST/methods/accounts.py:61 msgid "Accounts" msgstr "Resoconti" -#: REST/methods/accounts.py:63 REST/methods/authenticators.py:66 +#: REST/methods/accounts.py:63 REST/methods/authenticators.py:67 #: REST/methods/calendars.py:63 REST/methods/images.py:67 -#: REST/methods/meta_pools.py:81 REST/methods/networks.py:63 -#: REST/methods/osmanagers.py:55 REST/methods/providers.py:71 -#: REST/methods/proxies.py:60 REST/methods/reports.py:69 -#: REST/methods/services_pool_groups.py:71 REST/methods/services_pools.py:136 -#: REST/methods/transports.py:66 REST/methods/user_services.py:325 -#: REST/methods/user_services.py:400 REST/methods/users_groups.py:167 -#: REST/model.py:149 +#: REST/methods/meta_pools.py:81 REST/methods/mfas.py:56 +#: REST/methods/networks.py:63 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:71 REST/methods/proxies.py:60 +#: REST/methods/reports.py:69 REST/methods/services_pool_groups.py:71 +#: REST/methods/services_pools.py:136 REST/methods/transports.py:66 +#: REST/methods/user_services.py:325 REST/methods/user_services.py:400 +#: REST/methods/users_groups.py:167 REST/model.py:149 msgid "Name" msgstr "Nome" -#: REST/methods/accounts.py:64 REST/methods/authenticators.py:68 +#: REST/methods/accounts.py:64 REST/methods/authenticators.py:69 #: REST/methods/calendarrules.py:110 REST/methods/calendars.py:69 -#: REST/methods/meta_pools.py:82 REST/methods/osmanagers.py:57 -#: REST/methods/providers.py:73 REST/methods/proxies.py:63 -#: REST/methods/services.py:241 REST/methods/services_pool_groups.py:72 -#: REST/methods/transports.py:68 REST/methods/user_services.py:402 -#: REST/methods/users_groups.py:168 REST/methods/users_groups.py:386 -#: REST/model.py:173 +#: REST/methods/meta_pools.py:82 REST/methods/mfas.py:58 +#: REST/methods/osmanagers.py:57 REST/methods/providers.py:73 +#: REST/methods/proxies.py:63 REST/methods/services.py:241 +#: REST/methods/services_pool_groups.py:72 REST/methods/transports.py:68 +#: REST/methods/user_services.py:402 REST/methods/users_groups.py:168 +#: REST/methods/users_groups.py:384 REST/model.py:173 msgid "Comments" msgstr "Commenti" @@ -56,12 +57,12 @@ msgstr "Commenti" msgid "Time mark" msgstr "Marca temporale" -#: REST/methods/accounts.py:66 REST/methods/authenticators.py:73 +#: REST/methods/accounts.py:66 REST/methods/authenticators.py:75 #: REST/methods/calendars.py:71 REST/methods/meta_pools.py:89 -#: REST/methods/networks.py:71 REST/methods/osmanagers.py:59 -#: REST/methods/providers.py:79 REST/methods/proxies.py:64 -#: REST/methods/services.py:250 REST/methods/services_pools.py:145 -#: REST/methods/transports.py:77 +#: REST/methods/mfas.py:59 REST/methods/networks.py:71 +#: REST/methods/osmanagers.py:59 REST/methods/providers.py:79 +#: REST/methods/proxies.py:64 REST/methods/services.py:250 +#: REST/methods/services_pools.py:145 REST/methods/transports.py:77 msgid "tags" msgstr "tag" @@ -116,7 +117,7 @@ msgstr "Chiave non valida" msgid "Unmanaged host" msgstr "Host non gestito" -#: REST/methods/actor.py:207 web/util/errors.py:85 +#: REST/methods/actor.py:207 web/util/errors.py:87 msgid "User service not found" msgstr "Servizio utente non trovato" @@ -125,9 +126,9 @@ msgid "Actor tokens" msgstr "Token Actor" #: REST/methods/actor_token.py:54 REST/methods/tunnel_token.py:52 -#: reports/auto/fields.py:58 reports/stats/pools_performance.py:218 -#: reports/stats/pools_performance.py:237 reports/stats/pools_usage_day.py:64 -#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:191 +#: reports/auto/fields.py:58 reports/stats/pools_performance.py:201 +#: reports/stats/pools_performance.py:220 reports/stats/pools_usage_day.py:64 +#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:176 #: templates/uds/reports/stats/authenticator_stats.html:14 msgid "Date" msgstr "Data" @@ -166,64 +167,79 @@ msgstr "Livello dei log" msgid "Token isued by {} from {}" msgstr "Token emesso per {} da {}" -#: REST/methods/authenticators.py:63 +#: REST/methods/authenticators.py:64 msgid "Authenticators" msgstr "Autenticatori" -#: REST/methods/authenticators.py:65 +#: REST/methods/authenticators.py:66 msgid "Id" msgstr "Id" -#: REST/methods/authenticators.py:67 REST/methods/osmanagers.py:56 -#: REST/methods/providers.py:72 REST/methods/services.py:242 -#: REST/methods/transports.py:67 REST/methods/user_services.py:401 +#: REST/methods/authenticators.py:68 REST/methods/mfas.py:57 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:72 +#: REST/methods/services.py:242 REST/methods/transports.py:67 +#: REST/methods/user_services.py:401 msgid "Type" msgstr "Tipo" -#: REST/methods/authenticators.py:69 REST/methods/meta_service_pools.py:88 +#: REST/methods/authenticators.py:70 REST/methods/meta_service_pools.py:88 #: REST/methods/op_calendars.py:83 REST/methods/services_pool_groups.py:62 #: REST/methods/transports.py:65 REST/methods/user_services.py:399 #: REST/model.py:185 models/meta_pool.py:73 msgid "Priority" msgstr "Priorità" -#: REST/methods/authenticators.py:70 REST/methods/authenticators.py:107 +#: REST/methods/authenticators.py:71 REST/methods/authenticators.py:110 #: REST/methods/meta_pools.py:86 REST/methods/meta_pools.py:193 #: REST/methods/services_pools.py:141 REST/methods/services_pools.py:386 msgid "Visible" msgstr "Visibile" -#: REST/methods/authenticators.py:71 REST/methods/meta_pools.py:88 +#: REST/methods/authenticators.py:72 REST/methods/meta_pools.py:88 #: REST/methods/transports.py:164 REST/model.py:201 msgid "Label" msgstr "Etichetta" -#: REST/methods/authenticators.py:72 core/util/stats/counters.py:252 -#: reports/stats/pools_performance.py:223 -#: reports/stats/pools_performance.py:286 reports/stats/user_access.py:254 -#: reports/stats/user_access.py:297 services/RDS_enterprise/provider.py:74 +#: REST/methods/authenticators.py:73 core/util/stats/counters.py:252 +#: reports/stats/pools_performance.py:206 +#: reports/stats/pools_performance.py:269 reports/stats/user_access.py:239 +#: reports/stats/user_access.py:282 services/RDS_enterprise/provider.py:74 #: templates/uds/reports/stats/authenticator_stats.html:15 #: templates/uds/reports/stats/pools-performance.html:35 #: templates/uds/reports/stats/user-access.html:35 msgid "Users" msgstr "Utenti" -#: REST/methods/authenticators.py:109 REST/methods/services_pools.py:387 -msgid "If active, transport will be visible for users" -msgstr "Se attivo, il trasporto sarà visibile agli utenti" +#: REST/methods/authenticators.py:74 core/ui/user_interface.py:104 +msgid "MFA" +msgstr "MAE" -#: REST/methods/authenticators.py:113 REST/methods/services_pools.py:390 -#: REST/methods/services_pools.py:405 REST/methods/services_pools.py:422 -#: REST/methods/services_pools.py:433 core/ui/user_interface.py:103 -#: services/OVirt/service.py:188 -msgid "Display" -msgstr "Display" +#: REST/methods/authenticators.py:112 +msgid "If active, authenticator will be visible for users" +msgstr "Se attivo, l'autenticatore sarà visibile agli utenti" -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:125 core/services/service.py:143 +#: core/services/service.py:154 mfas/Email/mfa.py:46 mfas/SMS/mfa.py:112 +#: models/permissions.py:92 models/permissions.py:96 +#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 +#: services/Proxmox/service.py:208 services/Sample/service.py:100 +#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 +msgid "None" +msgstr "Nessuna" + +#: REST/methods/authenticators.py:132 +msgid "MFA Provider" +msgstr "Fornitore dell'AMF" + +#: REST/methods/authenticators.py:134 +msgid "MFA provider to use for this authenticator" +msgstr "Provider MFA da utilizzare per questo autenticatore" + +#: REST/methods/authenticators.py:193 msgid "Too many results..." msgstr "Troppi risultati ..." -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:193 msgid "Refine your query" msgstr "Affina la tua richiesta" @@ -383,7 +399,7 @@ msgstr "Data di creazione" #: REST/methods/meta_service_pools.py:195 REST/methods/services_usage.py:125 #: reports/stats/pool_users_summary.py:60 -#: reports/stats/pools_performance.py:284 reports/stats/pools_usage_day.py:171 +#: reports/stats/pools_performance.py:267 reports/stats/pools_usage_day.py:169 #: reports/stats/pools_usage_summary.py:156 reports/stats/usage_by_pool.py:59 #: reports/stats/usage_by_pool.py:173 services/Proxmox/service.py:111 #: templates/uds/reports/stats/pools-performance.html:33 @@ -442,6 +458,28 @@ msgstr "Elemento già rimosso" msgid "Item is not removable" msgstr "L'elemento non è rimovibile" +#: REST/methods/mfas.py:54 +msgid "Multi Factor Authentication" +msgstr "Autenticazione multifattoriale" + +#: REST/methods/mfas.py:80 +msgid "Device Caching" +msgstr "Memorizzazione nella cache del dispositivo" + +#: REST/methods/mfas.py:82 +msgid "Time in hours to cache device so MFA is not required again. User based." +msgstr "" +"Tempo in ore per memorizzare nella cache il dispositivo in modo che l'" +"autenticazione a più fattori non sia più necessaria. Basato sull'utente." + +#: REST/methods/mfas.py:94 +msgid "MFA code validity" +msgstr "Validità del codice MFA" + +#: REST/methods/mfas.py:96 +msgid "Time in minutes to allow MFA code to be used." +msgstr "Tempo in minuti per consentire l'utilizzo del codice MFA." + #: REST/methods/networks.py:59 REST/methods/transports.py:114 msgid "Networks" msgstr "Reti" @@ -530,7 +568,7 @@ msgstr "Fornitori di servizi" msgid "Status" msgstr "Stato" -#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:171 +#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:169 #: templates/uds/reports/stats/authenticator_stats.html:16 #: templates/uds/reports/stats/pools-usage-day.html:29 msgid "Services" @@ -625,13 +663,13 @@ msgstr "" msgid "Available reports" msgstr "Rapporti disponibili" -#: REST/methods/reports.py:67 REST/methods/users_groups.py:377 -#: REST/methods/users_groups.py:398 -#: auths/ActiveDirectory_enterprise/authenticator.py:143 +#: REST/methods/reports.py:67 REST/methods/users_groups.py:375 +#: REST/methods/users_groups.py:396 +#: auths/ActiveDirectory_enterprise/authenticator.py:153 #: auths/AzureAD_enterprise/azure_ad.py:95 #: auths/EDirectory_enterprise/authenticator.py:105 #: auths/Radius/authenticator.py:63 auths/RegexLdap/authenticator.py:191 -#: auths/SAML_enterprise/saml.py:121 auths/SimpleLDAP/authenticator.py:182 +#: auths/SAML_enterprise/saml.py:109 auths/SimpleLDAP/authenticator.py:182 #: models/calendar_action.py:147 models/calendar_action.py:154 msgid "Group" msgstr "Gruppo" @@ -696,13 +734,13 @@ msgstr "Proxy per servizi dietro un firewall" msgid "Advanced" msgstr "Avanzate" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "With errors" msgstr "Con errori" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "Ok" msgstr "Ok" @@ -781,6 +819,16 @@ msgstr "" "Se l'opzione è abilitata, UDS non tenterà di rilevare e rimuovere i servizi " "utente assegnati ma non in uso." +#: REST/methods/services_pools.py:387 +msgid "If active, transport will be visible for users" +msgstr "Se attivo, il trasporto sarà visibile agli utenti" + +#: REST/methods/services_pools.py:390 REST/methods/services_pools.py:405 +#: REST/methods/services_pools.py:422 REST/methods/services_pools.py:433 +#: core/ui/user_interface.py:103 services/OVirt/service.py:188 +msgid "Display" +msgstr "Display" + #: REST/methods/services_pools.py:439 msgid "Initial available services" msgstr "Servizi disponibili iniziali" @@ -988,7 +1036,7 @@ msgstr "Membro dello staff" #: auths/AzureAD_enterprise/azure_ad.py:94 #: auths/EDirectory_enterprise/authenticator.py:69 #: auths/Radius/authenticator.py:62 auths/RegexLdap/authenticator.py:91 -#: auths/SAML_enterprise/saml.py:118 reports/stats/pool_users_summary.py:177 +#: auths/SAML_enterprise/saml.py:106 reports/stats/pool_users_summary.py:177 #: reports/stats/usage_by_pool.py:171 #: templates/uds/reports/stats/pool-users-summary.html:14 #: templates/uds/reports/stats/usage-by-pool.html:15 @@ -1005,10 +1053,10 @@ msgid "Current users" msgstr "Utenti attuali" #: REST/methods/users_groups.py:160 -#: auths/ActiveDirectory_enterprise/authenticator.py:141 +#: auths/ActiveDirectory_enterprise/authenticator.py:151 #: auths/EDirectory_enterprise/authenticator.py:103 #: auths/RegexLdap/authenticator.py:189 auths/SimpleLDAP/authenticator.py:180 -#: services/HyperV_enterprise/legacy/provider.py:103 +#: mfas/Email/mfa.py:54 services/HyperV_enterprise/legacy/provider.py:103 #: services/HyperV_enterprise/provider.py:86 #: services/NutanixPrism_enterprise/provider.py:54 #: services/Nutanix_enterprise/provider.py:54 services/OVirt/provider.py:121 @@ -1022,7 +1070,7 @@ msgstr "Utenti attuali" #: transports/NoMachine_enterprise/nomachine_base.py:63 #: transports/PCoIP_enterprise/pcoip.py:61 transports/RDP/rdp_base.py:75 #: transports/SPICE/spice_base.py:69 transports/X2GO/x2go_base.py:70 -#: web/forms/LoginForm.py:43 +#: web/forms/LoginForm.py:44 msgid "Username" msgstr "Nome utente" @@ -1030,7 +1078,7 @@ msgstr "Nome utente" msgid "Role" msgstr "Ruolo" -#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:389 +#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:387 msgid "state" msgstr "stato" @@ -1042,32 +1090,32 @@ msgstr "Ultimo accesso" msgid "Username cannot be empty" msgstr "Il nome utente non può essere vuoto" -#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:470 +#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:468 msgid "User already exists (duplicate key error)" msgstr "L'utente esiste già (errore chiave duplicata)" -#: REST/methods/users_groups.py:365 +#: REST/methods/users_groups.py:363 #, python-brace-format msgid "Groups of {0}" msgstr "Gruppi di {0}" -#: REST/methods/users_groups.py:371 +#: REST/methods/users_groups.py:369 msgid "Current groups" msgstr "Gruppi attuali" -#: REST/methods/users_groups.py:398 +#: REST/methods/users_groups.py:396 msgid "UDS Group" msgstr "Gruppo UDS" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "Meta group" msgstr "Meta gruppo" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "UDS Meta Group" msgstr "Meta gruppo UDS" -#: REST/methods/users_groups.py:430 +#: REST/methods/users_groups.py:428 msgid "Group name is required" msgstr "Il nome del gruppo è obbligatorio" @@ -1118,7 +1166,7 @@ msgstr "Metodo non trovato in {}: {}" msgid "Item not found" msgstr "Elemento non trovato" -#: REST/model.py:336 web/util/authentication.py:140 web/util/errors.py:79 +#: REST/model.py:336 web/util/authentication.py:143 web/util/errors.py:81 msgid "Access denied" msgstr "Accesso negato" @@ -1126,7 +1174,7 @@ msgstr "Accesso negato" msgid "Operation not supported" msgstr "Operazione non supportata" -#: admin/views/__init__.py:59 +#: admin/views/__init__.py:72 msgid "requested a template that do not exist" msgstr "richiesto un modello che non esiste" @@ -1160,11 +1208,11 @@ msgstr "" "formato USER@DOMAIN.DOM)" #: auths/ActiveDirectory_enterprise/authenticator.py:80 -#: auths/ActiveDirectory_enterprise/authenticator.py:145 +#: auths/ActiveDirectory_enterprise/authenticator.py:155 #: auths/EDirectory_enterprise/authenticator.py:77 #: auths/RegexLdap/authenticator.py:99 auths/RegexLdap/authenticator.py:193 #: auths/SimpleLDAP/authenticator.py:90 auths/SimpleLDAP/authenticator.py:184 -#: core/auths/authenticator.py:147 +#: core/auths/authenticator.py:147 mfas/Email/mfa.py:63 #: osmanagers/WindowsOsManager/windows_domain.py:85 #: osmanagers/WindowsOsManager/windows_random.py:76 #: services/HyperV_enterprise/legacy/provider.py:110 @@ -1180,8 +1228,8 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcv_base.py:52 #: transports/NoMachine_enterprise/nomachine_base.py:69 #: transports/PCoIP_enterprise/pcoip.py:67 transports/RDP/rdp_base.py:81 -#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:45 -#: web/forms/LoginForm.py:46 +#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:46 +#: web/forms/LoginForm.py:47 msgid "Password" msgstr "Password" @@ -1248,23 +1296,33 @@ msgstr "" "Se non è vuoto, questo host verrà utilizzato nel caso in cui il server host " "principale non sia raggiungibile" -#: auths/ActiveDirectory_enterprise/authenticator.py:130 +#: auths/ActiveDirectory_enterprise/authenticator.py:133 +#: auths/SAML_enterprise/saml.py:207 +msgid "MFA attribute" +msgstr "Attributo MFA" + +#: auths/ActiveDirectory_enterprise/authenticator.py:135 +#: auths/SAML_enterprise/saml.py:209 +msgid "Attribute from where to extract the MFA code" +msgstr "Attributo da cui estrarre il codice MFA" + +#: auths/ActiveDirectory_enterprise/authenticator.py:140 msgid "Active Directory Authenticator" msgstr "Autenticatore Active Directory" -#: auths/ActiveDirectory_enterprise/authenticator.py:132 +#: auths/ActiveDirectory_enterprise/authenticator.py:142 msgid "Authenticate against Active Directory" msgstr "Autentica con Active Directory" -#: auths/ActiveDirectory_enterprise/authenticator.py:175 -#: auths/ActiveDirectory_enterprise/authenticator.py:602 +#: auths/ActiveDirectory_enterprise/authenticator.py:187 +#: auths/ActiveDirectory_enterprise/authenticator.py:648 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "" "È necessario specificare il nome utente nel formato USERNAME@DOMAIN.DOM" -#: auths/ActiveDirectory_enterprise/authenticator.py:481 -#: auths/ActiveDirectory_enterprise/authenticator.py:532 -#: auths/AzureAD_enterprise/azure_ad.py:313 +#: auths/ActiveDirectory_enterprise/authenticator.py:521 +#: auths/ActiveDirectory_enterprise/authenticator.py:578 +#: auths/AzureAD_enterprise/azure_ad.py:315 #: auths/EDirectory_enterprise/authenticator.py:269 #: auths/EDirectory_enterprise/authenticator.py:300 #: auths/RegexLdap/authenticator.py:538 auths/RegexLdap/authenticator.py:569 @@ -1272,34 +1330,34 @@ msgstr "" msgid "Username not found" msgstr "Nome utente non trovato" -#: auths/ActiveDirectory_enterprise/authenticator.py:514 +#: auths/ActiveDirectory_enterprise/authenticator.py:560 #: auths/SimpleLDAP/authenticator.py:468 msgid "Group not found" msgstr "Gruppo non trovato" -#: auths/ActiveDirectory_enterprise/authenticator.py:559 -#: auths/ActiveDirectory_enterprise/authenticator.py:581 +#: auths/ActiveDirectory_enterprise/authenticator.py:605 +#: auths/ActiveDirectory_enterprise/authenticator.py:627 #: auths/EDirectory_enterprise/authenticator.py:322 #: auths/RegexLdap/authenticator.py:597 auths/SimpleLDAP/authenticator.py:503 #: auths/SimpleLDAP/authenticator.py:523 msgid "Too many results, be more specific" msgstr "Troppi risultati, essere più specifici" -#: auths/ActiveDirectory_enterprise/authenticator.py:613 +#: auths/ActiveDirectory_enterprise/authenticator.py:659 msgid "Domain seems to be incorrect, please check it" msgstr "Il dominio sembra essere errato, per favore controllalo" -#: auths/ActiveDirectory_enterprise/authenticator.py:632 +#: auths/ActiveDirectory_enterprise/authenticator.py:678 msgid "" "Server does not seem an Active Directory (it does not have user objects)" msgstr "Il server non sembra un Active Directory (non ha oggetti utente)" -#: auths/ActiveDirectory_enterprise/authenticator.py:655 +#: auths/ActiveDirectory_enterprise/authenticator.py:701 msgid "" "Server does not seem an Active Directory (it does not have group objects)" msgstr "Il server non sembra un Active Directory (non ha oggetti di gruppo)" -#: auths/ActiveDirectory_enterprise/authenticator.py:664 +#: auths/ActiveDirectory_enterprise/authenticator.py:710 #: auths/EDirectory_enterprise/authenticator.py:445 #: auths/RegexLdap/authenticator.py:707 auths/SimpleLDAP/authenticator.py:686 msgid "Connection params seem correct, test was succesfully executed" @@ -1392,21 +1450,21 @@ msgstr "Disconnessione Microsoft" msgid "Office 365 logout" msgstr "Disconnessione da Office 365" -#: auths/AzureAD_enterprise/azure_ad.py:176 auths/SAML_enterprise/saml.py:217 +#: auths/AzureAD_enterprise/azure_ad.py:176 msgid "SAML Authenticator does not support white spaces on field NAME" msgstr "Autenticatore SAML, spazi non supportati nel campo Nome" -#: auths/AzureAD_enterprise/azure_ad.py:323 -#: auths/AzureAD_enterprise/azure_ad.py:349 -#: auths/AzureAD_enterprise/azure_ad.py:359 +#: auths/AzureAD_enterprise/azure_ad.py:325 +#: auths/AzureAD_enterprise/azure_ad.py:351 +#: auths/AzureAD_enterprise/azure_ad.py:361 msgid "Authenticator exception:" msgstr "Eccezione dell'autenticatore:" -#: auths/AzureAD_enterprise/azure_ad.py:394 core/util/ldaputil.py:49 +#: auths/AzureAD_enterprise/azure_ad.py:396 core/util/ldaputil.py:49 msgid "Connection error: " msgstr "Errore di connessione:" -#: auths/AzureAD_enterprise/azure_ad.py:397 +#: auths/AzureAD_enterprise/azure_ad.py:399 msgid "Connection params seems correct, test was succesfully executed" msgstr "" "I parametri di connessione sembrano corretti, il test è stato eseguito " @@ -1513,7 +1571,7 @@ msgstr "Autenticatore IP" msgid "IP Range" msgstr "Intervallo IP" -#: auths/IP/authenticator.py:119 auths/IP/authenticator.py:122 +#: auths/IP/authenticator.py:122 auths/IP/authenticator.py:125 msgid "All seems to be fine." msgstr "Tutto sembra corretto." @@ -1711,19 +1769,19 @@ msgstr "" "L'attributo id del gruppo Ldap sembra non essere corretto (nessun gruppo " "trovato da quell'attributo)" -#: auths/SAML_enterprise/saml.py:88 +#: auths/SAML_enterprise/saml.py:76 msgid "SAML Authenticator" msgstr "Autenticatore SAML" -#: auths/SAML_enterprise/saml.py:100 +#: auths/SAML_enterprise/saml.py:88 msgid "SAML (v2.0) Authenticator" msgstr "Autenticatore SAML (v2.0)" -#: auths/SAML_enterprise/saml.py:130 +#: auths/SAML_enterprise/saml.py:118 msgid "Private key" msgstr "Chiave privata" -#: auths/SAML_enterprise/saml.py:133 +#: auths/SAML_enterprise/saml.py:121 msgid "" "Private key used for sign and encription, as generated in base 64 from " "openssl" @@ -1731,15 +1789,15 @@ msgstr "" "Chiave privata utilizzata per firma e la crittografia, in formato base64 " "come generata da openssl" -#: auths/SAML_enterprise/saml.py:136 auths/SAML_enterprise/saml.py:147 +#: auths/SAML_enterprise/saml.py:124 auths/SAML_enterprise/saml.py:135 msgid "Certificates" msgstr "Certificati" -#: auths/SAML_enterprise/saml.py:141 transports/SPICE/spice_base.py:83 +#: auths/SAML_enterprise/saml.py:129 transports/SPICE/spice_base.py:83 msgid "Certificate" msgstr "Certificato" -#: auths/SAML_enterprise/saml.py:144 +#: auths/SAML_enterprise/saml.py:132 msgid "" "Public key used for sign and encription (public part of previous private " "key), as generated in base 64 from openssl" @@ -1747,59 +1805,82 @@ msgstr "" "Chiave pubblica utilizzata per la firma e la crittografia (parte pubblica " "della chiave privata precedente), in formato base64 come generata da openssl" -#: auths/SAML_enterprise/saml.py:152 +#: auths/SAML_enterprise/saml.py:140 msgid "IDP Metadata" msgstr "Metadati IDP" -#: auths/SAML_enterprise/saml.py:155 +#: auths/SAML_enterprise/saml.py:143 msgid "" "You can enter here the URL or the IDP metadata or the metadata itself (xml)" msgstr "Puoi inserire qui l'URL o i metadati IDP o i metadati stessi (xml)" -#: auths/SAML_enterprise/saml.py:158 auths/SAML_enterprise/saml.py:167 +#: auths/SAML_enterprise/saml.py:146 auths/SAML_enterprise/saml.py:155 msgid "Metadata" msgstr "Metadati" -#: auths/SAML_enterprise/saml.py:162 +#: auths/SAML_enterprise/saml.py:150 msgid "Entity ID" msgstr "Entity ID" -#: auths/SAML_enterprise/saml.py:165 +#: auths/SAML_enterprise/saml.py:153 msgid "ID of the SP. If left blank, this will be autogenerated from server URL" msgstr "" "ID dello SP. Se lasciato vuoto, questo verrà generato automaticamente " "dall'URL del server" -#: auths/SAML_enterprise/saml.py:173 +#: auths/SAML_enterprise/saml.py:161 msgid "User name attrs" msgstr "Attributi nome utente" -#: auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:163 msgid "Fields from where to extract user name" msgstr "Campi da cui estrarre il nome utente" -#: auths/SAML_enterprise/saml.py:177 auths/SAML_enterprise/saml.py:187 -#: auths/SAML_enterprise/saml.py:197 +#: auths/SAML_enterprise/saml.py:165 auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:185 msgid "Attributes" msgstr "Attributi" -#: auths/SAML_enterprise/saml.py:183 +#: auths/SAML_enterprise/saml.py:171 msgid "Group name attrs" msgstr "Attributi nome di gruppo" -#: auths/SAML_enterprise/saml.py:185 +#: auths/SAML_enterprise/saml.py:173 msgid "Fields from where to extract the groups" msgstr "Campi da cui estrarre i gruppi" -#: auths/SAML_enterprise/saml.py:193 +#: auths/SAML_enterprise/saml.py:181 msgid "Real name attrs" msgstr "Attributi nome reale" -#: auths/SAML_enterprise/saml.py:195 +#: auths/SAML_enterprise/saml.py:183 msgid "Fields from where to extract the real name" msgstr "Campi da cui estrarre il nome reale" +#: auths/SAML_enterprise/saml.py:189 +msgid "Global logout" +msgstr "Disconnessione globale" + +#: auths/SAML_enterprise/saml.py:192 +msgid "If set, logout from UDS will trigger SAML logout" +msgstr "Se impostata, la disconnessione da UDS attiverà la disconnessione SAML" + +#: auths/SAML_enterprise/saml.py:197 +msgid "ADFS compatibility" +msgstr "Compatibilità ADFS" + +#: auths/SAML_enterprise/saml.py:200 +msgid "If set, enable lowercase url encoding so ADFS can work correctly" +msgstr "" +"Se impostata, abilita la codifica dell'URL in minuscolo in modo che ADFS " +"possa funzionare correttamente" + #: auths/SAML_enterprise/saml.py:231 +msgid "This kind of Authenticator does not support white spaces on field NAME" +msgstr "" +"Questo tipo di autenticatore non supporta gli spazi bianchi nel campo NOME" + +#: auths/SAML_enterprise/saml.py:245 msgid "" "Server certificate should be a valid PEM (PEM certificates starts with -----" "BEGIN CERTIFICATE-----)" @@ -1807,11 +1888,11 @@ msgstr "" "Il certificato del server deve essere in formato PEM valido (i certificati " "PEM iniziano con ----- BEGIN CERTIFICATE -----)" -#: auths/SAML_enterprise/saml.py:239 +#: auths/SAML_enterprise/saml.py:253 msgid "Invalid server certificate. " msgstr "Certificato del server non valido." -#: auths/SAML_enterprise/saml.py:250 +#: auths/SAML_enterprise/saml.py:264 msgid "" "Private key should be a valid PEM (PEM private keys starts with -----BEGIN " "RSA PRIVATE KEY-----" @@ -1819,27 +1900,47 @@ msgstr "" "La chiave privata dovrebbe essere un PEM valido (le chiavi private PEM " "iniziano con ----- BEGIN RSA PRIVATE KEY-----)" -#: auths/SAML_enterprise/saml.py:258 +#: auths/SAML_enterprise/saml.py:272 msgid "Invalid private key. " msgstr "Chiave privata non valida." -#: auths/SAML_enterprise/saml.py:277 +#: auths/SAML_enterprise/saml.py:291 #, python-brace-format msgid "Can't fetch url {0}: {1}" msgstr "Impossibile recuperare l'URL {0}: {1}" -#: auths/SAML_enterprise/saml.py:288 +#: auths/SAML_enterprise/saml.py:302 msgid " (obtained from URL)" msgstr "(ottenuto dall'URL)" -#: auths/SAML_enterprise/saml.py:290 +#: auths/SAML_enterprise/saml.py:304 msgid "XML does not seem valid for IDP Metadata " msgstr "XML non sembra valido per i metadati IDP" -#: auths/SAML_enterprise/saml.py:312 +#: auths/SAML_enterprise/saml.py:357 msgid "Can't access idp metadata" msgstr "Impossibile accedere ai metadati idp" +#: auths/SAML_enterprise/saml.py:424 +msgid "Error validating SP metadata: " +msgstr "Errore durante la convalida dei metadati SP:" + +#: auths/SAML_enterprise/saml.py:528 +msgid "Error processing SLO: " +msgstr "Errore durante l'elaborazione dello SLO:" + +#: auths/SAML_enterprise/saml.py:558 +msgid "Error processing SAML response: " +msgstr "Errore durante l'elaborazione della risposta SAML:" + +#: auths/SAML_enterprise/saml.py:571 +msgid "SAML response not authenticated" +msgstr "Risposta SAML non autenticata" + +#: auths/SAML_enterprise/saml.py:598 +msgid "No attributes returned from IdP" +msgstr "Nessun attributo restituito dall'IdP" + #: auths/Sample/SampleAuth.py:79 msgid "Sample Authenticator" msgstr "Autenticatore di esempio" @@ -1938,11 +2039,11 @@ msgstr "" "Impossibile individuare alcun gruppo con l'attributo di appartenenza " "specificato" -#: core/auths/auth.py:110 +#: core/auths/auth.py:111 msgid "System Administrator" msgstr "Amministratore di sistema" -#: core/auths/auth.py:150 +#: core/auths/auth.py:155 msgid "Forbidden" msgstr "Proibito" @@ -1980,20 +2081,20 @@ msgid "Can't unpublish publications with services in process" msgstr "" "Impossibile annullare una pubblicazione di pubblicazioni con servizi in corso" -#: core/managers/user_service.py:337 +#: core/managers/user_service.py:348 msgid "Can't remove a non active element" msgstr "Impossibile rimuovere un elemento non attivo" -#: core/managers/user_service.py:363 +#: core/managers/user_service.py:374 msgid "Can't remove nor cancel {} cause its state don't allow it" msgstr "" "Impossibile rimuovere o annullare {} perché il suo stato non lo consente" -#: core/managers/user_service.py:395 +#: core/managers/user_service.py:406 msgid "The requested service is restrained" msgstr "Il servizio richiesto è limitato" -#: core/managers/user_service.py:761 web/util/errors.py:81 +#: core/managers/user_service.py:770 web/util/errors.py:83 msgid "" "Invalid service. The service is not available at this moment. Please, try " "later" @@ -2001,14 +2102,22 @@ msgstr "" "Servizio non valido. Il servizio non è disponibile in questo momento. Per " "favore prova più tardi" -#: core/managers/user_service.py:798 +#: core/managers/user_service.py:807 msgid "The requested transport {} is not valid for {}" msgstr "Il trasporto richiesto {} non è valido per {}" -#: core/managers/user_service.py:1078 +#: core/managers/user_service.py:1084 msgid "The service is not accessible from this device" msgstr "Il servizio non è accessibile da questo dispositivo" +#: core/mfas/mfa.py:60 core/mfas/mfa.py:72 +msgid "Base MFA" +msgstr "MAE di base" + +#: core/mfas/mfa.py:184 +msgid "Invalid MFA code" +msgstr "Codice MFA non valido" + #: core/module.py:215 msgid "No connection checking method is implemented." msgstr "Non è implementato alcun metodo di controllo della connessione." @@ -2053,14 +2162,6 @@ msgstr "Stampato il {now:% Y,% b% d} alle {now:% H:% M}" msgid "Base Service" msgstr "Servizio di base" -#: core/services/service.py:143 core/services/service.py:154 -#: models/permissions.py:92 models/permissions.py:96 -#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 -#: services/Proxmox/service.py:208 services/Sample/service.py:100 -#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 -msgid "None" -msgstr "Nessuna" - #: core/transports/transport.py:52 msgid "Direct" msgstr "Diretto" @@ -2185,24 +2286,24 @@ msgstr "Utenti con servizi" msgid "Cached" msgstr "Memorizzato nella cache" -#: core/util/tools.py:152 +#: core/util/tools.py:155 msgid "{} days {:d}:{:02d}:{:02d}" msgstr "{} giorni {: d}: {: 02d}: {: 02d}" -#: core/util/tools.py:171 +#: core/util/tools.py:174 msgid "The basename is not a valid for a hostname" msgstr "Il nome base non è valido per un nome host" -#: core/util/tools.py:176 +#: core/util/tools.py:179 msgid "The length of basename plus length must be greater than 0" msgstr "La lunghezza del nome base più la lunghezza deve essere maggiore di 0" -#: core/util/tools.py:181 +#: core/util/tools.py:184 msgid "The length of basename plus length must not be greater than 15" msgstr "" "La lunghezza del nome base più la lunghezza non deve essere maggiore di 15" -#: core/util/tools.py:186 +#: core/util/tools.py:189 msgid "The machine name can't be only numbers" msgstr "Il nome della macchina non può essere solo numeri" @@ -2233,7 +2334,11 @@ msgstr "{} supera la lunghezza massima del nome host." msgid "{} is not a valid hostname" msgstr "{} non è un nome host valido" -#: core/util/validators.py:152 +#: core/util/validators.py:131 +msgid "{} is not a valid host:port pair" +msgstr "{} non è una coppia host:porta valida" + +#: core/util/validators.py:168 msgid "" "Invalid mac range. Mac range must be in format XX:XX:XX:XX:XX:XX-XX:XX:XX:XX:" "XX:XX" @@ -2241,66 +2346,351 @@ msgstr "" "Intervallo mac non valido. La gamma Mac deve essere in formato XX:XX:XX:XX:" "XX:XX-XX:XX:XX:XX:XX:XX" -#: dispatchers/wyse_enterprise/views.py:118 +#: core/util/validators.py:182 +msgid "Email address is too long" +msgstr "L'indirizzo email è troppo lungo" + +#: core/util/validators.py:187 +msgid "Email address is not valid" +msgstr "Indirizzo email non valido" + +#: dispatchers/wyse_enterprise/views.py:119 msgid "There are no authenticators available for login" msgstr "Non ci sono autenticatori disponibili per il login" -#: dispatchers/wyse_enterprise/views.py:138 +#: dispatchers/wyse_enterprise/views.py:139 #, python-brace-format msgid "The authenticator {0} is not usable" msgstr "L'autenticatore {0} non è utilizzabile" -#: dispatchers/wyse_enterprise/views.py:145 +#: dispatchers/wyse_enterprise/views.py:146 msgid "Invalid credentials" msgstr "Credenziali non valide" -#: dispatchers/wyse_enterprise/views.py:152 +#: dispatchers/wyse_enterprise/views.py:153 #, python-brace-format msgid "The domain {0} does not exists" msgstr "Il dominio {0} non esiste" -#: dispatchers/wyse_enterprise/views.py:228 +#: dispatchers/wyse_enterprise/views.py:229 msgid "No services available" msgstr "Nessun servizio disponibile" -#: dispatchers/wyse_enterprise/views.py:244 -#: dispatchers/wyse_enterprise/views.py:344 +#: dispatchers/wyse_enterprise/views.py:245 +#: dispatchers/wyse_enterprise/views.py:345 msgid "Invalid session" msgstr "Sessione non valida" -#: dispatchers/wyse_enterprise/views.py:248 -#: dispatchers/wyse_enterprise/views.py:348 +#: dispatchers/wyse_enterprise/views.py:249 +#: dispatchers/wyse_enterprise/views.py:349 msgid "Invalid authorization" msgstr "Autorizzazione non valida" -#: dispatchers/wyse_enterprise/views.py:259 -#: dispatchers/wyse_enterprise/views.py:354 +#: dispatchers/wyse_enterprise/views.py:260 +#: dispatchers/wyse_enterprise/views.py:355 msgid "Invalid request" msgstr "Richiesta non valida" -#: dispatchers/wyse_enterprise/views.py:262 -#: dispatchers/wyse_enterprise/views.py:357 +#: dispatchers/wyse_enterprise/views.py:263 +#: dispatchers/wyse_enterprise/views.py:358 msgid "Invalid credentials used" msgstr "Credenziali non valide utilizzate" -#: dispatchers/wyse_enterprise/views.py:277 web/util/errors.py:78 +#: dispatchers/wyse_enterprise/views.py:278 web/util/errors.py:80 msgid "Service not found" msgstr "Servizio non trovato" -#: dispatchers/wyse_enterprise/views.py:281 +#: dispatchers/wyse_enterprise/views.py:282 msgid "Invalid machine uuid." msgstr "Uuid macchina non valido." -#: dispatchers/wyse_enterprise/views.py:295 web/util/errors.py:77 +#: dispatchers/wyse_enterprise/views.py:296 web/util/errors.py:79 msgid "Transport not found" msgstr "Trasporto non trovato" -#: dispatchers/wyse_enterprise/views.py:300 -#: dispatchers/wyse_enterprise/views.py:308 -#: dispatchers/wyse_enterprise/views.py:315 +#: dispatchers/wyse_enterprise/views.py:301 +#: dispatchers/wyse_enterprise/views.py:309 +#: dispatchers/wyse_enterprise/views.py:316 msgid "Service not ready at this moment. Please, try again in a while." msgstr "Servizio non pronto in questo momento. Per favore, riprova di nuovo." +#: mfas/Email/mfa.py:22 +msgid "Email Multi Factor" +msgstr "E-mail multifattore" + +#: mfas/Email/mfa.py:24 +msgid "Email Multi Factor Authenticator" +msgstr "Autenticatore multifattore di posta elettronica" + +#: mfas/Email/mfa.py:29 +msgid "SMTP Host" +msgstr "Host SMTP" + +#: mfas/Email/mfa.py:32 +msgid "" +"SMTP Server hostname or IP address. If you are using a non-standard port, " +"add it after a colon, for example: smtp.gmail.com:587" +msgstr "" +"Nome host o indirizzo IP del server SMTP. Se stai utilizzando una porta non " +"standard, aggiungila dopo i due punti, ad esempio: smtp.gmail.com:587" + +#: mfas/Email/mfa.py:37 mfas/Email/mfa.py:50 mfas/Email/mfa.py:59 +#: mfas/Email/mfa.py:68 +msgid "SMTP Server" +msgstr "Server SMTP" + +#: mfas/Email/mfa.py:41 transports/HTML5RDP/html5rdp.py:268 +#: transports/HTML5RDS_enterprise/html5rds.py:255 +msgid "Security" +msgstr "Sicurezza" + +#: mfas/Email/mfa.py:42 +msgid "Security protocol to use" +msgstr "Protocollo di sicurezza da utilizzare" + +#: mfas/Email/mfa.py:44 +msgid "TLS" +msgstr "TLS" + +#: mfas/Email/mfa.py:45 +msgid "SSL" +msgstr "SSL" + +#: mfas/Email/mfa.py:56 +msgid "User with access to SMTP server" +msgstr "Utente con accesso al server SMTP" + +#: mfas/Email/mfa.py:65 +msgid "Password of the user with access to SMTP server" +msgstr "Password dell'utente con accesso al server SMTP" + +#: mfas/Email/mfa.py:74 +msgid "Subject" +msgstr "Materia" + +#: mfas/Email/mfa.py:76 +msgid "Subject of the email" +msgstr "Oggetto dell'e-mail" + +#: mfas/Email/mfa.py:78 mfas/Email/mfa.py:87 mfas/Email/mfa.py:95 +msgid "Config" +msgstr "Config" + +#: mfas/Email/mfa.py:83 +msgid "From Email" +msgstr "Dall'email" + +#: mfas/Email/mfa.py:85 +msgid "Email address that will be used as sender" +msgstr "Indirizzo email che verrà utilizzato come mittente" + +#: mfas/Email/mfa.py:91 +msgid "Enable HTML" +msgstr "Abilita HTML" + +#: mfas/Email/mfa.py:93 +msgid "Enable HTML in emails" +msgstr "Abilita HTML nelle e-mail" + +#: mfas/Email/mfa.py:110 +msgid "Invalid SMTP hostname" +msgstr "Nome host SMTP non valido" + +#: mfas/SMS/mfa.py:19 +msgid "SMS Thought HTTP" +msgstr "SMS pensato HTTP" + +#: mfas/SMS/mfa.py:21 +msgid "Simple SMS sending MFA using HTTP" +msgstr "Semplice invio di SMS MFA tramite HTTP" + +#: mfas/SMS/mfa.py:26 +msgid "URL pattern for SMS sending" +msgstr "Pattern URL per l'invio di SMS" + +#: mfas/SMS/mfa.py:29 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"URL pattern for SMS sending. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"Pattern URL per l'invio di SMS. Può contenere le seguenti variabili: * " +"{code} - il codice da inviare * {phone/+phone} - il numero di telefono * " +"{username} - il nome utente * {justUsername} - il nome utente senza @...." + +#: mfas/SMS/mfa.py:37 mfas/SMS/mfa.py:43 mfas/SMS/mfa.py:56 mfas/SMS/mfa.py:75 +#: mfas/SMS/mfa.py:92 mfas/SMS/mfa.py:101 +msgid "HTTP Server" +msgstr "Server HTTP" + +#: mfas/SMS/mfa.py:41 +msgid "Ignore certificate errors" +msgstr "Ignora gli errori del certificato" + +#: mfas/SMS/mfa.py:46 +msgid "" +"If checked, the server certificate will be ignored. This is useful if the " +"server uses a self-signed certificate." +msgstr "" +"Se selezionato, il certificato del server verrà ignorato. Ciò è utile se il " +"server utilizza un certificato autofirmato." + +#: mfas/SMS/mfa.py:52 +msgid "SMS sending method" +msgstr "Metodo di invio SMS" + +#: mfas/SMS/mfa.py:54 mfas/SMS/mfa.py:108 +msgid "Method for sending SMS" +msgstr "Metodo per l'invio di SMS" + +#: mfas/SMS/mfa.py:63 +msgid "Headers for SMS requests" +msgstr "Intestazioni per richieste SMS" + +#: mfas/SMS/mfa.py:66 +msgid "" +"Headers for SMS requests. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @....\n" +"Headers are in the form of \"Header: Value\". (without the quotes)" +msgstr "" +"Intestazioni per richieste SMS. Può contenere le seguenti variabili: * " +"{code} - il codice da inviare * {phone/+phone} - il numero di telefono * " +"{username} - il nome utente * {justUsername} - il nome utente senza @.... Le " +"intestazioni sono in la forma di \"Intestazione: Valore\". (senza virgolette)" + +#: mfas/SMS/mfa.py:81 +msgid "Parameters for SMS POST/PUT sending" +msgstr "Parametri per l'invio di SMS POST/PUT" + +#: mfas/SMS/mfa.py:84 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"Parameters for SMS sending via POST/PUT. It can contain the following " +"variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"Parametri per l'invio di SMS tramite POST/PUT. Può contenere le seguenti " +"variabili: * {code} - il codice da inviare * {phone/+phone} - il numero di " +"telefono * {username} - il nome utente * {justUsername} - il nome utente " +"senza @...." + +#: mfas/SMS/mfa.py:96 +msgid "SMS encoding" +msgstr "Codifica SMS" + +#: mfas/SMS/mfa.py:99 +msgid "Encoding for SMS" +msgstr "Codifica per SMS" + +#: mfas/SMS/mfa.py:106 +msgid "SMS authentication method" +msgstr "Metodo di autenticazione SMS" + +#: mfas/SMS/mfa.py:110 mfas/SMS/mfa.py:124 mfas/SMS/mfa.py:133 +msgid "HTTP Authentication" +msgstr "Autenticazione HTTP" + +#: mfas/SMS/mfa.py:113 +msgid "HTTP Basic Auth" +msgstr "Autenticazione di base HTTP" + +#: mfas/SMS/mfa.py:114 +msgid "HTTP Digest Auth" +msgstr "Aut. digest HTTP" + +#: mfas/SMS/mfa.py:120 +msgid "SMS authentication user or token" +msgstr "Utente o token di autenticazione SMS" + +#: mfas/SMS/mfa.py:122 +msgid "User or token for SMS authentication" +msgstr "Utente o token per l'autenticazione SMS" + +#: mfas/SMS/mfa.py:129 +msgid "SMS authentication password" +msgstr "Password di autenticazione SMS" + +#: mfas/SMS/mfa.py:131 +msgid "Password for SMS authentication" +msgstr "Password per autenticazione SMS" + +#: mfas/SMS/mfa.py:138 +msgid "SMS response OK regex" +msgstr "Risposta SMS OK regex" + +#: mfas/SMS/mfa.py:141 +msgid "" +"Regex for SMS response OK. If emty, the response is considered OK if status " +"code is 200." +msgstr "" +"Regex per risposta SMS OK. Se emty, la risposta è considerata OK se il " +"codice di stato è 200." + +#: mfas/SMS/mfa.py:144 mfas/SMS/mfa.py:153 +msgid "HTTP Response" +msgstr "Risposta HTTP" + +#: mfas/SMS/mfa.py:148 +msgid "SMS response error action" +msgstr "Azione di errore di risposta SMS" + +#: mfas/SMS/mfa.py:151 +msgid "Action for SMS response error" +msgstr "Azione per errore di risposta SMS" + +#: mfas/SMS/mfa.py:155 +msgid "Allow user log in without MFA" +msgstr "Consenti l'accesso utente senza MFA" + +#: mfas/SMS/mfa.py:156 +msgid "Deny user log in" +msgstr "Nega l'accesso all'utente" + +#: mfas/SMS/mfa.py:199 +msgid "SMS sending failed" +msgstr "Invio SMS fallito" + +#: mfas/SMS/mfa.py:263 web/views/modern.py:275 +msgid "MFA Code" +msgstr "Codice AMF" + +#: mfas/Sample/mfa.py:16 +msgid "Sample Multi Factor" +msgstr "Campione multifattoriale" + +#: mfas/Sample/mfa.py:18 +msgid "Sample Multi Factor Authenticator" +msgstr "Esempio di autenticatore multifattoriale" + +#: mfas/Sample/mfa.py:22 +msgid "Sample useless field" +msgstr "Campione campo inutile" + +#: mfas/Sample/mfa.py:25 +msgid "This is a useless field, for sample and testing pourposes" +msgstr "Questo è un campo inutile, a scopo di campionamento e test" + #: models/calendar_action.py:63 msgid "Publish" msgstr "Pubblicazione" @@ -2859,7 +3249,7 @@ msgid "Service pool for report" msgstr "Pool di servizi per report" #: reports/auto/fields.py:104 reports/lists/users.py:61 -#: web/forms/LoginForm.py:50 +#: web/forms/LoginForm.py:51 msgid "Authenticator" msgstr "Autenticatore" @@ -2911,11 +3301,11 @@ msgstr "ID utente" msgid "Real Name" msgstr "Nome reale" -#: reports/stats/auth_stats.py:58 +#: reports/stats/auth_stats.py:59 msgid "Statistics by authenticator" msgstr "Statistiche per autenticatore" -#: reports/stats/auth_stats.py:60 +#: reports/stats/auth_stats.py:61 msgid "" "Generates a report with the statistics of an authenticator for a desired " "period" @@ -2923,14 +3313,14 @@ msgstr "" "Genera un report con le statistiche di un autenticatore per un periodo " "desiderato" -#: reports/stats/auth_stats.py:136 reports/stats/usage_by_pool.py:146 +#: reports/stats/auth_stats.py:123 reports/stats/usage_by_pool.py:146 #: templates/uds/reports/stats/authenticator_stats.html:4 #: templates/uds/reports/stats/usage-by-pool.html:4 #: templates/uds/reports/stats/usage-by-pool.html:6 msgid "Users usage list" msgstr "Elenco di utilizzo degli utenti" -#: reports/stats/auth_stats.py:137 reports/stats/usage_by_pool.py:147 +#: reports/stats/auth_stats.py:124 reports/stats/usage_by_pool.py:147 msgid "UDS Report of users usage" msgstr "Rapporto di UDS sull'utilizzo per utente" @@ -3004,30 +3394,26 @@ msgstr "Numero di intervalli" msgid "Number of sampling points used in charts" msgstr "Numero di punti di campionamento utilizzati nei grafici" -#: reports/stats/pools_performance.py:128 -msgid "Select at least a service pool for the report" -msgstr "Selezionare almeno un pool di servizi per il rapporto" - -#: reports/stats/pools_performance.py:211 +#: reports/stats/pools_performance.py:194 msgid "Distinct Users" msgstr "Utenti distinti" -#: reports/stats/pools_performance.py:230 -#: reports/stats/pools_performance.py:242 -#: reports/stats/pools_performance.py:287 +#: reports/stats/pools_performance.py:213 +#: reports/stats/pools_performance.py:225 +#: reports/stats/pools_performance.py:270 #: templates/uds/reports/stats/pools-performance.html:36 msgid "Accesses" msgstr "Accessi" -#: reports/stats/pools_performance.py:258 +#: reports/stats/pools_performance.py:241 msgid "UDS Pools Performance Report" msgstr "Rapporto prestazioni per UDS Pool" -#: reports/stats/pools_performance.py:259 +#: reports/stats/pools_performance.py:242 msgid "Pools Performance" msgstr "Prestazioni dei pool" -#: reports/stats/pools_performance.py:285 reports/stats/user_access.py:297 +#: reports/stats/pools_performance.py:268 reports/stats/user_access.py:282 #: templates/uds/reports/stats/pools-performance.html:34 #: templates/uds/reports/stats/user-access.html:34 msgid "Date range" @@ -3041,21 +3427,21 @@ msgstr "Utilizzo dei pool in un giorno" msgid "Pools usage counters for an specific day" msgstr "Contatori di utilizzo dei pool per un giorno specifico" -#: reports/stats/pools_usage_day.py:128 +#: reports/stats/pools_usage_day.py:126 msgid "Services by hour" msgstr "Servizi per ora" -#: reports/stats/pools_usage_day.py:133 reports/stats/pools_usage_day.py:171 -#: reports/stats/user_access.py:228 reports/stats/user_access.py:240 +#: reports/stats/pools_usage_day.py:131 reports/stats/pools_usage_day.py:169 +#: reports/stats/user_access.py:213 reports/stats/user_access.py:225 #: templates/uds/reports/stats/pools-usage-day.html:28 msgid "Hour" msgstr "Ora" -#: reports/stats/pools_usage_day.py:152 +#: reports/stats/pools_usage_day.py:150 msgid "Services usage report for a day" msgstr "Rapporto sull'utilizzo dei servizi per un giorno" -#: reports/stats/pools_usage_day.py:153 +#: reports/stats/pools_usage_day.py:151 msgid "Service usage report" msgstr "Rapporto sull'utilizzo del servizio" @@ -3123,63 +3509,63 @@ msgstr "TUTTI I POOL" msgid "Seconds" msgstr "Secondi" -#: reports/stats/user_access.py:59 reports/stats/user_access.py:281 +#: reports/stats/user_access.py:59 reports/stats/user_access.py:266 msgid "Users access report by date" msgstr "Raporto degli accessi utente per data" -#: reports/stats/user_access.py:60 reports/stats/user_access.py:282 +#: reports/stats/user_access.py:60 reports/stats/user_access.py:267 msgid "Report of user access to platform by date" msgstr "Rapporto di accesso utente alla piattaforma per data" -#: reports/stats/user_access.py:186 +#: reports/stats/user_access.py:171 msgid "Users Access (global)" msgstr "Accesso utenti (globale)" -#: reports/stats/user_access.py:206 +#: reports/stats/user_access.py:191 msgid "Users Access (by week)" msgstr "Accesso utenti (per settimana)" -#: reports/stats/user_access.py:209 reports/stats/user_access.py:245 +#: reports/stats/user_access.py:194 reports/stats/user_access.py:230 msgid "Monday" msgstr "Lunedi" -#: reports/stats/user_access.py:210 reports/stats/user_access.py:246 +#: reports/stats/user_access.py:195 reports/stats/user_access.py:231 msgid "Tuesday" msgstr "Martedì" -#: reports/stats/user_access.py:211 reports/stats/user_access.py:247 +#: reports/stats/user_access.py:196 reports/stats/user_access.py:232 msgid "Wednesday" msgstr "Mercoledì" -#: reports/stats/user_access.py:212 reports/stats/user_access.py:248 +#: reports/stats/user_access.py:197 reports/stats/user_access.py:233 msgid "Thursday" msgstr "Giovedi" -#: reports/stats/user_access.py:213 reports/stats/user_access.py:249 +#: reports/stats/user_access.py:198 reports/stats/user_access.py:234 msgid "Friday" msgstr "Venerdì" -#: reports/stats/user_access.py:214 reports/stats/user_access.py:250 +#: reports/stats/user_access.py:199 reports/stats/user_access.py:235 msgid "Saturday" msgstr "Sabato" -#: reports/stats/user_access.py:215 reports/stats/user_access.py:251 +#: reports/stats/user_access.py:200 reports/stats/user_access.py:236 msgid "Sunday" msgstr "Domenica" -#: reports/stats/user_access.py:217 reports/stats/user_access.py:243 +#: reports/stats/user_access.py:202 reports/stats/user_access.py:228 msgid "Day of week" msgstr "Giorno della settimana" -#: reports/stats/user_access.py:226 reports/stats/user_access.py:238 +#: reports/stats/user_access.py:211 reports/stats/user_access.py:223 msgid "Users Access (by hour)" msgstr "Accesso utenti (per ora)" -#: reports/stats/user_access.py:267 +#: reports/stats/user_access.py:252 msgid "Users access to UDS" msgstr "Accesso utenti a UDS" -#: reports/stats/user_access.py:268 +#: reports/stats/user_access.py:253 msgid "UDS Report for users access" msgstr "Rapporto UDS per l'accesso degli utenti" @@ -4425,12 +4811,12 @@ msgstr "Static IP Machines Provider" msgid "Provides connection to machines by IP" msgstr "Fornisce la connessione alle macchine tramite IP" -#: services/PhysicalMachines/service_multi.py:64 +#: services/PhysicalMachines/service_multi.py:62 #: services/Vmware_enterprise/service_fixed.py:55 msgid "Service Token" msgstr "Token di servizio" -#: services/PhysicalMachines/service_multi.py:67 +#: services/PhysicalMachines/service_multi.py:65 #: services/Vmware_enterprise/service_fixed.py:57 msgid "" "Service token that will be used by actors to communicate with service. Leave " @@ -4439,41 +4825,41 @@ msgstr "" "Token di servizio che verrà utilizzato dagli Actor per comunicare con il " "servizio. Lasciare vuoto per assegnazione persistente." -#: services/PhysicalMachines/service_multi.py:75 +#: services/PhysicalMachines/service_multi.py:73 #: services/RDS_enterprise/provider.py:51 msgid "List of servers" msgstr "Elenco dei server" -#: services/PhysicalMachines/service_multi.py:76 +#: services/PhysicalMachines/service_multi.py:74 msgid "List of servers available for this service" msgstr "Elenco dei server disponibili per questo servizio" -#: services/PhysicalMachines/service_multi.py:81 +#: services/PhysicalMachines/service_multi.py:79 msgid "Check Port" msgstr "Verifica la porta" -#: services/PhysicalMachines/service_multi.py:85 +#: services/PhysicalMachines/service_multi.py:83 msgid "" "If non zero, only hosts responding to connection on that port will be served." msgstr "" "Se diverso da zero, verranno serviti solo gli host che rispondono alla " "connessione su quella porta." -#: services/PhysicalMachines/service_multi.py:92 +#: services/PhysicalMachines/service_multi.py:90 msgid "Skip time" msgstr "Salta il tempo" -#: services/PhysicalMachines/service_multi.py:95 +#: services/PhysicalMachines/service_multi.py:93 msgid "If a host fails to check, skip it for this time (in minutes)." msgstr "" "Se un host non riesce ad effettuare il controllo, lo salta per questo tempo " "(in minuti)." -#: services/PhysicalMachines/service_multi.py:103 +#: services/PhysicalMachines/service_multi.py:101 msgid "Max session per machine" msgstr "Sessione massima per macchina" -#: services/PhysicalMachines/service_multi.py:107 +#: services/PhysicalMachines/service_multi.py:105 msgid "" "Maximum session duration before UDS thinks this machine got locked and " "releases it (hours). 0 means \"never\"." @@ -4481,26 +4867,26 @@ msgstr "" "Durata massima della sessione prima che UDS ritenga che questa macchina sia " "stata bloccata e la rilasci (ore). 0 significa \"mai\"." -#: services/PhysicalMachines/service_multi.py:114 +#: services/PhysicalMachines/service_multi.py:112 msgid "Lock machine by external access" msgstr "Bloccare la macchina tramite accesso esterno" -#: services/PhysicalMachines/service_multi.py:115 +#: services/PhysicalMachines/service_multi.py:113 msgid "" "If checked, UDS will lock the machine if it is accesed from outside UDS." msgstr "" "Se selezionato, UDS bloccherà la macchina se vi si accede dall'esterno " "di UDS." -#: services/PhysicalMachines/service_multi.py:122 +#: services/PhysicalMachines/service_multi.py:120 msgid "Static Multiple IP" msgstr "IP statico multiplo" -#: services/PhysicalMachines/service_multi.py:124 +#: services/PhysicalMachines/service_multi.py:122 msgid "This service provides access to POWERED-ON Machines by IP" msgstr "Questo servizio fornisce l'accesso ai computer POWERED-ON tramite IP" -#: services/PhysicalMachines/service_multi.py:158 +#: services/PhysicalMachines/service_multi.py:156 msgid "Invalid value detected on servers list: \"{}\"" msgstr "Rilevato valore non valido nell'elenco dei server: \"{}\"" @@ -5398,47 +5784,47 @@ msgstr "Shadow" msgid "Shadow memory multiplier (use with care)" msgstr "Moltiplicatore di memoria shadow (usare con cura)" -#: temp_for_locales.py:96 +#: temp_for_locales.py:99 msgid "Spanish" msgstr "Spagnolo" -#: temp_for_locales.py:97 +#: temp_for_locales.py:100 msgid "English" msgstr "Inglese" -#: temp_for_locales.py:98 +#: temp_for_locales.py:101 msgid "French" msgstr "Francese" -#: temp_for_locales.py:99 +#: temp_for_locales.py:102 msgid "German" msgstr "Tedesco" -#: temp_for_locales.py:100 +#: temp_for_locales.py:103 msgid "Portuguese" msgstr "Portoghese" -#: temp_for_locales.py:101 +#: temp_for_locales.py:104 msgid "Italian" msgstr "Italiano" -#: temp_for_locales.py:102 +#: temp_for_locales.py:105 msgid "Basque" msgstr "Basco" -#: temp_for_locales.py:103 +#: temp_for_locales.py:106 msgid "Arabic" msgstr "Arabo" -#: temp_for_locales.py:104 +#: temp_for_locales.py:107 msgid "Russian" msgstr "Russo" -#: temp_for_locales.py:105 +#: temp_for_locales.py:108 msgid "Catalan" msgstr "Catalano" -#: temp_for_locales.py:106 +#: temp_for_locales.py:109 msgid "Chinese" msgstr "Cinese" @@ -5647,7 +6033,7 @@ msgstr "Mostra sfondo" #: transports/HTML5RDP/html5rdp.py:134 #: transports/HTML5RDS_enterprise/html5rds.py:123 -#: transports/RDP/rdp_base.py:222 +#: transports/RDP/rdp_base.py:241 msgid "" "If checked, the wallpaper and themes will be shown on machine (better user " "experience, more bandwidth)" @@ -5657,19 +6043,19 @@ msgstr "" #: transports/HTML5RDP/html5rdp.py:139 #: transports/HTML5RDS_enterprise/html5rds.py:128 -#: transports/RDP/rdp_base.py:235 +#: transports/RDP/rdp_base.py:254 msgid "Allow Desk.Comp." msgstr "Consenti Desk.Comp." #: transports/HTML5RDP/html5rdp.py:141 #: transports/HTML5RDS_enterprise/html5rds.py:130 -#: transports/RDP/rdp_base.py:237 +#: transports/RDP/rdp_base.py:256 msgid "If checked, desktop composition will be allowed" msgstr "Se selezionato, la composizione desktop sarà consentita" #: transports/HTML5RDP/html5rdp.py:145 #: transports/HTML5RDS_enterprise/html5rds.py:134 -#: transports/RDP/rdp_base.py:241 transports/RDS_enterprise/rds_base.py:150 +#: transports/RDP/rdp_base.py:260 transports/RDS_enterprise/rds_base.py:150 msgid "Font Smoothing" msgstr "Font Smoothing" @@ -5932,11 +6318,6 @@ msgstr "Forza l'apertura di ogni connessione in una nuova finestra." msgid "Override UDS window and replace it with the connection." msgstr "Ignora la finestra UDS e sostituiscila con la connessione." -#: transports/HTML5RDP/html5rdp.py:268 -#: transports/HTML5RDS_enterprise/html5rds.py:255 -msgid "Security" -msgstr "Sicurezza" - #: transports/HTML5RDP/html5rdp.py:269 #: transports/HTML5RDS_enterprise/html5rds.py:256 msgid "Connection security mode for Guacamole RDP connection" @@ -5976,11 +6357,11 @@ msgstr "" msgid "TLS (Transport Security Layer encryption)" msgstr "Crittografia TLS (Transport Security Layer)" -#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:173 +#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:192 msgid "RDP Port" msgstr "Porta RDP" -#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:174 +#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:193 msgid "Use this port as RDP port. Defaults to 3389." msgstr "Usa questa porta come porta RDP. Il valore predefinito è 3389." @@ -5998,13 +6379,13 @@ msgstr "" "Percorso personalizzato per il tunnel Glyptodon Enterprise. (Valido solo per " "Glyptodon Enterprise Tunnel)" -#: transports/HTML5RDP/html5rdp.py:327 +#: transports/HTML5RDP/html5rdp.py:326 #: transports/HTML5RDS_enterprise/html5rds.py:296 #: transports/HTML5VNC/html5vnc.py:187 msgid "The server must be http or https" msgstr "Il server deve essere http o https" -#: transports/HTML5RDP/html5rdp.py:332 +#: transports/HTML5RDP/html5rdp.py:331 #: transports/HTML5RDS_enterprise/html5rds.py:301 msgid "" "Empty credentials (on Credentials tab) is only allowed with Security level " @@ -6045,7 +6426,7 @@ msgstr "Porta del server VNC" msgid "Port of the VNC server." msgstr "Porta del server VNC." -#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:205 +#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:224 #: transports/RDS_enterprise/rds_base.py:136 msgid "Color depth" msgstr "Profondità di colore" @@ -6102,12 +6483,12 @@ msgstr "" "Se selezionato, la connessione verrà aperta in modalità a schermo intero" #: transports/NICEDCV_enterprise/nicedcv_base.py:66 -#: transports/RDP/rdp_base.py:227 +#: transports/RDP/rdp_base.py:246 msgid "Multiple monitors" msgstr "Monitor multipli" #: transports/NICEDCV_enterprise/nicedcv_base.py:69 -#: transports/RDP/rdp_base.py:230 +#: transports/RDP/rdp_base.py:249 msgid "" "If checked, all client monitors will be used for displaying (only works on " "windows clients)" @@ -6163,7 +6544,7 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcvtunnel.py:91 #: transports/NoMachine_enterprise/nomachine_tunneltransport.py:114 -#: transports/RDP/rdptunnel.py:135 transports/RDS_enterprise/rdstunnel.py:126 +#: transports/RDP/rdptunnel.py:136 transports/RDS_enterprise/rdstunnel.py:126 #: transports/SPICE/spice_tunnel.py:107 transports/X2GO/x2go_tunnel.py:116 msgid "Must use HOST:PORT in Tunnel Server Field" msgstr "Occorre usare il formato HOST: PORT nel campo Tunnel Server" @@ -6302,93 +6683,101 @@ msgstr "Abilita webcam" msgid "If checked, webcam will be redirected (ONLY Windows)." msgstr "Se selezionato, la webcam verrà reindirizzata (SOLO Windows)." -#: transports/RDP/rdp_base.py:164 transports/RDS_enterprise/rds_base.py:128 +#: transports/RDP/rdp_base.py:164 +msgid "USB redirection" +msgstr "Reindirizzamento USB" + +#: transports/RDP/rdp_base.py:166 +msgid "USB redirection policy" +msgstr "Politica di reindirizzamento USB" + +#: transports/RDP/rdp_base.py:183 transports/RDS_enterprise/rds_base.py:128 msgid "Credssp Support" msgstr "Supporto Credssp" -#: transports/RDP/rdp_base.py:166 transports/RDS_enterprise/rds_base.py:130 +#: transports/RDP/rdp_base.py:185 transports/RDS_enterprise/rds_base.py:130 msgid "If checked, will enable Credentials Provider Support)" msgstr "" "Se selezionato, abiliterà il protocollo CredSSP (Credential Security Support " "Provider)" -#: transports/RDP/rdp_base.py:181 +#: transports/RDP/rdp_base.py:200 msgid "Screen Size" msgstr "Dimensione dello schermo" -#: transports/RDP/rdp_base.py:183 +#: transports/RDP/rdp_base.py:202 msgid "Screen size for this transport" msgstr "Dimensioni dello schermo per questo trasporto" -#: transports/RDP/rdp_base.py:207 transports/RDS_enterprise/rds_base.py:138 +#: transports/RDP/rdp_base.py:226 transports/RDS_enterprise/rds_base.py:138 msgid "Color depth for this connection" msgstr "Profondità del colore per questa connessione" -#: transports/RDP/rdp_base.py:219 +#: transports/RDP/rdp_base.py:238 msgid "Wallpaper/theme" msgstr "Sfondo/tema" -#: transports/RDP/rdp_base.py:244 +#: transports/RDP/rdp_base.py:263 msgid "If checked, fonts smoothing will be allowed" msgstr "Se selezionato, sarà consentita la smussatura dei caratteri" -#: transports/RDP/rdp_base.py:248 +#: transports/RDP/rdp_base.py:267 msgid "Connection Bar" msgstr "Barra di connessione" -#: transports/RDP/rdp_base.py:250 +#: transports/RDP/rdp_base.py:269 msgid "If checked, connection bar will be shown (only on Windows clients)" msgstr "" "Se selezionato, verrà mostrata la barra di connessione (solo su client " "Windows)" -#: transports/RDP/rdp_base.py:256 transports/RDS_enterprise/rds_base.py:181 +#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:181 msgid "Multimedia sync" msgstr "Sincronizzazione multimediale" -#: transports/RDP/rdp_base.py:259 transports/RDS_enterprise/rds_base.py:184 +#: transports/RDP/rdp_base.py:278 transports/RDS_enterprise/rds_base.py:184 msgid "If checked. Linux client will use multimedia parameter for xfreerdp" msgstr "" "Se selezionato. Il client Linux utilizzerà i parametri multimediali per " "xfreerdp" -#: transports/RDP/rdp_base.py:264 transports/RDS_enterprise/rds_base.py:189 +#: transports/RDP/rdp_base.py:283 transports/RDS_enterprise/rds_base.py:189 msgid "Use Alsa" msgstr "Usa Alsa" -#: transports/RDP/rdp_base.py:267 transports/RDS_enterprise/rds_base.py:192 +#: transports/RDP/rdp_base.py:286 transports/RDS_enterprise/rds_base.py:192 msgid "" "If checked, Linux client will try to use ALSA, otherwise Pulse will be used" msgstr "" "Se selezionato, il client Linux proverà ad usare ALSA, altrimenti verrà " "utilizzato Pulse" -#: transports/RDP/rdp_base.py:272 transports/RDS_enterprise/rds_base.py:197 +#: transports/RDP/rdp_base.py:291 transports/RDS_enterprise/rds_base.py:197 msgid "Printer string" msgstr "Stringa della stampante" -#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:200 +#: transports/RDP/rdp_base.py:294 transports/RDS_enterprise/rds_base.py:200 msgid "If printer is checked, the printer string used with xfreerdp client" msgstr "" "Se la stampante è selezionata, la stringa della stampante viene utilizzata " "con il client xfreerdp" -#: transports/RDP/rdp_base.py:281 transports/RDS_enterprise/rds_base.py:206 +#: transports/RDP/rdp_base.py:300 transports/RDS_enterprise/rds_base.py:206 msgid "Smartcard string" msgstr "Stringa della smartcard" -#: transports/RDP/rdp_base.py:284 transports/RDS_enterprise/rds_base.py:209 +#: transports/RDP/rdp_base.py:303 transports/RDS_enterprise/rds_base.py:209 msgid "If smartcard is checked, the smartcard string used with xfreerdp client" msgstr "" "Se la smartcard è selezionata, la stringa della smartcard viene utilizzata " "con il client xfreerdp" -#: transports/RDP/rdp_base.py:290 transports/RDP/rdp_base.py:310 +#: transports/RDP/rdp_base.py:309 transports/RDP/rdp_base.py:329 #: transports/RDS_enterprise/rds_base.py:215 msgid "Custom parameters" msgstr "Parametri personalizzati" -#: transports/RDP/rdp_base.py:293 transports/RDS_enterprise/rds_base.py:218 +#: transports/RDP/rdp_base.py:312 transports/RDS_enterprise/rds_base.py:218 msgid "" "If not empty, extra parameter to include for Linux Client (for example /usb:" "id,dev:054c:0268, or aything compatible with your xfreerdp client)" @@ -6396,11 +6785,11 @@ msgstr "" "Se non vuoto, parametro extra da includere per client Linux (per esempio /" "usb i, dev:054c:0268, o altro compatibile con il tuo client xfreerdp)" -#: transports/RDP/rdp_base.py:300 +#: transports/RDP/rdp_base.py:319 msgid "Allow Microsoft Rdp Client" msgstr "Consenti client Microsoft Rdp" -#: transports/RDP/rdp_base.py:303 +#: transports/RDP/rdp_base.py:322 msgid "" "If checked, allows use of Microsoft Remote Desktop Client. PASSWORD WILL BE " "PROMPTED!" @@ -6408,7 +6797,7 @@ msgstr "" "Se selezionato, consente l'utilizzo di Microsoft Remote Desktop Client. " "LA PASSWORD SARÀ RICHIESTA!" -#: transports/RDP/rdp_base.py:313 +#: transports/RDP/rdp_base.py:332 msgid "" "If not empty, extra parameter to include for Mac OS X Freerdp Client (for " "example /usb:id,dev:054c:0268, or aything compatible with your xfreerdp " @@ -6663,74 +7052,74 @@ msgstr "Troppi errori di autenticazione. Utente temporaneamente bloccato" msgid "Access tried from an unallowed source" msgstr "Accesso tentato da una fonte non consentita" -#: web/util/authentication.py:155 +#: web/util/authentication.py:158 msgid "Invalid data" msgstr "Dati non validi" -#: web/util/configjs.py:170 +#: web/util/configjs.py:163 msgid "Access limited by calendar" msgstr "Accesso limitato dal calendario" -#: web/util/configjs.py:226 +#: web/util/configjs.py:222 msgid "Windows client" msgstr "Client Windows" -#: web/util/configjs.py:230 +#: web/util/configjs.py:226 msgid "Mac OS X client" msgstr "Client Mac OS X." -#: web/util/configjs.py:233 +#: web/util/configjs.py:229 msgid "Debian based Linux client" msgstr "Client Linux basato su Debian" -#: web/util/configjs.py:235 web/util/configjs.py:243 web/util/configjs.py:263 +#: web/util/configjs.py:231 web/util/configjs.py:239 web/util/configjs.py:259 msgid "(requires Python-3.6 or newer)" msgstr "(richiede Python-3.6 o successivo)" -#: web/util/configjs.py:241 +#: web/util/configjs.py:237 msgid "RPM based Linux client (Fedora, Suse, ...)" msgstr "Client Linux basato su RPM (Fedora, Suse, ...)" -#: web/util/configjs.py:249 +#: web/util/configjs.py:245 msgid "Binary appimage X86_64 Linux client" msgstr "Immagine app binaria X86_64 Client Linux" -#: web/util/configjs.py:255 +#: web/util/configjs.py:251 msgid "Binary appimage Raspberry Linux client" msgstr "Immagine app binaria Client Linux Raspberry" -#: web/util/configjs.py:261 +#: web/util/configjs.py:257 msgid "Generic .tar.gz Linux client" msgstr "Client Linux .tar.gz generico" -#: web/util/errors.py:76 +#: web/util/errors.py:78 msgid "Unknown error" msgstr "Errore sconosciuto" -#: web/util/errors.py:83 +#: web/util/errors.py:85 msgid "Maximum services limit reached. Please, contact administrator" msgstr "" "Limite massimo dei servizi raggiunto. Per favore, contatta l'amministratore" -#: web/util/errors.py:84 +#: web/util/errors.py:86 msgid "You need to enable cookies to let this application work" msgstr "" "È necessario abilitare i cookie per consentire a questa applicazione di " "funzionare" -#: web/util/errors.py:86 +#: web/util/errors.py:88 msgid "Authenticator not found" msgstr "Autenticatore non trovato" -#: web/util/errors.py:87 +#: web/util/errors.py:89 msgid "Invalid authenticator" msgstr "Autenticatore non valido" -#: web/util/errors.py:88 +#: web/util/errors.py:90 msgid "Invalid request received" msgstr "Richiesta non valida ricevuta" -#: web/util/errors.py:90 +#: web/util/errors.py:92 msgid "" "Your browser is not supported. Please, upgrade it to a modern HTML5 browser " "like Firefox or Chrome" @@ -6738,39 +7127,43 @@ msgstr "" "Il tuo browser non è supportato. Per favore, aggiornalo a un browser HTML5 " "più recente, come Firefox o Chrome" -#: web/util/errors.py:92 +#: web/util/errors.py:94 msgid "The requested service is in maintenance mode" msgstr "Il servizio richiesto è in modalità manutenzione" -#: web/util/errors.py:93 +#: web/util/errors.py:95 msgid "" "The service is not ready.\n" "Please, try again in a few moments." msgstr "Il servizio non è pronto. Riprova tra qualche istante." -#: web/util/errors.py:94 +#: web/util/errors.py:96 msgid "Preparing service" msgstr "Preparazione del servizio" -#: web/util/errors.py:95 +#: web/util/errors.py:97 msgid "Service access denied by calendars" msgstr "Accesso al servizio non autorizzato da calendario" -#: web/util/errors.py:96 +#: web/util/errors.py:98 msgid "Page not found" msgstr "Pagina non trovata" -#: web/util/errors.py:97 +#: web/util/errors.py:99 msgid "Unexpected error" msgstr "Errore inaspettato" -#: web/util/errors.py:98 +#: web/util/errors.py:100 msgid "" "Reloading this page is not supported. Please, reopen service from origin." msgstr "" "Il ricaricamento di questa pagina non è supportato. Si prega di riaprire il " "servizio dall'origine." +#: web/util/errors.py:101 +msgid "Invalid Multi-Factor Authentication code" +msgstr "Codice di autenticazione a più fattori non valido" + #: web/util/services.py:319 msgid "" "This service is about to be replaced by a new version. Please, close the " @@ -6792,6 +7185,14 @@ msgstr "" "Il tuo servizio è in fase di creazione, per favore, attendi qualche secondo " "mentre viene completato.)" -#: web/views/auth.py:177 +#: web/views/auth.py:189 msgid "Authenticator does not provide information" msgstr "Autenticatore non fornisce informazioni" + +#: web/views/modern.py:269 +msgid "{} days" +msgstr "{} giorni" + +#: web/views/modern.py:271 +msgid "{} hours" +msgstr "{} ore" diff --git a/server/src/uds/locale/it/LC_MESSAGES/djangojs.po b/server/src/uds/locale/it/LC_MESSAGES/djangojs.po index 739a3c08..441be9be 100644 --- a/server/src/uds/locale/it/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/it/LC_MESSAGES/djangojs.po @@ -13,16 +13,17 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-10 13:33+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:16+0000\n" +"Last-Translator: Víctor Alonso , 2020\n" "Language-Team: Italian (http://www.transifex.com/openuds/openuds/language/" "it/)\n" "Language: it\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" +"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? " +"1 : 2;\n" #: static/admin/main.js:1 static/admin/translations-fakejs.js:23 #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:12 @@ -35,14 +36,14 @@ msgstr "Principale" #: static/admin/main.js:1 static/admin/translations-fakejs.js:11 #: static/admin/translations-fakejs.js:29 -#: static/admin/translations-fakejs.js:179 -#: static/admin/translations-fakejs.js:191 -#: static/admin/translations-fakejs.js:193 -#: static/admin/translations-fakejs.js:195 -#: static/admin/translations-fakejs.js:197 -#: static/admin/translations-fakejs.js:254 -#: static/admin/translations-fakejs.js:256 -#: static/admin/translations-fakejs.js:258 static/modern/main-es5.js:1 +#: static/admin/translations-fakejs.js:141 +#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:216 +#: static/admin/translations-fakejs.js:218 +#: static/admin/translations-fakejs.js:220 static/modern/main-es5.js:1 #: static/modern/translations-fakejs.js:14 msgid "Error" msgstr "Errore" @@ -69,12 +70,12 @@ msgstr "Caricamento dati..." #: static/admin/translations-fakejs.js:38 #: static/admin/translations-fakejs.js:40 #: static/admin/translations-fakejs.js:43 -#: static/admin/translations-fakejs.js:134 -#: static/admin/translations-fakejs.js:216 -#: static/admin/translations-fakejs.js:221 -#: static/admin/translations-fakejs.js:253 -#: static/admin/translations-fakejs.js:261 -#: static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:96 +#: static/admin/translations-fakejs.js:178 +#: static/admin/translations-fakejs.js:183 +#: static/admin/translations-fakejs.js:215 +#: static/admin/translations-fakejs.js:223 +#: static/admin/translations-fakejs.js:228 msgid "dismiss" msgstr "chiudi" @@ -91,7 +92,7 @@ msgid "Test passed successfully" msgstr "Test superato con successo" #: static/admin/main.js:1 static/admin/translations-fakejs.js:37 -#: static/admin/translations-fakejs.js:260 +#: static/admin/translations-fakejs.js:222 msgid "Successfully saved" msgstr "Salvato con successo" @@ -147,58 +148,58 @@ msgstr "gruppo di pool" msgid "Go to" msgstr "Vai a" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:275 msgid "yes" msgstr "sì" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:276 msgid "no" msgstr "no" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:269 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 msgid "Error saving: " msgstr "Errore durante il salvataggio:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:270 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 msgid "Error saving element" msgstr "Errore durante il salvataggio dell'elemento" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:271 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:274 msgid "Error handling your request" msgstr "Errore durante la gestione della tua richiesta" #: static/admin/main.js:1 static/admin/translations-fakejs.js:56 -#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:115 msgid "Sunday" msgstr "Domenica" #: static/admin/main.js:1 static/admin/translations-fakejs.js:57 -#: static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:116 msgid "Monday" msgstr "Lunedì" #: static/admin/main.js:1 static/admin/translations-fakejs.js:58 -#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:117 msgid "Tuesday" msgstr "Martedì" #: static/admin/main.js:1 static/admin/translations-fakejs.js:59 -#: static/admin/translations-fakejs.js:156 +#: static/admin/translations-fakejs.js:118 msgid "Wednesday" msgstr "Mercoledì" #: static/admin/main.js:1 static/admin/translations-fakejs.js:60 -#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:119 msgid "Thursday" msgstr "Giovedì" #: static/admin/main.js:1 static/admin/translations-fakejs.js:61 -#: static/admin/translations-fakejs.js:158 +#: static/admin/translations-fakejs.js:120 msgid "Friday" msgstr "Venerdì" #: static/admin/main.js:1 static/admin/translations-fakejs.js:62 -#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:121 msgid "Saturday" msgstr "Sabato" @@ -270,20 +271,20 @@ msgstr "#SERVICES_NUMBER# servizi utente" msgid "#RESTRAINED_NUMBER# restrained services!" msgstr "#RESTRAINED_NUMBER# servizi limitati!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 -#: static/admin/translations-fakejs.js:249 -#: static/admin/translations-fakejs.js:402 -#: static/admin/translations-fakejs.js:454 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:211 +#: static/admin/translations-fakejs.js:265 +#: static/admin/translations-fakejs.js:366 +#: static/admin/translations-fakejs.js:418 msgid "Assigned services" msgstr "Servizi assegnati" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 msgid "Services in use" msgstr "Servizi in uso" #: static/admin/main.js:1 static/admin/translations-fakejs.js:21 -#: static/admin/translations-fakejs.js:292 -#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:303 #: static/modern/translations-fakejs.js:30 msgid "Filter" msgstr "Filtro" @@ -301,25 +302,25 @@ msgid "Full Access" msgstr "Accesso completo" #: static/admin/main.js:1 static/admin/translations-fakejs.js:15 -#: static/admin/translations-fakejs.js:362 -#: static/admin/translations-fakejs.js:409 -#: static/admin/translations-fakejs.js:414 +#: static/admin/translations-fakejs.js:373 +#: static/admin/translations-fakejs.js:378 +#: static/admin/translations-fakejs.js:489 msgid "User" msgstr "Utente" #: static/admin/main.js:1 static/admin/translations-fakejs.js:16 -#: static/admin/translations-fakejs.js:83 -#: static/admin/translations-fakejs.js:93 -#: static/admin/translations-fakejs.js:427 -#: static/admin/translations-fakejs.js:448 +#: static/admin/translations-fakejs.js:243 +#: static/admin/translations-fakejs.js:253 +#: static/admin/translations-fakejs.js:391 +#: static/admin/translations-fakejs.js:412 msgid "Group" msgstr "Gruppo" #: static/admin/main.js:1 static/admin/translations-fakejs.js:17 -#: static/admin/translations-fakejs.js:408 -#: static/admin/translations-fakejs.js:413 -#: static/admin/translations-fakejs.js:426 -#: static/admin/translations-fakejs.js:447 +#: static/admin/translations-fakejs.js:372 +#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:390 +#: static/admin/translations-fakejs.js:411 #: static/modern/translations-fakejs.js:72 msgid "Authenticator" msgstr "Autenticatore" @@ -336,89 +337,89 @@ msgstr "Rimuovi" msgid "Confirm revokation of permission" msgstr "Conferma la revoca dell'autorizzazione" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:238 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 msgid "Maintenance" msgstr "Manutenzione" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 msgid "Exit maintenance mode" msgstr "Uscire dalla modalità di manutenzione" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 msgid "Enter maintenance mode" msgstr "Entra in modalità manutenzione" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 msgid "New provider" msgstr "Nuovo Provider" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 msgid "Edit provider" msgstr "Modifica Provider" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:243 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 msgid "Delete provider" msgstr "Elimina Provider" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 msgid "Exit maintenance mode?" msgstr "Uscire dalla modalità di manutenzione?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 msgid "Enter maintenance mode?" msgstr "Entra in modalità manutenzione?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 msgid "Maintenance mode for" msgstr "Modalità di manutenzione per" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 -#: static/admin/translations-fakejs.js:247 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:209 +#: static/admin/translations-fakejs.js:232 msgid "In Maintenance" msgstr "In manutenzione" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 -#: static/admin/translations-fakejs.js:248 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/translations-fakejs.js:233 msgid "Active" msgstr "Attivo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 -#: static/admin/translations-fakejs.js:95 -#: static/admin/translations-fakejs.js:229 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:191 +#: static/admin/translations-fakejs.js:236 +#: static/admin/translations-fakejs.js:255 msgid "Pool" msgstr "Pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 -#: static/admin/translations-fakejs.js:96 -#: static/admin/translations-fakejs.js:230 -#: static/admin/translations-fakejs.js:343 -#: static/admin/translations-fakejs.js:355 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 +#: static/admin/translations-fakejs.js:237 +#: static/admin/translations-fakejs.js:256 +#: static/admin/translations-fakejs.js:470 +#: static/admin/translations-fakejs.js:482 msgid "State" msgstr "Stato" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 -#: static/admin/translations-fakejs.js:97 -#: static/admin/translations-fakejs.js:231 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:193 +#: static/admin/translations-fakejs.js:238 +#: static/admin/translations-fakejs.js:257 msgid "User Services" msgstr "Servizi utente" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 -#: static/admin/translations-fakejs.js:232 -#: static/admin/translations-fakejs.js:321 -#: static/admin/translations-fakejs.js:401 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:194 +#: static/admin/translations-fakejs.js:248 +#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:365 msgid "Service pools" msgstr "Pool di servizi" #: static/admin/main.js:1 static/admin/translations-fakejs.js:3 #: static/admin/translations-fakejs.js:7 -#: static/admin/translations-fakejs.js:308 +#: static/admin/translations-fakejs.js:311 #: static/modern/translations-fakejs.js:44 msgid "Yes" msgstr "Sì" #: static/admin/main.js:1 static/admin/translations-fakejs.js:4 #: static/admin/translations-fakejs.js:8 -#: static/admin/translations-fakejs.js:309 +#: static/admin/translations-fakejs.js:312 #: static/modern/translations-fakejs.js:45 msgid "No" msgstr "No" @@ -431,594 +432,597 @@ msgstr "(nascosto)" msgid "Selected items :" msgstr "Elementi selezionati :" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 -#: static/admin/translations-fakejs.js:233 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:195 +#: static/admin/translations-fakejs.js:231 #: static/modern/translations-fakejs.js:35 msgid "Information" msgstr "Informazione" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 msgid "New service" msgstr "Nuovo servizio" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:197 msgid "Edit service" msgstr "Modifica servizio" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:236 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 msgid "Delete service" msgstr "Elimina servizio" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:237 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 msgid "Delete user service" msgstr "Elimina il servizio utente" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:269 msgid "New Authenticator" msgstr "Nuovo Autenticatore" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:267 +#: static/admin/translations-fakejs.js:270 msgid "Edit Authenticator" msgstr "Modifica Autenticatore" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/translations-fakejs.js:271 msgid "Delete Authenticator" msgstr "Elimina Autenticatore" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 msgid "Any" msgstr "Qualunque" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 msgid "All" msgstr "Tutti" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 -#: static/admin/translations-fakejs.js:94 -#: static/admin/translations-fakejs.js:342 -#: static/admin/translations-fakejs.js:354 -#: static/admin/translations-fakejs.js:379 -#: static/admin/translations-fakejs.js:435 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/translations-fakejs.js:254 +#: static/admin/translations-fakejs.js:343 +#: static/admin/translations-fakejs.js:399 +#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:481 msgid "Comments" msgstr "Commenti" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:258 msgid "Unique ID" msgstr "ID univoco" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 msgid "Friendly Name" msgstr "Nome breve" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:260 msgid "In Use" msgstr "In uso" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:261 msgid "IP" msgstr "IP" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 msgid "Services Pool" msgstr "Pool di servizi" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 -#: static/admin/translations-fakejs.js:103 -#: static/admin/translations-fakejs.js:287 -#: static/admin/translations-fakejs.js:323 -#: static/admin/translations-fakejs.js:337 -#: static/admin/translations-fakejs.js:363 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/translations-fakejs.js:263 +#: static/admin/translations-fakejs.js:290 +#: static/admin/translations-fakejs.js:328 #: static/admin/translations-fakejs.js:367 -#: static/admin/translations-fakejs.js:373 -#: static/admin/translations-fakejs.js:403 -#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:494 msgid "Groups" msgstr "Gruppi" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 -#: static/admin/translations-fakejs.js:335 -#: static/admin/translations-fakejs.js:368 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/translations-fakejs.js:462 +#: static/admin/translations-fakejs.js:495 msgid "Services Pools" msgstr "Pool di servizi" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 -#: static/admin/translations-fakejs.js:378 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/translations-fakejs.js:342 msgid "Name" msgstr "Nome" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 msgid "Real Name" msgstr "Nome vero" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 msgid "state" msgstr "stato" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 msgid "Last access" msgstr "Ultimo accesso" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 -#: static/admin/translations-fakejs.js:286 -#: static/admin/translations-fakejs.js:336 -#: static/admin/translations-fakejs.js:372 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:249 +#: static/admin/translations-fakejs.js:289 +#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:463 msgid "Users" msgstr "Utenti" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 -#: static/admin/translations-fakejs.js:344 -#: static/admin/translations-fakejs.js:356 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:483 msgid "Enabled" msgstr "Abilitato" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 -#: static/admin/translations-fakejs.js:345 -#: static/admin/translations-fakejs.js:357 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:484 msgid "Disabled" msgstr "Disabilitato" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 -#: static/admin/translations-fakejs.js:358 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:247 +#: static/admin/translations-fakejs.js:485 msgid "Blocked" msgstr "Bloccato" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 msgid "Delete user" msgstr "Elimina utente" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 msgid "Delete group" msgstr "Elimina gruppo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 msgid "New OS Manager" msgstr "Nuovo OS Manager" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 msgid "Edit OS Manager" msgstr "Modifica OS Manager" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 msgid "Delete OS Manager" msgstr "Elimina OS Manager" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:120 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 msgid "New Transport" msgstr "Nuovo trasporto" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:121 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:83 msgid "Edit Transport" msgstr "Modifica trasporto" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 msgid "Delete Transport" msgstr "Elimina trasporto" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 msgid "New Network" msgstr "Nuova rete" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:115 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 msgid "Edit Network" msgstr "Modifica rete" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:116 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 msgid "Delete Network" msgstr "Elimina rete" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:117 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 msgid "New Proxy" msgstr "Nuovo proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:118 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 msgid "Edit Proxy" msgstr "Modifica proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:119 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 msgid "Delete Proxy" msgstr "Elimina Proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:223 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 msgid "(This service does not requires an OS Manager)" msgstr "(Questo servizio non richiede un OS Manager)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 msgid "New service Pool" msgstr "Nuovo Pool di servizi" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 msgid "Publish on creation" msgstr "Pubblica in fase di creazione" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 msgid "If selected, will initiate the publication inmediatly after creation" msgstr "" "Se selezionato, avvierà la pubblicazione immediatamente dopo la creazione" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 msgid "Edit Service Pool" msgstr "Modifica Pool di servizi" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:228 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 msgid "Delete service pool" msgstr "Elimina Pool di servizi" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 -#: static/admin/translations-fakejs.js:194 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:156 msgid "Please, select a valid user" msgstr "Per favore, seleziona un utente valido" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:158 msgid "Please, select a valid group" msgstr "Per favore, seleziona un gruppo valido" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 msgid "Please, select a valid transport" msgstr "Per favore, seleziona un trasporto valido" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 msgid "Assigned" msgstr "Assegnato" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 msgid "Cached" msgstr "Memorizzato nella cache" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 msgid "In use" msgstr "In uso" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 -#: static/admin/translations-fakejs.js:290 -#: static/admin/translations-fakejs.js:374 -#: static/admin/translations-fakejs.js:405 -#: static/admin/translations-fakejs.js:462 -#: static/admin/translations-fakejs.js:465 -#: static/admin/translations-fakejs.js:470 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/translations-fakejs.js:293 +#: static/admin/translations-fakejs.js:369 +#: static/admin/translations-fakejs.js:426 +#: static/admin/translations-fakejs.js:429 +#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:460 msgid "Logs" msgstr "Logs" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 msgid "VNC" msgstr "VNC" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 msgid "Launch now" msgstr "Avvia adesso" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 msgid "Change owner" msgstr "Cambia proprietario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 msgid "Assign service" msgstr "Assegna servizio" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 -#: static/admin/translations-fakejs.js:277 -#: static/admin/translations-fakejs.js:283 -#: static/admin/translations-fakejs.js:349 -#: static/admin/translations-fakejs.js:364 -#: static/admin/translations-fakejs.js:390 -#: static/admin/translations-fakejs.js:398 -#: static/admin/translations-fakejs.js:410 -#: static/admin/translations-fakejs.js:415 -#: static/admin/translations-fakejs.js:423 -#: static/admin/translations-fakejs.js:428 -#: static/admin/translations-fakejs.js:432 -#: static/admin/translations-fakejs.js:436 -#: static/admin/translations-fakejs.js:449 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/translations-fakejs.js:280 +#: static/admin/translations-fakejs.js:286 +#: static/admin/translations-fakejs.js:354 +#: static/admin/translations-fakejs.js:362 +#: static/admin/translations-fakejs.js:374 +#: static/admin/translations-fakejs.js:379 +#: static/admin/translations-fakejs.js:387 +#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:400 +#: static/admin/translations-fakejs.js:413 +#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:476 #: static/admin/translations-fakejs.js:491 msgid "Cancel" msgstr "Annulla" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 msgid "Changelog" msgstr "Changelog" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 -#: static/admin/translations-fakejs.js:209 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/translations-fakejs.js:171 msgid "Delete assigned service" msgstr "Elimina il servizio assegnato" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 msgid "Delete cached service" msgstr "Elimina il servizio in cache" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:183 -#: static/admin/translations-fakejs.js:211 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/translations-fakejs.js:173 msgid "Delete assigned group" msgstr "Elimina il gruppo assegnato" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 msgid "Delete assigned transport" msgstr "Elimina il trasporto assegnato" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 msgid "Publication" msgstr "Pubblicazione" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 msgid "Cancel publication?" msgstr "Annulla la pubblicazione?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:215 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 msgid "Publication canceled" msgstr "Pubblicazione annullata" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:179 msgid "Delete scheduled action" msgstr "Elimina l'azione pianificata" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:218 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 msgid "Execute scheduled action" msgstr "Esegui azione pianificata" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 msgid "Execute scheduled action right now?" msgstr "Esegui l'azione pianificata in questo momento?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:220 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 msgid "Scheduled action executed" msgstr "Azione pianificata eseguita" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:184 -#: static/admin/translations-fakejs.js:222 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/translations-fakejs.js:184 msgid "Delete calendar access rule" msgstr "Elimina la regola di accesso nel calendario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 msgid "New meta pool" msgstr "Nuovo meta pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 msgid "Edit meta pool" msgstr "Modifica meta pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 msgid "Delete meta pool" msgstr "Elimina meta pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 msgid "Please, select a valid service pool" msgstr "Per favore, seleziona un pool di servizi valido" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 msgid "Remove member pool" msgstr "Rimuovi membro del pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 msgid "New pool group" msgstr "Nuovo gruppo di piscine" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 msgid "Edit pool group" msgstr "Modifica gruppo pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 msgid "Delete pool group" msgstr "Elimina gruppo pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 msgid "New calendar" msgstr "Nuovo calendario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 msgid "Edit calendar" msgstr "Modifica il calendario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:178 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 msgid "Delete calendar" msgstr "Elimina il calendario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 msgid "day" msgstr "giorno" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 msgid "days" msgstr "giorni" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 msgid "Daily" msgstr "Quotidiano" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 msgid "week" msgstr "settimana" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 msgid "weeks" msgstr "settimane" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:141 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:103 msgid "Weekly" msgstr "Settimanale" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 msgid "month" msgstr "mese" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 msgid "months" msgstr "mesi" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 msgid "Monthly" msgstr "Mensile" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 msgid "year" msgstr "anno" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 msgid "years" msgstr "anni" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 msgid "Yearly" msgstr "Annuale" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 -#: static/admin/translations-fakejs.js:387 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/translations-fakejs.js:351 msgid "Weekdays" msgstr "Nei giorni feriali" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 msgid "Minutes" msgstr "Minuti" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 msgid "Hours" msgstr "Ore" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 msgid "Days" msgstr "Giorni" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 msgid "Weeks" msgstr "Settimane" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 msgid "(no days)" msgstr "(nessun giorno)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 msgid "Forever" msgstr "Per sempre" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 msgid "Start date/time" msgstr "Data/ora di inizio" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 msgid "End date" msgstr "Data di fine" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 msgid "Interval" msgstr "Intervallo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 msgid "Week days" msgstr "Giorni della settimana" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 msgid "Invalid or incomplete rule. Please, fix field $FIELD" msgstr "Regola non valida o incompleta. Per favore, correggi il campo $FIELD" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 msgid "This rule will be valid every" msgstr "Questa regola sarà valida ogni" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 msgid "of any week" msgstr "di qualsiasi settimana" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 msgid "from" msgstr "da" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 msgid "until" msgstr "fino a" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:171 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 msgid "onwards" msgstr "avanti" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:134 msgid "starting at" msgstr "a partire da" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:173 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 msgid "and every event will be active for" msgstr "e ogni evento sarà attivo per" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 msgid "with no duration" msgstr "senza durata" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 msgid "Delete calendar rule" msgstr "Elimina la regola del calendario" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 msgid "Set time mark" msgstr "Imposta la marca temporale" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 msgid "New account" msgstr "Nuovo resoconto" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 msgid "Edit account" msgstr "Modifica resoconto" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 msgid "Delete account" msgstr "Eliminare il resoconto" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:93 msgid "Time mark" msgstr "Marca temporale" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:94 msgid "Set time mark for $NAME to current date/time?" msgstr "Impostare la marca temporale per $NAME alla data/ora corrente?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:95 msgid "Time mark stablished" msgstr "Marca temporale impostata" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:97 msgid "No time mark" msgstr "Nessuna marca temporale" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 msgid "Delete account usage" msgstr "Cancella attività del resoconto" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:255 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 msgid "Image is too big (max. upload size is 256Kb)" msgstr "" "L'immagine è troppo grande (la dimensione massima di caricamento è 256 Kb)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:257 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 msgid "Invalid image type (only supports JPEG, PNG and GIF" msgstr "Tipo di immagine non valido (supporta solo JPEG, PNG e GIF)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:221 msgid "Please, provide a name and a image" msgstr "Per favore, fornisci un nome e un'immagine" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 msgid "Delete image" msgstr "Elimina immagine" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:263 -#: static/admin/translations-fakejs.js:267 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/translations-fakejs.js:229 msgid "Generate report" msgstr "Genera rapporto" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 msgid "Generating report..." msgstr "Generazione del rapporto..." -#: static/admin/main.js:1 static/admin/translations-fakejs.js:265 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 msgid "Report finished" msgstr "Rapporto terminato" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 msgid "Configuration saved" msgstr "Configurazione salvata" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 msgid "Delete actor token - USE WITH EXTREME CAUTION!!!" msgstr "Elimina token Actor - UTILIZZARE CON ESTREMA ATTENZIONE!!!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:230 msgid "Delete tunnel token - USE WITH EXTREME CAUTION!!!" msgstr "Elimina token tunnel - UTILIZZARE CON ESTREMA CAUTELA!!!" @@ -1034,470 +1038,426 @@ msgstr "Elementi per pagina" msgid ", (%i more items)" msgstr ", (%i ulteriori elementi)" -#: static/admin/translations-fakejs.js:275 +#: static/admin/translations-fakejs.js:278 msgid "Remove all" msgstr "Rimuovi tutto" -#: static/admin/translations-fakejs.js:276 +#: static/admin/translations-fakejs.js:279 msgid "Add" msgstr "Aggiungi" -#: static/admin/translations-fakejs.js:278 -#: static/admin/translations-fakejs.js:284 -#: static/admin/translations-fakejs.js:289 -#: static/admin/translations-fakejs.js:338 -#: static/admin/translations-fakejs.js:350 -#: static/admin/translations-fakejs.js:365 -#: static/admin/translations-fakejs.js:370 -#: static/admin/translations-fakejs.js:391 -#: static/admin/translations-fakejs.js:399 -#: static/admin/translations-fakejs.js:411 +#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:287 +#: static/admin/translations-fakejs.js:292 +#: static/admin/translations-fakejs.js:355 +#: static/admin/translations-fakejs.js:363 +#: static/admin/translations-fakejs.js:375 +#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:401 +#: static/admin/translations-fakejs.js:403 +#: static/admin/translations-fakejs.js:414 #: static/admin/translations-fakejs.js:416 -#: static/admin/translations-fakejs.js:424 -#: static/admin/translations-fakejs.js:429 -#: static/admin/translations-fakejs.js:433 -#: static/admin/translations-fakejs.js:437 -#: static/admin/translations-fakejs.js:439 -#: static/admin/translations-fakejs.js:450 -#: static/admin/translations-fakejs.js:452 -#: static/admin/translations-fakejs.js:466 +#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:465 +#: static/admin/translations-fakejs.js:477 #: static/admin/translations-fakejs.js:492 +#: static/admin/translations-fakejs.js:497 msgid "Ok" msgstr "Ok" -#: static/admin/translations-fakejs.js:279 +#: static/admin/translations-fakejs.js:282 msgid "Discard & close" msgstr "Annulla e chiudi" -#: static/admin/translations-fakejs.js:280 -#: static/admin/translations-fakejs.js:484 +#: static/admin/translations-fakejs.js:283 +#: static/admin/translations-fakejs.js:448 msgid "Save" msgstr "Salva" -#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:284 msgid "New user permission for" msgstr "Nuovo permesso utente per" -#: static/admin/translations-fakejs.js:282 +#: static/admin/translations-fakejs.js:285 msgid "New group permission for" msgstr "Nuovo permesso di gruppo per" -#: static/admin/translations-fakejs.js:285 +#: static/admin/translations-fakejs.js:288 msgid "Permissions for" msgstr "Permessi per" -#: static/admin/translations-fakejs.js:288 +#: static/admin/translations-fakejs.js:291 msgid "New permission..." msgstr "Nuovo permesso..." -#: static/admin/translations-fakejs.js:291 -#: static/admin/translations-fakejs.js:298 +#: static/admin/translations-fakejs.js:294 +#: static/admin/translations-fakejs.js:301 msgid "Export" msgstr "Esporta" -#: static/admin/translations-fakejs.js:293 -#: static/admin/translations-fakejs.js:294 -#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:296 +#: static/admin/translations-fakejs.js:297 +#: static/admin/translations-fakejs.js:298 msgid "New" msgstr "Nuovo" -#: static/admin/translations-fakejs.js:296 -#: static/admin/translations-fakejs.js:304 +#: static/admin/translations-fakejs.js:299 +#: static/admin/translations-fakejs.js:307 msgid "Edit" msgstr "Modifica" -#: static/admin/translations-fakejs.js:297 -#: static/admin/translations-fakejs.js:305 +#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:308 msgid "Permissions" msgstr "Permessi" -#: static/admin/translations-fakejs.js:299 -#: static/admin/translations-fakejs.js:306 +#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:309 msgid "Delete" msgstr "Elimina" -#: static/admin/translations-fakejs.js:301 +#: static/admin/translations-fakejs.js:304 msgid "Selected items" msgstr "Elementi selezionati" -#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:305 msgid "Copy" msgstr "copia" -#: static/admin/translations-fakejs.js:303 +#: static/admin/translations-fakejs.js:306 msgid "Detail" msgstr "Dettaglio" -#: static/admin/translations-fakejs.js:307 +#: static/admin/translations-fakejs.js:310 #: static/modern/translations-fakejs.js:43 msgid "Close" msgstr "Chiudi" -#: static/admin/translations-fakejs.js:310 +#: static/admin/translations-fakejs.js:313 msgid "User mode" msgstr "Modalità utente" -#: static/admin/translations-fakejs.js:311 +#: static/admin/translations-fakejs.js:314 #: static/modern/translations-fakejs.js:48 msgid "Logout" msgstr "Disconnetti" -#: static/admin/translations-fakejs.js:312 -#: static/admin/translations-fakejs.js:371 -#: static/admin/translations-fakejs.js:389 -#: static/admin/translations-fakejs.js:400 -#: static/admin/translations-fakejs.js:453 -#: static/admin/translations-fakejs.js:467 +#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:353 +#: static/admin/translations-fakejs.js:364 +#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:431 +#: static/admin/translations-fakejs.js:457 msgid "Summary" msgstr "Sommario" -#: static/admin/translations-fakejs.js:313 -#: static/admin/translations-fakejs.js:468 +#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:432 msgid "Services" msgstr "Servizi" -#: static/admin/translations-fakejs.js:314 +#: static/admin/translations-fakejs.js:317 +msgid "Authentication" +msgstr "Autenticazione" + +#: static/admin/translations-fakejs.js:318 msgid "Authenticators" msgstr "Autenticatori" -#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:319 +msgid "Multi Factor" +msgstr "Multifattore" + +#: static/admin/translations-fakejs.js:320 msgid "Os Managers" msgstr "Os Manager" -#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:321 msgid "Connectivity" msgstr "Connettività" -#: static/admin/translations-fakejs.js:317 -#: static/admin/translations-fakejs.js:457 +#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:421 #: static/modern/translations-fakejs.js:39 msgid "Transports" msgstr "Trasporti" -#: static/admin/translations-fakejs.js:318 +#: static/admin/translations-fakejs.js:323 #: static/modern/translations-fakejs.js:41 msgid "Networks" msgstr "Reti" -#: static/admin/translations-fakejs.js:319 +#: static/admin/translations-fakejs.js:324 msgid "Proxies" msgstr "Proxy" -#: static/admin/translations-fakejs.js:320 +#: static/admin/translations-fakejs.js:325 msgid "Pools" msgstr "Pool" -#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:327 msgid "Meta pools" msgstr "Meta pool" -#: static/admin/translations-fakejs.js:324 +#: static/admin/translations-fakejs.js:329 msgid "Calendars" msgstr "Calendari" -#: static/admin/translations-fakejs.js:325 +#: static/admin/translations-fakejs.js:330 msgid "Accounts" msgstr "Resoconti" -#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:331 msgid "Tools" msgstr "Strumenti" -#: static/admin/translations-fakejs.js:327 +#: static/admin/translations-fakejs.js:332 msgid "Gallery" msgstr "Galleria" -#: static/admin/translations-fakejs.js:328 +#: static/admin/translations-fakejs.js:333 msgid "Reports" msgstr "Rapporti" -#: static/admin/translations-fakejs.js:329 +#: static/admin/translations-fakejs.js:334 msgid "Tokens" msgstr "Gettoni" -#: static/admin/translations-fakejs.js:330 +#: static/admin/translations-fakejs.js:335 msgid "Actor" msgstr "Attore" -#: static/admin/translations-fakejs.js:331 +#: static/admin/translations-fakejs.js:336 msgid "Tunnel" msgstr "Tunnel" -#: static/admin/translations-fakejs.js:332 +#: static/admin/translations-fakejs.js:337 msgid "Configuration" msgstr "Configurazione" -#: static/admin/translations-fakejs.js:333 +#: static/admin/translations-fakejs.js:338 msgid "Flush Cache" msgstr "Svuota Cache" -#: static/admin/translations-fakejs.js:334 -#: static/admin/translations-fakejs.js:366 -#: static/admin/translations-fakejs.js:463 -msgid "Information for" -msgstr "Informazioni per" - #: static/admin/translations-fakejs.js:339 -msgid "Edit group" -msgstr "Modifica gruppo" - -#: static/admin/translations-fakejs.js:340 -msgid "New group" -msgstr "Nuovo gruppo" - -#: static/admin/translations-fakejs.js:341 -msgid "Meta group name" -msgstr "Nome del meta gruppo" - -#: static/admin/translations-fakejs.js:346 -msgid "Service Pools" -msgstr "Pool di servizi" - -#: static/admin/translations-fakejs.js:347 -msgid "Match mode" -msgstr "Modalità di confronto" - -#: static/admin/translations-fakejs.js:348 -msgid "Selected Groups" -msgstr "Gruppi selezionati" - -#: static/admin/translations-fakejs.js:351 -msgid "Edit user" -msgstr "Modifica utente" - -#: static/admin/translations-fakejs.js:352 -msgid "New user" -msgstr "Nuovo utente" - -#: static/admin/translations-fakejs.js:353 -msgid "Real name" -msgstr "Nome vero" - -#: static/admin/translations-fakejs.js:359 -msgid "Role" -msgstr "Ruolo" - -#: static/admin/translations-fakejs.js:360 -msgid "Admin" -msgstr "Admin" - -#: static/admin/translations-fakejs.js:361 -msgid "Staff member" -msgstr "Membro dello staff" - -#: static/admin/translations-fakejs.js:369 -msgid "Assigned Services" -msgstr "Servizi assegnati" - -#: static/admin/translations-fakejs.js:375 msgid "Account usage" msgstr "Uso del resoconto" -#: static/admin/translations-fakejs.js:376 +#: static/admin/translations-fakejs.js:340 msgid "Edit rule" msgstr "Modifica regola" -#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:341 msgid "New rule" msgstr "Nuova regola" -#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:344 msgid "Event" msgstr "Evento" -#: static/admin/translations-fakejs.js:381 +#: static/admin/translations-fakejs.js:345 msgid "Start time" msgstr "Orario di inizio" -#: static/admin/translations-fakejs.js:382 +#: static/admin/translations-fakejs.js:346 msgid "Duration" msgstr "Durata" -#: static/admin/translations-fakejs.js:383 +#: static/admin/translations-fakejs.js:347 msgid "Duration units" msgstr "Unità di durata" -#: static/admin/translations-fakejs.js:384 +#: static/admin/translations-fakejs.js:348 msgid "Start date" msgstr "Data d'inizio" -#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:349 msgid "Repeat until date" msgstr "Ripeti fino alla data" -#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:350 msgid "Frequency" msgstr "Frequenza" -#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:352 msgid "Repeat every" msgstr "Ripeti ogni" -#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:356 msgid "Rules" msgstr "Regole" -#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:357 msgid "New member pool" msgstr "Nuovo membro del pool" -#: static/admin/translations-fakejs.js:394 +#: static/admin/translations-fakejs.js:358 msgid "Edit member pool" msgstr "Modifica membro del pool" -#: static/admin/translations-fakejs.js:395 -#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:359 +#: static/admin/translations-fakejs.js:384 msgid "Priority" msgstr "Priorità" -#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:360 msgid "Service pool" msgstr "Pool di servizi" -#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:361 msgid "Enabled?" msgstr "Abilitato?" -#: static/admin/translations-fakejs.js:404 -#: static/admin/translations-fakejs.js:460 +#: static/admin/translations-fakejs.js:368 +#: static/admin/translations-fakejs.js:424 msgid "Access calendars" msgstr "Accedi ai calendari" -#: static/admin/translations-fakejs.js:406 +#: static/admin/translations-fakejs.js:370 msgid "Assign service to user manually" msgstr "Assegna il servizio all'utente manualmente" -#: static/admin/translations-fakejs.js:407 +#: static/admin/translations-fakejs.js:371 msgid "Service" msgstr "Servizio" -#: static/admin/translations-fakejs.js:412 +#: static/admin/translations-fakejs.js:376 msgid "Change owner of assigned service" msgstr "Cambia proprietario del servizio assegnato" -#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:381 msgid "New access rule for" msgstr "Nuova regola di accesso per" -#: static/admin/translations-fakejs.js:418 +#: static/admin/translations-fakejs.js:382 msgid "Edit access rule for" msgstr "Modifica regola di accesso per" -#: static/admin/translations-fakejs.js:419 +#: static/admin/translations-fakejs.js:383 msgid "Default fallback access for" msgstr "Accesso di riserva predefinito per" -#: static/admin/translations-fakejs.js:421 -#: static/admin/translations-fakejs.js:442 +#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:406 msgid "Calendar" msgstr "Calendario" -#: static/admin/translations-fakejs.js:422 -#: static/admin/translations-fakejs.js:445 +#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:409 msgid "Action" msgstr "Azione" -#: static/admin/translations-fakejs.js:425 +#: static/admin/translations-fakejs.js:389 msgid "New group for" msgstr "Nuovo gruppo per" -#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:394 msgid "New transport for" msgstr "Nuovo trasporto per" -#: static/admin/translations-fakejs.js:431 -#: static/admin/translations-fakejs.js:446 +#: static/admin/translations-fakejs.js:395 +#: static/admin/translations-fakejs.js:410 msgid "Transport" msgstr "Trasporto" -#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:398 msgid "New publication for" msgstr "Nuova pubblicazione per" -#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:402 msgid "Changelog of" msgstr "Changelog di" -#: static/admin/translations-fakejs.js:440 +#: static/admin/translations-fakejs.js:404 msgid "Edit action for" msgstr "Modifica l'azione per" -#: static/admin/translations-fakejs.js:441 +#: static/admin/translations-fakejs.js:405 msgid "New action for" msgstr "Nuova azione per" -#: static/admin/translations-fakejs.js:443 +#: static/admin/translations-fakejs.js:407 msgid "Events offset (minutes)" msgstr "Offset degli eventi (minuti)" -#: static/admin/translations-fakejs.js:444 +#: static/admin/translations-fakejs.js:408 msgid "At the beginning of the interval?" msgstr "All'inizio dell'intervallo?" -#: static/admin/translations-fakejs.js:451 +#: static/admin/translations-fakejs.js:415 msgid "Logs of" msgstr "Log di" -#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:419 msgid "Cache" msgstr "Cache" -#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:422 msgid "Publications" msgstr "Pubblicazioni" -#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:423 msgid "Scheduled actions" msgstr "Azioni programmate" -#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:425 msgid "Charts" msgstr "Grafici" -#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:427 +#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:493 +msgid "Information for" +msgstr "Informazioni per" + +#: static/admin/translations-fakejs.js:428 msgid "Services pools" msgstr "Pool di servizi" -#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:433 msgid "Usage" msgstr "Uso" -#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:435 #: static/modern/translations-fakejs.js:46 msgid "Dashboard" msgstr "Cruscotto" -#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:436 msgid "View authenticators" msgstr "Visualizza autenticatori" -#: static/admin/translations-fakejs.js:473 -#: static/admin/translations-fakejs.js:474 -#: static/admin/translations-fakejs.js:475 +#: static/admin/translations-fakejs.js:437 +#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:439 msgid "View service pools" msgstr "Visualizza pool di servizi" -#: static/admin/translations-fakejs.js:476 +#: static/admin/translations-fakejs.js:440 msgid "Assigned services chart" msgstr "Tabella servizi assegnati" -#: static/admin/translations-fakejs.js:477 +#: static/admin/translations-fakejs.js:441 msgid "In use services chart" msgstr "Tabella servizi in uso" -#: static/admin/translations-fakejs.js:478 +#: static/admin/translations-fakejs.js:442 msgid "UDS Administration" msgstr "Amministrazione UDS" -#: static/admin/translations-fakejs.js:479 +#: static/admin/translations-fakejs.js:443 msgid "You are accessing UDS Administration as staff member." msgstr "Stai accedendo all'amministrazione di UDS come membro dello staff." -#: static/admin/translations-fakejs.js:480 +#: static/admin/translations-fakejs.js:444 msgid "This means that you have restricted access to elements." msgstr "Ciò significa che hai accesso limitato agli elementi." -#: static/admin/translations-fakejs.js:481 +#: static/admin/translations-fakejs.js:445 msgid "" "In order to increase your access privileges, please contact your local UDS " "administrator." @@ -1505,38 +1465,90 @@ msgstr "" "Per aumentare i tuoi privilegi di accesso, contatta l'amministratore UDS " "locale." -#: static/admin/translations-fakejs.js:482 +#: static/admin/translations-fakejs.js:446 msgid "Thank you." msgstr "Grazie." -#: static/admin/translations-fakejs.js:483 +#: static/admin/translations-fakejs.js:447 msgid "UDS Configuration" msgstr "Configurazione UDS" -#: static/admin/translations-fakejs.js:485 +#: static/admin/translations-fakejs.js:449 msgid "New image for" msgstr "Nuova immagine per" -#: static/admin/translations-fakejs.js:486 +#: static/admin/translations-fakejs.js:450 msgid "Edit for" msgstr "Modifica per" -#: static/admin/translations-fakejs.js:487 +#: static/admin/translations-fakejs.js:451 msgid "Image name" msgstr "Nome dell'immagine" -#: static/admin/translations-fakejs.js:488 +#: static/admin/translations-fakejs.js:452 msgid "Image (click to change)" msgstr "Immagine (clicca per cambiare)" -#: static/admin/translations-fakejs.js:489 +#: static/admin/translations-fakejs.js:453 msgid "For optimal results, use " msgstr "Per risultati ottimali, usa" -#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:454 msgid "The image will be resized on upload to" msgstr "L'immagine verrà ridimensionata in caricamento su" +#: static/admin/translations-fakejs.js:466 +msgid "Edit group" +msgstr "Modifica gruppo" + +#: static/admin/translations-fakejs.js:467 +msgid "New group" +msgstr "Nuovo gruppo" + +#: static/admin/translations-fakejs.js:468 +msgid "Meta group name" +msgstr "Nome del meta gruppo" + +#: static/admin/translations-fakejs.js:473 +msgid "Service Pools" +msgstr "Pool di servizi" + +#: static/admin/translations-fakejs.js:474 +msgid "Match mode" +msgstr "Modalità di confronto" + +#: static/admin/translations-fakejs.js:475 +msgid "Selected Groups" +msgstr "Gruppi selezionati" + +#: static/admin/translations-fakejs.js:478 +msgid "Edit user" +msgstr "Modifica utente" + +#: static/admin/translations-fakejs.js:479 +msgid "New user" +msgstr "Nuovo utente" + +#: static/admin/translations-fakejs.js:480 +msgid "Real name" +msgstr "Nome vero" + +#: static/admin/translations-fakejs.js:486 +msgid "Role" +msgstr "Ruolo" + +#: static/admin/translations-fakejs.js:487 +msgid "Admin" +msgstr "Admin" + +#: static/admin/translations-fakejs.js:488 +msgid "Staff member" +msgstr "Membro dello staff" + +#: static/admin/translations-fakejs.js:496 +msgid "Assigned Services" +msgstr "Servizi assegnati" + #: static/modern/main-es5.js:1 msgid "Error communicating with your service. Please, retry again." msgstr "Errore di comunicazione con il tuo servizio. Per favore, riprova." @@ -1601,7 +1613,8 @@ msgstr "" msgid "Launching service" msgstr "Lancio del servizio in corso" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 +#: static/modern/translations-fakejs.js:25 msgid "Errors found" msgstr "Errori trovati" @@ -1643,18 +1656,14 @@ msgstr "Servizio resettato" msgid "Are you sure?" msgstr "Sei sicuro?" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 msgid "Warning" msgstr "Attenzione" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:25 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 msgid "Service is in maintenance and cannot be executed" msgstr "Il servizio è in manutenzione e non può essere eseguito" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 -msgid "Invalid error string" -msgstr "Stringa di errore non valida" - #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:26 msgid "We use cookies to track usage and preferences" msgstr "Utilizziamo i cookie per tracciare l'utilizzo e le preferenze" @@ -1802,3 +1811,15 @@ msgstr "Password" #: static/modern/translations-fakejs.js:73 msgid "Login" msgstr "Accesso" + +#: static/modern/translations-fakejs.js:74 +msgid "Login Verification" +msgstr "Verifica dell'accesso" + +#: static/modern/translations-fakejs.js:75 +msgid "Remember Me" +msgstr "Ricordati di me" + +#: static/modern/translations-fakejs.js:76 +msgid "Submit" +msgstr "Invia" diff --git a/server/src/uds/locale/pt/LC_MESSAGES/django.po b/server/src/uds/locale/pt/LC_MESSAGES/django.po index e58633f3..1912560e 100644 --- a/server/src/uds/locale/pt/LC_MESSAGES/django.po +++ b/server/src/uds/locale/pt/LC_MESSAGES/django.po @@ -8,41 +8,42 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-14 11:34+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:14+0000\n" +"Last-Translator: Adolfo Gómez , 2012\n" "Language-Team: Portuguese (http://www.transifex.com/openuds/openuds/language/" "pt/)\n" "Language: pt\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" +"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % " +"1000000 == 0 ? 1 : 2;\n" #: REST/methods/accounts.py:61 msgid "Accounts" msgstr "Contas" -#: REST/methods/accounts.py:63 REST/methods/authenticators.py:66 +#: REST/methods/accounts.py:63 REST/methods/authenticators.py:67 #: REST/methods/calendars.py:63 REST/methods/images.py:67 -#: REST/methods/meta_pools.py:81 REST/methods/networks.py:63 -#: REST/methods/osmanagers.py:55 REST/methods/providers.py:71 -#: REST/methods/proxies.py:60 REST/methods/reports.py:69 -#: REST/methods/services_pool_groups.py:71 REST/methods/services_pools.py:136 -#: REST/methods/transports.py:66 REST/methods/user_services.py:325 -#: REST/methods/user_services.py:400 REST/methods/users_groups.py:167 -#: REST/model.py:149 +#: REST/methods/meta_pools.py:81 REST/methods/mfas.py:56 +#: REST/methods/networks.py:63 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:71 REST/methods/proxies.py:60 +#: REST/methods/reports.py:69 REST/methods/services_pool_groups.py:71 +#: REST/methods/services_pools.py:136 REST/methods/transports.py:66 +#: REST/methods/user_services.py:325 REST/methods/user_services.py:400 +#: REST/methods/users_groups.py:167 REST/model.py:149 msgid "Name" msgstr "Nome" -#: REST/methods/accounts.py:64 REST/methods/authenticators.py:68 +#: REST/methods/accounts.py:64 REST/methods/authenticators.py:69 #: REST/methods/calendarrules.py:110 REST/methods/calendars.py:69 -#: REST/methods/meta_pools.py:82 REST/methods/osmanagers.py:57 -#: REST/methods/providers.py:73 REST/methods/proxies.py:63 -#: REST/methods/services.py:241 REST/methods/services_pool_groups.py:72 -#: REST/methods/transports.py:68 REST/methods/user_services.py:402 -#: REST/methods/users_groups.py:168 REST/methods/users_groups.py:386 -#: REST/model.py:173 +#: REST/methods/meta_pools.py:82 REST/methods/mfas.py:58 +#: REST/methods/osmanagers.py:57 REST/methods/providers.py:73 +#: REST/methods/proxies.py:63 REST/methods/services.py:241 +#: REST/methods/services_pool_groups.py:72 REST/methods/transports.py:68 +#: REST/methods/user_services.py:402 REST/methods/users_groups.py:168 +#: REST/methods/users_groups.py:384 REST/model.py:173 msgid "Comments" msgstr "Comentários" @@ -50,12 +51,12 @@ msgstr "Comentários" msgid "Time mark" msgstr "Marca de tempo" -#: REST/methods/accounts.py:66 REST/methods/authenticators.py:73 +#: REST/methods/accounts.py:66 REST/methods/authenticators.py:75 #: REST/methods/calendars.py:71 REST/methods/meta_pools.py:89 -#: REST/methods/networks.py:71 REST/methods/osmanagers.py:59 -#: REST/methods/providers.py:79 REST/methods/proxies.py:64 -#: REST/methods/services.py:250 REST/methods/services_pools.py:145 -#: REST/methods/transports.py:77 +#: REST/methods/mfas.py:59 REST/methods/networks.py:71 +#: REST/methods/osmanagers.py:59 REST/methods/providers.py:79 +#: REST/methods/proxies.py:64 REST/methods/services.py:250 +#: REST/methods/services_pools.py:145 REST/methods/transports.py:77 msgid "tags" msgstr "Tag" @@ -110,7 +111,7 @@ msgstr "Chave inválida" msgid "Unmanaged host" msgstr "Host não gerenciado" -#: REST/methods/actor.py:207 web/util/errors.py:85 +#: REST/methods/actor.py:207 web/util/errors.py:87 msgid "User service not found" msgstr "Serviço do usuário não encontrado" @@ -119,9 +120,9 @@ msgid "Actor tokens" msgstr "Tokens de ator" #: REST/methods/actor_token.py:54 REST/methods/tunnel_token.py:52 -#: reports/auto/fields.py:58 reports/stats/pools_performance.py:218 -#: reports/stats/pools_performance.py:237 reports/stats/pools_usage_day.py:64 -#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:191 +#: reports/auto/fields.py:58 reports/stats/pools_performance.py:201 +#: reports/stats/pools_performance.py:220 reports/stats/pools_usage_day.py:64 +#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:176 #: templates/uds/reports/stats/authenticator_stats.html:14 msgid "Date" msgstr "Encontro" @@ -160,64 +161,79 @@ msgstr "Nível de log" msgid "Token isued by {} from {}" msgstr "O token é usado por {} de {}" -#: REST/methods/authenticators.py:63 +#: REST/methods/authenticators.py:64 msgid "Authenticators" msgstr "Autenticadores" -#: REST/methods/authenticators.py:65 +#: REST/methods/authenticators.py:66 msgid "Id" msgstr "Identidade" -#: REST/methods/authenticators.py:67 REST/methods/osmanagers.py:56 -#: REST/methods/providers.py:72 REST/methods/services.py:242 -#: REST/methods/transports.py:67 REST/methods/user_services.py:401 +#: REST/methods/authenticators.py:68 REST/methods/mfas.py:57 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:72 +#: REST/methods/services.py:242 REST/methods/transports.py:67 +#: REST/methods/user_services.py:401 msgid "Type" msgstr "Tipo" -#: REST/methods/authenticators.py:69 REST/methods/meta_service_pools.py:88 +#: REST/methods/authenticators.py:70 REST/methods/meta_service_pools.py:88 #: REST/methods/op_calendars.py:83 REST/methods/services_pool_groups.py:62 #: REST/methods/transports.py:65 REST/methods/user_services.py:399 #: REST/model.py:185 models/meta_pool.py:73 msgid "Priority" msgstr "Prioridade" -#: REST/methods/authenticators.py:70 REST/methods/authenticators.py:107 +#: REST/methods/authenticators.py:71 REST/methods/authenticators.py:110 #: REST/methods/meta_pools.py:86 REST/methods/meta_pools.py:193 #: REST/methods/services_pools.py:141 REST/methods/services_pools.py:386 msgid "Visible" msgstr "Visível" -#: REST/methods/authenticators.py:71 REST/methods/meta_pools.py:88 +#: REST/methods/authenticators.py:72 REST/methods/meta_pools.py:88 #: REST/methods/transports.py:164 REST/model.py:201 msgid "Label" msgstr "Rótulo" -#: REST/methods/authenticators.py:72 core/util/stats/counters.py:252 -#: reports/stats/pools_performance.py:223 -#: reports/stats/pools_performance.py:286 reports/stats/user_access.py:254 -#: reports/stats/user_access.py:297 services/RDS_enterprise/provider.py:74 +#: REST/methods/authenticators.py:73 core/util/stats/counters.py:252 +#: reports/stats/pools_performance.py:206 +#: reports/stats/pools_performance.py:269 reports/stats/user_access.py:239 +#: reports/stats/user_access.py:282 services/RDS_enterprise/provider.py:74 #: templates/uds/reports/stats/authenticator_stats.html:15 #: templates/uds/reports/stats/pools-performance.html:35 #: templates/uds/reports/stats/user-access.html:35 msgid "Users" msgstr "Comercial" -#: REST/methods/authenticators.py:109 REST/methods/services_pools.py:387 -msgid "If active, transport will be visible for users" -msgstr "Se estiver ativo, o transporte ficará visível para os usuários" +#: REST/methods/authenticators.py:74 core/ui/user_interface.py:104 +msgid "MFA" +msgstr "MFA" -#: REST/methods/authenticators.py:113 REST/methods/services_pools.py:390 -#: REST/methods/services_pools.py:405 REST/methods/services_pools.py:422 -#: REST/methods/services_pools.py:433 core/ui/user_interface.py:103 -#: services/OVirt/service.py:188 -msgid "Display" -msgstr "Exibição" +#: REST/methods/authenticators.py:112 +msgid "If active, authenticator will be visible for users" +msgstr "Se ativo, o autenticador ficará visível para os usuários" -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:125 core/services/service.py:143 +#: core/services/service.py:154 mfas/Email/mfa.py:46 mfas/SMS/mfa.py:112 +#: models/permissions.py:92 models/permissions.py:96 +#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 +#: services/Proxmox/service.py:208 services/Sample/service.py:100 +#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 +msgid "None" +msgstr "Nenhum" + +#: REST/methods/authenticators.py:132 +msgid "MFA Provider" +msgstr "Provedor de MFA" + +#: REST/methods/authenticators.py:134 +msgid "MFA provider to use for this authenticator" +msgstr "Provedor de MFA a ser usado para este autenticador" + +#: REST/methods/authenticators.py:193 msgid "Too many results..." msgstr "Muitos resultados ..." -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:193 msgid "Refine your query" msgstr "Refine sua consulta" @@ -375,7 +391,7 @@ msgstr "Data de criação" #: REST/methods/meta_service_pools.py:195 REST/methods/services_usage.py:125 #: reports/stats/pool_users_summary.py:60 -#: reports/stats/pools_performance.py:284 reports/stats/pools_usage_day.py:171 +#: reports/stats/pools_performance.py:267 reports/stats/pools_usage_day.py:169 #: reports/stats/pools_usage_summary.py:156 reports/stats/usage_by_pool.py:59 #: reports/stats/usage_by_pool.py:173 services/Proxmox/service.py:111 #: templates/uds/reports/stats/pools-performance.html:33 @@ -434,6 +450,28 @@ msgstr "Item já sendo removido" msgid "Item is not removable" msgstr "Item não é removível" +#: REST/methods/mfas.py:54 +msgid "Multi Factor Authentication" +msgstr "Autenticação multifator" + +#: REST/methods/mfas.py:80 +msgid "Device Caching" +msgstr "Cache do dispositivo" + +#: REST/methods/mfas.py:82 +msgid "Time in hours to cache device so MFA is not required again. User based." +msgstr "" +"Tempo em horas para armazenar em cache o dispositivo para que a MFA não seja " +"necessária novamente. Baseado no usuário." + +#: REST/methods/mfas.py:94 +msgid "MFA code validity" +msgstr "Validade do código MFA" + +#: REST/methods/mfas.py:96 +msgid "Time in minutes to allow MFA code to be used." +msgstr "Tempo em minutos para permitir que o código MFA seja usado." + #: REST/methods/networks.py:59 REST/methods/transports.py:114 msgid "Networks" msgstr "Redes" @@ -523,7 +561,7 @@ msgstr "Provedores de serviço" msgid "Status" msgstr "Status" -#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:171 +#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:169 #: templates/uds/reports/stats/authenticator_stats.html:16 #: templates/uds/reports/stats/pools-usage-day.html:29 msgid "Services" @@ -618,13 +656,13 @@ msgstr "" msgid "Available reports" msgstr "Relatórios disponíveis" -#: REST/methods/reports.py:67 REST/methods/users_groups.py:377 -#: REST/methods/users_groups.py:398 -#: auths/ActiveDirectory_enterprise/authenticator.py:143 +#: REST/methods/reports.py:67 REST/methods/users_groups.py:375 +#: REST/methods/users_groups.py:396 +#: auths/ActiveDirectory_enterprise/authenticator.py:153 #: auths/AzureAD_enterprise/azure_ad.py:95 #: auths/EDirectory_enterprise/authenticator.py:105 #: auths/Radius/authenticator.py:63 auths/RegexLdap/authenticator.py:191 -#: auths/SAML_enterprise/saml.py:121 auths/SimpleLDAP/authenticator.py:182 +#: auths/SAML_enterprise/saml.py:109 auths/SimpleLDAP/authenticator.py:182 #: models/calendar_action.py:147 models/calendar_action.py:154 msgid "Group" msgstr "Grupo" @@ -689,13 +727,13 @@ msgstr "Proxy para serviços atrás de um firewall" msgid "Advanced" msgstr "Avançado" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "With errors" msgstr "Com erros" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "Ok" msgstr "Está bem" @@ -773,6 +811,16 @@ msgstr "" "Se a opção estiver ativada, o UDS não tentará detectar e remover os serviços " "do usuário atribuídos, mas não em uso." +#: REST/methods/services_pools.py:387 +msgid "If active, transport will be visible for users" +msgstr "Se estiver ativo, o transporte ficará visível para os usuários" + +#: REST/methods/services_pools.py:390 REST/methods/services_pools.py:405 +#: REST/methods/services_pools.py:422 REST/methods/services_pools.py:433 +#: core/ui/user_interface.py:103 services/OVirt/service.py:188 +msgid "Display" +msgstr "Exibição" + #: REST/methods/services_pools.py:439 msgid "Initial available services" msgstr "Serviços iniciais disponíveis" @@ -978,7 +1026,7 @@ msgstr "Membro da equipe" #: auths/AzureAD_enterprise/azure_ad.py:94 #: auths/EDirectory_enterprise/authenticator.py:69 #: auths/Radius/authenticator.py:62 auths/RegexLdap/authenticator.py:91 -#: auths/SAML_enterprise/saml.py:118 reports/stats/pool_users_summary.py:177 +#: auths/SAML_enterprise/saml.py:106 reports/stats/pool_users_summary.py:177 #: reports/stats/usage_by_pool.py:171 #: templates/uds/reports/stats/pool-users-summary.html:14 #: templates/uds/reports/stats/usage-by-pool.html:15 @@ -995,10 +1043,10 @@ msgid "Current users" msgstr "Usuários atuais" #: REST/methods/users_groups.py:160 -#: auths/ActiveDirectory_enterprise/authenticator.py:141 +#: auths/ActiveDirectory_enterprise/authenticator.py:151 #: auths/EDirectory_enterprise/authenticator.py:103 #: auths/RegexLdap/authenticator.py:189 auths/SimpleLDAP/authenticator.py:180 -#: services/HyperV_enterprise/legacy/provider.py:103 +#: mfas/Email/mfa.py:54 services/HyperV_enterprise/legacy/provider.py:103 #: services/HyperV_enterprise/provider.py:86 #: services/NutanixPrism_enterprise/provider.py:54 #: services/Nutanix_enterprise/provider.py:54 services/OVirt/provider.py:121 @@ -1012,7 +1060,7 @@ msgstr "Usuários atuais" #: transports/NoMachine_enterprise/nomachine_base.py:63 #: transports/PCoIP_enterprise/pcoip.py:61 transports/RDP/rdp_base.py:75 #: transports/SPICE/spice_base.py:69 transports/X2GO/x2go_base.py:70 -#: web/forms/LoginForm.py:43 +#: web/forms/LoginForm.py:44 msgid "Username" msgstr "Nome de usuário" @@ -1020,7 +1068,7 @@ msgstr "Nome de usuário" msgid "Role" msgstr "Função" -#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:389 +#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:387 msgid "state" msgstr "Estado" @@ -1032,32 +1080,32 @@ msgstr "Último acesso" msgid "Username cannot be empty" msgstr "O nome de usuário não pode estar vazio" -#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:470 +#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:468 msgid "User already exists (duplicate key error)" msgstr "Usuário já existe (erro de chave duplicado)" -#: REST/methods/users_groups.py:365 +#: REST/methods/users_groups.py:363 #, python-brace-format msgid "Groups of {0}" msgstr "Grupos de {0}" -#: REST/methods/users_groups.py:371 +#: REST/methods/users_groups.py:369 msgid "Current groups" msgstr "Grupos atuais" -#: REST/methods/users_groups.py:398 +#: REST/methods/users_groups.py:396 msgid "UDS Group" msgstr "Grupo UDS" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "Meta group" msgstr "Grupo meta" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "UDS Meta Group" msgstr "Grupo Meta UDS" -#: REST/methods/users_groups.py:430 +#: REST/methods/users_groups.py:428 msgid "Group name is required" msgstr "O nome do grupo é obrigatório" @@ -1108,7 +1156,7 @@ msgstr "Método não encontrado em {}: {}" msgid "Item not found" msgstr "Item não encontrado" -#: REST/model.py:336 web/util/authentication.py:140 web/util/errors.py:79 +#: REST/model.py:336 web/util/authentication.py:143 web/util/errors.py:81 msgid "Access denied" msgstr "Acesso negado" @@ -1116,7 +1164,7 @@ msgstr "Acesso negado" msgid "Operation not supported" msgstr "Operação não suportada" -#: admin/views/__init__.py:59 +#: admin/views/__init__.py:72 msgid "requested a template that do not exist" msgstr "solicitou um modelo que não existe" @@ -1148,11 +1196,11 @@ msgstr "" "formulário USER@DOMAIN.DOM para isso)" #: auths/ActiveDirectory_enterprise/authenticator.py:80 -#: auths/ActiveDirectory_enterprise/authenticator.py:145 +#: auths/ActiveDirectory_enterprise/authenticator.py:155 #: auths/EDirectory_enterprise/authenticator.py:77 #: auths/RegexLdap/authenticator.py:99 auths/RegexLdap/authenticator.py:193 #: auths/SimpleLDAP/authenticator.py:90 auths/SimpleLDAP/authenticator.py:184 -#: core/auths/authenticator.py:147 +#: core/auths/authenticator.py:147 mfas/Email/mfa.py:63 #: osmanagers/WindowsOsManager/windows_domain.py:85 #: osmanagers/WindowsOsManager/windows_random.py:76 #: services/HyperV_enterprise/legacy/provider.py:110 @@ -1168,8 +1216,8 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcv_base.py:52 #: transports/NoMachine_enterprise/nomachine_base.py:69 #: transports/PCoIP_enterprise/pcoip.py:67 transports/RDP/rdp_base.py:81 -#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:45 -#: web/forms/LoginForm.py:46 +#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:46 +#: web/forms/LoginForm.py:47 msgid "Password" msgstr "Senha" @@ -1236,22 +1284,32 @@ msgstr "" "Se não estiver vazio, este host será usado caso o servidor host principal " "não esteja acessível" -#: auths/ActiveDirectory_enterprise/authenticator.py:130 +#: auths/ActiveDirectory_enterprise/authenticator.py:133 +#: auths/SAML_enterprise/saml.py:207 +msgid "MFA attribute" +msgstr "Atributo MFA" + +#: auths/ActiveDirectory_enterprise/authenticator.py:135 +#: auths/SAML_enterprise/saml.py:209 +msgid "Attribute from where to extract the MFA code" +msgstr "Atributo de onde extrair o código MFA" + +#: auths/ActiveDirectory_enterprise/authenticator.py:140 msgid "Active Directory Authenticator" msgstr "Autenticador do Active Directory" -#: auths/ActiveDirectory_enterprise/authenticator.py:132 +#: auths/ActiveDirectory_enterprise/authenticator.py:142 msgid "Authenticate against Active Directory" msgstr "Autenticar-se contra o Active Directory" -#: auths/ActiveDirectory_enterprise/authenticator.py:175 -#: auths/ActiveDirectory_enterprise/authenticator.py:602 +#: auths/ActiveDirectory_enterprise/authenticator.py:187 +#: auths/ActiveDirectory_enterprise/authenticator.py:648 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "Deve especificar o nome de usuário no formulário USERNAME@DOMAIN.DOM" -#: auths/ActiveDirectory_enterprise/authenticator.py:481 -#: auths/ActiveDirectory_enterprise/authenticator.py:532 -#: auths/AzureAD_enterprise/azure_ad.py:313 +#: auths/ActiveDirectory_enterprise/authenticator.py:521 +#: auths/ActiveDirectory_enterprise/authenticator.py:578 +#: auths/AzureAD_enterprise/azure_ad.py:315 #: auths/EDirectory_enterprise/authenticator.py:269 #: auths/EDirectory_enterprise/authenticator.py:300 #: auths/RegexLdap/authenticator.py:538 auths/RegexLdap/authenticator.py:569 @@ -1259,35 +1317,35 @@ msgstr "Deve especificar o nome de usuário no formulário USERNAME@DOMAIN.DOM" msgid "Username not found" msgstr "Nome de usuário não encontrado" -#: auths/ActiveDirectory_enterprise/authenticator.py:514 +#: auths/ActiveDirectory_enterprise/authenticator.py:560 #: auths/SimpleLDAP/authenticator.py:468 msgid "Group not found" msgstr "Grupo não encontrado" -#: auths/ActiveDirectory_enterprise/authenticator.py:559 -#: auths/ActiveDirectory_enterprise/authenticator.py:581 +#: auths/ActiveDirectory_enterprise/authenticator.py:605 +#: auths/ActiveDirectory_enterprise/authenticator.py:627 #: auths/EDirectory_enterprise/authenticator.py:322 #: auths/RegexLdap/authenticator.py:597 auths/SimpleLDAP/authenticator.py:503 #: auths/SimpleLDAP/authenticator.py:523 msgid "Too many results, be more specific" msgstr "Muitos resultados, sejam mais específicos" -#: auths/ActiveDirectory_enterprise/authenticator.py:613 +#: auths/ActiveDirectory_enterprise/authenticator.py:659 msgid "Domain seems to be incorrect, please check it" msgstr "Domínio parece estar incorreto, por favor, verifique" -#: auths/ActiveDirectory_enterprise/authenticator.py:632 +#: auths/ActiveDirectory_enterprise/authenticator.py:678 msgid "" "Server does not seem an Active Directory (it does not have user objects)" msgstr "" "Servidor não parece um Active Directory (ele não tem objetos de usuário)" -#: auths/ActiveDirectory_enterprise/authenticator.py:655 +#: auths/ActiveDirectory_enterprise/authenticator.py:701 msgid "" "Server does not seem an Active Directory (it does not have group objects)" msgstr "Servidor não parece um Active Directory (ele não tem objetos de grupo)" -#: auths/ActiveDirectory_enterprise/authenticator.py:664 +#: auths/ActiveDirectory_enterprise/authenticator.py:710 #: auths/EDirectory_enterprise/authenticator.py:445 #: auths/RegexLdap/authenticator.py:707 auths/SimpleLDAP/authenticator.py:686 msgid "Connection params seem correct, test was succesfully executed" @@ -1382,21 +1440,21 @@ msgstr "Logout da Microsoft" msgid "Office 365 logout" msgstr "Sair do Office 365" -#: auths/AzureAD_enterprise/azure_ad.py:176 auths/SAML_enterprise/saml.py:217 +#: auths/AzureAD_enterprise/azure_ad.py:176 msgid "SAML Authenticator does not support white spaces on field NAME" msgstr "O autenticador SAML não suporta espaços em branco no campo NAME" -#: auths/AzureAD_enterprise/azure_ad.py:323 -#: auths/AzureAD_enterprise/azure_ad.py:349 -#: auths/AzureAD_enterprise/azure_ad.py:359 +#: auths/AzureAD_enterprise/azure_ad.py:325 +#: auths/AzureAD_enterprise/azure_ad.py:351 +#: auths/AzureAD_enterprise/azure_ad.py:361 msgid "Authenticator exception:" msgstr "Exceção do autenticador:" -#: auths/AzureAD_enterprise/azure_ad.py:394 core/util/ldaputil.py:49 +#: auths/AzureAD_enterprise/azure_ad.py:396 core/util/ldaputil.py:49 msgid "Connection error: " msgstr "Erro de conexão:" -#: auths/AzureAD_enterprise/azure_ad.py:397 +#: auths/AzureAD_enterprise/azure_ad.py:399 msgid "Connection params seems correct, test was succesfully executed" msgstr "Params de conexão parece correto, o teste foi executado com sucesso" @@ -1499,7 +1557,7 @@ msgstr "Autenticador de IP" msgid "IP Range" msgstr "Intervalo de IP" -#: auths/IP/authenticator.py:119 auths/IP/authenticator.py:122 +#: auths/IP/authenticator.py:122 auths/IP/authenticator.py:125 msgid "All seems to be fine." msgstr "Tudo parece estar bem." @@ -1694,19 +1752,19 @@ msgstr "" "O atributo id do grupo Ldap parece estar incorreto (nenhum grupo encontrado " "por esse atributo)" -#: auths/SAML_enterprise/saml.py:88 +#: auths/SAML_enterprise/saml.py:76 msgid "SAML Authenticator" msgstr "Autenticador SAML" -#: auths/SAML_enterprise/saml.py:100 +#: auths/SAML_enterprise/saml.py:88 msgid "SAML (v2.0) Authenticator" msgstr "Autenticador SAML (v2.0)" -#: auths/SAML_enterprise/saml.py:130 +#: auths/SAML_enterprise/saml.py:118 msgid "Private key" msgstr "Chave privada" -#: auths/SAML_enterprise/saml.py:133 +#: auths/SAML_enterprise/saml.py:121 msgid "" "Private key used for sign and encription, as generated in base 64 from " "openssl" @@ -1714,15 +1772,15 @@ msgstr "" "Chave privada usada para sinal e inscrição, conforme gerado na base 64 do " "openssl" -#: auths/SAML_enterprise/saml.py:136 auths/SAML_enterprise/saml.py:147 +#: auths/SAML_enterprise/saml.py:124 auths/SAML_enterprise/saml.py:135 msgid "Certificates" msgstr "Certificados" -#: auths/SAML_enterprise/saml.py:141 transports/SPICE/spice_base.py:83 +#: auths/SAML_enterprise/saml.py:129 transports/SPICE/spice_base.py:83 msgid "Certificate" msgstr "Certificado" -#: auths/SAML_enterprise/saml.py:144 +#: auths/SAML_enterprise/saml.py:132 msgid "" "Public key used for sign and encription (public part of previous private " "key), as generated in base 64 from openssl" @@ -1730,61 +1788,83 @@ msgstr "" "Chave pública usada para sinal e inscrição (parte pública da chave privada " "anterior), conforme gerado na base 64 de openssl" -#: auths/SAML_enterprise/saml.py:152 +#: auths/SAML_enterprise/saml.py:140 msgid "IDP Metadata" msgstr "Metadados IDP" -#: auths/SAML_enterprise/saml.py:155 +#: auths/SAML_enterprise/saml.py:143 msgid "" "You can enter here the URL or the IDP metadata or the metadata itself (xml)" msgstr "" "Você pode inserir aqui o URL ou os metadados do IDP ou os próprios metadados " "(xml)" -#: auths/SAML_enterprise/saml.py:158 auths/SAML_enterprise/saml.py:167 +#: auths/SAML_enterprise/saml.py:146 auths/SAML_enterprise/saml.py:155 msgid "Metadata" msgstr "Metadados" -#: auths/SAML_enterprise/saml.py:162 +#: auths/SAML_enterprise/saml.py:150 msgid "Entity ID" msgstr "ID da entidade" -#: auths/SAML_enterprise/saml.py:165 +#: auths/SAML_enterprise/saml.py:153 msgid "ID of the SP. If left blank, this will be autogenerated from server URL" msgstr "" "ID do SP. Se deixado em branco, isso será gerado automaticamente a partir do " "URL do servidor" -#: auths/SAML_enterprise/saml.py:173 +#: auths/SAML_enterprise/saml.py:161 msgid "User name attrs" msgstr "Nome de usuário attrs" -#: auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:163 msgid "Fields from where to extract user name" msgstr "Campos de onde extrair o nome do usuário" -#: auths/SAML_enterprise/saml.py:177 auths/SAML_enterprise/saml.py:187 -#: auths/SAML_enterprise/saml.py:197 +#: auths/SAML_enterprise/saml.py:165 auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:185 msgid "Attributes" msgstr "Atributos" -#: auths/SAML_enterprise/saml.py:183 +#: auths/SAML_enterprise/saml.py:171 msgid "Group name attrs" msgstr "Nome do grupo attrs" -#: auths/SAML_enterprise/saml.py:185 +#: auths/SAML_enterprise/saml.py:173 msgid "Fields from where to extract the groups" msgstr "Campos de onde extrair os grupos" -#: auths/SAML_enterprise/saml.py:193 +#: auths/SAML_enterprise/saml.py:181 msgid "Real name attrs" msgstr "Nome real attrs" -#: auths/SAML_enterprise/saml.py:195 +#: auths/SAML_enterprise/saml.py:183 msgid "Fields from where to extract the real name" msgstr "Campos de onde extrair o nome real" +#: auths/SAML_enterprise/saml.py:189 +msgid "Global logout" +msgstr "Logout global" + +#: auths/SAML_enterprise/saml.py:192 +msgid "If set, logout from UDS will trigger SAML logout" +msgstr "Se definido, o logout do UDS acionará o logout do SAML" + +#: auths/SAML_enterprise/saml.py:197 +msgid "ADFS compatibility" +msgstr "Compatibilidade com ADFS" + +#: auths/SAML_enterprise/saml.py:200 +msgid "If set, enable lowercase url encoding so ADFS can work correctly" +msgstr "" +"Se definido, habilite a codificação de URL em minúsculas para que o ADFS " +"funcione corretamente" + #: auths/SAML_enterprise/saml.py:231 +msgid "This kind of Authenticator does not support white spaces on field NAME" +msgstr "Este tipo de autenticador não suporta espaços em branco no campo NAME" + +#: auths/SAML_enterprise/saml.py:245 msgid "" "Server certificate should be a valid PEM (PEM certificates starts with -----" "BEGIN CERTIFICATE-----)" @@ -1792,11 +1872,11 @@ msgstr "" "O certificado do servidor deve ser um PEM válido (os certificados PEM " "começam com ----- BEGIN CERTIFICATE -----)" -#: auths/SAML_enterprise/saml.py:239 +#: auths/SAML_enterprise/saml.py:253 msgid "Invalid server certificate. " msgstr "Certificado de servidor inválido." -#: auths/SAML_enterprise/saml.py:250 +#: auths/SAML_enterprise/saml.py:264 msgid "" "Private key should be a valid PEM (PEM private keys starts with -----BEGIN " "RSA PRIVATE KEY-----" @@ -1804,27 +1884,47 @@ msgstr "" "A chave privada deve ser um PEM válido (as chaves privadas do PEM começam " "com ----- BEGIN RSA PRIVATE KEY -----" -#: auths/SAML_enterprise/saml.py:258 +#: auths/SAML_enterprise/saml.py:272 msgid "Invalid private key. " msgstr "Chave privada inválida." -#: auths/SAML_enterprise/saml.py:277 +#: auths/SAML_enterprise/saml.py:291 #, python-brace-format msgid "Can't fetch url {0}: {1}" msgstr "Não é possível buscar o URL {0}: {1}" -#: auths/SAML_enterprise/saml.py:288 +#: auths/SAML_enterprise/saml.py:302 msgid " (obtained from URL)" msgstr "(obtido da URL)" -#: auths/SAML_enterprise/saml.py:290 +#: auths/SAML_enterprise/saml.py:304 msgid "XML does not seem valid for IDP Metadata " msgstr "XML não parece válido para metadados IDP" -#: auths/SAML_enterprise/saml.py:312 +#: auths/SAML_enterprise/saml.py:357 msgid "Can't access idp metadata" msgstr "Não é possível acessar os metadados do idp" +#: auths/SAML_enterprise/saml.py:424 +msgid "Error validating SP metadata: " +msgstr "Erro ao validar os metadados do SP:" + +#: auths/SAML_enterprise/saml.py:528 +msgid "Error processing SLO: " +msgstr "Erro ao processar SLO:" + +#: auths/SAML_enterprise/saml.py:558 +msgid "Error processing SAML response: " +msgstr "Erro ao processar a resposta SAML:" + +#: auths/SAML_enterprise/saml.py:571 +msgid "SAML response not authenticated" +msgstr "Resposta SAML não autenticada" + +#: auths/SAML_enterprise/saml.py:598 +msgid "No attributes returned from IdP" +msgstr "Nenhum atributo retornado do IdP" + #: auths/Sample/SampleAuth.py:79 msgid "Sample Authenticator" msgstr "Autenticador de amostra" @@ -1923,11 +2023,11 @@ msgstr "" "Não é possível localizar nenhum grupo com o atributo de associação " "especificado" -#: core/auths/auth.py:110 +#: core/auths/auth.py:111 msgid "System Administrator" msgstr "Administrador do sistema" -#: core/auths/auth.py:150 +#: core/auths/auth.py:155 msgid "Forbidden" msgstr "Proibido" @@ -1963,19 +2063,19 @@ msgid "Can't unpublish publications with services in process" msgstr "" "Não é possível cancelar a publicação de publicações com serviços em andamento" -#: core/managers/user_service.py:337 +#: core/managers/user_service.py:348 msgid "Can't remove a non active element" msgstr "Não é possível remover um elemento não ativo" -#: core/managers/user_service.py:363 +#: core/managers/user_service.py:374 msgid "Can't remove nor cancel {} cause its state don't allow it" msgstr "Não é possível remover nem cancelar {} porque seu estado não permite" -#: core/managers/user_service.py:395 +#: core/managers/user_service.py:406 msgid "The requested service is restrained" msgstr "O serviço solicitado é restrito" -#: core/managers/user_service.py:761 web/util/errors.py:81 +#: core/managers/user_service.py:770 web/util/errors.py:83 msgid "" "Invalid service. The service is not available at this moment. Please, try " "later" @@ -1983,14 +2083,22 @@ msgstr "" "Serviço inválido. O serviço não está disponível neste momento. Por favor " "tente mais tarde" -#: core/managers/user_service.py:798 +#: core/managers/user_service.py:807 msgid "The requested transport {} is not valid for {}" msgstr "O transporte solicitado {} não é válido para {}" -#: core/managers/user_service.py:1078 +#: core/managers/user_service.py:1084 msgid "The service is not accessible from this device" msgstr "O serviço não está acessível a partir deste dispositivo" +#: core/mfas/mfa.py:60 core/mfas/mfa.py:72 +msgid "Base MFA" +msgstr "MFA básico" + +#: core/mfas/mfa.py:184 +msgid "Invalid MFA code" +msgstr "Código MFA inválido" + #: core/module.py:215 msgid "No connection checking method is implemented." msgstr "Nenhum método de verificação de conexão é implementado." @@ -2035,14 +2143,6 @@ msgstr "Impresso em {now:% Y,% b% d} às {now:% H:% M}" msgid "Base Service" msgstr "Serviço Base" -#: core/services/service.py:143 core/services/service.py:154 -#: models/permissions.py:92 models/permissions.py:96 -#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 -#: services/Proxmox/service.py:208 services/Sample/service.py:100 -#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 -msgid "None" -msgstr "Nenhum" - #: core/transports/transport.py:52 msgid "Direct" msgstr "Direto" @@ -2167,24 +2267,24 @@ msgstr "Usuários com serviços" msgid "Cached" msgstr "Em cache" -#: core/util/tools.py:152 +#: core/util/tools.py:155 msgid "{} days {:d}:{:02d}:{:02d}" msgstr "{} dias {: d}: {: 02d}: {: 02d}" -#: core/util/tools.py:171 +#: core/util/tools.py:174 msgid "The basename is not a valid for a hostname" msgstr "O nome da base não é válido para um nome de host" -#: core/util/tools.py:176 +#: core/util/tools.py:179 msgid "The length of basename plus length must be greater than 0" msgstr "O comprimento do nome da base e o comprimento devem ser maiores que 0" -#: core/util/tools.py:181 +#: core/util/tools.py:184 msgid "The length of basename plus length must not be greater than 15" msgstr "" "O comprimento do nome de base mais o comprimento não deve ser maior que 15" -#: core/util/tools.py:186 +#: core/util/tools.py:189 msgid "The machine name can't be only numbers" msgstr "O nome da máquina não pode ser apenas números" @@ -2215,7 +2315,11 @@ msgstr "{} excede o tamanho máximo do nome do host." msgid "{} is not a valid hostname" msgstr "{} não é um nome de host válido" -#: core/util/validators.py:152 +#: core/util/validators.py:131 +msgid "{} is not a valid host:port pair" +msgstr "{} não é um par host:porta válido" + +#: core/util/validators.py:168 msgid "" "Invalid mac range. Mac range must be in format XX:XX:XX:XX:XX:XX-XX:XX:XX:XX:" "XX:XX" @@ -2223,68 +2327,354 @@ msgstr "" "Mac inválido. A faixa do Mac deve estar no formato XX:XX:XX:XX:XX:XX-XX:XX:" "XX:XX:XX:XX" -#: dispatchers/wyse_enterprise/views.py:118 +#: core/util/validators.py:182 +msgid "Email address is too long" +msgstr "O endereço de e-mail é muito longo" + +#: core/util/validators.py:187 +msgid "Email address is not valid" +msgstr "o endereço de email não é válido" + +#: dispatchers/wyse_enterprise/views.py:119 msgid "There are no authenticators available for login" msgstr "Não há autenticadores disponíveis para login" -#: dispatchers/wyse_enterprise/views.py:138 +#: dispatchers/wyse_enterprise/views.py:139 #, python-brace-format msgid "The authenticator {0} is not usable" msgstr "O autenticador {0} não é utilizável" -#: dispatchers/wyse_enterprise/views.py:145 +#: dispatchers/wyse_enterprise/views.py:146 msgid "Invalid credentials" msgstr "Credenciais inválidas" -#: dispatchers/wyse_enterprise/views.py:152 +#: dispatchers/wyse_enterprise/views.py:153 #, python-brace-format msgid "The domain {0} does not exists" msgstr "O domínio {0} não existe" -#: dispatchers/wyse_enterprise/views.py:228 +#: dispatchers/wyse_enterprise/views.py:229 msgid "No services available" msgstr "Nenhum serviço disponível" -#: dispatchers/wyse_enterprise/views.py:244 -#: dispatchers/wyse_enterprise/views.py:344 +#: dispatchers/wyse_enterprise/views.py:245 +#: dispatchers/wyse_enterprise/views.py:345 msgid "Invalid session" msgstr "Sessão inválida" -#: dispatchers/wyse_enterprise/views.py:248 -#: dispatchers/wyse_enterprise/views.py:348 +#: dispatchers/wyse_enterprise/views.py:249 +#: dispatchers/wyse_enterprise/views.py:349 msgid "Invalid authorization" msgstr "Autorização inválida" -#: dispatchers/wyse_enterprise/views.py:259 -#: dispatchers/wyse_enterprise/views.py:354 +#: dispatchers/wyse_enterprise/views.py:260 +#: dispatchers/wyse_enterprise/views.py:355 msgid "Invalid request" msgstr "Pedido inválido" -#: dispatchers/wyse_enterprise/views.py:262 -#: dispatchers/wyse_enterprise/views.py:357 +#: dispatchers/wyse_enterprise/views.py:263 +#: dispatchers/wyse_enterprise/views.py:358 msgid "Invalid credentials used" msgstr "Credenciais inválidas usadas" -#: dispatchers/wyse_enterprise/views.py:277 web/util/errors.py:78 +#: dispatchers/wyse_enterprise/views.py:278 web/util/errors.py:80 msgid "Service not found" msgstr "Serviço não encontrado" -#: dispatchers/wyse_enterprise/views.py:281 +#: dispatchers/wyse_enterprise/views.py:282 msgid "Invalid machine uuid." msgstr "Uuid de máquina inválido." -#: dispatchers/wyse_enterprise/views.py:295 web/util/errors.py:77 +#: dispatchers/wyse_enterprise/views.py:296 web/util/errors.py:79 msgid "Transport not found" msgstr "Transporte não encontrado" -#: dispatchers/wyse_enterprise/views.py:300 -#: dispatchers/wyse_enterprise/views.py:308 -#: dispatchers/wyse_enterprise/views.py:315 +#: dispatchers/wyse_enterprise/views.py:301 +#: dispatchers/wyse_enterprise/views.py:309 +#: dispatchers/wyse_enterprise/views.py:316 msgid "Service not ready at this moment. Please, try again in a while." msgstr "" "O serviço não está pronto neste momento. Por favor, tente novamente daqui a " "pouco." +#: mfas/Email/mfa.py:22 +msgid "Email Multi Factor" +msgstr "E-mail multifator" + +#: mfas/Email/mfa.py:24 +msgid "Email Multi Factor Authenticator" +msgstr "Autenticador multifator de e-mail" + +#: mfas/Email/mfa.py:29 +msgid "SMTP Host" +msgstr "Host SMTP" + +#: mfas/Email/mfa.py:32 +msgid "" +"SMTP Server hostname or IP address. If you are using a non-standard port, " +"add it after a colon, for example: smtp.gmail.com:587" +msgstr "" +"Nome de host ou endereço IP do servidor SMTP. Se você estiver usando uma " +"porta não padrão, adicione-a após dois pontos, por exemplo: smtp.gmail." +"com:587" + +#: mfas/Email/mfa.py:37 mfas/Email/mfa.py:50 mfas/Email/mfa.py:59 +#: mfas/Email/mfa.py:68 +msgid "SMTP Server" +msgstr "Servidor SMTP" + +#: mfas/Email/mfa.py:41 transports/HTML5RDP/html5rdp.py:268 +#: transports/HTML5RDS_enterprise/html5rds.py:255 +msgid "Security" +msgstr "Segurança" + +#: mfas/Email/mfa.py:42 +msgid "Security protocol to use" +msgstr "Protocolo de segurança a ser usado" + +#: mfas/Email/mfa.py:44 +msgid "TLS" +msgstr "TLS" + +#: mfas/Email/mfa.py:45 +msgid "SSL" +msgstr "SSL" + +#: mfas/Email/mfa.py:56 +msgid "User with access to SMTP server" +msgstr "Usuário com acesso ao servidor SMTP" + +#: mfas/Email/mfa.py:65 +msgid "Password of the user with access to SMTP server" +msgstr "Senha do usuário com acesso ao servidor SMTP" + +#: mfas/Email/mfa.py:74 +msgid "Subject" +msgstr "Sujeito" + +#: mfas/Email/mfa.py:76 +msgid "Subject of the email" +msgstr "Assunto do e-mail" + +#: mfas/Email/mfa.py:78 mfas/Email/mfa.py:87 mfas/Email/mfa.py:95 +msgid "Config" +msgstr "Configuração" + +#: mfas/Email/mfa.py:83 +msgid "From Email" +msgstr "Do email" + +#: mfas/Email/mfa.py:85 +msgid "Email address that will be used as sender" +msgstr "Endereço de e-mail que será usado como remetente" + +#: mfas/Email/mfa.py:91 +msgid "Enable HTML" +msgstr "Ativar HTML" + +#: mfas/Email/mfa.py:93 +msgid "Enable HTML in emails" +msgstr "Ativar HTML em e-mails" + +#: mfas/Email/mfa.py:110 +msgid "Invalid SMTP hostname" +msgstr "Nome de host SMTP inválido" + +#: mfas/SMS/mfa.py:19 +msgid "SMS Thought HTTP" +msgstr "SMS Pensamento HTTP" + +#: mfas/SMS/mfa.py:21 +msgid "Simple SMS sending MFA using HTTP" +msgstr "MFA simples de envio de SMS usando HTTP" + +#: mfas/SMS/mfa.py:26 +msgid "URL pattern for SMS sending" +msgstr "Padrão de URL para envio de SMS" + +#: mfas/SMS/mfa.py:29 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"URL pattern for SMS sending. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"Padrão de URL para envio de SMS. Ele pode conter as seguintes variáveis: * " +"{code} - o código para enviar * {phone/+phone} - o número de telefone * " +"{username} - o nome de usuário * {justUsername} - o nome de usuário sem @...." + +#: mfas/SMS/mfa.py:37 mfas/SMS/mfa.py:43 mfas/SMS/mfa.py:56 mfas/SMS/mfa.py:75 +#: mfas/SMS/mfa.py:92 mfas/SMS/mfa.py:101 +msgid "HTTP Server" +msgstr "Servidor HTTP" + +#: mfas/SMS/mfa.py:41 +msgid "Ignore certificate errors" +msgstr "Ignorar erros de certificado" + +#: mfas/SMS/mfa.py:46 +msgid "" +"If checked, the server certificate will be ignored. This is useful if the " +"server uses a self-signed certificate." +msgstr "" +"Se marcado, o certificado do servidor será ignorado. Isso é útil se o " +"servidor usar um certificado autoassinado." + +#: mfas/SMS/mfa.py:52 +msgid "SMS sending method" +msgstr "Método de envio de SMS" + +#: mfas/SMS/mfa.py:54 mfas/SMS/mfa.py:108 +msgid "Method for sending SMS" +msgstr "Método de envio de SMS" + +#: mfas/SMS/mfa.py:63 +msgid "Headers for SMS requests" +msgstr "Cabeçalhos para solicitações de SMS" + +#: mfas/SMS/mfa.py:66 +msgid "" +"Headers for SMS requests. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @....\n" +"Headers are in the form of \"Header: Value\". (without the quotes)" +msgstr "" +"Cabeçalhos para solicitações de SMS. Ele pode conter as seguintes variáveis: " +"* {code} - o código para enviar * {phone/+phone} - o número de telefone * " +"{username} - o nome de usuário * {justUsername} - o nome de usuário sem " +"@.... Os cabeçalhos estão em a forma de \"Cabeçalho: Valor\". (sem as aspas)" + +#: mfas/SMS/mfa.py:81 +msgid "Parameters for SMS POST/PUT sending" +msgstr "Parâmetros para envio de SMS POST/PUT" + +#: mfas/SMS/mfa.py:84 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"Parameters for SMS sending via POST/PUT. It can contain the following " +"variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"Parâmetros para envio de SMS via POST/PUT. Ele pode conter as seguintes " +"variáveis: * {code} - o código para enviar * {phone/+phone} - o número de " +"telefone * {username} - o nome de usuário * {justUsername} - o nome de " +"usuário sem @...." + +#: mfas/SMS/mfa.py:96 +msgid "SMS encoding" +msgstr "Codificação de SMS" + +#: mfas/SMS/mfa.py:99 +msgid "Encoding for SMS" +msgstr "Codificação para SMS" + +#: mfas/SMS/mfa.py:106 +msgid "SMS authentication method" +msgstr "Método de autenticação SMS" + +#: mfas/SMS/mfa.py:110 mfas/SMS/mfa.py:124 mfas/SMS/mfa.py:133 +msgid "HTTP Authentication" +msgstr "Autenticação HTTP" + +#: mfas/SMS/mfa.py:113 +msgid "HTTP Basic Auth" +msgstr "Autenticação básica HTTP" + +#: mfas/SMS/mfa.py:114 +msgid "HTTP Digest Auth" +msgstr "Autenticação de resumo HTTP" + +#: mfas/SMS/mfa.py:120 +msgid "SMS authentication user or token" +msgstr "Usuário ou token de autenticação SMS" + +#: mfas/SMS/mfa.py:122 +msgid "User or token for SMS authentication" +msgstr "Usuário ou token para autenticação por SMS" + +#: mfas/SMS/mfa.py:129 +msgid "SMS authentication password" +msgstr "Senha de autenticação SMS" + +#: mfas/SMS/mfa.py:131 +msgid "Password for SMS authentication" +msgstr "Senha para autenticação SMS" + +#: mfas/SMS/mfa.py:138 +msgid "SMS response OK regex" +msgstr "Resposta SMS OK regex" + +#: mfas/SMS/mfa.py:141 +msgid "" +"Regex for SMS response OK. If emty, the response is considered OK if status " +"code is 200." +msgstr "" +"Regex para resposta SMS OK. Se vazio, a resposta é considerada OK se o " +"código de status for 200." + +#: mfas/SMS/mfa.py:144 mfas/SMS/mfa.py:153 +msgid "HTTP Response" +msgstr "Resposta HTTP" + +#: mfas/SMS/mfa.py:148 +msgid "SMS response error action" +msgstr "Ação de erro de resposta SMS" + +#: mfas/SMS/mfa.py:151 +msgid "Action for SMS response error" +msgstr "Ação para erro de resposta SMS" + +#: mfas/SMS/mfa.py:155 +msgid "Allow user log in without MFA" +msgstr "Permitir login do usuário sem MFA" + +#: mfas/SMS/mfa.py:156 +msgid "Deny user log in" +msgstr "Negar login de usuário" + +#: mfas/SMS/mfa.py:199 +msgid "SMS sending failed" +msgstr "Falha no envio de SMS" + +#: mfas/SMS/mfa.py:263 web/views/modern.py:275 +msgid "MFA Code" +msgstr "Código MFA" + +#: mfas/Sample/mfa.py:16 +msgid "Sample Multi Factor" +msgstr "Amostra Multifator" + +#: mfas/Sample/mfa.py:18 +msgid "Sample Multi Factor Authenticator" +msgstr "Exemplo de autenticador multifator" + +#: mfas/Sample/mfa.py:22 +msgid "Sample useless field" +msgstr "Exemplo de campo inútil" + +#: mfas/Sample/mfa.py:25 +msgid "This is a useless field, for sample and testing pourposes" +msgstr "Este é um campo inútil, para fins de amostragem e teste" + #: models/calendar_action.py:63 msgid "Publish" msgstr "Publicar" @@ -2841,7 +3231,7 @@ msgid "Service pool for report" msgstr "Pool de serviço para relatório" #: reports/auto/fields.py:104 reports/lists/users.py:61 -#: web/forms/LoginForm.py:50 +#: web/forms/LoginForm.py:51 msgid "Authenticator" msgstr "Autenticador" @@ -2893,11 +3283,11 @@ msgstr "ID do usuário" msgid "Real Name" msgstr "Nome real" -#: reports/stats/auth_stats.py:58 +#: reports/stats/auth_stats.py:59 msgid "Statistics by authenticator" msgstr "Estatísticas por autenticador" -#: reports/stats/auth_stats.py:60 +#: reports/stats/auth_stats.py:61 msgid "" "Generates a report with the statistics of an authenticator for a desired " "period" @@ -2905,14 +3295,14 @@ msgstr "" "Gera um relatório com as estatísticas de um autenticador para um período " "desejado" -#: reports/stats/auth_stats.py:136 reports/stats/usage_by_pool.py:146 +#: reports/stats/auth_stats.py:123 reports/stats/usage_by_pool.py:146 #: templates/uds/reports/stats/authenticator_stats.html:4 #: templates/uds/reports/stats/usage-by-pool.html:4 #: templates/uds/reports/stats/usage-by-pool.html:6 msgid "Users usage list" msgstr "Lista de usuários" -#: reports/stats/auth_stats.py:137 reports/stats/usage_by_pool.py:147 +#: reports/stats/auth_stats.py:124 reports/stats/usage_by_pool.py:147 msgid "UDS Report of users usage" msgstr "Relatório UDS de uso dos usuários" @@ -2985,30 +3375,26 @@ msgstr "Número de intervalos" msgid "Number of sampling points used in charts" msgstr "Número de pontos de amostragem usados em gráficos" -#: reports/stats/pools_performance.py:128 -msgid "Select at least a service pool for the report" -msgstr "Selecione pelo menos um pool de serviços para o relatório" - -#: reports/stats/pools_performance.py:211 +#: reports/stats/pools_performance.py:194 msgid "Distinct Users" msgstr "Usuários distintos" -#: reports/stats/pools_performance.py:230 -#: reports/stats/pools_performance.py:242 -#: reports/stats/pools_performance.py:287 +#: reports/stats/pools_performance.py:213 +#: reports/stats/pools_performance.py:225 +#: reports/stats/pools_performance.py:270 #: templates/uds/reports/stats/pools-performance.html:36 msgid "Accesses" msgstr "Acessos" -#: reports/stats/pools_performance.py:258 +#: reports/stats/pools_performance.py:241 msgid "UDS Pools Performance Report" msgstr "Relatório de desempenho de pools do UDS" -#: reports/stats/pools_performance.py:259 +#: reports/stats/pools_performance.py:242 msgid "Pools Performance" msgstr "Desempenho das Piscinas" -#: reports/stats/pools_performance.py:285 reports/stats/user_access.py:297 +#: reports/stats/pools_performance.py:268 reports/stats/user_access.py:282 #: templates/uds/reports/stats/pools-performance.html:34 #: templates/uds/reports/stats/user-access.html:34 msgid "Date range" @@ -3022,21 +3408,21 @@ msgstr "Uso de piscinas em um dia" msgid "Pools usage counters for an specific day" msgstr "Contadores de uso de conjuntos para um dia específico" -#: reports/stats/pools_usage_day.py:128 +#: reports/stats/pools_usage_day.py:126 msgid "Services by hour" msgstr "Serviços por hora" -#: reports/stats/pools_usage_day.py:133 reports/stats/pools_usage_day.py:171 -#: reports/stats/user_access.py:228 reports/stats/user_access.py:240 +#: reports/stats/pools_usage_day.py:131 reports/stats/pools_usage_day.py:169 +#: reports/stats/user_access.py:213 reports/stats/user_access.py:225 #: templates/uds/reports/stats/pools-usage-day.html:28 msgid "Hour" msgstr "Hora" -#: reports/stats/pools_usage_day.py:152 +#: reports/stats/pools_usage_day.py:150 msgid "Services usage report for a day" msgstr "Relatório de uso de serviços por um dia" -#: reports/stats/pools_usage_day.py:153 +#: reports/stats/pools_usage_day.py:151 msgid "Service usage report" msgstr "Relatório de uso de serviço" @@ -3104,63 +3490,63 @@ msgstr "TODAS AS PISCINAS" msgid "Seconds" msgstr "Segundos" -#: reports/stats/user_access.py:59 reports/stats/user_access.py:281 +#: reports/stats/user_access.py:59 reports/stats/user_access.py:266 msgid "Users access report by date" msgstr "Usuários acessam relatório por data" -#: reports/stats/user_access.py:60 reports/stats/user_access.py:282 +#: reports/stats/user_access.py:60 reports/stats/user_access.py:267 msgid "Report of user access to platform by date" msgstr "Relatório de acesso do usuário à plataforma por data" -#: reports/stats/user_access.py:186 +#: reports/stats/user_access.py:171 msgid "Users Access (global)" msgstr "Acesso de Usuários (global)" -#: reports/stats/user_access.py:206 +#: reports/stats/user_access.py:191 msgid "Users Access (by week)" msgstr "Acesso de Usuários (por semana)" -#: reports/stats/user_access.py:209 reports/stats/user_access.py:245 +#: reports/stats/user_access.py:194 reports/stats/user_access.py:230 msgid "Monday" msgstr "Segunda-feira" -#: reports/stats/user_access.py:210 reports/stats/user_access.py:246 +#: reports/stats/user_access.py:195 reports/stats/user_access.py:231 msgid "Tuesday" msgstr "terça" -#: reports/stats/user_access.py:211 reports/stats/user_access.py:247 +#: reports/stats/user_access.py:196 reports/stats/user_access.py:232 msgid "Wednesday" msgstr "Quarta-feira" -#: reports/stats/user_access.py:212 reports/stats/user_access.py:248 +#: reports/stats/user_access.py:197 reports/stats/user_access.py:233 msgid "Thursday" msgstr "Quinta-feira" -#: reports/stats/user_access.py:213 reports/stats/user_access.py:249 +#: reports/stats/user_access.py:198 reports/stats/user_access.py:234 msgid "Friday" msgstr "Sexta-feira" -#: reports/stats/user_access.py:214 reports/stats/user_access.py:250 +#: reports/stats/user_access.py:199 reports/stats/user_access.py:235 msgid "Saturday" msgstr "sábado" -#: reports/stats/user_access.py:215 reports/stats/user_access.py:251 +#: reports/stats/user_access.py:200 reports/stats/user_access.py:236 msgid "Sunday" msgstr "domingo" -#: reports/stats/user_access.py:217 reports/stats/user_access.py:243 +#: reports/stats/user_access.py:202 reports/stats/user_access.py:228 msgid "Day of week" msgstr "Dia da semana" -#: reports/stats/user_access.py:226 reports/stats/user_access.py:238 +#: reports/stats/user_access.py:211 reports/stats/user_access.py:223 msgid "Users Access (by hour)" msgstr "Acesso de Usuários (por hora)" -#: reports/stats/user_access.py:267 +#: reports/stats/user_access.py:252 msgid "Users access to UDS" msgstr "Acesso de usuários à UDS" -#: reports/stats/user_access.py:268 +#: reports/stats/user_access.py:253 msgid "UDS Report for users access" msgstr "Relatório UDS para acesso de usuários" @@ -4397,12 +4783,12 @@ msgstr "Fornecedor de máquinas IP estáticas" msgid "Provides connection to machines by IP" msgstr "Fornece conexão com máquinas por IP" -#: services/PhysicalMachines/service_multi.py:64 +#: services/PhysicalMachines/service_multi.py:62 #: services/Vmware_enterprise/service_fixed.py:55 msgid "Service Token" msgstr "Token de Serviço" -#: services/PhysicalMachines/service_multi.py:67 +#: services/PhysicalMachines/service_multi.py:65 #: services/Vmware_enterprise/service_fixed.py:57 msgid "" "Service token that will be used by actors to communicate with service. Leave " @@ -4411,39 +4797,39 @@ msgstr "" "Token de serviço que será usado pelos atores para se comunicar com o " "serviço. Deixe em branco para atribuição persistente." -#: services/PhysicalMachines/service_multi.py:75 +#: services/PhysicalMachines/service_multi.py:73 #: services/RDS_enterprise/provider.py:51 msgid "List of servers" msgstr "Lista de servidores" -#: services/PhysicalMachines/service_multi.py:76 +#: services/PhysicalMachines/service_multi.py:74 msgid "List of servers available for this service" msgstr "Lista de servidores disponíveis para este serviço" -#: services/PhysicalMachines/service_multi.py:81 +#: services/PhysicalMachines/service_multi.py:79 msgid "Check Port" msgstr "Verificar porta" -#: services/PhysicalMachines/service_multi.py:85 +#: services/PhysicalMachines/service_multi.py:83 msgid "" "If non zero, only hosts responding to connection on that port will be served." msgstr "" "Se diferente de zero, apenas os hosts que responderem à conexão nessa porta " "serão atendidos." -#: services/PhysicalMachines/service_multi.py:92 +#: services/PhysicalMachines/service_multi.py:90 msgid "Skip time" msgstr "Ignorar tempo" -#: services/PhysicalMachines/service_multi.py:95 +#: services/PhysicalMachines/service_multi.py:93 msgid "If a host fails to check, skip it for this time (in minutes)." msgstr "Se um host falhar na verificação, pule esse período (em minutos)." -#: services/PhysicalMachines/service_multi.py:103 +#: services/PhysicalMachines/service_multi.py:101 msgid "Max session per machine" msgstr "Sessão máxima por máquina" -#: services/PhysicalMachines/service_multi.py:107 +#: services/PhysicalMachines/service_multi.py:105 msgid "" "Maximum session duration before UDS thinks this machine got locked and " "releases it (hours). 0 means \"never\"." @@ -4451,24 +4837,24 @@ msgstr "" "Duração máxima da sessão antes que o UDS pense que esta máquina foi " "bloqueada e a libere (horas). 0 significa \"nunca\"." -#: services/PhysicalMachines/service_multi.py:114 +#: services/PhysicalMachines/service_multi.py:112 msgid "Lock machine by external access" msgstr "Bloquear máquina por acesso externo" -#: services/PhysicalMachines/service_multi.py:115 +#: services/PhysicalMachines/service_multi.py:113 msgid "" "If checked, UDS will lock the machine if it is accesed from outside UDS." msgstr "Se marcado, o UDS bloqueará a máquina se for acessada de fora do UDS." -#: services/PhysicalMachines/service_multi.py:122 +#: services/PhysicalMachines/service_multi.py:120 msgid "Static Multiple IP" msgstr "IP múltiplo estático" -#: services/PhysicalMachines/service_multi.py:124 +#: services/PhysicalMachines/service_multi.py:122 msgid "This service provides access to POWERED-ON Machines by IP" msgstr "Este serviço fornece acesso a máquinas POWERED-ON por IP" -#: services/PhysicalMachines/service_multi.py:158 +#: services/PhysicalMachines/service_multi.py:156 msgid "Invalid value detected on servers list: \"{}\"" msgstr "Valor inválido detectado na lista de servidores: \"{}\"" @@ -5371,47 +5757,47 @@ msgstr "Sombra" msgid "Shadow memory multiplier (use with care)" msgstr "Multiplicador de memória de sombra (use com cuidado)" -#: temp_for_locales.py:96 +#: temp_for_locales.py:99 msgid "Spanish" msgstr "espanhol" -#: temp_for_locales.py:97 +#: temp_for_locales.py:100 msgid "English" msgstr "Inglês" -#: temp_for_locales.py:98 +#: temp_for_locales.py:101 msgid "French" msgstr "francês" -#: temp_for_locales.py:99 +#: temp_for_locales.py:102 msgid "German" msgstr "alemão" -#: temp_for_locales.py:100 +#: temp_for_locales.py:103 msgid "Portuguese" msgstr "Português" -#: temp_for_locales.py:101 +#: temp_for_locales.py:104 msgid "Italian" msgstr "italiano" -#: temp_for_locales.py:102 +#: temp_for_locales.py:105 msgid "Basque" msgstr "Basco" -#: temp_for_locales.py:103 +#: temp_for_locales.py:106 msgid "Arabic" msgstr "árabe" -#: temp_for_locales.py:104 +#: temp_for_locales.py:107 msgid "Russian" msgstr "russo" -#: temp_for_locales.py:105 +#: temp_for_locales.py:108 msgid "Catalan" msgstr "catalão" -#: temp_for_locales.py:106 +#: temp_for_locales.py:109 msgid "Chinese" msgstr "chinês" @@ -5617,7 +6003,7 @@ msgstr "Mostrar papel de parede" #: transports/HTML5RDP/html5rdp.py:134 #: transports/HTML5RDS_enterprise/html5rds.py:123 -#: transports/RDP/rdp_base.py:222 +#: transports/RDP/rdp_base.py:241 msgid "" "If checked, the wallpaper and themes will be shown on machine (better user " "experience, more bandwidth)" @@ -5627,19 +6013,19 @@ msgstr "" #: transports/HTML5RDP/html5rdp.py:139 #: transports/HTML5RDS_enterprise/html5rds.py:128 -#: transports/RDP/rdp_base.py:235 +#: transports/RDP/rdp_base.py:254 msgid "Allow Desk.Comp." msgstr "Permitir Desk.Comp." #: transports/HTML5RDP/html5rdp.py:141 #: transports/HTML5RDS_enterprise/html5rds.py:130 -#: transports/RDP/rdp_base.py:237 +#: transports/RDP/rdp_base.py:256 msgid "If checked, desktop composition will be allowed" msgstr "Se marcada, a composição da área de trabalho será permitida" #: transports/HTML5RDP/html5rdp.py:145 #: transports/HTML5RDS_enterprise/html5rds.py:134 -#: transports/RDP/rdp_base.py:241 transports/RDS_enterprise/rds_base.py:150 +#: transports/RDP/rdp_base.py:260 transports/RDS_enterprise/rds_base.py:150 msgid "Font Smoothing" msgstr "Suavização de fontes" @@ -5900,11 +6286,6 @@ msgstr "Força cada conexão a ser aberta em uma nova janela." msgid "Override UDS window and replace it with the connection." msgstr "Substitua a janela UDS e substitua-a pela conexão." -#: transports/HTML5RDP/html5rdp.py:268 -#: transports/HTML5RDS_enterprise/html5rds.py:255 -msgid "Security" -msgstr "Segurança" - #: transports/HTML5RDP/html5rdp.py:269 #: transports/HTML5RDS_enterprise/html5rds.py:256 msgid "Connection security mode for Guacamole RDP connection" @@ -5943,11 +6324,11 @@ msgstr "" msgid "TLS (Transport Security Layer encryption)" msgstr "TLS (criptografia de camada de segurança de transporte)" -#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:173 +#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:192 msgid "RDP Port" msgstr "Porta RDP" -#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:174 +#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:193 msgid "Use this port as RDP port. Defaults to 3389." msgstr "Use esta porta como porta RDP. O padrão é 3389." @@ -5965,13 +6346,13 @@ msgstr "" "Caminho personalizado para o túnel Glyptodon Enterprise. (Válido apenas para " "Glyptodon Enterprise Tunnel)" -#: transports/HTML5RDP/html5rdp.py:327 +#: transports/HTML5RDP/html5rdp.py:326 #: transports/HTML5RDS_enterprise/html5rds.py:296 #: transports/HTML5VNC/html5vnc.py:187 msgid "The server must be http or https" msgstr "O servidor deve ser http ou https" -#: transports/HTML5RDP/html5rdp.py:332 +#: transports/HTML5RDP/html5rdp.py:331 #: transports/HTML5RDS_enterprise/html5rds.py:301 msgid "" "Empty credentials (on Credentials tab) is only allowed with Security level " @@ -6012,7 +6393,7 @@ msgstr "Porta do servidor VNC" msgid "Port of the VNC server." msgstr "Porta do servidor VNC." -#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:205 +#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:224 #: transports/RDS_enterprise/rds_base.py:136 msgid "Color depth" msgstr "Profundidade de cor" @@ -6068,12 +6449,12 @@ msgid "If checked, the connection will be opened in full screen mode" msgstr "Se marcada, a conexão será aberta em modo de tela inteira" #: transports/NICEDCV_enterprise/nicedcv_base.py:66 -#: transports/RDP/rdp_base.py:227 +#: transports/RDP/rdp_base.py:246 msgid "Multiple monitors" msgstr "Monitores múltiplos" #: transports/NICEDCV_enterprise/nicedcv_base.py:69 -#: transports/RDP/rdp_base.py:230 +#: transports/RDP/rdp_base.py:249 msgid "" "If checked, all client monitors will be used for displaying (only works on " "windows clients)" @@ -6129,7 +6510,7 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcvtunnel.py:91 #: transports/NoMachine_enterprise/nomachine_tunneltransport.py:114 -#: transports/RDP/rdptunnel.py:135 transports/RDS_enterprise/rdstunnel.py:126 +#: transports/RDP/rdptunnel.py:136 transports/RDS_enterprise/rdstunnel.py:126 #: transports/SPICE/spice_tunnel.py:107 transports/X2GO/x2go_tunnel.py:116 msgid "Must use HOST:PORT in Tunnel Server Field" msgstr "Deve usar HOST: PORT no campo do servidor de encapsulamento" @@ -6267,88 +6648,96 @@ msgstr "Habilitar webcam" msgid "If checked, webcam will be redirected (ONLY Windows)." msgstr "Se marcada, a webcam será redirecionada (SOMENTE Windows)." -#: transports/RDP/rdp_base.py:164 transports/RDS_enterprise/rds_base.py:128 +#: transports/RDP/rdp_base.py:164 +msgid "USB redirection" +msgstr "Redirecionamento USB" + +#: transports/RDP/rdp_base.py:166 +msgid "USB redirection policy" +msgstr "Política de redirecionamento USB" + +#: transports/RDP/rdp_base.py:183 transports/RDS_enterprise/rds_base.py:128 msgid "Credssp Support" msgstr "Suporte de Credssp" -#: transports/RDP/rdp_base.py:166 transports/RDS_enterprise/rds_base.py:130 +#: transports/RDP/rdp_base.py:185 transports/RDS_enterprise/rds_base.py:130 msgid "If checked, will enable Credentials Provider Support)" msgstr "Se marcada, ativará o Suporte ao Provedor de Credenciais)" -#: transports/RDP/rdp_base.py:181 +#: transports/RDP/rdp_base.py:200 msgid "Screen Size" msgstr "Tamanho da tela" -#: transports/RDP/rdp_base.py:183 +#: transports/RDP/rdp_base.py:202 msgid "Screen size for this transport" msgstr "Tamanho da tela para este transporte" -#: transports/RDP/rdp_base.py:207 transports/RDS_enterprise/rds_base.py:138 +#: transports/RDP/rdp_base.py:226 transports/RDS_enterprise/rds_base.py:138 msgid "Color depth for this connection" msgstr "Profundidade de cor para esta conexão" -#: transports/RDP/rdp_base.py:219 +#: transports/RDP/rdp_base.py:238 msgid "Wallpaper/theme" msgstr "Papel de parede / tema" -#: transports/RDP/rdp_base.py:244 +#: transports/RDP/rdp_base.py:263 msgid "If checked, fonts smoothing will be allowed" msgstr "Se marcada, a suavização de fontes será permitida" -#: transports/RDP/rdp_base.py:248 +#: transports/RDP/rdp_base.py:267 msgid "Connection Bar" msgstr "Barra de conexão" -#: transports/RDP/rdp_base.py:250 +#: transports/RDP/rdp_base.py:269 msgid "If checked, connection bar will be shown (only on Windows clients)" msgstr "" "Se marcado, a barra de conexão será mostrada (somente em clientes Windows)" -#: transports/RDP/rdp_base.py:256 transports/RDS_enterprise/rds_base.py:181 +#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:181 msgid "Multimedia sync" msgstr "Sincronização multimídia" -#: transports/RDP/rdp_base.py:259 transports/RDS_enterprise/rds_base.py:184 +#: transports/RDP/rdp_base.py:278 transports/RDS_enterprise/rds_base.py:184 msgid "If checked. Linux client will use multimedia parameter for xfreerdp" msgstr "Se marcado. Cliente Linux usará parâmetro multimídia para o xfreerdp" -#: transports/RDP/rdp_base.py:264 transports/RDS_enterprise/rds_base.py:189 +#: transports/RDP/rdp_base.py:283 transports/RDS_enterprise/rds_base.py:189 msgid "Use Alsa" msgstr "Use Alsa" -#: transports/RDP/rdp_base.py:267 transports/RDS_enterprise/rds_base.py:192 +#: transports/RDP/rdp_base.py:286 transports/RDS_enterprise/rds_base.py:192 msgid "" "If checked, Linux client will try to use ALSA, otherwise Pulse will be used" msgstr "" "Se marcado, o cliente Linux tentará usar o ALSA, caso contrário o Pulse será " "usado" -#: transports/RDP/rdp_base.py:272 transports/RDS_enterprise/rds_base.py:197 +#: transports/RDP/rdp_base.py:291 transports/RDS_enterprise/rds_base.py:197 msgid "Printer string" msgstr "Cadeia de impressão" -#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:200 +#: transports/RDP/rdp_base.py:294 transports/RDS_enterprise/rds_base.py:200 msgid "If printer is checked, the printer string used with xfreerdp client" msgstr "" "Se a impressora estiver marcada, a string de impressora usada com o cliente " "xfreerdp" -#: transports/RDP/rdp_base.py:281 transports/RDS_enterprise/rds_base.py:206 +#: transports/RDP/rdp_base.py:300 transports/RDS_enterprise/rds_base.py:206 msgid "Smartcard string" msgstr "Seqüência de cartão inteligente" -#: transports/RDP/rdp_base.py:284 transports/RDS_enterprise/rds_base.py:209 +#: transports/RDP/rdp_base.py:303 transports/RDS_enterprise/rds_base.py:209 msgid "If smartcard is checked, the smartcard string used with xfreerdp client" msgstr "" "Se o smartcard estiver marcado, a cadeia de smartcard usada com o cliente " "xfreerdp" -#: transports/RDP/rdp_base.py:290 transports/RDP/rdp_base.py:310 +#: transports/RDP/rdp_base.py:309 transports/RDP/rdp_base.py:329 #: transports/RDS_enterprise/rds_base.py:215 msgid "Custom parameters" msgstr "Parâmetros personalizados" -#: transports/RDP/rdp_base.py:293 transports/RDS_enterprise/rds_base.py:218 +#: transports/RDP/rdp_base.py:312 transports/RDS_enterprise/rds_base.py:218 msgid "" "If not empty, extra parameter to include for Linux Client (for example /usb:" "id,dev:054c:0268, or aything compatible with your xfreerdp client)" @@ -6357,11 +6746,11 @@ msgstr "" "(por exemplo, / usb: id, dev: 054c: 0268, ou qualquer coisa compatível com " "seu cliente xfreerdp)" -#: transports/RDP/rdp_base.py:300 +#: transports/RDP/rdp_base.py:319 msgid "Allow Microsoft Rdp Client" msgstr "Permitir cliente Microsoft Rdp" -#: transports/RDP/rdp_base.py:303 +#: transports/RDP/rdp_base.py:322 msgid "" "If checked, allows use of Microsoft Remote Desktop Client. PASSWORD WILL BE " "PROMPTED!" @@ -6369,7 +6758,7 @@ msgstr "" "Se marcado, permite o uso do Microsoft Remote Desktop Client. A SENHA SERÁ " "AVANÇADA!" -#: transports/RDP/rdp_base.py:313 +#: transports/RDP/rdp_base.py:332 msgid "" "If not empty, extra parameter to include for Mac OS X Freerdp Client (for " "example /usb:id,dev:054c:0268, or aything compatible with your xfreerdp " @@ -6622,74 +7011,74 @@ msgstr "Muitos erros de autenticação. Usuário temporariamente bloqueado" msgid "Access tried from an unallowed source" msgstr "Acesso tentado de uma fonte não permitida" -#: web/util/authentication.py:155 +#: web/util/authentication.py:158 msgid "Invalid data" msgstr "Dados inválidos" -#: web/util/configjs.py:170 +#: web/util/configjs.py:163 msgid "Access limited by calendar" msgstr "Acesso limitado por calendário" -#: web/util/configjs.py:226 +#: web/util/configjs.py:222 msgid "Windows client" msgstr "Cliente do Windows" -#: web/util/configjs.py:230 +#: web/util/configjs.py:226 msgid "Mac OS X client" msgstr "Cliente Mac OS X" -#: web/util/configjs.py:233 +#: web/util/configjs.py:229 msgid "Debian based Linux client" msgstr "Cliente Linux baseado em Debian" -#: web/util/configjs.py:235 web/util/configjs.py:243 web/util/configjs.py:263 +#: web/util/configjs.py:231 web/util/configjs.py:239 web/util/configjs.py:259 msgid "(requires Python-3.6 or newer)" msgstr "(requer Python-3.6 ou mais recente)" -#: web/util/configjs.py:241 +#: web/util/configjs.py:237 msgid "RPM based Linux client (Fedora, Suse, ...)" msgstr "Cliente Linux baseado em RPM (Fedora, Suse, ...)" -#: web/util/configjs.py:249 +#: web/util/configjs.py:245 msgid "Binary appimage X86_64 Linux client" msgstr "Cliente binário appimage X86_64 Linux" -#: web/util/configjs.py:255 +#: web/util/configjs.py:251 msgid "Binary appimage Raspberry Linux client" msgstr "Cliente binário appimage Raspberry Linux" -#: web/util/configjs.py:261 +#: web/util/configjs.py:257 msgid "Generic .tar.gz Linux client" msgstr "Cliente Linux genérico .tar.gz" -#: web/util/errors.py:76 +#: web/util/errors.py:78 msgid "Unknown error" msgstr "Erro desconhecido" -#: web/util/errors.py:83 +#: web/util/errors.py:85 msgid "Maximum services limit reached. Please, contact administrator" msgstr "" "Limite máximo de serviços atingido. Por favor, entre em contato com o " "administrador" -#: web/util/errors.py:84 +#: web/util/errors.py:86 msgid "You need to enable cookies to let this application work" msgstr "" "Você precisa ativar os cookies para permitir que este aplicativo funcione" -#: web/util/errors.py:86 +#: web/util/errors.py:88 msgid "Authenticator not found" msgstr "Autenticador não encontrado" -#: web/util/errors.py:87 +#: web/util/errors.py:89 msgid "Invalid authenticator" msgstr "Autenticador inválido" -#: web/util/errors.py:88 +#: web/util/errors.py:90 msgid "Invalid request received" msgstr "Pedido inválido recebido" -#: web/util/errors.py:90 +#: web/util/errors.py:92 msgid "" "Your browser is not supported. Please, upgrade it to a modern HTML5 browser " "like Firefox or Chrome" @@ -6697,40 +7086,44 @@ msgstr "" "Seu navegador não é suportado. Por favor, atualize-o para um navegador HTML5 " "moderno como o Firefox ou o Chrome" -#: web/util/errors.py:92 +#: web/util/errors.py:94 msgid "The requested service is in maintenance mode" msgstr "O serviço solicitado está no modo de manutenção" -#: web/util/errors.py:93 +#: web/util/errors.py:95 msgid "" "The service is not ready.\n" "Please, try again in a few moments." msgstr "" "O serviço não está pronto. Por favor, tente novamente em alguns instantes." -#: web/util/errors.py:94 +#: web/util/errors.py:96 msgid "Preparing service" msgstr "Preparando serviço" -#: web/util/errors.py:95 +#: web/util/errors.py:97 msgid "Service access denied by calendars" msgstr "Acesso de serviço negado por calendários" -#: web/util/errors.py:96 +#: web/util/errors.py:98 msgid "Page not found" msgstr "página não encontrada" -#: web/util/errors.py:97 +#: web/util/errors.py:99 msgid "Unexpected error" msgstr "Erro inesperado" -#: web/util/errors.py:98 +#: web/util/errors.py:100 msgid "" "Reloading this page is not supported. Please, reopen service from origin." msgstr "" "Recarregar esta página não é suportado. Por favor, reabra o serviço de " "origem." +#: web/util/errors.py:101 +msgid "Invalid Multi-Factor Authentication code" +msgstr "Código de autenticação multifator inválido" + #: web/util/services.py:319 msgid "" "This service is about to be replaced by a new version. Please, close the " @@ -6751,6 +7144,14 @@ msgstr "" "Seu serviço está sendo criado. Aguarde alguns segundos enquanto o " "concluímos.)" -#: web/views/auth.py:177 +#: web/views/auth.py:189 msgid "Authenticator does not provide information" msgstr "O autenticador não fornece informações" + +#: web/views/modern.py:269 +msgid "{} days" +msgstr "{} dias" + +#: web/views/modern.py:271 +msgid "{} hours" +msgstr "{} horas" diff --git a/server/src/uds/locale/pt/LC_MESSAGES/djangojs.po b/server/src/uds/locale/pt/LC_MESSAGES/djangojs.po index d6765207..2607a046 100644 --- a/server/src/uds/locale/pt/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/pt/LC_MESSAGES/djangojs.po @@ -9,16 +9,17 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-10 13:33+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:16+0000\n" +"Last-Translator: Víctor Alonso , 2020\n" "Language-Team: Portuguese (http://www.transifex.com/openuds/openuds/language/" "pt/)\n" "Language: pt\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" +"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % " +"1000000 == 0 ? 1 : 2;\n" #: static/admin/main.js:1 static/admin/translations-fakejs.js:23 #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:12 @@ -31,14 +32,14 @@ msgstr "a Principal" #: static/admin/main.js:1 static/admin/translations-fakejs.js:11 #: static/admin/translations-fakejs.js:29 -#: static/admin/translations-fakejs.js:179 -#: static/admin/translations-fakejs.js:191 -#: static/admin/translations-fakejs.js:193 -#: static/admin/translations-fakejs.js:195 -#: static/admin/translations-fakejs.js:197 -#: static/admin/translations-fakejs.js:254 -#: static/admin/translations-fakejs.js:256 -#: static/admin/translations-fakejs.js:258 static/modern/main-es5.js:1 +#: static/admin/translations-fakejs.js:141 +#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:216 +#: static/admin/translations-fakejs.js:218 +#: static/admin/translations-fakejs.js:220 static/modern/main-es5.js:1 #: static/modern/translations-fakejs.js:14 msgid "Error" msgstr "Erro" @@ -65,12 +66,12 @@ msgstr "Carregando dados..." #: static/admin/translations-fakejs.js:38 #: static/admin/translations-fakejs.js:40 #: static/admin/translations-fakejs.js:43 -#: static/admin/translations-fakejs.js:134 -#: static/admin/translations-fakejs.js:216 -#: static/admin/translations-fakejs.js:221 -#: static/admin/translations-fakejs.js:253 -#: static/admin/translations-fakejs.js:261 -#: static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:96 +#: static/admin/translations-fakejs.js:178 +#: static/admin/translations-fakejs.js:183 +#: static/admin/translations-fakejs.js:215 +#: static/admin/translations-fakejs.js:223 +#: static/admin/translations-fakejs.js:228 msgid "dismiss" msgstr "dispensar" @@ -87,7 +88,7 @@ msgid "Test passed successfully" msgstr "Teste passado com sucesso" #: static/admin/main.js:1 static/admin/translations-fakejs.js:37 -#: static/admin/translations-fakejs.js:260 +#: static/admin/translations-fakejs.js:222 msgid "Successfully saved" msgstr "Salvo com sucesso" @@ -143,58 +144,58 @@ msgstr "grupo de pool" msgid "Go to" msgstr "Vamos para" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:275 msgid "yes" msgstr "sim" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:276 msgid "no" msgstr "não" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:269 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 msgid "Error saving: " msgstr "Erro ao salvar:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:270 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 msgid "Error saving element" msgstr "Erro ao salvar o elemento" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:271 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:274 msgid "Error handling your request" msgstr "Erro ao processar sua solicitação" #: static/admin/main.js:1 static/admin/translations-fakejs.js:56 -#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:115 msgid "Sunday" msgstr "domingo" #: static/admin/main.js:1 static/admin/translations-fakejs.js:57 -#: static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:116 msgid "Monday" msgstr "Segunda-feira" #: static/admin/main.js:1 static/admin/translations-fakejs.js:58 -#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:117 msgid "Tuesday" msgstr "terça" #: static/admin/main.js:1 static/admin/translations-fakejs.js:59 -#: static/admin/translations-fakejs.js:156 +#: static/admin/translations-fakejs.js:118 msgid "Wednesday" msgstr "Quarta-feira" #: static/admin/main.js:1 static/admin/translations-fakejs.js:60 -#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:119 msgid "Thursday" msgstr "Quinta-feira" #: static/admin/main.js:1 static/admin/translations-fakejs.js:61 -#: static/admin/translations-fakejs.js:158 +#: static/admin/translations-fakejs.js:120 msgid "Friday" msgstr "Sexta-feira" #: static/admin/main.js:1 static/admin/translations-fakejs.js:62 -#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:121 msgid "Saturday" msgstr "sábado" @@ -266,20 +267,20 @@ msgstr "#SERVICES_NUMBER# serviços do usuário" msgid "#RESTRAINED_NUMBER# restrained services!" msgstr "#RESTRAINED_NUMBER# serviços restritos!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 -#: static/admin/translations-fakejs.js:249 -#: static/admin/translations-fakejs.js:402 -#: static/admin/translations-fakejs.js:454 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:211 +#: static/admin/translations-fakejs.js:265 +#: static/admin/translations-fakejs.js:366 +#: static/admin/translations-fakejs.js:418 msgid "Assigned services" msgstr "Serviços Atribuídos" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 msgid "Services in use" msgstr "Serviços em uso" #: static/admin/main.js:1 static/admin/translations-fakejs.js:21 -#: static/admin/translations-fakejs.js:292 -#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:303 #: static/modern/translations-fakejs.js:30 msgid "Filter" msgstr "Filtro" @@ -297,25 +298,25 @@ msgid "Full Access" msgstr "Acesso total" #: static/admin/main.js:1 static/admin/translations-fakejs.js:15 -#: static/admin/translations-fakejs.js:362 -#: static/admin/translations-fakejs.js:409 -#: static/admin/translations-fakejs.js:414 +#: static/admin/translations-fakejs.js:373 +#: static/admin/translations-fakejs.js:378 +#: static/admin/translations-fakejs.js:489 msgid "User" msgstr "Do utilizador" #: static/admin/main.js:1 static/admin/translations-fakejs.js:16 -#: static/admin/translations-fakejs.js:83 -#: static/admin/translations-fakejs.js:93 -#: static/admin/translations-fakejs.js:427 -#: static/admin/translations-fakejs.js:448 +#: static/admin/translations-fakejs.js:243 +#: static/admin/translations-fakejs.js:253 +#: static/admin/translations-fakejs.js:391 +#: static/admin/translations-fakejs.js:412 msgid "Group" msgstr "Grupo" #: static/admin/main.js:1 static/admin/translations-fakejs.js:17 -#: static/admin/translations-fakejs.js:408 -#: static/admin/translations-fakejs.js:413 -#: static/admin/translations-fakejs.js:426 -#: static/admin/translations-fakejs.js:447 +#: static/admin/translations-fakejs.js:372 +#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:390 +#: static/admin/translations-fakejs.js:411 #: static/modern/translations-fakejs.js:72 msgid "Authenticator" msgstr "Autenticador" @@ -332,89 +333,89 @@ msgstr "Remover" msgid "Confirm revokation of permission" msgstr "Confirme a revogação da permissão" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:238 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 msgid "Maintenance" msgstr "Manutenção" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 msgid "Exit maintenance mode" msgstr "Sair do modo de manutenção" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 msgid "Enter maintenance mode" msgstr "Entre no modo de manutenção" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 msgid "New provider" msgstr "Novo provedor" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 msgid "Edit provider" msgstr "Editar provedor" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:243 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 msgid "Delete provider" msgstr "Excluir provedor" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 msgid "Exit maintenance mode?" msgstr "Sair do modo de manutenção?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 msgid "Enter maintenance mode?" msgstr "Entre no modo de manutenção?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 msgid "Maintenance mode for" msgstr "Modo de manutenção para" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 -#: static/admin/translations-fakejs.js:247 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:209 +#: static/admin/translations-fakejs.js:232 msgid "In Maintenance" msgstr "Em manutenção" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 -#: static/admin/translations-fakejs.js:248 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/translations-fakejs.js:233 msgid "Active" msgstr "Ativo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 -#: static/admin/translations-fakejs.js:95 -#: static/admin/translations-fakejs.js:229 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:191 +#: static/admin/translations-fakejs.js:236 +#: static/admin/translations-fakejs.js:255 msgid "Pool" msgstr "Piscina" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 -#: static/admin/translations-fakejs.js:96 -#: static/admin/translations-fakejs.js:230 -#: static/admin/translations-fakejs.js:343 -#: static/admin/translations-fakejs.js:355 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 +#: static/admin/translations-fakejs.js:237 +#: static/admin/translations-fakejs.js:256 +#: static/admin/translations-fakejs.js:470 +#: static/admin/translations-fakejs.js:482 msgid "State" msgstr "Estado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 -#: static/admin/translations-fakejs.js:97 -#: static/admin/translations-fakejs.js:231 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:193 +#: static/admin/translations-fakejs.js:238 +#: static/admin/translations-fakejs.js:257 msgid "User Services" msgstr "Serviços ao usuário" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 -#: static/admin/translations-fakejs.js:232 -#: static/admin/translations-fakejs.js:321 -#: static/admin/translations-fakejs.js:401 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:194 +#: static/admin/translations-fakejs.js:248 +#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:365 msgid "Service pools" msgstr "Pools de serviço" #: static/admin/main.js:1 static/admin/translations-fakejs.js:3 #: static/admin/translations-fakejs.js:7 -#: static/admin/translations-fakejs.js:308 +#: static/admin/translations-fakejs.js:311 #: static/modern/translations-fakejs.js:44 msgid "Yes" msgstr "sim" #: static/admin/main.js:1 static/admin/translations-fakejs.js:4 #: static/admin/translations-fakejs.js:8 -#: static/admin/translations-fakejs.js:309 +#: static/admin/translations-fakejs.js:312 #: static/modern/translations-fakejs.js:45 msgid "No" msgstr "Não" @@ -427,592 +428,595 @@ msgstr "(escondido)" msgid "Selected items :" msgstr "Itens selecionados :" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 -#: static/admin/translations-fakejs.js:233 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:195 +#: static/admin/translations-fakejs.js:231 #: static/modern/translations-fakejs.js:35 msgid "Information" msgstr "Em formação" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 msgid "New service" msgstr "Novo serviço" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:197 msgid "Edit service" msgstr "Editar serviço" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:236 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 msgid "Delete service" msgstr "Excluir serviço" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:237 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 msgid "Delete user service" msgstr "Excluir serviço do usuário" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:269 msgid "New Authenticator" msgstr "Novo autenticador" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:267 +#: static/admin/translations-fakejs.js:270 msgid "Edit Authenticator" msgstr "Editar autenticador" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/translations-fakejs.js:271 msgid "Delete Authenticator" msgstr "Excluir autenticador" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 msgid "Any" msgstr "Qualquer" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 msgid "All" msgstr "Todos" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 -#: static/admin/translations-fakejs.js:94 -#: static/admin/translations-fakejs.js:342 -#: static/admin/translations-fakejs.js:354 -#: static/admin/translations-fakejs.js:379 -#: static/admin/translations-fakejs.js:435 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/translations-fakejs.js:254 +#: static/admin/translations-fakejs.js:343 +#: static/admin/translations-fakejs.js:399 +#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:481 msgid "Comments" msgstr "Comentários" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:258 msgid "Unique ID" msgstr "ID único" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 msgid "Friendly Name" msgstr "Nome amigável" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:260 msgid "In Use" msgstr "Em uso" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:261 msgid "IP" msgstr "IP" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 msgid "Services Pool" msgstr "Piscina de serviços" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 -#: static/admin/translations-fakejs.js:103 -#: static/admin/translations-fakejs.js:287 -#: static/admin/translations-fakejs.js:323 -#: static/admin/translations-fakejs.js:337 -#: static/admin/translations-fakejs.js:363 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/translations-fakejs.js:263 +#: static/admin/translations-fakejs.js:290 +#: static/admin/translations-fakejs.js:328 #: static/admin/translations-fakejs.js:367 -#: static/admin/translations-fakejs.js:373 -#: static/admin/translations-fakejs.js:403 -#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:494 msgid "Groups" msgstr "Grupos" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 -#: static/admin/translations-fakejs.js:335 -#: static/admin/translations-fakejs.js:368 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/translations-fakejs.js:462 +#: static/admin/translations-fakejs.js:495 msgid "Services Pools" msgstr "Piscinas de Serviços" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 -#: static/admin/translations-fakejs.js:378 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/translations-fakejs.js:342 msgid "Name" msgstr "Nome" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 msgid "Real Name" msgstr "Nome real" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 msgid "state" msgstr "Estado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 msgid "Last access" msgstr "Último acesso" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 -#: static/admin/translations-fakejs.js:286 -#: static/admin/translations-fakejs.js:336 -#: static/admin/translations-fakejs.js:372 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:249 +#: static/admin/translations-fakejs.js:289 +#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:463 msgid "Users" msgstr "Comercial" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 -#: static/admin/translations-fakejs.js:344 -#: static/admin/translations-fakejs.js:356 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:483 msgid "Enabled" msgstr "ativado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 -#: static/admin/translations-fakejs.js:345 -#: static/admin/translations-fakejs.js:357 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:484 msgid "Disabled" msgstr "Desativado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 -#: static/admin/translations-fakejs.js:358 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:247 +#: static/admin/translations-fakejs.js:485 msgid "Blocked" msgstr "Bloqueado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 msgid "Delete user" msgstr "Deletar usuário" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 msgid "Delete group" msgstr "Excluir grupo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 msgid "New OS Manager" msgstr "Novo gerenciador de SO" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 msgid "Edit OS Manager" msgstr "Editar Gerenciador do SO" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 msgid "Delete OS Manager" msgstr "Excluir OS Manager" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:120 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 msgid "New Transport" msgstr "Novo transporte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:121 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:83 msgid "Edit Transport" msgstr "Editar transporte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 msgid "Delete Transport" msgstr "Excluir transporte" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 msgid "New Network" msgstr "Nova rede" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:115 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 msgid "Edit Network" msgstr "Editar rede" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:116 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 msgid "Delete Network" msgstr "Excluir rede" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:117 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 msgid "New Proxy" msgstr "Novo proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:118 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 msgid "Edit Proxy" msgstr "Editar proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:119 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 msgid "Delete Proxy" msgstr "Excluir proxy" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:223 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 msgid "(This service does not requires an OS Manager)" msgstr "(Este serviço não requer um gerenciador de SO)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 msgid "New service Pool" msgstr "Novo serviço de piscina" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 msgid "Publish on creation" msgstr "Publicar na criação" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 msgid "If selected, will initiate the publication inmediatly after creation" msgstr "Se selecionado, iniciará a publicação imediatamente após a criação" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 msgid "Edit Service Pool" msgstr "Editar pool de serviços" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:228 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 msgid "Delete service pool" msgstr "Excluir pool de serviços" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 -#: static/admin/translations-fakejs.js:194 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:156 msgid "Please, select a valid user" msgstr "Por favor, selecione um usuário válido" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:158 msgid "Please, select a valid group" msgstr "Por favor, selecione um grupo válido" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 msgid "Please, select a valid transport" msgstr "Por favor, selecione um transporte válido" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 msgid "Assigned" msgstr "Atribuído" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 msgid "Cached" msgstr "Em cache" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 msgid "In use" msgstr "Em uso" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 -#: static/admin/translations-fakejs.js:290 -#: static/admin/translations-fakejs.js:374 -#: static/admin/translations-fakejs.js:405 -#: static/admin/translations-fakejs.js:462 -#: static/admin/translations-fakejs.js:465 -#: static/admin/translations-fakejs.js:470 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/translations-fakejs.js:293 +#: static/admin/translations-fakejs.js:369 +#: static/admin/translations-fakejs.js:426 +#: static/admin/translations-fakejs.js:429 +#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:460 msgid "Logs" msgstr "Logs" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 msgid "VNC" msgstr "VNC" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 msgid "Launch now" msgstr "Lançar agora" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 msgid "Change owner" msgstr "Alterar proprietário" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 msgid "Assign service" msgstr "Atribuir serviço" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 -#: static/admin/translations-fakejs.js:277 -#: static/admin/translations-fakejs.js:283 -#: static/admin/translations-fakejs.js:349 -#: static/admin/translations-fakejs.js:364 -#: static/admin/translations-fakejs.js:390 -#: static/admin/translations-fakejs.js:398 -#: static/admin/translations-fakejs.js:410 -#: static/admin/translations-fakejs.js:415 -#: static/admin/translations-fakejs.js:423 -#: static/admin/translations-fakejs.js:428 -#: static/admin/translations-fakejs.js:432 -#: static/admin/translations-fakejs.js:436 -#: static/admin/translations-fakejs.js:449 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/translations-fakejs.js:280 +#: static/admin/translations-fakejs.js:286 +#: static/admin/translations-fakejs.js:354 +#: static/admin/translations-fakejs.js:362 +#: static/admin/translations-fakejs.js:374 +#: static/admin/translations-fakejs.js:379 +#: static/admin/translations-fakejs.js:387 +#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:400 +#: static/admin/translations-fakejs.js:413 +#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:476 #: static/admin/translations-fakejs.js:491 msgid "Cancel" msgstr "Cancelar" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 msgid "Changelog" msgstr "Changelog" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 -#: static/admin/translations-fakejs.js:209 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/translations-fakejs.js:171 msgid "Delete assigned service" msgstr "Excluir serviço designado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 msgid "Delete cached service" msgstr "Excluir serviço em cache" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:183 -#: static/admin/translations-fakejs.js:211 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/translations-fakejs.js:173 msgid "Delete assigned group" msgstr "Excluir grupo atribuído" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 msgid "Delete assigned transport" msgstr "Excluir transporte atribuído" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 msgid "Publication" msgstr "Publicação" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 msgid "Cancel publication?" msgstr "Cancelar publicação?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:215 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 msgid "Publication canceled" msgstr "Publicação cancelada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:179 msgid "Delete scheduled action" msgstr "Excluir ação agendada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:218 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 msgid "Execute scheduled action" msgstr "Executar ação agendada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 msgid "Execute scheduled action right now?" msgstr "Executa a ação agendada agora mesmo?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:220 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 msgid "Scheduled action executed" msgstr "Ação agendada executada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:184 -#: static/admin/translations-fakejs.js:222 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/translations-fakejs.js:184 msgid "Delete calendar access rule" msgstr "Excluir regra de acesso de calendário" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 msgid "New meta pool" msgstr "Novo pool meta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 msgid "Edit meta pool" msgstr "Editar meta pool" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 msgid "Delete meta pool" msgstr "Excluir pool de meta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 msgid "Please, select a valid service pool" msgstr "Por favor, selecione um pool de serviço válido" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 msgid "Remove member pool" msgstr "Remover pool de membros" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 msgid "New pool group" msgstr "Novo grupo de piscina" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 msgid "Edit pool group" msgstr "Editar grupo de piscina" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 msgid "Delete pool group" msgstr "Excluir grupo de piscina" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 msgid "New calendar" msgstr "Novo calendário" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 msgid "Edit calendar" msgstr "Editar calendário" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:178 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 msgid "Delete calendar" msgstr "Excluir calendário" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 msgid "day" msgstr "dia" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 msgid "days" msgstr "dias" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 msgid "Daily" msgstr "Diariamente" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 msgid "week" msgstr "semana" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 msgid "weeks" msgstr "semanas" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:141 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:103 msgid "Weekly" msgstr "Semanal" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 msgid "month" msgstr "mês" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 msgid "months" msgstr "meses" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 msgid "Monthly" msgstr "Por mês" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 msgid "year" msgstr "ano" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 msgid "years" msgstr "anos" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 msgid "Yearly" msgstr "Anual" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 -#: static/admin/translations-fakejs.js:387 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/translations-fakejs.js:351 msgid "Weekdays" msgstr "Dias úteis" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 msgid "Minutes" msgstr "Minutos" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 msgid "Hours" msgstr "Horas" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 msgid "Days" msgstr "Dias" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 msgid "Weeks" msgstr "Semanas" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 msgid "(no days)" msgstr "(sem dias)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 msgid "Forever" msgstr "Para sempre" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 msgid "Start date/time" msgstr "Data / hora de início" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 msgid "End date" msgstr "Data final" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 msgid "Interval" msgstr "Intervalo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 msgid "Week days" msgstr "Dias úteis" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 msgid "Invalid or incomplete rule. Please, fix field $FIELD" msgstr "Regra inválida ou incompleta. Por favor, corrija o campo $ FIELD" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 msgid "This rule will be valid every" msgstr "Esta regra será válida a cada" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 msgid "of any week" msgstr "de qualquer semana" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 msgid "from" msgstr "de" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 msgid "until" msgstr "até" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:171 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 msgid "onwards" msgstr "em diante" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:134 msgid "starting at" msgstr "Começando às" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:173 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 msgid "and every event will be active for" msgstr "e todos os eventos estarão ativos para" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 msgid "with no duration" msgstr "sem duração" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 msgid "Delete calendar rule" msgstr "Excluir regra do calendário" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 msgid "Set time mark" msgstr "Definir marca de tempo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 msgid "New account" msgstr "Nova conta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 msgid "Edit account" msgstr "Editar conta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 msgid "Delete account" msgstr "Deletar conta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:93 msgid "Time mark" msgstr "Marca de tempo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:94 msgid "Set time mark for $NAME to current date/time?" msgstr "Definir a marca de tempo de $ NAME para a data / hora atual?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:95 msgid "Time mark stablished" msgstr "Marca de tempo estabelecida" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:97 msgid "No time mark" msgstr "Sem marca de tempo" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 msgid "Delete account usage" msgstr "Excluir o uso da conta" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:255 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 msgid "Image is too big (max. upload size is 256Kb)" msgstr "A imagem é muito grande (o tamanho máximo de upload é de 256 KB)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:257 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 msgid "Invalid image type (only supports JPEG, PNG and GIF" msgstr "Tipo de imagem inválido (suporta apenas JPEG, PNG e GIF" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:221 msgid "Please, provide a name and a image" msgstr "Por favor, forneça um nome e uma imagem" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 msgid "Delete image" msgstr "Excluir imagem" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:263 -#: static/admin/translations-fakejs.js:267 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/translations-fakejs.js:229 msgid "Generate report" msgstr "Gerar relatório" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 msgid "Generating report..." msgstr "Gerando relatório ..." -#: static/admin/main.js:1 static/admin/translations-fakejs.js:265 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 msgid "Report finished" msgstr "Relatório terminado" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 msgid "Configuration saved" msgstr "Configuração salva" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 msgid "Delete actor token - USE WITH EXTREME CAUTION!!!" msgstr "Excluir token de ator - USE COM CUIDADO EXTREMO !!!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:230 msgid "Delete tunnel token - USE WITH EXTREME CAUTION!!!" msgstr "Excluir token de túnel - USE COM EXTREMO CUIDADO !!!" @@ -1028,470 +1032,426 @@ msgstr "itens por página" msgid ", (%i more items)" msgstr ", (% i mais itens)" -#: static/admin/translations-fakejs.js:275 +#: static/admin/translations-fakejs.js:278 msgid "Remove all" msgstr "Deletar tudo" -#: static/admin/translations-fakejs.js:276 +#: static/admin/translations-fakejs.js:279 msgid "Add" msgstr "Adicionar" -#: static/admin/translations-fakejs.js:278 -#: static/admin/translations-fakejs.js:284 -#: static/admin/translations-fakejs.js:289 -#: static/admin/translations-fakejs.js:338 -#: static/admin/translations-fakejs.js:350 -#: static/admin/translations-fakejs.js:365 -#: static/admin/translations-fakejs.js:370 -#: static/admin/translations-fakejs.js:391 -#: static/admin/translations-fakejs.js:399 -#: static/admin/translations-fakejs.js:411 +#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:287 +#: static/admin/translations-fakejs.js:292 +#: static/admin/translations-fakejs.js:355 +#: static/admin/translations-fakejs.js:363 +#: static/admin/translations-fakejs.js:375 +#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:401 +#: static/admin/translations-fakejs.js:403 +#: static/admin/translations-fakejs.js:414 #: static/admin/translations-fakejs.js:416 -#: static/admin/translations-fakejs.js:424 -#: static/admin/translations-fakejs.js:429 -#: static/admin/translations-fakejs.js:433 -#: static/admin/translations-fakejs.js:437 -#: static/admin/translations-fakejs.js:439 -#: static/admin/translations-fakejs.js:450 -#: static/admin/translations-fakejs.js:452 -#: static/admin/translations-fakejs.js:466 +#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:465 +#: static/admin/translations-fakejs.js:477 #: static/admin/translations-fakejs.js:492 +#: static/admin/translations-fakejs.js:497 msgid "Ok" msgstr "Está bem" -#: static/admin/translations-fakejs.js:279 +#: static/admin/translations-fakejs.js:282 msgid "Discard & close" msgstr "Descartar e fechar" -#: static/admin/translations-fakejs.js:280 -#: static/admin/translations-fakejs.js:484 +#: static/admin/translations-fakejs.js:283 +#: static/admin/translations-fakejs.js:448 msgid "Save" msgstr "Salve " -#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:284 msgid "New user permission for" msgstr "Nova permissão de usuário para" -#: static/admin/translations-fakejs.js:282 +#: static/admin/translations-fakejs.js:285 msgid "New group permission for" msgstr "Nova permissão de grupo para" -#: static/admin/translations-fakejs.js:285 +#: static/admin/translations-fakejs.js:288 msgid "Permissions for" msgstr "Permissões para" -#: static/admin/translations-fakejs.js:288 +#: static/admin/translations-fakejs.js:291 msgid "New permission..." msgstr "Nova permissão ..." -#: static/admin/translations-fakejs.js:291 -#: static/admin/translations-fakejs.js:298 +#: static/admin/translations-fakejs.js:294 +#: static/admin/translations-fakejs.js:301 msgid "Export" msgstr "Exportar" -#: static/admin/translations-fakejs.js:293 -#: static/admin/translations-fakejs.js:294 -#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:296 +#: static/admin/translations-fakejs.js:297 +#: static/admin/translations-fakejs.js:298 msgid "New" msgstr "Novo" -#: static/admin/translations-fakejs.js:296 -#: static/admin/translations-fakejs.js:304 +#: static/admin/translations-fakejs.js:299 +#: static/admin/translations-fakejs.js:307 msgid "Edit" msgstr "Editar" -#: static/admin/translations-fakejs.js:297 -#: static/admin/translations-fakejs.js:305 +#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:308 msgid "Permissions" msgstr "Permissões" -#: static/admin/translations-fakejs.js:299 -#: static/admin/translations-fakejs.js:306 +#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:309 msgid "Delete" msgstr "Excluir" -#: static/admin/translations-fakejs.js:301 +#: static/admin/translations-fakejs.js:304 msgid "Selected items" msgstr "Itens selecionados" -#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:305 msgid "Copy" msgstr "cópia de" -#: static/admin/translations-fakejs.js:303 +#: static/admin/translations-fakejs.js:306 msgid "Detail" msgstr "Detalhe" -#: static/admin/translations-fakejs.js:307 +#: static/admin/translations-fakejs.js:310 #: static/modern/translations-fakejs.js:43 msgid "Close" msgstr "Perto" -#: static/admin/translations-fakejs.js:310 +#: static/admin/translations-fakejs.js:313 msgid "User mode" msgstr "Modo de usuário" -#: static/admin/translations-fakejs.js:311 +#: static/admin/translations-fakejs.js:314 #: static/modern/translations-fakejs.js:48 msgid "Logout" msgstr "Sair" -#: static/admin/translations-fakejs.js:312 -#: static/admin/translations-fakejs.js:371 -#: static/admin/translations-fakejs.js:389 -#: static/admin/translations-fakejs.js:400 -#: static/admin/translations-fakejs.js:453 -#: static/admin/translations-fakejs.js:467 +#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:353 +#: static/admin/translations-fakejs.js:364 +#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:431 +#: static/admin/translations-fakejs.js:457 msgid "Summary" msgstr "Resumo" -#: static/admin/translations-fakejs.js:313 -#: static/admin/translations-fakejs.js:468 +#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:432 msgid "Services" msgstr "Serviços" -#: static/admin/translations-fakejs.js:314 +#: static/admin/translations-fakejs.js:317 +msgid "Authentication" +msgstr "Autenticação" + +#: static/admin/translations-fakejs.js:318 msgid "Authenticators" msgstr "Autenticadores" -#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:319 +msgid "Multi Factor" +msgstr "Multifator" + +#: static/admin/translations-fakejs.js:320 msgid "Os Managers" msgstr "Os gerentes" -#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:321 msgid "Connectivity" msgstr "Conectividade" -#: static/admin/translations-fakejs.js:317 -#: static/admin/translations-fakejs.js:457 +#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:421 #: static/modern/translations-fakejs.js:39 msgid "Transports" msgstr "Transportes" -#: static/admin/translations-fakejs.js:318 +#: static/admin/translations-fakejs.js:323 #: static/modern/translations-fakejs.js:41 msgid "Networks" msgstr "Redes" -#: static/admin/translations-fakejs.js:319 +#: static/admin/translations-fakejs.js:324 msgid "Proxies" msgstr "Proxies" -#: static/admin/translations-fakejs.js:320 +#: static/admin/translations-fakejs.js:325 msgid "Pools" msgstr "Piscinas" -#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:327 msgid "Meta pools" msgstr "Meta pools" -#: static/admin/translations-fakejs.js:324 +#: static/admin/translations-fakejs.js:329 msgid "Calendars" msgstr "Calendários" -#: static/admin/translations-fakejs.js:325 +#: static/admin/translations-fakejs.js:330 msgid "Accounts" msgstr "Contas" -#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:331 msgid "Tools" msgstr "Ferramentas" -#: static/admin/translations-fakejs.js:327 +#: static/admin/translations-fakejs.js:332 msgid "Gallery" msgstr "Galeria" -#: static/admin/translations-fakejs.js:328 +#: static/admin/translations-fakejs.js:333 msgid "Reports" msgstr "Relatórios" -#: static/admin/translations-fakejs.js:329 +#: static/admin/translations-fakejs.js:334 msgid "Tokens" msgstr "Tokens" -#: static/admin/translations-fakejs.js:330 +#: static/admin/translations-fakejs.js:335 msgid "Actor" msgstr "Ator" -#: static/admin/translations-fakejs.js:331 +#: static/admin/translations-fakejs.js:336 msgid "Tunnel" msgstr "Túnel" -#: static/admin/translations-fakejs.js:332 +#: static/admin/translations-fakejs.js:337 msgid "Configuration" msgstr "Configuração" -#: static/admin/translations-fakejs.js:333 +#: static/admin/translations-fakejs.js:338 msgid "Flush Cache" msgstr "Cache nivelado" -#: static/admin/translations-fakejs.js:334 -#: static/admin/translations-fakejs.js:366 -#: static/admin/translations-fakejs.js:463 -msgid "Information for" -msgstr "Informação para" - #: static/admin/translations-fakejs.js:339 -msgid "Edit group" -msgstr "Editar grupo" - -#: static/admin/translations-fakejs.js:340 -msgid "New group" -msgstr "Novo grupo" - -#: static/admin/translations-fakejs.js:341 -msgid "Meta group name" -msgstr "Nome do grupo Meta" - -#: static/admin/translations-fakejs.js:346 -msgid "Service Pools" -msgstr "Piscinas de serviço" - -#: static/admin/translations-fakejs.js:347 -msgid "Match mode" -msgstr "Modo de jogo" - -#: static/admin/translations-fakejs.js:348 -msgid "Selected Groups" -msgstr "Grupos Selecionados" - -#: static/admin/translations-fakejs.js:351 -msgid "Edit user" -msgstr "Editar usuário" - -#: static/admin/translations-fakejs.js:352 -msgid "New user" -msgstr "Novo usuário" - -#: static/admin/translations-fakejs.js:353 -msgid "Real name" -msgstr "Nome real" - -#: static/admin/translations-fakejs.js:359 -msgid "Role" -msgstr "Função" - -#: static/admin/translations-fakejs.js:360 -msgid "Admin" -msgstr "Admin" - -#: static/admin/translations-fakejs.js:361 -msgid "Staff member" -msgstr "Membro da equipe" - -#: static/admin/translations-fakejs.js:369 -msgid "Assigned Services" -msgstr "Serviços Atribuídos" - -#: static/admin/translations-fakejs.js:375 msgid "Account usage" msgstr "Uso da conta" -#: static/admin/translations-fakejs.js:376 +#: static/admin/translations-fakejs.js:340 msgid "Edit rule" msgstr "Editar regra" -#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:341 msgid "New rule" msgstr "Nova regra" -#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:344 msgid "Event" msgstr "Evento" -#: static/admin/translations-fakejs.js:381 +#: static/admin/translations-fakejs.js:345 msgid "Start time" msgstr "Hora de início" -#: static/admin/translations-fakejs.js:382 +#: static/admin/translations-fakejs.js:346 msgid "Duration" msgstr "Duração" -#: static/admin/translations-fakejs.js:383 +#: static/admin/translations-fakejs.js:347 msgid "Duration units" msgstr "Unidades de duração" -#: static/admin/translations-fakejs.js:384 +#: static/admin/translations-fakejs.js:348 msgid "Start date" msgstr "Data de início" -#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:349 msgid "Repeat until date" msgstr "Repetir até a data" -#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:350 msgid "Frequency" msgstr "Freqüência" -#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:352 msgid "Repeat every" msgstr "Repita todos os" -#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:356 msgid "Rules" msgstr "Regras" -#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:357 msgid "New member pool" msgstr "Novo pool de membros" -#: static/admin/translations-fakejs.js:394 +#: static/admin/translations-fakejs.js:358 msgid "Edit member pool" msgstr "Editar pool de membros" -#: static/admin/translations-fakejs.js:395 -#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:359 +#: static/admin/translations-fakejs.js:384 msgid "Priority" msgstr "Prioridade" -#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:360 msgid "Service pool" msgstr "Pool de serviços" -#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:361 msgid "Enabled?" msgstr "Ativado?" -#: static/admin/translations-fakejs.js:404 -#: static/admin/translations-fakejs.js:460 +#: static/admin/translations-fakejs.js:368 +#: static/admin/translations-fakejs.js:424 msgid "Access calendars" msgstr "Acessar calendários" -#: static/admin/translations-fakejs.js:406 +#: static/admin/translations-fakejs.js:370 msgid "Assign service to user manually" msgstr "Atribuir serviço ao usuário manualmente" -#: static/admin/translations-fakejs.js:407 +#: static/admin/translations-fakejs.js:371 msgid "Service" msgstr "Serviço" -#: static/admin/translations-fakejs.js:412 +#: static/admin/translations-fakejs.js:376 msgid "Change owner of assigned service" msgstr "Alterar proprietário do serviço atribuído" -#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:381 msgid "New access rule for" msgstr "Nova regra de acesso para" -#: static/admin/translations-fakejs.js:418 +#: static/admin/translations-fakejs.js:382 msgid "Edit access rule for" msgstr "Editar regra de acesso para" -#: static/admin/translations-fakejs.js:419 +#: static/admin/translations-fakejs.js:383 msgid "Default fallback access for" msgstr "Acesso de fallback padrão para" -#: static/admin/translations-fakejs.js:421 -#: static/admin/translations-fakejs.js:442 +#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:406 msgid "Calendar" msgstr "Calendário" -#: static/admin/translations-fakejs.js:422 -#: static/admin/translations-fakejs.js:445 +#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:409 msgid "Action" msgstr "Açao" -#: static/admin/translations-fakejs.js:425 +#: static/admin/translations-fakejs.js:389 msgid "New group for" msgstr "Novo grupo para" -#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:394 msgid "New transport for" msgstr "Novo transporte para" -#: static/admin/translations-fakejs.js:431 -#: static/admin/translations-fakejs.js:446 +#: static/admin/translations-fakejs.js:395 +#: static/admin/translations-fakejs.js:410 msgid "Transport" msgstr "Transporte" -#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:398 msgid "New publication for" msgstr "Nova publicação para" -#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:402 msgid "Changelog of" msgstr "Changelog de" -#: static/admin/translations-fakejs.js:440 +#: static/admin/translations-fakejs.js:404 msgid "Edit action for" msgstr "Editar ação para" -#: static/admin/translations-fakejs.js:441 +#: static/admin/translations-fakejs.js:405 msgid "New action for" msgstr "Nova ação para" -#: static/admin/translations-fakejs.js:443 +#: static/admin/translations-fakejs.js:407 msgid "Events offset (minutes)" msgstr "Deslocamento de eventos (minutos)" -#: static/admin/translations-fakejs.js:444 +#: static/admin/translations-fakejs.js:408 msgid "At the beginning of the interval?" msgstr "No começo do intervalo?" -#: static/admin/translations-fakejs.js:451 +#: static/admin/translations-fakejs.js:415 msgid "Logs of" msgstr "Logs de" -#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:419 msgid "Cache" msgstr "Cache" -#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:422 msgid "Publications" msgstr "Publicações" -#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:423 msgid "Scheduled actions" msgstr "Ações agendadas" -#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:425 msgid "Charts" msgstr "Gráficos" -#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:427 +#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:493 +msgid "Information for" +msgstr "Informação para" + +#: static/admin/translations-fakejs.js:428 msgid "Services pools" msgstr "Pools de serviços" -#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:433 msgid "Usage" msgstr "Uso" -#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:435 #: static/modern/translations-fakejs.js:46 msgid "Dashboard" msgstr "painel de controle" -#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:436 msgid "View authenticators" msgstr "Visualizar autenticadores" -#: static/admin/translations-fakejs.js:473 -#: static/admin/translations-fakejs.js:474 -#: static/admin/translations-fakejs.js:475 +#: static/admin/translations-fakejs.js:437 +#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:439 msgid "View service pools" msgstr "Exibir pools de serviço" -#: static/admin/translations-fakejs.js:476 +#: static/admin/translations-fakejs.js:440 msgid "Assigned services chart" msgstr "Gráfico de serviços atribuídos" -#: static/admin/translations-fakejs.js:477 +#: static/admin/translations-fakejs.js:441 msgid "In use services chart" msgstr "Gráfico de serviços em uso" -#: static/admin/translations-fakejs.js:478 +#: static/admin/translations-fakejs.js:442 msgid "UDS Administration" msgstr "Administração UDS" -#: static/admin/translations-fakejs.js:479 +#: static/admin/translations-fakejs.js:443 msgid "You are accessing UDS Administration as staff member." msgstr "Você está acessando a Administração do UDS como membro da equipe." -#: static/admin/translations-fakejs.js:480 +#: static/admin/translations-fakejs.js:444 msgid "This means that you have restricted access to elements." msgstr "Isso significa que você restringiu o acesso aos elementos." -#: static/admin/translations-fakejs.js:481 +#: static/admin/translations-fakejs.js:445 msgid "" "In order to increase your access privileges, please contact your local UDS " "administrator." @@ -1499,38 +1459,90 @@ msgstr "" "Para aumentar seus privilégios de acesso, entre em contato com o " "administrador local da UDS." -#: static/admin/translations-fakejs.js:482 +#: static/admin/translations-fakejs.js:446 msgid "Thank you." msgstr "Obrigado." -#: static/admin/translations-fakejs.js:483 +#: static/admin/translations-fakejs.js:447 msgid "UDS Configuration" msgstr "Configuração UDS" -#: static/admin/translations-fakejs.js:485 +#: static/admin/translations-fakejs.js:449 msgid "New image for" msgstr "Nova imagem para" -#: static/admin/translations-fakejs.js:486 +#: static/admin/translations-fakejs.js:450 msgid "Edit for" msgstr "Editar para" -#: static/admin/translations-fakejs.js:487 +#: static/admin/translations-fakejs.js:451 msgid "Image name" msgstr "Nome da imagem" -#: static/admin/translations-fakejs.js:488 +#: static/admin/translations-fakejs.js:452 msgid "Image (click to change)" msgstr "Imagem (clique para mudar)" -#: static/admin/translations-fakejs.js:489 +#: static/admin/translations-fakejs.js:453 msgid "For optimal results, use " msgstr "Para melhores resultados, use" -#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:454 msgid "The image will be resized on upload to" msgstr "A imagem será redimensionada no upload para" +#: static/admin/translations-fakejs.js:466 +msgid "Edit group" +msgstr "Editar grupo" + +#: static/admin/translations-fakejs.js:467 +msgid "New group" +msgstr "Novo grupo" + +#: static/admin/translations-fakejs.js:468 +msgid "Meta group name" +msgstr "Nome do grupo Meta" + +#: static/admin/translations-fakejs.js:473 +msgid "Service Pools" +msgstr "Piscinas de serviço" + +#: static/admin/translations-fakejs.js:474 +msgid "Match mode" +msgstr "Modo de jogo" + +#: static/admin/translations-fakejs.js:475 +msgid "Selected Groups" +msgstr "Grupos Selecionados" + +#: static/admin/translations-fakejs.js:478 +msgid "Edit user" +msgstr "Editar usuário" + +#: static/admin/translations-fakejs.js:479 +msgid "New user" +msgstr "Novo usuário" + +#: static/admin/translations-fakejs.js:480 +msgid "Real name" +msgstr "Nome real" + +#: static/admin/translations-fakejs.js:486 +msgid "Role" +msgstr "Função" + +#: static/admin/translations-fakejs.js:487 +msgid "Admin" +msgstr "Admin" + +#: static/admin/translations-fakejs.js:488 +msgid "Staff member" +msgstr "Membro da equipe" + +#: static/admin/translations-fakejs.js:496 +msgid "Assigned Services" +msgstr "Serviços Atribuídos" + #: static/modern/main-es5.js:1 msgid "Error communicating with your service. Please, retry again." msgstr "Erro de comunicação com seu serviço. Por favor, tente novamente." @@ -1594,7 +1606,8 @@ msgstr "" msgid "Launching service" msgstr "Serviço de lançamento" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 +#: static/modern/translations-fakejs.js:25 msgid "Errors found" msgstr "Erros encontrados" @@ -1635,18 +1648,14 @@ msgstr "Serviço resetado" msgid "Are you sure?" msgstr "Você tem certeza?" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 msgid "Warning" msgstr "Aviso" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:25 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 msgid "Service is in maintenance and cannot be executed" msgstr "O serviço está em manutenção e não pode ser executado" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 -msgid "Invalid error string" -msgstr "Cadeia de erro inválida" - #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:26 msgid "We use cookies to track usage and preferences" msgstr "Nós usamos cookies para rastrear o uso e as preferências" @@ -1792,3 +1801,15 @@ msgstr "Senha" #: static/modern/translations-fakejs.js:73 msgid "Login" msgstr "Entrar" + +#: static/modern/translations-fakejs.js:74 +msgid "Login Verification" +msgstr "Verificação de login" + +#: static/modern/translations-fakejs.js:75 +msgid "Remember Me" +msgstr "Lembre de mim" + +#: static/modern/translations-fakejs.js:76 +msgid "Submit" +msgstr "Enviar" diff --git a/server/src/uds/locale/ru/LC_MESSAGES/django.po b/server/src/uds/locale/ru/LC_MESSAGES/django.po index 4503b46e..6a47179a 100644 --- a/server/src/uds/locale/ru/LC_MESSAGES/django.po +++ b/server/src/uds/locale/ru/LC_MESSAGES/django.po @@ -11,9 +11,9 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-14 11:34+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:14+0000\n" +"Last-Translator: Maxim Stepanov , 2021\n" "Language-Team: Russian (http://www.transifex.com/openuds/openuds/language/" "ru/)\n" "Language: ru\n" @@ -28,26 +28,26 @@ msgstr "" msgid "Accounts" msgstr "Accounts" -#: REST/methods/accounts.py:63 REST/methods/authenticators.py:66 +#: REST/methods/accounts.py:63 REST/methods/authenticators.py:67 #: REST/methods/calendars.py:63 REST/methods/images.py:67 -#: REST/methods/meta_pools.py:81 REST/methods/networks.py:63 -#: REST/methods/osmanagers.py:55 REST/methods/providers.py:71 -#: REST/methods/proxies.py:60 REST/methods/reports.py:69 -#: REST/methods/services_pool_groups.py:71 REST/methods/services_pools.py:136 -#: REST/methods/transports.py:66 REST/methods/user_services.py:325 -#: REST/methods/user_services.py:400 REST/methods/users_groups.py:167 -#: REST/model.py:149 +#: REST/methods/meta_pools.py:81 REST/methods/mfas.py:56 +#: REST/methods/networks.py:63 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:71 REST/methods/proxies.py:60 +#: REST/methods/reports.py:69 REST/methods/services_pool_groups.py:71 +#: REST/methods/services_pools.py:136 REST/methods/transports.py:66 +#: REST/methods/user_services.py:325 REST/methods/user_services.py:400 +#: REST/methods/users_groups.py:167 REST/model.py:149 msgid "Name" msgstr "Имя" -#: REST/methods/accounts.py:64 REST/methods/authenticators.py:68 +#: REST/methods/accounts.py:64 REST/methods/authenticators.py:69 #: REST/methods/calendarrules.py:110 REST/methods/calendars.py:69 -#: REST/methods/meta_pools.py:82 REST/methods/osmanagers.py:57 -#: REST/methods/providers.py:73 REST/methods/proxies.py:63 -#: REST/methods/services.py:241 REST/methods/services_pool_groups.py:72 -#: REST/methods/transports.py:68 REST/methods/user_services.py:402 -#: REST/methods/users_groups.py:168 REST/methods/users_groups.py:386 -#: REST/model.py:173 +#: REST/methods/meta_pools.py:82 REST/methods/mfas.py:58 +#: REST/methods/osmanagers.py:57 REST/methods/providers.py:73 +#: REST/methods/proxies.py:63 REST/methods/services.py:241 +#: REST/methods/services_pool_groups.py:72 REST/methods/transports.py:68 +#: REST/methods/user_services.py:402 REST/methods/users_groups.py:168 +#: REST/methods/users_groups.py:384 REST/model.py:173 msgid "Comments" msgstr "Комментарии" @@ -55,12 +55,12 @@ msgstr "Комментарии" msgid "Time mark" msgstr "Отметка времени" -#: REST/methods/accounts.py:66 REST/methods/authenticators.py:73 +#: REST/methods/accounts.py:66 REST/methods/authenticators.py:75 #: REST/methods/calendars.py:71 REST/methods/meta_pools.py:89 -#: REST/methods/networks.py:71 REST/methods/osmanagers.py:59 -#: REST/methods/providers.py:79 REST/methods/proxies.py:64 -#: REST/methods/services.py:250 REST/methods/services_pools.py:145 -#: REST/methods/transports.py:77 +#: REST/methods/mfas.py:59 REST/methods/networks.py:71 +#: REST/methods/osmanagers.py:59 REST/methods/providers.py:79 +#: REST/methods/proxies.py:64 REST/methods/services.py:250 +#: REST/methods/services_pools.py:145 REST/methods/transports.py:77 msgid "tags" msgstr "Тэги" @@ -115,7 +115,7 @@ msgstr "Неправильный ключ" msgid "Unmanaged host" msgstr "Неуправляемый хост" -#: REST/methods/actor.py:207 web/util/errors.py:85 +#: REST/methods/actor.py:207 web/util/errors.py:87 msgid "User service not found" msgstr "Сервис пользователя не найден" @@ -124,9 +124,9 @@ msgid "Actor tokens" msgstr "Ключи клиента" #: REST/methods/actor_token.py:54 REST/methods/tunnel_token.py:52 -#: reports/auto/fields.py:58 reports/stats/pools_performance.py:218 -#: reports/stats/pools_performance.py:237 reports/stats/pools_usage_day.py:64 -#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:191 +#: reports/auto/fields.py:58 reports/stats/pools_performance.py:201 +#: reports/stats/pools_performance.py:220 reports/stats/pools_usage_day.py:64 +#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:176 #: templates/uds/reports/stats/authenticator_stats.html:14 msgid "Date" msgstr "Дата" @@ -165,64 +165,79 @@ msgstr "Уровень журнала" msgid "Token isued by {} from {}" msgstr "Токен выпущен {} из {}" -#: REST/methods/authenticators.py:63 +#: REST/methods/authenticators.py:64 msgid "Authenticators" msgstr "Аутентификаторы" -#: REST/methods/authenticators.py:65 +#: REST/methods/authenticators.py:66 msgid "Id" msgstr "Идентификатор" -#: REST/methods/authenticators.py:67 REST/methods/osmanagers.py:56 -#: REST/methods/providers.py:72 REST/methods/services.py:242 -#: REST/methods/transports.py:67 REST/methods/user_services.py:401 +#: REST/methods/authenticators.py:68 REST/methods/mfas.py:57 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:72 +#: REST/methods/services.py:242 REST/methods/transports.py:67 +#: REST/methods/user_services.py:401 msgid "Type" msgstr "Тип" -#: REST/methods/authenticators.py:69 REST/methods/meta_service_pools.py:88 +#: REST/methods/authenticators.py:70 REST/methods/meta_service_pools.py:88 #: REST/methods/op_calendars.py:83 REST/methods/services_pool_groups.py:62 #: REST/methods/transports.py:65 REST/methods/user_services.py:399 #: REST/model.py:185 models/meta_pool.py:73 msgid "Priority" msgstr "Приоритет" -#: REST/methods/authenticators.py:70 REST/methods/authenticators.py:107 +#: REST/methods/authenticators.py:71 REST/methods/authenticators.py:110 #: REST/methods/meta_pools.py:86 REST/methods/meta_pools.py:193 #: REST/methods/services_pools.py:141 REST/methods/services_pools.py:386 msgid "Visible" msgstr "Видимый" -#: REST/methods/authenticators.py:71 REST/methods/meta_pools.py:88 +#: REST/methods/authenticators.py:72 REST/methods/meta_pools.py:88 #: REST/methods/transports.py:164 REST/model.py:201 msgid "Label" msgstr "Метка" -#: REST/methods/authenticators.py:72 core/util/stats/counters.py:252 -#: reports/stats/pools_performance.py:223 -#: reports/stats/pools_performance.py:286 reports/stats/user_access.py:254 -#: reports/stats/user_access.py:297 services/RDS_enterprise/provider.py:74 +#: REST/methods/authenticators.py:73 core/util/stats/counters.py:252 +#: reports/stats/pools_performance.py:206 +#: reports/stats/pools_performance.py:269 reports/stats/user_access.py:239 +#: reports/stats/user_access.py:282 services/RDS_enterprise/provider.py:74 #: templates/uds/reports/stats/authenticator_stats.html:15 #: templates/uds/reports/stats/pools-performance.html:35 #: templates/uds/reports/stats/user-access.html:35 msgid "Users" msgstr "Пользователь" -#: REST/methods/authenticators.py:109 REST/methods/services_pools.py:387 -msgid "If active, transport will be visible for users" -msgstr "Если активен, транспорт будет виден пользователям" +#: REST/methods/authenticators.py:74 core/ui/user_interface.py:104 +msgid "MFA" +msgstr "МИД" -#: REST/methods/authenticators.py:113 REST/methods/services_pools.py:390 -#: REST/methods/services_pools.py:405 REST/methods/services_pools.py:422 -#: REST/methods/services_pools.py:433 core/ui/user_interface.py:103 -#: services/OVirt/service.py:188 -msgid "Display" -msgstr "Экран/Дисплей" +#: REST/methods/authenticators.py:112 +msgid "If active, authenticator will be visible for users" +msgstr "Если активен, аутентификатор будет виден пользователям" -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:125 core/services/service.py:143 +#: core/services/service.py:154 mfas/Email/mfa.py:46 mfas/SMS/mfa.py:112 +#: models/permissions.py:92 models/permissions.py:96 +#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 +#: services/Proxmox/service.py:208 services/Sample/service.py:100 +#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 +msgid "None" +msgstr "Ничто" + +#: REST/methods/authenticators.py:132 +msgid "MFA Provider" +msgstr "Поставщик МФА" + +#: REST/methods/authenticators.py:134 +msgid "MFA provider to use for this authenticator" +msgstr "Поставщик MFA, который будет использоваться для этого аутентификатора" + +#: REST/methods/authenticators.py:193 msgid "Too many results..." msgstr "Слишком много результатов ..." -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:193 msgid "Refine your query" msgstr "Уточните свой запрос" @@ -380,7 +395,7 @@ msgstr "Создать дату" #: REST/methods/meta_service_pools.py:195 REST/methods/services_usage.py:125 #: reports/stats/pool_users_summary.py:60 -#: reports/stats/pools_performance.py:284 reports/stats/pools_usage_day.py:171 +#: reports/stats/pools_performance.py:267 reports/stats/pools_usage_day.py:169 #: reports/stats/pools_usage_summary.py:156 reports/stats/usage_by_pool.py:59 #: reports/stats/usage_by_pool.py:173 services/Proxmox/service.py:111 #: templates/uds/reports/stats/pools-performance.html:33 @@ -439,6 +454,28 @@ msgstr "Элемент уже удален" msgid "Item is not removable" msgstr "Элемент не удаляется" +#: REST/methods/mfas.py:54 +msgid "Multi Factor Authentication" +msgstr "Многофакторная аутентификация" + +#: REST/methods/mfas.py:80 +msgid "Device Caching" +msgstr "Кэширование устройства" + +#: REST/methods/mfas.py:82 +msgid "Time in hours to cache device so MFA is not required again. User based." +msgstr "" +"Время в часах для кэширования устройства, чтобы MFA больше не требовалось. " +"Основанный на пользователе." + +#: REST/methods/mfas.py:94 +msgid "MFA code validity" +msgstr "Срок действия кода МФА" + +#: REST/methods/mfas.py:96 +msgid "Time in minutes to allow MFA code to be used." +msgstr "Время в минутах, в течение которого можно использовать код MFA." + #: REST/methods/networks.py:59 REST/methods/transports.py:114 msgid "Networks" msgstr "Сети" @@ -527,7 +564,7 @@ msgstr "Поставщики услуг" msgid "Status" msgstr "Статус" -#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:171 +#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:169 #: templates/uds/reports/stats/authenticator_stats.html:16 #: templates/uds/reports/stats/pools-usage-day.html:29 msgid "Services" @@ -623,13 +660,13 @@ msgstr "" msgid "Available reports" msgstr "Доступные репорты" -#: REST/methods/reports.py:67 REST/methods/users_groups.py:377 -#: REST/methods/users_groups.py:398 -#: auths/ActiveDirectory_enterprise/authenticator.py:143 +#: REST/methods/reports.py:67 REST/methods/users_groups.py:375 +#: REST/methods/users_groups.py:396 +#: auths/ActiveDirectory_enterprise/authenticator.py:153 #: auths/AzureAD_enterprise/azure_ad.py:95 #: auths/EDirectory_enterprise/authenticator.py:105 #: auths/Radius/authenticator.py:63 auths/RegexLdap/authenticator.py:191 -#: auths/SAML_enterprise/saml.py:121 auths/SimpleLDAP/authenticator.py:182 +#: auths/SAML_enterprise/saml.py:109 auths/SimpleLDAP/authenticator.py:182 #: models/calendar_action.py:147 models/calendar_action.py:154 msgid "Group" msgstr "Группа" @@ -693,13 +730,13 @@ msgstr "Прокси для служб за брандмауэром" msgid "Advanced" msgstr "Расширенный" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "With errors" msgstr "С ошибками" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "Ok" msgstr "ОК" @@ -777,6 +814,16 @@ msgstr "" "Если опция включена, UDS не будет пытаться обнаружить и удалить пользователя " "услуги, назначенные, но не используемые." +#: REST/methods/services_pools.py:387 +msgid "If active, transport will be visible for users" +msgstr "Если активен, транспорт будет виден пользователям" + +#: REST/methods/services_pools.py:390 REST/methods/services_pools.py:405 +#: REST/methods/services_pools.py:422 REST/methods/services_pools.py:433 +#: core/ui/user_interface.py:103 services/OVirt/service.py:188 +msgid "Display" +msgstr "Экран/Дисплей" + #: REST/methods/services_pools.py:439 msgid "Initial available services" msgstr "Первоначально доступные сервисы" @@ -983,7 +1030,7 @@ msgstr "Штатный сотрудник" #: auths/AzureAD_enterprise/azure_ad.py:94 #: auths/EDirectory_enterprise/authenticator.py:69 #: auths/Radius/authenticator.py:62 auths/RegexLdap/authenticator.py:91 -#: auths/SAML_enterprise/saml.py:118 reports/stats/pool_users_summary.py:177 +#: auths/SAML_enterprise/saml.py:106 reports/stats/pool_users_summary.py:177 #: reports/stats/usage_by_pool.py:171 #: templates/uds/reports/stats/pool-users-summary.html:14 #: templates/uds/reports/stats/usage-by-pool.html:15 @@ -1000,10 +1047,10 @@ msgid "Current users" msgstr "Текущие пользователи" #: REST/methods/users_groups.py:160 -#: auths/ActiveDirectory_enterprise/authenticator.py:141 +#: auths/ActiveDirectory_enterprise/authenticator.py:151 #: auths/EDirectory_enterprise/authenticator.py:103 #: auths/RegexLdap/authenticator.py:189 auths/SimpleLDAP/authenticator.py:180 -#: services/HyperV_enterprise/legacy/provider.py:103 +#: mfas/Email/mfa.py:54 services/HyperV_enterprise/legacy/provider.py:103 #: services/HyperV_enterprise/provider.py:86 #: services/NutanixPrism_enterprise/provider.py:54 #: services/Nutanix_enterprise/provider.py:54 services/OVirt/provider.py:121 @@ -1017,7 +1064,7 @@ msgstr "Текущие пользователи" #: transports/NoMachine_enterprise/nomachine_base.py:63 #: transports/PCoIP_enterprise/pcoip.py:61 transports/RDP/rdp_base.py:75 #: transports/SPICE/spice_base.py:69 transports/X2GO/x2go_base.py:70 -#: web/forms/LoginForm.py:43 +#: web/forms/LoginForm.py:44 msgid "Username" msgstr "Имя пользователя" @@ -1025,7 +1072,7 @@ msgstr "Имя пользователя" msgid "Role" msgstr "Роль" -#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:389 +#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:387 msgid "state" msgstr "состояние" @@ -1037,32 +1084,32 @@ msgstr "Последний вход" msgid "Username cannot be empty" msgstr "Имя пользователя не может быть пустым" -#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:470 +#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:468 msgid "User already exists (duplicate key error)" msgstr "Пользователь уже существует (ошибка дублирования ключа)" -#: REST/methods/users_groups.py:365 +#: REST/methods/users_groups.py:363 #, python-brace-format msgid "Groups of {0}" msgstr "Групп из {0}" -#: REST/methods/users_groups.py:371 +#: REST/methods/users_groups.py:369 msgid "Current groups" msgstr "Текущие группы" -#: REST/methods/users_groups.py:398 +#: REST/methods/users_groups.py:396 msgid "UDS Group" msgstr "UDS Группа" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "Meta group" msgstr "Метагруппа" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "UDS Meta Group" msgstr "UDS Метагруппа" -#: REST/methods/users_groups.py:430 +#: REST/methods/users_groups.py:428 msgid "Group name is required" msgstr "Требуется название группы" @@ -1113,7 +1160,7 @@ msgstr "Метод не найден в {}: {}" msgid "Item not found" msgstr "Элемент не найден" -#: REST/model.py:336 web/util/authentication.py:140 web/util/errors.py:79 +#: REST/model.py:336 web/util/authentication.py:143 web/util/errors.py:81 msgid "Access denied" msgstr "Доступ закрыт" @@ -1121,7 +1168,7 @@ msgstr "Доступ закрыт" msgid "Operation not supported" msgstr "Операция не поддерживается" -#: admin/views/__init__.py:59 +#: admin/views/__init__.py:72 msgid "requested a template that do not exist" msgstr "запрошен шаблон, которого не существует" @@ -1152,11 +1199,11 @@ msgstr "" "Имя пользователя с привилегиями на чтение (используйте форму USER@DOMAIN.DOM" #: auths/ActiveDirectory_enterprise/authenticator.py:80 -#: auths/ActiveDirectory_enterprise/authenticator.py:145 +#: auths/ActiveDirectory_enterprise/authenticator.py:155 #: auths/EDirectory_enterprise/authenticator.py:77 #: auths/RegexLdap/authenticator.py:99 auths/RegexLdap/authenticator.py:193 #: auths/SimpleLDAP/authenticator.py:90 auths/SimpleLDAP/authenticator.py:184 -#: core/auths/authenticator.py:147 +#: core/auths/authenticator.py:147 mfas/Email/mfa.py:63 #: osmanagers/WindowsOsManager/windows_domain.py:85 #: osmanagers/WindowsOsManager/windows_random.py:76 #: services/HyperV_enterprise/legacy/provider.py:110 @@ -1172,8 +1219,8 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcv_base.py:52 #: transports/NoMachine_enterprise/nomachine_base.py:69 #: transports/PCoIP_enterprise/pcoip.py:67 transports/RDP/rdp_base.py:81 -#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:45 -#: web/forms/LoginForm.py:46 +#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:46 +#: web/forms/LoginForm.py:47 msgid "Password" msgstr "Пароль" @@ -1240,22 +1287,32 @@ msgstr "" "Если не пусто, этот хост будет использоваться в случае, если главный хост-" "сервер недоступен." -#: auths/ActiveDirectory_enterprise/authenticator.py:130 +#: auths/ActiveDirectory_enterprise/authenticator.py:133 +#: auths/SAML_enterprise/saml.py:207 +msgid "MFA attribute" +msgstr "Атрибут многофакторной идентификации" + +#: auths/ActiveDirectory_enterprise/authenticator.py:135 +#: auths/SAML_enterprise/saml.py:209 +msgid "Attribute from where to extract the MFA code" +msgstr "Атрибут откуда извлечь код MFA" + +#: auths/ActiveDirectory_enterprise/authenticator.py:140 msgid "Active Directory Authenticator" msgstr "Аутентификатор Active Directory" -#: auths/ActiveDirectory_enterprise/authenticator.py:132 +#: auths/ActiveDirectory_enterprise/authenticator.py:142 msgid "Authenticate against Active Directory" msgstr "Аутентификация в Active Directory" -#: auths/ActiveDirectory_enterprise/authenticator.py:175 -#: auths/ActiveDirectory_enterprise/authenticator.py:602 +#: auths/ActiveDirectory_enterprise/authenticator.py:187 +#: auths/ActiveDirectory_enterprise/authenticator.py:648 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "Нужно указать имя пользователя в формате USERNAME@DOMAIN.DOM" -#: auths/ActiveDirectory_enterprise/authenticator.py:481 -#: auths/ActiveDirectory_enterprise/authenticator.py:532 -#: auths/AzureAD_enterprise/azure_ad.py:313 +#: auths/ActiveDirectory_enterprise/authenticator.py:521 +#: auths/ActiveDirectory_enterprise/authenticator.py:578 +#: auths/AzureAD_enterprise/azure_ad.py:315 #: auths/EDirectory_enterprise/authenticator.py:269 #: auths/EDirectory_enterprise/authenticator.py:300 #: auths/RegexLdap/authenticator.py:538 auths/RegexLdap/authenticator.py:569 @@ -1263,38 +1320,38 @@ msgstr "Нужно указать имя пользователя в форма msgid "Username not found" msgstr "Имя пользователя не найдено" -#: auths/ActiveDirectory_enterprise/authenticator.py:514 +#: auths/ActiveDirectory_enterprise/authenticator.py:560 #: auths/SimpleLDAP/authenticator.py:468 msgid "Group not found" msgstr "Группа не найдена" -#: auths/ActiveDirectory_enterprise/authenticator.py:559 -#: auths/ActiveDirectory_enterprise/authenticator.py:581 +#: auths/ActiveDirectory_enterprise/authenticator.py:605 +#: auths/ActiveDirectory_enterprise/authenticator.py:627 #: auths/EDirectory_enterprise/authenticator.py:322 #: auths/RegexLdap/authenticator.py:597 auths/SimpleLDAP/authenticator.py:503 #: auths/SimpleLDAP/authenticator.py:523 msgid "Too many results, be more specific" msgstr "Слишком много результатов, сделайте запрос более уникальным" -#: auths/ActiveDirectory_enterprise/authenticator.py:613 +#: auths/ActiveDirectory_enterprise/authenticator.py:659 msgid "Domain seems to be incorrect, please check it" msgstr "Домен возможно некорректен, пожалуйста проверьте" -#: auths/ActiveDirectory_enterprise/authenticator.py:632 +#: auths/ActiveDirectory_enterprise/authenticator.py:678 msgid "" "Server does not seem an Active Directory (it does not have user objects)" msgstr "" "Сервер возможно не является членом Active Directory (у него нет " "пользовательских объектов)" -#: auths/ActiveDirectory_enterprise/authenticator.py:655 +#: auths/ActiveDirectory_enterprise/authenticator.py:701 msgid "" "Server does not seem an Active Directory (it does not have group objects)" msgstr "" "Сервер возможно не является членом Active Directory (у него нет групповых " "объектов)" -#: auths/ActiveDirectory_enterprise/authenticator.py:664 +#: auths/ActiveDirectory_enterprise/authenticator.py:710 #: auths/EDirectory_enterprise/authenticator.py:445 #: auths/RegexLdap/authenticator.py:707 auths/SimpleLDAP/authenticator.py:686 msgid "Connection params seem correct, test was succesfully executed" @@ -1390,21 +1447,21 @@ msgstr "Выход из Microsoft" msgid "Office 365 logout" msgstr "Выход из Office 365" -#: auths/AzureAD_enterprise/azure_ad.py:176 auths/SAML_enterprise/saml.py:217 +#: auths/AzureAD_enterprise/azure_ad.py:176 msgid "SAML Authenticator does not support white spaces on field NAME" msgstr "Аутентификатор SAML не поддерживает пробелы в поле NAME" -#: auths/AzureAD_enterprise/azure_ad.py:323 -#: auths/AzureAD_enterprise/azure_ad.py:349 -#: auths/AzureAD_enterprise/azure_ad.py:359 +#: auths/AzureAD_enterprise/azure_ad.py:325 +#: auths/AzureAD_enterprise/azure_ad.py:351 +#: auths/AzureAD_enterprise/azure_ad.py:361 msgid "Authenticator exception:" msgstr "Исключение проверки подлинности:" -#: auths/AzureAD_enterprise/azure_ad.py:394 core/util/ldaputil.py:49 +#: auths/AzureAD_enterprise/azure_ad.py:396 core/util/ldaputil.py:49 msgid "Connection error: " msgstr "Ошибка подключения: " -#: auths/AzureAD_enterprise/azure_ad.py:397 +#: auths/AzureAD_enterprise/azure_ad.py:399 msgid "Connection params seems correct, test was succesfully executed" msgstr "Параметры подключения кажутся верными, тест выполнен успешно" @@ -1509,7 +1566,7 @@ msgstr "IP аутентификатор" msgid "IP Range" msgstr "Диапазон IP адресов" -#: auths/IP/authenticator.py:119 auths/IP/authenticator.py:122 +#: auths/IP/authenticator.py:122 auths/IP/authenticator.py:125 msgid "All seems to be fine." msgstr "Все хорошо" @@ -1704,19 +1761,19 @@ msgstr "" "Идентификатор аттрибута группы LDAP вероятно неверный (невозможно найти " "группу с такими аттрибутами)" -#: auths/SAML_enterprise/saml.py:88 +#: auths/SAML_enterprise/saml.py:76 msgid "SAML Authenticator" msgstr "Аутентификатор SAML" -#: auths/SAML_enterprise/saml.py:100 +#: auths/SAML_enterprise/saml.py:88 msgid "SAML (v2.0) Authenticator" msgstr "Аутентификатор SAML (v2.0)" -#: auths/SAML_enterprise/saml.py:130 +#: auths/SAML_enterprise/saml.py:118 msgid "Private key" msgstr "Приватный ключ" -#: auths/SAML_enterprise/saml.py:133 +#: auths/SAML_enterprise/saml.py:121 msgid "" "Private key used for sign and encription, as generated in base 64 from " "openssl" @@ -1724,15 +1781,15 @@ msgstr "" "Приватный ключ, используемый для подписи и шифрования, сгенерированный в " "base64 c помощью openssl" -#: auths/SAML_enterprise/saml.py:136 auths/SAML_enterprise/saml.py:147 +#: auths/SAML_enterprise/saml.py:124 auths/SAML_enterprise/saml.py:135 msgid "Certificates" msgstr "Сертификаты" -#: auths/SAML_enterprise/saml.py:141 transports/SPICE/spice_base.py:83 +#: auths/SAML_enterprise/saml.py:129 transports/SPICE/spice_base.py:83 msgid "Certificate" msgstr "Сертификат" -#: auths/SAML_enterprise/saml.py:144 +#: auths/SAML_enterprise/saml.py:132 msgid "" "Public key used for sign and encription (public part of previous private " "key), as generated in base 64 from openssl" @@ -1740,60 +1797,82 @@ msgstr "" "Открытый ключ, используемый для подписывания и шифрования (общедоступная " "часть предыдущего частного), сгенерированный в base64 от openssl" -#: auths/SAML_enterprise/saml.py:152 +#: auths/SAML_enterprise/saml.py:140 msgid "IDP Metadata" msgstr "IDP метаданные" -#: auths/SAML_enterprise/saml.py:155 +#: auths/SAML_enterprise/saml.py:143 msgid "" "You can enter here the URL or the IDP metadata or the metadata itself (xml)" msgstr "" "Здесь вы можете указать URL-адрес, метаданные IDP или сами метаданные (xml)" -#: auths/SAML_enterprise/saml.py:158 auths/SAML_enterprise/saml.py:167 +#: auths/SAML_enterprise/saml.py:146 auths/SAML_enterprise/saml.py:155 msgid "Metadata" msgstr "Метаданные" -#: auths/SAML_enterprise/saml.py:162 +#: auths/SAML_enterprise/saml.py:150 msgid "Entity ID" msgstr "ID объекта" -#: auths/SAML_enterprise/saml.py:165 +#: auths/SAML_enterprise/saml.py:153 msgid "ID of the SP. If left blank, this will be autogenerated from server URL" msgstr "" "Идентификатор SP. Если оставить пустым, будет автоматически генерироваться с " "URL-адреса сервера" -#: auths/SAML_enterprise/saml.py:173 +#: auths/SAML_enterprise/saml.py:161 msgid "User name attrs" msgstr "Аттрибут имени пользователя" -#: auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:163 msgid "Fields from where to extract user name" msgstr "Поля, откуда извлекается имя пользователя" -#: auths/SAML_enterprise/saml.py:177 auths/SAML_enterprise/saml.py:187 -#: auths/SAML_enterprise/saml.py:197 +#: auths/SAML_enterprise/saml.py:165 auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:185 msgid "Attributes" msgstr "Аттрибуты" -#: auths/SAML_enterprise/saml.py:183 +#: auths/SAML_enterprise/saml.py:171 msgid "Group name attrs" msgstr "Аттрибуты имени группы" -#: auths/SAML_enterprise/saml.py:185 +#: auths/SAML_enterprise/saml.py:173 msgid "Fields from where to extract the groups" msgstr "Поля, откуда извлекается имя группы" -#: auths/SAML_enterprise/saml.py:193 +#: auths/SAML_enterprise/saml.py:181 msgid "Real name attrs" msgstr "Аттрибуты реального имени" -#: auths/SAML_enterprise/saml.py:195 +#: auths/SAML_enterprise/saml.py:183 msgid "Fields from where to extract the real name" msgstr "Поля, откуда извлекается реальное имя" +#: auths/SAML_enterprise/saml.py:189 +msgid "Global logout" +msgstr "Глобальный выход" + +#: auths/SAML_enterprise/saml.py:192 +msgid "If set, logout from UDS will trigger SAML logout" +msgstr "Если установлено, выход из UDS приведет к выходу из системы SAML." + +#: auths/SAML_enterprise/saml.py:197 +msgid "ADFS compatibility" +msgstr "Совместимость с ADFS" + +#: auths/SAML_enterprise/saml.py:200 +msgid "If set, enable lowercase url encoding so ADFS can work correctly" +msgstr "" +"Если установлено, включите кодировку URL-адресов в нижнем регистре, чтобы " +"ADFS могла работать правильно." + #: auths/SAML_enterprise/saml.py:231 +msgid "This kind of Authenticator does not support white spaces on field NAME" +msgstr "Этот тип аутентификатора не поддерживает пробелы в поле NAME." + +#: auths/SAML_enterprise/saml.py:245 msgid "" "Server certificate should be a valid PEM (PEM certificates starts with -----" "BEGIN CERTIFICATE-----)" @@ -1801,11 +1880,11 @@ msgstr "" "Сертификат сервера должен быть действительным PEM (PEM сертификат начинается " "с -----BEGIN CERTIFICATE-----)" -#: auths/SAML_enterprise/saml.py:239 +#: auths/SAML_enterprise/saml.py:253 msgid "Invalid server certificate. " msgstr "Недопустимый сертификат сервера" -#: auths/SAML_enterprise/saml.py:250 +#: auths/SAML_enterprise/saml.py:264 msgid "" "Private key should be a valid PEM (PEM private keys starts with -----BEGIN " "RSA PRIVATE KEY-----" @@ -1813,27 +1892,47 @@ msgstr "" "Приватный ключ должен быть действительным PEM (PEM приватный ключ начинается " "с -----BEGIN RSA PRIVATE KEY-----)" -#: auths/SAML_enterprise/saml.py:258 +#: auths/SAML_enterprise/saml.py:272 msgid "Invalid private key. " msgstr "Недопустимый приватный ключ" -#: auths/SAML_enterprise/saml.py:277 +#: auths/SAML_enterprise/saml.py:291 #, python-brace-format msgid "Can't fetch url {0}: {1}" msgstr "Невозможно получить url {0}: {1}" -#: auths/SAML_enterprise/saml.py:288 +#: auths/SAML_enterprise/saml.py:302 msgid " (obtained from URL)" msgstr "(полученный из URL)" -#: auths/SAML_enterprise/saml.py:290 +#: auths/SAML_enterprise/saml.py:304 msgid "XML does not seem valid for IDP Metadata " msgstr "XML не подходит для метаданных IDP" -#: auths/SAML_enterprise/saml.py:312 +#: auths/SAML_enterprise/saml.py:357 msgid "Can't access idp metadata" msgstr "Нет доступа к IDP метаданным" +#: auths/SAML_enterprise/saml.py:424 +msgid "Error validating SP metadata: " +msgstr "Ошибка проверки метаданных SP:" + +#: auths/SAML_enterprise/saml.py:528 +msgid "Error processing SLO: " +msgstr "Ошибка обработки SLO:" + +#: auths/SAML_enterprise/saml.py:558 +msgid "Error processing SAML response: " +msgstr "Ошибка обработки ответа SAML:" + +#: auths/SAML_enterprise/saml.py:571 +msgid "SAML response not authenticated" +msgstr "Ответ SAML не аутентифицирован" + +#: auths/SAML_enterprise/saml.py:598 +msgid "No attributes returned from IdP" +msgstr "От IdP не возвращаются атрибуты" + #: auths/Sample/SampleAuth.py:79 msgid "Sample Authenticator" msgstr "Простой аутентификатор" @@ -1927,11 +2026,11 @@ msgstr "" msgid "Can't locate any group with the membership attribute specified" msgstr "Не удаётся найти группу с указанным атрибутом членства" -#: core/auths/auth.py:110 +#: core/auths/auth.py:111 msgid "System Administrator" msgstr "Системный администратор" -#: core/auths/auth.py:150 +#: core/auths/auth.py:155 msgid "Forbidden" msgstr "Запрещено" @@ -1966,20 +2065,20 @@ msgstr "Невозможно опубликовать неиспользуему msgid "Can't unpublish publications with services in process" msgstr "Невозможно опубликовать публикацию с сервисами в процессе" -#: core/managers/user_service.py:337 +#: core/managers/user_service.py:348 msgid "Can't remove a non active element" msgstr "Нельзя удалить неактивный элемент" -#: core/managers/user_service.py:363 +#: core/managers/user_service.py:374 msgid "Can't remove nor cancel {} cause its state don't allow it" msgstr "" "Невозможно удалить или отменить {}, потому что его состояние не позволяет" -#: core/managers/user_service.py:395 +#: core/managers/user_service.py:406 msgid "The requested service is restrained" msgstr "Запрашиваемая услуга ограничена" -#: core/managers/user_service.py:761 web/util/errors.py:81 +#: core/managers/user_service.py:770 web/util/errors.py:83 msgid "" "Invalid service. The service is not available at this moment. Please, try " "later" @@ -1987,14 +2086,22 @@ msgstr "" "Недействительный сервис. В настоящий момент услуга недоступна. Пожалуйста, " "попробуйте позднее" -#: core/managers/user_service.py:798 +#: core/managers/user_service.py:807 msgid "The requested transport {} is not valid for {}" msgstr "Запрошенный транспорт {} недействителен для {}" -#: core/managers/user_service.py:1078 +#: core/managers/user_service.py:1084 msgid "The service is not accessible from this device" msgstr "Сервис недоступен с этого устройства" +#: core/mfas/mfa.py:60 core/mfas/mfa.py:72 +msgid "Base MFA" +msgstr "База МФА" + +#: core/mfas/mfa.py:184 +msgid "Invalid MFA code" +msgstr "Неверный код МФА" + #: core/module.py:215 msgid "No connection checking method is implemented." msgstr "Не применяется метод проверки соединения." @@ -2039,14 +2146,6 @@ msgstr "Напечатано в {сейчас:% Y,% b% d} в {сейчас:% H:% msgid "Base Service" msgstr "Базовый сервис" -#: core/services/service.py:143 core/services/service.py:154 -#: models/permissions.py:92 models/permissions.py:96 -#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 -#: services/Proxmox/service.py:208 services/Sample/service.py:100 -#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 -msgid "None" -msgstr "Ничто" - #: core/transports/transport.py:52 msgid "Direct" msgstr "Прямой" @@ -2171,23 +2270,23 @@ msgstr "Пользователи с услугами" msgid "Cached" msgstr "Кешировано" -#: core/util/tools.py:152 +#: core/util/tools.py:155 msgid "{} days {:d}:{:02d}:{:02d}" msgstr "{} дней {: d}: {: 02d}: {: 02d}" -#: core/util/tools.py:171 +#: core/util/tools.py:174 msgid "The basename is not a valid for a hostname" msgstr "Базовое имя не является допустимым для имени хоста" -#: core/util/tools.py:176 +#: core/util/tools.py:179 msgid "The length of basename plus length must be greater than 0" msgstr "Длина базового имени плюс длина должна быть больше 0" -#: core/util/tools.py:181 +#: core/util/tools.py:184 msgid "The length of basename plus length must not be greater than 15" msgstr "Длина базового имени плюс длина числовой части не должна превышать 15" -#: core/util/tools.py:186 +#: core/util/tools.py:189 msgid "The machine name can't be only numbers" msgstr "Имя машины не может быть только из номеров" @@ -2218,7 +2317,11 @@ msgstr "{} превышает максимальную длину имени х msgid "{} is not a valid hostname" msgstr "{} не является допустимым именем хоста" -#: core/util/validators.py:152 +#: core/util/validators.py:131 +msgid "{} is not a valid host:port pair" +msgstr "{} не является допустимой парой хост:порт" + +#: core/util/validators.py:168 msgid "" "Invalid mac range. Mac range must be in format XX:XX:XX:XX:XX:XX-XX:XX:XX:XX:" "XX:XX" @@ -2226,66 +2329,351 @@ msgstr "" "Недопустимый диапазон мак-адресов. Диапазон мак-адресов должен быть в " "формате XX:XX:XX:XX:XX:XX-XX:XX:XX:XX:XX:XX" -#: dispatchers/wyse_enterprise/views.py:118 +#: core/util/validators.py:182 +msgid "Email address is too long" +msgstr "Адрес электронной почты слишком длинный" + +#: core/util/validators.py:187 +msgid "Email address is not valid" +msgstr "Адрес электронной почты недействителен" + +#: dispatchers/wyse_enterprise/views.py:119 msgid "There are no authenticators available for login" msgstr "Для входа в систему нет аутентификаторов" -#: dispatchers/wyse_enterprise/views.py:138 +#: dispatchers/wyse_enterprise/views.py:139 #, python-brace-format msgid "The authenticator {0} is not usable" msgstr "Аутентификатор {0} не используется" -#: dispatchers/wyse_enterprise/views.py:145 +#: dispatchers/wyse_enterprise/views.py:146 msgid "Invalid credentials" msgstr "Недопустимые учётные данные" -#: dispatchers/wyse_enterprise/views.py:152 +#: dispatchers/wyse_enterprise/views.py:153 #, python-brace-format msgid "The domain {0} does not exists" msgstr "Домен {0} не существует" -#: dispatchers/wyse_enterprise/views.py:228 +#: dispatchers/wyse_enterprise/views.py:229 msgid "No services available" msgstr "Нет доступных сервисов" -#: dispatchers/wyse_enterprise/views.py:244 -#: dispatchers/wyse_enterprise/views.py:344 +#: dispatchers/wyse_enterprise/views.py:245 +#: dispatchers/wyse_enterprise/views.py:345 msgid "Invalid session" msgstr "Недействительная сессия" -#: dispatchers/wyse_enterprise/views.py:248 -#: dispatchers/wyse_enterprise/views.py:348 +#: dispatchers/wyse_enterprise/views.py:249 +#: dispatchers/wyse_enterprise/views.py:349 msgid "Invalid authorization" msgstr "Недействительная авторизация" -#: dispatchers/wyse_enterprise/views.py:259 -#: dispatchers/wyse_enterprise/views.py:354 +#: dispatchers/wyse_enterprise/views.py:260 +#: dispatchers/wyse_enterprise/views.py:355 msgid "Invalid request" msgstr "Недействительный запрос" -#: dispatchers/wyse_enterprise/views.py:262 -#: dispatchers/wyse_enterprise/views.py:357 +#: dispatchers/wyse_enterprise/views.py:263 +#: dispatchers/wyse_enterprise/views.py:358 msgid "Invalid credentials used" msgstr "Использованы недействительные учётные данные" -#: dispatchers/wyse_enterprise/views.py:277 web/util/errors.py:78 +#: dispatchers/wyse_enterprise/views.py:278 web/util/errors.py:80 msgid "Service not found" msgstr "Сервис не найден" -#: dispatchers/wyse_enterprise/views.py:281 +#: dispatchers/wyse_enterprise/views.py:282 msgid "Invalid machine uuid." msgstr "Неверный UUID машины." -#: dispatchers/wyse_enterprise/views.py:295 web/util/errors.py:77 +#: dispatchers/wyse_enterprise/views.py:296 web/util/errors.py:79 msgid "Transport not found" msgstr "Транспорт не найден" -#: dispatchers/wyse_enterprise/views.py:300 -#: dispatchers/wyse_enterprise/views.py:308 -#: dispatchers/wyse_enterprise/views.py:315 +#: dispatchers/wyse_enterprise/views.py:301 +#: dispatchers/wyse_enterprise/views.py:309 +#: dispatchers/wyse_enterprise/views.py:316 msgid "Service not ready at this moment. Please, try again in a while." msgstr "Сервис не готов в данный момент. Пожалуйста попробуйте снова позднее." +#: mfas/Email/mfa.py:22 +msgid "Email Multi Factor" +msgstr "Многофакторная электронная почта" + +#: mfas/Email/mfa.py:24 +msgid "Email Multi Factor Authenticator" +msgstr "Многофакторная аутентификация по электронной почте" + +#: mfas/Email/mfa.py:29 +msgid "SMTP Host" +msgstr "SMTP-хост" + +#: mfas/Email/mfa.py:32 +msgid "" +"SMTP Server hostname or IP address. If you are using a non-standard port, " +"add it after a colon, for example: smtp.gmail.com:587" +msgstr "" +"Имя хоста SMTP-сервера или IP-адрес. Если вы используете нестандартный порт, " +"добавьте его после двоеточия, например: smtp.gmail.com:587." + +#: mfas/Email/mfa.py:37 mfas/Email/mfa.py:50 mfas/Email/mfa.py:59 +#: mfas/Email/mfa.py:68 +msgid "SMTP Server" +msgstr "SMTP-сервер" + +#: mfas/Email/mfa.py:41 transports/HTML5RDP/html5rdp.py:268 +#: transports/HTML5RDS_enterprise/html5rds.py:255 +msgid "Security" +msgstr "Безопасность" + +#: mfas/Email/mfa.py:42 +msgid "Security protocol to use" +msgstr "Протокол безопасности для использования" + +#: mfas/Email/mfa.py:44 +msgid "TLS" +msgstr "TLS" + +#: mfas/Email/mfa.py:45 +msgid "SSL" +msgstr "SSL" + +#: mfas/Email/mfa.py:56 +msgid "User with access to SMTP server" +msgstr "Пользователь с доступом к SMTP-серверу" + +#: mfas/Email/mfa.py:65 +msgid "Password of the user with access to SMTP server" +msgstr "Пароль пользователя с доступом к SMTP-серверу" + +#: mfas/Email/mfa.py:74 +msgid "Subject" +msgstr "Предмет" + +#: mfas/Email/mfa.py:76 +msgid "Subject of the email" +msgstr "Тема письма" + +#: mfas/Email/mfa.py:78 mfas/Email/mfa.py:87 mfas/Email/mfa.py:95 +msgid "Config" +msgstr "Конфигурация" + +#: mfas/Email/mfa.py:83 +msgid "From Email" +msgstr "Из электронной почты" + +#: mfas/Email/mfa.py:85 +msgid "Email address that will be used as sender" +msgstr "" +"Адрес электронной почты, который будет использоваться в качестве отправителя" + +#: mfas/Email/mfa.py:91 +msgid "Enable HTML" +msgstr "Включить HTML" + +#: mfas/Email/mfa.py:93 +msgid "Enable HTML in emails" +msgstr "Включить HTML в электронных письмах" + +#: mfas/Email/mfa.py:110 +msgid "Invalid SMTP hostname" +msgstr "Недопустимое имя хоста SMTP" + +#: mfas/SMS/mfa.py:19 +msgid "SMS Thought HTTP" +msgstr "СМС Мысль HTTP" + +#: mfas/SMS/mfa.py:21 +msgid "Simple SMS sending MFA using HTTP" +msgstr "Простая отправка SMS MFA с использованием HTTP" + +#: mfas/SMS/mfa.py:26 +msgid "URL pattern for SMS sending" +msgstr "Шаблон URL для отправки SMS" + +#: mfas/SMS/mfa.py:29 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"URL pattern for SMS sending. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"Шаблон URL для отправки SMS. Он может содержать следующие переменные: * " +"{code} - код для отправки * {phone/+phone} - номер телефона * {username} - " +"имя пользователя * {justUsername} - имя пользователя без @...." + +#: mfas/SMS/mfa.py:37 mfas/SMS/mfa.py:43 mfas/SMS/mfa.py:56 mfas/SMS/mfa.py:75 +#: mfas/SMS/mfa.py:92 mfas/SMS/mfa.py:101 +msgid "HTTP Server" +msgstr "HTTP-сервер" + +#: mfas/SMS/mfa.py:41 +msgid "Ignore certificate errors" +msgstr "Игнорировать ошибки сертификата" + +#: mfas/SMS/mfa.py:46 +msgid "" +"If checked, the server certificate will be ignored. This is useful if the " +"server uses a self-signed certificate." +msgstr "" +"Если этот флажок установлен, сертификат сервера будет игнорироваться. Это " +"полезно, если сервер использует самозаверяющий сертификат." + +#: mfas/SMS/mfa.py:52 +msgid "SMS sending method" +msgstr "Способ отправки СМС" + +#: mfas/SMS/mfa.py:54 mfas/SMS/mfa.py:108 +msgid "Method for sending SMS" +msgstr "Способ отправки СМС" + +#: mfas/SMS/mfa.py:63 +msgid "Headers for SMS requests" +msgstr "Заголовки для SMS-запросов" + +#: mfas/SMS/mfa.py:66 +msgid "" +"Headers for SMS requests. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @....\n" +"Headers are in the form of \"Header: Value\". (without the quotes)" +msgstr "" +"Заголовки для SMS-запросов. Он может содержать следующие переменные: * " +"{code} - код для отправки * {phone/+phone} - номер телефона * {username} - " +"имя пользователя * {justUsername} - имя пользователя без @.... Заголовки в " +"виде «Заголовок: Значение». (без кавычек)" + +#: mfas/SMS/mfa.py:81 +msgid "Parameters for SMS POST/PUT sending" +msgstr "Параметры для отправки SMS POST/PUT" + +#: mfas/SMS/mfa.py:84 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"Parameters for SMS sending via POST/PUT. It can contain the following " +"variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"Параметры для отправки SMS через POST/PUT. Он может содержать следующие " +"переменные: * {code} - код для отправки * {phone/+phone} - номер телефона * " +"{username} - имя пользователя * {justUsername} - имя пользователя без @...." + +#: mfas/SMS/mfa.py:96 +msgid "SMS encoding" +msgstr "Кодировка SMS" + +#: mfas/SMS/mfa.py:99 +msgid "Encoding for SMS" +msgstr "Кодировка для СМС" + +#: mfas/SMS/mfa.py:106 +msgid "SMS authentication method" +msgstr "Метод аутентификации по SMS" + +#: mfas/SMS/mfa.py:110 mfas/SMS/mfa.py:124 mfas/SMS/mfa.py:133 +msgid "HTTP Authentication" +msgstr "HTTP-аутентификация" + +#: mfas/SMS/mfa.py:113 +msgid "HTTP Basic Auth" +msgstr "Базовая HTTP-аутентификация" + +#: mfas/SMS/mfa.py:114 +msgid "HTTP Digest Auth" +msgstr "Дайджест-аутентификация HTTP" + +#: mfas/SMS/mfa.py:120 +msgid "SMS authentication user or token" +msgstr "Пользователь или токен SMS-аутентификации" + +#: mfas/SMS/mfa.py:122 +msgid "User or token for SMS authentication" +msgstr "Пользователь или токен для SMS-аутентификации" + +#: mfas/SMS/mfa.py:129 +msgid "SMS authentication password" +msgstr "SMS-пароль аутентификации" + +#: mfas/SMS/mfa.py:131 +msgid "Password for SMS authentication" +msgstr "Пароль для SMS-аутентификации" + +#: mfas/SMS/mfa.py:138 +msgid "SMS response OK regex" +msgstr "SMS ответ OK регулярное выражение" + +#: mfas/SMS/mfa.py:141 +msgid "" +"Regex for SMS response OK. If emty, the response is considered OK if status " +"code is 200." +msgstr "" +"Регулярное выражение для SMS-ответа OK. Если пусто, ответ считается ОК, если " +"код состояния равен 200." + +#: mfas/SMS/mfa.py:144 mfas/SMS/mfa.py:153 +msgid "HTTP Response" +msgstr "HTTP-ответ" + +#: mfas/SMS/mfa.py:148 +msgid "SMS response error action" +msgstr "Действие при ошибке ответа SMS" + +#: mfas/SMS/mfa.py:151 +msgid "Action for SMS response error" +msgstr "Действия при ошибке ответа на SMS" + +#: mfas/SMS/mfa.py:155 +msgid "Allow user log in without MFA" +msgstr "Разрешить вход пользователя без MFA" + +#: mfas/SMS/mfa.py:156 +msgid "Deny user log in" +msgstr "Запретить вход пользователя" + +#: mfas/SMS/mfa.py:199 +msgid "SMS sending failed" +msgstr "Отправка СМС не удалась" + +#: mfas/SMS/mfa.py:263 web/views/modern.py:275 +msgid "MFA Code" +msgstr "Код МФА" + +#: mfas/Sample/mfa.py:16 +msgid "Sample Multi Factor" +msgstr "Образец мультифактора" + +#: mfas/Sample/mfa.py:18 +msgid "Sample Multi Factor Authenticator" +msgstr "Пример многофакторного аутентификатора" + +#: mfas/Sample/mfa.py:22 +msgid "Sample useless field" +msgstr "Пример бесполезного поля" + +#: mfas/Sample/mfa.py:25 +msgid "This is a useless field, for sample and testing pourposes" +msgstr "Это бесполезное поле для выборки и тестирования." + #: models/calendar_action.py:63 msgid "Publish" msgstr "Публикация" @@ -2843,7 +3231,7 @@ msgid "Service pool for report" msgstr "Пул услуг для отчёта" #: reports/auto/fields.py:104 reports/lists/users.py:61 -#: web/forms/LoginForm.py:50 +#: web/forms/LoginForm.py:51 msgid "Authenticator" msgstr "Аутентификатор" @@ -2895,24 +3283,24 @@ msgstr "ID пользователя" msgid "Real Name" msgstr "Реальное имя" -#: reports/stats/auth_stats.py:58 +#: reports/stats/auth_stats.py:59 msgid "Statistics by authenticator" msgstr "Статистика по аутентификатору" -#: reports/stats/auth_stats.py:60 +#: reports/stats/auth_stats.py:61 msgid "" "Generates a report with the statistics of an authenticator for a desired " "period" msgstr "Формирует отчёт со статистикой аутентификатора за желаемый период" -#: reports/stats/auth_stats.py:136 reports/stats/usage_by_pool.py:146 +#: reports/stats/auth_stats.py:123 reports/stats/usage_by_pool.py:146 #: templates/uds/reports/stats/authenticator_stats.html:4 #: templates/uds/reports/stats/usage-by-pool.html:4 #: templates/uds/reports/stats/usage-by-pool.html:6 msgid "Users usage list" msgstr "Отчёт по использованию подписки" -#: reports/stats/auth_stats.py:137 reports/stats/usage_by_pool.py:147 +#: reports/stats/auth_stats.py:124 reports/stats/usage_by_pool.py:147 msgid "UDS Report of users usage" msgstr "Отчёт UDS об использовании пользователей" @@ -2985,30 +3373,26 @@ msgstr "Количество интервалов" msgid "Number of sampling points used in charts" msgstr "Количество точек выборки, используемых в диаграммах" -#: reports/stats/pools_performance.py:128 -msgid "Select at least a service pool for the report" -msgstr "Выберите хотя бы пул служб для отчёта" - -#: reports/stats/pools_performance.py:211 +#: reports/stats/pools_performance.py:194 msgid "Distinct Users" msgstr "Определённые пользователи" -#: reports/stats/pools_performance.py:230 -#: reports/stats/pools_performance.py:242 -#: reports/stats/pools_performance.py:287 +#: reports/stats/pools_performance.py:213 +#: reports/stats/pools_performance.py:225 +#: reports/stats/pools_performance.py:270 #: templates/uds/reports/stats/pools-performance.html:36 msgid "Accesses" msgstr "Доступы" -#: reports/stats/pools_performance.py:258 +#: reports/stats/pools_performance.py:241 msgid "UDS Pools Performance Report" msgstr "Отчёт о производительности пулов UDS" -#: reports/stats/pools_performance.py:259 +#: reports/stats/pools_performance.py:242 msgid "Pools Performance" msgstr "Производительность пулов" -#: reports/stats/pools_performance.py:285 reports/stats/user_access.py:297 +#: reports/stats/pools_performance.py:268 reports/stats/user_access.py:282 #: templates/uds/reports/stats/pools-performance.html:34 #: templates/uds/reports/stats/user-access.html:34 msgid "Date range" @@ -3022,21 +3406,21 @@ msgstr "Использование пулов в день" msgid "Pools usage counters for an specific day" msgstr "Счётчики использования пулов за определённый день" -#: reports/stats/pools_usage_day.py:128 +#: reports/stats/pools_usage_day.py:126 msgid "Services by hour" msgstr "Сервисы за час" -#: reports/stats/pools_usage_day.py:133 reports/stats/pools_usage_day.py:171 -#: reports/stats/user_access.py:228 reports/stats/user_access.py:240 +#: reports/stats/pools_usage_day.py:131 reports/stats/pools_usage_day.py:169 +#: reports/stats/user_access.py:213 reports/stats/user_access.py:225 #: templates/uds/reports/stats/pools-usage-day.html:28 msgid "Hour" msgstr "Часы" -#: reports/stats/pools_usage_day.py:152 +#: reports/stats/pools_usage_day.py:150 msgid "Services usage report for a day" msgstr "Отчёт об использовании услуг за день" -#: reports/stats/pools_usage_day.py:153 +#: reports/stats/pools_usage_day.py:151 msgid "Service usage report" msgstr "Отчёт об использовании услуги" @@ -3104,63 +3488,63 @@ msgstr "ВСЕ ПУЛЫ" msgid "Seconds" msgstr "Секунды" -#: reports/stats/user_access.py:59 reports/stats/user_access.py:281 +#: reports/stats/user_access.py:59 reports/stats/user_access.py:266 msgid "Users access report by date" msgstr "Доступ пользователей по дате" -#: reports/stats/user_access.py:60 reports/stats/user_access.py:282 +#: reports/stats/user_access.py:60 reports/stats/user_access.py:267 msgid "Report of user access to platform by date" msgstr "Отчет. Доступ пользователей к платформе по дате." -#: reports/stats/user_access.py:186 +#: reports/stats/user_access.py:171 msgid "Users Access (global)" msgstr "Доступ пользователей (глобальный)" -#: reports/stats/user_access.py:206 +#: reports/stats/user_access.py:191 msgid "Users Access (by week)" msgstr "Доступ пользователей (по неделям)" -#: reports/stats/user_access.py:209 reports/stats/user_access.py:245 +#: reports/stats/user_access.py:194 reports/stats/user_access.py:230 msgid "Monday" msgstr "Понедельник" -#: reports/stats/user_access.py:210 reports/stats/user_access.py:246 +#: reports/stats/user_access.py:195 reports/stats/user_access.py:231 msgid "Tuesday" msgstr "Вторник" -#: reports/stats/user_access.py:211 reports/stats/user_access.py:247 +#: reports/stats/user_access.py:196 reports/stats/user_access.py:232 msgid "Wednesday" msgstr "Среда" -#: reports/stats/user_access.py:212 reports/stats/user_access.py:248 +#: reports/stats/user_access.py:197 reports/stats/user_access.py:233 msgid "Thursday" msgstr "Четверг" -#: reports/stats/user_access.py:213 reports/stats/user_access.py:249 +#: reports/stats/user_access.py:198 reports/stats/user_access.py:234 msgid "Friday" msgstr "Пятница" -#: reports/stats/user_access.py:214 reports/stats/user_access.py:250 +#: reports/stats/user_access.py:199 reports/stats/user_access.py:235 msgid "Saturday" msgstr "Суббота" -#: reports/stats/user_access.py:215 reports/stats/user_access.py:251 +#: reports/stats/user_access.py:200 reports/stats/user_access.py:236 msgid "Sunday" msgstr "Воскресенье" -#: reports/stats/user_access.py:217 reports/stats/user_access.py:243 +#: reports/stats/user_access.py:202 reports/stats/user_access.py:228 msgid "Day of week" msgstr "День недели" -#: reports/stats/user_access.py:226 reports/stats/user_access.py:238 +#: reports/stats/user_access.py:211 reports/stats/user_access.py:223 msgid "Users Access (by hour)" msgstr "Доступ пользователей (по часам)" -#: reports/stats/user_access.py:267 +#: reports/stats/user_access.py:252 msgid "Users access to UDS" msgstr "Доступ пользователей в UDS" -#: reports/stats/user_access.py:268 +#: reports/stats/user_access.py:253 msgid "UDS Report for users access" msgstr "Отчёт UDS по доступу пользователей" @@ -4405,12 +4789,12 @@ msgstr "Поставщик машин статических IP" msgid "Provides connection to machines by IP" msgstr "Обеспечивает подключение к машинам по IP" -#: services/PhysicalMachines/service_multi.py:64 +#: services/PhysicalMachines/service_multi.py:62 #: services/Vmware_enterprise/service_fixed.py:55 msgid "Service Token" msgstr "Ключ услуги" -#: services/PhysicalMachines/service_multi.py:67 +#: services/PhysicalMachines/service_multi.py:65 #: services/Vmware_enterprise/service_fixed.py:57 msgid "" "Service token that will be used by actors to communicate with service. Leave " @@ -4419,39 +4803,39 @@ msgstr "" "Ключ услуги, который будет использоваться клиентами для связи с сервисом. " "Оставьте пустым для постоянного назначения." -#: services/PhysicalMachines/service_multi.py:75 +#: services/PhysicalMachines/service_multi.py:73 #: services/RDS_enterprise/provider.py:51 msgid "List of servers" msgstr "Список серверов" -#: services/PhysicalMachines/service_multi.py:76 +#: services/PhysicalMachines/service_multi.py:74 msgid "List of servers available for this service" msgstr "Список серверов, доступных для этой услуги" -#: services/PhysicalMachines/service_multi.py:81 +#: services/PhysicalMachines/service_multi.py:79 msgid "Check Port" msgstr "Проверьте порт" -#: services/PhysicalMachines/service_multi.py:85 +#: services/PhysicalMachines/service_multi.py:83 msgid "" "If non zero, only hosts responding to connection on that port will be served." msgstr "" "Если не ноль, будут обслуживаться только хосты, отвечающие соединениям на " "этом порту" -#: services/PhysicalMachines/service_multi.py:92 +#: services/PhysicalMachines/service_multi.py:90 msgid "Skip time" msgstr "Пропустить время" -#: services/PhysicalMachines/service_multi.py:95 +#: services/PhysicalMachines/service_multi.py:93 msgid "If a host fails to check, skip it for this time (in minutes)." msgstr "Если хост не может проверить, пропустите его на это время (в минутах)." -#: services/PhysicalMachines/service_multi.py:103 +#: services/PhysicalMachines/service_multi.py:101 msgid "Max session per machine" msgstr "Максимальное количество сеансов на машину" -#: services/PhysicalMachines/service_multi.py:107 +#: services/PhysicalMachines/service_multi.py:105 msgid "" "Maximum session duration before UDS thinks this machine got locked and " "releases it (hours). 0 means \"never\"." @@ -4459,26 +4843,26 @@ msgstr "" "Максимальная продолжительность сеанса, прежде чем UDS решит, что эта машина " "заблокирована, и освободит ее (часы). 0 означает «никогда»." -#: services/PhysicalMachines/service_multi.py:114 +#: services/PhysicalMachines/service_multi.py:112 msgid "Lock machine by external access" msgstr "Заблокируйте машину внешним доступом" -#: services/PhysicalMachines/service_multi.py:115 +#: services/PhysicalMachines/service_multi.py:113 msgid "" "If checked, UDS will lock the machine if it is accesed from outside UDS." msgstr "" "Если этот флажок установлен, UDS заблокирует машину, если к ней будет " "получен доступ извне UDS." -#: services/PhysicalMachines/service_multi.py:122 +#: services/PhysicalMachines/service_multi.py:120 msgid "Static Multiple IP" msgstr "Статический множественный IP-адрес" -#: services/PhysicalMachines/service_multi.py:124 +#: services/PhysicalMachines/service_multi.py:122 msgid "This service provides access to POWERED-ON Machines by IP" msgstr "Эта услуга обеспечивает доступ к включенным машинам по IP" -#: services/PhysicalMachines/service_multi.py:158 +#: services/PhysicalMachines/service_multi.py:156 msgid "Invalid value detected on servers list: \"{}\"" msgstr "В списке серверов обнаружено недопустимое значение: \"{}\"" @@ -5380,47 +5764,47 @@ msgstr "Тень" msgid "Shadow memory multiplier (use with care)" msgstr "Множитель теневой памяти (используйте с осторожностью)" -#: temp_for_locales.py:96 +#: temp_for_locales.py:99 msgid "Spanish" msgstr "Испанский" -#: temp_for_locales.py:97 +#: temp_for_locales.py:100 msgid "English" msgstr "Английский" -#: temp_for_locales.py:98 +#: temp_for_locales.py:101 msgid "French" msgstr "Французский" -#: temp_for_locales.py:99 +#: temp_for_locales.py:102 msgid "German" msgstr "Немецкий" -#: temp_for_locales.py:100 +#: temp_for_locales.py:103 msgid "Portuguese" msgstr "Португальский" -#: temp_for_locales.py:101 +#: temp_for_locales.py:104 msgid "Italian" msgstr "Итальянский" -#: temp_for_locales.py:102 +#: temp_for_locales.py:105 msgid "Basque" msgstr "Баскский" -#: temp_for_locales.py:103 +#: temp_for_locales.py:106 msgid "Arabic" msgstr "Арабский" -#: temp_for_locales.py:104 +#: temp_for_locales.py:107 msgid "Russian" msgstr "Русский" -#: temp_for_locales.py:105 +#: temp_for_locales.py:108 msgid "Catalan" msgstr "Каталонский" -#: temp_for_locales.py:106 +#: temp_for_locales.py:109 msgid "Chinese" msgstr "Китайский" @@ -5631,7 +6015,7 @@ msgstr "Показать обои" #: transports/HTML5RDP/html5rdp.py:134 #: transports/HTML5RDS_enterprise/html5rds.py:123 -#: transports/RDP/rdp_base.py:222 +#: transports/RDP/rdp_base.py:241 msgid "" "If checked, the wallpaper and themes will be shown on machine (better user " "experience, more bandwidth)" @@ -5641,19 +6025,19 @@ msgstr "" #: transports/HTML5RDP/html5rdp.py:139 #: transports/HTML5RDS_enterprise/html5rds.py:128 -#: transports/RDP/rdp_base.py:235 +#: transports/RDP/rdp_base.py:254 msgid "Allow Desk.Comp." msgstr "Разрешить композицию рабочего стола" #: transports/HTML5RDP/html5rdp.py:141 #: transports/HTML5RDS_enterprise/html5rds.py:130 -#: transports/RDP/rdp_base.py:237 +#: transports/RDP/rdp_base.py:256 msgid "If checked, desktop composition will be allowed" msgstr "Если флажок установлен, будет разрешена композиция рабочего стола" #: transports/HTML5RDP/html5rdp.py:145 #: transports/HTML5RDS_enterprise/html5rds.py:134 -#: transports/RDP/rdp_base.py:241 transports/RDS_enterprise/rds_base.py:150 +#: transports/RDP/rdp_base.py:260 transports/RDS_enterprise/rds_base.py:150 msgid "Font Smoothing" msgstr "Сглаживание шрифтов" @@ -5914,11 +6298,6 @@ msgstr "Принудительно открывать каждое соедин msgid "Override UDS window and replace it with the connection." msgstr "Переопределите окно UDS и замените его подключением." -#: transports/HTML5RDP/html5rdp.py:268 -#: transports/HTML5RDS_enterprise/html5rds.py:255 -msgid "Security" -msgstr "Безопасность" - #: transports/HTML5RDP/html5rdp.py:269 #: transports/HTML5RDS_enterprise/html5rds.py:256 msgid "Connection security mode for Guacamole RDP connection" @@ -5957,11 +6336,11 @@ msgstr "" msgid "TLS (Transport Security Layer encryption)" msgstr "TLS (шифрование уровня безопасности передачи)" -#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:173 +#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:192 msgid "RDP Port" msgstr "Порт RDP" -#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:174 +#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:193 msgid "Use this port as RDP port. Defaults to 3389." msgstr "Используйте этот порт как порт RDP. По умолчанию 3389." @@ -5979,13 +6358,13 @@ msgstr "" "Настроенный путь для туннеля Glyptodon Enterprise. (Действительно только для " "Glyptodon Enterprise Tunnel)" -#: transports/HTML5RDP/html5rdp.py:327 +#: transports/HTML5RDP/html5rdp.py:326 #: transports/HTML5RDS_enterprise/html5rds.py:296 #: transports/HTML5VNC/html5vnc.py:187 msgid "The server must be http or https" msgstr "Сервер должен быть http или https" -#: transports/HTML5RDP/html5rdp.py:332 +#: transports/HTML5RDP/html5rdp.py:331 #: transports/HTML5RDS_enterprise/html5rds.py:301 msgid "" "Empty credentials (on Credentials tab) is only allowed with Security level " @@ -6026,7 +6405,7 @@ msgstr "Порт сервера VNC" msgid "Port of the VNC server." msgstr "Порт сервера VNC." -#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:205 +#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:224 #: transports/RDS_enterprise/rds_base.py:136 msgid "Color depth" msgstr "Глубина цвета" @@ -6083,12 +6462,12 @@ msgstr "" "Если флажок установлен, соединение будет открываться в полноэкранном режиме." #: transports/NICEDCV_enterprise/nicedcv_base.py:66 -#: transports/RDP/rdp_base.py:227 +#: transports/RDP/rdp_base.py:246 msgid "Multiple monitors" msgstr "Несколько мониторов" #: transports/NICEDCV_enterprise/nicedcv_base.py:69 -#: transports/RDP/rdp_base.py:230 +#: transports/RDP/rdp_base.py:249 msgid "" "If checked, all client monitors will be used for displaying (only works on " "windows clients)" @@ -6144,7 +6523,7 @@ msgstr "" #: transports/NICEDCV_enterprise/nicedcvtunnel.py:91 #: transports/NoMachine_enterprise/nomachine_tunneltransport.py:114 -#: transports/RDP/rdptunnel.py:135 transports/RDS_enterprise/rdstunnel.py:126 +#: transports/RDP/rdptunnel.py:136 transports/RDS_enterprise/rdstunnel.py:126 #: transports/SPICE/spice_tunnel.py:107 transports/X2GO/x2go_tunnel.py:116 msgid "Must use HOST:PORT in Tunnel Server Field" msgstr "Нужно использовать HOST:PORT в поле туннельного сервера" @@ -6288,89 +6667,97 @@ msgstr "Включить веб-камеру" msgid "If checked, webcam will be redirected (ONLY Windows)." msgstr "Если включено, веб-камера будет перенаправлена (ТОЛЬКО Windows)." -#: transports/RDP/rdp_base.py:164 transports/RDS_enterprise/rds_base.py:128 +#: transports/RDP/rdp_base.py:164 +msgid "USB redirection" +msgstr "USB-перенаправление" + +#: transports/RDP/rdp_base.py:166 +msgid "USB redirection policy" +msgstr "Политика перенаправления USB" + +#: transports/RDP/rdp_base.py:183 transports/RDS_enterprise/rds_base.py:128 msgid "Credssp Support" msgstr "Поддержка Credssp" -#: transports/RDP/rdp_base.py:166 transports/RDS_enterprise/rds_base.py:130 +#: transports/RDP/rdp_base.py:185 transports/RDS_enterprise/rds_base.py:130 msgid "If checked, will enable Credentials Provider Support)" msgstr "Если флажок установлен, включит поддержку поставщика учетных данных" -#: transports/RDP/rdp_base.py:181 +#: transports/RDP/rdp_base.py:200 msgid "Screen Size" msgstr "Размер экрана" -#: transports/RDP/rdp_base.py:183 +#: transports/RDP/rdp_base.py:202 msgid "Screen size for this transport" msgstr "Размер экрана для этого транспорта" -#: transports/RDP/rdp_base.py:207 transports/RDS_enterprise/rds_base.py:138 +#: transports/RDP/rdp_base.py:226 transports/RDS_enterprise/rds_base.py:138 msgid "Color depth for this connection" msgstr "Глубина цвета для этого подключения" -#: transports/RDP/rdp_base.py:219 +#: transports/RDP/rdp_base.py:238 msgid "Wallpaper/theme" msgstr "Обои/темы" -#: transports/RDP/rdp_base.py:244 +#: transports/RDP/rdp_base.py:263 msgid "If checked, fonts smoothing will be allowed" msgstr "Если флажок установлен, разрешается сглаживание шрифтов" -#: transports/RDP/rdp_base.py:248 +#: transports/RDP/rdp_base.py:267 msgid "Connection Bar" msgstr "Окно подключения" -#: transports/RDP/rdp_base.py:250 +#: transports/RDP/rdp_base.py:269 msgid "If checked, connection bar will be shown (only on Windows clients)" msgstr "" "Если включено, окно подключения будет показано (только на Windows клиентах)" -#: transports/RDP/rdp_base.py:256 transports/RDS_enterprise/rds_base.py:181 +#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:181 msgid "Multimedia sync" msgstr "Мультимедийная синхронизация" -#: transports/RDP/rdp_base.py:259 transports/RDS_enterprise/rds_base.py:184 +#: transports/RDP/rdp_base.py:278 transports/RDS_enterprise/rds_base.py:184 msgid "If checked. Linux client will use multimedia parameter for xfreerdp" msgstr "" "Если отмечено. Клиент Linux будет использовать мультимедийный параметр для " "xfreerdp" -#: transports/RDP/rdp_base.py:264 transports/RDS_enterprise/rds_base.py:189 +#: transports/RDP/rdp_base.py:283 transports/RDS_enterprise/rds_base.py:189 msgid "Use Alsa" msgstr "Использовать Alsa" -#: transports/RDP/rdp_base.py:267 transports/RDS_enterprise/rds_base.py:192 +#: transports/RDP/rdp_base.py:286 transports/RDS_enterprise/rds_base.py:192 msgid "" "If checked, Linux client will try to use ALSA, otherwise Pulse will be used" msgstr "" "Если флажок установлен, клиент Linux попытается использовать ALSA, иначе " "будет использоваться Pulse" -#: transports/RDP/rdp_base.py:272 transports/RDS_enterprise/rds_base.py:197 +#: transports/RDP/rdp_base.py:291 transports/RDS_enterprise/rds_base.py:197 msgid "Printer string" msgstr "Строка принтера" -#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:200 +#: transports/RDP/rdp_base.py:294 transports/RDS_enterprise/rds_base.py:200 msgid "If printer is checked, the printer string used with xfreerdp client" msgstr "" "Если принтер установлен, строка принтера, используемая с клиентом xfreerdp" -#: transports/RDP/rdp_base.py:281 transports/RDS_enterprise/rds_base.py:206 +#: transports/RDP/rdp_base.py:300 transports/RDS_enterprise/rds_base.py:206 msgid "Smartcard string" msgstr "Строка Smartcard" -#: transports/RDP/rdp_base.py:284 transports/RDS_enterprise/rds_base.py:209 +#: transports/RDP/rdp_base.py:303 transports/RDS_enterprise/rds_base.py:209 msgid "If smartcard is checked, the smartcard string used with xfreerdp client" msgstr "" "Если проверена смарт-карта, строка смарт-карты, используемая с клиентом " "freerdp" -#: transports/RDP/rdp_base.py:290 transports/RDP/rdp_base.py:310 +#: transports/RDP/rdp_base.py:309 transports/RDP/rdp_base.py:329 #: transports/RDS_enterprise/rds_base.py:215 msgid "Custom parameters" msgstr "Пользовательские параметры" -#: transports/RDP/rdp_base.py:293 transports/RDS_enterprise/rds_base.py:218 +#: transports/RDP/rdp_base.py:312 transports/RDS_enterprise/rds_base.py:218 msgid "" "If not empty, extra parameter to include for Linux Client (for example /usb:" "id,dev:054c:0268, or aything compatible with your xfreerdp client)" @@ -6378,11 +6765,11 @@ msgstr "" "Если не пуст, добавочный параметр для включения клиента Linux (например, /" "usb:id,dev:054c:0268 или любой совместимый с вашим клиентом xfreerdp)" -#: transports/RDP/rdp_base.py:300 +#: transports/RDP/rdp_base.py:319 msgid "Allow Microsoft Rdp Client" msgstr "Разрешить клиент Microsoft Rdp" -#: transports/RDP/rdp_base.py:303 +#: transports/RDP/rdp_base.py:322 msgid "" "If checked, allows use of Microsoft Remote Desktop Client. PASSWORD WILL BE " "PROMPTED!" @@ -6390,7 +6777,7 @@ msgstr "" "Если этот флажок установлен, разрешается использование клиента удаленного " "рабочего стола Microsoft. ПАРОЛЬ БУДЕТ УКАЗАНО!" -#: transports/RDP/rdp_base.py:313 +#: transports/RDP/rdp_base.py:332 msgid "" "If not empty, extra parameter to include for Mac OS X Freerdp Client (for " "example /usb:id,dev:054c:0268, or aything compatible with your xfreerdp " @@ -6642,73 +7029,73 @@ msgstr "" msgid "Access tried from an unallowed source" msgstr "Попытка доступа из недопустимого источника" -#: web/util/authentication.py:155 +#: web/util/authentication.py:158 msgid "Invalid data" msgstr "Неверные данные" -#: web/util/configjs.py:170 +#: web/util/configjs.py:163 msgid "Access limited by calendar" msgstr "Доступ ограничен календарем" -#: web/util/configjs.py:226 +#: web/util/configjs.py:222 msgid "Windows client" msgstr "Клиент Windows" -#: web/util/configjs.py:230 +#: web/util/configjs.py:226 msgid "Mac OS X client" msgstr "Клиент Mac OS X" -#: web/util/configjs.py:233 +#: web/util/configjs.py:229 msgid "Debian based Linux client" msgstr "Linux-клиент на основе Debian" -#: web/util/configjs.py:235 web/util/configjs.py:243 web/util/configjs.py:263 +#: web/util/configjs.py:231 web/util/configjs.py:239 web/util/configjs.py:259 msgid "(requires Python-3.6 or newer)" msgstr "(требуется Python-3.6 или новее)" -#: web/util/configjs.py:241 +#: web/util/configjs.py:237 msgid "RPM based Linux client (Fedora, Suse, ...)" msgstr "Linux-клиент на основе RPM (Fedora, Suse, ...)" -#: web/util/configjs.py:249 +#: web/util/configjs.py:245 msgid "Binary appimage X86_64 Linux client" msgstr "Двоичный образ приложения X86_64 Linux client" -#: web/util/configjs.py:255 +#: web/util/configjs.py:251 msgid "Binary appimage Raspberry Linux client" msgstr "Двоичный клиент appimage Raspberry Linux" -#: web/util/configjs.py:261 +#: web/util/configjs.py:257 msgid "Generic .tar.gz Linux client" msgstr "Общий .tar.gz Linux-клиент" -#: web/util/errors.py:76 +#: web/util/errors.py:78 msgid "Unknown error" msgstr "Неизвестная ошибка" -#: web/util/errors.py:83 +#: web/util/errors.py:85 msgid "Maximum services limit reached. Please, contact administrator" msgstr "" "Достигнут максимальный лимит обслуживания. Пожалуйста, свяжитесь с " "администратором" -#: web/util/errors.py:84 +#: web/util/errors.py:86 msgid "You need to enable cookies to let this application work" msgstr "Вам необходимо включить файлы cookie, чтобы это приложение работало" -#: web/util/errors.py:86 +#: web/util/errors.py:88 msgid "Authenticator not found" msgstr "Аутентификатор не найден" -#: web/util/errors.py:87 +#: web/util/errors.py:89 msgid "Invalid authenticator" msgstr "Недопустимый аутентификатор" -#: web/util/errors.py:88 +#: web/util/errors.py:90 msgid "Invalid request received" msgstr "Получен недопустимый запрос" -#: web/util/errors.py:90 +#: web/util/errors.py:92 msgid "" "Your browser is not supported. Please, upgrade it to a modern HTML5 browser " "like Firefox or Chrome" @@ -6716,39 +7103,43 @@ msgstr "" "Ваш браузер не поддерживается. Пожалуйста, обновите его до современного " "браузера HTML5, такого как Firefox или Chrome." -#: web/util/errors.py:92 +#: web/util/errors.py:94 msgid "The requested service is in maintenance mode" msgstr "Запрошенная служба находится в режиме обслуживания" -#: web/util/errors.py:93 +#: web/util/errors.py:95 msgid "" "The service is not ready.\n" "Please, try again in a few moments." msgstr "Услуга не готова. Пожалуйста, попробуйте снова через пару минут." -#: web/util/errors.py:94 +#: web/util/errors.py:96 msgid "Preparing service" msgstr "Подготовка сервиса" -#: web/util/errors.py:95 +#: web/util/errors.py:97 msgid "Service access denied by calendars" msgstr "Доступ к сервису, запрещенному календарями" -#: web/util/errors.py:96 +#: web/util/errors.py:98 msgid "Page not found" msgstr "Страница не найдена" -#: web/util/errors.py:97 +#: web/util/errors.py:99 msgid "Unexpected error" msgstr "Неожиданная ошибка" -#: web/util/errors.py:98 +#: web/util/errors.py:100 msgid "" "Reloading this page is not supported. Please, reopen service from origin." msgstr "" "Перезагрузка этой страницы не поддерживается. Пожалуйста, откройте службу " "заново." +#: web/util/errors.py:101 +msgid "Invalid Multi-Factor Authentication code" +msgstr "Неверный код многофакторной аутентификации" + #: web/util/services.py:319 msgid "" "This service is about to be replaced by a new version. Please, close the " @@ -6769,6 +7160,14 @@ msgstr "" "Ваш сервис создается, пожалуйста, подождите несколько секунд, пока мы " "завершим." -#: web/views/auth.py:177 +#: web/views/auth.py:189 msgid "Authenticator does not provide information" msgstr "Аутентификатор не предоставляет информацию" + +#: web/views/modern.py:269 +msgid "{} days" +msgstr "{} дней" + +#: web/views/modern.py:271 +msgid "{} hours" +msgstr "{} часы" diff --git a/server/src/uds/locale/ru/LC_MESSAGES/djangojs.po b/server/src/uds/locale/ru/LC_MESSAGES/djangojs.po index 60a78ae6..1abcbd03 100644 --- a/server/src/uds/locale/ru/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/ru/LC_MESSAGES/djangojs.po @@ -12,9 +12,9 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-10 13:33+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:16+0000\n" +"Last-Translator: Víctor Alonso , 2020\n" "Language-Team: Russian (http://www.transifex.com/openuds/openuds/language/" "ru/)\n" "Language: ru\n" @@ -36,14 +36,14 @@ msgstr "Основной" #: static/admin/main.js:1 static/admin/translations-fakejs.js:11 #: static/admin/translations-fakejs.js:29 -#: static/admin/translations-fakejs.js:179 -#: static/admin/translations-fakejs.js:191 -#: static/admin/translations-fakejs.js:193 -#: static/admin/translations-fakejs.js:195 -#: static/admin/translations-fakejs.js:197 -#: static/admin/translations-fakejs.js:254 -#: static/admin/translations-fakejs.js:256 -#: static/admin/translations-fakejs.js:258 static/modern/main-es5.js:1 +#: static/admin/translations-fakejs.js:141 +#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:216 +#: static/admin/translations-fakejs.js:218 +#: static/admin/translations-fakejs.js:220 static/modern/main-es5.js:1 #: static/modern/translations-fakejs.js:14 msgid "Error" msgstr "Ошибка" @@ -70,12 +70,12 @@ msgstr "Загрузка данных..." #: static/admin/translations-fakejs.js:38 #: static/admin/translations-fakejs.js:40 #: static/admin/translations-fakejs.js:43 -#: static/admin/translations-fakejs.js:134 -#: static/admin/translations-fakejs.js:216 -#: static/admin/translations-fakejs.js:221 -#: static/admin/translations-fakejs.js:253 -#: static/admin/translations-fakejs.js:261 -#: static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:96 +#: static/admin/translations-fakejs.js:178 +#: static/admin/translations-fakejs.js:183 +#: static/admin/translations-fakejs.js:215 +#: static/admin/translations-fakejs.js:223 +#: static/admin/translations-fakejs.js:228 msgid "dismiss" msgstr "отклонить" @@ -92,7 +92,7 @@ msgid "Test passed successfully" msgstr "Тест успешно пройден" #: static/admin/main.js:1 static/admin/translations-fakejs.js:37 -#: static/admin/translations-fakejs.js:260 +#: static/admin/translations-fakejs.js:222 msgid "Successfully saved" msgstr "Успешно сохранено" @@ -148,58 +148,58 @@ msgstr "пул-группа" msgid "Go to" msgstr "Перейти к" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:275 msgid "yes" msgstr "да" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:276 msgid "no" msgstr "нет" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:269 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 msgid "Error saving: " msgstr "Ошибка сохранения:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:270 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 msgid "Error saving element" msgstr "Ошибка сохранения элемента" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:271 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:274 msgid "Error handling your request" msgstr "Ошибка обработки вашего запроса" #: static/admin/main.js:1 static/admin/translations-fakejs.js:56 -#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:115 msgid "Sunday" msgstr "ВС" #: static/admin/main.js:1 static/admin/translations-fakejs.js:57 -#: static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:116 msgid "Monday" msgstr "ПН" #: static/admin/main.js:1 static/admin/translations-fakejs.js:58 -#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:117 msgid "Tuesday" msgstr "ВТ" #: static/admin/main.js:1 static/admin/translations-fakejs.js:59 -#: static/admin/translations-fakejs.js:156 +#: static/admin/translations-fakejs.js:118 msgid "Wednesday" msgstr "СР" #: static/admin/main.js:1 static/admin/translations-fakejs.js:60 -#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:119 msgid "Thursday" msgstr "ЧТ" #: static/admin/main.js:1 static/admin/translations-fakejs.js:61 -#: static/admin/translations-fakejs.js:158 +#: static/admin/translations-fakejs.js:120 msgid "Friday" msgstr "ПТ" #: static/admin/main.js:1 static/admin/translations-fakejs.js:62 -#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:121 msgid "Saturday" msgstr "СБ" @@ -271,20 +271,20 @@ msgstr "Пользовательских сервисов: #SERVICES_NUMBER# " msgid "#RESTRAINED_NUMBER# restrained services!" msgstr "Ограниченных сервисов: #RESTRAINED_NUMBER#" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 -#: static/admin/translations-fakejs.js:249 -#: static/admin/translations-fakejs.js:402 -#: static/admin/translations-fakejs.js:454 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:211 +#: static/admin/translations-fakejs.js:265 +#: static/admin/translations-fakejs.js:366 +#: static/admin/translations-fakejs.js:418 msgid "Assigned services" msgstr "Назначенные сервисы" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 msgid "Services in use" msgstr "Используемые услуги" #: static/admin/main.js:1 static/admin/translations-fakejs.js:21 -#: static/admin/translations-fakejs.js:292 -#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:303 #: static/modern/translations-fakejs.js:30 msgid "Filter" msgstr "Фильтр" @@ -302,25 +302,25 @@ msgid "Full Access" msgstr "Полный доступ" #: static/admin/main.js:1 static/admin/translations-fakejs.js:15 -#: static/admin/translations-fakejs.js:362 -#: static/admin/translations-fakejs.js:409 -#: static/admin/translations-fakejs.js:414 +#: static/admin/translations-fakejs.js:373 +#: static/admin/translations-fakejs.js:378 +#: static/admin/translations-fakejs.js:489 msgid "User" msgstr "Пользователь" #: static/admin/main.js:1 static/admin/translations-fakejs.js:16 -#: static/admin/translations-fakejs.js:83 -#: static/admin/translations-fakejs.js:93 -#: static/admin/translations-fakejs.js:427 -#: static/admin/translations-fakejs.js:448 +#: static/admin/translations-fakejs.js:243 +#: static/admin/translations-fakejs.js:253 +#: static/admin/translations-fakejs.js:391 +#: static/admin/translations-fakejs.js:412 msgid "Group" msgstr "Группа" #: static/admin/main.js:1 static/admin/translations-fakejs.js:17 -#: static/admin/translations-fakejs.js:408 -#: static/admin/translations-fakejs.js:413 -#: static/admin/translations-fakejs.js:426 -#: static/admin/translations-fakejs.js:447 +#: static/admin/translations-fakejs.js:372 +#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:390 +#: static/admin/translations-fakejs.js:411 #: static/modern/translations-fakejs.js:72 msgid "Authenticator" msgstr "Аутентификатор" @@ -337,89 +337,89 @@ msgstr "Удалить" msgid "Confirm revokation of permission" msgstr "Подтвердите отзыв разрешения" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:238 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 msgid "Maintenance" msgstr "Обслуживание" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 msgid "Exit maintenance mode" msgstr "Выйти из режима обслуживания" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 msgid "Enter maintenance mode" msgstr "Войти в режим обслуживания" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 msgid "New provider" msgstr "Новый поставщик" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 msgid "Edit provider" msgstr "Изменить поставщика" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:243 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 msgid "Delete provider" msgstr "Удалить поставщика" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 msgid "Exit maintenance mode?" msgstr "Выйти из режима обслуживания?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 msgid "Enter maintenance mode?" msgstr "Войти в режим обслуживания?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 msgid "Maintenance mode for" msgstr "Режим обслуживания для" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 -#: static/admin/translations-fakejs.js:247 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:209 +#: static/admin/translations-fakejs.js:232 msgid "In Maintenance" msgstr "На техобслуживании" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 -#: static/admin/translations-fakejs.js:248 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/translations-fakejs.js:233 msgid "Active" msgstr "Активный" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 -#: static/admin/translations-fakejs.js:95 -#: static/admin/translations-fakejs.js:229 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:191 +#: static/admin/translations-fakejs.js:236 +#: static/admin/translations-fakejs.js:255 msgid "Pool" msgstr "Пул" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 -#: static/admin/translations-fakejs.js:96 -#: static/admin/translations-fakejs.js:230 -#: static/admin/translations-fakejs.js:343 -#: static/admin/translations-fakejs.js:355 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 +#: static/admin/translations-fakejs.js:237 +#: static/admin/translations-fakejs.js:256 +#: static/admin/translations-fakejs.js:470 +#: static/admin/translations-fakejs.js:482 msgid "State" msgstr "Состояние" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 -#: static/admin/translations-fakejs.js:97 -#: static/admin/translations-fakejs.js:231 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:193 +#: static/admin/translations-fakejs.js:238 +#: static/admin/translations-fakejs.js:257 msgid "User Services" msgstr "Сервисы пользователя" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 -#: static/admin/translations-fakejs.js:232 -#: static/admin/translations-fakejs.js:321 -#: static/admin/translations-fakejs.js:401 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:194 +#: static/admin/translations-fakejs.js:248 +#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:365 msgid "Service pools" msgstr "Пулы услуг" #: static/admin/main.js:1 static/admin/translations-fakejs.js:3 #: static/admin/translations-fakejs.js:7 -#: static/admin/translations-fakejs.js:308 +#: static/admin/translations-fakejs.js:311 #: static/modern/translations-fakejs.js:44 msgid "Yes" msgstr "Да" #: static/admin/main.js:1 static/admin/translations-fakejs.js:4 #: static/admin/translations-fakejs.js:8 -#: static/admin/translations-fakejs.js:309 +#: static/admin/translations-fakejs.js:312 #: static/modern/translations-fakejs.js:45 msgid "No" msgstr "Нет" @@ -432,592 +432,595 @@ msgstr "(скрытый)" msgid "Selected items :" msgstr "Выбрано:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 -#: static/admin/translations-fakejs.js:233 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:195 +#: static/admin/translations-fakejs.js:231 #: static/modern/translations-fakejs.js:35 msgid "Information" msgstr "Информация" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 msgid "New service" msgstr "Новый сервис" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:197 msgid "Edit service" msgstr "Изменить сервис" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:236 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 msgid "Delete service" msgstr "Удалить сервис" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:237 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 msgid "Delete user service" msgstr "Удалить пользовательский сервис" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:269 msgid "New Authenticator" msgstr "Новый Аутентификатор" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:267 +#: static/admin/translations-fakejs.js:270 msgid "Edit Authenticator" msgstr "Изменить Аутентификатор" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/translations-fakejs.js:271 msgid "Delete Authenticator" msgstr "Удалить Аутентификатор" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 msgid "Any" msgstr "Любой" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 msgid "All" msgstr "Все" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 -#: static/admin/translations-fakejs.js:94 -#: static/admin/translations-fakejs.js:342 -#: static/admin/translations-fakejs.js:354 -#: static/admin/translations-fakejs.js:379 -#: static/admin/translations-fakejs.js:435 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/translations-fakejs.js:254 +#: static/admin/translations-fakejs.js:343 +#: static/admin/translations-fakejs.js:399 +#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:481 msgid "Comments" msgstr "Комментарии" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:258 msgid "Unique ID" msgstr "Уникальный идентификатор" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 msgid "Friendly Name" msgstr "Дружественное имя" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:260 msgid "In Use" msgstr "В использовании" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:261 msgid "IP" msgstr "IP" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 msgid "Services Pool" msgstr "Сервисный пул" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 -#: static/admin/translations-fakejs.js:103 -#: static/admin/translations-fakejs.js:287 -#: static/admin/translations-fakejs.js:323 -#: static/admin/translations-fakejs.js:337 -#: static/admin/translations-fakejs.js:363 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/translations-fakejs.js:263 +#: static/admin/translations-fakejs.js:290 +#: static/admin/translations-fakejs.js:328 #: static/admin/translations-fakejs.js:367 -#: static/admin/translations-fakejs.js:373 -#: static/admin/translations-fakejs.js:403 -#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:494 msgid "Groups" msgstr "Группы" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 -#: static/admin/translations-fakejs.js:335 -#: static/admin/translations-fakejs.js:368 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/translations-fakejs.js:462 +#: static/admin/translations-fakejs.js:495 msgid "Services Pools" msgstr "Сервисные пулы" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 -#: static/admin/translations-fakejs.js:378 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/translations-fakejs.js:342 msgid "Name" msgstr "Имя" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 msgid "Real Name" msgstr "Настоящее имя" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 msgid "state" msgstr "состояние" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 msgid "Last access" msgstr "Последний доступ" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 -#: static/admin/translations-fakejs.js:286 -#: static/admin/translations-fakejs.js:336 -#: static/admin/translations-fakejs.js:372 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:249 +#: static/admin/translations-fakejs.js:289 +#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:463 msgid "Users" msgstr "Пользователей" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 -#: static/admin/translations-fakejs.js:344 -#: static/admin/translations-fakejs.js:356 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:483 msgid "Enabled" msgstr "Включено" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 -#: static/admin/translations-fakejs.js:345 -#: static/admin/translations-fakejs.js:357 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:484 msgid "Disabled" msgstr "Отключено" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 -#: static/admin/translations-fakejs.js:358 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:247 +#: static/admin/translations-fakejs.js:485 msgid "Blocked" msgstr "Заблокирован" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 msgid "Delete user" msgstr "Удалить пользователя" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 msgid "Delete group" msgstr "Удалить группу" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 msgid "New OS Manager" msgstr "Новый менеджер ОС" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 msgid "Edit OS Manager" msgstr "Редактировать Менеджер ОС" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 msgid "Delete OS Manager" msgstr "Удалить Менеджер ОС" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:120 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 msgid "New Transport" msgstr "Новый транспорт" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:121 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:83 msgid "Edit Transport" msgstr "Изменить транспорт" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 msgid "Delete Transport" msgstr "Удалить транспорт" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 msgid "New Network" msgstr "Новая сеть" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:115 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 msgid "Edit Network" msgstr "Изменить сеть" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:116 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 msgid "Delete Network" msgstr "Удалить сеть" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:117 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 msgid "New Proxy" msgstr "Новый прокси" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:118 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 msgid "Edit Proxy" msgstr "Изменить прокси" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:119 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 msgid "Delete Proxy" msgstr "Удалить прокси" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:223 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 msgid "(This service does not requires an OS Manager)" msgstr "(Этот сервис не требует Менеджер ОС)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 msgid "New service Pool" msgstr "Новый пул услуг" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 msgid "Publish on creation" msgstr "Публиковать при создании" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 msgid "If selected, will initiate the publication inmediatly after creation" msgstr "Если включено, инициирует публикацию сразу после создания" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 msgid "Edit Service Pool" msgstr "Изменить пул услуг" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:228 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 msgid "Delete service pool" msgstr "Удалить пул услуг" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 -#: static/admin/translations-fakejs.js:194 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:156 msgid "Please, select a valid user" msgstr "Пожалуйста, выберите действительного пользователя" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:158 msgid "Please, select a valid group" msgstr "Пожалуйста, выберите действительную группу" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 msgid "Please, select a valid transport" msgstr "Пожалуйста, выберите действительный транспорт" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 msgid "Assigned" msgstr "Назначенный" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 msgid "Cached" msgstr "Кешировано" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 msgid "In use" msgstr "В использовании" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 -#: static/admin/translations-fakejs.js:290 -#: static/admin/translations-fakejs.js:374 -#: static/admin/translations-fakejs.js:405 -#: static/admin/translations-fakejs.js:462 -#: static/admin/translations-fakejs.js:465 -#: static/admin/translations-fakejs.js:470 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/translations-fakejs.js:293 +#: static/admin/translations-fakejs.js:369 +#: static/admin/translations-fakejs.js:426 +#: static/admin/translations-fakejs.js:429 +#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:460 msgid "Logs" msgstr "Журналы" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 msgid "VNC" msgstr "VNC" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 msgid "Launch now" msgstr "Запустить сейчас" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 msgid "Change owner" msgstr "Сменить владельца" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 msgid "Assign service" msgstr "Назначить услугу" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 -#: static/admin/translations-fakejs.js:277 -#: static/admin/translations-fakejs.js:283 -#: static/admin/translations-fakejs.js:349 -#: static/admin/translations-fakejs.js:364 -#: static/admin/translations-fakejs.js:390 -#: static/admin/translations-fakejs.js:398 -#: static/admin/translations-fakejs.js:410 -#: static/admin/translations-fakejs.js:415 -#: static/admin/translations-fakejs.js:423 -#: static/admin/translations-fakejs.js:428 -#: static/admin/translations-fakejs.js:432 -#: static/admin/translations-fakejs.js:436 -#: static/admin/translations-fakejs.js:449 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/translations-fakejs.js:280 +#: static/admin/translations-fakejs.js:286 +#: static/admin/translations-fakejs.js:354 +#: static/admin/translations-fakejs.js:362 +#: static/admin/translations-fakejs.js:374 +#: static/admin/translations-fakejs.js:379 +#: static/admin/translations-fakejs.js:387 +#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:400 +#: static/admin/translations-fakejs.js:413 +#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:476 #: static/admin/translations-fakejs.js:491 msgid "Cancel" msgstr "Отменить" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 msgid "Changelog" msgstr "Изменения" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 -#: static/admin/translations-fakejs.js:209 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/translations-fakejs.js:171 msgid "Delete assigned service" msgstr "Удалить назначенную услугу" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 msgid "Delete cached service" msgstr "Удалить кэшированную услугу" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:183 -#: static/admin/translations-fakejs.js:211 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/translations-fakejs.js:173 msgid "Delete assigned group" msgstr "Удалить назначенную группу" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 msgid "Delete assigned transport" msgstr "Удалить назначенный транспорт" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 msgid "Publication" msgstr "Публикация" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 msgid "Cancel publication?" msgstr "Отменить публикацию?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:215 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 msgid "Publication canceled" msgstr "Публикация отменена" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:179 msgid "Delete scheduled action" msgstr "Удалить запланированное действие" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:218 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 msgid "Execute scheduled action" msgstr "Выполнить запланированное действие" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 msgid "Execute scheduled action right now?" msgstr "Выполнить запланированное действие прямо сейчас?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:220 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 msgid "Scheduled action executed" msgstr "Запланированное действие выполнено" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:184 -#: static/admin/translations-fakejs.js:222 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/translations-fakejs.js:184 msgid "Delete calendar access rule" msgstr "Удалить правило доступа к календарю" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 msgid "New meta pool" msgstr "Новый мета-пул" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 msgid "Edit meta pool" msgstr "Изменить мета-пул" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 msgid "Delete meta pool" msgstr "Удалить мета-пул" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 msgid "Please, select a valid service pool" msgstr "Пожалуйста, выберите действительный пул услуг" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 msgid "Remove member pool" msgstr "Удалить пул участников" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 msgid "New pool group" msgstr "Новая пул-группа" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 msgid "Edit pool group" msgstr "Изменить пул-группу" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 msgid "Delete pool group" msgstr "Удалить пул-группу" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 msgid "New calendar" msgstr "Новый календарь" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 msgid "Edit calendar" msgstr "Редактировать календарь" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:178 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 msgid "Delete calendar" msgstr "Удалить календарь" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 msgid "day" msgstr "день" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 msgid "days" msgstr "дни" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 msgid "Daily" msgstr "Ежедневно" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 msgid "week" msgstr "неделя" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 msgid "weeks" msgstr "недель" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:141 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:103 msgid "Weekly" msgstr "Еженедельно" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 msgid "month" msgstr "месяц" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 msgid "months" msgstr "месяцев" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 msgid "Monthly" msgstr "Ежемесячно" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 msgid "year" msgstr "год" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 msgid "years" msgstr "лет" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 msgid "Yearly" msgstr "Ежегодно" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 -#: static/admin/translations-fakejs.js:387 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/translations-fakejs.js:351 msgid "Weekdays" msgstr "По будням" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 msgid "Minutes" msgstr "Минуты" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 msgid "Hours" msgstr "Часы" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 msgid "Days" msgstr "Дни" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 msgid "Weeks" msgstr "Недели" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 msgid "(no days)" msgstr "(без дней)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 msgid "Forever" msgstr "Навсегда" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 msgid "Start date/time" msgstr "Дата/время начала" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 msgid "End date" msgstr "Дата окончания" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 msgid "Interval" msgstr "Интервал" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 msgid "Week days" msgstr "Будние дни" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 msgid "Invalid or incomplete rule. Please, fix field $FIELD" msgstr "Неверное или неполное правило. Пожалуйста, исправьте поле $FIELD" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 msgid "This rule will be valid every" msgstr "Это правило будет действовать каждый" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 msgid "of any week" msgstr "любой недели" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 msgid "from" msgstr "от" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 msgid "until" msgstr "до" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:171 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 msgid "onwards" msgstr "далее" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:134 msgid "starting at" msgstr "начиная с" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:173 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 msgid "and every event will be active for" msgstr "и каждое событие будет активным в течение" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 msgid "with no duration" msgstr "без длительности" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 msgid "Delete calendar rule" msgstr "Удалить правило календаря" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 msgid "Set time mark" msgstr "Установить отметку времени" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 msgid "New account" msgstr "Новый аккаунт" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 msgid "Edit account" msgstr "Редактировать аккаунт" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 msgid "Delete account" msgstr "Удалить аккаунт" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:93 msgid "Time mark" msgstr "Отметка времени" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:94 msgid "Set time mark for $NAME to current date/time?" msgstr "Установить метку времени для $NAME на текущую дату/время?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:95 msgid "Time mark stablished" msgstr "Отметка времени установлена" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:97 msgid "No time mark" msgstr "Нет отметки времени" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 msgid "Delete account usage" msgstr "Удалить использование аккаунта" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:255 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 msgid "Image is too big (max. upload size is 256Kb)" msgstr "Изображение велико (макс. размер 256КБ)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:257 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 msgid "Invalid image type (only supports JPEG, PNG and GIF" msgstr "Неверный тип изображения (поддерживаются только JPEG, PNG и GIF)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:221 msgid "Please, provide a name and a image" msgstr "Пожалуйста, укажите название и изображение" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 msgid "Delete image" msgstr "Удалить изображение" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:263 -#: static/admin/translations-fakejs.js:267 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/translations-fakejs.js:229 msgid "Generate report" msgstr "Генерировать отчёт" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 msgid "Generating report..." msgstr "Генерация отчёта..." -#: static/admin/main.js:1 static/admin/translations-fakejs.js:265 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 msgid "Report finished" msgstr "Отчёт закончен" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 msgid "Configuration saved" msgstr "Конфигурация сохранена" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 msgid "Delete actor token - USE WITH EXTREME CAUTION!!!" msgstr "Удалить ключ клиента - ИСПОЛЬЗУЙТЕ С БОЛЬШОЙ ОСТОРОЖНОСТЬЮ!!!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:230 msgid "Delete tunnel token - USE WITH EXTREME CAUTION!!!" msgstr "Удалите токен туннеля - ИСПОЛЬЗУЙТЕ С КРАЙНЕЙ ПРЕДОСТОРОЖНОСТЬЮ !!!" @@ -1033,507 +1036,515 @@ msgstr "Строк на страницу" msgid ", (%i more items)" msgstr ", (% я больше строк)" -#: static/admin/translations-fakejs.js:275 +#: static/admin/translations-fakejs.js:278 msgid "Remove all" msgstr "Удалить все" -#: static/admin/translations-fakejs.js:276 +#: static/admin/translations-fakejs.js:279 msgid "Add" msgstr "Добавить" -#: static/admin/translations-fakejs.js:278 -#: static/admin/translations-fakejs.js:284 -#: static/admin/translations-fakejs.js:289 -#: static/admin/translations-fakejs.js:338 -#: static/admin/translations-fakejs.js:350 -#: static/admin/translations-fakejs.js:365 -#: static/admin/translations-fakejs.js:370 -#: static/admin/translations-fakejs.js:391 -#: static/admin/translations-fakejs.js:399 -#: static/admin/translations-fakejs.js:411 +#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:287 +#: static/admin/translations-fakejs.js:292 +#: static/admin/translations-fakejs.js:355 +#: static/admin/translations-fakejs.js:363 +#: static/admin/translations-fakejs.js:375 +#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:401 +#: static/admin/translations-fakejs.js:403 +#: static/admin/translations-fakejs.js:414 #: static/admin/translations-fakejs.js:416 -#: static/admin/translations-fakejs.js:424 -#: static/admin/translations-fakejs.js:429 -#: static/admin/translations-fakejs.js:433 -#: static/admin/translations-fakejs.js:437 -#: static/admin/translations-fakejs.js:439 -#: static/admin/translations-fakejs.js:450 -#: static/admin/translations-fakejs.js:452 -#: static/admin/translations-fakejs.js:466 +#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:465 +#: static/admin/translations-fakejs.js:477 #: static/admin/translations-fakejs.js:492 +#: static/admin/translations-fakejs.js:497 msgid "Ok" msgstr "Хорошо" -#: static/admin/translations-fakejs.js:279 +#: static/admin/translations-fakejs.js:282 msgid "Discard & close" msgstr "Отменить и закрыть" -#: static/admin/translations-fakejs.js:280 -#: static/admin/translations-fakejs.js:484 +#: static/admin/translations-fakejs.js:283 +#: static/admin/translations-fakejs.js:448 msgid "Save" msgstr "Сохранить" -#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:284 msgid "New user permission for" msgstr "Новое разрешение пользователя для" -#: static/admin/translations-fakejs.js:282 +#: static/admin/translations-fakejs.js:285 msgid "New group permission for" msgstr "Новое разрешение группы для" -#: static/admin/translations-fakejs.js:285 +#: static/admin/translations-fakejs.js:288 msgid "Permissions for" msgstr "Разрешения для" -#: static/admin/translations-fakejs.js:288 +#: static/admin/translations-fakejs.js:291 msgid "New permission..." msgstr "Новое разрешение..." -#: static/admin/translations-fakejs.js:291 -#: static/admin/translations-fakejs.js:298 +#: static/admin/translations-fakejs.js:294 +#: static/admin/translations-fakejs.js:301 msgid "Export" msgstr "Экспорт" -#: static/admin/translations-fakejs.js:293 -#: static/admin/translations-fakejs.js:294 -#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:296 +#: static/admin/translations-fakejs.js:297 +#: static/admin/translations-fakejs.js:298 msgid "New" msgstr "Новый" -#: static/admin/translations-fakejs.js:296 -#: static/admin/translations-fakejs.js:304 +#: static/admin/translations-fakejs.js:299 +#: static/admin/translations-fakejs.js:307 msgid "Edit" msgstr "Редактировать" -#: static/admin/translations-fakejs.js:297 -#: static/admin/translations-fakejs.js:305 +#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:308 msgid "Permissions" msgstr "Разрешения" -#: static/admin/translations-fakejs.js:299 -#: static/admin/translations-fakejs.js:306 +#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:309 msgid "Delete" msgstr "Удалить" -#: static/admin/translations-fakejs.js:301 +#: static/admin/translations-fakejs.js:304 msgid "Selected items" msgstr "Выбранные предметы" -#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:305 msgid "Copy" msgstr "Копировать" -#: static/admin/translations-fakejs.js:303 +#: static/admin/translations-fakejs.js:306 msgid "Detail" msgstr "Подробность" -#: static/admin/translations-fakejs.js:307 +#: static/admin/translations-fakejs.js:310 #: static/modern/translations-fakejs.js:43 msgid "Close" msgstr "Закрыть" -#: static/admin/translations-fakejs.js:310 +#: static/admin/translations-fakejs.js:313 msgid "User mode" msgstr "Пользовательский режим" -#: static/admin/translations-fakejs.js:311 +#: static/admin/translations-fakejs.js:314 #: static/modern/translations-fakejs.js:48 msgid "Logout" msgstr "Выйти" -#: static/admin/translations-fakejs.js:312 -#: static/admin/translations-fakejs.js:371 -#: static/admin/translations-fakejs.js:389 -#: static/admin/translations-fakejs.js:400 -#: static/admin/translations-fakejs.js:453 -#: static/admin/translations-fakejs.js:467 +#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:353 +#: static/admin/translations-fakejs.js:364 +#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:431 +#: static/admin/translations-fakejs.js:457 msgid "Summary" msgstr "Панель" -#: static/admin/translations-fakejs.js:313 -#: static/admin/translations-fakejs.js:468 +#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:432 msgid "Services" msgstr "Поставщики услуг" -#: static/admin/translations-fakejs.js:314 +#: static/admin/translations-fakejs.js:317 +msgid "Authentication" +msgstr "Аутентификация" + +#: static/admin/translations-fakejs.js:318 msgid "Authenticators" msgstr "Аутентификаторы" -#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:319 +msgid "Multi Factor" +msgstr "Многофакторный" + +#: static/admin/translations-fakejs.js:320 msgid "Os Managers" msgstr "Менеджеры ОС" -#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:321 msgid "Connectivity" msgstr "Подключение" -#: static/admin/translations-fakejs.js:317 -#: static/admin/translations-fakejs.js:457 +#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:421 #: static/modern/translations-fakejs.js:39 msgid "Transports" msgstr "Транспорты" -#: static/admin/translations-fakejs.js:318 +#: static/admin/translations-fakejs.js:323 #: static/modern/translations-fakejs.js:41 msgid "Networks" msgstr "Сети" -#: static/admin/translations-fakejs.js:319 +#: static/admin/translations-fakejs.js:324 msgid "Proxies" msgstr "Прокси" -#: static/admin/translations-fakejs.js:320 +#: static/admin/translations-fakejs.js:325 msgid "Pools" msgstr "Пулы" -#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:327 msgid "Meta pools" msgstr "Мета-пулы" -#: static/admin/translations-fakejs.js:324 +#: static/admin/translations-fakejs.js:329 msgid "Calendars" msgstr "Календари" -#: static/admin/translations-fakejs.js:325 +#: static/admin/translations-fakejs.js:330 msgid "Accounts" msgstr "Аккаунты" -#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:331 msgid "Tools" msgstr "Инструменты" -#: static/admin/translations-fakejs.js:327 +#: static/admin/translations-fakejs.js:332 msgid "Gallery" msgstr "Галерея" -#: static/admin/translations-fakejs.js:328 +#: static/admin/translations-fakejs.js:333 msgid "Reports" msgstr "Отчёты" -#: static/admin/translations-fakejs.js:329 +#: static/admin/translations-fakejs.js:334 msgid "Tokens" msgstr "Жетоны" -#: static/admin/translations-fakejs.js:330 +#: static/admin/translations-fakejs.js:335 msgid "Actor" msgstr "Актер" -#: static/admin/translations-fakejs.js:331 +#: static/admin/translations-fakejs.js:336 msgid "Tunnel" msgstr "Туннель" -#: static/admin/translations-fakejs.js:332 +#: static/admin/translations-fakejs.js:337 msgid "Configuration" msgstr "Конфигурация" -#: static/admin/translations-fakejs.js:333 +#: static/admin/translations-fakejs.js:338 msgid "Flush Cache" msgstr "Очистить кэш" -#: static/admin/translations-fakejs.js:334 -#: static/admin/translations-fakejs.js:366 -#: static/admin/translations-fakejs.js:463 -msgid "Information for" -msgstr "Информация для" - #: static/admin/translations-fakejs.js:339 -msgid "Edit group" -msgstr "Редактировать группу" - -#: static/admin/translations-fakejs.js:340 -msgid "New group" -msgstr "Новая группа" - -#: static/admin/translations-fakejs.js:341 -msgid "Meta group name" -msgstr "Название мета-группы" - -#: static/admin/translations-fakejs.js:346 -msgid "Service Pools" -msgstr "Пулы услуг" - -#: static/admin/translations-fakejs.js:347 -msgid "Match mode" -msgstr "Режим совпадений" - -#: static/admin/translations-fakejs.js:348 -msgid "Selected Groups" -msgstr "Выбранные группы" - -#: static/admin/translations-fakejs.js:351 -msgid "Edit user" -msgstr "Редактировать пользователя" - -#: static/admin/translations-fakejs.js:352 -msgid "New user" -msgstr "Новый пользователь" - -#: static/admin/translations-fakejs.js:353 -msgid "Real name" -msgstr "Настоящее имя" - -#: static/admin/translations-fakejs.js:359 -msgid "Role" -msgstr "Роль" - -#: static/admin/translations-fakejs.js:360 -msgid "Admin" -msgstr "Администратор" - -#: static/admin/translations-fakejs.js:361 -msgid "Staff member" -msgstr "Штатный сотрудник" - -#: static/admin/translations-fakejs.js:369 -msgid "Assigned Services" -msgstr "Назначенные сервисы" - -#: static/admin/translations-fakejs.js:375 msgid "Account usage" msgstr "Использование аккаунта" -#: static/admin/translations-fakejs.js:376 +#: static/admin/translations-fakejs.js:340 msgid "Edit rule" msgstr "Изменить правило" -#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:341 msgid "New rule" msgstr "Новое правило" -#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:344 msgid "Event" msgstr "Событие" -#: static/admin/translations-fakejs.js:381 +#: static/admin/translations-fakejs.js:345 msgid "Start time" msgstr "Время начала" -#: static/admin/translations-fakejs.js:382 +#: static/admin/translations-fakejs.js:346 msgid "Duration" msgstr "Продолжительность" -#: static/admin/translations-fakejs.js:383 +#: static/admin/translations-fakejs.js:347 msgid "Duration units" msgstr "Единицы длительности" -#: static/admin/translations-fakejs.js:384 +#: static/admin/translations-fakejs.js:348 msgid "Start date" msgstr "Дата начала" -#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:349 msgid "Repeat until date" msgstr "Повторять до даты" -#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:350 msgid "Frequency" msgstr "Частота" -#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:352 msgid "Repeat every" msgstr "Повторять каждый" -#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:356 msgid "Rules" msgstr "Правила" -#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:357 msgid "New member pool" msgstr "Новый пул участников" -#: static/admin/translations-fakejs.js:394 +#: static/admin/translations-fakejs.js:358 msgid "Edit member pool" msgstr "Изменить пул участников" -#: static/admin/translations-fakejs.js:395 -#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:359 +#: static/admin/translations-fakejs.js:384 msgid "Priority" msgstr "Приоритет" -#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:360 msgid "Service pool" msgstr "Пул услуг" -#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:361 msgid "Enabled?" msgstr "Включено?" -#: static/admin/translations-fakejs.js:404 -#: static/admin/translations-fakejs.js:460 +#: static/admin/translations-fakejs.js:368 +#: static/admin/translations-fakejs.js:424 msgid "Access calendars" msgstr "Доступ к календарям" -#: static/admin/translations-fakejs.js:406 +#: static/admin/translations-fakejs.js:370 msgid "Assign service to user manually" msgstr "Назначить услугу пользователю вручную" -#: static/admin/translations-fakejs.js:407 +#: static/admin/translations-fakejs.js:371 msgid "Service" msgstr "Услуга" -#: static/admin/translations-fakejs.js:412 +#: static/admin/translations-fakejs.js:376 msgid "Change owner of assigned service" msgstr "Смена владельца назначенной услуги" -#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:381 msgid "New access rule for" msgstr "Новое правило доступа для" -#: static/admin/translations-fakejs.js:418 +#: static/admin/translations-fakejs.js:382 msgid "Edit access rule for" msgstr "Изменить правило доступа для" -#: static/admin/translations-fakejs.js:419 +#: static/admin/translations-fakejs.js:383 msgid "Default fallback access for" msgstr "Резервный доступ по умолчанию для" -#: static/admin/translations-fakejs.js:421 -#: static/admin/translations-fakejs.js:442 +#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:406 msgid "Calendar" msgstr "Календарь" -#: static/admin/translations-fakejs.js:422 -#: static/admin/translations-fakejs.js:445 +#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:409 msgid "Action" msgstr "Действие" -#: static/admin/translations-fakejs.js:425 +#: static/admin/translations-fakejs.js:389 msgid "New group for" msgstr "Новая группа для" -#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:394 msgid "New transport for" msgstr "Новый транспорт для" -#: static/admin/translations-fakejs.js:431 -#: static/admin/translations-fakejs.js:446 +#: static/admin/translations-fakejs.js:395 +#: static/admin/translations-fakejs.js:410 msgid "Transport" msgstr "Транспорт" -#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:398 msgid "New publication for" msgstr "Новая публикация для" -#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:402 msgid "Changelog of" msgstr "Список изменений" -#: static/admin/translations-fakejs.js:440 +#: static/admin/translations-fakejs.js:404 msgid "Edit action for" msgstr "Изменить действие для" -#: static/admin/translations-fakejs.js:441 +#: static/admin/translations-fakejs.js:405 msgid "New action for" msgstr "Новое действие для" -#: static/admin/translations-fakejs.js:443 +#: static/admin/translations-fakejs.js:407 msgid "Events offset (minutes)" msgstr "Смещение событий (минуты)" -#: static/admin/translations-fakejs.js:444 +#: static/admin/translations-fakejs.js:408 msgid "At the beginning of the interval?" msgstr "В начале интервала?" -#: static/admin/translations-fakejs.js:451 +#: static/admin/translations-fakejs.js:415 msgid "Logs of" msgstr "Журналы" -#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:419 msgid "Cache" msgstr "Кэш" -#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:422 msgid "Publications" msgstr "Публикации" -#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:423 msgid "Scheduled actions" msgstr "Запланированные действия" -#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:425 msgid "Charts" msgstr "Диаграммы" -#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:427 +#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:493 +msgid "Information for" +msgstr "Информация для" + +#: static/admin/translations-fakejs.js:428 msgid "Services pools" msgstr "Сервисные пулы" -#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:433 msgid "Usage" msgstr "Использование" -#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:435 #: static/modern/translations-fakejs.js:46 msgid "Dashboard" msgstr "Панель управления" -#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:436 msgid "View authenticators" msgstr "Посмотреть аутентификаторы" -#: static/admin/translations-fakejs.js:473 -#: static/admin/translations-fakejs.js:474 -#: static/admin/translations-fakejs.js:475 +#: static/admin/translations-fakejs.js:437 +#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:439 msgid "View service pools" msgstr "Просмотр пулов услуг" -#: static/admin/translations-fakejs.js:476 +#: static/admin/translations-fakejs.js:440 msgid "Assigned services chart" msgstr "Таблица назначенных услуг" -#: static/admin/translations-fakejs.js:477 +#: static/admin/translations-fakejs.js:441 msgid "In use services chart" msgstr "Таблица используемых услуг" -#: static/admin/translations-fakejs.js:478 +#: static/admin/translations-fakejs.js:442 msgid "UDS Administration" msgstr "Администрирование UDS" -#: static/admin/translations-fakejs.js:479 +#: static/admin/translations-fakejs.js:443 msgid "You are accessing UDS Administration as staff member." msgstr "Вы входите в администрирование UDS в качестве сотрудника." -#: static/admin/translations-fakejs.js:480 +#: static/admin/translations-fakejs.js:444 msgid "This means that you have restricted access to elements." msgstr "Это означает, что у вас ограничен доступ к элементам." -#: static/admin/translations-fakejs.js:481 +#: static/admin/translations-fakejs.js:445 msgid "" "In order to increase your access privileges, please contact your local UDS " "administrator." msgstr "Чтобы увеличить свои права доступа, обратитесь к администратору UDS." -#: static/admin/translations-fakejs.js:482 +#: static/admin/translations-fakejs.js:446 msgid "Thank you." msgstr "Спасибо." -#: static/admin/translations-fakejs.js:483 +#: static/admin/translations-fakejs.js:447 msgid "UDS Configuration" msgstr "Конфигурация UDS" -#: static/admin/translations-fakejs.js:485 +#: static/admin/translations-fakejs.js:449 msgid "New image for" msgstr "Новое изображение для" -#: static/admin/translations-fakejs.js:486 +#: static/admin/translations-fakejs.js:450 msgid "Edit for" msgstr "Изменить для" -#: static/admin/translations-fakejs.js:487 +#: static/admin/translations-fakejs.js:451 msgid "Image name" msgstr "Название изображения" -#: static/admin/translations-fakejs.js:488 +#: static/admin/translations-fakejs.js:452 msgid "Image (click to change)" msgstr "Изображение (нажмите, чтобы изменить)" -#: static/admin/translations-fakejs.js:489 +#: static/admin/translations-fakejs.js:453 msgid "For optimal results, use " msgstr "Для получения оптимальных результатов используйте" -#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:454 msgid "The image will be resized on upload to" msgstr "Размер изображения будет изменен при загрузке в" +#: static/admin/translations-fakejs.js:466 +msgid "Edit group" +msgstr "Редактировать группу" + +#: static/admin/translations-fakejs.js:467 +msgid "New group" +msgstr "Новая группа" + +#: static/admin/translations-fakejs.js:468 +msgid "Meta group name" +msgstr "Название мета-группы" + +#: static/admin/translations-fakejs.js:473 +msgid "Service Pools" +msgstr "Пулы услуг" + +#: static/admin/translations-fakejs.js:474 +msgid "Match mode" +msgstr "Режим совпадений" + +#: static/admin/translations-fakejs.js:475 +msgid "Selected Groups" +msgstr "Выбранные группы" + +#: static/admin/translations-fakejs.js:478 +msgid "Edit user" +msgstr "Редактировать пользователя" + +#: static/admin/translations-fakejs.js:479 +msgid "New user" +msgstr "Новый пользователь" + +#: static/admin/translations-fakejs.js:480 +msgid "Real name" +msgstr "Настоящее имя" + +#: static/admin/translations-fakejs.js:486 +msgid "Role" +msgstr "Роль" + +#: static/admin/translations-fakejs.js:487 +msgid "Admin" +msgstr "Администратор" + +#: static/admin/translations-fakejs.js:488 +msgid "Staff member" +msgstr "Штатный сотрудник" + +#: static/admin/translations-fakejs.js:496 +msgid "Assigned Services" +msgstr "Назначенные сервисы" + #: static/modern/main-es5.js:1 msgid "Error communicating with your service. Please, retry again." msgstr "Ошибка связи с вашим сервисом. Пожалуйста, попробуйте еще раз." @@ -1596,7 +1607,8 @@ msgstr "" msgid "Launching service" msgstr "Запуск услуги" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 +#: static/modern/translations-fakejs.js:25 msgid "Errors found" msgstr "Ошибок найдено" @@ -1637,18 +1649,14 @@ msgstr "Услуга сброшена" msgid "Are you sure?" msgstr "Вы уверены?" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 msgid "Warning" msgstr "Предупреждение" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:25 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 msgid "Service is in maintenance and cannot be executed" msgstr "Сервис находится в обслуживании и не может быть выполнен" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 -msgid "Invalid error string" -msgstr "Неверная строка ошибки" - #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:26 msgid "We use cookies to track usage and preferences" msgstr "Мы используем cookies для отслеживания использования и предпочтений" @@ -1796,3 +1804,15 @@ msgstr "пароль" #: static/modern/translations-fakejs.js:73 msgid "Login" msgstr "Авторизоваться" + +#: static/modern/translations-fakejs.js:74 +msgid "Login Verification" +msgstr "Подтверждение входа" + +#: static/modern/translations-fakejs.js:75 +msgid "Remember Me" +msgstr "Запомните меня" + +#: static/modern/translations-fakejs.js:76 +msgid "Submit" +msgstr "Представлять на рассмотрение" diff --git a/server/src/uds/locale/zh_Hans/LC_MESSAGES/django.po b/server/src/uds/locale/zh_Hans/LC_MESSAGES/django.po index 34f45213..8f9ebf59 100644 --- a/server/src/uds/locale/zh_Hans/LC_MESSAGES/django.po +++ b/server/src/uds/locale/zh_Hans/LC_MESSAGES/django.po @@ -7,9 +7,9 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-14 11:34+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:14+0000\n" +"Last-Translator: FULL NAME \n" "Language-Team: Chinese (http://www.transifex.com/openuds/openuds/language/" "zh/)\n" "Language: zh\n" @@ -22,26 +22,26 @@ msgstr "" msgid "Accounts" msgstr "帐号" -#: REST/methods/accounts.py:63 REST/methods/authenticators.py:66 +#: REST/methods/accounts.py:63 REST/methods/authenticators.py:67 #: REST/methods/calendars.py:63 REST/methods/images.py:67 -#: REST/methods/meta_pools.py:81 REST/methods/networks.py:63 -#: REST/methods/osmanagers.py:55 REST/methods/providers.py:71 -#: REST/methods/proxies.py:60 REST/methods/reports.py:69 -#: REST/methods/services_pool_groups.py:71 REST/methods/services_pools.py:136 -#: REST/methods/transports.py:66 REST/methods/user_services.py:325 -#: REST/methods/user_services.py:400 REST/methods/users_groups.py:167 -#: REST/model.py:149 +#: REST/methods/meta_pools.py:81 REST/methods/mfas.py:56 +#: REST/methods/networks.py:63 REST/methods/osmanagers.py:55 +#: REST/methods/providers.py:71 REST/methods/proxies.py:60 +#: REST/methods/reports.py:69 REST/methods/services_pool_groups.py:71 +#: REST/methods/services_pools.py:136 REST/methods/transports.py:66 +#: REST/methods/user_services.py:325 REST/methods/user_services.py:400 +#: REST/methods/users_groups.py:167 REST/model.py:149 msgid "Name" msgstr "名称" -#: REST/methods/accounts.py:64 REST/methods/authenticators.py:68 +#: REST/methods/accounts.py:64 REST/methods/authenticators.py:69 #: REST/methods/calendarrules.py:110 REST/methods/calendars.py:69 -#: REST/methods/meta_pools.py:82 REST/methods/osmanagers.py:57 -#: REST/methods/providers.py:73 REST/methods/proxies.py:63 -#: REST/methods/services.py:241 REST/methods/services_pool_groups.py:72 -#: REST/methods/transports.py:68 REST/methods/user_services.py:402 -#: REST/methods/users_groups.py:168 REST/methods/users_groups.py:386 -#: REST/model.py:173 +#: REST/methods/meta_pools.py:82 REST/methods/mfas.py:58 +#: REST/methods/osmanagers.py:57 REST/methods/providers.py:73 +#: REST/methods/proxies.py:63 REST/methods/services.py:241 +#: REST/methods/services_pool_groups.py:72 REST/methods/transports.py:68 +#: REST/methods/user_services.py:402 REST/methods/users_groups.py:168 +#: REST/methods/users_groups.py:384 REST/model.py:173 msgid "Comments" msgstr "评论" @@ -49,12 +49,12 @@ msgstr "评论" msgid "Time mark" msgstr "时间标记" -#: REST/methods/accounts.py:66 REST/methods/authenticators.py:73 +#: REST/methods/accounts.py:66 REST/methods/authenticators.py:75 #: REST/methods/calendars.py:71 REST/methods/meta_pools.py:89 -#: REST/methods/networks.py:71 REST/methods/osmanagers.py:59 -#: REST/methods/providers.py:79 REST/methods/proxies.py:64 -#: REST/methods/services.py:250 REST/methods/services_pools.py:145 -#: REST/methods/transports.py:77 +#: REST/methods/mfas.py:59 REST/methods/networks.py:71 +#: REST/methods/osmanagers.py:59 REST/methods/providers.py:79 +#: REST/methods/proxies.py:64 REST/methods/services.py:250 +#: REST/methods/services_pools.py:145 REST/methods/transports.py:77 msgid "tags" msgstr "标签" @@ -109,7 +109,7 @@ msgstr "无效的密钥" msgid "Unmanaged host" msgstr "非托管主机" -#: REST/methods/actor.py:207 web/util/errors.py:85 +#: REST/methods/actor.py:207 web/util/errors.py:87 msgid "User service not found" msgstr "找不到用户服务" @@ -118,9 +118,9 @@ msgid "Actor tokens" msgstr "演员代币" #: REST/methods/actor_token.py:54 REST/methods/tunnel_token.py:52 -#: reports/auto/fields.py:58 reports/stats/pools_performance.py:218 -#: reports/stats/pools_performance.py:237 reports/stats/pools_usage_day.py:64 -#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:191 +#: reports/auto/fields.py:58 reports/stats/pools_performance.py:201 +#: reports/stats/pools_performance.py:220 reports/stats/pools_usage_day.py:64 +#: reports/stats/usage_by_pool.py:170 reports/stats/user_access.py:176 #: templates/uds/reports/stats/authenticator_stats.html:14 msgid "Date" msgstr "日期" @@ -159,64 +159,79 @@ msgstr "日志级别" msgid "Token isued by {} from {}" msgstr "{}从{}发来的令牌" -#: REST/methods/authenticators.py:63 +#: REST/methods/authenticators.py:64 msgid "Authenticators" msgstr "验证器" -#: REST/methods/authenticators.py:65 +#: REST/methods/authenticators.py:66 msgid "Id" msgstr "ID" -#: REST/methods/authenticators.py:67 REST/methods/osmanagers.py:56 -#: REST/methods/providers.py:72 REST/methods/services.py:242 -#: REST/methods/transports.py:67 REST/methods/user_services.py:401 +#: REST/methods/authenticators.py:68 REST/methods/mfas.py:57 +#: REST/methods/osmanagers.py:56 REST/methods/providers.py:72 +#: REST/methods/services.py:242 REST/methods/transports.py:67 +#: REST/methods/user_services.py:401 msgid "Type" msgstr "类型" -#: REST/methods/authenticators.py:69 REST/methods/meta_service_pools.py:88 +#: REST/methods/authenticators.py:70 REST/methods/meta_service_pools.py:88 #: REST/methods/op_calendars.py:83 REST/methods/services_pool_groups.py:62 #: REST/methods/transports.py:65 REST/methods/user_services.py:399 #: REST/model.py:185 models/meta_pool.py:73 msgid "Priority" msgstr "优先" -#: REST/methods/authenticators.py:70 REST/methods/authenticators.py:107 +#: REST/methods/authenticators.py:71 REST/methods/authenticators.py:110 #: REST/methods/meta_pools.py:86 REST/methods/meta_pools.py:193 #: REST/methods/services_pools.py:141 REST/methods/services_pools.py:386 msgid "Visible" msgstr "可见" -#: REST/methods/authenticators.py:71 REST/methods/meta_pools.py:88 +#: REST/methods/authenticators.py:72 REST/methods/meta_pools.py:88 #: REST/methods/transports.py:164 REST/model.py:201 msgid "Label" msgstr "标签" -#: REST/methods/authenticators.py:72 core/util/stats/counters.py:252 -#: reports/stats/pools_performance.py:223 -#: reports/stats/pools_performance.py:286 reports/stats/user_access.py:254 -#: reports/stats/user_access.py:297 services/RDS_enterprise/provider.py:74 +#: REST/methods/authenticators.py:73 core/util/stats/counters.py:252 +#: reports/stats/pools_performance.py:206 +#: reports/stats/pools_performance.py:269 reports/stats/user_access.py:239 +#: reports/stats/user_access.py:282 services/RDS_enterprise/provider.py:74 #: templates/uds/reports/stats/authenticator_stats.html:15 #: templates/uds/reports/stats/pools-performance.html:35 #: templates/uds/reports/stats/user-access.html:35 msgid "Users" msgstr "用户" -#: REST/methods/authenticators.py:109 REST/methods/services_pools.py:387 -msgid "If active, transport will be visible for users" -msgstr "如果处于活动状态,则用户可以看到传输" +#: REST/methods/authenticators.py:74 core/ui/user_interface.py:104 +msgid "MFA" +msgstr "外交部" -#: REST/methods/authenticators.py:113 REST/methods/services_pools.py:390 -#: REST/methods/services_pools.py:405 REST/methods/services_pools.py:422 -#: REST/methods/services_pools.py:433 core/ui/user_interface.py:103 -#: services/OVirt/service.py:188 -msgid "Display" -msgstr "显示" +#: REST/methods/authenticators.py:112 +msgid "If active, authenticator will be visible for users" +msgstr "如果激活,验证器将对用户可见" -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:125 core/services/service.py:143 +#: core/services/service.py:154 mfas/Email/mfa.py:46 mfas/SMS/mfa.py:112 +#: models/permissions.py:92 models/permissions.py:96 +#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 +#: services/Proxmox/service.py:208 services/Sample/service.py:100 +#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 +msgid "None" +msgstr "没有" + +#: REST/methods/authenticators.py:132 +msgid "MFA Provider" +msgstr "MFA 提供者" + +#: REST/methods/authenticators.py:134 +msgid "MFA provider to use for this authenticator" +msgstr "用于此身份验证器的 MFA 提供程序" + +#: REST/methods/authenticators.py:193 msgid "Too many results..." msgstr "结果太多......" -#: REST/methods/authenticators.py:167 +#: REST/methods/authenticators.py:193 msgid "Refine your query" msgstr "优化您的查询" @@ -372,7 +387,7 @@ msgstr "创立日期" #: REST/methods/meta_service_pools.py:195 REST/methods/services_usage.py:125 #: reports/stats/pool_users_summary.py:60 -#: reports/stats/pools_performance.py:284 reports/stats/pools_usage_day.py:171 +#: reports/stats/pools_performance.py:267 reports/stats/pools_usage_day.py:169 #: reports/stats/pools_usage_summary.py:156 reports/stats/usage_by_pool.py:59 #: reports/stats/usage_by_pool.py:173 services/Proxmox/service.py:111 #: templates/uds/reports/stats/pools-performance.html:33 @@ -431,6 +446,26 @@ msgstr "物品已被删除" msgid "Item is not removable" msgstr "物品不可拆卸" +#: REST/methods/mfas.py:54 +msgid "Multi Factor Authentication" +msgstr "多因素身份验证" + +#: REST/methods/mfas.py:80 +msgid "Device Caching" +msgstr "设备缓存" + +#: REST/methods/mfas.py:82 +msgid "Time in hours to cache device so MFA is not required again. User based." +msgstr "缓存设备的时间(以小时为单位),因此不再需要 MFA。基于用户。" + +#: REST/methods/mfas.py:94 +msgid "MFA code validity" +msgstr "MFA 代码有效性" + +#: REST/methods/mfas.py:96 +msgid "Time in minutes to allow MFA code to be used." +msgstr "允许使用 MFA 代码的时间(以分钟为单位)。" + #: REST/methods/networks.py:59 REST/methods/transports.py:114 msgid "Networks" msgstr "网络" @@ -517,7 +552,7 @@ msgstr "服务供应商" msgid "Status" msgstr "状态" -#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:171 +#: REST/methods/providers.py:75 reports/stats/pools_usage_day.py:169 #: templates/uds/reports/stats/authenticator_stats.html:16 #: templates/uds/reports/stats/pools-usage-day.html:29 msgid "Services" @@ -610,13 +645,13 @@ msgstr "如果处于活动状态,将检查任何SSL证书(不允许代理上 msgid "Available reports" msgstr "可用报告" -#: REST/methods/reports.py:67 REST/methods/users_groups.py:377 -#: REST/methods/users_groups.py:398 -#: auths/ActiveDirectory_enterprise/authenticator.py:143 +#: REST/methods/reports.py:67 REST/methods/users_groups.py:375 +#: REST/methods/users_groups.py:396 +#: auths/ActiveDirectory_enterprise/authenticator.py:153 #: auths/AzureAD_enterprise/azure_ad.py:95 #: auths/EDirectory_enterprise/authenticator.py:105 #: auths/Radius/authenticator.py:63 auths/RegexLdap/authenticator.py:191 -#: auths/SAML_enterprise/saml.py:121 auths/SimpleLDAP/authenticator.py:182 +#: auths/SAML_enterprise/saml.py:109 auths/SimpleLDAP/authenticator.py:182 #: models/calendar_action.py:147 models/calendar_action.py:154 msgid "Group" msgstr "组" @@ -679,13 +714,13 @@ msgstr "防火墙后面的服务代理" msgid "Advanced" msgstr "高级" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "With errors" msgstr "有错误" -#: REST/methods/services.py:365 REST/methods/users_groups.py:298 -#: REST/methods/users_groups.py:506 +#: REST/methods/services.py:365 REST/methods/users_groups.py:296 +#: REST/methods/users_groups.py:500 msgid "Ok" msgstr "好" @@ -761,6 +796,16 @@ msgid "" "services assigned but not in use." msgstr "如果启用该选项,UDS将不会尝试检测并删除已分配但未使用的用户服务。" +#: REST/methods/services_pools.py:387 +msgid "If active, transport will be visible for users" +msgstr "如果处于活动状态,则用户可以看到传输" + +#: REST/methods/services_pools.py:390 REST/methods/services_pools.py:405 +#: REST/methods/services_pools.py:422 REST/methods/services_pools.py:433 +#: core/ui/user_interface.py:103 services/OVirt/service.py:188 +msgid "Display" +msgstr "显示" + #: REST/methods/services_pools.py:439 msgid "Initial available services" msgstr "初始可用服务" @@ -954,7 +999,7 @@ msgstr "工作人员" #: auths/AzureAD_enterprise/azure_ad.py:94 #: auths/EDirectory_enterprise/authenticator.py:69 #: auths/Radius/authenticator.py:62 auths/RegexLdap/authenticator.py:91 -#: auths/SAML_enterprise/saml.py:118 reports/stats/pool_users_summary.py:177 +#: auths/SAML_enterprise/saml.py:106 reports/stats/pool_users_summary.py:177 #: reports/stats/usage_by_pool.py:171 #: templates/uds/reports/stats/pool-users-summary.html:14 #: templates/uds/reports/stats/usage-by-pool.html:15 @@ -971,10 +1016,10 @@ msgid "Current users" msgstr "目前的用户" #: REST/methods/users_groups.py:160 -#: auths/ActiveDirectory_enterprise/authenticator.py:141 +#: auths/ActiveDirectory_enterprise/authenticator.py:151 #: auths/EDirectory_enterprise/authenticator.py:103 #: auths/RegexLdap/authenticator.py:189 auths/SimpleLDAP/authenticator.py:180 -#: services/HyperV_enterprise/legacy/provider.py:103 +#: mfas/Email/mfa.py:54 services/HyperV_enterprise/legacy/provider.py:103 #: services/HyperV_enterprise/provider.py:86 #: services/NutanixPrism_enterprise/provider.py:54 #: services/Nutanix_enterprise/provider.py:54 services/OVirt/provider.py:121 @@ -988,7 +1033,7 @@ msgstr "目前的用户" #: transports/NoMachine_enterprise/nomachine_base.py:63 #: transports/PCoIP_enterprise/pcoip.py:61 transports/RDP/rdp_base.py:75 #: transports/SPICE/spice_base.py:69 transports/X2GO/x2go_base.py:70 -#: web/forms/LoginForm.py:43 +#: web/forms/LoginForm.py:44 msgid "Username" msgstr "用户名" @@ -996,7 +1041,7 @@ msgstr "用户名" msgid "Role" msgstr "角色" -#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:389 +#: REST/methods/users_groups.py:171 REST/methods/users_groups.py:387 msgid "state" msgstr "州" @@ -1008,32 +1053,32 @@ msgstr "上次访问" msgid "Username cannot be empty" msgstr "用户名不能为空" -#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:470 +#: REST/methods/users_groups.py:240 REST/methods/users_groups.py:468 msgid "User already exists (duplicate key error)" msgstr "用户已存在(重复键错误)" -#: REST/methods/users_groups.py:365 +#: REST/methods/users_groups.py:363 #, python-brace-format msgid "Groups of {0}" msgstr "{0}组" -#: REST/methods/users_groups.py:371 +#: REST/methods/users_groups.py:369 msgid "Current groups" msgstr "目前的团体" -#: REST/methods/users_groups.py:398 +#: REST/methods/users_groups.py:396 msgid "UDS Group" msgstr "UDS集团" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "Meta group" msgstr "元组" -#: REST/methods/users_groups.py:399 +#: REST/methods/users_groups.py:397 msgid "UDS Meta Group" msgstr "UDS Meta Group" -#: REST/methods/users_groups.py:430 +#: REST/methods/users_groups.py:428 msgid "Group name is required" msgstr "组名是必填项" @@ -1082,7 +1127,7 @@ msgstr "在{}中找不到的方法:{}" msgid "Item not found" msgstr "物品未找到" -#: REST/model.py:336 web/util/authentication.py:140 web/util/errors.py:79 +#: REST/model.py:336 web/util/authentication.py:143 web/util/errors.py:81 msgid "Access denied" msgstr "拒绝访问" @@ -1090,7 +1135,7 @@ msgstr "拒绝访问" msgid "Operation not supported" msgstr "操作不受支持" -#: admin/views/__init__.py:59 +#: admin/views/__init__.py:72 msgid "requested a template that do not exist" msgstr "请求一个不存在的模板" @@ -1119,11 +1164,11 @@ msgid "" msgstr "在所选基础上具有读取权限的用户名(使用USER@DOMAIN.DOM表单)" #: auths/ActiveDirectory_enterprise/authenticator.py:80 -#: auths/ActiveDirectory_enterprise/authenticator.py:145 +#: auths/ActiveDirectory_enterprise/authenticator.py:155 #: auths/EDirectory_enterprise/authenticator.py:77 #: auths/RegexLdap/authenticator.py:99 auths/RegexLdap/authenticator.py:193 #: auths/SimpleLDAP/authenticator.py:90 auths/SimpleLDAP/authenticator.py:184 -#: core/auths/authenticator.py:147 +#: core/auths/authenticator.py:147 mfas/Email/mfa.py:63 #: osmanagers/WindowsOsManager/windows_domain.py:85 #: osmanagers/WindowsOsManager/windows_random.py:76 #: services/HyperV_enterprise/legacy/provider.py:110 @@ -1139,8 +1184,8 @@ msgstr "在所选基础上具有读取权限的用户名(使用USER@DOMAIN.DOM #: transports/NICEDCV_enterprise/nicedcv_base.py:52 #: transports/NoMachine_enterprise/nomachine_base.py:69 #: transports/PCoIP_enterprise/pcoip.py:67 transports/RDP/rdp_base.py:81 -#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:45 -#: web/forms/LoginForm.py:46 +#: transports/SPICE/spice_base.py:75 web/forms/LoginForm.py:46 +#: web/forms/LoginForm.py:47 msgid "Password" msgstr "密码" @@ -1202,22 +1247,32 @@ msgid "" "reachable" msgstr "如果不为空,则在无法访问主主机服务器的情况下将使用此主机" -#: auths/ActiveDirectory_enterprise/authenticator.py:130 +#: auths/ActiveDirectory_enterprise/authenticator.py:133 +#: auths/SAML_enterprise/saml.py:207 +msgid "MFA attribute" +msgstr "MFA 属性" + +#: auths/ActiveDirectory_enterprise/authenticator.py:135 +#: auths/SAML_enterprise/saml.py:209 +msgid "Attribute from where to extract the MFA code" +msgstr "从哪里提取 MFA 代码的属性" + +#: auths/ActiveDirectory_enterprise/authenticator.py:140 msgid "Active Directory Authenticator" msgstr "Active Directory身份验证器" -#: auths/ActiveDirectory_enterprise/authenticator.py:132 +#: auths/ActiveDirectory_enterprise/authenticator.py:142 msgid "Authenticate against Active Directory" msgstr "针对Active Directory进行身份验证" -#: auths/ActiveDirectory_enterprise/authenticator.py:175 -#: auths/ActiveDirectory_enterprise/authenticator.py:602 +#: auths/ActiveDirectory_enterprise/authenticator.py:187 +#: auths/ActiveDirectory_enterprise/authenticator.py:648 msgid "Must specify the username in the form USERNAME@DOMAIN.DOM" msgstr "必须以USERNAME@DOMAIN.DOM格式指定用户名" -#: auths/ActiveDirectory_enterprise/authenticator.py:481 -#: auths/ActiveDirectory_enterprise/authenticator.py:532 -#: auths/AzureAD_enterprise/azure_ad.py:313 +#: auths/ActiveDirectory_enterprise/authenticator.py:521 +#: auths/ActiveDirectory_enterprise/authenticator.py:578 +#: auths/AzureAD_enterprise/azure_ad.py:315 #: auths/EDirectory_enterprise/authenticator.py:269 #: auths/EDirectory_enterprise/authenticator.py:300 #: auths/RegexLdap/authenticator.py:538 auths/RegexLdap/authenticator.py:569 @@ -1225,34 +1280,34 @@ msgstr "必须以USERNAME@DOMAIN.DOM格式指定用户名" msgid "Username not found" msgstr "找不到用户名" -#: auths/ActiveDirectory_enterprise/authenticator.py:514 +#: auths/ActiveDirectory_enterprise/authenticator.py:560 #: auths/SimpleLDAP/authenticator.py:468 msgid "Group not found" msgstr "未找到组" -#: auths/ActiveDirectory_enterprise/authenticator.py:559 -#: auths/ActiveDirectory_enterprise/authenticator.py:581 +#: auths/ActiveDirectory_enterprise/authenticator.py:605 +#: auths/ActiveDirectory_enterprise/authenticator.py:627 #: auths/EDirectory_enterprise/authenticator.py:322 #: auths/RegexLdap/authenticator.py:597 auths/SimpleLDAP/authenticator.py:503 #: auths/SimpleLDAP/authenticator.py:523 msgid "Too many results, be more specific" msgstr "结果太多,更具体" -#: auths/ActiveDirectory_enterprise/authenticator.py:613 +#: auths/ActiveDirectory_enterprise/authenticator.py:659 msgid "Domain seems to be incorrect, please check it" msgstr "域似乎不正确,请检查它" -#: auths/ActiveDirectory_enterprise/authenticator.py:632 +#: auths/ActiveDirectory_enterprise/authenticator.py:678 msgid "" "Server does not seem an Active Directory (it does not have user objects)" msgstr "服务器似乎不是Active Directory(它没有用户对象)" -#: auths/ActiveDirectory_enterprise/authenticator.py:655 +#: auths/ActiveDirectory_enterprise/authenticator.py:701 msgid "" "Server does not seem an Active Directory (it does not have group objects)" msgstr "服务器似乎不是Active Directory(它没有组对象)" -#: auths/ActiveDirectory_enterprise/authenticator.py:664 +#: auths/ActiveDirectory_enterprise/authenticator.py:710 #: auths/EDirectory_enterprise/authenticator.py:445 #: auths/RegexLdap/authenticator.py:707 auths/SimpleLDAP/authenticator.py:686 msgid "Connection params seem correct, test was succesfully executed" @@ -1342,21 +1397,21 @@ msgstr "微软注销" msgid "Office 365 logout" msgstr "Office 365 注销" -#: auths/AzureAD_enterprise/azure_ad.py:176 auths/SAML_enterprise/saml.py:217 +#: auths/AzureAD_enterprise/azure_ad.py:176 msgid "SAML Authenticator does not support white spaces on field NAME" msgstr "SAML身份验证器不支持字段NAME上的空格" -#: auths/AzureAD_enterprise/azure_ad.py:323 -#: auths/AzureAD_enterprise/azure_ad.py:349 -#: auths/AzureAD_enterprise/azure_ad.py:359 +#: auths/AzureAD_enterprise/azure_ad.py:325 +#: auths/AzureAD_enterprise/azure_ad.py:351 +#: auths/AzureAD_enterprise/azure_ad.py:361 msgid "Authenticator exception:" msgstr "验证者例外:" -#: auths/AzureAD_enterprise/azure_ad.py:394 core/util/ldaputil.py:49 +#: auths/AzureAD_enterprise/azure_ad.py:396 core/util/ldaputil.py:49 msgid "Connection error: " msgstr "连接错误:" -#: auths/AzureAD_enterprise/azure_ad.py:397 +#: auths/AzureAD_enterprise/azure_ad.py:399 msgid "Connection params seems correct, test was succesfully executed" msgstr "连接参数似乎是正确的,测试成功执行" @@ -1451,7 +1506,7 @@ msgstr "IP身份验证器" msgid "IP Range" msgstr "IP范围" -#: auths/IP/authenticator.py:119 auths/IP/authenticator.py:122 +#: auths/IP/authenticator.py:122 auths/IP/authenticator.py:125 msgid "All seems to be fine." msgstr "一切似乎都很好。" @@ -1634,126 +1689,166 @@ msgid "" "attribute)" msgstr "Ldap组id属性似乎不正确(该属性找不到任何组)" -#: auths/SAML_enterprise/saml.py:88 +#: auths/SAML_enterprise/saml.py:76 msgid "SAML Authenticator" msgstr "SAML身份验证器" -#: auths/SAML_enterprise/saml.py:100 +#: auths/SAML_enterprise/saml.py:88 msgid "SAML (v2.0) Authenticator" msgstr "SAML(v2.0)身份验证器" -#: auths/SAML_enterprise/saml.py:130 +#: auths/SAML_enterprise/saml.py:118 msgid "Private key" msgstr "私钥" -#: auths/SAML_enterprise/saml.py:133 +#: auths/SAML_enterprise/saml.py:121 msgid "" "Private key used for sign and encription, as generated in base 64 from " "openssl" msgstr "用于签名和登记的私钥,由openssl在base 64中生成" -#: auths/SAML_enterprise/saml.py:136 auths/SAML_enterprise/saml.py:147 +#: auths/SAML_enterprise/saml.py:124 auths/SAML_enterprise/saml.py:135 msgid "Certificates" msgstr "证书" -#: auths/SAML_enterprise/saml.py:141 transports/SPICE/spice_base.py:83 +#: auths/SAML_enterprise/saml.py:129 transports/SPICE/spice_base.py:83 msgid "Certificate" msgstr "证书" -#: auths/SAML_enterprise/saml.py:144 +#: auths/SAML_enterprise/saml.py:132 msgid "" "Public key used for sign and encription (public part of previous private " "key), as generated in base 64 from openssl" msgstr "用于签名和登记的公钥(前一个私钥的公共部分),由openssl在base 64中生成" -#: auths/SAML_enterprise/saml.py:152 +#: auths/SAML_enterprise/saml.py:140 msgid "IDP Metadata" msgstr "IDP元数据" -#: auths/SAML_enterprise/saml.py:155 +#: auths/SAML_enterprise/saml.py:143 msgid "" "You can enter here the URL or the IDP metadata or the metadata itself (xml)" msgstr "您可以在此处输入URL或IDP元数据或元数据本身(xml)" -#: auths/SAML_enterprise/saml.py:158 auths/SAML_enterprise/saml.py:167 +#: auths/SAML_enterprise/saml.py:146 auths/SAML_enterprise/saml.py:155 msgid "Metadata" msgstr "元数据" -#: auths/SAML_enterprise/saml.py:162 +#: auths/SAML_enterprise/saml.py:150 msgid "Entity ID" msgstr "实体ID" -#: auths/SAML_enterprise/saml.py:165 +#: auths/SAML_enterprise/saml.py:153 msgid "ID of the SP. If left blank, this will be autogenerated from server URL" msgstr "SP的ID。如果留空,则会从服务器URL自动生成" -#: auths/SAML_enterprise/saml.py:173 +#: auths/SAML_enterprise/saml.py:161 msgid "User name attrs" msgstr "用户名attrs" -#: auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:163 msgid "Fields from where to extract user name" msgstr "从哪里提取用户名的字段" -#: auths/SAML_enterprise/saml.py:177 auths/SAML_enterprise/saml.py:187 -#: auths/SAML_enterprise/saml.py:197 +#: auths/SAML_enterprise/saml.py:165 auths/SAML_enterprise/saml.py:175 +#: auths/SAML_enterprise/saml.py:185 msgid "Attributes" msgstr "属性" -#: auths/SAML_enterprise/saml.py:183 +#: auths/SAML_enterprise/saml.py:171 msgid "Group name attrs" msgstr "集团名称attrs" -#: auths/SAML_enterprise/saml.py:185 +#: auths/SAML_enterprise/saml.py:173 msgid "Fields from where to extract the groups" msgstr "从哪里提取组的字段" -#: auths/SAML_enterprise/saml.py:193 +#: auths/SAML_enterprise/saml.py:181 msgid "Real name attrs" msgstr "真名牌" -#: auths/SAML_enterprise/saml.py:195 +#: auths/SAML_enterprise/saml.py:183 msgid "Fields from where to extract the real name" msgstr "字段从哪里提取真实姓名" +#: auths/SAML_enterprise/saml.py:189 +msgid "Global logout" +msgstr "全局注销" + +#: auths/SAML_enterprise/saml.py:192 +msgid "If set, logout from UDS will trigger SAML logout" +msgstr "如果设置,从 UDS 注销将触发 SAML 注销" + +#: auths/SAML_enterprise/saml.py:197 +msgid "ADFS compatibility" +msgstr "ADFS 兼容性" + +#: auths/SAML_enterprise/saml.py:200 +msgid "If set, enable lowercase url encoding so ADFS can work correctly" +msgstr "如果设置,则启用小写 url 编码,以便 ADFS 可以正常工作" + #: auths/SAML_enterprise/saml.py:231 +msgid "This kind of Authenticator does not support white spaces on field NAME" +msgstr "这种 Authenticator 不支持字段 NAME 上的空格" + +#: auths/SAML_enterprise/saml.py:245 msgid "" "Server certificate should be a valid PEM (PEM certificates starts with -----" "BEGIN CERTIFICATE-----)" msgstr "" "服务器证书应该是有效的PEM(PEM证书以----- BEGIN CERTIFICATE -----开头)" -#: auths/SAML_enterprise/saml.py:239 +#: auths/SAML_enterprise/saml.py:253 msgid "Invalid server certificate. " msgstr "服务器证书无效。" -#: auths/SAML_enterprise/saml.py:250 +#: auths/SAML_enterprise/saml.py:264 msgid "" "Private key should be a valid PEM (PEM private keys starts with -----BEGIN " "RSA PRIVATE KEY-----" msgstr "私钥应该是有效的PEM(PEM私钥以----- BEGIN RSA私钥开头-----" -#: auths/SAML_enterprise/saml.py:258 +#: auths/SAML_enterprise/saml.py:272 msgid "Invalid private key. " msgstr "私钥无效。" -#: auths/SAML_enterprise/saml.py:277 +#: auths/SAML_enterprise/saml.py:291 #, python-brace-format msgid "Can't fetch url {0}: {1}" msgstr "无法获取网址{0}:{1}" -#: auths/SAML_enterprise/saml.py:288 +#: auths/SAML_enterprise/saml.py:302 msgid " (obtained from URL)" msgstr "(从URL获得)" -#: auths/SAML_enterprise/saml.py:290 +#: auths/SAML_enterprise/saml.py:304 msgid "XML does not seem valid for IDP Metadata " msgstr "XML似乎对IDP元数据无效" -#: auths/SAML_enterprise/saml.py:312 +#: auths/SAML_enterprise/saml.py:357 msgid "Can't access idp metadata" msgstr "无法访问idp元数据" +#: auths/SAML_enterprise/saml.py:424 +msgid "Error validating SP metadata: " +msgstr "验证 SP 元数据时出错:" + +#: auths/SAML_enterprise/saml.py:528 +msgid "Error processing SLO: " +msgstr "处理 SLO 时出错:" + +#: auths/SAML_enterprise/saml.py:558 +msgid "Error processing SAML response: " +msgstr "处理 SAML 响应时出错:" + +#: auths/SAML_enterprise/saml.py:571 +msgid "SAML response not authenticated" +msgstr "SAML 响应未通过身份验证" + +#: auths/SAML_enterprise/saml.py:598 +msgid "No attributes returned from IdP" +msgstr "没有从 IdP 返回的属性" + #: auths/Sample/SampleAuth.py:79 msgid "Sample Authenticator" msgstr "样本验证器" @@ -1842,11 +1937,11 @@ msgstr "Ldap组类或组ID attr可能是错误的(找不到具有这两个条 msgid "Can't locate any group with the membership attribute specified" msgstr "找不到指定了成员资格属性的任何组" -#: core/auths/auth.py:110 +#: core/auths/auth.py:111 msgid "System Administrator" msgstr "系统管理员" -#: core/auths/auth.py:150 +#: core/auths/auth.py:155 msgid "Forbidden" msgstr "被禁止" @@ -1879,32 +1974,40 @@ msgstr "无法取消发布不可用的出版物" msgid "Can't unpublish publications with services in process" msgstr "无法取消发布正在处理的服务的出版物" -#: core/managers/user_service.py:337 +#: core/managers/user_service.py:348 msgid "Can't remove a non active element" msgstr "无法删除非活动元素" -#: core/managers/user_service.py:363 +#: core/managers/user_service.py:374 msgid "Can't remove nor cancel {} cause its state don't allow it" msgstr "无法删除或取消{},导致其状态不允许" -#: core/managers/user_service.py:395 +#: core/managers/user_service.py:406 msgid "The requested service is restrained" msgstr "请求的服务被限制" -#: core/managers/user_service.py:761 web/util/errors.py:81 +#: core/managers/user_service.py:770 web/util/errors.py:83 msgid "" "Invalid service. The service is not available at this moment. Please, try " "later" msgstr "服务无效。目前无法使用该服务。请稍后再试" -#: core/managers/user_service.py:798 +#: core/managers/user_service.py:807 msgid "The requested transport {} is not valid for {}" msgstr "请求的传输{}对{}无效" -#: core/managers/user_service.py:1078 +#: core/managers/user_service.py:1084 msgid "The service is not accessible from this device" msgstr "无法从此设备访问该服务" +#: core/mfas/mfa.py:60 core/mfas/mfa.py:72 +msgid "Base MFA" +msgstr "基础 MFA" + +#: core/mfas/mfa.py:184 +msgid "Invalid MFA code" +msgstr "无效的 MFA 代码" + #: core/module.py:215 msgid "No connection checking method is implemented." msgstr "没有实现连接检查方法。" @@ -1949,14 +2052,6 @@ msgstr "印在{now:%Y,%b%d}的{now:%H:%M}" msgid "Base Service" msgstr "基础服务" -#: core/services/service.py:143 core/services/service.py:154 -#: models/permissions.py:92 models/permissions.py:96 -#: services/Azure_enterprise/helpers.py:116 services/OpenStack/helpers.py:82 -#: services/Proxmox/service.py:208 services/Sample/service.py:100 -#: services/Sample/service.py:106 services/TestService_enterprise/service.py:29 -msgid "None" -msgstr "没有" - #: core/transports/transport.py:52 msgid "Direct" msgstr "直接" @@ -2081,23 +2176,23 @@ msgstr "为用户提供服务" msgid "Cached" msgstr "缓存" -#: core/util/tools.py:152 +#: core/util/tools.py:155 msgid "{} days {:d}:{:02d}:{:02d}" msgstr "{}天{:d}:{:02d}:{:02d}" -#: core/util/tools.py:171 +#: core/util/tools.py:174 msgid "The basename is not a valid for a hostname" msgstr "基本名称对于主机名无效" -#: core/util/tools.py:176 +#: core/util/tools.py:179 msgid "The length of basename plus length must be greater than 0" msgstr "基本名称的长度加上长度必须大于0" -#: core/util/tools.py:181 +#: core/util/tools.py:184 msgid "The length of basename plus length must not be greater than 15" msgstr "basename加长度的长度不得大于15" -#: core/util/tools.py:186 +#: core/util/tools.py:189 msgid "The machine name can't be only numbers" msgstr "机器名称不能只是数字" @@ -2128,7 +2223,11 @@ msgstr "{}超过了主机名的最大长度。" msgid "{} is not a valid hostname" msgstr "{}不是有效的主机名" -#: core/util/validators.py:152 +#: core/util/validators.py:131 +msgid "{} is not a valid host:port pair" +msgstr "{} 不是有效的主机:端口对" + +#: core/util/validators.py:168 msgid "" "Invalid mac range. Mac range must be in format XX:XX:XX:XX:XX:XX-XX:XX:XX:XX:" "XX:XX" @@ -2136,66 +2235,344 @@ msgstr "" "无效的mac范围。 Mac系列必须采用XX:XX:XX:XX:XX:XX-XX:XX:XX:XX:XX:XX" "格式" -#: dispatchers/wyse_enterprise/views.py:118 +#: core/util/validators.py:182 +msgid "Email address is too long" +msgstr "电子邮件地址太长" + +#: core/util/validators.py:187 +msgid "Email address is not valid" +msgstr "电子邮件地址无效" + +#: dispatchers/wyse_enterprise/views.py:119 msgid "There are no authenticators available for login" msgstr "没有可用于登录的身份验证器" -#: dispatchers/wyse_enterprise/views.py:138 +#: dispatchers/wyse_enterprise/views.py:139 #, python-brace-format msgid "The authenticator {0} is not usable" msgstr "验证器{0}不可用" -#: dispatchers/wyse_enterprise/views.py:145 +#: dispatchers/wyse_enterprise/views.py:146 msgid "Invalid credentials" msgstr "无效证件" -#: dispatchers/wyse_enterprise/views.py:152 +#: dispatchers/wyse_enterprise/views.py:153 #, python-brace-format msgid "The domain {0} does not exists" msgstr "域{0}不存在" -#: dispatchers/wyse_enterprise/views.py:228 +#: dispatchers/wyse_enterprise/views.py:229 msgid "No services available" msgstr "没有可用的服务" -#: dispatchers/wyse_enterprise/views.py:244 -#: dispatchers/wyse_enterprise/views.py:344 +#: dispatchers/wyse_enterprise/views.py:245 +#: dispatchers/wyse_enterprise/views.py:345 msgid "Invalid session" msgstr "无效会话" -#: dispatchers/wyse_enterprise/views.py:248 -#: dispatchers/wyse_enterprise/views.py:348 +#: dispatchers/wyse_enterprise/views.py:249 +#: dispatchers/wyse_enterprise/views.py:349 msgid "Invalid authorization" msgstr "授权无效" -#: dispatchers/wyse_enterprise/views.py:259 -#: dispatchers/wyse_enterprise/views.py:354 +#: dispatchers/wyse_enterprise/views.py:260 +#: dispatchers/wyse_enterprise/views.py:355 msgid "Invalid request" msgstr "非法请求" -#: dispatchers/wyse_enterprise/views.py:262 -#: dispatchers/wyse_enterprise/views.py:357 +#: dispatchers/wyse_enterprise/views.py:263 +#: dispatchers/wyse_enterprise/views.py:358 msgid "Invalid credentials used" msgstr "使用的凭据无效" -#: dispatchers/wyse_enterprise/views.py:277 web/util/errors.py:78 +#: dispatchers/wyse_enterprise/views.py:278 web/util/errors.py:80 msgid "Service not found" msgstr "无法提供服务" -#: dispatchers/wyse_enterprise/views.py:281 +#: dispatchers/wyse_enterprise/views.py:282 msgid "Invalid machine uuid." msgstr "无效的计算机uuid。" -#: dispatchers/wyse_enterprise/views.py:295 web/util/errors.py:77 +#: dispatchers/wyse_enterprise/views.py:296 web/util/errors.py:79 msgid "Transport not found" msgstr "未找到运输" -#: dispatchers/wyse_enterprise/views.py:300 -#: dispatchers/wyse_enterprise/views.py:308 -#: dispatchers/wyse_enterprise/views.py:315 +#: dispatchers/wyse_enterprise/views.py:301 +#: dispatchers/wyse_enterprise/views.py:309 +#: dispatchers/wyse_enterprise/views.py:316 msgid "Service not ready at this moment. Please, try again in a while." msgstr "此时服务还没有准备好。请稍后再试一次。" +#: mfas/Email/mfa.py:22 +msgid "Email Multi Factor" +msgstr "电子邮件多因素" + +#: mfas/Email/mfa.py:24 +msgid "Email Multi Factor Authenticator" +msgstr "电子邮件多因素身份验证器" + +#: mfas/Email/mfa.py:29 +msgid "SMTP Host" +msgstr "SMTP 主机" + +#: mfas/Email/mfa.py:32 +msgid "" +"SMTP Server hostname or IP address. If you are using a non-standard port, " +"add it after a colon, for example: smtp.gmail.com:587" +msgstr "" +"SMTP 服务器主机名或 IP 地址。如果您使用的是非标准端口,请在冒号后添加,例如:" +"smtp.gmail.com:587" + +#: mfas/Email/mfa.py:37 mfas/Email/mfa.py:50 mfas/Email/mfa.py:59 +#: mfas/Email/mfa.py:68 +msgid "SMTP Server" +msgstr "SMTP 服务器" + +#: mfas/Email/mfa.py:41 transports/HTML5RDP/html5rdp.py:268 +#: transports/HTML5RDS_enterprise/html5rds.py:255 +msgid "Security" +msgstr "安全" + +#: mfas/Email/mfa.py:42 +msgid "Security protocol to use" +msgstr "使用的安全协议" + +#: mfas/Email/mfa.py:44 +msgid "TLS" +msgstr "TLS" + +#: mfas/Email/mfa.py:45 +msgid "SSL" +msgstr "SSL" + +#: mfas/Email/mfa.py:56 +msgid "User with access to SMTP server" +msgstr "有权访问 SMTP 服务器的用户" + +#: mfas/Email/mfa.py:65 +msgid "Password of the user with access to SMTP server" +msgstr "访问 SMTP 服务器的用户密码" + +#: mfas/Email/mfa.py:74 +msgid "Subject" +msgstr "主题" + +#: mfas/Email/mfa.py:76 +msgid "Subject of the email" +msgstr "电子邮件的主题" + +#: mfas/Email/mfa.py:78 mfas/Email/mfa.py:87 mfas/Email/mfa.py:95 +msgid "Config" +msgstr "配置" + +#: mfas/Email/mfa.py:83 +msgid "From Email" +msgstr "从电子邮件" + +#: mfas/Email/mfa.py:85 +msgid "Email address that will be used as sender" +msgstr "将用作发件人的电子邮件地址" + +#: mfas/Email/mfa.py:91 +msgid "Enable HTML" +msgstr "启用 HTML" + +#: mfas/Email/mfa.py:93 +msgid "Enable HTML in emails" +msgstr "在电子邮件中启用 HTML" + +#: mfas/Email/mfa.py:110 +msgid "Invalid SMTP hostname" +msgstr "SMTP 主机名无效" + +#: mfas/SMS/mfa.py:19 +msgid "SMS Thought HTTP" +msgstr "短信思想HTTP" + +#: mfas/SMS/mfa.py:21 +msgid "Simple SMS sending MFA using HTTP" +msgstr "使用 HTTP 发送 MFA 的简单 SMS" + +#: mfas/SMS/mfa.py:26 +msgid "URL pattern for SMS sending" +msgstr "SMS 发送的 URL 模式" + +#: mfas/SMS/mfa.py:29 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"URL pattern for SMS sending. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"用于 SMS 发送的 URL 模式。它可以包含以下变量: * {code} - 要发送的代码 * {phone/+phone} - 电话号码 * " +"{username} - 用户名 * {justUsername} - 不带 @.... 的用户名" + +#: mfas/SMS/mfa.py:37 mfas/SMS/mfa.py:43 mfas/SMS/mfa.py:56 mfas/SMS/mfa.py:75 +#: mfas/SMS/mfa.py:92 mfas/SMS/mfa.py:101 +msgid "HTTP Server" +msgstr "HTTP 服务器" + +#: mfas/SMS/mfa.py:41 +msgid "Ignore certificate errors" +msgstr "忽略证书错误" + +#: mfas/SMS/mfa.py:46 +msgid "" +"If checked, the server certificate will be ignored. This is useful if the " +"server uses a self-signed certificate." +msgstr "如果选中,服务器证书将被忽略。如果服务器使用自签名证书,这很有用。" + +#: mfas/SMS/mfa.py:52 +msgid "SMS sending method" +msgstr "短信发送方式" + +#: mfas/SMS/mfa.py:54 mfas/SMS/mfa.py:108 +msgid "Method for sending SMS" +msgstr "发送短信的方法" + +#: mfas/SMS/mfa.py:63 +msgid "Headers for SMS requests" +msgstr "SMS 请求的标头" + +#: mfas/SMS/mfa.py:66 +msgid "" +"Headers for SMS requests. It can contain the following variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @....\n" +"Headers are in the form of \"Header: Value\". (without the quotes)" +msgstr "" +"SMS 请求的标头。它可以包含以下变量: * {code} - 要发送的代码 * {phone/" +"+phone} - 电话号码 * {username} - 用户名 * {justUsername} - 不带 @.... 的用户" +"名“标题:值”的形式。 (不带引号)" + +#: mfas/SMS/mfa.py:81 +msgid "Parameters for SMS POST/PUT sending" +msgstr "SMS POST/PUT 发送参数" + +#: mfas/SMS/mfa.py:84 +#| msgid "" +#| "Parameters for SMS sending via POST/PUT. It can contain the following " +#| "variables:\n" +#| "* {code} - the code to send\n" +#| "* {phone/+phone} - the phone number\n" +#| "* {username} - the username\n" +#| "* {justUsername} - the username without @....\n" +msgid "" +"Parameters for SMS sending via POST/PUT. It can contain the following " +"variables:\n" +"* {code} - the code to send\n" +"* {phone/+phone} - the phone number\n" +"* {username} - the username\n" +"* {justUsername} - the username without @...." +msgstr "" +"通过 POST/PUT 发送 SMS 的参数。它可以包含以下变量: * {code} - 要发送的代码 * {phone/+phone} - 电话号码 *" +" {username} - 用户名 * {justUsername} - 不带 @...." + +#: mfas/SMS/mfa.py:96 +msgid "SMS encoding" +msgstr "短信编码" + +#: mfas/SMS/mfa.py:99 +msgid "Encoding for SMS" +msgstr "短信编码" + +#: mfas/SMS/mfa.py:106 +msgid "SMS authentication method" +msgstr "短信认证方式" + +#: mfas/SMS/mfa.py:110 mfas/SMS/mfa.py:124 mfas/SMS/mfa.py:133 +msgid "HTTP Authentication" +msgstr "HTTP 身份验证" + +#: mfas/SMS/mfa.py:113 +msgid "HTTP Basic Auth" +msgstr "HTTP 基本身份验证" + +#: mfas/SMS/mfa.py:114 +msgid "HTTP Digest Auth" +msgstr "HTTP摘要认证" + +#: mfas/SMS/mfa.py:120 +msgid "SMS authentication user or token" +msgstr "短信认证用户或令牌" + +#: mfas/SMS/mfa.py:122 +msgid "User or token for SMS authentication" +msgstr "用于 SMS 身份验证的用户或令牌" + +#: mfas/SMS/mfa.py:129 +msgid "SMS authentication password" +msgstr "短信认证密码" + +#: mfas/SMS/mfa.py:131 +msgid "Password for SMS authentication" +msgstr "短信验证密码" + +#: mfas/SMS/mfa.py:138 +msgid "SMS response OK regex" +msgstr "短信回复 OK 正则表达式" + +#: mfas/SMS/mfa.py:141 +msgid "" +"Regex for SMS response OK. If emty, the response is considered OK if status " +"code is 200." +msgstr "" +"SMS 响应的正则表达式 OK。如果为 emty,则如果状态码为 200,则认为响应正常。" + +#: mfas/SMS/mfa.py:144 mfas/SMS/mfa.py:153 +msgid "HTTP Response" +msgstr "HTTP 响应" + +#: mfas/SMS/mfa.py:148 +msgid "SMS response error action" +msgstr "短信响应错误动作" + +#: mfas/SMS/mfa.py:151 +msgid "Action for SMS response error" +msgstr "SMS 响应错误的操作" + +#: mfas/SMS/mfa.py:155 +msgid "Allow user log in without MFA" +msgstr "允许用户在没有 MFA 的情况下登录" + +#: mfas/SMS/mfa.py:156 +msgid "Deny user log in" +msgstr "拒绝用户登录" + +#: mfas/SMS/mfa.py:199 +msgid "SMS sending failed" +msgstr "短信发送失败" + +#: mfas/SMS/mfa.py:263 web/views/modern.py:275 +msgid "MFA Code" +msgstr "MFA 代码" + +#: mfas/Sample/mfa.py:16 +msgid "Sample Multi Factor" +msgstr "样本多因素" + +#: mfas/Sample/mfa.py:18 +msgid "Sample Multi Factor Authenticator" +msgstr "示例多因素身份验证器" + +#: mfas/Sample/mfa.py:22 +msgid "Sample useless field" +msgstr "示例无用字段" + +#: mfas/Sample/mfa.py:25 +msgid "This is a useless field, for sample and testing pourposes" +msgstr "这是一个无用的领域,用于样品和测试用途" + #: models/calendar_action.py:63 msgid "Publish" msgstr "发布" @@ -2729,7 +3106,7 @@ msgid "Service pool for report" msgstr "报告服务池" #: reports/auto/fields.py:104 reports/lists/users.py:61 -#: web/forms/LoginForm.py:50 +#: web/forms/LoginForm.py:51 msgid "Authenticator" msgstr "认证" @@ -2781,24 +3158,24 @@ msgstr "用户身份" msgid "Real Name" msgstr "真正的名字" -#: reports/stats/auth_stats.py:58 +#: reports/stats/auth_stats.py:59 msgid "Statistics by authenticator" msgstr "认证者统计" -#: reports/stats/auth_stats.py:60 +#: reports/stats/auth_stats.py:61 msgid "" "Generates a report with the statistics of an authenticator for a desired " "period" msgstr "生成所需时间段内的身份验证器统计信息的报告" -#: reports/stats/auth_stats.py:136 reports/stats/usage_by_pool.py:146 +#: reports/stats/auth_stats.py:123 reports/stats/usage_by_pool.py:146 #: templates/uds/reports/stats/authenticator_stats.html:4 #: templates/uds/reports/stats/usage-by-pool.html:4 #: templates/uds/reports/stats/usage-by-pool.html:6 msgid "Users usage list" msgstr "用户使用情况列表" -#: reports/stats/auth_stats.py:137 reports/stats/usage_by_pool.py:147 +#: reports/stats/auth_stats.py:124 reports/stats/usage_by_pool.py:147 msgid "UDS Report of users usage" msgstr "UDS用户使用情况报告" @@ -2871,30 +3248,26 @@ msgstr "间隔数" msgid "Number of sampling points used in charts" msgstr "图表中使用的采样点数" -#: reports/stats/pools_performance.py:128 -msgid "Select at least a service pool for the report" -msgstr "至少为报告选择一个服务池" - -#: reports/stats/pools_performance.py:211 +#: reports/stats/pools_performance.py:194 msgid "Distinct Users" msgstr "不同的用户" -#: reports/stats/pools_performance.py:230 -#: reports/stats/pools_performance.py:242 -#: reports/stats/pools_performance.py:287 +#: reports/stats/pools_performance.py:213 +#: reports/stats/pools_performance.py:225 +#: reports/stats/pools_performance.py:270 #: templates/uds/reports/stats/pools-performance.html:36 msgid "Accesses" msgstr "访问" -#: reports/stats/pools_performance.py:258 +#: reports/stats/pools_performance.py:241 msgid "UDS Pools Performance Report" msgstr "UDS池绩效报告" -#: reports/stats/pools_performance.py:259 +#: reports/stats/pools_performance.py:242 msgid "Pools Performance" msgstr "池性能" -#: reports/stats/pools_performance.py:285 reports/stats/user_access.py:297 +#: reports/stats/pools_performance.py:268 reports/stats/user_access.py:282 #: templates/uds/reports/stats/pools-performance.html:34 #: templates/uds/reports/stats/user-access.html:34 msgid "Date range" @@ -2908,21 +3281,21 @@ msgstr "游泳池使用一天" msgid "Pools usage counters for an specific day" msgstr "特定日期的池使用计数器" -#: reports/stats/pools_usage_day.py:128 +#: reports/stats/pools_usage_day.py:126 msgid "Services by hour" msgstr "按小时服务" -#: reports/stats/pools_usage_day.py:133 reports/stats/pools_usage_day.py:171 -#: reports/stats/user_access.py:228 reports/stats/user_access.py:240 +#: reports/stats/pools_usage_day.py:131 reports/stats/pools_usage_day.py:169 +#: reports/stats/user_access.py:213 reports/stats/user_access.py:225 #: templates/uds/reports/stats/pools-usage-day.html:28 msgid "Hour" msgstr "小时" -#: reports/stats/pools_usage_day.py:152 +#: reports/stats/pools_usage_day.py:150 msgid "Services usage report for a day" msgstr "一天的服务使用情况报告" -#: reports/stats/pools_usage_day.py:153 +#: reports/stats/pools_usage_day.py:151 msgid "Service usage report" msgstr "服务使用报告" @@ -2988,63 +3361,63 @@ msgstr "所有池" msgid "Seconds" msgstr "秒" -#: reports/stats/user_access.py:59 reports/stats/user_access.py:281 +#: reports/stats/user_access.py:59 reports/stats/user_access.py:266 msgid "Users access report by date" msgstr "用户按日期访问报告" -#: reports/stats/user_access.py:60 reports/stats/user_access.py:282 +#: reports/stats/user_access.py:60 reports/stats/user_access.py:267 msgid "Report of user access to platform by date" msgstr "用户按日期访问平台的报告" -#: reports/stats/user_access.py:186 +#: reports/stats/user_access.py:171 msgid "Users Access (global)" msgstr "用户访问权限(全局)" -#: reports/stats/user_access.py:206 +#: reports/stats/user_access.py:191 msgid "Users Access (by week)" msgstr "用户访问(按周)" -#: reports/stats/user_access.py:209 reports/stats/user_access.py:245 +#: reports/stats/user_access.py:194 reports/stats/user_access.py:230 msgid "Monday" msgstr "星期一" -#: reports/stats/user_access.py:210 reports/stats/user_access.py:246 +#: reports/stats/user_access.py:195 reports/stats/user_access.py:231 msgid "Tuesday" msgstr "星期二" -#: reports/stats/user_access.py:211 reports/stats/user_access.py:247 +#: reports/stats/user_access.py:196 reports/stats/user_access.py:232 msgid "Wednesday" msgstr "星期三" -#: reports/stats/user_access.py:212 reports/stats/user_access.py:248 +#: reports/stats/user_access.py:197 reports/stats/user_access.py:233 msgid "Thursday" msgstr "星期四" -#: reports/stats/user_access.py:213 reports/stats/user_access.py:249 +#: reports/stats/user_access.py:198 reports/stats/user_access.py:234 msgid "Friday" msgstr "星期五" -#: reports/stats/user_access.py:214 reports/stats/user_access.py:250 +#: reports/stats/user_access.py:199 reports/stats/user_access.py:235 msgid "Saturday" msgstr "星期六" -#: reports/stats/user_access.py:215 reports/stats/user_access.py:251 +#: reports/stats/user_access.py:200 reports/stats/user_access.py:236 msgid "Sunday" msgstr "星期日" -#: reports/stats/user_access.py:217 reports/stats/user_access.py:243 +#: reports/stats/user_access.py:202 reports/stats/user_access.py:228 msgid "Day of week" msgstr "星期几" -#: reports/stats/user_access.py:226 reports/stats/user_access.py:238 +#: reports/stats/user_access.py:211 reports/stats/user_access.py:223 msgid "Users Access (by hour)" msgstr "用户访问(按小时)" -#: reports/stats/user_access.py:267 +#: reports/stats/user_access.py:252 msgid "Users access to UDS" msgstr "用户可以访问UDS" -#: reports/stats/user_access.py:268 +#: reports/stats/user_access.py:253 msgid "UDS Report for users access" msgstr "UDS报告供用户访问" @@ -4241,73 +4614,73 @@ msgstr "静态IP机器提供商" msgid "Provides connection to machines by IP" msgstr "通过IP提供与机器的连接" -#: services/PhysicalMachines/service_multi.py:64 +#: services/PhysicalMachines/service_multi.py:62 #: services/Vmware_enterprise/service_fixed.py:55 msgid "Service Token" msgstr "服务令牌" -#: services/PhysicalMachines/service_multi.py:67 +#: services/PhysicalMachines/service_multi.py:65 #: services/Vmware_enterprise/service_fixed.py:57 msgid "" "Service token that will be used by actors to communicate with service. Leave " "empty for persistent assignation." msgstr "参与者将用于与服务进行通信的服务令牌。留空以进行永久分配。" -#: services/PhysicalMachines/service_multi.py:75 +#: services/PhysicalMachines/service_multi.py:73 #: services/RDS_enterprise/provider.py:51 msgid "List of servers" msgstr "服务器列表" -#: services/PhysicalMachines/service_multi.py:76 +#: services/PhysicalMachines/service_multi.py:74 msgid "List of servers available for this service" msgstr "可用于此服务的服务器列表" -#: services/PhysicalMachines/service_multi.py:81 +#: services/PhysicalMachines/service_multi.py:79 msgid "Check Port" msgstr "检查端口" -#: services/PhysicalMachines/service_multi.py:85 +#: services/PhysicalMachines/service_multi.py:83 msgid "" "If non zero, only hosts responding to connection on that port will be served." msgstr "如果非零,则仅响应该端口上的连接的主机。" -#: services/PhysicalMachines/service_multi.py:92 +#: services/PhysicalMachines/service_multi.py:90 msgid "Skip time" msgstr "跳过时间" -#: services/PhysicalMachines/service_multi.py:95 +#: services/PhysicalMachines/service_multi.py:93 msgid "If a host fails to check, skip it for this time (in minutes)." msgstr "如果主机无法检查,请跳过此时间(以分钟为单位)。" -#: services/PhysicalMachines/service_multi.py:103 +#: services/PhysicalMachines/service_multi.py:101 msgid "Max session per machine" msgstr "每台机器的最大会话数" -#: services/PhysicalMachines/service_multi.py:107 +#: services/PhysicalMachines/service_multi.py:105 msgid "" "Maximum session duration before UDS thinks this machine got locked and " "releases it (hours). 0 means \"never\"." msgstr "" "UDS 认为这台机器被锁定并释放它之前的最大会话持续时间(小时)。 0 表示“从不”。" -#: services/PhysicalMachines/service_multi.py:114 +#: services/PhysicalMachines/service_multi.py:112 msgid "Lock machine by external access" msgstr "通过外部访问锁定机器" -#: services/PhysicalMachines/service_multi.py:115 +#: services/PhysicalMachines/service_multi.py:113 msgid "" "If checked, UDS will lock the machine if it is accesed from outside UDS." msgstr "如果选中,如果从 UDS 外部访问,UDS 将锁定机器。" -#: services/PhysicalMachines/service_multi.py:122 +#: services/PhysicalMachines/service_multi.py:120 msgid "Static Multiple IP" msgstr "静态多IP" -#: services/PhysicalMachines/service_multi.py:124 +#: services/PhysicalMachines/service_multi.py:122 msgid "This service provides access to POWERED-ON Machines by IP" msgstr "此服务可通过IP访问POWERED-ON机器" -#: services/PhysicalMachines/service_multi.py:158 +#: services/PhysicalMachines/service_multi.py:156 msgid "Invalid value detected on servers list: \"{}\"" msgstr "在服务器列表中检测到无效值:“{}”" @@ -5161,47 +5534,47 @@ msgstr "阴影" msgid "Shadow memory multiplier (use with care)" msgstr "影子内存倍增器(谨慎使用)" -#: temp_for_locales.py:96 +#: temp_for_locales.py:99 msgid "Spanish" msgstr "西班牙语" -#: temp_for_locales.py:97 +#: temp_for_locales.py:100 msgid "English" msgstr "英语" -#: temp_for_locales.py:98 +#: temp_for_locales.py:101 msgid "French" msgstr "法国" -#: temp_for_locales.py:99 +#: temp_for_locales.py:102 msgid "German" msgstr "德语" -#: temp_for_locales.py:100 +#: temp_for_locales.py:103 msgid "Portuguese" msgstr "葡萄牙语" -#: temp_for_locales.py:101 +#: temp_for_locales.py:104 msgid "Italian" msgstr "意大利" -#: temp_for_locales.py:102 +#: temp_for_locales.py:105 msgid "Basque" msgstr "巴斯克" -#: temp_for_locales.py:103 +#: temp_for_locales.py:106 msgid "Arabic" msgstr "阿拉伯" -#: temp_for_locales.py:104 +#: temp_for_locales.py:107 msgid "Russian" msgstr "俄语" -#: temp_for_locales.py:105 +#: temp_for_locales.py:108 msgid "Catalan" msgstr "加泰罗尼亚" -#: temp_for_locales.py:106 +#: temp_for_locales.py:109 msgid "Chinese" msgstr "中文" @@ -5400,7 +5773,7 @@ msgstr "显示壁纸" #: transports/HTML5RDP/html5rdp.py:134 #: transports/HTML5RDS_enterprise/html5rds.py:123 -#: transports/RDP/rdp_base.py:222 +#: transports/RDP/rdp_base.py:241 msgid "" "If checked, the wallpaper and themes will be shown on machine (better user " "experience, more bandwidth)" @@ -5408,19 +5781,19 @@ msgstr "如果选中,壁纸和主题将显示在机器上(更好的用户体 #: transports/HTML5RDP/html5rdp.py:139 #: transports/HTML5RDS_enterprise/html5rds.py:128 -#: transports/RDP/rdp_base.py:235 +#: transports/RDP/rdp_base.py:254 msgid "Allow Desk.Comp." msgstr "允许Desk.Comp。" #: transports/HTML5RDP/html5rdp.py:141 #: transports/HTML5RDS_enterprise/html5rds.py:130 -#: transports/RDP/rdp_base.py:237 +#: transports/RDP/rdp_base.py:256 msgid "If checked, desktop composition will be allowed" msgstr "如果选中,则允许桌面合成" #: transports/HTML5RDP/html5rdp.py:145 #: transports/HTML5RDS_enterprise/html5rds.py:134 -#: transports/RDP/rdp_base.py:241 transports/RDS_enterprise/rds_base.py:150 +#: transports/RDP/rdp_base.py:260 transports/RDS_enterprise/rds_base.py:150 msgid "Font Smoothing" msgstr "字体平滑" @@ -5673,11 +6046,6 @@ msgstr "强制在新窗口中打开每个连接。" msgid "Override UDS window and replace it with the connection." msgstr "覆盖UDS窗口并将其替换为连接。" -#: transports/HTML5RDP/html5rdp.py:268 -#: transports/HTML5RDS_enterprise/html5rds.py:255 -msgid "Security" -msgstr "安全" - #: transports/HTML5RDP/html5rdp.py:269 #: transports/HTML5RDS_enterprise/html5rds.py:256 msgid "Connection security mode for Guacamole RDP connection" @@ -5711,11 +6079,11 @@ msgstr "NLA 扩展(网络层身份验证。需要有效的用户名和密码 msgid "TLS (Transport Security Layer encryption)" msgstr "TLS(传输安全层加密)" -#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:173 +#: transports/HTML5RDP/html5rdp.py:300 transports/RDP/rdp_base.py:192 msgid "RDP Port" msgstr "RDP 端口" -#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:174 +#: transports/HTML5RDP/html5rdp.py:301 transports/RDP/rdp_base.py:193 msgid "Use this port as RDP port. Defaults to 3389." msgstr "将此端口用作 RDP 端口。默认为 3389。" @@ -5733,13 +6101,13 @@ msgstr "" "Glyptodon Enterprise 隧道的自定义路径。 (仅对 Glyptodon Enterprise Tunnel 有" "效)" -#: transports/HTML5RDP/html5rdp.py:327 +#: transports/HTML5RDP/html5rdp.py:326 #: transports/HTML5RDS_enterprise/html5rds.py:296 #: transports/HTML5VNC/html5vnc.py:187 msgid "The server must be http or https" msgstr "服务器必须是http或https" -#: transports/HTML5RDP/html5rdp.py:332 +#: transports/HTML5RDP/html5rdp.py:331 #: transports/HTML5RDS_enterprise/html5rds.py:301 msgid "" "Empty credentials (on Credentials tab) is only allowed with Security level " @@ -5780,7 +6148,7 @@ msgstr "VNC服务器端口" msgid "Port of the VNC server." msgstr "VNC服务器的端口。" -#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:205 +#: transports/HTML5VNC/html5vnc.py:111 transports/RDP/rdp_base.py:224 #: transports/RDS_enterprise/rds_base.py:136 msgid "Color depth" msgstr "颜色深度" @@ -5832,12 +6200,12 @@ msgid "If checked, the connection will be opened in full screen mode" msgstr "如果选中,将以全屏模式打开连接" #: transports/NICEDCV_enterprise/nicedcv_base.py:66 -#: transports/RDP/rdp_base.py:227 +#: transports/RDP/rdp_base.py:246 msgid "Multiple monitors" msgstr "多个显示器" #: transports/NICEDCV_enterprise/nicedcv_base.py:69 -#: transports/RDP/rdp_base.py:230 +#: transports/RDP/rdp_base.py:249 msgid "" "If checked, all client monitors will be used for displaying (only works on " "windows clients)" @@ -5889,7 +6257,7 @@ msgstr "如果启用,将验证隧道服务器的证书(推荐)。" #: transports/NICEDCV_enterprise/nicedcvtunnel.py:91 #: transports/NoMachine_enterprise/nomachine_tunneltransport.py:114 -#: transports/RDP/rdptunnel.py:135 transports/RDS_enterprise/rdstunnel.py:126 +#: transports/RDP/rdptunnel.py:136 transports/RDS_enterprise/rdstunnel.py:126 #: transports/SPICE/spice_tunnel.py:107 transports/X2GO/x2go_tunnel.py:116 msgid "Must use HOST:PORT in Tunnel Server Field" msgstr "必须在隧道服务器字段中使用HOST:PORT" @@ -6021,81 +6389,89 @@ msgstr "启用网络摄像头" msgid "If checked, webcam will be redirected (ONLY Windows)." msgstr "如果选中,网络摄像头将被重定向(仅Windows)。" -#: transports/RDP/rdp_base.py:164 transports/RDS_enterprise/rds_base.py:128 +#: transports/RDP/rdp_base.py:164 +msgid "USB redirection" +msgstr "USB 重定向" + +#: transports/RDP/rdp_base.py:166 +msgid "USB redirection policy" +msgstr "USB 重定向策略" + +#: transports/RDP/rdp_base.py:183 transports/RDS_enterprise/rds_base.py:128 msgid "Credssp Support" msgstr "Credssp支持" -#: transports/RDP/rdp_base.py:166 transports/RDS_enterprise/rds_base.py:130 +#: transports/RDP/rdp_base.py:185 transports/RDS_enterprise/rds_base.py:130 msgid "If checked, will enable Credentials Provider Support)" msgstr "如果选中,将启用凭据提供程序支持)" -#: transports/RDP/rdp_base.py:181 +#: transports/RDP/rdp_base.py:200 msgid "Screen Size" msgstr "屏幕尺寸" -#: transports/RDP/rdp_base.py:183 +#: transports/RDP/rdp_base.py:202 msgid "Screen size for this transport" msgstr "此运输的屏幕尺寸" -#: transports/RDP/rdp_base.py:207 transports/RDS_enterprise/rds_base.py:138 +#: transports/RDP/rdp_base.py:226 transports/RDS_enterprise/rds_base.py:138 msgid "Color depth for this connection" msgstr "此连接的颜色深度" -#: transports/RDP/rdp_base.py:219 +#: transports/RDP/rdp_base.py:238 msgid "Wallpaper/theme" msgstr "壁纸/主题" -#: transports/RDP/rdp_base.py:244 +#: transports/RDP/rdp_base.py:263 msgid "If checked, fonts smoothing will be allowed" msgstr "如果选中,则允许字体平滑" -#: transports/RDP/rdp_base.py:248 +#: transports/RDP/rdp_base.py:267 msgid "Connection Bar" msgstr "连接栏" -#: transports/RDP/rdp_base.py:250 +#: transports/RDP/rdp_base.py:269 msgid "If checked, connection bar will be shown (only on Windows clients)" msgstr "如果选中,将显示连接栏(仅在Windows客户端上)" -#: transports/RDP/rdp_base.py:256 transports/RDS_enterprise/rds_base.py:181 +#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:181 msgid "Multimedia sync" msgstr "多媒体同步" -#: transports/RDP/rdp_base.py:259 transports/RDS_enterprise/rds_base.py:184 +#: transports/RDP/rdp_base.py:278 transports/RDS_enterprise/rds_base.py:184 msgid "If checked. Linux client will use multimedia parameter for xfreerdp" msgstr "如果选中。 Linux客户端将使用xfreerdp的多媒体参数" -#: transports/RDP/rdp_base.py:264 transports/RDS_enterprise/rds_base.py:189 +#: transports/RDP/rdp_base.py:283 transports/RDS_enterprise/rds_base.py:189 msgid "Use Alsa" msgstr "使用Alsa" -#: transports/RDP/rdp_base.py:267 transports/RDS_enterprise/rds_base.py:192 +#: transports/RDP/rdp_base.py:286 transports/RDS_enterprise/rds_base.py:192 msgid "" "If checked, Linux client will try to use ALSA, otherwise Pulse will be used" msgstr "如果选中,Linux客户端将尝试使用ALSA,否则将使用Pulse" -#: transports/RDP/rdp_base.py:272 transports/RDS_enterprise/rds_base.py:197 +#: transports/RDP/rdp_base.py:291 transports/RDS_enterprise/rds_base.py:197 msgid "Printer string" msgstr "打印机字符串" -#: transports/RDP/rdp_base.py:275 transports/RDS_enterprise/rds_base.py:200 +#: transports/RDP/rdp_base.py:294 transports/RDS_enterprise/rds_base.py:200 msgid "If printer is checked, the printer string used with xfreerdp client" msgstr "如果选中打印机,则打印机字符串与xfreerdp客户端一起使用" -#: transports/RDP/rdp_base.py:281 transports/RDS_enterprise/rds_base.py:206 +#: transports/RDP/rdp_base.py:300 transports/RDS_enterprise/rds_base.py:206 msgid "Smartcard string" msgstr "智能卡字符串" -#: transports/RDP/rdp_base.py:284 transports/RDS_enterprise/rds_base.py:209 +#: transports/RDP/rdp_base.py:303 transports/RDS_enterprise/rds_base.py:209 msgid "If smartcard is checked, the smartcard string used with xfreerdp client" msgstr "如果选中智能卡,则智能卡字符串与xfreerdp客户端一起使用" -#: transports/RDP/rdp_base.py:290 transports/RDP/rdp_base.py:310 +#: transports/RDP/rdp_base.py:309 transports/RDP/rdp_base.py:329 #: transports/RDS_enterprise/rds_base.py:215 msgid "Custom parameters" msgstr "自定义参数" -#: transports/RDP/rdp_base.py:293 transports/RDS_enterprise/rds_base.py:218 +#: transports/RDP/rdp_base.py:312 transports/RDS_enterprise/rds_base.py:218 msgid "" "If not empty, extra parameter to include for Linux Client (for example /usb:" "id,dev:054c:0268, or aything compatible with your xfreerdp client)" @@ -6103,17 +6479,17 @@ msgstr "" "如果不为空,则为Linux客户端包含额外参数(例如/usb:id,dev:054c:0268,或者" "与xfreerdp客户端兼容的东西)" -#: transports/RDP/rdp_base.py:300 +#: transports/RDP/rdp_base.py:319 msgid "Allow Microsoft Rdp Client" msgstr "允许 Microsoft Rdp 客户端" -#: transports/RDP/rdp_base.py:303 +#: transports/RDP/rdp_base.py:322 msgid "" "If checked, allows use of Microsoft Remote Desktop Client. PASSWORD WILL BE " "PROMPTED!" msgstr "如果选中,则允许使用 Microsoft 远程桌面客户端。密码将被提示!" -#: transports/RDP/rdp_base.py:313 +#: transports/RDP/rdp_base.py:332 msgid "" "If not empty, extra parameter to include for Mac OS X Freerdp Client (for " "example /usb:id,dev:054c:0268, or aything compatible with your xfreerdp " @@ -6353,107 +6729,111 @@ msgstr "身份验证错误太多。用户暂时被阻止" msgid "Access tried from an unallowed source" msgstr "从不允许的来源尝试访问" -#: web/util/authentication.py:155 +#: web/util/authentication.py:158 msgid "Invalid data" msgstr "无效数据" -#: web/util/configjs.py:170 +#: web/util/configjs.py:163 msgid "Access limited by calendar" msgstr "访问受日历限制" -#: web/util/configjs.py:226 +#: web/util/configjs.py:222 msgid "Windows client" msgstr "Windows客户端" -#: web/util/configjs.py:230 +#: web/util/configjs.py:226 msgid "Mac OS X client" msgstr "Mac OS X客户端" -#: web/util/configjs.py:233 +#: web/util/configjs.py:229 msgid "Debian based Linux client" msgstr "基于Debian的Linux客户端" -#: web/util/configjs.py:235 web/util/configjs.py:243 web/util/configjs.py:263 +#: web/util/configjs.py:231 web/util/configjs.py:239 web/util/configjs.py:259 msgid "(requires Python-3.6 or newer)" msgstr "(需要Python-3.6或更高版本)" -#: web/util/configjs.py:241 +#: web/util/configjs.py:237 msgid "RPM based Linux client (Fedora, Suse, ...)" msgstr "基于RPM的Linux客户端(Fedora,Suse等)" -#: web/util/configjs.py:249 +#: web/util/configjs.py:245 msgid "Binary appimage X86_64 Linux client" msgstr "二进制 appimage X86_64 Linux 客户端" -#: web/util/configjs.py:255 +#: web/util/configjs.py:251 msgid "Binary appimage Raspberry Linux client" msgstr "二进制 appimage Raspberry Linux 客户端" -#: web/util/configjs.py:261 +#: web/util/configjs.py:257 msgid "Generic .tar.gz Linux client" msgstr "通用.tar.gz Linux客户端" -#: web/util/errors.py:76 +#: web/util/errors.py:78 msgid "Unknown error" msgstr "未知错误" -#: web/util/errors.py:83 +#: web/util/errors.py:85 msgid "Maximum services limit reached. Please, contact administrator" msgstr "达到最大服务限制。请联系管理员" -#: web/util/errors.py:84 +#: web/util/errors.py:86 msgid "You need to enable cookies to let this application work" msgstr "您需要启用cookie才能使此应用程序正常运行" -#: web/util/errors.py:86 +#: web/util/errors.py:88 msgid "Authenticator not found" msgstr "未找到身份验证器" -#: web/util/errors.py:87 +#: web/util/errors.py:89 msgid "Invalid authenticator" msgstr "验证码无效" -#: web/util/errors.py:88 +#: web/util/errors.py:90 msgid "Invalid request received" msgstr "收到的请求无效" -#: web/util/errors.py:90 +#: web/util/errors.py:92 msgid "" "Your browser is not supported. Please, upgrade it to a modern HTML5 browser " "like Firefox or Chrome" msgstr "您的浏览器不受支持。请将其升级到Firefox或Chrome等现代HTML5浏览器" -#: web/util/errors.py:92 +#: web/util/errors.py:94 msgid "The requested service is in maintenance mode" msgstr "请求的服务处于维护模式" -#: web/util/errors.py:93 +#: web/util/errors.py:95 msgid "" "The service is not ready.\n" "Please, try again in a few moments." msgstr "该服务尚未准备好。请稍后重试。" -#: web/util/errors.py:94 +#: web/util/errors.py:96 msgid "Preparing service" msgstr "准备服务" -#: web/util/errors.py:95 +#: web/util/errors.py:97 msgid "Service access denied by calendars" msgstr "日历拒绝服务访问" -#: web/util/errors.py:96 +#: web/util/errors.py:98 msgid "Page not found" msgstr "网页未找到" -#: web/util/errors.py:97 +#: web/util/errors.py:99 msgid "Unexpected error" msgstr "意外的错误" -#: web/util/errors.py:98 +#: web/util/errors.py:100 msgid "" "Reloading this page is not supported. Please, reopen service from origin." msgstr "不支持重新加载此页面。请从原点重新开始服务。" +#: web/util/errors.py:101 +msgid "Invalid Multi-Factor Authentication code" +msgstr "无效的多重身份验证代码" + #: web/util/services.py:319 msgid "" "This service is about to be replaced by a new version. Please, close the " @@ -6470,6 +6850,14 @@ msgid "" "complete it.)" msgstr "我们正在创建您的服务,请等待几秒钟。)" -#: web/views/auth.py:177 +#: web/views/auth.py:189 msgid "Authenticator does not provide information" msgstr "Authenticator不提供信息" + +#: web/views/modern.py:269 +msgid "{} days" +msgstr "{} 天" + +#: web/views/modern.py:271 +msgid "{} hours" +msgstr "{} 小时" diff --git a/server/src/uds/locale/zh_Hans/LC_MESSAGES/djangojs.po b/server/src/uds/locale/zh_Hans/LC_MESSAGES/djangojs.po index d03c7257..39262a03 100644 --- a/server/src/uds/locale/zh_Hans/LC_MESSAGES/djangojs.po +++ b/server/src/uds/locale/zh_Hans/LC_MESSAGES/djangojs.po @@ -7,9 +7,9 @@ msgid "" msgstr "" "Project-Id-Version: OpenUDS\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-10 14:45+0100\n" -"PO-Revision-Date: 2022-01-10 13:33+0000\n" -"Last-Translator: Adolfo Gómez \n" +"POT-Creation-Date: 2022-06-30 16:32+0200\n" +"PO-Revision-Date: 2014-03-26 02:16+0000\n" +"Last-Translator: FULL NAME \n" "Language-Team: Chinese (http://www.transifex.com/openuds/openuds/language/" "zh/)\n" "Language: zh\n" @@ -29,14 +29,14 @@ msgstr "主要" #: static/admin/main.js:1 static/admin/translations-fakejs.js:11 #: static/admin/translations-fakejs.js:29 -#: static/admin/translations-fakejs.js:179 -#: static/admin/translations-fakejs.js:191 -#: static/admin/translations-fakejs.js:193 -#: static/admin/translations-fakejs.js:195 -#: static/admin/translations-fakejs.js:197 -#: static/admin/translations-fakejs.js:254 -#: static/admin/translations-fakejs.js:256 -#: static/admin/translations-fakejs.js:258 static/modern/main-es5.js:1 +#: static/admin/translations-fakejs.js:141 +#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:216 +#: static/admin/translations-fakejs.js:218 +#: static/admin/translations-fakejs.js:220 static/modern/main-es5.js:1 #: static/modern/translations-fakejs.js:14 msgid "Error" msgstr "错误" @@ -63,12 +63,12 @@ msgstr "加载数据中..." #: static/admin/translations-fakejs.js:38 #: static/admin/translations-fakejs.js:40 #: static/admin/translations-fakejs.js:43 -#: static/admin/translations-fakejs.js:134 -#: static/admin/translations-fakejs.js:216 -#: static/admin/translations-fakejs.js:221 -#: static/admin/translations-fakejs.js:253 -#: static/admin/translations-fakejs.js:261 -#: static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:96 +#: static/admin/translations-fakejs.js:178 +#: static/admin/translations-fakejs.js:183 +#: static/admin/translations-fakejs.js:215 +#: static/admin/translations-fakejs.js:223 +#: static/admin/translations-fakejs.js:228 msgid "dismiss" msgstr "解雇" @@ -85,7 +85,7 @@ msgid "Test passed successfully" msgstr "测试顺利通过" #: static/admin/main.js:1 static/admin/translations-fakejs.js:37 -#: static/admin/translations-fakejs.js:260 +#: static/admin/translations-fakejs.js:222 msgid "Successfully saved" msgstr "成功保存" @@ -141,58 +141,58 @@ msgstr "游泳池组" msgid "Go to" msgstr "去" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:275 msgid "yes" msgstr "是" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:276 msgid "no" msgstr "没有" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:269 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:272 msgid "Error saving: " msgstr "保存时出错:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:270 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:273 msgid "Error saving element" msgstr "错误保存元素" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:271 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:274 msgid "Error handling your request" msgstr "处理您的请求时出错" #: static/admin/main.js:1 static/admin/translations-fakejs.js:56 -#: static/admin/translations-fakejs.js:153 +#: static/admin/translations-fakejs.js:115 msgid "Sunday" msgstr "星期日" #: static/admin/main.js:1 static/admin/translations-fakejs.js:57 -#: static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:116 msgid "Monday" msgstr "星期一" #: static/admin/main.js:1 static/admin/translations-fakejs.js:58 -#: static/admin/translations-fakejs.js:155 +#: static/admin/translations-fakejs.js:117 msgid "Tuesday" msgstr "星期二" #: static/admin/main.js:1 static/admin/translations-fakejs.js:59 -#: static/admin/translations-fakejs.js:156 +#: static/admin/translations-fakejs.js:118 msgid "Wednesday" msgstr "星期三" #: static/admin/main.js:1 static/admin/translations-fakejs.js:60 -#: static/admin/translations-fakejs.js:157 +#: static/admin/translations-fakejs.js:119 msgid "Thursday" msgstr "星期四" #: static/admin/main.js:1 static/admin/translations-fakejs.js:61 -#: static/admin/translations-fakejs.js:158 +#: static/admin/translations-fakejs.js:120 msgid "Friday" msgstr "星期五" #: static/admin/main.js:1 static/admin/translations-fakejs.js:62 -#: static/admin/translations-fakejs.js:159 +#: static/admin/translations-fakejs.js:121 msgid "Saturday" msgstr "星期六" @@ -264,20 +264,20 @@ msgstr "#SERVICES_NUMBER#个用户服务" msgid "#RESTRAINED_NUMBER# restrained services!" msgstr "#RESTRAINED_NUMBER#个受限制的服务!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 -#: static/admin/translations-fakejs.js:249 -#: static/admin/translations-fakejs.js:402 -#: static/admin/translations-fakejs.js:454 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:211 +#: static/admin/translations-fakejs.js:265 +#: static/admin/translations-fakejs.js:366 +#: static/admin/translations-fakejs.js:418 msgid "Assigned services" msgstr "分配的服务" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 msgid "Services in use" msgstr "使用中的服务" #: static/admin/main.js:1 static/admin/translations-fakejs.js:21 -#: static/admin/translations-fakejs.js:292 -#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:303 #: static/modern/translations-fakejs.js:30 msgid "Filter" msgstr "过滤" @@ -295,25 +295,25 @@ msgid "Full Access" msgstr "完全访问" #: static/admin/main.js:1 static/admin/translations-fakejs.js:15 -#: static/admin/translations-fakejs.js:362 -#: static/admin/translations-fakejs.js:409 -#: static/admin/translations-fakejs.js:414 +#: static/admin/translations-fakejs.js:373 +#: static/admin/translations-fakejs.js:378 +#: static/admin/translations-fakejs.js:489 msgid "User" msgstr "用户" #: static/admin/main.js:1 static/admin/translations-fakejs.js:16 -#: static/admin/translations-fakejs.js:83 -#: static/admin/translations-fakejs.js:93 -#: static/admin/translations-fakejs.js:427 -#: static/admin/translations-fakejs.js:448 +#: static/admin/translations-fakejs.js:243 +#: static/admin/translations-fakejs.js:253 +#: static/admin/translations-fakejs.js:391 +#: static/admin/translations-fakejs.js:412 msgid "Group" msgstr "组" #: static/admin/main.js:1 static/admin/translations-fakejs.js:17 -#: static/admin/translations-fakejs.js:408 -#: static/admin/translations-fakejs.js:413 -#: static/admin/translations-fakejs.js:426 -#: static/admin/translations-fakejs.js:447 +#: static/admin/translations-fakejs.js:372 +#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:390 +#: static/admin/translations-fakejs.js:411 #: static/modern/translations-fakejs.js:72 msgid "Authenticator" msgstr "认证" @@ -330,89 +330,89 @@ msgstr "去掉" msgid "Confirm revokation of permission" msgstr "确认撤销许可" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:238 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 msgid "Maintenance" msgstr "保养" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 msgid "Exit maintenance mode" msgstr "退出维护模式" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 msgid "Enter maintenance mode" msgstr "进入维护模式" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 msgid "New provider" msgstr "新提供者" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 msgid "Edit provider" msgstr "编辑提供者" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:243 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 msgid "Delete provider" msgstr "删除提供商" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 msgid "Exit maintenance mode?" msgstr "退出维护模式?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 msgid "Enter maintenance mode?" msgstr "进入维护模式?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 msgid "Maintenance mode for" msgstr "维护模式" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 -#: static/admin/translations-fakejs.js:247 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:209 +#: static/admin/translations-fakejs.js:232 msgid "In Maintenance" msgstr "在维护中" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 -#: static/admin/translations-fakejs.js:248 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/translations-fakejs.js:233 msgid "Active" msgstr "活性" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 -#: static/admin/translations-fakejs.js:95 -#: static/admin/translations-fakejs.js:229 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:191 +#: static/admin/translations-fakejs.js:236 +#: static/admin/translations-fakejs.js:255 msgid "Pool" msgstr "池" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 -#: static/admin/translations-fakejs.js:96 -#: static/admin/translations-fakejs.js:230 -#: static/admin/translations-fakejs.js:343 -#: static/admin/translations-fakejs.js:355 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 +#: static/admin/translations-fakejs.js:237 +#: static/admin/translations-fakejs.js:256 +#: static/admin/translations-fakejs.js:470 +#: static/admin/translations-fakejs.js:482 msgid "State" msgstr "州" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 -#: static/admin/translations-fakejs.js:97 -#: static/admin/translations-fakejs.js:231 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:193 +#: static/admin/translations-fakejs.js:238 +#: static/admin/translations-fakejs.js:257 msgid "User Services" msgstr "用户服务" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 -#: static/admin/translations-fakejs.js:232 -#: static/admin/translations-fakejs.js:321 -#: static/admin/translations-fakejs.js:401 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:194 +#: static/admin/translations-fakejs.js:248 +#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:365 msgid "Service pools" msgstr "服务池" #: static/admin/main.js:1 static/admin/translations-fakejs.js:3 #: static/admin/translations-fakejs.js:7 -#: static/admin/translations-fakejs.js:308 +#: static/admin/translations-fakejs.js:311 #: static/modern/translations-fakejs.js:44 msgid "Yes" msgstr "是" #: static/admin/main.js:1 static/admin/translations-fakejs.js:4 #: static/admin/translations-fakejs.js:8 -#: static/admin/translations-fakejs.js:309 +#: static/admin/translations-fakejs.js:312 #: static/modern/translations-fakejs.js:45 msgid "No" msgstr "没有" @@ -425,592 +425,595 @@ msgstr "(隐)" msgid "Selected items :" msgstr "选定项目:" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 -#: static/admin/translations-fakejs.js:233 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:195 +#: static/admin/translations-fakejs.js:231 #: static/modern/translations-fakejs.js:35 msgid "Information" msgstr "信息" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 msgid "New service" msgstr "新服务" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:197 msgid "Edit service" msgstr "编辑服务" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:236 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 msgid "Delete service" msgstr "删除服务" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:237 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 msgid "Delete user service" msgstr "删除用户服务" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:266 +#: static/admin/translations-fakejs.js:269 msgid "New Authenticator" msgstr "新认证" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:267 +#: static/admin/translations-fakejs.js:270 msgid "Edit Authenticator" msgstr "编辑身份验证器" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/translations-fakejs.js:271 msgid "Delete Authenticator" msgstr "删除身份验证器" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 msgid "Any" msgstr "任何" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 msgid "All" msgstr "所有" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 -#: static/admin/translations-fakejs.js:94 -#: static/admin/translations-fakejs.js:342 -#: static/admin/translations-fakejs.js:354 -#: static/admin/translations-fakejs.js:379 -#: static/admin/translations-fakejs.js:435 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:244 +#: static/admin/translations-fakejs.js:254 +#: static/admin/translations-fakejs.js:343 +#: static/admin/translations-fakejs.js:399 +#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:481 msgid "Comments" msgstr "评论" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:258 msgid "Unique ID" msgstr "唯一身份" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 msgid "Friendly Name" msgstr "友好名称" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:260 msgid "In Use" msgstr "正在使用" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:261 msgid "IP" msgstr "IP" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 msgid "Services Pool" msgstr "服务池" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 -#: static/admin/translations-fakejs.js:103 -#: static/admin/translations-fakejs.js:287 -#: static/admin/translations-fakejs.js:323 -#: static/admin/translations-fakejs.js:337 -#: static/admin/translations-fakejs.js:363 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:250 +#: static/admin/translations-fakejs.js:263 +#: static/admin/translations-fakejs.js:290 +#: static/admin/translations-fakejs.js:328 #: static/admin/translations-fakejs.js:367 -#: static/admin/translations-fakejs.js:373 -#: static/admin/translations-fakejs.js:403 -#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:494 msgid "Groups" msgstr "组" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 -#: static/admin/translations-fakejs.js:335 -#: static/admin/translations-fakejs.js:368 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/translations-fakejs.js:462 +#: static/admin/translations-fakejs.js:495 msgid "Services Pools" msgstr "服务池" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 -#: static/admin/translations-fakejs.js:378 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:239 +#: static/admin/translations-fakejs.js:342 msgid "Name" msgstr "名称" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:240 msgid "Real Name" msgstr "真正的名字" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:241 msgid "state" msgstr "州" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:242 msgid "Last access" msgstr "上次访问" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 -#: static/admin/translations-fakejs.js:286 -#: static/admin/translations-fakejs.js:336 -#: static/admin/translations-fakejs.js:372 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:249 +#: static/admin/translations-fakejs.js:289 +#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:463 msgid "Users" msgstr "用户" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 -#: static/admin/translations-fakejs.js:344 -#: static/admin/translations-fakejs.js:356 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:245 +#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:483 msgid "Enabled" msgstr "启用" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 -#: static/admin/translations-fakejs.js:345 -#: static/admin/translations-fakejs.js:357 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:246 +#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:484 msgid "Disabled" msgstr "残" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 -#: static/admin/translations-fakejs.js:358 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:247 +#: static/admin/translations-fakejs.js:485 msgid "Blocked" msgstr "阻止" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:234 msgid "Delete user" msgstr "删除用户" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:235 msgid "Delete group" msgstr "删除组" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:85 msgid "New OS Manager" msgstr "新的OS Manager" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:86 msgid "Edit OS Manager" msgstr "编辑OS Manager" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:87 msgid "Delete OS Manager" msgstr "删除操作系统管理器" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:120 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:82 msgid "New Transport" msgstr "新运输" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:121 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:83 msgid "Edit Transport" msgstr "编辑传输" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:84 msgid "Delete Transport" msgstr "删除传输" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:76 msgid "New Network" msgstr "新网络" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:115 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:77 msgid "Edit Network" msgstr "编辑网络" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:116 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:78 msgid "Delete Network" msgstr "删除网络" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:117 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:79 msgid "New Proxy" msgstr "新代理" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:118 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:80 msgid "Edit Proxy" msgstr "编辑代理" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:119 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:81 msgid "Delete Proxy" msgstr "删除代理" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:223 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 msgid "(This service does not requires an OS Manager)" msgstr "(此服务不需要OS Manager)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 msgid "New service Pool" msgstr "新服务池" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 msgid "Publish on creation" msgstr "发布创作" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 msgid "If selected, will initiate the publication inmediatly after creation" msgstr "如果选中,将在创建后立即启动发布" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 msgid "Edit Service Pool" msgstr "编辑服务池" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:228 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 msgid "Delete service pool" msgstr "删除服务池" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:192 -#: static/admin/translations-fakejs.js:194 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:154 +#: static/admin/translations-fakejs.js:156 msgid "Please, select a valid user" msgstr "请选择有效用户" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:196 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:158 msgid "Please, select a valid group" msgstr "请选择一个有效的组" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:198 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 msgid "Please, select a valid transport" msgstr "请选择有效的交通工具" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:199 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 msgid "Assigned" msgstr "已分配" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:200 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 msgid "Cached" msgstr "缓存" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:201 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 msgid "In use" msgstr "正在使用" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:202 -#: static/admin/translations-fakejs.js:290 -#: static/admin/translations-fakejs.js:374 -#: static/admin/translations-fakejs.js:405 -#: static/admin/translations-fakejs.js:462 -#: static/admin/translations-fakejs.js:465 -#: static/admin/translations-fakejs.js:470 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/translations-fakejs.js:293 +#: static/admin/translations-fakejs.js:369 +#: static/admin/translations-fakejs.js:426 +#: static/admin/translations-fakejs.js:429 +#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:460 msgid "Logs" msgstr "日志" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:203 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 msgid "VNC" msgstr "VNC" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:204 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 msgid "Launch now" msgstr "现在发射" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:205 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 msgid "Change owner" msgstr "改变所有者" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:206 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 msgid "Assign service" msgstr "分配服务" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:207 -#: static/admin/translations-fakejs.js:277 -#: static/admin/translations-fakejs.js:283 -#: static/admin/translations-fakejs.js:349 -#: static/admin/translations-fakejs.js:364 -#: static/admin/translations-fakejs.js:390 -#: static/admin/translations-fakejs.js:398 -#: static/admin/translations-fakejs.js:410 -#: static/admin/translations-fakejs.js:415 -#: static/admin/translations-fakejs.js:423 -#: static/admin/translations-fakejs.js:428 -#: static/admin/translations-fakejs.js:432 -#: static/admin/translations-fakejs.js:436 -#: static/admin/translations-fakejs.js:449 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/translations-fakejs.js:280 +#: static/admin/translations-fakejs.js:286 +#: static/admin/translations-fakejs.js:354 +#: static/admin/translations-fakejs.js:362 +#: static/admin/translations-fakejs.js:374 +#: static/admin/translations-fakejs.js:379 +#: static/admin/translations-fakejs.js:387 +#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:400 +#: static/admin/translations-fakejs.js:413 +#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:476 #: static/admin/translations-fakejs.js:491 msgid "Cancel" msgstr "取消" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:208 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 msgid "Changelog" msgstr "更新日志" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 -#: static/admin/translations-fakejs.js:209 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/translations-fakejs.js:171 msgid "Delete assigned service" msgstr "删除已分配的服务" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:210 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 msgid "Delete cached service" msgstr "删除缓存的服务" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:183 -#: static/admin/translations-fakejs.js:211 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/translations-fakejs.js:173 msgid "Delete assigned group" msgstr "删除已分配的组" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:212 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 msgid "Delete assigned transport" msgstr "删除分配的传输" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 msgid "Publication" msgstr "出版物" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 msgid "Cancel publication?" msgstr "取消发布?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:215 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 msgid "Publication canceled" msgstr "出版物已取消" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:179 msgid "Delete scheduled action" msgstr "删除预定的操作" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:218 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 msgid "Execute scheduled action" msgstr "执行计划的操作" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 msgid "Execute scheduled action right now?" msgstr "立即执行预定的操作?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:220 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:182 msgid "Scheduled action executed" msgstr "已执行计划的操作" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:184 -#: static/admin/translations-fakejs.js:222 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/translations-fakejs.js:184 msgid "Delete calendar access rule" msgstr "删除日历访问规则" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:185 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 msgid "New meta pool" msgstr "新的元池" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:186 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 msgid "Edit meta pool" msgstr "编辑元池" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:187 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 msgid "Delete meta pool" msgstr "删除元池" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:180 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 msgid "Please, select a valid service pool" msgstr "请选择有效的服务池" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:181 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 msgid "Remove member pool" msgstr "删除成员池" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:188 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 msgid "New pool group" msgstr "新池组" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:189 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 msgid "Edit pool group" msgstr "修改池组" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:190 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 msgid "Delete pool group" msgstr "删除池组" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:176 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 msgid "New calendar" msgstr "新日历" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:177 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 msgid "Edit calendar" msgstr "编辑日历" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:178 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 msgid "Delete calendar" msgstr "删除日历" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:98 msgid "day" msgstr "天" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:99 msgid "days" msgstr "天" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:138 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:100 msgid "Daily" msgstr "日常" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:139 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:101 msgid "week" msgstr "周" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:140 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:102 msgid "weeks" msgstr "周" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:141 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:103 msgid "Weekly" msgstr "每周" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:142 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:104 msgid "month" msgstr "月" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:143 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:105 msgid "months" msgstr "个月" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:144 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:106 msgid "Monthly" msgstr "每月一次" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:145 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:107 msgid "year" msgstr "年" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:146 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:108 msgid "years" msgstr "年份" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:147 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:109 msgid "Yearly" msgstr "每年" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:148 -#: static/admin/translations-fakejs.js:387 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:110 +#: static/admin/translations-fakejs.js:351 msgid "Weekdays" msgstr "平日" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:149 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:111 msgid "Minutes" msgstr "分钟" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:150 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:112 msgid "Hours" msgstr "小时" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:151 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:113 msgid "Days" msgstr "天" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:152 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:114 msgid "Weeks" msgstr "周" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:160 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:122 msgid "(no days)" msgstr "(没有日子)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:161 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:123 msgid "Forever" msgstr "永远" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:162 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:124 msgid "Start date/time" msgstr "开始日期/时间" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:163 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:125 msgid "End date" msgstr "结束日期" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:164 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 msgid "Interval" msgstr "间隔" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:165 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 msgid "Week days" msgstr "周日" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:166 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 msgid "Invalid or incomplete rule. Please, fix field $FIELD" msgstr "规则无效或不完整。请修复字段$ FIELD" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:167 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 msgid "This rule will be valid every" msgstr "这条规则将是有效的" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:168 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 msgid "of any week" msgstr "任何一周" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:169 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 msgid "from" msgstr "从" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:170 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 msgid "until" msgstr "直到" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:171 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 msgid "onwards" msgstr "向前" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:172 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:134 msgid "starting at" msgstr "开始于" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:173 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 msgid "and every event will be active for" msgstr "每个活动都会活跃起来" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:174 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:136 msgid "with no duration" msgstr "没有持续时间" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:175 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:137 msgid "Delete calendar rule" msgstr "删除日历规则" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:127 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:89 msgid "Set time mark" msgstr "设定时间标记" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:128 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:90 msgid "New account" msgstr "新账户" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:129 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:91 msgid "Edit account" msgstr "编辑账户" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:130 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:92 msgid "Delete account" msgstr "删除帐户" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:131 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:93 msgid "Time mark" msgstr "时间标记" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:132 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:94 msgid "Set time mark for $NAME to current date/time?" msgstr "将$ NAME的时间标记设置为当前日期/时间?" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:133 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:95 msgid "Time mark stablished" msgstr "已建立时间标记" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:135 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:97 msgid "No time mark" msgstr "没有时间标记" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:126 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:88 msgid "Delete account usage" msgstr "删除帐户使用情况" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:255 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:217 msgid "Image is too big (max. upload size is 256Kb)" msgstr "图像太大(最大上传大小为256Kb)" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:257 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:219 msgid "Invalid image type (only supports JPEG, PNG and GIF" msgstr "图像类型无效(仅支持JPEG,PNG和GIF" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:259 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:221 msgid "Please, provide a name and a image" msgstr "请提供名称和图像" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:262 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:224 msgid "Delete image" msgstr "删除图片" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:263 -#: static/admin/translations-fakejs.js:267 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:225 +#: static/admin/translations-fakejs.js:229 msgid "Generate report" msgstr "生成报告" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:264 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:226 msgid "Generating report..." msgstr "生成报告......" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:265 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:227 msgid "Report finished" msgstr "报告完了" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:252 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:214 msgid "Configuration saved" msgstr "配置已保存" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:251 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:213 msgid "Delete actor token - USE WITH EXTREME CAUTION!!!" msgstr "删除演员令牌-格外小心!!!" -#: static/admin/main.js:1 static/admin/translations-fakejs.js:268 +#: static/admin/main.js:1 static/admin/translations-fakejs.js:230 msgid "Delete tunnel token - USE WITH EXTREME CAUTION!!!" msgstr "删除隧道令牌 - 使用时要格外小心!!!" @@ -1026,507 +1029,515 @@ msgstr "每页项目" msgid ", (%i more items)" msgstr ",(%i更多项目)" -#: static/admin/translations-fakejs.js:275 +#: static/admin/translations-fakejs.js:278 msgid "Remove all" msgstr "移除所有" -#: static/admin/translations-fakejs.js:276 +#: static/admin/translations-fakejs.js:279 msgid "Add" msgstr "加" -#: static/admin/translations-fakejs.js:278 -#: static/admin/translations-fakejs.js:284 -#: static/admin/translations-fakejs.js:289 -#: static/admin/translations-fakejs.js:338 -#: static/admin/translations-fakejs.js:350 -#: static/admin/translations-fakejs.js:365 -#: static/admin/translations-fakejs.js:370 -#: static/admin/translations-fakejs.js:391 -#: static/admin/translations-fakejs.js:399 -#: static/admin/translations-fakejs.js:411 +#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:287 +#: static/admin/translations-fakejs.js:292 +#: static/admin/translations-fakejs.js:355 +#: static/admin/translations-fakejs.js:363 +#: static/admin/translations-fakejs.js:375 +#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:401 +#: static/admin/translations-fakejs.js:403 +#: static/admin/translations-fakejs.js:414 #: static/admin/translations-fakejs.js:416 -#: static/admin/translations-fakejs.js:424 -#: static/admin/translations-fakejs.js:429 -#: static/admin/translations-fakejs.js:433 -#: static/admin/translations-fakejs.js:437 -#: static/admin/translations-fakejs.js:439 -#: static/admin/translations-fakejs.js:450 -#: static/admin/translations-fakejs.js:452 -#: static/admin/translations-fakejs.js:466 +#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:456 +#: static/admin/translations-fakejs.js:465 +#: static/admin/translations-fakejs.js:477 #: static/admin/translations-fakejs.js:492 +#: static/admin/translations-fakejs.js:497 msgid "Ok" msgstr "好" -#: static/admin/translations-fakejs.js:279 +#: static/admin/translations-fakejs.js:282 msgid "Discard & close" msgstr "放弃并关闭" -#: static/admin/translations-fakejs.js:280 -#: static/admin/translations-fakejs.js:484 +#: static/admin/translations-fakejs.js:283 +#: static/admin/translations-fakejs.js:448 msgid "Save" msgstr "保存" -#: static/admin/translations-fakejs.js:281 +#: static/admin/translations-fakejs.js:284 msgid "New user permission for" msgstr "的新用户权限" -#: static/admin/translations-fakejs.js:282 +#: static/admin/translations-fakejs.js:285 msgid "New group permission for" msgstr "新的组权限" -#: static/admin/translations-fakejs.js:285 +#: static/admin/translations-fakejs.js:288 msgid "Permissions for" msgstr "权限" -#: static/admin/translations-fakejs.js:288 +#: static/admin/translations-fakejs.js:291 msgid "New permission..." msgstr "新许可......" -#: static/admin/translations-fakejs.js:291 -#: static/admin/translations-fakejs.js:298 +#: static/admin/translations-fakejs.js:294 +#: static/admin/translations-fakejs.js:301 msgid "Export" msgstr "出口" -#: static/admin/translations-fakejs.js:293 -#: static/admin/translations-fakejs.js:294 -#: static/admin/translations-fakejs.js:295 +#: static/admin/translations-fakejs.js:296 +#: static/admin/translations-fakejs.js:297 +#: static/admin/translations-fakejs.js:298 msgid "New" msgstr "新" -#: static/admin/translations-fakejs.js:296 -#: static/admin/translations-fakejs.js:304 +#: static/admin/translations-fakejs.js:299 +#: static/admin/translations-fakejs.js:307 msgid "Edit" msgstr "编辑" -#: static/admin/translations-fakejs.js:297 -#: static/admin/translations-fakejs.js:305 +#: static/admin/translations-fakejs.js:300 +#: static/admin/translations-fakejs.js:308 msgid "Permissions" msgstr "权限" -#: static/admin/translations-fakejs.js:299 -#: static/admin/translations-fakejs.js:306 +#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:309 msgid "Delete" msgstr "删除" -#: static/admin/translations-fakejs.js:301 +#: static/admin/translations-fakejs.js:304 msgid "Selected items" msgstr "选定的项目" -#: static/admin/translations-fakejs.js:302 +#: static/admin/translations-fakejs.js:305 msgid "Copy" msgstr "复制" -#: static/admin/translations-fakejs.js:303 +#: static/admin/translations-fakejs.js:306 msgid "Detail" msgstr "详情" -#: static/admin/translations-fakejs.js:307 +#: static/admin/translations-fakejs.js:310 #: static/modern/translations-fakejs.js:43 msgid "Close" msgstr "关" -#: static/admin/translations-fakejs.js:310 +#: static/admin/translations-fakejs.js:313 msgid "User mode" msgstr "用户模式" -#: static/admin/translations-fakejs.js:311 +#: static/admin/translations-fakejs.js:314 #: static/modern/translations-fakejs.js:48 msgid "Logout" msgstr "登出" -#: static/admin/translations-fakejs.js:312 -#: static/admin/translations-fakejs.js:371 -#: static/admin/translations-fakejs.js:389 -#: static/admin/translations-fakejs.js:400 -#: static/admin/translations-fakejs.js:453 -#: static/admin/translations-fakejs.js:467 +#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:353 +#: static/admin/translations-fakejs.js:364 +#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:431 +#: static/admin/translations-fakejs.js:457 msgid "Summary" msgstr "摘要" -#: static/admin/translations-fakejs.js:313 -#: static/admin/translations-fakejs.js:468 +#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:432 msgid "Services" msgstr "服务" -#: static/admin/translations-fakejs.js:314 +#: static/admin/translations-fakejs.js:317 +msgid "Authentication" +msgstr "验证" + +#: static/admin/translations-fakejs.js:318 msgid "Authenticators" msgstr "验证器" -#: static/admin/translations-fakejs.js:315 +#: static/admin/translations-fakejs.js:319 +msgid "Multi Factor" +msgstr "多因素" + +#: static/admin/translations-fakejs.js:320 msgid "Os Managers" msgstr "Os经理" -#: static/admin/translations-fakejs.js:316 +#: static/admin/translations-fakejs.js:321 msgid "Connectivity" msgstr "连接" -#: static/admin/translations-fakejs.js:317 -#: static/admin/translations-fakejs.js:457 +#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:421 #: static/modern/translations-fakejs.js:39 msgid "Transports" msgstr "运输" -#: static/admin/translations-fakejs.js:318 +#: static/admin/translations-fakejs.js:323 #: static/modern/translations-fakejs.js:41 msgid "Networks" msgstr "网络" -#: static/admin/translations-fakejs.js:319 +#: static/admin/translations-fakejs.js:324 msgid "Proxies" msgstr "代理" -#: static/admin/translations-fakejs.js:320 +#: static/admin/translations-fakejs.js:325 msgid "Pools" msgstr "池" -#: static/admin/translations-fakejs.js:322 +#: static/admin/translations-fakejs.js:327 msgid "Meta pools" msgstr "元池" -#: static/admin/translations-fakejs.js:324 +#: static/admin/translations-fakejs.js:329 msgid "Calendars" msgstr "日历" -#: static/admin/translations-fakejs.js:325 +#: static/admin/translations-fakejs.js:330 msgid "Accounts" msgstr "帐号" -#: static/admin/translations-fakejs.js:326 +#: static/admin/translations-fakejs.js:331 msgid "Tools" msgstr "工具" -#: static/admin/translations-fakejs.js:327 +#: static/admin/translations-fakejs.js:332 msgid "Gallery" msgstr "画廊" -#: static/admin/translations-fakejs.js:328 +#: static/admin/translations-fakejs.js:333 msgid "Reports" msgstr "报告" -#: static/admin/translations-fakejs.js:329 +#: static/admin/translations-fakejs.js:334 msgid "Tokens" msgstr "代币" -#: static/admin/translations-fakejs.js:330 +#: static/admin/translations-fakejs.js:335 msgid "Actor" msgstr "演员" -#: static/admin/translations-fakejs.js:331 +#: static/admin/translations-fakejs.js:336 msgid "Tunnel" msgstr "隧道" -#: static/admin/translations-fakejs.js:332 +#: static/admin/translations-fakejs.js:337 msgid "Configuration" msgstr "组态" -#: static/admin/translations-fakejs.js:333 +#: static/admin/translations-fakejs.js:338 msgid "Flush Cache" msgstr "刷新缓存" -#: static/admin/translations-fakejs.js:334 -#: static/admin/translations-fakejs.js:366 -#: static/admin/translations-fakejs.js:463 -msgid "Information for" -msgstr "信息" - #: static/admin/translations-fakejs.js:339 -msgid "Edit group" -msgstr "编辑组" - -#: static/admin/translations-fakejs.js:340 -msgid "New group" -msgstr "新组" - -#: static/admin/translations-fakejs.js:341 -msgid "Meta group name" -msgstr "元组名称" - -#: static/admin/translations-fakejs.js:346 -msgid "Service Pools" -msgstr "服务池" - -#: static/admin/translations-fakejs.js:347 -msgid "Match mode" -msgstr "比赛模式" - -#: static/admin/translations-fakejs.js:348 -msgid "Selected Groups" -msgstr "选定的团体" - -#: static/admin/translations-fakejs.js:351 -msgid "Edit user" -msgstr "编辑用户" - -#: static/admin/translations-fakejs.js:352 -msgid "New user" -msgstr "新用户" - -#: static/admin/translations-fakejs.js:353 -msgid "Real name" -msgstr "真正的名字" - -#: static/admin/translations-fakejs.js:359 -msgid "Role" -msgstr "角色" - -#: static/admin/translations-fakejs.js:360 -msgid "Admin" -msgstr "管理员" - -#: static/admin/translations-fakejs.js:361 -msgid "Staff member" -msgstr "工作人员" - -#: static/admin/translations-fakejs.js:369 -msgid "Assigned Services" -msgstr "指定服务" - -#: static/admin/translations-fakejs.js:375 msgid "Account usage" msgstr "帐户使用情况" -#: static/admin/translations-fakejs.js:376 +#: static/admin/translations-fakejs.js:340 msgid "Edit rule" msgstr "修改规则" -#: static/admin/translations-fakejs.js:377 +#: static/admin/translations-fakejs.js:341 msgid "New rule" msgstr "新规定" -#: static/admin/translations-fakejs.js:380 +#: static/admin/translations-fakejs.js:344 msgid "Event" msgstr "事件" -#: static/admin/translations-fakejs.js:381 +#: static/admin/translations-fakejs.js:345 msgid "Start time" msgstr "开始时间" -#: static/admin/translations-fakejs.js:382 +#: static/admin/translations-fakejs.js:346 msgid "Duration" msgstr "持续时间" -#: static/admin/translations-fakejs.js:383 +#: static/admin/translations-fakejs.js:347 msgid "Duration units" msgstr "持续时间单位" -#: static/admin/translations-fakejs.js:384 +#: static/admin/translations-fakejs.js:348 msgid "Start date" msgstr "开始日期" -#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:349 msgid "Repeat until date" msgstr "重复直到日期" -#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:350 msgid "Frequency" msgstr "频率" -#: static/admin/translations-fakejs.js:388 +#: static/admin/translations-fakejs.js:352 msgid "Repeat every" msgstr "重复一遍" -#: static/admin/translations-fakejs.js:392 +#: static/admin/translations-fakejs.js:356 msgid "Rules" msgstr "规则" -#: static/admin/translations-fakejs.js:393 +#: static/admin/translations-fakejs.js:357 msgid "New member pool" msgstr "新会员池" -#: static/admin/translations-fakejs.js:394 +#: static/admin/translations-fakejs.js:358 msgid "Edit member pool" msgstr "编辑成员池" -#: static/admin/translations-fakejs.js:395 -#: static/admin/translations-fakejs.js:420 +#: static/admin/translations-fakejs.js:359 +#: static/admin/translations-fakejs.js:384 msgid "Priority" msgstr "优先" -#: static/admin/translations-fakejs.js:396 +#: static/admin/translations-fakejs.js:360 msgid "Service pool" msgstr "服务池" -#: static/admin/translations-fakejs.js:397 +#: static/admin/translations-fakejs.js:361 msgid "Enabled?" msgstr "启用?" -#: static/admin/translations-fakejs.js:404 -#: static/admin/translations-fakejs.js:460 +#: static/admin/translations-fakejs.js:368 +#: static/admin/translations-fakejs.js:424 msgid "Access calendars" msgstr "访问日历" -#: static/admin/translations-fakejs.js:406 +#: static/admin/translations-fakejs.js:370 msgid "Assign service to user manually" msgstr "手动为用户分配服务" -#: static/admin/translations-fakejs.js:407 +#: static/admin/translations-fakejs.js:371 msgid "Service" msgstr "服务" -#: static/admin/translations-fakejs.js:412 +#: static/admin/translations-fakejs.js:376 msgid "Change owner of assigned service" msgstr "更改已分配服务的所有者" -#: static/admin/translations-fakejs.js:417 +#: static/admin/translations-fakejs.js:381 msgid "New access rule for" msgstr "的新访问规则" -#: static/admin/translations-fakejs.js:418 +#: static/admin/translations-fakejs.js:382 msgid "Edit access rule for" msgstr "编辑的访问规则" -#: static/admin/translations-fakejs.js:419 +#: static/admin/translations-fakejs.js:383 msgid "Default fallback access for" msgstr "的默认后备访问权限" -#: static/admin/translations-fakejs.js:421 -#: static/admin/translations-fakejs.js:442 +#: static/admin/translations-fakejs.js:385 +#: static/admin/translations-fakejs.js:406 msgid "Calendar" msgstr "日历" -#: static/admin/translations-fakejs.js:422 -#: static/admin/translations-fakejs.js:445 +#: static/admin/translations-fakejs.js:386 +#: static/admin/translations-fakejs.js:409 msgid "Action" msgstr "行动" -#: static/admin/translations-fakejs.js:425 +#: static/admin/translations-fakejs.js:389 msgid "New group for" msgstr "新组" -#: static/admin/translations-fakejs.js:430 +#: static/admin/translations-fakejs.js:394 msgid "New transport for" msgstr "新的运输" -#: static/admin/translations-fakejs.js:431 -#: static/admin/translations-fakejs.js:446 +#: static/admin/translations-fakejs.js:395 +#: static/admin/translations-fakejs.js:410 msgid "Transport" msgstr "运输" -#: static/admin/translations-fakejs.js:434 +#: static/admin/translations-fakejs.js:398 msgid "New publication for" msgstr "新出版物" -#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:402 msgid "Changelog of" msgstr "更改日志" -#: static/admin/translations-fakejs.js:440 +#: static/admin/translations-fakejs.js:404 msgid "Edit action for" msgstr "编辑动作" -#: static/admin/translations-fakejs.js:441 +#: static/admin/translations-fakejs.js:405 msgid "New action for" msgstr "新的行动" -#: static/admin/translations-fakejs.js:443 +#: static/admin/translations-fakejs.js:407 msgid "Events offset (minutes)" msgstr "事件抵消(分钟)" -#: static/admin/translations-fakejs.js:444 +#: static/admin/translations-fakejs.js:408 msgid "At the beginning of the interval?" msgstr "在间隔的开始?" -#: static/admin/translations-fakejs.js:451 +#: static/admin/translations-fakejs.js:415 msgid "Logs of" msgstr "日志" -#: static/admin/translations-fakejs.js:455 +#: static/admin/translations-fakejs.js:419 msgid "Cache" msgstr "高速缓存" -#: static/admin/translations-fakejs.js:458 +#: static/admin/translations-fakejs.js:422 msgid "Publications" msgstr "出版物" -#: static/admin/translations-fakejs.js:459 +#: static/admin/translations-fakejs.js:423 msgid "Scheduled actions" msgstr "预定的行动" -#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:425 msgid "Charts" msgstr "图表" -#: static/admin/translations-fakejs.js:464 +#: static/admin/translations-fakejs.js:427 +#: static/admin/translations-fakejs.js:461 +#: static/admin/translations-fakejs.js:493 +msgid "Information for" +msgstr "信息" + +#: static/admin/translations-fakejs.js:428 msgid "Services pools" msgstr "服务池" -#: static/admin/translations-fakejs.js:469 +#: static/admin/translations-fakejs.js:433 msgid "Usage" msgstr "用法" -#: static/admin/translations-fakejs.js:471 +#: static/admin/translations-fakejs.js:435 #: static/modern/translations-fakejs.js:46 msgid "Dashboard" msgstr "仪表板" -#: static/admin/translations-fakejs.js:472 +#: static/admin/translations-fakejs.js:436 msgid "View authenticators" msgstr "查看验证者" -#: static/admin/translations-fakejs.js:473 -#: static/admin/translations-fakejs.js:474 -#: static/admin/translations-fakejs.js:475 +#: static/admin/translations-fakejs.js:437 +#: static/admin/translations-fakejs.js:438 +#: static/admin/translations-fakejs.js:439 msgid "View service pools" msgstr "查看服务池" -#: static/admin/translations-fakejs.js:476 +#: static/admin/translations-fakejs.js:440 msgid "Assigned services chart" msgstr "分配的服务图表" -#: static/admin/translations-fakejs.js:477 +#: static/admin/translations-fakejs.js:441 msgid "In use services chart" msgstr "在用服务图表" -#: static/admin/translations-fakejs.js:478 +#: static/admin/translations-fakejs.js:442 msgid "UDS Administration" msgstr "UDS管理" -#: static/admin/translations-fakejs.js:479 +#: static/admin/translations-fakejs.js:443 msgid "You are accessing UDS Administration as staff member." msgstr "您正在以工作人员身份访问UDS管理。" -#: static/admin/translations-fakejs.js:480 +#: static/admin/translations-fakejs.js:444 msgid "This means that you have restricted access to elements." msgstr "这意味着您具有对元素的限制访问权限。" -#: static/admin/translations-fakejs.js:481 +#: static/admin/translations-fakejs.js:445 msgid "" "In order to increase your access privileges, please contact your local UDS " "administrator." msgstr "要增加访问权限,请与当地的UDS管理员联系。" -#: static/admin/translations-fakejs.js:482 +#: static/admin/translations-fakejs.js:446 msgid "Thank you." msgstr "谢谢。" -#: static/admin/translations-fakejs.js:483 +#: static/admin/translations-fakejs.js:447 msgid "UDS Configuration" msgstr "UDS配置" -#: static/admin/translations-fakejs.js:485 +#: static/admin/translations-fakejs.js:449 msgid "New image for" msgstr "的新图片" -#: static/admin/translations-fakejs.js:486 +#: static/admin/translations-fakejs.js:450 msgid "Edit for" msgstr "编辑为" -#: static/admin/translations-fakejs.js:487 +#: static/admin/translations-fakejs.js:451 msgid "Image name" msgstr "图像名称" -#: static/admin/translations-fakejs.js:488 +#: static/admin/translations-fakejs.js:452 msgid "Image (click to change)" msgstr "图片(点击更改)" -#: static/admin/translations-fakejs.js:489 +#: static/admin/translations-fakejs.js:453 msgid "For optimal results, use " msgstr "为获得最佳效果,请使用" -#: static/admin/translations-fakejs.js:490 +#: static/admin/translations-fakejs.js:454 msgid "The image will be resized on upload to" msgstr "图片将在上传时调整大小" +#: static/admin/translations-fakejs.js:466 +msgid "Edit group" +msgstr "编辑组" + +#: static/admin/translations-fakejs.js:467 +msgid "New group" +msgstr "新组" + +#: static/admin/translations-fakejs.js:468 +msgid "Meta group name" +msgstr "元组名称" + +#: static/admin/translations-fakejs.js:473 +msgid "Service Pools" +msgstr "服务池" + +#: static/admin/translations-fakejs.js:474 +msgid "Match mode" +msgstr "比赛模式" + +#: static/admin/translations-fakejs.js:475 +msgid "Selected Groups" +msgstr "选定的团体" + +#: static/admin/translations-fakejs.js:478 +msgid "Edit user" +msgstr "编辑用户" + +#: static/admin/translations-fakejs.js:479 +msgid "New user" +msgstr "新用户" + +#: static/admin/translations-fakejs.js:480 +msgid "Real name" +msgstr "真正的名字" + +#: static/admin/translations-fakejs.js:486 +msgid "Role" +msgstr "角色" + +#: static/admin/translations-fakejs.js:487 +msgid "Admin" +msgstr "管理员" + +#: static/admin/translations-fakejs.js:488 +msgid "Staff member" +msgstr "工作人员" + +#: static/admin/translations-fakejs.js:496 +msgid "Assigned Services" +msgstr "指定服务" + #: static/modern/main-es5.js:1 msgid "Error communicating with your service. Please, retry again." msgstr "与您的服务通信时出错。请重试。" @@ -1585,7 +1596,8 @@ msgstr "您的连接正在准备中。准备就绪后,它将在新窗口中打 msgid "Launching service" msgstr "启动服务" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 +#: static/modern/translations-fakejs.js:25 msgid "Errors found" msgstr "发现错误" @@ -1625,18 +1637,14 @@ msgstr "服务重置" msgid "Are you sure?" msgstr "你确定吗?" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:23 msgid "Warning" msgstr "警告" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:25 +#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:24 msgid "Service is in maintenance and cannot be executed" msgstr "服务处于维护状态,无法执行" -#: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:22 -msgid "Invalid error string" -msgstr "错误字符串无效" - #: static/modern/main-es5.js:1 static/modern/translations-fakejs.js:26 msgid "We use cookies to track usage and preferences" msgstr "我们使用cookie来跟踪使用情况和偏好" @@ -1777,3 +1785,15 @@ msgstr "密码" #: static/modern/translations-fakejs.js:73 msgid "Login" msgstr "登录" + +#: static/modern/translations-fakejs.js:74 +msgid "Login Verification" +msgstr "登录验证" + +#: static/modern/translations-fakejs.js:75 +msgid "Remember Me" +msgstr "记得我" + +#: static/modern/translations-fakejs.js:76 +msgid "Submit" +msgstr "提交" diff --git a/server/src/uds/mfas/SMS/mfa.py b/server/src/uds/mfas/SMS/mfa.py index 5951c11d..54d6e07c 100644 --- a/server/src/uds/mfas/SMS/mfa.py +++ b/server/src/uds/mfas/SMS/mfa.py @@ -31,6 +31,7 @@ class SMSMFA(mfas.MFA): '* {code} - the code to send\n' '* {phone/+phone} - the phone number\n' '* {username} - the username\n' + '* {justUsername} - the username without @....' ), required=True, tab=_('HTTP Server'), @@ -85,7 +86,7 @@ class SMSMFA(mfas.MFA): '* {code} - the code to send\n' '* {phone/+phone} - the phone number\n' '* {username} - the username\n' - '* {justUsername} - the username without @....\n' + '* {justUsername} - the username without @....' ), required=False, tab=_('HTTP Server'), @@ -205,7 +206,8 @@ class SMSMFA(mfas.MFA): ) if self.smsResponseErrorAction.value == '1': raise Exception('SMS response error') - return mfas.MFA.RESULT.ALLOWED + else: + return mfas.MFA.RESULT.ALLOWED return mfas.MFA.RESULT.OK def sendSMS_GET(self, userId: str, username: str, url: str) -> mfas.MFA.RESULT: diff --git a/server/src/uds/services/PhysicalMachines/service_multi.py b/server/src/uds/services/PhysicalMachines/service_multi.py index 0f6be0ce..18028407 100644 --- a/server/src/uds/services/PhysicalMachines/service_multi.py +++ b/server/src/uds/services/PhysicalMachines/service_multi.py @@ -59,7 +59,7 @@ class IPMachinesService(IPServiceBase): token = gui.TextField( order=1, label=_('Service Token'), - length=16, + length=64, tooltip=_( 'Service token that will be used by actors to communicate with service. Leave empty for persistent assignation.' ),