This commit is contained in:
2025-01-21 18:46:15 +08:00
parent a0b0082b76
commit c5f0f4bf46
4 changed files with 62 additions and 2 deletions
+35 -2
View File
@@ -1,9 +1,10 @@
from flask import render_template, request, redirect, url_for
from flask_login import login_user, login_required, logout_user, current_user
from app import app, db, bcrypt, login_manager
from models import User, Listing, Booking, Image
from models import User, Listing, Booking, Image, Document
from datetime import datetime
from utils import generate_password, send_email
from utils import generate_password, send_email
import os
@login_manager.user_loader
def load_user(user_id):
@@ -49,6 +50,38 @@ def register():
return redirect(url_for('dashboard'))
return render_template('register.html')
@app.route('/upload-document', methods=['GET', 'POST'])
@login_required
def upload_document():
document = Document.query.filter_by(user_id=current_user.id).first()
if document:
if not document.verified:
return render_template('upload_document.html', message="Your document is under verification.")
return render_template('upload_document.html', message="Your document has been verified.")
if request.method == 'POST':
file = request.files['document']
if file:
filename = file.filename
filepath = os.path.join(app.config['UPLOAD_FOLDER'], filename)
file.save(filepath)
new_document = Document(filename=filename, user_id=current_user.id)
db.session.add(new_document)
db.session.commit()
return redirect(url_for('upload_document'))
return render_template('upload_document.html', message=None)
@app.route('/verify-document/<int:document_id>', methods=['POST'])
@login_required
def verify_document(document_id):
if current_user.is_host:
document = Document.query.get_or_404(document_id)
document.verified = True
db.session.commit()
return redirect(url_for('dashboard'))
return redirect(url_for('home'))
@app.route('/dashboard')
@login_required
def dashboard():