##// END OF EJS Templates
feat(2fa): refactor logic arround validation/recoverycodes and workflows of configuration of 2fa...
feat(2fa): refactor logic arround validation/recoverycodes and workflows of configuration of 2fa - recovery codes are shown in 1 place only - save status about view of recovery codes - made the logic of saving states into user_data more explicit and no longer relly on hacky DB transaction logic - turn JS forms into a regular forms

File last commit:

r4343:2ba995a1 default
r5367:a11e6ff3 default
Show More
util.py
21 lines | 513 B | text/x-python | PythonLexer
"""
Safe quoting method
"""
from rhodecode.lib.dbmigrate.migrate.changeset import SQLA_10
def fk_column_names(constraint):
if SQLA_10:
return [
constraint.columns[key].name for key in constraint.column_keys]
else:
return [
element.parent.name for element in constraint.elements]
def safe_quote(obj):
# this is the SQLA 0.9 approach
if hasattr(obj, 'name') and hasattr(obj.name, 'quote'):
return obj.name.quote
else:
return obj.quote