Skip to content

Commit 0217a59

Browse files
committed
Return tuples instead of rendering in all bundled content types
1 parent b044d52 commit 0217a59

File tree

12 files changed

+17
-58
lines changed

12 files changed

+17
-58
lines changed

CHANGELOG.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,12 @@ Change log
88

99
- Added pre-commit.
1010
- Dropped compatibility guarantees with Python < 3.6, Django < 3.2.
11+
- Changed all bundled content types' ``render()`` methods to return the
12+
``(template_name, context)`` tuple instead of rendering content themselves.
13+
- The default view was changed to accept the path as a ``path`` keyword
14+
argument, not only as a positional argument.
15+
- Changed the item editor action buttons CSS to not use transitions so that the
16+
sprite buttons look as they should.
1117

1218

1319
`v1.20.0`_ (2021-03-22)

feincms/_internal.py

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,6 @@
55
"""
66

77

8-
from django.template.loader import render_to_string
9-
10-
118
__all__ = ("monkeypatch_method", "monkeypatch_property")
129

1310

@@ -41,7 +38,3 @@ def decorator(func):
4138
return func
4239

4340
return decorator
44-
45-
46-
def ct_render_to_string(template, ctx, **kwargs):
47-
return render_to_string(template, ctx, request=kwargs.get("request"))

feincms/content/contactform/models.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,6 @@
1313
from django.template.loader import render_to_string
1414
from django.utils.translation import gettext_lazy as _
1515

16-
from feincms._internal import ct_render_to_string
17-
1816

1917
class ContactForm(forms.Form):
2018
name = forms.CharField(label=_("name"))
@@ -42,7 +40,7 @@ def initialize_type(cls, form=None):
4240

4341
def process(self, request, **kwargs):
4442
if request.GET.get("_cf_thanks"):
45-
self.rendered_output = ct_render_to_string(
43+
self.rendered_output = render_to_string(
4644
"content/contactform/thanks.html", {"content": self}, request=request
4745
)
4846
return
@@ -70,7 +68,7 @@ def process(self, request, **kwargs):
7068

7169
form = self.form(initial=initial)
7270

73-
self.rendered_output = ct_render_to_string(
71+
self.rendered_output = render_to_string(
7472
"content/contactform/form.html",
7573
{"content": self, "form": form},
7674
request=request,

feincms/content/file/models.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
from django.utils.translation import gettext_lazy as _
1111

1212
from feincms import settings
13-
from feincms._internal import ct_render_to_string
1413

1514

1615
class FileContent(models.Model):
@@ -30,9 +29,7 @@ class Meta:
3029
verbose_name_plural = _("files")
3130

3231
def render(self, **kwargs):
33-
return ct_render_to_string(
32+
return (
3433
["content/file/%s.html" % self.region, "content/file/default.html"],
3534
{"content": self},
36-
request=kwargs.get("request"),
37-
context=kwargs.get("context"),
3835
)

feincms/content/filer/models.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
from django.db import models
44
from django.utils.translation import gettext_lazy as _
55

6-
from feincms._internal import ct_render_to_string
76
from feincms.admin.item_editor import FeinCMSInline
87

98

@@ -36,16 +35,14 @@ class Meta:
3635
abstract = True
3736

3837
def render(self, **kwargs):
39-
return ct_render_to_string(
38+
return (
4039
[
4140
f"content/filer/{self.file_type}_{self.type}.html",
4241
"content/filer/%s.html" % self.type,
4342
"content/filer/%s.html" % self.file_type,
4443
"content/filer/default.html",
4544
],
4645
{"content": self},
47-
request=kwargs.get("request"),
48-
context=kwargs.get("context"),
4946
)
5047

5148
class FilerFileContent(ContentWithFilerFile):

feincms/content/image/models.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
from django.utils.translation import gettext_lazy as _
1111

1212
from feincms import settings
13-
from feincms._internal import ct_render_to_string
1413
from feincms.templatetags import feincms_thumbnail
1514

1615

@@ -64,11 +63,9 @@ def render(self, **kwargs):
6463
if hasattr(self, "position"):
6564
templates.insert(0, "content/image/%s.html" % self.position)
6665

67-
return ct_render_to_string(
66+
return (
6867
templates,
6968
{"content": self},
70-
request=kwargs.get("request"),
71-
context=kwargs.get("context"),
7269
)
7370

7471
def get_image(self):

feincms/content/richtext/models.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
from django.utils.translation import gettext_lazy as _
33

44
from feincms import settings
5-
from feincms._internal import ct_render_to_string
65
from feincms.contrib.richtext import RichTextField
76

87

@@ -30,11 +29,9 @@ class Meta:
3029
verbose_name_plural = _("rich texts")
3130

3231
def render(self, **kwargs):
33-
return ct_render_to_string(
32+
return (
3433
"content/richtext/default.html",
3534
{"content": self},
36-
request=kwargs.get("request"),
37-
context=kwargs.get("context"),
3835
)
3936

4037
@classmethod

feincms/content/section/models.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
from django.utils.translation import gettext_lazy as _
66

77
from feincms import settings
8-
from feincms._internal import ct_render_to_string
98
from feincms.admin.item_editor import FeinCMSInline
109
from feincms.contrib.richtext import RichTextField
1110
from feincms.module.medialibrary.fields import MediaFileForeignKey
@@ -81,16 +80,14 @@ def render(self, **kwargs):
8180
else:
8281
mediafile_type = "nomedia"
8382

84-
return ct_render_to_string(
83+
return (
8584
[
8685
f"content/section/{mediafile_type}_{self.type}.html",
8786
"content/section/%s.html" % mediafile_type,
8887
"content/section/%s.html" % self.type,
8988
"content/section/default.html",
9089
],
9190
{"content": self},
92-
request=kwargs.get("request"),
93-
context=kwargs.get("context"),
9491
)
9592

9693
def save(self, *args, **kwargs):

feincms/content/template/models.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
from django.db import models
22
from django.utils.translation import gettext_lazy as _
33

4-
from feincms._internal import ct_render_to_string
54
from feincms.content.raw.models import RawContent # noqa
65
from feincms.content.richtext.models import RichTextContent # noqa
76

@@ -31,9 +30,7 @@ def initialize_type(cls, TEMPLATES):
3130
)
3231

3332
def render(self, **kwargs):
34-
return ct_render_to_string(
33+
return (
3534
self.template,
3635
{"content": self},
37-
request=kwargs.get("request"),
38-
context=kwargs.get("context"),
3936
)

feincms/content/video/models.py

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
from django.db import models
44
from django.utils.translation import gettext_lazy as _
55

6-
from feincms._internal import ct_render_to_string
7-
86

97
class VideoContent(models.Model):
108
"""
@@ -71,9 +69,7 @@ def ctx_for_video(self, vurl):
7169

7270
def render(self, **kwargs):
7371
ctx = self.ctx_for_video(self.video)
74-
return ct_render_to_string(
72+
return (
7573
self.get_templates(ctx["portal"]),
7674
ctx,
77-
request=kwargs.get("request"),
78-
context=kwargs.get("context"),
7975
)

0 commit comments

Comments
 (0)