diff options
author | Thomas Lange <code@nerdmind.de> | 2017-04-29 01:09:30 +0200 |
---|---|---|
committer | Thomas Lange <code@nerdmind.de> | 2017-04-29 01:13:32 +0200 |
commit | 9626fb5c6a4d7451e88aa7bd7fa91306d3f3f1ea (patch) | |
tree | fd3a488d2f910781ef172b5447f3a476cdf0379e /core/namespace/Item.php | |
parent | 07eaab716f894b7668fd2aea6c3cbe81036efdf2 (diff) | |
download | blog-9626fb5c6a4d7451e88aa7bd7fa91306d3f3f1ea.tar.gz blog-9626fb5c6a4d7451e88aa7bd7fa91306d3f3f1ea.tar.xz blog-9626fb5c6a4d7451e88aa7bd7fa91306d3f3f1ea.zip |
Two changes have been made in this commit:
+ The method "Item::getArguments" has been optimized and checks now the syntax of the argument names (only A-Z, a-z, 0-9 and underscores are allowed).
+ The admin template has been changed and displays now the used arguments of an item within the list.
Diffstat (limited to 'core/namespace/Item.php')
-rw-r--r-- | core/namespace/Item.php | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/core/namespace/Item.php b/core/namespace/Item.php index 426dd2a..f1a0988 100644 --- a/core/namespace/Item.php +++ b/core/namespace/Item.php @@ -106,11 +106,14 @@ abstract class Item implements ItemInterface { #=============================================================================== public function getArguments(): array { if($argv = $this->Attribute->get('argv')) { - foreach(explode('|', rtrim($argv, '|')) as $delimeter) { + foreach(explode('|', $argv) as $delimeter) { $part = explode('=', $delimeter); - if(!empty($part[0])) { - $arguments[strtoupper($part[0])] = $part[1] ?? TRUE; + $argumentK = $part[0] ?? NULL; + $argumentV = $part[1] ?? TRUE; + + if(preg_match('#^[[:word:]]+$#', $argumentK)) { + $arguments[strtoupper($argumentK)] = $argumentV; } } } |