protected function getObject() { $this->title = $this->object->title; $this->crumbName = $this->object->title; $this->addCrumb(); if (null !== ($tag = $this->request->consume())) { $obj = null; if (null !== ($uuid = UUID::isUUID($tag))) { $rs = $this->model->query(array('uuid' => $uuid, 'parent' => $this->object->uuid)); $obj = $rs->next(); } else { $rs = $this->model->query(array('tag' => $tag, 'parent' => $this->object->uuid)); $obj = $rs->next(); } if (!$obj) { return $this->error(Error::OBJECT_NOT_FOUND); } switch ($obj->kind) { case 'episode': require_once dirname(__FILE__) . '/browse-episode.php'; $inst = new MediaBrowseEpisode(); $inst->object = $obj; $inst->process($this->request); return false; } print_r($obj); die('-- unhandled object --'); } $this->object->merge(); $this->episodes = $this->model->query(array('kind' => 'episode', 'parent' => $this->object->uuid)); if ($this->episodes->EOF) { $this->episodes = null; } return true; }
protected function getObject() { if (null === ($tag = $this->request->consume())) { return true; } if ($uuid = UUID::isUUID($tag)) { $this->object = $this->model->objectForUUID($uuid); } else { $this->object = $this->model->locateObject($tag); } if ($this->object) { if ($this->object instanceof Episode) { if (isset($this->object->series) || isset($this->object->show)) { $this->request->redirect($this->request->base . $this->object->relativeURI); return false; } require_once dirname(__FILE__) . '/browse-episode.php'; $inst = new MediaBrowseEpisode(); $inst->object = $this->object; $inst->process($this->request); return false; } if ($this->object instanceof Show) { if ($this->object->kind == 'series') { $this->request->redirect($this->request->base . $this->object->relativeURI); } require_once dirname(__FILE__) . '/browse-show.php'; $inst = new MediaBrowseShow(); $inst->object = $this->object; $inst->process($this->request); return false; } if ($this->object instanceof Scheme) { require_once dirname(__FILE__) . '/browse-classes.php'; $inst = new MediaBrowseClasses(); $inst->object = $this->object; $inst->process($this->request); return false; } print_r($this->object); die; } return $this->error(Error::OBJECT_NOT_FOUND); }
protected function getObject() { $this->title = $this->object->title; $this->crumbName = $this->object->title; $this->addCrumb(); if (null !== ($tag = $this->request->consume())) { $obj = $this->model->locateObject($tag, $this->object->uuid); if (!$obj) { return $this->error(Error::OBJECT_NOT_FOUND); } switch ($obj->kind) { case 'episode': if (isset($obj->series)) { $this->request->redirect($this->request->base . $obj->relativeURI); return false; } require_once dirname(__FILE__) . '/browse-episode.php'; $inst = new MediaBrowseEpisode(); $inst->object = $obj; $inst->process($this->request); return false; case 'series': require_once dirname(__FILE__) . '/browse-series.php'; $inst = new MediaBrowseSeries(); $inst->object = $obj; $inst->process($this->request); return false; } print_r($obj); die('-- unhandled object --'); } $this->series = $this->model->query(array('kind' => 'series', 'parent' => $this->object->uuid)); if ($this->series->EOF) { $this->series = null; } $this->episodes = $this->model->query(array('kind' => 'episode', 'parent' => $this->object->uuid)); if ($this->episodes->EOF) { $this->episodes = null; } return true; }