Fixed toggle controls on added content permission role rows

This commit is contained in:
Dan Brown 2022-10-21 10:13:11 +01:00
parent 905d339572
commit 3f61bfc43c
No known key found for this signature in database
GPG Key ID: 46D9F943C24A2EF9
2 changed files with 16 additions and 4 deletions

View File

@ -1,6 +1,8 @@
/**
* @extends {Component}
*/
import {htmlToDom} from "../services/dom";
class EntityPermissions {
setup() {
@ -53,11 +55,8 @@ class EntityPermissions {
// Get and insert new row
const resp = await window.$http.get(`/permissions/form-row/${this.entityType}/${roleId}`);
const wrap = document.createElement('div');
wrap.innerHTML = resp.data;
const row = wrap.children[0];
const row = htmlToDom(resp.data);
this.roleContainer.append(row);
window.components.init(row);
this.roleSelect.disabled = false;
}

View File

@ -117,4 +117,17 @@ export function removeLoading(element) {
for (const el of loadingEls) {
el.remove();
}
}
/**
* Convert the given html data into a live DOM element.
* Initiates any components defined in the data.
* @param {String} html
* @returns {Element}
*/
export function htmlToDom(html) {
const wrap = document.createElement('div');
wrap.innerHTML = html;
window.components.init(wrap);
return wrap.children[0];
}