From 72ecc0dd97aeba0bbe4a0feb9a8eb8e629ea7d7d Mon Sep 17 00:00:00 2001 From: Phil Gyford Date: Tue, 23 Apr 2019 14:39:51 +0100 Subject: [PATCH 1/7] Handle failed import of django.core.urlresolvers No longer present from Django 2.0 --- wagtailcomments_xtd/wagtail_hooks.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/wagtailcomments_xtd/wagtail_hooks.py b/wagtailcomments_xtd/wagtail_hooks.py index 7c236c5..0ef3313 100644 --- a/wagtailcomments_xtd/wagtail_hooks.py +++ b/wagtailcomments_xtd/wagtail_hooks.py @@ -1,4 +1,9 @@ -from django.core import urlresolvers +try: + # urlresolvers removed in Django 2.0: + from django.core.urlresolvers import reverse +except ImportError: + # For Django 2.0+ + from django.urls import reverse from wagtailcomments_xtd import urls from wagtail.wagtailcore import hooks from django.conf.urls import include, url @@ -17,7 +22,7 @@ def register_admin_urls(): def register_styleguide_menu_item(): return MenuItem( _('Comments'), - urlresolvers.reverse('wagtailcomments_xtd_pages'), + reverse('wagtailcomments_xtd_pages'), classnames='icon icon-fa-comments-o', order=1000 ) From 74c7c9ec9fafc813457176824a30dcac3959c351 Mon Sep 17 00:00:00 2001 From: Phil Gyford Date: Tue, 23 Apr 2019 14:45:13 +0100 Subject: [PATCH 2/7] Fix broken import of wagtail Page model --- wagtailcomments_xtd/views.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wagtailcomments_xtd/views.py b/wagtailcomments_xtd/views.py index 684b65d..da2abb5 100644 --- a/wagtailcomments_xtd/views.py +++ b/wagtailcomments_xtd/views.py @@ -1,5 +1,5 @@ from django.contrib import messages -from wagtail.wagtailcore.models import Page +from wagtail.core.models import Page from django.shortcuts import redirect, render from django_comments_xtd.models import XtdComment from django.utils.translation import ugettext as _ From e69038da262ba4b0c2989c02193aac0c60ef3592 Mon Sep 17 00:00:00 2001 From: Phil Gyford Date: Tue, 23 Apr 2019 14:52:54 +0100 Subject: [PATCH 3/7] Fix broken wagtail imports in hooks --- wagtailcomments_xtd/wagtail_hooks.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wagtailcomments_xtd/wagtail_hooks.py b/wagtailcomments_xtd/wagtail_hooks.py index 0ef3313..e5c09f5 100644 --- a/wagtailcomments_xtd/wagtail_hooks.py +++ b/wagtailcomments_xtd/wagtail_hooks.py @@ -5,9 +5,9 @@ # For Django 2.0+ from django.urls import reverse from wagtailcomments_xtd import urls -from wagtail.wagtailcore import hooks +from wagtail.core import hooks from django.conf.urls import include, url -from wagtail.wagtailadmin.menu import MenuItem +from wagtail.admin.menu import MenuItem from django.utils.translation import ugettext_lazy as _ From 98936d9577993cf38aab5c08cc83e98b1cf8dbce Mon Sep 17 00:00:00 2001 From: Phil Gyford Date: Tue, 23 Apr 2019 14:59:03 +0100 Subject: [PATCH 4/7] Add back legacy wagtail imports So it should still work for those using Wagtail < 2.0 as well as those on Wagtail 2.0+ --- wagtailcomments_xtd/views.py | 6 +++++- wagtailcomments_xtd/wagtail_hooks.py | 10 ++++++++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/wagtailcomments_xtd/views.py b/wagtailcomments_xtd/views.py index da2abb5..dec839b 100644 --- a/wagtailcomments_xtd/views.py +++ b/wagtailcomments_xtd/views.py @@ -1,9 +1,13 @@ from django.contrib import messages -from wagtail.core.models import Page from django.shortcuts import redirect, render from django_comments_xtd.models import XtdComment from django.utils.translation import ugettext as _ from wagtailcomments_xtd.utils import cleaned_tree +try: + from wagtail.wagtailcore.models import Page +except ImportError: + # Wagtail 2.0+ + from wagtail.core.models import Page def pages(request): diff --git a/wagtailcomments_xtd/wagtail_hooks.py b/wagtailcomments_xtd/wagtail_hooks.py index e5c09f5..7397832 100644 --- a/wagtailcomments_xtd/wagtail_hooks.py +++ b/wagtailcomments_xtd/wagtail_hooks.py @@ -5,11 +5,17 @@ # For Django 2.0+ from django.urls import reverse from wagtailcomments_xtd import urls -from wagtail.core import hooks from django.conf.urls import include, url -from wagtail.admin.menu import MenuItem from django.utils.translation import ugettext_lazy as _ +try: + from wagtail.wagtailcore import hooks + from wagtail.wagtailadmin.menu import MenuItem +except ImportError: + # Wagtail 2.0+ + from wagtail.core import hooks + from wagtail.admin.menu import MenuItem + @hooks.register('register_admin_urls') def register_admin_urls(): From d47fcb7430b03140d1356fccd50d0e33e3c59892 Mon Sep 17 00:00:00 2001 From: Phil Gyford Date: Tue, 23 Apr 2019 15:12:55 +0100 Subject: [PATCH 5/7] Allow customising of the django-comments-xtd comment model Instead of importing `django_comments_xtd.models.XtdComment`, use the `django_comments_xtd.get_model()` method to get the model instead. --- wagtailcomments_xtd/utils.py | 5 ++++- wagtailcomments_xtd/views.py | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/wagtailcomments_xtd/utils.py b/wagtailcomments_xtd/utils.py index eed66e5..e154cf4 100644 --- a/wagtailcomments_xtd/utils.py +++ b/wagtailcomments_xtd/utils.py @@ -1,4 +1,7 @@ -from django_comments_xtd.models import XtdComment +from django_comments_xtd import get_model as get_comment_model + + +XtdComment = get_comment_model() def cleaned_tree(comments): diff --git a/wagtailcomments_xtd/views.py b/wagtailcomments_xtd/views.py index dec839b..56837dd 100644 --- a/wagtailcomments_xtd/views.py +++ b/wagtailcomments_xtd/views.py @@ -1,6 +1,6 @@ from django.contrib import messages from django.shortcuts import redirect, render -from django_comments_xtd.models import XtdComment +from django_comments_xtd import get_model as get_comment_model from django.utils.translation import ugettext as _ from wagtailcomments_xtd.utils import cleaned_tree try: @@ -10,6 +10,9 @@ from wagtail.core.models import Page +XtdComment = get_comment_model() + + def pages(request): comments = XtdComment.objects.all() pages = [] From da2d6b9799b9f008c39080cee5716d426fd66e9f Mon Sep 17 00:00:00 2001 From: Phil Gyford Date: Tue, 23 Apr 2019 16:38:28 +0100 Subject: [PATCH 6/7] Fix use of gravatar template tags The `comments/_list_explore.html` tried to load `gravtar` template tags which do not exist, unless they're installed/created separately. Now use the [`xtd_comment_gravatar_url`](https://django-comments-xtd.readthedocs.io/en/latest/templatetags.html?highlight=template%20tags#filter-xtd-comment-gravatar-url) that's build into django-comments-xtd instead. --- .../wagtailcomments_xtd/comments/_list_explore.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/wagtailcomments_xtd/templates/wagtailcomments_xtd/comments/_list_explore.html b/wagtailcomments_xtd/templates/wagtailcomments_xtd/comments/_list_explore.html index eee537c..29b309b 100644 --- a/wagtailcomments_xtd/templates/wagtailcomments_xtd/comments/_list_explore.html +++ b/wagtailcomments_xtd/templates/wagtailcomments_xtd/comments/_list_explore.html @@ -1,11 +1,11 @@ {% load i18n %} -{% load gravatar %} +{% load comments_xtd %} {% for element in comments %} - - + +

From 9f45b9a843e22cebd132faf150483db4da8a9ac2 Mon Sep 17 00:00:00 2001 From: Phil Gyford Date: Tue, 23 Apr 2019 16:47:06 +0100 Subject: [PATCH 7/7] Use relative dates for admin list of comments To be consistent with other Wagtail admin pages --- .../wagtailcomments_xtd/comments/_list_explore.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/wagtailcomments_xtd/templates/wagtailcomments_xtd/comments/_list_explore.html b/wagtailcomments_xtd/templates/wagtailcomments_xtd/comments/_list_explore.html index 29b309b..f5f4e08 100644 --- a/wagtailcomments_xtd/templates/wagtailcomments_xtd/comments/_list_explore.html +++ b/wagtailcomments_xtd/templates/wagtailcomments_xtd/comments/_list_explore.html @@ -32,10 +32,10 @@

{% endif %} - - {{ element.comment.submit_date|date:"d M Y H:i" }} + + {{ element.comment.submit_date|timesince }} ago - + {% if not element.comment.is_public %} {% trans "Deleted" %} {% elif element.comment.is_removed %}