Packages
pow
1.0.34
1.0.39
1.0.38
1.0.37
1.0.36
1.0.35
1.0.34
1.0.33
1.0.32
1.0.31
1.0.30
1.0.29
1.0.28
1.0.27
1.0.26
1.0.25
1.0.24
1.0.23
1.0.22
1.0.21
1.0.20
1.0.19
1.0.18
1.0.17
1.0.16
1.0.15
1.0.14
1.0.13
1.0.12
1.0.11
1.0.10
1.0.9
1.0.8
1.0.7
1.0.6
1.0.5
1.0.4
1.0.3
1.0.2
1.0.1
1.0.0
1.0.0-rc.4
1.0.0-rc.3
1.0.0-rc.2
1.0.0-rc.1
1.0.0-rc.0
0.1.0-rc.1
0.1.0-alpha.8
0.1.0-alpha.7
retired
0.1.0-alpha.6
0.1.0-alpha.5
0.1.0-alpha.4
0.1.0-alpha.3
0.1.0-alpha.2
0.1.0-alpha.1
0.1.0-alpha
Robust user authentication solution
Current section
Files
Jump to
Current section
Files
lib/pow/phoenix/html/minimalist.ex
# TODO: Remove module when requiring Phoenix 1.7.0
unless Pow.dependency_vsn_match?(:phoenix, ">= 1.7.0") do
defmodule Pow.Phoenix.HTML.Minimalist do
@moduledoc false
@form_template EEx.compile_string(
"""
<%%= form_for @changeset, @action, [as: :user], fn f -> %>
<%%= if @changeset.action do %>
<div class="alert alert-danger">
<p>Oops, something went wrong! Please check the errors below.</p>
</div>
<%% end %>
<%= for {label, input, error} <- inputs, input do %>
<%= label %>
<%= input %>
<%= error %>
<% end %>
<div>
<%%= submit <%= inspect button_label %> %>
</div>
<%% end %>
""")
def render_form(inputs, opts \\ []) do
button_label = Keyword.get(opts, :button_label, "Submit")
inputs = for {type, key} <- inputs, do: input(type, key)
unquote(@form_template)
end
defp input(:text, key) do
{label(key), ~s(<%= text_input f, #{inspect_key(key)} %>), error(key)}
end
defp input(:password, key) do
{label(key), ~s(<%= password_input f, #{inspect_key(key)} %>), error(key)}
end
defp inspect_key({:changeset, :pow_user_id_field}), do: "Pow.Ecto.Schema.user_id_field(@changeset)"
defp inspect_key(key), do: inspect(key)
defp label(key) do
~s(<%= label f, #{inspect_key(key)} %>)
end
defp error(key) do
~s(<%= error_tag f, #{inspect_key(key)} %>)
end
end
end