From a9951e6a822996057e5b05a873ea468045f37728 Mon Sep 17 00:00:00 2001 From: xue <> Date: Sun, 29 Oct 2006 12:29:16 +0000 Subject: constructUrl() now encodes & into & by default. TRepeater does not render anymore for empty item template. --- framework/Web/Services/TPageService.php | 4 ++-- framework/Web/THttpRequest.php | 4 ++-- framework/Web/UI/WebControls/TRepeater.php | 4 +--- 3 files changed, 5 insertions(+), 7 deletions(-) (limited to 'framework/Web') diff --git a/framework/Web/Services/TPageService.php b/framework/Web/Services/TPageService.php index ac4787f2..3e33fbb4 100644 --- a/framework/Web/Services/TPageService.php +++ b/framework/Web/Services/TPageService.php @@ -462,11 +462,11 @@ class TPageService extends TService * Constructs a URL with specified page path and GET parameters. * @param string page path * @param array list of GET parameters, null if no GET parameters required - * @param boolean whether to encode the ampersand in URL, defaults to false. + * @param boolean whether to encode the ampersand in URL, defaults to true. * @param boolean whether to encode the GET parameters (their names and values), defaults to true. * @return string URL for the page and GET parameters */ - public function constructUrl($pagePath,$getParams=null,$encodeAmpersand=false,$encodeGetItems=true) + public function constructUrl($pagePath,$getParams=null,$encodeAmpersand=true,$encodeGetItems=true) { return $this->getRequest()->constructUrl($this->getID(),$pagePath,$getParams,$encodeAmpersand,$encodeGetItems); } diff --git a/framework/Web/THttpRequest.php b/framework/Web/THttpRequest.php index 90007fa2..44efb14b 100644 --- a/framework/Web/THttpRequest.php +++ b/framework/Web/THttpRequest.php @@ -482,12 +482,12 @@ class THttpRequest extends TApplicationComponent implements IteratorAggregate,Ar * @param string service ID * @param string service parameter * @param array GET parameters, null if not needed - * @param boolean whether to encode the ampersand in URL, defaults to false. + * @param boolean whether to encode the ampersand in URL, defaults to true. * @param boolean whether to encode the GET parameters (their names and values), defaults to true. * @return string URL * @see parseUrl */ - public function constructUrl($serviceID,$serviceParam,$getItems=null,$encodeAmpersand=false,$encodeGetItems=true) + public function constructUrl($serviceID,$serviceParam,$getItems=null,$encodeAmpersand=true,$encodeGetItems=true) { $url=$serviceID.'='.$serviceParam; $amp=$encodeAmpersand?'&':'&'; diff --git a/framework/Web/UI/WebControls/TRepeater.php b/framework/Web/UI/WebControls/TRepeater.php index 357a8730..046e0a88 100644 --- a/framework/Web/UI/WebControls/TRepeater.php +++ b/framework/Web/UI/WebControls/TRepeater.php @@ -364,10 +364,8 @@ class TRepeater extends TDataBoundControl implements INamingContainer */ public function render($writer) { - if($this->_items && $this->_items->getCount()) + if($this->_items && $this->_items->getCount() || $this->_emptyTemplate!==null) $this->renderContents($writer); - else if($this->_emptyTemplate!==null) - parent::render($writer); } /** -- cgit v1.2.3