diff --git a/app/admin/AdminTasks.scala b/app/admin/AdminTasks.scala
index 0ea62dc..58ee37c 100644
--- a/app/admin/AdminTasks.scala
+++ b/app/admin/AdminTasks.scala
@@ -23,6 +23,7 @@ import util.renderers.RenderContext
import util.renderers.RenderTypeBlog
import controllers.routes
import java.nio.file.Files
+import play.api.Configuration
/**
* Admin tasks.
@@ -40,6 +41,8 @@ object AdminTasks extends Logging {
val mdFormat = MarkdownContentRenderer.renderFormat
lazy val config = ConfigFactory.defaultApplication()
+
+ implicit lazy val playConfig = Configuration(config)
def dbConfig = DatabaseConfig.forConfig[MySQLDriver](path = "slick.dbs.default", config = config)
diff --git a/app/controllers/AdminController.scala b/app/controllers/AdminController.scala
index 377f615..94eb105 100644
--- a/app/controllers/AdminController.scala
+++ b/app/controllers/AdminController.scala
@@ -28,6 +28,7 @@ import scala.util.Failure
import scala.util.Success
import util.renderers.ContentWithAbstract
import models.Attachment
+import play.api.Play.current
@Singleton
class AdminController @Inject() (blogService: BlogService, val messagesApi: MessagesApi) extends AbstractController with I18nSupport {
@@ -262,6 +263,7 @@ class AdminController @Inject() (blogService: BlogService, val messagesApi: Mess
}
private def render(blogEntry: BlogEntry, attachments: Seq[Attachment], content: String) = {
+ implicit val config = current.configuration
implicit val renderContext = RenderContext.blogRenderContext(blogEntry, attachments)
ContentRenderers.render(content)
}
diff --git a/app/controllers/SiteMapController.scala b/app/controllers/SiteMapController.scala
index 96c234b..b32b940 100644
--- a/app/controllers/SiteMapController.scala
+++ b/app/controllers/SiteMapController.scala
@@ -55,7 +55,7 @@ class SiteMapController @Inject() (blogService: BlogService) extends AbstractCon
{ url.changefreq }
{
if (url.changed.isDefined) {
- { url.lastmod.get }
+ { url.lastmod.get }
}
}
{ url.priority }
diff --git a/app/util/renderers/ContentRenderer.scala b/app/util/renderers/ContentRenderer.scala
index cb3163c..f6cb7e2 100644
--- a/app/util/renderers/ContentRenderer.scala
+++ b/app/util/renderers/ContentRenderer.scala
@@ -8,6 +8,7 @@ import play.api.mvc.Call
import util.renderers.post.PostRenderers
import util.renderers.pre.PreRenderers
import models.Attachment
+import play.api.Configuration
case class ContentWithAbstract(abstractText: String, content: String) {
@@ -24,13 +25,16 @@ case class RenderContext(renderType: RenderType, format: String, attachments: Se
object RenderContext {
- val blogAttachmentRoot = new File("media/blog")
+ def blogAttachmentRoot(implicit configuration: Configuration) =
+ new File(configuration.getString("media.path").getOrElse("media") + "/blog")
- def blogAttachmentDestination(blogId: Int) = new File(blogAttachmentRoot, blogId.toString)
+ def blogAttachmentDestination(blogId: Int)(implicit configuration: Configuration) =
+ new File(blogAttachmentRoot, blogId.toString)
- def blogAttachmentFolder(blogId: Int) = Option(blogAttachmentDestination(blogId)) filter { _.isDirectory }
+ def blogAttachmentFolder(blogId: Int)(implicit configuration: Configuration) =
+ Option(blogAttachmentDestination(blogId)) filter { _.isDirectory }
- def blogRenderContext(blog: BlogEntry, attachments: Seq[Attachment]): RenderContext =
+ def blogRenderContext(blog: BlogEntry, attachments: Seq[Attachment])(implicit configuration: Configuration): RenderContext =
RenderContext(RenderTypeBlog, blog.contentFormat, attachments,
blogAttachmentFolder(blog.id), routes.BlogController.showBlogEntry(blog.url),
routes.BlogController.attachment(blog.url, _), routes.BlogController.attachmentGallery(blog.url, _),
diff --git a/conf/application.conf b/conf/application.conf
index 0be8797..7922939 100644
--- a/conf/application.conf
+++ b/conf/application.conf
@@ -46,6 +46,7 @@ slick.dbs.default = {
# Media
# ~~~~~
media {
+ # !!! This connection parameters must be overwritten in instance.conf !!!
path = media
}