From 716bcedd7654ea4e4b6feca510d086cb9d3beb2c Mon Sep 17 00:00:00 2001 From: hartym Date: Sun, 30 Dec 2007 18:44:00 +0000 Subject: [PATCH] Problem on Sluggable Listener default values merging --- lib/Doctrine/Template/Listener/Sluggable.php | 8 ++++---- lib/Doctrine/Template/Sluggable.php | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/lib/Doctrine/Template/Listener/Sluggable.php b/lib/Doctrine/Template/Listener/Sluggable.php index 7e46afa19..4daac76ce 100644 --- a/lib/Doctrine/Template/Listener/Sluggable.php +++ b/lib/Doctrine/Template/Listener/Sluggable.php @@ -44,7 +44,7 @@ class Doctrine_Template_Listener_Sluggable extends Doctrine_Record_Listener 'length' => null, 'options' => array(), 'fields' => array()); - + /** * __construct * @@ -53,7 +53,7 @@ class Doctrine_Template_Listener_Sluggable extends Doctrine_Record_Listener */ public function __construct(array $options) { - $this->_options = array_merge($options, $this->_options); + $this->_options = Doctrine_Lib::arrayDeepMerge($this->_options, $options); } public function preInsert(Doctrine_Event $event) @@ -61,7 +61,7 @@ class Doctrine_Template_Listener_Sluggable extends Doctrine_Record_Listener $name = $this->_options['name']; $record = $event->getInvoker(); - + if (!$record->$name) { $record->$name = $this->buildSlug($record); } @@ -80,4 +80,4 @@ class Doctrine_Template_Listener_Sluggable extends Doctrine_Record_Listener return Doctrine_Inflector::urlize($value); } -} \ No newline at end of file +} diff --git a/lib/Doctrine/Template/Sluggable.php b/lib/Doctrine/Template/Sluggable.php index 1c6c44a03..58bf16b1c 100644 --- a/lib/Doctrine/Template/Sluggable.php +++ b/lib/Doctrine/Template/Sluggable.php @@ -44,7 +44,7 @@ class Doctrine_Template_Sluggable extends Doctrine_Template 'length' => null, 'options' => array(), 'fields' => array()); - + /** * __construct * @@ -55,7 +55,7 @@ class Doctrine_Template_Sluggable extends Doctrine_Template { $this->_options = Doctrine_Lib::arrayDeepMerge($this->_options, $options); } - + /** * setTableDefinition * @@ -64,7 +64,7 @@ class Doctrine_Template_Sluggable extends Doctrine_Template public function setTableDefinition() { $this->hasColumn($this->_options['name'], $this->_options['type'], $this->_options['length'], $this->_options['options']); - + $this->addListener(new Doctrine_Template_Listener_Sluggable($this->_options)); } -} \ No newline at end of file +}