32 lines
1.1 KiB
Python
32 lines
1.1 KiB
Python
import jingrow
|
|
from jingrow import _
|
|
from jingrow.auth import LoginManager
|
|
|
|
|
|
@jingrow.whitelist(allow_guest=True)
|
|
def login():
|
|
if not jingrow.conf.demo_username or not jingrow.conf.demo_password:
|
|
return
|
|
jingrow.local.response["redirect_to"] = "/crm"
|
|
login_manager = LoginManager()
|
|
login_manager.authenticate(jingrow.conf.demo_username, jingrow.conf.demo_password)
|
|
login_manager.post_login()
|
|
jingrow.local.response["type"] = "redirect"
|
|
jingrow.local.response["location"] = jingrow.local.response["redirect_to"]
|
|
|
|
|
|
def validate_reset_password(pg, event):
|
|
if jingrow.conf.demo_username and jingrow.session.user == jingrow.conf.demo_username:
|
|
jingrow.throw(
|
|
_("Password cannot be reset by Demo User {}").format(jingrow.bold(jingrow.conf.demo_username)),
|
|
jingrow.PermissionError,
|
|
)
|
|
|
|
|
|
def validate_user(pg, event):
|
|
if jingrow.conf.demo_username and jingrow.session.user == jingrow.conf.demo_username and pg.new_password:
|
|
jingrow.throw(
|
|
_("Password cannot be reset by Demo User {}").format(jingrow.bold(jingrow.conf.demo_username)),
|
|
jingrow.PermissionError,
|
|
)
|