Mail: Fix folder ACL

- Set searchUrl in template so it can be found during initialization.  Using modifications to clear it.
- Passing initial value to avoid a query
This commit is contained in:
nathan 2022-08-31 13:34:15 -06:00
parent a3d2674757
commit 4570a5a264
3 changed files with 7 additions and 4 deletions

View File

@ -139,11 +139,11 @@ class mail_acl
} }
if (!$this->imap->isAdminConnection) if (!$this->imap->isAdminConnection)
{ {
$tmpl->setElementAttribute('mailbox', 'autocomplete_url', 'mail.mail_compose.ajax_searchFolder'); $tmpl->setElementAttribute('mailbox', 'searchOptions', array('mailaccount' => $acc_id));
$tmpl->setElementAttribute('mailbox', 'autocomplete_params', array('mailaccount' => $acc_id));
} }
else else
{ {
$tmpl->setElementAttribute('mailbox', 'searchUrl', '');
//Todo: Implement autocomplete_url function with admin stuffs consideration //Todo: Implement autocomplete_url function with admin stuffs consideration
} }
// Unset the content if folder is changed, in order to read acl rights for new selected folder // Unset the content if folder is changed, in order to read acl rights for new selected folder
@ -253,6 +253,7 @@ class mail_acl
} }
} }
$readonlys = $sel_options = array(); $readonlys = $sel_options = array();
$sel_options['mailbox'] = [['value' => $mailbox, 'label' => $mailbox]];
$sel_options['acl'] = $this->aclRightsAbbrvs; $sel_options['acl'] = $this->aclRightsAbbrvs;
//Make the account owner's fields all readonly as owner has all rights and should not be able to change them //Make the account owner's fields all readonly as owner has all rights and should not be able to change them

View File

@ -4439,7 +4439,7 @@ app.classes.mail = AppJS.extend(
if (mailbox) if (mailbox)
{ {
if (mailbox.taglist.getValue().length > 0) if (mailbox.value.length > 0)
{ {
this.et2._inst.submit(); this.et2._inst.submit();
} }

View File

@ -14,7 +14,9 @@
</row> </row>
<row> <row>
<description value="Folder"/> <description value="Folder"/>
<taglist id="mailbox" width="100%" maxSelection="1" height="150" multiple="false" allowFreeEntries="false" onchange='app.mail.acl_folderChange'/> <taglist id="mailbox" width="100%" maxSelection="1" height="150" multiple="false"
allowFreeEntries="false" searchUrl="mail.mail_compose.ajax_searchFolder"
onchange='app.mail.acl_folderChange'/>
</row> </row>
<row> <row>
<description value="Rights"/> <description value="Rights"/>