diff --git a/src/wagtail_personalisation/forms.py b/src/wagtail_personalisation/forms.py index 67f586e..1263f4e 100644 --- a/src/wagtail_personalisation/forms.py +++ b/src/wagtail_personalisation/forms.py @@ -3,8 +3,6 @@ from wagtail.wagtailadmin.forms import WagtailAdminPageForm class AdminPersonalisablePageForm(WagtailAdminPageForm): """The personalisable page form that allows creation of variants.""" - def __init__(self, *args, **kwargs): - super(AdminPersonalisablePageForm, self).__init__(*args, **kwargs) def save(self, commit=True): """Save a copy of the original page, linked to a segment. diff --git a/src/wagtail_personalisation/rules.py b/src/wagtail_personalisation/rules.py index 6affc9b..6df6788 100644 --- a/src/wagtail_personalisation/rules.py +++ b/src/wagtail_personalisation/rules.py @@ -22,13 +22,16 @@ class AbstractBaseRule(models.Model): related_query_name="%(app_label)s_%(class)ss" ) - def test_user(self): - """Test if the user matches this rule.""" - return True + class Meta: + abstract = True def __str__(self): return _('Abstract segmentation rule') + def test_user(self): + """Test if the user matches this rule.""" + return True + def encoded_name(self): """Return a string with a slug for the rule.""" return slugify(self.__str__().lower()) @@ -48,9 +51,6 @@ class AbstractBaseRule(models.Model): return description - class Meta: - abstract = True - @python_2_unicode_compatible class TimeRule(AbstractBaseRule): @@ -70,8 +70,8 @@ class TimeRule(AbstractBaseRule): ]), ] - def __init__(self, *args, **kwargs): - super(TimeRule, self).__init__(*args, **kwargs) + def __str__(self): + return _('Time Rule') def test_user(self, request=None): current_time = datetime.now().time() @@ -80,9 +80,6 @@ class TimeRule(AbstractBaseRule): return starting_time <= current_time <= ending_time - def __str__(self): - return _('Time Rule') - def description(self): description = { 'title': _('These users visit between'), @@ -121,8 +118,8 @@ class DayRule(AbstractBaseRule): FieldPanel('sun'), ] - def __init__(self, *args, **kwargs): - super(DayRule, self).__init__(*args, **kwargs) + def __str__(self): + return _('Day Rule') def test_user(self, request=None): current_day = datetime.today().weekday() @@ -132,9 +129,6 @@ class DayRule(AbstractBaseRule): return days[current_day] - def __str__(self): - return _('Day Rule') - def description(self): days = { 'mon': self.mon, 'tue': self.tue, 'wed': self.wed, @@ -171,8 +165,8 @@ class ReferralRule(AbstractBaseRule): FieldPanel('regex_string'), ] - def __init__(self, *args, **kwargs): - super(ReferralRule, self).__init__(*args, **kwargs) + def __str__(self): + return _('Referral Rule') def test_user(self, request): pattern = re.compile(self.regex_string) @@ -183,9 +177,6 @@ class ReferralRule(AbstractBaseRule): return True return False - def __str__(self): - return _('Referral Rule') - def description(self): description = { 'title': _('These visits originate from'), @@ -231,9 +222,6 @@ class VisitCountRule(AbstractBaseRule): ]), ] - def __init__(self, *args, **kwargs): - super(VisitCountRule, self).__init__(*args, **kwargs) - def test_user(self, request): operator = self.operator segment_count = self.count @@ -301,20 +289,15 @@ class QueryRule(AbstractBaseRule): FieldPanel('value'), ] - def __init__(self, *args, **kwargs): - super(QueryRule, self).__init__(*args, **kwargs) + def __str__(self): + return _('Query Rule') def test_user(self, request): parameter = self.parameter value = self.value req_value = request.GET.get(parameter, '') - if req_value == value: - return True - return False - - def __str__(self): - return _('Query Rule') + return req_value == value def description(self): description = { @@ -347,8 +330,8 @@ class DeviceRule(AbstractBaseRule): FieldPanel('desktop'), ] - def __init__(self, *args, **kwargs): - super(DeviceRule, self).__init__(*args, **kwargs) + def __str__(self): + return _('Device Rule') def test_user(self, request=None): ua_header = request.META['HTTP_USER_AGENT'] @@ -363,9 +346,6 @@ class DeviceRule(AbstractBaseRule): else: return False - def __str__(self): - return _('Device Rule') - @python_2_unicode_compatible class UserIsLoggedInRule(AbstractBaseRule): @@ -381,15 +361,12 @@ class UserIsLoggedInRule(AbstractBaseRule): FieldPanel('is_logged_in'), ] - def __init__(self, *args, **kwargs): - super(UserIsLoggedInRule, self).__init__(*args, **kwargs) + def __str__(self): + return _('Logged In Rule') def test_user(self, request=None): return request.user.is_authenticated() == self.is_logged_in - def __str__(self): - return _('Logged In Rule') - def description(self): status = _('Logged in') if self.is_logged_in is False: