diff options
author | Fabio Bas <ctrlaltca@gmail.com> | 2015-01-20 22:34:11 +0100 |
---|---|---|
committer | Fabio Bas <ctrlaltca@gmail.com> | 2015-01-20 22:34:11 +0100 |
commit | 7369988330bf8796d9cf2564756baf4eb46871ba (patch) | |
tree | 60a0bac5467b76ab6ed45328ed8c4e65703400b7 /framework/Web/UI/ActiveControls/TMapCollectionDiff.php | |
parent | ef4d964de440970b76ab48fcbd6748f43675efa3 (diff) |
one class per file: framework/Web/UI/ActiveControls
Diffstat (limited to 'framework/Web/UI/ActiveControls/TMapCollectionDiff.php')
-rw-r--r-- | framework/Web/UI/ActiveControls/TMapCollectionDiff.php | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/framework/Web/UI/ActiveControls/TMapCollectionDiff.php b/framework/Web/UI/ActiveControls/TMapCollectionDiff.php new file mode 100644 index 00000000..ff8a4dfe --- /dev/null +++ b/framework/Web/UI/ActiveControls/TMapCollectionDiff.php @@ -0,0 +1,40 @@ +<?php +/** + * TActiveControlAdapter and TCallbackPageStateTracker class file. + * + * @author Wei Zhuo <weizhuo[at]gamil[dot]com> + * @link http://www.pradosoft.com/ + * @copyright Copyright © 2005-2014 PradoSoft + * @license http://www.pradosoft.com/license/ + * @package System.Web.UI.ActiveControls + */ + +/** + * TMapCollectionDiff class. + * + * Calculate the changes to attributes collection. + * + * @author Wei Zhuo <weizhuo[at]gmail[dot]com> + * @package System.Web.UI.ActiveControls + * @since 3.1 + */ +class TMapCollectionDiff extends TViewStateDiff +{ + /** + * @return array updates to the attributes collection. + */ + public function getDifference() + { + if($this->_old===null) + { + return ($this->_new!==null) ? $this->_new->toArray() : $this->_null; + } + else + { + $new = $this->_new->toArray(); + $old = $this->_old->toArray(); + $diff = array_diff_assoc($new, $old); + return count($diff) > 0 ? $diff : $this->_null; + } + } +}
\ No newline at end of file |