Merge pull request #1967 from misl6/master
Fixes login_bare + register_bare w/ custom login_userfield
This commit is contained in:
+3
-2
@@ -103,17 +103,18 @@ class CacheRepresenter(object):
|
|||||||
cache[field][value] = nvalue
|
cache[field][value] = nvalue
|
||||||
return nvalue
|
return nvalue
|
||||||
|
|
||||||
|
|
||||||
def safe_int(x, i=0):
|
def safe_int(x, i=0):
|
||||||
try:
|
try:
|
||||||
return int(x)
|
return int(x)
|
||||||
except ValueError:
|
except (ValueError, TypeError):
|
||||||
return i
|
return i
|
||||||
|
|
||||||
|
|
||||||
def safe_float(x):
|
def safe_float(x):
|
||||||
try:
|
try:
|
||||||
return float(x)
|
return float(x)
|
||||||
except ValueError:
|
except (ValueError, TypeError):
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+6
-2
@@ -2161,7 +2161,10 @@ class Auth(AuthAPI):
|
|||||||
user = None
|
user = None
|
||||||
checks = []
|
checks = []
|
||||||
# make a guess about who this user is
|
# make a guess about who this user is
|
||||||
for fieldname in ['registration_id', 'username', 'email']:
|
guess_fields = ['registration_id', 'username', 'email']
|
||||||
|
if self.settings.login_userfield:
|
||||||
|
guess_fields.append(self.settings.login_userfield)
|
||||||
|
for fieldname in guess_fields:
|
||||||
if fieldname in table_user.fields() and \
|
if fieldname in table_user.fields() and \
|
||||||
keys.get(fieldname, None):
|
keys.get(fieldname, None):
|
||||||
checks.append(fieldname)
|
checks.append(fieldname)
|
||||||
@@ -2255,7 +2258,8 @@ class Auth(AuthAPI):
|
|||||||
def _get_login_settings(self):
|
def _get_login_settings(self):
|
||||||
table_user = self.table_user()
|
table_user = self.table_user()
|
||||||
userfield = self.settings.login_userfield or 'username' \
|
userfield = self.settings.login_userfield or 'username' \
|
||||||
if 'username' in table_user.fields else 'email'
|
if self.settings.login_userfield or 'username' \
|
||||||
|
in table_user.fields else 'email'
|
||||||
passfield = self.settings.password_field
|
passfield = self.settings.password_field
|
||||||
return Storage({'table_user': table_user,
|
return Storage({'table_user': table_user,
|
||||||
'userfield': userfield,
|
'userfield': userfield,
|
||||||
|
|||||||
+1
-3
@@ -943,9 +943,7 @@ def console():
|
|||||||
k = len(sys.argv)
|
k = len(sys.argv)
|
||||||
sys.argv, other_args = sys.argv[:k], sys.argv[k + 1:]
|
sys.argv, other_args = sys.argv[:k], sys.argv[k + 1:]
|
||||||
(options, args) = parser.parse_args()
|
(options, args) = parser.parse_args()
|
||||||
options.args = other_args
|
options.args = [options.run] + other_args
|
||||||
if options.run:
|
|
||||||
options.args.insert(0, options.run)
|
|
||||||
|
|
||||||
copy_options = copy.deepcopy(options)
|
copy_options = copy.deepcopy(options)
|
||||||
copy_options.password = '******'
|
copy_options.password = '******'
|
||||||
|
|||||||
Reference in New Issue
Block a user