All Downloads are FREE. Search and download functionalities are using the official Maven repository.

fr.maif.izanami.web.FrontendController.scala Maven / Gradle / Ivy

package fr.maif.izanami.web

import controllers.Assets
import fr.maif.izanami.env.Env
import play.api.mvc.{Action, AnyContent, BaseController, ControllerComponents}

class FrontendController(val assets: Assets, val controllerComponents: ControllerComponents)(implicit val env: Env) extends BaseController {

  def headers = List(
    "Access-Control-Allow-Origin" -> "*",
    "Access-Control-Allow-Methods" -> "GET, POST, OPTIONS, DELETE, PUT",
    "Access-Control-Max-Age" -> "3600",
    "Access-Control-Allow-Headers" -> "Origin, Content-Type, Accept, Authorization, Izanami-Client-Id, Izanami-Client-Secret",
    "Access-Control-Allow-Credentials" -> "true"
  )

  def rootOptions = options("/")

  def options(url: String) = Action { request =>
    NoContent.withHeaders(headers: _*)
  }
    def index: Action[AnyContent] = assets.at("index.html")

    def assetOrDefault(resource: String): Action[AnyContent] = /*if (resource.startsWith("/api")){
      Action.async(r => errorHandler.onClientError(r, NOT_FOUND, "Not found"))
    } else {*/
      if (resource.contains(".")) assets.at(resource) else index
    //}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy