Merge branch 'master' into add_proxy_header_check

This commit is contained in:
Athanasios Voutsadakis
2017-11-16 11:09:32 +00:00
19 changed files with 239 additions and 106 deletions

View File

@@ -7,7 +7,6 @@ import itertools
import ago
from itsdangerous import BadSignature
from flask import (
Flask,
session,
render_template,
make_response,
@@ -37,6 +36,7 @@ from werkzeug.exceptions import abort
from werkzeug.local import LocalProxy
from app import proxy_fix
from app.config import configs
from app.asset_fingerprinter import AssetFingerprinter
from app.its_dangerous_session import ItsdangerousSessionInterface
from app.notify_client.service_api_client import ServiceAPIClient
@@ -54,8 +54,8 @@ from app.notify_client.models import AnonymousUser
from app.notify_client.letter_jobs_client import LetterJobsClient
from app.notify_client.inbound_number_client import InboundNumberClient
from app.notify_client.billing_api_client import BillingAPIClient
from app.commands import setup_commands
from app.utils import get_cdn_domain
from app.utils import gmt_timezones
login_manager = LoginManager()
@@ -82,10 +82,8 @@ billing_api_client = BillingAPIClient()
current_service = LocalProxy(partial(_lookup_req_object, 'service'))
def create_app():
from app.config import configs
application = Flask(__name__)
def create_app(application):
setup_commands(application)
notify_environment = os.environ['NOTIFY_ENVIRONMENT']
@@ -128,40 +126,12 @@ def create_app():
application.session_interface = ItsdangerousSessionInterface()
application.add_template_filter(format_datetime)
application.add_template_filter(format_datetime_24h)
application.add_template_filter(format_datetime_normal)
application.add_template_filter(format_datetime_short)
application.add_template_filter(format_time)
application.add_template_filter(valid_phone_number)
application.add_template_filter(linkable_name)
application.add_template_filter(format_date)
application.add_template_filter(format_date_normal)
application.add_template_filter(format_date_short)
application.add_template_filter(format_datetime_relative)
application.add_template_filter(format_delta)
application.add_template_filter(format_notification_status)
application.add_template_filter(format_notification_status_as_time)
application.add_template_filter(format_notification_status_as_field_status)
application.add_template_filter(format_notification_status_as_url)
application.add_template_filter(formatted_list)
application.add_template_filter(nl2br)
application.add_template_filter(format_phone_number_human_readable)
application.after_request(useful_headers_after_request)
application.after_request(save_service_after_request)
application.before_request(load_service_before_request)
@application.context_processor
def _attach_current_service():
return {'current_service': current_service}
add_template_filters(application)
register_errorhandlers(application)
setup_event_handlers()
return application
def init_csrf(application):
csrf.init_app(application)
@@ -185,6 +155,13 @@ def init_csrf(application):
def init_app(application):
application.after_request(useful_headers_after_request)
application.after_request(save_service_after_request)
application.before_request(load_service_before_request)
@application.context_processor
def _attach_current_service():
return {'current_service': current_service}
application.before_request(request_helper.check_proxy_header_before_request)
@@ -522,3 +499,28 @@ def setup_event_handlers():
from app.event_handlers import on_user_logged_in
user_logged_in.connect(on_user_logged_in)
def add_template_filters(application):
for fn in [
format_datetime,
format_datetime_24h,
format_datetime_normal,
format_datetime_short,
format_time,
valid_phone_number,
linkable_name,
format_date,
format_date_normal,
format_date_short,
format_datetime_relative,
format_delta,
format_notification_status,
format_notification_status_as_time,
format_notification_status_as_field_status,
format_notification_status_as_url,
formatted_list,
nl2br,
format_phone_number_human_readable,
]:
application.add_template_filter(fn)