Files
snappymail/dev/View/Popup/Folder.js
2024-02-13 18:25:17 +01:00

39 lines
923 B
JavaScript

import { AbstractViewPopup } from 'Knoin/AbstractViews';
import { addObservablesTo } from 'External/ko';
import Remote from 'Remote/User/Fetch';
import { FolderUserStore } from 'Stores/User/Folder';
export class FolderPopupView extends AbstractViewPopup {
constructor() {
super('Folder');
addObservablesTo(this, {
folder: null // FolderModel
});
this.ACLAllowed = FolderUserStore.hasCapability('ACL');
this.ACL = ko.observableArray();
}
afterHide() {
this.folder().editing(false);
}
submitForm(form) {
this.folder().rename();
console.dir({form});
this.close();
}
beforeShow(folder) {
this.ACL([]);
this.ACLAllowed && Remote.request('FolderACL', (iError, data) => {
if (!iError && data.Result) {
this.ACL(Object.values(data.Result));
}
}, {
folder: folder.fullName
});
folder.editing(!folder.type() && folder.exists && folder.selectable());
this.folder(folder);
}
}