From f18f3e606b2c1b8e7de3def314b79bb7f2c69830 Mon Sep 17 00:00:00 2001 From: "Christophe.Boulain" <> Date: Mon, 11 May 2009 08:40:37 +0000 Subject: Fixed Issue#150 --- HISTORY | 1 + framework/Web/UI/ActiveControls/TDropContainer.php | 10 +++------- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/HISTORY b/HISTORY index a03904da..6b20829f 100644 --- a/HISTORY +++ b/HISTORY @@ -14,6 +14,7 @@ BUG: Issue#127 - TDataSourceConfig::findConnectionByID try to access private var BUG: Issue#129 - TDbLogRoute::init don't close the sql command (Christophe) BUG: Issue#130 - TDbLogRoute::processLogs wrong values binding (Christophe) BUG: Issue#136 - TActiveDatePicker don't callback when ShowCalendar is false (Christophe) +BUG: Issue#150 - Multiple TDropContainers in same namingcontainer give error (Christophe) BUG: URL wildcard patterns didn't work with subfolders BUG: TDbLogRoute::createDbTable: add AUTO_INCREMENT attribute to log_id column if driver is mysql (Yves) BUG: Ensure rendering of clientID in TActivePanel (Christophe) diff --git a/framework/Web/UI/ActiveControls/TDropContainer.php b/framework/Web/UI/ActiveControls/TDropContainer.php index 5d090d95..75a80625 100755 --- a/framework/Web/UI/ActiveControls/TDropContainer.php +++ b/framework/Web/UI/ActiveControls/TDropContainer.php @@ -123,12 +123,8 @@ class TDropContainer extends TPanel implements IActiveControl, ICallbackEventHan { // Find the control // Warning, this will not work if you have a '_' in your control Id ! - $control=$this->getPage(); - $namingContainers=explode(TControl::CLIENT_ID_SEPARATOR, $dropControlId); - foreach ($namingContainers as $nc) - { - $control=$control->findControl($nc); - } + $dropControlId=str_replace(TControl::CLIENT_ID_SEPARATOR,TControl::ID_SEPARATOR,$dropControlId); + $control=$this->getPage()->findControl($dropControlId); $this->raiseEvent('OnDrop', $this, new TDropContainerEventParameter ($control)); } @@ -196,7 +192,7 @@ class TDropContainer extends TPanel implements IActiveControl, ICallbackEventHan if ($this->_container===null) { $this->_container=Prado::CreateComponent('System.Web.UI.ActiveControls.TActivePanel'); - $this->_container->setId($this->getId().'_content'); + $this->_container->setId($this->getId(false).'_content'); parent::getControls()->add($this->_container); } } -- cgit v1.2.3