Packages
guard
0.6.0
0.19.1
0.19.0
0.18.0
0.17.2
0.17.1
0.17.0
0.16.3
0.16.2
0.16.1
0.16.0
0.15.3
0.15.2
0.15.1
0.15.0
0.14.9
0.14.8
0.14.7
0.14.6
0.14.5
0.14.4
0.14.3
0.14.2
0.14.1
0.14.0
0.13.1
0.13.0
0.12.9
0.12.8
0.12.7
0.12.6
0.12.5
0.12.4
0.12.3
0.12.2
0.12.1
0.12.0
0.11.3
0.11.2
0.11.1
0.11.0
0.10.4
0.10.3
0.10.2
0.10.1
0.10.0
0.9.0
0.8.0
0.7.1
0.7.0
0.6.1
0.6.0
0.5.0
0.4.1
0.4.0
0.3.0
0.2.0
0.1.0
Useful package for dealing with user authentication and signup
Current section
Files
Jump to
Current section
Files
lib/guard.ex
defmodule Guard do
require Logger
use Application
def start(_type, _args) do
import Supervisor.Spec
Logger.info "Waking up Guard"
{children, guard_started} =
if Application.get_env(:guard, Guard.Repo) do
{[ # Start the Ecto repository
supervisor(Guard.Repo, []),
], true}
else
{[], false}
end
pusher_conf = Application.get_env(:guard, Guard.Pusher)
children = if pusher_conf != nil do
Logger.info "Adding Pusher supervisor"
[supervisor(Guard.Pusher.Server, [Guard.Pusher.Server, pusher_conf]) | children]
else
children
end
sms_conf = Application.get_env(:guard, Guard.Sms)
children = if sms_conf != nil do
Logger.info "Adding SMS supervisor"
[supervisor(Guard.Sms.Server, [Guard.Sms.Server, sms_conf]) | children]
else
children
end
# See http://elixir-lang.org/docs/stable/elixir/Supervisor.html
# for other strategies and supported options
opts = [strategy: :one_for_one, name: Guard.Supervisor]
{ok, sup_pid} = Supervisor.start_link(children, opts)
if ok && guard_started do
Guard.Migrations.run(Guard.Repo)
end
{ok, sup_pid}
end
end