#, fuzzy msgid "" msgstr "" "Project-Id-Version: horizon 24.1.0.dev24\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2024-04-23 22:35+0000\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ../../../docstring of openstack_auth.utils.LOG:5 msgid "" "Calling \"patch_middleware_get_user\" is done in our custom middleware at " "\"openstack_auth.middleware\" to monkeypatch the code in before it is needed." "" msgstr "" #: ../../../docstring of openstack_auth.utils.LOG:1 msgid "" "We need the request object to get the user, so we'll slightly modify the " "existing django.contrib.auth.get_user method. To do so we update the auth " "middleware to point to our overridden method." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Panel:1 of msgid "A base class for defining Horizon dashboard panels." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard:1 of msgid "A base class for defining Horizon dashboards." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.PanelGroup:1 of msgid "A container for a set of :class:`~horizon.Panel` classes." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.PanelGroup:17 of msgid "" "A list of panel module names which should be contained within this grouping." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard:60 of msgid "" "A list of permission names, all of which a user must possess in order to " "access any panel registered with this dashboard. This attribute is combined " "cumulatively with any permissions required on individual :class:`~horizon." "Panel` classes." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Panel:20 of msgid "" "A list of permission names, all of which a user must possess in order to " "access any view associated with this panel. This attribute is combined " "cumulatively with any permissions required on the ``Dashboard`` class with " "which it is registered." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard:16 of msgid "" "A unique \"short name\" for the dashboard. The slug is used as a component " "of the URL path for the dashboard. Default: ``''``." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Panel:15 of msgid "" "A unique \"short name\" for the panel. The slug is used as a component of " "the URL path for the panel. Default: ``''``." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.PanelGroup:8 of msgid "A unique string to identify this panel group. Required." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.PanelGroup:12 of msgid "" "A user-friendly name which will be used as the group heading in places such " "as the navigation. Default: ``None``." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Panel:3 of msgid "" "All Horizon dashboard panels should extend from this class. It provides the " "appropriate hooks for automatically constructing URLconfs, and providing " "permission-based access control." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard:3 of msgid "" "All Horizon dashboards should extend from this base class. It provides the " "appropriate hooks for automatic discovery of :class:`~horizon.Panel` " "modules, automatically constructing URLconfs, and providing permission-based " "access control." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Site.get_user_home:7 of msgid "" "An alternative function can be supplied to customize this behavior by " "specifying a either a URL or a function which returns a URL via the " "``\"user_home\"`` key in ``HORIZON_CONFIG``. Each of these would be valid::" msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Site.get_dashboards:7 of msgid "" "Any remaining :class:`~horizon.Dashboard` classes registered with Horizon " "but not listed in ``HORIZON_CONFIG['dashboards']`` will be appended to the " "end of the list alphabetically." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard:34 of msgid "" "Automatically generated navigation will use the order of the modules in this " "attribute." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard:79 of msgid "" "Boolean value to determine whether this dashboard can be viewed without " "being logged in. Defaults to ``False``." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard.allowed:3 of msgid "" "Checks for access to any panels in the dashboard and of the dashboard itself." "" msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard.allowed:1 of msgid "Checks for role based access for this dashboard." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard:37 of msgid "Default: ``[]``." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Site.get_default_dashboard:3 #: of msgid "" "If ``\"default_dashboard\"`` is specified in ``HORIZON_CONFIG`` then that " "dashboard will be returned. If not, the first dashboard returned by :func:" "`~horizon.get_dashboards` will be returned." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard:67 of msgid "" "Optional path to a URLconf of additional views for this dashboard which are " "not connected to specific panels. Default: ``None``." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Site.get_dashboards:3 of msgid "" "Orders dashboards according to the ``\"dashboards\"`` key in " "``HORIZON_CONFIG`` or else returns all registered dashboards in alphabetical " "order." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard.get_panels:3 of msgid "Panel grouping information is not included." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard:48 of msgid "" "Panel modules must be listed in ``panels`` in order to be discovered by the " "automatic registration mechanism." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Panel:27 of msgid "" "Path to a URLconf of views for this panel using dotted Python notation. If " "no value is specified, a file called ``urls.py`` living in the same package " "as the ``panel.py`` file is used. Default: ``None``." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Site.register:1 of msgid "Registers a :class:`~horizon.Dashboard` with Horizon." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard.register:1 of msgid "Registers a :class:`~horizon.Panel` with this dashboard." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard.get_panel_group:3 #: of msgid "Returns None if not registered." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Site.get_dashboards:1 of msgid "Returns an ordered tuple of :class:`~horizon.Dashboard` modules." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard.get_panel:1 of msgid "Returns the Panel instance registered with this dashboard." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard.get_panels:1 of msgid "Returns the Panel instances registered with this dashboard in order." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Site.get_default_dashboard:1 #: of msgid "Returns the default :class:`~horizon.Dashboard` instance." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Site.get_absolute_url:1 of msgid "Returns the default URL for Horizon's URLconf." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Site.get_user_home:1 of msgid "Returns the default URL for a particular user." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard.get_absolute_url:1 #: of msgid "Returns the default URL for this dashboard." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Panel.get_absolute_url:1 of msgid "Returns the default URL for this panel." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Site.get_dashboard:1 of msgid "Returns the specified :class:`~horizon.Dashboard` instance." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard.get_panel_group:1 #: of msgid "Returns the specified :class:~horizon.PanelGroup." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Panel:41 of msgid "" "The ``name`` argument for the URL pattern which corresponds to the index " "view for this ``Panel``. This is the view that :meth:`.Panel." "get_absolute_url` will attempt to reverse." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard:72 of msgid "" "The ``nav`` attribute can be either a boolean value or a callable which " "accepts a ``RequestContext`` object as a single argument to control whether " "or not this dashboard should appear in automatically-generated navigation. " "Default: ``True``." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Panel:34 of msgid "" "The ``nav`` attribute can be either a boolean value or a callable which " "accepts a ``RequestContext`` object as a single argument to control whether " "or not this panel should appear in automatically-generated navigation. " "Default: ``True``." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard:21 of msgid "" "The ``panels`` attribute can be either a flat list containing the name of " "each panel **module** which should be loaded as part of this dashboard, or " "a list of :class:`~horizon.PanelGroup` classes which define groups of panels " "as in the following example::" msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard.get_absolute_url:3 #: of msgid "" "The default URL is defined as the URL pattern with ``name=\"index\"`` in the " "URLconf for the :class:`~horizon.Panel` specified by :attr:`~horizon." "Dashboard.default_panel`." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Panel.get_absolute_url:3 of msgid "" "The default URL is defined as the URL pattern with ``name=\"index\"`` in the " "URLconf for this panel." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Site.get_absolute_url:3 of msgid "" "The default URL is determined by calling :meth:`~horizon.Dashboard." "get_absolute_url` on the :class:`~horizon.Dashboard` instance returned by :" "meth:`~horizon.get_default_dashboard`." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard:10 of msgid "" "The name of the dashboard. This will be displayed in the auto-generated " "navigation and various other places. Default: ``''``." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard:53 of msgid "" "The name of the panel which should be treated as the default panel for the " "dashboard, i.e. when you visit the root URL for this dashboard, that's the " "panel that is displayed. Default: ``None``." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Panel:9 of msgid "" "The name of the panel. This will be displayed in the auto-generated " "navigation and various other places. Default: ``''``." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard:41 of msgid "" "The values for this attribute should not correspond to the :attr:`~.Panel." "name` attributes of the ``Panel`` classes. They should be the names of the " "Python modules in which the ``panel.py`` files live. This is used for the " "automatic loading and registration of ``Panel`` classes much like Django's " "``ModelAdmin`` machinery." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Site.get_user_home:17 of msgid "" "This can be useful if the default dashboard may not be accessible to all " "users. When user_home is missing from HORIZON_CONFIG, it will default to the " "settings.LOGIN_REDIRECT_URL value." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Site.get_user_home:3 of msgid "" "This method can be used to customize where a user is sent when they log in, " "etc. By default it returns the value of :meth:`get_absolute_url`." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard.allowed:6 of msgid "" "This method should be overridden to return the result of any policy checks " "required for the user to access this dashboard when more complex checks are " "required." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Panel:47 of msgid "" "This optional static method can be used to specify conditions that need to " "be satisfied to load this panel. Unlike ``permissions`` and ``allowed`` this " "method is intended to handle settings based conditions rather than user " "based permission and policy checks. The return value is boolean. If the " "method returns ``True``, then the panel will be registered and available to " "user (if ``permissions`` and ``allowed`` runtime checks are also satisfied). " "If the method returns ``False``, then the panel will not be registered and " "will not be available via normal navigation or direct URL access." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Site.unregister:1 of msgid "Unregisters a :class:`~horizon.Dashboard` from Horizon." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.Dashboard.unregister:1 of msgid "Unregisters a :class:`~horizon.Panel` from this dashboard." msgstr "" #: ../../../horizon/base.py:docstring horizon.base.PanelGroup:3 of msgid "" "When iterated, it will yield each of the ``Panel`` instances it contains." msgstr "" #: ../../../horizon/context_processors.py:docstring #: horizon.context_processors:1 of msgid "Context processors used by Horizon." msgstr "" #: ../../../horizon/context_processors.py:docstring #: horizon.context_processors.horizon:9 of msgid "" "Don't put API calls in context processors; they will be called once for each " "template/template fragment which takes context that is used to render the " "complete output." msgstr "" #: ../../../horizon/context_processors.py:docstring #: horizon.context_processors.horizon:3 of msgid "" "It adds the Horizon config to the context as well as setting the names " "``True`` and ``False`` in the context to their boolean equivalents for " "convenience." msgstr "" #: ../../../horizon/context_processors.py:docstring #: horizon.context_processors.horizon:1 of msgid "The main Horizon context processor. Required for Horizon to function." msgstr "" #: ../../../horizon/decorators.py:docstring #: horizon.decorators.require_component_access:3 of msgid ":param component containing the view (panel or dashboard)." msgstr "" #: ../../../horizon/decorators.py:docstring horizon.decorators.require_perms:3 #: of msgid "" "A tuple of permission names, all of which the request user must possess in " "order access the decorated view." msgstr "" #: ../../../horizon/decorators.py:docstring horizon.decorators.require_perms:1 #: of msgid "Enforces permission-based access controls." msgstr "" #: ../../../horizon/decorators.py:docstring horizon.decorators.require_perms:6 #: of msgid "Example usage::" msgstr "" #: ../../../horizon/decorators.py:docstring horizon.decorators:1 of msgid "General-purpose decorators for use with Horizon." msgstr "" #: ../../../horizon/decorators.py:docstring #: ../../../openstack_auth/forms.py:docstring #: ../../../openstack_auth/user.py:docstring #: ../../../openstack_auth/utils.py:docstring #: ../../../openstack_auth/views.py:docstring #: horizon.decorators.require_perms:0 of #: openstack_auth.forms.DummyAuth.get_headers:0 #: openstack_auth.user.User.is_token_expired:0 #: openstack_auth.utils.get_client_ip:0 openstack_auth.utils.get_websso_url:0 #: openstack_auth.utils.is_token_valid:0 #: openstack_auth.utils.store_initial_k2k_session:0 #: openstack_auth.views.logout:0 msgid "Parameters" msgstr "" #: ../../../horizon/decorators.py:docstring #: horizon.decorators.require_component_access:1 of msgid "Perform component can_access check to access the view." msgstr "" #: ../../../horizon/decorators.py:docstring horizon.decorators.require_auth:1 #: of msgid "Performs user authentication check." msgstr "" #: ../../../horizon/decorators.py:docstring horizon.decorators.require_perms:15 #: of msgid "" "Raises a :exc:`~horizon.exceptions.NotAuthorized` exception if the " "requirements are not met." msgstr "" #: ../../../horizon/decorators.py:docstring #: horizon.decorators.require_component_access:5 of msgid "" "Raises a :exc:`~horizon.exceptions.NotAuthorized` exception if the user " "cannot access the component containing the view. By example the check of " "component policy rules will be applied to its views." msgstr "" #: ../../../horizon/decorators.py:docstring horizon.decorators.require_auth:3 #: of msgid "" "Similar to Django's `login_required` decorator, except that this throws :exc:" "`~horizon.exceptions.NotAuthenticated` exception if the user is not signed-" "in." msgstr "" #: ../../../horizon/exceptions.py:docstring #: horizon.exceptions.ServiceCatalogException:1 of msgid "A requested service is not available in the ``ServiceCatalog``." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.AlreadyExists:1 #: of msgid "API resources tried to create already exists." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.handle:20 of msgid "" "All other exceptions bubble the stack as normal unless the ``ignore`` " "argument is passed in as ``True``, in which case only unrecognized errors " "are bubbled." msgstr "" #: ../../../horizon/exceptions.py:docstring #: horizon.exceptions.HorizonException:1 of msgid "Base exception class for distinguishing our own exception classes." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.handle:3 of msgid "" "Because Horizon consumes so many different APIs with completely different " "``Exception`` types, it's necessary to have a centralized place for handling " "exceptions which may be raised." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.handle:1 of msgid "Centralized error handling for Horizon." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.check_message:1 #: of msgid "Checks an exception for given keywords and raises an error if found." msgstr "" #: ../../../horizon/exceptions.py:docstring #: horizon.exceptions.HorizonReporterFilter:1 of msgid "Error report filter that's always active, even in DEBUG mode." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.MessageFailure:1 #: of msgid "Exception raised during message notification." msgstr "" #: ../../../horizon/exceptions.py:docstring #: horizon.exceptions.WorkflowValidationError:1 of msgid "Exception raised during workflow validation." msgstr "" #: ../../../horizon/exceptions.py:docstring #: horizon.exceptions.ConfigurationError:1 of msgid "Exception to be raised when invalid settings have been provided." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.WorkflowError:1 #: of msgid "Exception to be raised when something goes wrong in a workflow." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.NotAvailable:1 #: of msgid "Exception to be raised when something is not available." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.GetFileError:1 #: of msgid "Exception to be raised when the value of get_file is not expected." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.Http302:1 of msgid "Exception used to redirect at the middleware level." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.handle:7 of msgid "Exceptions are roughly divided into 3 types:" msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions:1 of msgid "" "Exceptions raised by the Horizon code and the machinery for handling them." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.BadRequest:1 of msgid "Generic error to replace all \"BadRequest\"-type API errors." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.Conflict:1 of msgid "Generic error to replace all \"Conflict\"-type API errors." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.NotFound:1 of msgid "Generic error to replace all \"Not Found\"-type API errors." msgstr "" #: ../../../horizon/exceptions.py:docstring #: horizon.exceptions.RecoverableError:1 of msgid "Generic error to replace any \"Recoverable\"-type API errors." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.handle:24 of msgid "" "If the exception is not re-raised, an appropriate wrapper exception class " "indicating the type of exception that was encountered will be returned. If " "details is None (default), take it from exception sys.exc_info. If details " "is other string, then use that string explicitly or if details is empty then " "suppress it." msgstr "" #: ../../../horizon/exceptions.py:docstring #: horizon.exceptions.WorkflowValidationError:3 of msgid "" "It is raised if required data is missing, or existing data is not valid." msgstr "" #: ../../../horizon/exceptions.py:docstring #: horizon.exceptions.HandledException:3 of msgid "" "It is used to track exceptions that have gone through :func:`horizon." "exceptions.handle` more than once." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.check_message:3 #: of msgid "" "It raises a new ``ActionError`` with the desired message if the keywords are " "found. This allows selective control over API error messages." msgstr "" #: ../../../horizon/exceptions.py:docstring #: horizon.exceptions.NotAuthenticated:1 of msgid "" "Raised when a user is trying to make requests and they are not logged in." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.NotAuthorized:3 #: of msgid "" "Raised whenever a user attempts to access a resource which they do not have " "permission-based access to (such as when failing the :func:`~horizon." "decorators.require_perms` decorator)." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.GetFileError:3 #: of msgid "" "The expected values start with https:// or http://. Otherwise this exception " "will be raised." msgstr "" #: ../../../horizon/exceptions.py:docstring #: horizon.exceptions.NotAuthenticated:3 of msgid "" "The included :class:`~horizon.middleware.HorizonMiddleware` catches " "``NotAuthenticated`` and handles it gracefully by displaying an error " "message and redirecting the user to a login page." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.NotAuthorized:7 #: of msgid "" "The included :class:`~horizon.middleware.HorizonMiddleware` catches " "``NotAuthorized`` and handles it gracefully by displaying an error message " "and redirecting the user to a login page." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.Http302:3 of msgid "" "This error class which can be raised from within a handler to cause an early " "bailout and redirect at the middleware level." msgstr "" #: ../../../horizon/exceptions.py:docstring #: horizon.exceptions.HorizonReporterFilter.is_active:1 of msgid "" "This filter is to add safety in production environments (i.e. DEBUG is " "False). If DEBUG is True then your site is not safe anyway. This hook is " "provided as a convenience to easily activate or deactivate the filter on a " "per request basis." msgstr "" #: ../../../horizon/exceptions.py:docstring #: horizon.exceptions.HandledException:1 of msgid "Used internally to track exceptions that are already handled." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.NotAuthorized:1 #: of msgid "User tries to access a resource without sufficient permissions." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.handle:11 of msgid "" "``NOT_FOUND``: Errors resulting from objects which could not be located via " "the API. These generally result in a user-facing error message, but are " "otherwise returned to the normal code flow. Optionally a redirect value may " "be passed to the error handler so users are returned to a different view " "than the one requested in addition to the error message." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.handle:17 of msgid "" "``RECOVERABLE``: Generic API errors which generate a user-facing message but " "drop directly back to the regular code flow." msgstr "" #: ../../../horizon/exceptions.py:docstring #: horizon.exceptions.ServiceCatalogException:3 of msgid "``ServiceCatalog`` is fetched from Keystone." msgstr "" #: ../../../horizon/exceptions.py:docstring horizon.exceptions.handle:9 of msgid "" "``UNAUTHORIZED``: Errors resulting from authentication or authorization " "problems. These result in being logged out and sent to the login screen." msgstr "" #: ../../../horizon/forms/base.py:docstring #: horizon.forms.base.SelfHandlingForm:1 of msgid "A base Form class which includes processing logic in its subclasses." msgstr "" #: ../../../horizon/forms/base.py:docstring horizon.forms.base.DateForm:1 of msgid "A simple form for selecting a range of time." msgstr "" #: ../../../horizon/forms/base.py:docstring #: horizon.forms.base.SelfHandlingForm.api_error:1 of msgid "Adds an error to the form's error dictionary." msgstr "" #: ../../../horizon/forms/base.py:docstring #: horizon.forms.base.SelfHandlingForm.api_error:3 of msgid "" "It can be used after validation based on problems reported via the API. This " "is useful when you wish for API errors to appear as errors on the form " "rather than using the messages framework." msgstr "" #: ../../../horizon/forms/base.py:docstring #: ../../../horizon/workflows/base.py:docstring #: ../../../openstack_auth/forms.py:docstring #: horizon.forms.base.DateForm.media:1 #: horizon.forms.base.SelfHandlingForm.media:1 horizon.workflows.Action.media:1 #: of openstack_auth.forms.Login.media:1 openstack_auth.forms.Password.media:1 #: openstack_auth.forms.TimeBasedOneTimePassword.media:1 msgid "Return all media required to render the widgets on this form." msgstr "" #: ../../../horizon/forms/base.py:docstring #: horizon.forms.base.SelfHandlingForm.set_warning:1 of msgid "Sets a warning on the form." msgstr "" #: ../../../horizon/forms/base.py:docstring #: horizon.forms.base.SelfHandlingForm.set_warning:3 of msgid "Unlike NON_FIELD_ERRORS, this doesn't fail form validation." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.SelectWidget:22 of msgid "" "A callable used to render additional HTML attributes for the option object. " "It returns a dictionary containing the html attributes and their values. For " "example, to define a title attribute for the choices::" msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.SelectWidget:17 of msgid "A callable used to render the display value from the option object." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.DynamicSelectWidget:3 of msgid "" "A subclass of the ``Select`` widget which renders extra attributes for use " "in callbacks to handle dynamic changes to the available choices." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.ChoiceInput:3 of msgid "" "An object used by ChoiceFieldRenderer that represents a single ." msgstr "" #: ../../../horizon/forms/fields.py:docstring horizon.forms.fields.IPField:22 #: of msgid "" "Boolean flag to validate subnet masks along with IP address. E.g: 10.0.0.1/" "32" msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.ThemableSelectWidget:1 of msgid "Bootstrap base select field widget." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.ThemableChoiceField:1 of msgid "Bootstrap based select field." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.ThemableCheckboxInput:1 of msgid "Checkbox widget which renders extra markup." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.DynamicChoiceField:1 of msgid "ChoiceField that make dynamically updating its elements easier." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.ChoiceInput:1 of msgid "ChoiceInput class from django 1.10.7 codebase" msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.SelectWidget:1 of msgid "Custom select widget." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.MultiIPField:1 of msgid "Extends IPField to allow comma-separated lists of addresses." msgstr "" #: ../../../horizon/forms/fields.py:docstring horizon.forms.fields.IPField:1 of msgid "Form field for entering IP/range values, with validation." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.MACAddressField:1 of msgid "Form field for entering a MAC address with validation." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.SelectWidget.build_attrs:1 of msgid "Helper function for building an attribute dictionary." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.SelectWidget:3 of msgid "" "It allows to render data-xxx attributes from choices. This widget also " "allows user to specify additional html attributes for choices." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.ThemableCheckboxInput:3 of msgid "It is used to allow a custom checkbox experience." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.ExternalUploadMeta:1 of msgid "Metaclass to process ExternalFileField fields in a specific way." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.DynamicChoiceField:3 of msgid "" "Notably, the field declaration takes an extra argument, ``add_item_link`` " "which may be a string or callable defining the URL that should be used for " "the \"add\" link associated with the field." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.DynamicSelectWidget.render:1 #: horizon.forms.fields.SelectWidget.render:1 #: horizon.forms.fields.ThemableCheckboxInput.render:1 #: horizon.forms.fields.ThemableSelectWidget.render:1 of msgid "Render the widget as an HTML string." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.ExternalUploadMeta:3 of msgid "" "Set this class as the metaclass of a form that contains ExternalFileField in " "order to process ExternalFileField fields in a specific way. A hidden " "CharField twin of FieldField is created which contains just the filename (if " "any file was selected on browser side) and a special `clean` method for " "FileField is defined which extracts just file name. This allows to avoid " "actual file upload to Django server, yet process form clean() phase as usual." " Actual file upload happens entirely on client-side." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.DynamicTypedChoiceField:1 of msgid "Simple mix of ``DynamicChoiceField`` and ``TypedChoiceField``." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.ThemableDynamicTypedChoiceField:1 of msgid "Simple mix of ``ThemableDynamicChoiceField`` & ``TypedChoiceField``." msgstr "" #: ../../../horizon/forms/fields.py:docstring horizon.forms.fields.SubWidget:3 #: of msgid "" "Some widgets are made of multiple HTML elements -- namely, RadioSelect. This " "is a class that represents the \"inner\" HTML element of a widget." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.ExternalFileField:1 of msgid "Special FileField to upload file to some external location." msgstr "" #: ../../../horizon/forms/fields.py:docstring #: horizon.forms.fields.SelectWidget:9 of msgid "" "Specifies object properties to serialize as data-xxx attribute. If passed " "('id', ), this will be rendered as: