Skip to content

Commit

Permalink
core: simplified keyword arguments (#67)
Browse files Browse the repository at this point in the history
  • Loading branch information
jwag956 committed May 8, 2019
1 parent b18de84 commit b4a5d91
Showing 1 changed file with 18 additions and 17 deletions.
35 changes: 18 additions & 17 deletions flask_security/core.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,8 @@
ResetPasswordForm, SendConfirmationForm
from .utils import _
from .utils import config_value as cv
from .utils import get_config, hash_data, localize_callback, send_mail,\
from .utils import get_config, hash_data, localize_callback, send_mail, \
string_types, url_for_security, verify_and_update_password, verify_hash

from .views import create_blueprint

# Convenient references
Expand Down Expand Up @@ -501,22 +500,15 @@ def __init__(self, app=None, datastore=None, register_blueprint=True,
self.app = app
self._datastore = datastore
self._register_blueprint = register_blueprint
self._kwargs = dict(login_form=None,
register_form=None,
confirm_register_form=None,
forgot_password_form=None,
reset_password_form=None,
change_password_form=None,
send_confirmation_form=None,
passwordless_login_form=None,
anonymous_user=None,
render_template=self.render_template,
send_mail=self.send_mail)
self._kwargs.update(kwargs)
self._kwargs = kwargs

self._state = None # set by init_app
if app is not None and datastore is not None:
self._state = self.init_app(app, datastore, **self._kwargs)
self._state = self.init_app(
app,
datastore,
register_blueprint=register_blueprint,
**kwargs)

def init_app(self, app, datastore=None, register_blueprint=None, **kwargs):
"""Initializes the Flask-Security extension for the specified
Expand All @@ -527,11 +519,20 @@ def init_app(self, app, datastore=None, register_blueprint=None, **kwargs):
:param register_blueprint: to register the Security blueprint or not.
"""
self.app = app

if datastore is None:
datastore = self._datastore

if register_blueprint is None:
register_blueprint = self._register_blueprint
self._kwargs.update(kwargs)

for key, value in self._kwargs.items():
kwargs.setdefault(key, value)

if 'render_template' not in kwargs:
kwargs.setdefault('render_template', self.render_template)
if 'send_mail' not in kwargs:
kwargs.setdefault('send_mail', self.send_mail)

for key, value in _default_config.items():
app.config.setdefault('SECURITY_' + key, value)
Expand All @@ -541,7 +542,7 @@ def init_app(self, app, datastore=None, register_blueprint=None, **kwargs):

identity_loaded.connect_via(app)(_on_identity_loaded)

self._state = state = _get_state(app, datastore, **self._kwargs)
self._state = state = _get_state(app, datastore, **kwargs)

if register_blueprint:
app.register_blueprint(create_blueprint(state, __name__))
Expand Down

0 comments on commit b4a5d91

Please sign in to comment.