예제 #1
0
 public function parse(Library\HttpUrl $url)
 {
     $vars = array();
     $path =& $url->path;
     $page = $this->getObject('application.pages')->getActive();
     $query = $page->getLink()->query;
     if ($path[0] === 'file') {
         // file view
         $vars['view'] = array_shift($path);
         $vars['name'] = array_pop($path) . '.' . $url->getFormat();
         $vars['folder'] = $query['folder'] ? $query['folder'] . '/' : '';
         $vars['folder'] .= implode('/', $path);
     } else {
         // directory view
         $vars['view'] = 'directory';
         $vars['layout'] = $query['layout'];
         $vars['folder'] = $query['folder'] . '/' . implode('/', $path);
     }
     $vars['folder'] = str_replace('%2E', '.', $vars['folder']);
     $vars['layout'] = $query['layout'];
     return $vars;
 }