Skip to content

Commit ad461e5

Browse files
committed
Updates and fixes
1 parent 931b6b8 commit ad461e5

18 files changed

+221
-125
lines changed

.editorconfig

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# top-most EditorConfig file
2+
root = true
3+
4+
[*]
5+
end_of_line = lf
6+
insert_final_newline = true
7+
charset = utf-8
8+
trim_trailing_whitespace = true
9+
indent_style = space
10+
indent_size = 2
11+
12+
[*.py]
13+
indent_size = 4

.pre-commit-config.yaml

+49
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
exclude: ".yarn/|yarn.lock"
2+
repos:
3+
- repo: https://github.com/pre-commit/pre-commit-hooks
4+
rev: v4.3.0
5+
hooks:
6+
- id: check-added-large-files
7+
- id: check-merge-conflict
8+
- id: end-of-file-fixer
9+
- id: trailing-whitespace
10+
- id: file-contents-sorter
11+
files: requirements-to-freeze.txt
12+
- repo: local
13+
hooks:
14+
- id: django-check
15+
name: django check
16+
entry: venv/bin/python manage.py check
17+
pass_filenames: false
18+
language: system
19+
always_run: true
20+
- repo: https://github.com/asottile/pyupgrade
21+
rev: v3.1.0
22+
hooks:
23+
- id: pyupgrade
24+
args: [--py39-plus]
25+
- repo: https://github.com/adamchainz/django-upgrade
26+
rev: 1.11.0
27+
hooks:
28+
- id: django-upgrade
29+
args: [--target-version, "3.2"]
30+
- repo: https://github.com/MarcoGorelli/absolufy-imports
31+
rev: v0.3.1
32+
hooks:
33+
- id: absolufy-imports
34+
- repo: https://github.com/pycqa/isort
35+
rev: 5.10.1
36+
hooks:
37+
- id: isort
38+
args: [--profile=black, --lines-after-imports=2, --combine-as]
39+
- repo: https://github.com/psf/black
40+
rev: 22.10.0
41+
hooks:
42+
- id: black
43+
- repo: https://github.com/pycqa/flake8
44+
rev: 5.0.4
45+
hooks:
46+
- id: flake8
47+
args: ["--ignore=E203,E501,W503"]
48+
additional_dependencies:
49+
- flake8-bugbear

feincms_handlers/__init__.py

+1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
1515
"""
1616

17+
1718
class NotMyJob(Exception):
1819
def __init__(self, author):
1920
self.author = author

feincms_handlers/handlers.py

+19-12
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,25 @@
11
from django.http import Http404, HttpResponse
22
from feincms.utils import get_object
3+
from feincms.views import Handler as FeinCMSHandler
4+
35
from feincms_handlers import NotMyJob
6+
from feincms_handlers.views.cbv.ajax import AjaxHandler
7+
from feincms_handlers.views.cbv.autolanguage import AutoLanguageHandler
8+
from feincms_handlers.views.cbv.htmlsnapshot import HtmlSnapshotHandler
49

5-
from .views.cbv.ajax import AjaxHandler
6-
from .views.cbv.autolanguage import AutoLanguageHandler
7-
from feincms.views import Handler as FeinCMSHandler
8-
from .views.cbv.htmlsnapshot import HtmlSnapshotHandler
910

10-
__all__ = ['AjaxHandler', 'AutoLanguageHandler', 'FeinCMSHandler',
11-
'HtmlSnapshotHandler', 'MasterHandler']
11+
__all__ = [
12+
"AjaxHandler",
13+
"AutoLanguageHandler",
14+
"FeinCMSHandler",
15+
"HtmlSnapshotHandler",
16+
"MasterHandler",
17+
]
1218

1319

14-
class MasterHandler(object):
15-
""" This is where you register your handlers. They will be called one after the
16-
other until one returns a response.
20+
class MasterHandler:
21+
"""This is where you register your handlers. They will be called one after the
22+
other until one returns a response.
1723
"""
1824

1925
def __init__(self, handlers=None, *args, **kwargs):
@@ -24,8 +30,10 @@ def __init__(self, handlers=None, *args, **kwargs):
2430
self.__qualname__ = "feincms_handlers.handlers.MasterHandler"
2531

2632
def _register_handler(self, handler):
27-
if not hasattr(handler, 'as_view'):
28-
raise AttributeError('Handler %s has no method "as_view". Needs one.' % handler)
33+
if not hasattr(handler, "as_view"):
34+
raise AttributeError(
35+
'Handler %s has no method "as_view". Needs one.' % handler
36+
)
2937
self.handlers.append(handler.as_view())
3038

3139
def register(self, handlers):
@@ -38,7 +46,6 @@ def register(self, handlers):
3846
def unregister(self, handler):
3947
self.handlers.remove(handler)
4048

41-
4249
def __call__(self, request, path=None):
4350
for handler in self.handlers:
4451
try:

feincms_handlers/legacy/__init__.py

+10-7
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,13 @@
1818

1919
from django.http import Http404
2020
from feincms.utils import get_object
21+
2122
from feincms_handlers import NotMyJob
2223

23-
class MasterHandler(object):
24-
""" This is where you register your handlers. They will be called one after the
25-
other until one returns a response.
24+
25+
class MasterHandler:
26+
"""This is where you register your handlers. They will be called one after the
27+
other until one returns a response.
2628
"""
2729

2830
def __init__(self, handlers=None, *args, **kwargs):
@@ -31,9 +33,11 @@ def __init__(self, handlers=None, *args, **kwargs):
3133
self.register(handlers)
3234

3335
def _register_handler(self, handler):
34-
handler = get_object(handler) # parse strings
35-
if not hasattr(handler, '__call__'):
36-
raise AttributeError('Handler %s has no method "__call__". Needs one.' % handler)
36+
handler = get_object(handler) # parse strings
37+
if not hasattr(handler, "__call__"):
38+
raise AttributeError(
39+
'Handler %s has no method "__call__". Needs one.' % handler
40+
)
3741
self.handlers.append(handler)
3842

3943
def register(self, handlers):
@@ -46,7 +50,6 @@ def register(self, handlers):
4650
def unregister(self, handler):
4751
self.handlers.remove(handler)
4852

49-
5053
def __call__(self, request, path=None):
5154
for handler in self.handlers:
5255
try:

feincms_handlers/legacy/feincms_print.py

+15-11
Original file line numberDiff line numberDiff line change
@@ -3,27 +3,31 @@
33
from django.template.context import RequestContext
44
from feincms.module.page.models import Page
55
from feincms.views.base import Handler
6+
67
from feincms_handlers import NotMyJob
78

9+
810
class PrintHandler(Handler):
9-
""" This handler handles print previews.
10-
It requires a print_... template for every FeinCMS base template.
11+
"""This handler handles print previews.
12+
It requires a print_... template for every FeinCMS base template.
1113
"""
1214

1315
def __call__(self, request, path=None):
14-
if not request.GET.get('print', False):
16+
if not request.GET.get("print", False):
1517
raise NotMyJob(self)
16-
return self.build_response(request,
17-
Page.objects.best_match_for_path(path or request.path, raise404=True))
18-
18+
return self.build_response(
19+
request,
20+
Page.objects.best_match_for_path(path or request.path, raise404=True),
21+
)
1922

2023
def render(self, request, page):
2124
context = request._feincms_extra_context
22-
print_template = 'print_%s' % page.template.path
23-
context['feincms_page'] = page
25+
print_template = "print_%s" % page.template.path
26+
context["feincms_page"] = page
2427

25-
return render_to_response(print_template,
26-
context_instance=RequestContext(request, context))
28+
return render_to_response(
29+
print_template, context_instance=RequestContext(request, context)
30+
)
2731

2832

29-
handler = PrintHandler()
33+
handler = PrintHandler()
+11-8
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,25 @@
1-
from feincms.views.base import Handler
2-
from django.shortcuts import get_object_or_404, redirect
31
from django.http import Http404
2+
from django.shortcuts import get_object_or_404, redirect
43
from feincms.module.page.models import Page
4+
from feincms.views.base import Handler
5+
56
from feincms_handlers import NotMyJob
67

8+
79
class PageIdFallbackHandler(Handler):
8-
""" This Handler is used if you have static links within your content.
9-
You can append a get parameter 'p' with the page id. The CMS will
10-
find the page even if it has been moved.
10+
"""This Handler is used if you have static links within your content.
11+
You can append a get parameter 'p' with the page id. The CMS will
12+
find the page even if it has been moved.
1113
"""
1214

1315
def __call__(self, request, path=None):
14-
if not request.GET.get('p', None):
16+
if not request.GET.get("p", None):
1517
raise NotMyJob(self)
1618
try:
17-
page = get_object_or_404(Page, pk=request.GET.get('p', None))
19+
page = get_object_or_404(Page, pk=request.GET.get("p", None))
1820
except ValueError:
1921
raise Http404
2022
return redirect(page)
2123

22-
handler = PageIdFallbackHandler()
24+
25+
handler = PageIdFallbackHandler()

feincms_handlers/legacy_urls.py

+8-4
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,17 @@
11
""" Add this to your urls.py """
22

33
from django.conf.urls.defaults import *
4-
from feincms_handlers.views.legacy import handler
54

65
# FeinCMS Handler location:
76
from feincms.views.base import handler as feincms_handler
7+
8+
from feincms_handlers.views.legacy import handler
9+
10+
811
handler.register(feincms_handler)
912

10-
urlpatterns = patterns('',
11-
url(r'^$', handler, name='feincms_home'),
12-
url(r'^(.*)/$', handler, name='feincms_handler'),
13+
urlpatterns = patterns(
14+
"",
15+
url(r"^$", handler, name="feincms_home"),
16+
url(r"^(.*)/$", handler, name="feincms_handler"),
1317
)

0 commit comments

Comments
 (0)