|
@@ -4,20 +4,14 @@ from __future__ import unicode_literals
|
|
from django.db import migrations
|
|
from django.db import migrations
|
|
from django.utils.translation import ugettext as _
|
|
from django.utils.translation import ugettext as _
|
|
|
|
|
|
-from misago.core import serializer
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-def pickle_permissions(role, permissions):
|
|
|
|
- role.pickled_permissions = serializer.dumps(permissions)
|
|
|
|
-
|
|
|
|
|
|
|
|
def create_default_roles(apps, schema_editor):
|
|
def create_default_roles(apps, schema_editor):
|
|
Role = apps.get_model('misago_acl', 'Role')
|
|
Role = apps.get_model('misago_acl', 'Role')
|
|
|
|
|
|
- role = Role(name=_("Member"), special_role='authenticated')
|
|
|
|
- pickle_permissions(
|
|
|
|
- role,
|
|
|
|
- {
|
|
|
|
|
|
+ Role.objects.create(
|
|
|
|
+ name=_("Member"),
|
|
|
|
+ special_role='authenticated',
|
|
|
|
+ permissions={
|
|
# account
|
|
# account
|
|
'misago.users.permissions.account': {
|
|
'misago.users.permissions.account': {
|
|
'name_changes_allowed': 2,
|
|
'name_changes_allowed': 2,
|
|
@@ -55,13 +49,13 @@ def create_default_roles(apps, schema_editor):
|
|
'misago.search.permissions': {
|
|
'misago.search.permissions': {
|
|
'can_search': 1,
|
|
'can_search': 1,
|
|
},
|
|
},
|
|
- })
|
|
|
|
- role.save()
|
|
|
|
|
|
+ }
|
|
|
|
+ )
|
|
|
|
|
|
- role = Role(name=_("Guest"), special_role='anonymous')
|
|
|
|
- pickle_permissions(
|
|
|
|
- role,
|
|
|
|
- {
|
|
|
|
|
|
+ Role.objects.create(
|
|
|
|
+ name=_("Guest"),
|
|
|
|
+ special_role='anonymous',
|
|
|
|
+ permissions={
|
|
# account
|
|
# account
|
|
'misago.users.permissions.account': {
|
|
'misago.users.permissions.account': {
|
|
'name_changes_allowed': 0,
|
|
'name_changes_allowed': 0,
|
|
@@ -90,13 +84,12 @@ def create_default_roles(apps, schema_editor):
|
|
'misago.search.permissions': {
|
|
'misago.search.permissions': {
|
|
'can_search': 1,
|
|
'can_search': 1,
|
|
},
|
|
},
|
|
- })
|
|
|
|
- role.save()
|
|
|
|
|
|
+ }
|
|
|
|
+ )
|
|
|
|
|
|
- role = Role(name=_("Moderator"))
|
|
|
|
- pickle_permissions(
|
|
|
|
- role,
|
|
|
|
- {
|
|
|
|
|
|
+ Role.objects.create(
|
|
|
|
+ name=_("Moderator"),
|
|
|
|
+ permissions={
|
|
# account
|
|
# account
|
|
'misago.users.permissions.account': {
|
|
'misago.users.permissions.account': {
|
|
'name_changes_allowed': 5,
|
|
'name_changes_allowed': 5,
|
|
@@ -158,35 +151,32 @@ def create_default_roles(apps, schema_editor):
|
|
'can_delete_users_newer_than': 0,
|
|
'can_delete_users_newer_than': 0,
|
|
'can_delete_users_with_less_posts_than': 0,
|
|
'can_delete_users_with_less_posts_than': 0,
|
|
},
|
|
},
|
|
- })
|
|
|
|
- role.save()
|
|
|
|
|
|
+ }
|
|
|
|
+ )
|
|
|
|
|
|
- role = Role(name=_("See warnings"))
|
|
|
|
- pickle_permissions(
|
|
|
|
- role,
|
|
|
|
- {
|
|
|
|
|
|
+ Role.objects.create(
|
|
|
|
+ name=_("See warnings"),
|
|
|
|
+ permissions={
|
|
# warnings
|
|
# warnings
|
|
'misago.users.permissions.warnings': {
|
|
'misago.users.permissions.warnings': {
|
|
'can_see_other_users_warnings': 1,
|
|
'can_see_other_users_warnings': 1,
|
|
},
|
|
},
|
|
- })
|
|
|
|
- role.save()
|
|
|
|
|
|
+ }
|
|
|
|
+ )
|
|
|
|
|
|
- role = Role(name=_("Renaming users"))
|
|
|
|
- pickle_permissions(
|
|
|
|
- role,
|
|
|
|
- {
|
|
|
|
|
|
+ Role.objects.create(
|
|
|
|
+ name=_("Renaming users"),
|
|
|
|
+ permissions={
|
|
# rename users
|
|
# rename users
|
|
'misago.users.permissions.moderation': {
|
|
'misago.users.permissions.moderation': {
|
|
'can_rename_users': 1,
|
|
'can_rename_users': 1,
|
|
},
|
|
},
|
|
- })
|
|
|
|
- role.save()
|
|
|
|
|
|
+ }
|
|
|
|
+ )
|
|
|
|
|
|
- role = Role(name=_("Banning users"))
|
|
|
|
- pickle_permissions(
|
|
|
|
- role,
|
|
|
|
- {
|
|
|
|
|
|
+ Role.objects.create(
|
|
|
|
+ name=_("Banning users"),
|
|
|
|
+ permissions={
|
|
# ban users
|
|
# ban users
|
|
'misago.users.permissions.profiles': {
|
|
'misago.users.permissions.profiles': {
|
|
'can_see_ban_details': 1,
|
|
'can_see_ban_details': 1,
|
|
@@ -198,36 +188,33 @@ def create_default_roles(apps, schema_editor):
|
|
'can_lift_bans': 1,
|
|
'can_lift_bans': 1,
|
|
'max_lifted_ban_length': 14,
|
|
'max_lifted_ban_length': 14,
|
|
},
|
|
},
|
|
- })
|
|
|
|
- role.save()
|
|
|
|
|
|
+ }
|
|
|
|
+ )
|
|
|
|
|
|
- role = Role(name=_("Deleting users"))
|
|
|
|
- pickle_permissions(
|
|
|
|
- role,
|
|
|
|
- {
|
|
|
|
|
|
+ Role.objects.create(
|
|
|
|
+ name=_("Deleting users"),
|
|
|
|
+ permissions={
|
|
# delete users
|
|
# delete users
|
|
'misago.users.permissions.delete': {
|
|
'misago.users.permissions.delete': {
|
|
'can_delete_users_newer_than': 3,
|
|
'can_delete_users_newer_than': 3,
|
|
'can_delete_users_with_less_posts_than': 7,
|
|
'can_delete_users_with_less_posts_than': 7,
|
|
},
|
|
},
|
|
- })
|
|
|
|
- role.save()
|
|
|
|
|
|
+ }
|
|
|
|
+ )
|
|
|
|
|
|
- role = Role(name=_("Can't be blocked"))
|
|
|
|
- pickle_permissions(
|
|
|
|
- role,
|
|
|
|
- {
|
|
|
|
|
|
+ Role.objects.create(
|
|
|
|
+ name=_("Can't be blocked"),
|
|
|
|
+ permissions={
|
|
# profiles
|
|
# profiles
|
|
'misago.users.permissions.profiles': {
|
|
'misago.users.permissions.profiles': {
|
|
'can_be_blocked': 0,
|
|
'can_be_blocked': 0,
|
|
},
|
|
},
|
|
- })
|
|
|
|
- role.save()
|
|
|
|
|
|
+ }
|
|
|
|
+ )
|
|
|
|
|
|
- role = Role(name=_("Private threads"))
|
|
|
|
- pickle_permissions(
|
|
|
|
- role,
|
|
|
|
- {
|
|
|
|
|
|
+ Role.objects.create(
|
|
|
|
+ name=_("Private threads"),
|
|
|
|
+ permissions={
|
|
# private threads
|
|
# private threads
|
|
'misago.threads.permissions.privatethreads': {
|
|
'misago.threads.permissions.privatethreads': {
|
|
'can_use_private_threads': 1,
|
|
'can_use_private_threads': 1,
|
|
@@ -237,13 +224,12 @@ def create_default_roles(apps, schema_editor):
|
|
'can_report_private_threads': 1,
|
|
'can_report_private_threads': 1,
|
|
'can_moderate_private_threads': 0,
|
|
'can_moderate_private_threads': 0,
|
|
},
|
|
},
|
|
- })
|
|
|
|
- role.save()
|
|
|
|
|
|
+ }
|
|
|
|
+ )
|
|
|
|
|
|
- role = Role(name=_("Private threads moderator"))
|
|
|
|
- pickle_permissions(
|
|
|
|
- role,
|
|
|
|
- {
|
|
|
|
|
|
+ Role.objects.create(
|
|
|
|
+ name=_("Private threads moderator"),
|
|
|
|
+ permissions={
|
|
# private threads
|
|
# private threads
|
|
'misago.threads.permissions.privatethreads': {
|
|
'misago.threads.permissions.privatethreads': {
|
|
'can_use_private_threads': 1,
|
|
'can_use_private_threads': 1,
|
|
@@ -253,8 +239,8 @@ def create_default_roles(apps, schema_editor):
|
|
'can_report_private_threads': 1,
|
|
'can_report_private_threads': 1,
|
|
'can_moderate_private_threads': 1,
|
|
'can_moderate_private_threads': 1,
|
|
},
|
|
},
|
|
- })
|
|
|
|
- role.save()
|
|
|
|
|
|
+ }
|
|
|
|
+ )
|
|
|
|
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
class Migration(migrations.Migration):
|