diff options
author | Kevin Chabowski <kevin@kch42.de> | 2012-06-08 22:52:39 +0200 |
---|---|---|
committer | Kevin Chabowski <kevin@kch42.de> | 2012-06-08 22:52:39 +0200 |
commit | 1dda842bb80414c6d373e7fb41c63d4d31e035b6 (patch) | |
tree | aee98a28c654088de354653781f41521515aa146 /ratatoeskr/sys/models.php | |
parent | 66ecc6db41cd4b7e06f0c953f3b5c88506765b06 (diff) | |
download | ratatoeskr-cms-feature-move-data-checking-to-models.tar.gz ratatoeskr-cms-feature-move-data-checking-to-models.tar.bz2 ratatoeskr-cms-feature-move-data-checking-to-models.zip |
Style::test_name implemented.feature-move-data-checking-to-models
Diffstat (limited to 'ratatoeskr/sys/models.php')
-rw-r--r-- | ratatoeskr/sys/models.php | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/ratatoeskr/sys/models.php b/ratatoeskr/sys/models.php index 2dd48e5..44367dd 100644 --- a/ratatoeskr/sys/models.php +++ b/ratatoeskr/sys/models.php @@ -1130,6 +1130,21 @@ class Style extends BySQLRowEnabled } /* + * Function: test_name + * Test, if a name is a valid Style name. + * + * Parameters: + * $name - The name to test + * + * Returns: + * True, if the name is a valid style name, False if not. + */ + public static function test_name($name) + { + return preg_match("/^[a-zA-Z0-9\\-_\\.]+$/", $name) == 1; + } + + /* * Function: get_id */ public function get_id() { return $this->id; } @@ -1146,6 +1161,9 @@ class Style extends BySQLRowEnabled */ public static function create($name) { + if(!self::test_name($name)) + throw new InvalidDataError("invalid_style_name"); + try { self::by_name($name); @@ -1231,6 +1249,9 @@ class Style extends BySQLRowEnabled */ public function save() { + if(!self::test_name($name)) + throw new InvalidDataError("invalid_style_name"); + $result = qdb("SELECT COUNT(*) AS `n` FROM `PREFIX_styles` WHERE `name` = '%s' AND `id` != %d", $this->name, $this->id); $sqlrow = mysql_fetch_assoc($result); if($sqlrow["n"] > 0) |