diff options
author | Jenkins <jenkins@review.openstack.org> | 2014-09-30 08:54:30 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2014-09-30 08:54:30 +0000 |
commit | 9ad9af4b8d9471eee8ea06aa520b70ace7b14617 (patch) | |
tree | fc5471fbf5664ef9f75ddf5257a7acbe379207c5 | |
parent | dd4db98fe268934e47532992d4246c272d86125b (diff) | |
parent | a8eeed91fd58cbfa157c2ec3838d76ccf2c32985 (diff) | |
download | horizon-9ad9af4b8d9471eee8ea06aa520b70ace7b14617.tar.gz |
Merge "Allow forms to disable autofill in all browsers" into stable/icehouse2014.1.3
-rw-r--r-- | horizon/templates/horizon/common/_modal_form.html | 12 | ||||
-rw-r--r-- | openstack_dashboard/dashboards/admin/users/forms.py | 2 |
2 files changed, 12 insertions, 2 deletions
diff --git a/horizon/templates/horizon/common/_modal_form.html b/horizon/templates/horizon/common/_modal_form.html index 812b613b7..6702e2a06 100644 --- a/horizon/templates/horizon/common/_modal_form.html +++ b/horizon/templates/horizon/common/_modal_form.html @@ -12,12 +12,20 @@ <form id="{% block form_id %}{% endblock %}" ng-controller="{% block ng_controller %}DummyCtrl{% endblock %}" name="{% block form_name %}{% endblock %}" - autocomplete="{% block autocomplete %}{% endblock %}" + autocomplete="{% block autocomplete %}{% if form.no_autocomplete %}off{% endif %}{% endblock %}" class="{% block form_class %}{% endblock %}" action="{% block form_action %}{% endblock %}" method="{% block form-method %}POST{% endblock %}" {% if add_to_field %}data-add-to-field="{{ add_to_field }}"{% endif %} {% block form_attrs %}{% endblock %}>{% csrf_token %} <div class="modal-body clearfix"> + + {% comment %} + These fake fields are required to prevent Chrome v34+ from autofilling form. + {% endcomment %} + {% if form.no_autocomplete %} + <input type="text" name="fake_email" value="" style="display: none" /> + <input type="password" name="fake_password" value="" style="display: none" /> + {% endif %} {% block modal-body %} <fieldset> {% include "horizon/common/_form_fields.html" %} @@ -28,4 +36,4 @@ </form> </div> {% block modal-js %} -{% endblock %}
\ No newline at end of file +{% endblock %} diff --git a/openstack_dashboard/dashboards/admin/users/forms.py b/openstack_dashboard/dashboards/admin/users/forms.py index 722d1686f..3c868454a 100644 --- a/openstack_dashboard/dashboards/admin/users/forms.py +++ b/openstack_dashboard/dashboards/admin/users/forms.py @@ -94,6 +94,7 @@ class CreateUserForm(BaseUserForm): project = forms.DynamicChoiceField(label=_("Primary Project"), add_item_link=ADD_PROJECT_URL) role_id = forms.ChoiceField(label=_("Role")) + no_autocomplete = True def __init__(self, *args, **kwargs): roles = kwargs.pop('roles') @@ -171,6 +172,7 @@ class UpdateUserForm(BaseUserForm): widget=forms.PasswordInput(render_value=False), required=False) project = forms.ChoiceField(label=_("Primary Project")) + no_autocomplete = True def __init__(self, request, *args, **kwargs): super(UpdateUserForm, self).__init__(request, *args, **kwargs) |