mirror of
https://github.com/StefBuwalda/cal_counter.git
synced 2025-10-30 03:10:00 +00:00
Introduces a change password route, form, and template, allowing authenticated users to update their password. Updates the User model with a method to set the must_change_password flag. Adjusts login and navigation logic to support the new flow and ensures users are redirected to change their password if required.
22 lines
661 B
Python
22 lines
661 B
Python
from flask_login import current_user
|
|
from flask import redirect, url_for, flash
|
|
from typing import Optional
|
|
|
|
|
|
def login_required():
|
|
if not current_user.is_authenticated:
|
|
return redirect(url_for("auth.login"))
|
|
if current_user.must_change_password:
|
|
flash("You have to change your password")
|
|
return redirect(url_for("auth.change_password"))
|
|
return
|
|
|
|
|
|
def default_return(next_page: Optional[str] = None):
|
|
return redirect(url_for("user.daily_log"))
|
|
if next_page:
|
|
return redirect(next_page)
|
|
if current_user.is_admin:
|
|
return redirect(url_for("admin.food_items"))
|
|
return redirect(url_for("dashboard"))
|