Esempio n. 1
0
 /**
  *
  * @param string $url
  * @return Gpf_Ui_Controller_Url
  */
 public function parse($url)
 {
     $this->url = new Gpf_Ui_Controller_Url($url);
     $parsedUrl = parse_url('http://localhost/' . $url);
     if (isset($parsedUrl['query'])) {
         $this->url->setQuery($parsedUrl['query']);
     }
     if (isset($parsedUrl['fragment'])) {
         $this->url->setFragment($parsedUrl['fragment']);
     }
     $this->parsePath($parsedUrl);
     return $this->url;
 }
 public function getUrl(Gpf_Ui_Page $controller)
 {
     $url = new Gpf_Ui_Controller_Url();
     $pathString = '';
     if ($controller->getKeyword() != '') {
         $pathString = $controller->getKeyword() . '_';
     }
     foreach ($controller->getParams() as $name => $value) {
         $pathString .= $name . $value . '_';
     }
     $pathString .= $controller->getCode() . $controller->getValue();
     $url->setPathString($pathString);
     $query = '';
     foreach ($controller->getQueryParams() as $name => $value) {
         $query .= $name . '=' . urlencode($value) . '&';
     }
     $query = rtrim($query, '&');
     $url->setQuery($query);
     return $url;
 }