From e95115deb401552d122ff06c3482c264e02eaf32 Mon Sep 17 00:00:00 2001 From: mdipierro Date: Sun, 26 Jul 2015 10:18:45 -0500 Subject: [PATCH] fixed order of confirm-password field --- gluon/packages/dal | 2 +- gluon/sqlhtml.py | 3 ++- gluon/tools.py | 8 ++++++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/gluon/packages/dal b/gluon/packages/dal index 50f8dafd..62eb7767 160000 --- a/gluon/packages/dal +++ b/gluon/packages/dal @@ -1 +1 @@ -Subproject commit 50f8dafdff6f04a3f5edce7807aef89a32ff516f +Subproject commit 62eb7767db6ba88399034a785c7d35bf1f546437 diff --git a/gluon/sqlhtml.py b/gluon/sqlhtml.py index 8fc69246..3606097c 100644 --- a/gluon/sqlhtml.py +++ b/gluon/sqlhtml.py @@ -1146,7 +1146,8 @@ class SQLFORM(FORM): extra_fields = extra_fields or [] self.extra_fields = {} for extra_field in extra_fields: - self.fields.append(extra_field.name) + if not extra_field.name in self.fields: + self.fields.append(extra_field.name) self.extra_fields[extra_field.name] = extra_field extra_field.db = table._db extra_field.table = table diff --git a/gluon/tools.py b/gluon/tools.py index 9d90b9a5..92d49cd1 100644 --- a/gluon/tools.py +++ b/gluon/tools.py @@ -2894,14 +2894,18 @@ class Auth(object): passfield = self.settings.password_field formstyle = self.settings.formstyle - if self.settings.register_verify_password: + if self.settings.register_verify_password: + if self.settings.register_fields == None: + self.settings.register_fields = [f.name for f in table_user if f.writable] + k = self.settings.register_fields.index("password") + self.settings.register_fields.insert(k+1, "password_two") extra_fields = [ Field("password_two", "password", requires=IS_EQUAL_TO( request.post_vars.get(passfield, None), error_message=self.messages.mismatched_password), label=current.T("Confirm Password"))] else: - extra_fields = [] + extra_fields = [] form = SQLFORM(table_user, fields=self.settings.register_fields, hidden=dict(_next=next),