fix #490: align vpd policy apply hierarchy
This commit is contained in:
@@ -34,6 +34,7 @@ function syncPolicyTemplate(select) {
|
||||
return;
|
||||
}
|
||||
const option = select.options[select.selectedIndex];
|
||||
const hasTemplate = Boolean(option?.dataset.policyName);
|
||||
const policyName = form.querySelector('[data-policy-template-field="policyName"]');
|
||||
const functionKey = form.querySelector('[data-policy-template-field="functionKey"]');
|
||||
const enabled = form.querySelector('[data-policy-template-field="enabled"]');
|
||||
@@ -45,18 +46,31 @@ function syncPolicyTemplate(select) {
|
||||
functionKey.value = option?.dataset.functionKey || '';
|
||||
}
|
||||
if (enabled) {
|
||||
enabled.checked = option?.dataset.enabled === 'true';
|
||||
enabled.checked = hasTemplate ? option?.dataset.enabled === 'true' : true;
|
||||
}
|
||||
if (updateCheck) {
|
||||
updateCheck.checked = option?.dataset.updateCheck === 'true';
|
||||
updateCheck.checked = hasTemplate ? option?.dataset.updateCheck === 'true' : false;
|
||||
}
|
||||
const selectedStatements = (option?.dataset.statementTypes || '')
|
||||
const selectedStatements = (hasTemplate ? option?.dataset.statementTypes || '' : 'SELECT')
|
||||
.split(',')
|
||||
.map((value) => value.trim())
|
||||
.filter(Boolean);
|
||||
form.querySelectorAll('[data-policy-template-statement]').forEach((checkbox) => {
|
||||
checkbox.checked = selectedStatements.includes(checkbox.value);
|
||||
});
|
||||
const preview = (name, value) => {
|
||||
const target = form.querySelector(`[data-policy-template-preview="${name}"]`);
|
||||
if (target) {
|
||||
target.textContent = value;
|
||||
}
|
||||
};
|
||||
preview('policyName', option?.dataset.policyName || '선택 전');
|
||||
preview('functionKey', option?.dataset.functionKey || '선택 전');
|
||||
preview('statementTypes', selectedStatements.join(', ') || 'SELECT');
|
||||
preview(
|
||||
'options',
|
||||
`Enabled: ${enabled?.checked ? 'YES' : 'NO'} / Check: ${updateCheck?.checked ? 'YES' : 'NO'}`
|
||||
);
|
||||
}
|
||||
|
||||
function closeMenuGroup(group) {
|
||||
|
||||
Reference in New Issue
Block a user