(rl => { if (rl) { addEventListener('rl-view-model', e => { if ('SettingsContacts' === e.detail.viewModelTemplateID) { const container = e.detail.viewModelDom.querySelector('.form-horizontal'); if (!container) { return; } rl.pluginRemoteRequest((iError, oData) => { if (iError) { return; } const mainDivElement = Element.fromHTML('
' + '' + '
'); const selectElement = Element.fromHTML(''); const addressbooks = JSON.parse(oData.Result.addressbooks); addressbooks.forEach(addressbook => { if (addressbook.selected) { selectElement.append(Element.fromHTML('')); } else { selectElement.append(Element.fromHTML('')); } }); selectElement.onchange = function() { rl.pluginRemoteRequest(() => { }, 'NextcloudUpdateAddressBook', { uri: selectElement.value }); } mainDivElement.append(selectElement); container.append(mainDivElement); }, "NextcloudGetAddressBooks"); } }); } })(window.rl);