Skip to content

Commit

Permalink
Django 4+ compatibility improved
Browse files Browse the repository at this point in the history
  • Loading branch information
idlesign committed Nov 27, 2022
1 parent a7aa5b3 commit d9bdeb6
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 2 deletions.
5 changes: 5 additions & 0 deletions CHANGELOG
Expand Up @@ -2,6 +2,11 @@ django-sitegate changelog
=========================


Unreleased
----------
* Django 4+ compatibility improved.


v1.3.2 [2021-11-03]
-------------------
* Remote auth. Signup now fires signals.
Expand Down
13 changes: 11 additions & 2 deletions sitegate/flows_base.py
@@ -1,12 +1,14 @@
from pathlib import PurePath
from typing import Optional, Any, Type

from django import forms
from django import forms, VERSION
from django.contrib.auth import authenticate, login
from django.forms import ModelForm
from django.http import HttpRequest, HttpResponse
from etc.toolbox import set_form_widgets_attrs

DJANGO_POST4 = VERSION[0] >= 4


class FlowsBase:
"""Base class for signup and sign in flows."""
Expand Down Expand Up @@ -150,7 +152,14 @@ def get_requested_form(self, request: HttpRequest) -> ModelForm:
form.fields[flow_key] = forms.CharField(required=True, initial=flow_name, widget=forms.HiddenInput)
form.flow_enabled = flow_enabled
form.flow_disabled_text = self.disabled_text
form.template_name = PurePath(template).stem

template_name = PurePath(template).stem

if DJANGO_POST4:
form.renderer.form_template_name = template_name

else:
form.template_name = template_name

return form

Expand Down

0 comments on commit d9bdeb6

Please sign in to comment.