示例#1
0
 private function buildEmail(Project $project, Notification $notification, MailEnhancer $mail_enhancer, $email)
 {
     $mail = $this->getMailSender();
     $mail->setFrom(ForgeConfig::get('sys_noreply'));
     $mail->setTo($email);
     if ($project->getTruncatedEmailsUsage()) {
         $presenter = new MailPresenter($notification->getServiceName(), $notification->getGotoLink(), ForgeConfig::get('sys_fullname'));
         $mail->setSubject($this->renderer->renderToString(self::TRUNCATED_SUBJECT_TEMPLATE, $presenter));
         $mail->setBodyHtml($this->renderer->renderToString(self::TRUNCATED_BODY_TEMPLATE, $presenter));
     } else {
         $mail_enhancer->enhanceMail($mail);
         if ($notification->hasHTMLBody()) {
             $mail->setBodyHtml($notification->getHTMLBody());
         }
         if ($notification->hasTextBody()) {
             $mail->setBodyText($notification->getTextBody());
         }
         $mail->setSubject($notification->getSubject());
     }
     return $mail;
 }
示例#2
0
 /**
  * @return Codendi_Mail
  */
 public function buildEmail(Project $project, Notification $notification)
 {
     $mail = new Codendi_Mail();
     $mail->setFrom(ForgeConfig::get('sys_noreply'));
     $mail->setBcc($this->getBcc($notification));
     $mail->setTo('');
     if ($project->getTruncatedEmailsUsage()) {
         $presenter = new MailPresenter($notification->getServiceName(), $notification->getGotoLink(), ForgeConfig::get('sys_fullname'));
         $mail->setSubject($this->renderer->renderToString(self::TRUNCATED_SUBJECT_TEMPLATE, $presenter));
         $mail->setBodyHtml($this->renderer->renderToString(self::TRUNCATED_BODY_TEMPLATE, $presenter));
     } else {
         if ($notification->hasHTMLBody()) {
             $mail->setBodyHtml($notification->getHTMLBody());
         }
         if ($notification->hasTextBody()) {
             $mail->setBodyText($notification->getTextBody());
         }
         $mail->setSubject($notification->getSubject());
     }
     return $mail;
 }
 /**
  * Returns a new Codendi_Mail.
  *
  * @return Codendi_Mail
  */
 public function getMailNotificationProject($subject, $from, $to, $project)
 {
     $mail = new Codendi_Mail();
     $cid_logo = $this->addLogoInAttachment($mail);
     $mail->setSubject($subject);
     $mail->setTo($to);
     $presenter = $this->mail_presenter_factory->createMailProjectNotificationPresenter($project, $cid_logo);
     $mail->setBodyHtml($this->renderer->renderToString($this->template, $presenter));
     $mail->setBodyText($presenter->getMessageText());
     $mail->setFrom($from);
     return $mail;
 }
 /**
  * @param Search_SearchQuery $query
  * @return Search_SearchResults
  */
 private function doSearch(Search_SearchQuery $query)
 {
     $results = new Search_SearchResults();
     $search = new Search_SearchPlugin($this->event_manager);
     $search->search($query, $results);
     if ($results->getResultsHtml() !== '') {
         return $results;
     }
     if (!isset($this->search_types[$query->getTypeOfSearch()])) {
         return $results;
     }
     $presenter = $this->search_types[$query->getTypeOfSearch()]->search($query, $results);
     if ($presenter) {
         if ($query->isAjax() && $query->getOffset() > 0) {
             $results->setResultsHtml($this->renderer->renderToString($presenter->getTemplate() . '-more', $presenter));
         } else {
             $results->setResultsHtml($this->renderer->renderToString($presenter->getTemplate(), $presenter));
         }
     }
     return $results;
 }
示例#5
0
 protected function fetchTable()
 {
     return $this->renderer->renderToString('backlog', $this);
 }
 public function getAllIncludesForHostname($hostname, array $project_names)
 {
     return $this->template_renderer->renderToString('gitolite-includes-for-hostname.conf', array("hostname" => $hostname, "project_names" => $project_names));
 }
示例#7
0
 protected function renderToString($template_name, $presenter)
 {
     return $this->renderer->renderToString($template_name, $presenter);
 }