Commit bafe1399 by Waheed Ahmed

Changed choice value to `project_coordinator` and created data migration.

ECOM-7289
parent 2f817f60
...@@ -4,8 +4,7 @@ from djchoices import ChoiceItem, DjangoChoices ...@@ -4,8 +4,7 @@ from djchoices import ChoiceItem, DjangoChoices
class PublisherUserRole(DjangoChoices): class PublisherUserRole(DjangoChoices):
PartnerManager = ChoiceItem('partner_manager', _('Partner Manager')) PartnerManager = ChoiceItem('partner_manager', _('Partner Manager'))
# TODO: ECOM-7289 - Change choice value to `project_coordinator` and create a data migration. ProjectCoordinator = ChoiceItem('project_coordinator', _('Project Coordinator'))
ProjectCoordinator = ChoiceItem('partner_coordinator', _('Project Coordinator'))
MarketingReviewer = ChoiceItem('marketing_reviewer', _('Marketing Reviewer')) MarketingReviewer = ChoiceItem('marketing_reviewer', _('Marketing Reviewer'))
Publisher = ChoiceItem('publisher', _('Publisher')) Publisher = ChoiceItem('publisher', _('Publisher'))
CourseTeam = ChoiceItem('course_team', _('Course Team')) CourseTeam = ChoiceItem('course_team', _('Course Team'))
......
# -*- coding: utf-8 -*-
# Generated by Django 1.9.12 on 2017-03-06 10:02
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('publisher', '0040_auto_20170223_1241'),
]
operations = [
migrations.AlterField(
model_name='courserunstate',
name='approved_by_role',
field=models.CharField(blank=True, choices=[('partner_manager', 'Partner Manager'), ('project_coordinator', 'Project Coordinator'), ('marketing_reviewer', 'Marketing Reviewer'), ('publisher', 'Publisher'), ('course_team', 'Course Team')], max_length=63, null=True),
),
migrations.AlterField(
model_name='courserunstate',
name='owner_role',
field=models.CharField(choices=[('partner_manager', 'Partner Manager'), ('project_coordinator', 'Project Coordinator'), ('marketing_reviewer', 'Marketing Reviewer'), ('publisher', 'Publisher'), ('course_team', 'Course Team')], max_length=63),
),
migrations.AlterField(
model_name='coursestate',
name='approved_by_role',
field=models.CharField(blank=True, choices=[('partner_manager', 'Partner Manager'), ('project_coordinator', 'Project Coordinator'), ('marketing_reviewer', 'Marketing Reviewer'), ('publisher', 'Publisher'), ('course_team', 'Course Team')], max_length=63, null=True),
),
migrations.AlterField(
model_name='coursestate',
name='owner_role',
field=models.CharField(choices=[('partner_manager', 'Partner Manager'), ('project_coordinator', 'Project Coordinator'), ('marketing_reviewer', 'Marketing Reviewer'), ('publisher', 'Publisher'), ('course_team', 'Course Team')], max_length=63),
),
migrations.AlterField(
model_name='courseuserrole',
name='role',
field=models.CharField(choices=[('partner_manager', 'Partner Manager'), ('project_coordinator', 'Project Coordinator'), ('marketing_reviewer', 'Marketing Reviewer'), ('publisher', 'Publisher'), ('course_team', 'Course Team')], max_length=63, verbose_name='Course Role'),
),
migrations.AlterField(
model_name='historicalcourserunstate',
name='approved_by_role',
field=models.CharField(blank=True, choices=[('partner_manager', 'Partner Manager'), ('project_coordinator', 'Project Coordinator'), ('marketing_reviewer', 'Marketing Reviewer'), ('publisher', 'Publisher'), ('course_team', 'Course Team')], max_length=63, null=True),
),
migrations.AlterField(
model_name='historicalcourserunstate',
name='owner_role',
field=models.CharField(choices=[('partner_manager', 'Partner Manager'), ('project_coordinator', 'Project Coordinator'), ('marketing_reviewer', 'Marketing Reviewer'), ('publisher', 'Publisher'), ('course_team', 'Course Team')], max_length=63),
),
migrations.AlterField(
model_name='historicalcoursestate',
name='approved_by_role',
field=models.CharField(blank=True, choices=[('partner_manager', 'Partner Manager'), ('project_coordinator', 'Project Coordinator'), ('marketing_reviewer', 'Marketing Reviewer'), ('publisher', 'Publisher'), ('course_team', 'Course Team')], max_length=63, null=True),
),
migrations.AlterField(
model_name='historicalcoursestate',
name='owner_role',
field=models.CharField(choices=[('partner_manager', 'Partner Manager'), ('project_coordinator', 'Project Coordinator'), ('marketing_reviewer', 'Marketing Reviewer'), ('publisher', 'Publisher'), ('course_team', 'Course Team')], max_length=63),
),
migrations.AlterField(
model_name='historicalcourseuserrole',
name='role',
field=models.CharField(choices=[('partner_manager', 'Partner Manager'), ('project_coordinator', 'Project Coordinator'), ('marketing_reviewer', 'Marketing Reviewer'), ('publisher', 'Publisher'), ('course_team', 'Course Team')], max_length=63, verbose_name='Course Role'),
),
migrations.AlterField(
model_name='historicalorganizationuserrole',
name='role',
field=models.CharField(choices=[('partner_manager', 'Partner Manager'), ('project_coordinator', 'Project Coordinator'), ('marketing_reviewer', 'Marketing Reviewer'), ('publisher', 'Publisher'), ('course_team', 'Course Team')], max_length=63, verbose_name='Organization Role'),
),
migrations.AlterField(
model_name='organizationuserrole',
name='role',
field=models.CharField(choices=[('partner_manager', 'Partner Manager'), ('project_coordinator', 'Project Coordinator'), ('marketing_reviewer', 'Marketing Reviewer'), ('publisher', 'Publisher'), ('course_team', 'Course Team')], max_length=63, verbose_name='Organization Role'),
),
]
# -*- coding: utf-8 -*-
# Generated by Django 1.9.12 on 2017-03-06 10:14
from __future__ import unicode_literals
from django.db import migrations
OLD_ROLE_NAME = 'partner_coordinator'
NEW_ROLE_NAME = 'project_coordinator'
USER_ROLE_MODELS = [
'CourseUserRole', 'OrganizationUserRole', 'HistoricalCourseUserRole', 'HistoricalOrganizationUserRole'
]
STATE_MODELS = ['CourseState', 'CourseRunState', 'HistoricalCourseState', 'HistoricalCourseRunState']
def get_publisher_model(apps, model_name):
return apps.get_model('publisher', model_name)
def update_value(model, field_name, reverse):
filter_value = OLD_ROLE_NAME
updated_value = NEW_ROLE_NAME
if reverse:
filter_value = NEW_ROLE_NAME
updated_value = OLD_ROLE_NAME
model.objects.filter(**{field_name: filter_value}).update(**{field_name: updated_value})
def update_user_role_models(apps, reverse=False):
for model_name in USER_ROLE_MODELS:
update_value(get_publisher_model(apps, model_name), 'role', reverse)
def update_state_models(apps, reverse=False):
for model_name in STATE_MODELS:
model = get_publisher_model(apps, model_name)
update_value(model, 'approved_by_role', reverse)
update_value(model, 'owner_role', reverse)
def forwards_data(apps, schema_editor):
"""
Change choice value from 'partner_coordinator' to 'project_coordinator'
"""
update_user_role_models(apps)
update_state_models(apps)
def reverse_data(apps, schema_editor):
"""
Change choice value from 'project_coordinator' to 'partner_coordinator'
"""
update_user_role_models(apps, reverse=True)
update_state_models(apps, reverse=True)
class Migration(migrations.Migration):
dependencies = [
('publisher', '0041_auto_20170306_1002'),
]
operations = [
migrations.RunPython(forwards_data, reverse_data),
]
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment