only send to team emails/phones if POST /notificaiton/<type> with team api_key

uses same restriction as a service in trial mode
This commit is contained in:
Leo Hemsted
2016-06-30 13:21:35 +01:00
parent 5e0033e36d
commit 5ae7ed1acb
3 changed files with 159 additions and 57 deletions

View File

@@ -2,27 +2,27 @@ import uuid
from flask import current_app
from notifications_python_client.authentication import create_jwt_token
from app.models import ApiKey, KEY_TYPE_NORMAL
from app.dao.api_key_dao import (get_unsigned_secrets, save_model_api_key)
from app.dao.api_key_dao import save_model_api_key
from app.dao.services_dao import dao_fetch_service_by_id
def create_authorization_header(service_id=None):
def create_authorization_header(service_id=None, key_type=KEY_TYPE_NORMAL):
if service_id:
client_id = str(service_id)
secrets = get_unsigned_secrets(service_id)
secrets = ApiKey.query.filter_by(service_id=service_id, key_type=key_type).all()
if secrets:
secret = secrets[0]
secret = secrets[0].unsigned_secret
else:
service = dao_fetch_service_by_id(service_id)
data = {
'service': service,
'name': uuid.uuid4(),
'created_by': service.created_by,
'key_type': KEY_TYPE_NORMAL
'key_type': key_type
}
api_key = ApiKey(**data)
save_model_api_key(api_key)
secret = get_unsigned_secrets(service_id)[0]
secret = api_key.unsigned_secret
else:
client_id = current_app.config.get('ADMIN_CLIENT_USER_NAME')