From 506393090bf33ea1aa3a18983748e6a5b4078d4d Mon Sep 17 00:00:00 2001 From: Jens-Christian Fischer Date: Fri, 24 Jan 2014 14:04:37 +0100 Subject: [PATCH] Add 'mail_from_address' configuration In environments where there are rules for the email addresses, the "from address" that owncloud uses has to be configurable. This patch adds a new configuration variable 'mail_from_address'. If it is configured, owncloud will use this as the sender of *all* emails. (OwnCloud uses 'sharing-noreply' and 'password-noreply' by default). By using the 'mail_from_address' configuration, only this email address will be used. --- lib/public/util.php | 1 + tests/lib/util.php | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/lib/public/util.php b/lib/public/util.php index 8e85f9afc3..8514a168b4 100644 --- a/lib/public/util.php +++ b/lib/public/util.php @@ -256,6 +256,7 @@ class Util { * it would return 'lostpassword-noreply@example.com' */ public static function getDefaultEmailAddress($user_part) { + $user_part = \OC_Config::getValue('mail_from_address', $user_part); $host_name = self::getServerHostName(); $host_name = \OC_Config::getValue('mail_domain', $host_name); $defaultEmailAddress = $user_part.'@'.$host_name; diff --git a/tests/lib/util.php b/tests/lib/util.php index 852caaeccc..bfe68f5f68 100644 --- a/tests/lib/util.php +++ b/tests/lib/util.php @@ -88,6 +88,15 @@ class Test_Util extends PHPUnit_Framework_TestCase { OC_Config::deleteKey('mail_domain'); } + function testGetConfiguredEmailAddressFromConfig() { + OC_Config::setValue('mail_domain', 'example.com'); + OC_Config::setValue('mail_from_address', 'owncloud'); + $email = \OCP\Util::getDefaultEmailAddress("no-reply"); + $this->assertEquals('owncloud@example.com', $email); + OC_Config::deleteKey('mail_domain'); + OC_Config::deleteKey('mail_from_address'); + } + function testGetInstanceIdGeneratesValidId() { OC_Config::deleteKey('instanceid'); $this->assertStringStartsWith('oc', OC_Util::getInstanceId());