You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
71 lines
1.9 KiB
71 lines
1.9 KiB
defmodule GcIndexRelayWeb.Router do |
|
use GcIndexRelayWeb, :router |
|
|
|
pipeline :browser do |
|
plug :accepts, ["html"] |
|
plug :fetch_session |
|
plug :fetch_live_flash |
|
plug :put_root_layout, html: {GcIndexRelayWeb.Layouts, :root} |
|
plug :protect_from_forgery |
|
plug :put_secure_browser_headers |
|
end |
|
|
|
pipeline :api do |
|
plug :accepts, ["json"] |
|
end |
|
|
|
scope "/", GcIndexRelayWeb do |
|
pipe_through :browser |
|
|
|
get "/", PageController, :home |
|
end |
|
|
|
scope "/api", GcIndexRelayWeb do |
|
pipe_through :api |
|
|
|
get "/events", FilterController, :index |
|
post "/events/filter", FilterController, :query |
|
resources "/events", EventController, only: [:show, :create, :delete] |
|
end |
|
|
|
def swagger_info do |
|
%{ |
|
schemes: ["https", "wss"], |
|
info: %{ |
|
version: "0.1", |
|
# Change this to read from config/env for deployed name |
|
title: "Isidore Relay" |
|
}, |
|
consumes: ["application/json"], |
|
produces: ["application/json"] |
|
} |
|
end |
|
|
|
scope "/api/swagger" do |
|
forward "/", PhoenixSwagger.Plug.SwaggerUI, |
|
otp_app: :gc_index_relay, |
|
swagger_file: "swagger.json" |
|
end |
|
|
|
# Other scopes may use custom stacks. |
|
# scope "/api", GcIndexRelayWeb do |
|
# pipe_through :api |
|
# end |
|
|
|
# Enable LiveDashboard and Swoosh mailbox preview in development |
|
if Application.compile_env(:gc_index_relay, :dev_routes) do |
|
# If you want to use the LiveDashboard in production, you should put |
|
# it behind authentication and allow only admins to access it. |
|
# If your application does not have an admins-only section yet, |
|
# you can use Plug.BasicAuth to set up some basic authentication |
|
# as long as you are also using SSL (which you should anyway). |
|
import Phoenix.LiveDashboard.Router |
|
|
|
scope "/dev" do |
|
pipe_through :browser |
|
|
|
live_dashboard "/dashboard", metrics: GcIndexRelayWeb.Telemetry |
|
forward "/mailbox", Plug.Swoosh.MailboxPreview |
|
end |
|
end |
|
end
|
|
|