diff --git a/interface/lib/classes/remote.d/mail.inc.php b/interface/lib/classes/remote.d/mail.inc.php index cad598043593bdddb82befe954ab665e428b2528..dfbad2759581518228cdd5f3805c6421ace0e652 100644 --- a/interface/lib/classes/remote.d/mail.inc.php +++ b/interface/lib/classes/remote.d/mail.inc.php @@ -196,6 +196,24 @@ class remoting_mail extends remoting { return $app->remoting_lib->getDataRecord($primary_id); } + //* Get mail user details for all account that belong to a client. + public function mail_user_get_all_by_client($session_id, $client_id) + { + global $app; + + if(!$this->checkPerm($session_id, 'mail_user_get_all_by_client')) { + throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); + return false; + } + $app->uses('remoting_lib'); + $sql = "SELECT u.* FROM `mail_user` u + LEFT JOIN `sys_group` g ON (u.sys_groupid=g.groupid) + WHERE g.client_id=?"; + $params[] = $client_id; + + $result = $app->db->queryAllRecords($sql, true, $params); + return $result; + } //* Add mail domain public function mail_user_add($session_id, $client_id, $params){ @@ -1110,4 +1128,4 @@ class remoting_mail extends remoting { } -?> \ No newline at end of file +?> diff --git a/interface/web/mail/lib/remote.conf.php b/interface/web/mail/lib/remote.conf.php index ae03e9992aa99374c163fe0e2876189e8b9644ec..3060a8b4cc7be87c3e15f75f015822eac8bec2a4 100644 --- a/interface/web/mail/lib/remote.conf.php +++ b/interface/web/mail/lib/remote.conf.php @@ -3,7 +3,7 @@ $function_list['mail_domain_get,mail_domain_add,mail_domain_update,mail_domain_delete,mail_domain_set_status,mail_domain_get_by_domain'] = 'Mail domain functions'; $function_list['mail_aliasdomain_get,mail_aliasdomain_add,mail_aliasdomain_update,mail_aliasdomain_delete'] = 'Mail domain alias functions'; $function_list['mail_mailinglist_get,mail_mailinglist_add,mail_mailinglist_update,mail_mailinglist_delete'] = 'Mail mailinglist functions'; -$function_list['mail_user_get,mail_user_add,mail_user_update,mail_user_delete'] = 'Mail user functions'; +$function_list['mail_user_get,mail_user_add,mail_user_update,mail_user_delete,mail_user_get_all_by_client'] = 'Mail user functions'; $function_list['mail_alias_get,mail_alias_add,mail_alias_update,mail_alias_delete'] = 'Mail alias functions'; $function_list['mail_forward_get,mail_forward_add,mail_forward_update,mail_forward_delete'] = 'Mail forward functions'; $function_list['mail_catchall_get,mail_catchall_add,mail_catchall_update,mail_catchall_delete'] = 'Mail catchall functions'; diff --git a/remoting_client/API-docs/mail_user_get_all_by_client.html b/remoting_client/API-docs/mail_user_get_all_by_client.html new file mode 100644 index 0000000000000000000000000000000000000000..2ddbc1655637b3f42313ab69bb6eda2acb085c03 --- /dev/null +++ b/remoting_client/API-docs/mail_user_get_all_by_client.html @@ -0,0 +1,30 @@ + +
Description:
+Retrieves information about the mail users belonging to a client.
Input Variables:
+$session_id, $primary_id
+Parameters (in $params):
+None
+Output:
+Returns all fields and values of the chosen mail users.
+ +