Source code for cms_qe_auth.cms_plugins

from cms.models.pluginmodel import CMSPlugin
from cms.plugin_base import CMSPluginBase
from cms.plugin_pool import plugin_pool
from django.contrib.auth.forms import AuthenticationForm, UserCreationForm
from django.utils.translation import gettext_lazy as _


@plugin_pool.register_plugin
class LoginButtonPlugin(CMSPluginBase):
    """
    CMS plugin showing link to login or logout.
    """

    module = _('Auth')
    name = _('Login button')
    render_template = 'cms_qe/auth/login_button_plugin.html'
    text_enabled = True
    cache = False


[docs]@plugin_pool.register_plugin class LoginFormPlugin(CMSPluginBase): """ CMS plugin allowing the user to log into site. """ module = _('Auth') name = _('Login form') render_template = 'cms_qe/auth/login_form_plugin.html' cache = False def render(self, context: dict, instance: CMSPlugin, placeholder) -> dict: context = super().render(context, instance, placeholder) context.update({ 'form': AuthenticationForm(), }) return context
[docs]@plugin_pool.register_plugin class RegisterFormPlugin(CMSPluginBase): """ CMS plugin allowing the user to register into site. """ module = _('Auth') name = _('Register form') render_template = 'cms_qe/auth/register_plugin.html' cache = False def render(self, context: dict, instance: CMSPlugin, placeholder) -> dict: context = super().render(context, instance, placeholder) context.update({ 'form': UserCreationForm(), }) return context