From 76530b7e6ddf43ad53bb9515baf11d5dab2f2fd5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9?= Date: Wed, 3 Oct 2018 11:28:25 +0200 Subject: [PATCH] [Web] Use json_encode for mail attrs when creating a mailbox --- data/web/inc/functions.mailbox.inc.php | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/data/web/inc/functions.mailbox.inc.php b/data/web/inc/functions.mailbox.inc.php index c44d9e81..8332e090 100644 --- a/data/web/inc/functions.mailbox.inc.php +++ b/data/web/inc/functions.mailbox.inc.php @@ -3,6 +3,7 @@ function mailbox($_action, $_type, $_data = null, $_extra = null) { global $pdo; global $redis; global $lang; + global $MAILBOX_DEFAULT_ATTRIBUTES; $_data_log = $_data; !isset($_data_log['password']) ?: $_data_log['password'] = '*'; !isset($_data_log['password2']) ?: $_data_log['password2'] = '*'; @@ -734,6 +735,12 @@ function mailbox($_action, $_type, $_data = null, $_extra = null) { $active = intval($_data['active']); $quota_b = ($quota_m * 1048576); $maildir = $domain . "/" . $local_part . "/"; + $mailbox_attrs = json_encode( + array( + 'force_pw_update' => strval(intval($MAILBOX_DEFAULT_ATTRIBUTES['force_pw_update'])), + 'tls_enforce_in' => strval(intval($MAILBOX_DEFAULT_ATTRIBUTES['tls_enforce_in'])), + 'tls_enforce_out' => strval(intval($MAILBOX_DEFAULT_ATTRIBUTES['tls_enforce_out']))) + ); if (!is_valid_domain_name($domain)) { $_SESSION['return'][] = array( 'type' => 'danger', @@ -867,7 +874,7 @@ function mailbox($_action, $_type, $_data = null, $_extra = null) { return false; } $stmt = $pdo->prepare("INSERT INTO `mailbox` (`username`, `password`, `name`, `maildir`, `quota`, `local_part`, `domain`, `attributes`, `active`) - VALUES (:username, :password_hashed, :name, :maildir, :quota_b, :local_part, :domain, '{\"force_pw_update\": \"0\", \"tls_enforce_in\": \"0\", \"tls_enforce_out\": \"0\"}', :active)"); + VALUES (:username, :password_hashed, :name, :maildir, :quota_b, :local_part, :domain, :mailbox_attrs, :active)"); $stmt->execute(array( ':username' => $username, ':password_hashed' => $password_hashed, @@ -876,6 +883,7 @@ function mailbox($_action, $_type, $_data = null, $_extra = null) { ':quota_b' => $quota_b, ':local_part' => $local_part, ':domain' => $domain, + ':mailbox_attrs' => $mailbox_attrs, ':active' => $active )); $stmt = $pdo->prepare("INSERT INTO `quota2` (`username`, `bytes`, `messages`)