diff options
Diffstat (limited to 'app/php/url/UrlManager.php')
-rw-r--r-- | app/php/url/UrlManager.php | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/app/php/url/UrlManager.php b/app/php/url/UrlManager.php deleted file mode 100644 index a33d98e..0000000 --- a/app/php/url/UrlManager.php +++ /dev/null @@ -1,57 +0,0 @@ -<?php - -Prado::using('System.Web.TUrlMapping'); - -class UrlManager extends TUrlMapping { - - public function constructUrl($serviceID, $serviceParam, $getItems, $encodeAmpersand, $encodeGetItems) { - $url = parent::constructUrl( - $serviceID, - $serviceParam, - $getItems, - $encodeAmpersand, - $encodeGetItems - ); - return rtrim( - preg_replace( - '#^/' . $serviceParam . '#', - '/' . $this->_convertServiceParam($serviceParam), - preg_replace('#^/' . $serviceID . '#', '', $url) - ), - '/' - ) . '/'; - } - - public function parseUrl() { - $params = parent::parseUrl(); - if ($this->MatchingPattern) { - $serviceID = $this->MatchingPattern->ServiceID; - if (isset($params[$serviceID])) { - $params[$serviceID] = $this->_parseServiceParam($params[$serviceID]); - } - } - return $params; - } - - /** - * Convert service param from camelCase to hyphenated-form. - **/ - private function _convertServiceParam($param) { - return implode( - '-', - array_map('mb_strtolower', array_filter(preg_split('/(?=[A-Z])/', $param))) - ); - } - - /** - * Convert service param from hyphenated-form to camelCase. - **/ - private function _parseServiceParam($param) { - return implode( - '', - array_map('ucfirst', explode('-', $param)) - ); - } -} - -?> |