Skip to content
Snippets Groups Projects
Commit f42dfe69 authored by Calen Pennington's avatar Calen Pennington
Browse files

Remove emit_setting_changed_event in favor of emit_settings_changed_event

parent c8b6d693
No related branches found
No related tags found
No related merge requests found
......@@ -131,22 +131,6 @@ def truncate_fields(old_value, new_value):
return {'old': serialized_old_value, 'new': serialized_new_value, 'truncated': truncated_values}
def emit_setting_changed_event(user, db_table, setting_name, old_value, new_value):
"""Emits an event for a change in a setting.
Args:
user (User): the user that this setting is associated with.
db_table (str): the name of the table that we're modifying.
setting_name (str): the name of the setting being changed.
old_value (object): the value before the change.
new_value (object): the new value being saved.
Returns:
None
"""
emit_settings_changed_event(user, db_table, {setting_name: (old_value, new_value)})
def emit_settings_changed_event(user, db_table, changed_fields: Dict[str, Tuple[Any, Any]]):
"""Emits an event for a change in a setting.
......
......@@ -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_settings_changed_event
from common.djangoapps.util.password_policy_validators import validate_password
from openedx.core.djangoapps.user_api import accounts, errors, helpers
......@@ -270,12 +270,15 @@ def _update_preferences_if_needed(data, requesting_user, user):
def _notify_language_proficiencies_update_if_needed(data, user, user_profile, old_language_proficiencies):
if "language_proficiencies" in data:
new_language_proficiencies = data["language_proficiencies"]
emit_setting_changed_event(
emit_settings_changed_event(
user=user,
db_table=user_profile.language_proficiencies.model._meta.db_table,
setting_name="language_proficiencies",
old_value=old_language_proficiencies,
new_value=new_language_proficiencies,
changed_fields={
"language_proficiencies": (
old_language_proficiencies,
new_language_proficiencies,
)
}
)
......
......@@ -30,7 +30,7 @@ from common.djangoapps.student.models import (
get_retired_username_by_username
)
from common.djangoapps.util.model_utils import (
emit_setting_changed_event,
emit_settings_changed_event,
get_changed_fields_dict,
)
......@@ -121,9 +121,14 @@ def post_save_callback(sender, **kwargs):
"""
user_preference = kwargs["instance"]
emit_setting_changed_event(
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, # pylint: disable=protected-access
user_preference.value
)
}
)
user_preference._old_value = None # pylint: disable=protected-access
......@@ -134,8 +139,10 @@ def post_delete_callback(sender, **kwargs):
Event changes to user preferences.
"""
user_preference = kwargs["instance"]
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)
}
)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment