from django.db import migrations

def update_first_admin_role(apps, schema_editor):
    Role = apps.get_model("api", "Role")
    RolePermission = apps.get_model("api", "RolePermission")

    role = Role.objects.filter(type="admin").first()
    if role:
        permissions = [
            'student;create',
            'student;list',
            'student;update',
            'student;delete',
            'student;rules',
        ]
        for permission in permissions:
            RolePermission.objects.get_or_create(
                role_id=role.id,
                permission=permission,
            )

class Migration(migrations.Migration):

    dependencies = [
        ('api', '0026_update_pos_first_admin_role'),
    ]

    operations = [
        migrations.RunPython(update_first_admin_role),
    ]
