From 28c4ac6a1983d342c61f4c052e142386ba3acb51 Mon Sep 17 00:00:00 2001 From: KOUNOIKE Yuusuke Date: Mon, 14 Aug 2017 13:10:57 +0900 Subject: [PATCH 1/3] Add support to MIME Text part. --- .../scala/gitbucket/core/util/Notifier.scala | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/main/scala/gitbucket/core/util/Notifier.scala b/src/main/scala/gitbucket/core/util/Notifier.scala index 0c7d86197..4b9a57013 100644 --- a/src/main/scala/gitbucket/core/util/Notifier.scala +++ b/src/main/scala/gitbucket/core/util/Notifier.scala @@ -19,8 +19,12 @@ import SystemSettingsService.Smtp * Please see the plugin for details. */ trait Notifier { + def toNotify(subject: String, htmlMsg: String) + (recipients: Account => Session => Seq[String])(implicit context: Context): Unit = { + toNotify(subject, htmlMsg, None)(recipients) + } - def toNotify(subject: String, msg: String) + def toNotify(subject: String, htmlMsg: String, textMsg: Option[String]) (recipients: Account => Session => Seq[String])(implicit context: Context): Unit } @@ -35,7 +39,7 @@ object Notifier { class Mailer(private val smtp: Smtp) extends Notifier { private val logger = LoggerFactory.getLogger(classOf[Mailer]) - def toNotify(subject: String, msg: String) + def toNotify(subject: String, htmlMsg: String, textMsg: Option[String] = None) (recipients: Account => Session => Seq[String])(implicit context: Context): Unit = { context.loginAccount.foreach { loginAccount => val database = Database() @@ -43,7 +47,7 @@ class Mailer(private val smtp: Smtp) extends Notifier { val f = Future { database withSession { session => recipients(loginAccount)(session) foreach { to => - send(to, subject, msg, loginAccount) + send(to, subject, htmlMsg, loginAccount, textMsg) } } "Notifications Successful." @@ -55,7 +59,7 @@ class Mailer(private val smtp: Smtp) extends Notifier { } } - def send(to: String, subject: String, msg: String, loginAccount: Account): Unit = { + def send(to: String, subject: String, htmlMsg: String, loginAccount: Account, textMsg: Option[String] = None): Unit = { val email = new HtmlEmail email.setHostName(smtp.host) email.setSmtpPort(smtp.port.get) @@ -80,13 +84,16 @@ class Mailer(private val smtp: Smtp) extends Notifier { } email.setCharset("UTF-8") email.setSubject(subject) - email.setHtmlMsg(msg) + email.setHtmlMsg(htmlMsg) + textMsg.foreach{ msg => + email.setTextMsg(msg) + } email.addTo(to).send } } class MockMailer extends Notifier { - def toNotify(subject: String, msg: String) + def toNotify(subject: String, htmlMsg: String, textMsg: Option[String] = None) (recipients: Account => Session => Seq[String])(implicit context: Context): Unit = () } From 57902af87c84c37b05f27d8ac6dd35d71591c2f4 Mon Sep 17 00:00:00 2001 From: Naoki Takezoe Date: Tue, 15 Aug 2017 02:02:17 +0900 Subject: [PATCH 2/3] (refs #1553)Fixup --- src/main/twirl/gitbucket/core/repo/commits.scala.html | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/main/twirl/gitbucket/core/repo/commits.scala.html b/src/main/twirl/gitbucket/core/repo/commits.scala.html index 69d72a0af..63b272c9f 100644 --- a/src/main/twirl/gitbucket/core/repo/commits.scala.html +++ b/src/main/twirl/gitbucket/core/repo/commits.scala.html @@ -70,19 +70,19 @@ val (summary, summaryText) = getSummary(statuses) (statuses, summary, summaryText) }){ case (statuses, summaryState, summaryText) => - @if(!statuses.isEmpty){ + @if(statuses.nonEmpty){ @helpers.commitStateIcon(summaryState) @helpers.commitStateText(summaryState, commit.id) - — @summaryText checks + - @summaryText checks Show all checks
@statuses.map{ status =>
@helpers.commitStateIcon(status.state) @status.context - @status.description.map { desc => — @desc } + @status.description.map { desc => - @desc } - @status.targetUrl.map { url => — Details } + @status.targetUrl.map { url => - Details }
} @@ -116,10 +116,9 @@ $(function () { $('.toggle-check').click(function(){ var div = $(this).next('div'); - console.log(div); if(div.is(':visible')){ $(this).text('Show all checks'); - }else{ + } else { $(this).text('Hide all checks'); } div.toggle(); From fdb4a6bdc6b91faf9dfa74ca2f7fb8213a5e736a Mon Sep 17 00:00:00 2001 From: KOUNOIKE Yuusuke Date: Tue, 15 Aug 2017 03:22:25 +0900 Subject: [PATCH 3/3] change interface to textMsg: String, htmlMsg: Option[String]. SystemSettingsController calls Mailer.send directly. fix it too. --- .../controller/SystemSettingsController.scala | 5 +++-- .../scala/gitbucket/core/util/Notifier.scala | 20 +++++++++---------- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/src/main/scala/gitbucket/core/controller/SystemSettingsController.scala b/src/main/scala/gitbucket/core/controller/SystemSettingsController.scala index 784172180..bc07e451b 100644 --- a/src/main/scala/gitbucket/core/controller/SystemSettingsController.scala +++ b/src/main/scala/gitbucket/core/controller/SystemSettingsController.scala @@ -174,8 +174,9 @@ trait SystemSettingsControllerBase extends AccountManagementControllerBase { post("/admin/system/sendmail", sendMailForm)(adminOnly { form => try { new Mailer(form.smtp).send(form.testAddress, - "Test message from GitBucket", "This is a test message from GitBucket.", - context.loginAccount.get) + "Test message from GitBucket", context.loginAccount.get, + "This is a test message from GitBucket.", None + ) "Test mail has been sent to: " + form.testAddress diff --git a/src/main/scala/gitbucket/core/util/Notifier.scala b/src/main/scala/gitbucket/core/util/Notifier.scala index 4b9a57013..61f3c6832 100644 --- a/src/main/scala/gitbucket/core/util/Notifier.scala +++ b/src/main/scala/gitbucket/core/util/Notifier.scala @@ -19,12 +19,12 @@ import SystemSettingsService.Smtp * Please see the plugin for details. */ trait Notifier { - def toNotify(subject: String, htmlMsg: String) + def toNotify(subject: String, textMsg: String) (recipients: Account => Session => Seq[String])(implicit context: Context): Unit = { - toNotify(subject, htmlMsg, None)(recipients) + toNotify(subject, textMsg, None)(recipients) } - def toNotify(subject: String, htmlMsg: String, textMsg: Option[String]) + def toNotify(subject: String, textMsg: String, htmlMsg: Option[String]) (recipients: Account => Session => Seq[String])(implicit context: Context): Unit } @@ -39,7 +39,7 @@ object Notifier { class Mailer(private val smtp: Smtp) extends Notifier { private val logger = LoggerFactory.getLogger(classOf[Mailer]) - def toNotify(subject: String, htmlMsg: String, textMsg: Option[String] = None) + def toNotify(subject: String, textMsg: String, htmlMsg: Option[String] = None) (recipients: Account => Session => Seq[String])(implicit context: Context): Unit = { context.loginAccount.foreach { loginAccount => val database = Database() @@ -47,7 +47,7 @@ class Mailer(private val smtp: Smtp) extends Notifier { val f = Future { database withSession { session => recipients(loginAccount)(session) foreach { to => - send(to, subject, htmlMsg, loginAccount, textMsg) + send(to, subject, loginAccount, textMsg, htmlMsg) } } "Notifications Successful." @@ -59,7 +59,7 @@ class Mailer(private val smtp: Smtp) extends Notifier { } } - def send(to: String, subject: String, htmlMsg: String, loginAccount: Account, textMsg: Option[String] = None): Unit = { + def send(to: String, subject: String, loginAccount: Account, textMsg: String, htmlMsg: Option[String] = None): Unit = { val email = new HtmlEmail email.setHostName(smtp.host) email.setSmtpPort(smtp.port.get) @@ -84,9 +84,9 @@ class Mailer(private val smtp: Smtp) extends Notifier { } email.setCharset("UTF-8") email.setSubject(subject) - email.setHtmlMsg(htmlMsg) - textMsg.foreach{ msg => - email.setTextMsg(msg) + email.setTextMsg(textMsg) + htmlMsg.foreach { msg => + email.setHtmlMsg(msg) } email.addTo(to).send @@ -94,6 +94,6 @@ class Mailer(private val smtp: Smtp) extends Notifier { } class MockMailer extends Notifier { - def toNotify(subject: String, htmlMsg: String, textMsg: Option[String] = None) + def toNotify(subject: String, textMsg: String, htmlMsg: Option[String] = None) (recipients: Account => Session => Seq[String])(implicit context: Context): Unit = () }