Use whitelist validator to enforce enum
This commit is contained in:
parent
9e4343e2ba
commit
42ff17d163
|
@ -44,6 +44,7 @@ use Utopia\Database\Database;
|
||||||
use Utopia\Database\Validator\Structure;
|
use Utopia\Database\Validator\Structure;
|
||||||
use Utopia\Database\Validator\Authorization;
|
use Utopia\Database\Validator\Authorization;
|
||||||
use Utopia\Validator\Range;
|
use Utopia\Validator\Range;
|
||||||
|
use Utopia\Validator\WhiteList;
|
||||||
use Swoole\Database\PDOConfig;
|
use Swoole\Database\PDOConfig;
|
||||||
use Swoole\Database\PDOPool;
|
use Swoole\Database\PDOPool;
|
||||||
use Swoole\Database\RedisConfig;
|
use Swoole\Database\RedisConfig;
|
||||||
|
@ -63,6 +64,7 @@ const APP_LIMIT_USERS = 10000;
|
||||||
const APP_CACHE_BUSTER = 151;
|
const APP_CACHE_BUSTER = 151;
|
||||||
const APP_VERSION_STABLE = '0.9.4';
|
const APP_VERSION_STABLE = '0.9.4';
|
||||||
const APP_DATABASE_ATTRIBUTE_EMAIL = 'email';
|
const APP_DATABASE_ATTRIBUTE_EMAIL = 'email';
|
||||||
|
const APP_DATABASE_ATTRIBUTE_ENUM = 'enum';
|
||||||
const APP_DATABASE_ATTRIBUTE_IP = 'ip';
|
const APP_DATABASE_ATTRIBUTE_IP = 'ip';
|
||||||
const APP_DATABASE_ATTRIBUTE_URL = 'url';
|
const APP_DATABASE_ATTRIBUTE_URL = 'url';
|
||||||
const APP_DATABASE_ATTRIBUTE_INT_RANGE = 'intRange';
|
const APP_DATABASE_ATTRIBUTE_INT_RANGE = 'intRange';
|
||||||
|
@ -270,6 +272,11 @@ Structure::addFormat(APP_DATABASE_ATTRIBUTE_EMAIL, function() {
|
||||||
return new Email();
|
return new Email();
|
||||||
}, Database::VAR_STRING);
|
}, Database::VAR_STRING);
|
||||||
|
|
||||||
|
Structure::addFormat(APP_DATABASE_ATTRIBUTE_ENUM, function($attribute) {
|
||||||
|
$elements = $attribute['formatOptions']['elements'];
|
||||||
|
return new WhiteList($elements);
|
||||||
|
}, Database::VAR_STRING);
|
||||||
|
|
||||||
Structure::addFormat(APP_DATABASE_ATTRIBUTE_IP, function() {
|
Structure::addFormat(APP_DATABASE_ATTRIBUTE_IP, function() {
|
||||||
return new IP();
|
return new IP();
|
||||||
}, Database::VAR_STRING);
|
}, Database::VAR_STRING);
|
||||||
|
|
Loading…
Reference in a new issue