diff --git a/aleksis/apps/paweljong/preferences.py b/aleksis/apps/paweljong/preferences.py
index d48689d83bcc05c732e0cba4ec365447b92e97e6..a41b5d01971ea609407d92d57584202e027cb6aa 100644
--- a/aleksis/apps/paweljong/preferences.py
+++ b/aleksis/apps/paweljong/preferences.py
@@ -24,12 +24,3 @@ class WWSPostUrl(StringPreference):
     default = ""
     required = False
     verbose_name = _("POST url for Sympa")
-
-
-@site_preferences_registry.register
-class ChannelChoices(StringPreference):
-    section = paweljong
-    name = "channel_choices"
-    default = ""
-    requred = False
-    verbose_name = _("Channel choices")
diff --git a/aleksis/apps/paweljong/rules.py b/aleksis/apps/paweljong/rules.py
index 50723ee8a95718a1752a6c13822948db7e50aab6..cb116a0ec6c6c6b9ab51397e040c49c271595dce 100644
--- a/aleksis/apps/paweljong/rules.py
+++ b/aleksis/apps/paweljong/rules.py
@@ -9,7 +9,7 @@ from aleksis.core.util.predicates import (
     is_group_member,
 )
 
-from .models import Event, EventRegistration, FeedbackAspect, Voucher
+from .models import Event, EventRegistration, FeedbackAspect, Voucher, Terms
 from .predicates import (
     is_own_registration,
     is_own_voucher,
@@ -110,3 +110,10 @@ view_feedback_aspects_predicate = has_person & (
     | has_any_object("paweljong.view_feedback_aspect", FeedbackAspect)
 )
 rules.add_perm("paweljong.view_feedback_aspects_rule", view_feedback_aspects_predicate)
+
+# View terms
+view_terms_predicate = has_person & (
+    has_global_perm("paweljong.view_term")
+    | has_any_object("paweljong.view_term", Terms)
+)
+rules.add_perm("paweljong.view_terms_rule", view_terms_predicate)
diff --git a/aleksis/apps/paweljong/util.py b/aleksis/apps/paweljong/util.py
index ade0bd41dc5e7d287f09a658b15f87cd92d13119..3792c6d0b5820b2ee9b0bf7e9c39309c911bb83a 100644
--- a/aleksis/apps/paweljong/util.py
+++ b/aleksis/apps/paweljong/util.py
@@ -76,11 +76,3 @@ def upload_file_to_media_url(file, subdir="", prefix="upload_"):
     url = "%s/%s/%s" % (settings.MEDIA_URL, subdir, basename)
 
     return url
-
-
-def generate_code():
-    alphabet = string.ascii_uppercase + string.digits
-    length = 8
-    code = "".join(random.choice(alphabet) for _ in range(length))  # noqa
-
-    return code