triming settings values
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
namespace MailPoet\Models;
|
namespace MailPoet\Models;
|
||||||
|
|
||||||
use MailPoet\Cron\CronTrigger;
|
use MailPoet\Cron\CronTrigger;
|
||||||
|
use MailPoet\Util\Helpers;
|
||||||
|
|
||||||
if(!defined('ABSPATH')) exit;
|
if(!defined('ABSPATH')) exit;
|
||||||
|
|
||||||
@@ -106,6 +107,7 @@ class Setting extends Model {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static function setValue($key, $value) {
|
public static function setValue($key, $value) {
|
||||||
|
$value = Helpers::recursiveTrim($value);
|
||||||
$keys = explode('.', $key);
|
$keys = explode('.', $key);
|
||||||
|
|
||||||
if(count($keys) === 1) {
|
if(count($keys) === 1) {
|
||||||
|
@@ -87,4 +87,12 @@ class Helpers {
|
|||||||
: null;
|
: null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static function recursiveTrim($value) {
|
||||||
|
if(is_array($value))
|
||||||
|
return array_map([__CLASS__, 'recursiveTrim'], $value);
|
||||||
|
if(is_string($value))
|
||||||
|
return trim($value);
|
||||||
|
return $value;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -34,4 +34,27 @@ class HelpersTest extends \MailPoetTest {
|
|||||||
$json = json_encode(array('one' => 1, 'two' => 2));
|
$json = json_encode(array('one' => 1, 'two' => 2));
|
||||||
expect(Helpers::isJson($json))->true();
|
expect(Helpers::isJson($json))->true();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function testItTrimStringsRecursively() {
|
||||||
|
expect(Helpers::recursiveTrim(' foo'))->equals('foo');
|
||||||
|
expect(Helpers::recursiveTrim('foo '))->equals('foo');
|
||||||
|
expect(Helpers::recursiveTrim(123))->equals(123);
|
||||||
|
expect(Helpers::recursiveTrim([
|
||||||
|
'name' => ' some text here ',
|
||||||
|
'list' => [
|
||||||
|
'string 1',
|
||||||
|
'string 2 ',
|
||||||
|
' string 3 '
|
||||||
|
],
|
||||||
|
'number' => 523
|
||||||
|
]))->equals([
|
||||||
|
'name' => 'some text here',
|
||||||
|
'list' => [
|
||||||
|
'string 1',
|
||||||
|
'string 2',
|
||||||
|
'string 3'
|
||||||
|
],
|
||||||
|
'number' => 523
|
||||||
|
]);
|
||||||
|
}
|
||||||
}
|
}
|
Reference in New Issue
Block a user