diff options
author | AlexKlimenkov <shurick.klimenkov@gmail.com> | 2014-06-10 20:50:30 +0300 |
---|---|---|
committer | AlexKlimenkov <shurick.klimenkov@gmail.com> | 2014-06-10 20:50:30 +0300 |
commit | b5a0589955460a44c5428c4cb5429fcfce265d23 (patch) | |
tree | 87db58400a3e036de646fb630cbb358beeac3bc1 /codebase/connector/dataprocessor.php | |
parent | e2aaaef8540fabd0b5200a4959c269d6f1ae352e (diff) | |
download | scheduler-b5a0589955460a44c5428c4cb5429fcfce265d23.zip scheduler-b5a0589955460a44c5428c4cb5429fcfce265d23.tar.gz scheduler-b5a0589955460a44c5428c4cb5429fcfce265d23.tar.bz2 |
[update] version 4.1.0
Diffstat (limited to 'codebase/connector/dataprocessor.php')
-rw-r--r-- | codebase/connector/dataprocessor.php | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/codebase/connector/dataprocessor.php b/codebase/connector/dataprocessor.php index e75fc85..26f778b 100644 --- a/codebase/connector/dataprocessor.php +++ b/codebase/connector/dataprocessor.php @@ -160,12 +160,15 @@ class DataProcessor{ $mode = $this->status_to_mode($action->get_status()); if (!$this->connector->access->check($mode)){ - LogMaster::log("Access control: {$operation} operation blocked"); + LogMaster::log("Access control: {$mode} operation blocked"); $action->error(); } else { $check = $this->connector->event->trigger("beforeProcessing",$action); if (!$action->is_ready()) $this->check_exts($action,$mode); + if ($mode == "insert" && $action->get_status() != "error" && $action->get_status() != "invalid") + $this->connector->sql->new_record_order($action, $this->request); + $check = $this->connector->event->trigger("afterProcessing",$action); } @@ -178,13 +181,14 @@ class DataProcessor{ if ($this->connector->sql->is_record_transaction()){ if ($action->get_status()=="error" || $action->get_status()=="invalid") - $this->connector->sql->rollback_transaction(); + $this->connector->sql->rollback_transaction(); else - $this->connector->sql->commit_transaction(); + $this->connector->sql->commit_transaction(); } - + return $action; } + /*! check if some event intercepts processing, send data to DataWrapper in other case @param action @@ -484,11 +488,23 @@ class DataAction{ function to_xml(){ $str="<action type='{$this->status}' sid='{$this->id}' tid='{$this->nid}' "; foreach ($this->attrs as $k => $v) { - $str.=$k."='".$v."' "; + $str.=$k."='".$this->xmlentities($v)."' "; } $str.=">{$this->output}</action>"; return $str; } + + /*! replace xml unsafe characters + + @param string + string to be escaped + @return + escaped string + */ + public function xmlentities($string) { + return str_replace( array( '&', '"', "'", '<', '>', '’' ), array( '&' , '"', ''' , '<' , '>', ''' ), $string); + } + /*! convert self to string ( for logs ) @return |