From cb0aeb81d77d7170196f1b667978f56c6018100b Mon Sep 17 00:00:00 2001 From: xue <> Date: Sat, 25 Nov 2006 20:51:43 +0000 Subject: merge from 3.0 branch till 1508. --- framework/Web/THttpRequest.php | 2 +- framework/Web/THttpResponse.php | 2 +- framework/Web/UI/WebControls/THead.php | 30 ++++++++++++++++++++++++++++++ 3 files changed, 32 insertions(+), 2 deletions(-) (limited to 'framework/Web') diff --git a/framework/Web/THttpRequest.php b/framework/Web/THttpRequest.php index 44efb14b..bb7b4281 100644 --- a/framework/Web/THttpRequest.php +++ b/framework/Web/THttpRequest.php @@ -483,7 +483,7 @@ class THttpRequest extends TApplicationComponent implements IteratorAggregate,Ar * @param string service parameter * @param array GET parameters, null if not needed * @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. + * @param boolean whether to encode the GET parameters (their names and values), defaults to false. * @return string URL * @see parseUrl */ diff --git a/framework/Web/THttpResponse.php b/framework/Web/THttpResponse.php index ad935103..3a6d0aa3 100644 --- a/framework/Web/THttpResponse.php +++ b/framework/Web/THttpResponse.php @@ -318,7 +318,7 @@ class THttpResponse extends TModule implements ITextWriter $this->getApplication()->onEndRequest(); if($url[0]==='/') $url=$this->getRequest()->getBaseUrl().$url; - header('Location: '.$url); + header('Location: '.str_replace('&','&',$url)); exit(); } diff --git a/framework/Web/UI/WebControls/THead.php b/framework/Web/UI/WebControls/THead.php index 93858da0..746d33ac 100644 --- a/framework/Web/UI/WebControls/THead.php +++ b/framework/Web/UI/WebControls/THead.php @@ -342,6 +342,36 @@ class TMetaTagCollection extends TList else throw new TInvalidDataTypeException('metatagcollection_metatag_invalid'); } + + /** + * Finds the lowest cardinal index of the meta tag whose id is the one being looked for. + * @param string the ID of the meta tag to be looked for + * @return integer the index of the meta tag found, -1 if not found. + */ + public function findIndexByID($id) + { + $index=0; + foreach($this as $item) + { + if($item->getID()===$id) + return $index; + $index++; + } + return -1; + } + + /** + * Finds the item whose value is the one being looked for. + * @param string the id of the meta tag to be looked for + * @return TMetaTag the meta tag found, null if not found. + */ + public function findMetaTagByID($id) + { + if(($index=$this->findIndexByID($id))>=0) + return $this->itemAt($index); + else + return null; + } } ?> \ No newline at end of file -- cgit v1.2.3