Esempio n. 1
0
 /**
  * handle add
  */
 public function addComment($values)
 {
     $request = Request::getInstance();
     $view = ViewManager::getInstance();
     $values['active'] = 1;
     try {
         $id = $this->insert($values);
         $gallery = $this->plugin->getObject(Gallery::TYPE_DEFAULT);
         $galleryDetail = $gallery->getDetail(array('id' => $values['gal_id']));
         $url = new Url();
         $url->setPath($this->director->tree->getPath($galleryDetail['tree_id']));
         $url->setParameter('id', $galleryDetail['id']);
         $url->setParameter($view->getUrlId(), Gallery::VIEW_DETAIL);
         // notify insert
         $ip = $request->getValue('REMOTE_ADDR', Request::SERVER);
         $template = new TemplateEngine($this->getPath() . "templates/gallerycommentemail.tpl");
         $template->setVariable($values);
         $template->setVariable('galleryName', $galleryDetail['name']);
         $template->setVariable('href_detail', $url->getUrl());
         $template->setVariable('siteTitle', $this->director->tree->getTreeName());
         $template->setVariable('domain', $request->getDomain());
         $template->setVariable('protocol', $request->getProtocol());
         $template->setVariable('ip', $ip);
         $template->setVariable('host', gethostbyaddr($ip));
         $template->setVariable('client', $request->getValue('HTTP_USER_AGENT', Request::SERVER));
         $this->director->systemUser->notify($galleryDetail['tree_id'], 'Comment added at ' . $request->getDomain(), $template->fetch());
     } catch (Exception $e) {
         $template = new TemplateEngine();
         $template->setVariable('commentError', $e->getMessage(), false);
         $template->setVariable('cmtValues', $values, false);
     }
 }
Esempio n. 2
0
 /**
  * Manages form output rendering
  * @param string Smarty template object
  * @see GuiProvider::renderForm
  */
 public function renderForm($theme)
 {
     $view = ViewManager::getInstance();
     $template = $theme->getTemplate();
     $template->setVariable($view->getUrlId(), $view->getName(), false);
     // parse rpc javascript to set variables
     $theme->addFileVar('gallery_htdocs_path', $this->plugin->getHtdocsPath());
     $rpcfile_src = $this->plugin->getHtdocsPath(true) . "js/rpc.js.in";
     $theme->addJavascript($theme->fetchFile($rpcfile_src));
     $theme->addHeader('<script type="text/javascript" src="' . DIF_VIRTUAL_WEB_ROOT . 'js/prototype.js"></script>');
     $theme->addHeader('<script type="text/javascript" src="' . DIF_VIRTUAL_WEB_ROOT . 'js/jsxmlrpc/lib/xmlrpc_lib.js"></script>');
     $theme->addHeader('<script type="text/javascript" src="' . DIF_VIRTUAL_WEB_ROOT . 'js/jsxmlrpc/lib/xmlrpc_wrappers.js"></script>');
     // render comments
     $objComment = $this->plugin->getObject(Gallery::TYPE_COMMENT);
     $objComment->renderForm($theme);
     if ($this->reference) {
         foreach ($this->reference as $object) {
             $object->renderForm($theme);
         }
     }
     foreach ($this->template as $key => $value) {
         $template->setVariable($key, $value, false);
     }
 }