public function addAJAXOpinionAboutProduct($productid, $params) { $params = App::getModel('formprotection')->filterArray($params); $product = $this->getProductById($productid); $objResponse = new xajaxResponse(); if (strlen($params['nick']) > 0) { $lastId = $this->addOpinionAboutProduct((int) $productid, $params); if (Session::getActiveClientid() > 0) { Session::setVolatileOpinionAdded(1, false); } else { Session::setVolatileOpinionAdded(2, false); } $url = $this->registry->router->generate('admin', true, array('controller' => 'productrange', 'action' => 'edit', 'param' => $lastId)); $this->registry->template->assign('opinion', array('productname' => $product['productname'], 'nick' => $params['nick'], 'review' => trim(strip_tags($params['htmlopinion'])), 'url' => $this->registry->router->generate('admin', true, array('controller' => 'productrange', 'action' => 'edit', 'param' => $lastId)))); $mailer = App::getModel('mailer'); $settings = $mailer->getSettings(Helper::getViewId()); App::getModel('mailer')->sendEmail(array('template' => 'notifyOpinion', 'email' => array($settings['fromemail']), 'bcc' => false, 'subject' => _('TXT_CONTROLLER_PRODUCTREVIEW'), 'viewid' => Helper::getViewId())); $url = $this->registry->router->generate('frontend.productcart', true, array('param' => $product['seo'])); $objResponse->script("window.location.href = '{$url}';"); } else { $objResponse->script("GError('Nie udało się dodać opinii.', 'Aby dodać opinię, musisz podać swój nick.');"); } return $objResponse; }