Call segment.identify with any changed values when user profile fields change
This commit is contained in:
@@ -23,7 +23,7 @@ from common.djangoapps.student.models import (
|
||||
email_exists_or_retired,
|
||||
username_exists_or_retired
|
||||
)
|
||||
from common.djangoapps.util.model_utils import emit_setting_changed_event
|
||||
from common.djangoapps.util.model_utils import emit_setting_changed_event, emit_settings_changed_event
|
||||
from common.djangoapps.util.password_policy_validators import validate_password
|
||||
|
||||
from openedx.core.djangoapps.user_api import accounts, errors, helpers
|
||||
@@ -277,6 +277,11 @@ def _notify_language_proficiencies_update_if_needed(data, user, user_profile, ol
|
||||
old_value=old_language_proficiencies,
|
||||
new_value=new_language_proficiencies,
|
||||
)
|
||||
emit_settings_changed_event(
|
||||
user=user,
|
||||
db_table=user_profile.language_proficiencies.model._meta.db_table,
|
||||
changed_fields={"language_proficiencies": (old_language_proficiencies, new_language_proficiencies)},
|
||||
)
|
||||
|
||||
|
||||
def _update_extended_profile_if_needed(data, user_profile):
|
||||
|
||||
@@ -29,7 +29,11 @@ from common.djangoapps.student.models import (
|
||||
get_retired_email_by_email,
|
||||
get_retired_username_by_username
|
||||
)
|
||||
from common.djangoapps.util.model_utils import emit_setting_changed_event, get_changed_fields_dict
|
||||
from common.djangoapps.util.model_utils import (
|
||||
emit_setting_changed_event,
|
||||
get_changed_fields_dict,
|
||||
emit_settings_changed_event,
|
||||
)
|
||||
|
||||
|
||||
class RetirementStateError(Exception):
|
||||
@@ -122,6 +126,11 @@ def post_save_callback(sender, **kwargs):
|
||||
user_preference.user, sender._meta.db_table, user_preference.key,
|
||||
user_preference._old_value, user_preference.value # pylint: disable=protected-access
|
||||
)
|
||||
emit_settings_changed_event(
|
||||
user_preference.user,
|
||||
sender._meta.db_table,
|
||||
{user_preference.key: (user_preference._old_value, user_preference.value)} # pylint: disable=protected-access
|
||||
)
|
||||
user_preference._old_value = None # pylint: disable=protected-access
|
||||
|
||||
|
||||
@@ -134,6 +143,11 @@ def post_delete_callback(sender, **kwargs):
|
||||
emit_setting_changed_event(
|
||||
user_preference.user, sender._meta.db_table, user_preference.key, user_preference.value, None
|
||||
)
|
||||
emit_settings_changed_event(
|
||||
user_preference.user,
|
||||
sender._meta.db_table,
|
||||
{user_preference.key: (user_preference.value, None)}
|
||||
)
|
||||
|
||||
|
||||
class UserCourseTag(models.Model):
|
||||
|
||||
Reference in New Issue
Block a user