function getViewer($action) { // If there is no dynamic template, or it doesn't contain // SSViewer templates, use default handling. if (!$this->customTemplates) { return parent::getViewer($action); } // @todo: Handle all cases that can come out in the templates // for an action. Determine error handling if action is not handled, // and index is not present. return new SSDynamicViewer($this->customTemplates); }
/** * Return an SSViewer object to process the data * Manipulates the SSViewer in case of a product detail view. * * @param string $action Action * * @return SSViewer The viewer identified being the default handler for this Controller/Action combination */ public function getViewer($action) { $viewer = parent::getViewer($action); if ($this->isProductDetailView()) { $this->ProductDetailRequirements(); $templates = $viewer->templates(); $viewer = new SSViewer(array('SilvercartProductPage', basename($templates['main'], '.ss'))); } return $viewer; }