diff --git a/plugins/nextcloud/js/webdav.js b/plugins/nextcloud/js/webdav.js index 0b788c9a4..c146bda3d 100644 --- a/plugins/nextcloud/js/webdav.js +++ b/plugins/nextcloud/js/webdav.js @@ -286,6 +286,47 @@ class NextcloudFilesPopupView extends rl.pluginPopupView { } }); } + + // Happens after showModal() + beforeShow(files, fResolve) { + this.select = ''; + this.files(!!files); + this.fResolve = fResolve; + + this.tree.innerHTML = ''; + fetchFiles('/').then(items => { + buildTree(this, this.tree, items, '/'); + }).catch(err => console.error(err)) + } + + onHide() { + this.fResolve(this.select); + } +/* +beforeShow() {} // Happens before showModal() +onShow() {} // Happens after showModal() +afterShow() {} // Happens after showModal() animation transitionend +onHide() {} // Happens before animation transitionend +afterHide() {} // Happens after animation transitionend +close() {} +*/ +} + +class NextcloudCalendarsPopupView extends rl.pluginPopupView { + constructor() { + super('NextcloudCalendars'); + } + + onBuild(dom) { + this.tree = dom.querySelector('#sm-nc-calendars'); + this.tree.addEventListener('click', event => { + let el = event.target; + if (el.matches('button')) { + this.select = el.href; + this.close(); + } + }); + } createCalendarListItem(calendarData, treeElement) { const { displayName, @@ -331,47 +372,6 @@ class NextcloudFilesPopupView extends rl.pluginPopupView { treeElement.appendChild(li); } - // Happens after showModal() - beforeShow(files, fResolve) { - this.select = ''; - this.files(!!files); - this.fResolve = fResolve; - - this.tree.innerHTML = ''; - fetchFiles('/').then(items => { - buildTree(this, this.tree, items, '/'); - }).catch(err => console.error(err)) - } - - onHide() { - this.fResolve(this.select); - } -/* -beforeShow() {} // Happens before showModal() -onShow() {} // Happens after showModal() -afterShow() {} // Happens after showModal() animation transitionend -onHide() {} // Happens before animation transitionend -afterHide() {} // Happens after animation transitionend -close() {} -*/ -} - -class NextcloudCalendarsPopupView extends rl.pluginPopupView { - constructor() { - super('NextcloudCalendars'); - } - - onBuild(dom) { - this.tree = dom.querySelector('#sm-nc-calendars'); - this.tree.addEventListener('click', event => { - let el = event.target; - if (el.matches('button')) { - this.select = el.href; - this.close(); - } - }); - } - // Happens after showModal() beforeShow(fResolve) { this.select = '';