'use strict';
{
    // 从页面隐藏元素中解析初始化数据
    // 注：id为“django-admin-popup-response-constants”的元素由Django后台自动生成
    // 其data-popup-response属性中存储着弹窗操作的结果数据（如对象新值、操作类型等）
    const initData = JSON.parse(document.getElementById('django-admin-popup-response-constants').dataset.popupResponse);
    // 根据弹窗中的操作类型，调用父窗口对应的处理函数
    switch(initData.action) {
    case 'change':
        // 若操作类型为“编辑关联对象”
        // 调用父窗口（opener）的dismissChangeRelatedObjectPopup函数
        // 参数：当前窗口对象、对象原始值、对象实例、编辑后的新值
        opener.dismissChangeRelatedObjectPopup(window, initData.value, initData.obj, initData.new_value);
        break;
    case 'delete':
        opener.dismissDeleteRelatedObjectPopup(window, initData.value);
        break;
    default:
        // 默认操作类型为“添加关联对象”
        // 调用父窗口的dismissAddRelatedObjectPopup函数
        // 参数：当前窗口对象、新对象的值、新对象实例
        opener.dismissAddRelatedObjectPopup(window, initData.value, initData.obj);
        break;
    }
}
