from flask import Blueprint, render_template, request, flash, jsonify
from flask_login import login_required, current_user
from .models import Note, db
import json


views = Blueprint('views', __name__)


@views.route('/', methods=['GET', 'POST'])
@login_required
def home_page():
    if request.method == 'POST':
        note = request.form.get('note')

        if len(note) < 1:
            flash('Note Too short', category='error')
        else:
            new_note = Note(user_id=current_user.id, data=note)
            db.session.add(new_note)
            db.session.commit()
            flash('Note Added', category='success')
    return render_template('home.html', user=current_user)


@views.route('/delete-note', methods=['POST'])
def delete_note():
    note = json.loads(request.data)
    noteId = note['noteId']
    note = Note.query.get(noteId)
    if note:
        if note.user_id == current_user.id:
            db.session.delete(note)
            db.session.commit()
    return jsonify({})
