29 lines
No EOL
946 B
Python
29 lines
No EOL
946 B
Python
from flask import Blueprint, jsonify, request, current_app
|
|
from utils.json_crud import load_json, save_json, add_entry, delete_entry, update_entry
|
|
from utils.data_loader import load_data
|
|
from models.contact_model import ContactModel
|
|
import os
|
|
|
|
DATA_DIR = os.path.join(os.path.dirname(__file__), '../data')
|
|
CONTACTS_FILE = os.path.join(DATA_DIR, 'contact.json')
|
|
|
|
contact_bp = Blueprint('contact', __name__, url_prefix='/api/contact')
|
|
|
|
@contact_bp.route('/', methods=['GET'])
|
|
def get_contact():
|
|
contacts = load_data('contact.json')
|
|
return jsonify(contacts)
|
|
|
|
@contact_bp.route('/', methods=['POST'])
|
|
def update_contact():
|
|
key = request.headers.get('x-api-key')
|
|
if key != current_app.config['API_KEY']:
|
|
return jsonify({
|
|
"error": "Unauthorized"
|
|
}), 401
|
|
|
|
data = request.json
|
|
new_entry = ContactModel(data).to_dict()
|
|
contact = [new_entry]
|
|
save_json(CONTACTS_FILE, contact)
|
|
return new_entry |