Signin

Router and Logic for Login and Registration Pages

Functions:

bool_response(request[, success, title, ...])

Return a dynamic response page, either positive or negative

confirm_delete(request[, current_user])

Return confirmation page for user deletion

delete_singined_user(request[, ...])

Delete the current logged in user

login(request[, url, db_session])

Login Form to login the user and redirect if valid

login_for_access_token(response[, ...])

Generate token for user

pwchange(request)

Return the rendered template for the login page

pwchange_singined_user(request[, ...])

Update the password from the current logged in user

pwreset(request)

Return the rendered template for the login page

recover(request)

Return the rendered template for the login page

register(request)

Return the rendered template for the register page

register_post(request[, db_session])

Register Form to register the user and redirect if valid

signin(request[, error])

Return the rendered template for the login page

signout([token])

Logout the user and redirect to the main page

views.signin.bool_response(request: starlette.requests.Request, success: Optional[bool] = False, title: Optional[str] = 'Fehler', msg: Optional[str] = '', buttontext: Optional[str] = 'Startseite', url: Optional[str] = '/')[source]

Return a dynamic response page, either positive or negative

Parameters
  • request (Request) – the http request

  • success (Optional[bool], optional) – the success boolean. Defaults to False.

  • title (Optional[str], optional) – the title text displayed over the checkmark. Defaults to “Fehler”.

  • msg (Optional[str], optional) – the message displayed under the text. Defaults to “”.

  • buttontext (Optional[str], optional) – text displayed inside the button. Defaults to “Startseite”.

  • url (Optional[str], optional) – href to which the link button redirects. Defaults to “/”.

Returns

the http response

Return type

TemplateResponse

views.signin.confirm_delete(request: starlette.requests.Request, current_user: schemes.scheme_user.UserLogin = Depends(get_current_user))[source]

Return confirmation page for user deletion

Parameters
  • request (Request) – The Request

  • current_user (UserLogin, optional) – Current logged in User. Defaults to Depends(get_current_user).

Returns

the http response

Return type

TemplateResponse

views.signin.delete_singined_user(request: starlette.requests.Request, current_user: schemes.scheme_user.UserLogin = Depends(get_current_user), db_session: sqlalchemy.orm.session.Session = Depends(get_db))[source]

Delete the current logged in user

Parameters
  • request (Request) – The Request

  • current_user (UserLogin, optional) – Current logged in User. Defaults to Depends(get_current_user).

  • db_session (Session, optional) – Session to the Database. Defaults to Depends(get_db).

Returns

Redirect to the landingpage

Return type

RedirectResponse

async views.signin.login(request: starlette.requests.Request, url: Optional[str] = None, db_session: sqlalchemy.orm.session.Session = Depends(get_db))[source]

Login Form to login the user and redirect if valid

Parameters
  • request (Request) – the http request

  • url (Optional[str], optional) – url for redirect. Defaults to None.

  • db_session (Session, optional) – the db session. Defaults to Depends(get_db).

Returns

redirect to /signin/ or /signin/… or /main/

Return type

RedirectResponse

async views.signin.login_for_access_token(response: starlette.responses.Response, db_session: sqlalchemy.orm.session.Session = Depends(get_db), form_data: fastapi.security.oauth2.OAuth2PasswordRequestForm = Depends(NoneType))[source]

Generate token for user

Parameters
  • response (Response) – the http response

  • db_session (Session, optional) – the db session. Defaults to Depends(get_db).

  • form_data (OAuth2PasswordRequestForm, optional) – the data of the login form. Defaults to Depends().

Raises

exceptions.NotAuthorizedException – wrong login exception

Returns

access token for user

Return type

access_token

views.signin.pwchange(request: starlette.requests.Request)[source]

Return the rendered template for the login page

Parameters

request (Request) – Requerd for Template

Returns

the http response

Return type

TemplateResponse

async views.signin.pwchange_singined_user(request: starlette.requests.Request, current_user: schemes.scheme_user.UserLogin = Depends(get_current_user), db_session: sqlalchemy.orm.session.Session = Depends(get_db), token: str = Depends(OAuth2PasswordBearerWithCookie)) starlette.responses.RedirectResponse[source]

Update the password from the current logged in user

Parameters
  • request (Request) – Request that contain the Form with the Atr passwordInput

  • current_user (schemes.scheme_user.UserLogin, optional) – Current logged in User. Defaults to Depends(get_current_user).

  • db_session (sqlalchemy.orm.Session, optional) – Session to the Database. Defaults to Depends(get_db).

Returns

Redirect to the signing if success RedirectResponse: Redirect to the error if old password is not correct

Return type

RedirectResponse

views.signin.pwreset(request: starlette.requests.Request)[source]

Return the rendered template for the login page

Parameters

request (Request) – Requerd for Template

Returns

the http response

Return type

TemplateResponse

views.signin.recover(request: starlette.requests.Request)[source]

Return the rendered template for the login page

Parameters

request (Request) – Requerd for Template

Returns

the http response

Return type

TemplateResponse

views.signin.register(request: starlette.requests.Request)[source]

Return the rendered template for the register page

Parameters

request (Request) – Requerd for Template

Returns

the http response

Return type

TemplateResponse

async views.signin.register_post(request: starlette.requests.Request, db_session: sqlalchemy.orm.session.Session = Depends(get_db))[source]

Register Form to register the user and redirect if valid

Parameters
  • request (Request) – the http request

  • db_session (Session, optional) – the db session. Defaults to Depends(get_db).

Returns

redirect to /boolresp/?success=…

Return type

RedirectResponse

views.signin.signin(request: starlette.requests.Request, error: Optional[str] = '')[source]

Return the rendered template for the login page

Parameters
  • request (Request) – Requerd for Template

  • error (Optional[str], optional) – the error message. Defaults to “”.

Returns

the http response

Return type

TemplateResponse

async views.signin.signout(token: str = Depends(OAuth2PasswordBearerWithCookie))[source]

Logout the user and redirect to the main page

Parameters

token (str, optional) – the authentification token. Defaults to Depends(oauth2_scheme).

Returns

redirect to /main/

Return type

RedirectResponse