improve templates
This commit is contained in:
parent
f19d024d8a
commit
7b60938a75
@ -48,11 +48,9 @@ defmodule LokalWeb.Components.InviteCard do
|
||||
<%= render_slot(@code_actions) %>
|
||||
</div>
|
||||
|
||||
<%= if @inner_block do %>
|
||||
<div class="flex space-x-4 justify-center items-center">
|
||||
<%= render_slot(@inner_block) %>
|
||||
</div>
|
||||
<% end %>
|
||||
<div :if={@inner_block} class="flex space-x-4 justify-center items-center">
|
||||
<%= render_slot(@inner_block) %>
|
||||
</div>
|
||||
</div>
|
||||
"""
|
||||
end
|
||||
|
@ -33,20 +33,16 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<%= for values <- @rows do %>
|
||||
<tr>
|
||||
<%= for %{key: key} = value <- @columns do %>
|
||||
<td class={["p-2", value[:class]]}>
|
||||
<%= case values |> Map.get(key) do %>
|
||||
<% {_custom_sort_value, value} -> %>
|
||||
<%= value %>
|
||||
<% value -> %>
|
||||
<%= value %>
|
||||
<% end %>
|
||||
</td>
|
||||
<tr :for={values <- @rows}>
|
||||
<td :for={%{key: key} = value <- @columns} class={["p-2", value[:class]]}>
|
||||
<%= case values |> Map.get(key) do %>
|
||||
<% {_custom_sort_value, value} -> %>
|
||||
<%= value %>
|
||||
<% value -> %>
|
||||
<%= value %>
|
||||
<% end %>
|
||||
</tr>
|
||||
<% end %>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
@ -53,16 +53,14 @@ defmodule LokalWeb.Components.Topbar do
|
||||
<% end %>
|
||||
</datalist>
|
||||
</form>
|
||||
<%= if @current_user.role == :admin do %>
|
||||
<li class="mx-2 my-1">
|
||||
<.link
|
||||
navigate={Routes.invite_index_path(Endpoint, :index)}
|
||||
class="text-white text-white hover:underline"
|
||||
>
|
||||
<%= gettext("Invites") %>
|
||||
</.link>
|
||||
</li>
|
||||
<% end %>
|
||||
<li :if={@current_user.role == :admin} class="mx-2 my-1">
|
||||
<.link
|
||||
navigate={Routes.invite_index_path(Endpoint, :index)}
|
||||
class="text-white text-white hover:underline"
|
||||
>
|
||||
<%= gettext("Invites") %>
|
||||
</.link>
|
||||
</li>
|
||||
<li class="mx-2 my-1">
|
||||
<.link
|
||||
navigate={Routes.user_settings_path(Endpoint, :edit)}
|
||||
@ -80,27 +78,28 @@ defmodule LokalWeb.Components.Topbar do
|
||||
<i class="fas fa-sign-out-alt"></i>
|
||||
</.link>
|
||||
</li>
|
||||
<%= if @current_user.role == :admin and function_exported?(Routes, :live_dashboard_path, 2) do %>
|
||||
<li class="mx-2 my-1">
|
||||
<.link
|
||||
navigate={Routes.live_dashboard_path(Endpoint, :home)}
|
||||
class="text-white text-white hover:underline"
|
||||
>
|
||||
<i class="fas fa-gauge"></i>
|
||||
</.link>
|
||||
</li>
|
||||
<% end %>
|
||||
<li
|
||||
:if={
|
||||
@current_user.role == :admin and function_exported?(Routes, :live_dashboard_path, 2)
|
||||
}
|
||||
class="mx-2 my-1"
|
||||
>
|
||||
<.link
|
||||
navigate={Routes.live_dashboard_path(Endpoint, :home)}
|
||||
class="text-white text-white hover:underline"
|
||||
>
|
||||
<i class="fas fa-gauge"></i>
|
||||
</.link>
|
||||
</li>
|
||||
<% else %>
|
||||
<%= if Accounts.allow_registration?() do %>
|
||||
<li class="mx-2 my-1">
|
||||
<.link
|
||||
navigate={Routes.user_registration_path(Endpoint, :new)}
|
||||
class="text-white text-white hover:underline truncate"
|
||||
>
|
||||
<%= dgettext("actions", "Register") %>
|
||||
</.link>
|
||||
</li>
|
||||
<% end %>
|
||||
<li :if={Accounts.allow_registration?()} class="mx-2 my-1">
|
||||
<.link
|
||||
navigate={Routes.user_registration_path(Endpoint, :new)}
|
||||
class="text-white text-white hover:underline truncate"
|
||||
>
|
||||
<%= dgettext("actions", "Register") %>
|
||||
</.link>
|
||||
</li>
|
||||
<li class="mx-2 my-1">
|
||||
<.link
|
||||
navigate={Routes.user_session_path(Endpoint, :new)}
|
||||
|
@ -10,8 +10,8 @@ defmodule LokalWeb.Components.UserCard do
|
||||
<div
|
||||
id={"user-#{@user.id}"}
|
||||
class="mx-4 my-2 px-8 py-4 flex flex-col justify-center items-center text-center
|
||||
border border-gray-400 rounded-lg shadow-lg hover:shadow-md
|
||||
transition-all duration-300 ease-in-out"
|
||||
border border-gray-400 rounded-lg shadow-lg hover:shadow-md
|
||||
transition-all duration-300 ease-in-out"
|
||||
>
|
||||
<h1 class="px-4 py-2 rounded-lg title text-xl break-all">
|
||||
<%= @user.email %>
|
||||
@ -39,11 +39,9 @@ defmodule LokalWeb.Components.UserCard do
|
||||
</p>
|
||||
</h3>
|
||||
|
||||
<%= if @inner_block do %>
|
||||
<div class="px-4 py-2 flex space-x-4 justify-center items-center">
|
||||
<%= render_slot(@inner_block) %>
|
||||
</div>
|
||||
<% end %>
|
||||
<div :if={@inner_block} class="px-4 py-2 flex space-x-4 justify-center items-center">
|
||||
<%= render_slot(@inner_block) %>
|
||||
</div>
|
||||
</div>
|
||||
"""
|
||||
end
|
||||
|
@ -1,43 +1,18 @@
|
||||
defmodule LokalWeb.HomeLive do
|
||||
@moduledoc """
|
||||
Liveview for the main home page
|
||||
Liveview for the home page
|
||||
"""
|
||||
|
||||
use LokalWeb, :live_view
|
||||
alias Lokal.Accounts
|
||||
alias LokalWeb.Endpoint
|
||||
|
||||
@version Mix.Project.config()[:version]
|
||||
|
||||
@impl true
|
||||
def mount(_params, _session, socket) do
|
||||
{:ok, socket |> assign(page_title: gettext("Home"), query: "", results: %{})}
|
||||
end
|
||||
|
||||
@impl true
|
||||
def handle_event("suggest", %{"q" => query}, socket) do
|
||||
{:noreply, socket |> assign(results: search(query), query: query)}
|
||||
end
|
||||
|
||||
@impl true
|
||||
def handle_event("search", %{"q" => query}, socket) do
|
||||
case search(query) do
|
||||
%{^query => vsn} ->
|
||||
{:noreply, socket |> redirect(external: "https://hexdocs.pm/#{query}/#{vsn}")}
|
||||
|
||||
_ ->
|
||||
{:noreply,
|
||||
socket
|
||||
|> put_flash(:error, "No dependencies found matching \"#{query}\"")
|
||||
|> assign(results: %{}, query: query)}
|
||||
end
|
||||
end
|
||||
|
||||
defp search(query) do
|
||||
if not LokalWeb.Endpoint.config(:code_reloader) do
|
||||
raise "action disabled when not in development"
|
||||
end
|
||||
|
||||
for {app, desc, vsn} <- Application.started_applications(),
|
||||
app = to_string(app),
|
||||
String.starts_with?(app, query) and not List.starts_with?(desc, ~c"ERTS"),
|
||||
into: %{},
|
||||
do: {app, vsn}
|
||||
admins = Accounts.list_users_by_role(:admin)
|
||||
socket = socket |> assign(page_title: gettext("Home"), admins: admins, version: @version)
|
||||
{:ok, socket}
|
||||
end
|
||||
end
|
||||
|
@ -1,9 +1,135 @@
|
||||
<div class="flex flex-col justify-center items-center text-center space-y-4">
|
||||
<h1 class="title text-primary-500 text-2xl">
|
||||
<div class="mx-auto px-8 sm:px-16 flex flex-col justify-center items-center text-center space-y-4 max-w-3xl">
|
||||
<h1 class="title text-primary-600 text-2xl">
|
||||
<%= gettext("Welcome to Lokal") %>
|
||||
</h1>
|
||||
|
||||
<p class="title text-primary-500 text-lg">
|
||||
<%= gettext("Shop from your community") %>
|
||||
</p>
|
||||
<h2 class="title text-primary-600 text-lg">
|
||||
<%= gettext("Shop from your local community") %>
|
||||
</h2>
|
||||
|
||||
<hr class="hr" />
|
||||
|
||||
<ul class="flex flex-col space-y-4 text-center">
|
||||
<li class="flex flex-col justify-center items-center
|
||||
space-y-2">
|
||||
<b class="whitespace-nowrap">
|
||||
<%= gettext("Easy to Use:") %>
|
||||
</b>
|
||||
<p>
|
||||
<%= gettext("Lokal lets you easily shop from your local community") %>
|
||||
</p>
|
||||
</li>
|
||||
<li class="flex flex-col justify-center items-center space-y-2">
|
||||
<b class="whitespace-nowrap">
|
||||
<%= gettext("Secure:") %>
|
||||
</b>
|
||||
<p>
|
||||
<%= gettext("Self-host your own instance, or use an instance from someone you trust.") %>
|
||||
<%= gettext("Your data stays with you, period") %>
|
||||
</p>
|
||||
</li>
|
||||
<li class="flex flex-col justify-center items-center
|
||||
space-y-2">
|
||||
<b class="whitespace-nowrap">
|
||||
<%= gettext("Simple:") %>
|
||||
</b>
|
||||
<p>
|
||||
<%= gettext("Access from any internet-capable device") %>
|
||||
</p>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<hr class="hr" />
|
||||
|
||||
<ul class="flex flex-col space-y-2 text-center justify-center">
|
||||
<h2 class="title text-primary-600 text-lg">
|
||||
<%= gettext("Instance Information") %>
|
||||
</h2>
|
||||
|
||||
<li class="flex flex-col justify-center space-x-2">
|
||||
<b>
|
||||
<%= gettext("Admins:") %>
|
||||
</b>
|
||||
<p>
|
||||
<%= if @admins |> Enum.empty?() do %>
|
||||
<.link href={Routes.user_registration_path(Endpoint, :new)} class="hover:underline">
|
||||
<%= dgettext("prompts", "Register to setup Lokal") %>
|
||||
</.link>
|
||||
<% else %>
|
||||
<div class="flex flex-wrap justify-center space-x-2">
|
||||
<a :for={%{email: email} <- @admins} class="hover:underline" href={"mailto:#{email}"}>
|
||||
<%= email %>
|
||||
</a>
|
||||
</div>
|
||||
<% end %>
|
||||
</p>
|
||||
</li>
|
||||
|
||||
<li class="flex flex-row justify-center space-x-2">
|
||||
<b><%= gettext("Registration:") %></b>
|
||||
<p>
|
||||
<%= case Application.get_env(:lokal, Lokal.Accounts)[:registration] do
|
||||
"public" -> gettext("Public Signups")
|
||||
_ -> gettext("Invite Only")
|
||||
end %>
|
||||
</p>
|
||||
</li>
|
||||
|
||||
<li class="flex flex-row justify-center items-center space-x-2">
|
||||
<b><%= gettext("Version:") %></b>
|
||||
<.link
|
||||
href="https://gitea.bubbletea.dev/shibao/lokal/src/branch/stable/CHANGELOG.md"
|
||||
class="flex flex-row justify-center items-center space-x-2 hover:underline"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
<p>
|
||||
<%= @version %>
|
||||
</p>
|
||||
<i class="fas fa-md fa-info-circle"></i>
|
||||
</.link>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<hr class="hr" />
|
||||
|
||||
<ul class="flex flex-col space-y-2 text-center justify-center">
|
||||
<h2 class="title text-primary-600 text-lg">
|
||||
<%= gettext("Get involved!") %>
|
||||
</h2>
|
||||
|
||||
<li class="flex flex-col justify-center space-x-2">
|
||||
<.link
|
||||
class="flex flex-row justify-center items-center space-x-2 hover:underline"
|
||||
href="https://gitea.bubbletea.dev/shibao/lokal"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
<p><%= gettext("View the source code") %></p>
|
||||
<i class="fas fa-md fa-code"></i>
|
||||
</.link>
|
||||
</li>
|
||||
<li class="flex flex-col justify-center space-x-2">
|
||||
<.link
|
||||
class="flex flex-row justify-center items-center space-x-2 hover:underline"
|
||||
href="https://weblate.bubbletea.dev/engage/lokal"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
<p><%= gettext("Help translate") %></p>
|
||||
<i class="fas fa-md fa-language"></i>
|
||||
</.link>
|
||||
</li>
|
||||
<li class="flex flex-col justify-center space-x-2">
|
||||
<.link
|
||||
class="flex flex-row justify-center items-center space-x-2 hover:underline"
|
||||
href="https://gitea.bubbletea.dev/shibao/lokal/issues/new"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
<p><%= gettext("Report bugs or request features") %></p>
|
||||
<i class="fas fa-md fa-spider"></i>
|
||||
</.link>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
@ -11,11 +11,12 @@
|
||||
phx-change="validate"
|
||||
phx-submit="save"
|
||||
>
|
||||
<%= if @changeset.action && not @changeset.valid? do %>
|
||||
<div class="invalid-feedback col-span-3 text-center">
|
||||
<%= changeset_errors(@changeset) %>
|
||||
</div>
|
||||
<% end %>
|
||||
<div
|
||||
:if={@changeset.action && not @changeset.valid?()}
|
||||
class="invalid-feedback col-span-3 text-center"
|
||||
>
|
||||
<%= changeset_errors(@changeset) %>
|
||||
</div>
|
||||
|
||||
<%= label(f, :name, gettext("Name"), class: "title text-lg text-primary-600") %>
|
||||
<%= text_input(f, :name, class: "input input-primary col-span-2") %>
|
||||
|
@ -61,7 +61,7 @@ defmodule LokalWeb.InviteLive.Index do
|
||||
) do
|
||||
socket =
|
||||
Invites.get_invite!(id, current_user)
|
||||
|> Invites.update_invite(%{"uses_left" => nil}, current_user)
|
||||
|> Invites.update_invite(%{uses_left: nil}, current_user)
|
||||
|> case do
|
||||
{:ok, %{name: invite_name}} ->
|
||||
prompt =
|
||||
@ -83,7 +83,7 @@ defmodule LokalWeb.InviteLive.Index do
|
||||
) do
|
||||
socket =
|
||||
Invites.get_invite!(id, current_user)
|
||||
|> Invites.update_invite(%{"uses_left" => nil, "disabled_at" => nil}, current_user)
|
||||
|> Invites.update_invite(%{uses_left: nil, disabled_at: nil}, current_user)
|
||||
|> case do
|
||||
{:ok, %{name: invite_name}} ->
|
||||
prompt =
|
||||
@ -107,7 +107,7 @@ defmodule LokalWeb.InviteLive.Index do
|
||||
|
||||
socket =
|
||||
Invites.get_invite!(id, current_user)
|
||||
|> Invites.update_invite(%{"uses_left" => 0, "disabled_at" => now}, current_user)
|
||||
|> Invites.update_invite(%{uses_left: 0, disabled_at: now}, current_user)
|
||||
|> case do
|
||||
{:ok, %{name: invite_name}} ->
|
||||
prompt =
|
||||
|
@ -18,69 +18,65 @@
|
||||
<% end %>
|
||||
|
||||
<div class="w-full flex flex-row flex-wrap justify-center items-center">
|
||||
<%= for invite <- @invites do %>
|
||||
<.invite_card invite={invite}>
|
||||
<:code_actions>
|
||||
<form phx-submit="copy_to_clipboard">
|
||||
<button
|
||||
type="submit"
|
||||
class="mx-2 my-1 btn btn-primary"
|
||||
phx-click={JS.dispatch("lokal:clipcopy", to: "#code-#{invite.id}")}
|
||||
>
|
||||
<%= dgettext("actions", "Copy to clipboard") %>
|
||||
</button>
|
||||
</form>
|
||||
</:code_actions>
|
||||
<.link
|
||||
patch={Routes.invite_index_path(Endpoint, :edit, invite)}
|
||||
class="text-primary-600 link"
|
||||
data-qa={"edit-#{invite.id}"}
|
||||
>
|
||||
<i class="fa-fw fa-lg fas fa-edit"></i>
|
||||
</.link>
|
||||
|
||||
<.link
|
||||
href="#"
|
||||
class="text-primary-600 link"
|
||||
phx-click="delete_invite"
|
||||
phx-value-id={invite.id}
|
||||
data-confirm={
|
||||
dgettext("prompts", "Are you sure you want to delete the invite for %{invite_name}?",
|
||||
invite_name: invite.name
|
||||
)
|
||||
}
|
||||
data-qa={"delete-#{invite.id}"}
|
||||
>
|
||||
<i class="fa-fw fa-lg fas fa-trash"></i>
|
||||
</.link>
|
||||
|
||||
<%= if invite.disabled_at |> is_nil() do %>
|
||||
<a href="#" class="btn btn-primary" phx-click="disable_invite" phx-value-id={invite.id}>
|
||||
<%= gettext("Disable") %>
|
||||
</a>
|
||||
<% else %>
|
||||
<a href="#" class="btn btn-primary" phx-click="enable_invite" phx-value-id={invite.id}>
|
||||
<%= gettext("Enable") %>
|
||||
</a>
|
||||
<% end %>
|
||||
|
||||
<%= if invite.disabled_at |> is_nil() and not (invite.uses_left |> is_nil()) do %>
|
||||
<a
|
||||
href="#"
|
||||
class="btn btn-primary"
|
||||
phx-click="set_unlimited"
|
||||
phx-value-id={invite.id}
|
||||
data-confirm={
|
||||
dgettext("prompts", "Are you sure you want to make %{invite_name} unlimited?",
|
||||
invite_name: invite.name
|
||||
)
|
||||
}
|
||||
<.invite_card :for={invite <- @invites} invite={invite}>
|
||||
<:code_actions>
|
||||
<form phx-submit="copy_to_clipboard">
|
||||
<button
|
||||
type="submit"
|
||||
class="mx-2 my-1 btn btn-primary"
|
||||
phx-click={JS.dispatch("lokal:clipcopy", to: "#code-#{invite.id}")}
|
||||
>
|
||||
<%= gettext("Set Unlimited") %>
|
||||
</a>
|
||||
<% end %>
|
||||
</.invite_card>
|
||||
<% end %>
|
||||
<%= dgettext("actions", "Copy to clipboard") %>
|
||||
</button>
|
||||
</form>
|
||||
</:code_actions>
|
||||
<.link
|
||||
patch={Routes.invite_index_path(Endpoint, :edit, invite)}
|
||||
class="text-primary-600 link"
|
||||
data-qa={"edit-#{invite.id}"}
|
||||
>
|
||||
<i class="fa-fw fa-lg fas fa-edit"></i>
|
||||
</.link>
|
||||
|
||||
<.link
|
||||
href="#"
|
||||
class="text-primary-600 link"
|
||||
phx-click="delete_invite"
|
||||
phx-value-id={invite.id}
|
||||
data-confirm={
|
||||
dgettext("prompts", "Are you sure you want to delete the invite for %{invite_name}?",
|
||||
invite_name: invite.name
|
||||
)
|
||||
}
|
||||
data-qa={"delete-#{invite.id}"}
|
||||
>
|
||||
<i class="fa-fw fa-lg fas fa-trash"></i>
|
||||
</.link>
|
||||
|
||||
<a
|
||||
href="#"
|
||||
class="btn btn-primary"
|
||||
phx-click={if invite.disabled_at, do: "enable_invite", else: "disable_invite"}
|
||||
phx-value-id={invite.id}
|
||||
>
|
||||
<%= if invite.disabled_at, do: gettext("Enable"), else: gettext("Disable") %>
|
||||
</a>
|
||||
|
||||
<a
|
||||
:if={invite.disabled_at |> is_nil() and not (invite.uses_left |> is_nil())}
|
||||
href="#"
|
||||
class="btn btn-primary"
|
||||
phx-click="set_unlimited"
|
||||
phx-value-id={invite.id}
|
||||
data-confirm={
|
||||
dgettext("prompts", "Are you sure you want to make %{invite_name} unlimited?",
|
||||
invite_name: invite.name
|
||||
)
|
||||
}
|
||||
>
|
||||
<%= gettext("Set Unlimited") %>
|
||||
</a>
|
||||
</.invite_card>
|
||||
</div>
|
||||
|
||||
<%= unless @admins |> Enum.empty?() do %>
|
||||
@ -91,25 +87,23 @@
|
||||
</h1>
|
||||
|
||||
<div class="w-full flex flex-row flex-wrap justify-center items-center">
|
||||
<%= for admin <- @admins do %>
|
||||
<.user_card user={admin}>
|
||||
<.link
|
||||
href="#"
|
||||
class="text-primary-600 link"
|
||||
phx-click="delete_user"
|
||||
phx-value-id={admin.id}
|
||||
data-confirm={
|
||||
dgettext(
|
||||
"prompts",
|
||||
"Are you sure you want to delete %{email}? This action is permanent!",
|
||||
email: admin.email
|
||||
)
|
||||
}
|
||||
>
|
||||
<i class="fa-fw fa-lg fas fa-trash"></i>
|
||||
</.link>
|
||||
</.user_card>
|
||||
<% end %>
|
||||
<.user_card :for={admin <- @admins} user={admin}>
|
||||
<.link
|
||||
href="#"
|
||||
class="text-primary-600 link"
|
||||
phx-click="delete_user"
|
||||
phx-value-id={admin.id}
|
||||
data-confirm={
|
||||
dgettext(
|
||||
"prompts",
|
||||
"Are you sure you want to delete %{email}? This action is permanent!",
|
||||
email: admin.email
|
||||
)
|
||||
}
|
||||
>
|
||||
<i class="fa-fw fa-lg fas fa-trash"></i>
|
||||
</.link>
|
||||
</.user_card>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
@ -121,39 +115,35 @@
|
||||
</h1>
|
||||
|
||||
<div class="w-full flex flex-row flex-wrap justify-center items-center">
|
||||
<%= for user <- @users do %>
|
||||
<.user_card user={user}>
|
||||
<.link
|
||||
href="#"
|
||||
class="text-primary-600 link"
|
||||
phx-click="delete_user"
|
||||
phx-value-id={user.id}
|
||||
data-confirm={
|
||||
dgettext(
|
||||
"prompts",
|
||||
"Are you sure you want to delete %{email}? This action is permanent!",
|
||||
email: user.email
|
||||
)
|
||||
}
|
||||
>
|
||||
<i class="fa-fw fa-lg fas fa-trash"></i>
|
||||
</.link>
|
||||
</.user_card>
|
||||
<% end %>
|
||||
<.user_card :for={user <- @users} user={user}>
|
||||
<.link
|
||||
href="#"
|
||||
class="text-primary-600 link"
|
||||
phx-click="delete_user"
|
||||
phx-value-id={user.id}
|
||||
data-confirm={
|
||||
dgettext(
|
||||
"prompts",
|
||||
"Are you sure you want to delete %{email}? This action is permanent!",
|
||||
email: user.email
|
||||
)
|
||||
}
|
||||
>
|
||||
<i class="fa-fw fa-lg fas fa-trash"></i>
|
||||
</.link>
|
||||
</.user_card>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
<%= if @live_action in [:new, :edit] do %>
|
||||
<.modal return_to={Routes.invite_index_path(Endpoint, :index)}>
|
||||
<.live_component
|
||||
module={LokalWeb.InviteLive.FormComponent}
|
||||
id={@invite.id || :new}
|
||||
title={@page_title}
|
||||
action={@live_action}
|
||||
invite={@invite}
|
||||
return_to={Routes.invite_index_path(Endpoint, :index)}
|
||||
current_user={@current_user}
|
||||
/>
|
||||
</.modal>
|
||||
<% end %>
|
||||
<.modal :if={@live_action in [:new, :edit]} return_to={Routes.invite_index_path(Endpoint, :index)}>
|
||||
<.live_component
|
||||
module={LokalWeb.InviteLive.FormComponent}
|
||||
id={@invite.id || :new}
|
||||
title={@page_title}
|
||||
action={@live_action}
|
||||
invite={@invite}
|
||||
return_to={Routes.invite_index_path(Endpoint, :index)}
|
||||
current_user={@current_user}
|
||||
/>
|
||||
</.modal>
|
||||
|
@ -31,10 +31,10 @@ defmodule LokalWeb.LiveHelpers do
|
||||
id="modal-bg"
|
||||
patch={@return_to}
|
||||
class="fade-in fixed z-10 left-0 top-0
|
||||
w-full h-full overflow-hidden
|
||||
p-8 flex flex-col justify-center items-center cursor-auto"
|
||||
w-full h-full overflow-hidden
|
||||
p-8 flex flex-col justify-center items-center cursor-auto"
|
||||
style="background-color: rgba(0,0,0,0.4);"
|
||||
phx_remove={hide_modal()}
|
||||
phx-remove={hide_modal()}
|
||||
>
|
||||
<span class="hidden"></span>
|
||||
</.link>
|
||||
@ -48,18 +48,18 @@ defmodule LokalWeb.LiveHelpers do
|
||||
<div
|
||||
id="modal-content"
|
||||
class="fade-in-scale w-full max-w-3xl relative
|
||||
pointer-events-auto overflow-hidden
|
||||
px-8 py-4 sm:py-8 flex flex-col justify-center items-center
|
||||
flex flex-col justify-start items-center
|
||||
bg-white border-2 rounded-lg"
|
||||
pointer-events-auto overflow-hidden
|
||||
px-8 py-4 sm:py-8 flex flex-col justify-center items-center
|
||||
flex flex-col justify-start items-center
|
||||
bg-white border-2 rounded-lg"
|
||||
>
|
||||
<.link
|
||||
id="close"
|
||||
href={@return_to}
|
||||
class="absolute top-8 right-10
|
||||
text-gray-500 hover:text-gray-800
|
||||
transition-all duration-500 ease-in-out"
|
||||
phx_remove={hide_modal()}
|
||||
text-gray-500 hover:text-gray-800
|
||||
transition-all duration-500 ease-in-out"
|
||||
phx-remove={hide_modal()}
|
||||
>
|
||||
<i class="fa-fw fa-lg fas fa-times"></i>
|
||||
</.link>
|
||||
|
@ -5,7 +5,7 @@
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>
|
||||
<%= dgettext("errors", "Error") %>| Lokal
|
||||
<%= dgettext("errors", "Error") %> | <%= gettext("Lokal") %>
|
||||
</title>
|
||||
<link rel="stylesheet" href="/css/app.css" />
|
||||
<script defer type="text/javascript" src="/js/app.js">
|
||||
|
@ -3,16 +3,12 @@
|
||||
<.topbar current_user={assigns[:current_user]}></.topbar>
|
||||
|
||||
<div class="mx-8 my-2 flex flex-col space-y-4 text-center">
|
||||
<%= if get_flash(@conn, :info) do %>
|
||||
<p class="alert alert-info" role="alert">
|
||||
<%= get_flash(@conn, :info) %>
|
||||
</p>
|
||||
<% end %>
|
||||
<%= if get_flash(@conn, :error) do %>
|
||||
<p class="alert alert-danger" role="alert">
|
||||
<%= get_flash(@conn, :error) %>
|
||||
</p>
|
||||
<% end %>
|
||||
<p :if={get_flash(@conn, :info)} class="alert alert-info" role="alert">
|
||||
<%= get_flash(@conn, :info) %>
|
||||
</p>
|
||||
<p :if={get_flash(@conn, :error)} class="alert alert-danger" role="alert">
|
||||
<%= get_flash(@conn, :error) %>
|
||||
</p>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
|
@ -3,22 +3,25 @@
|
||||
<.topbar current_user={assigns[:current_user]}></.topbar>
|
||||
|
||||
<div class="mx-8 my-2 flex flex-col space-y-4 text-center">
|
||||
<%= if @flash && @flash |> Map.has_key?("info") do %>
|
||||
<p class="alert alert-info" role="alert" phx-click="lv:clear-flash" phx-value-key="info">
|
||||
<%= live_flash(@flash, "info") %>
|
||||
</p>
|
||||
<% end %>
|
||||
<p
|
||||
:if={@flash && @flash |> Map.has_key?("info")}
|
||||
class="alert alert-info"
|
||||
role="alert"
|
||||
phx-click="lv:clear-flash"
|
||||
phx-value-key="info"
|
||||
>
|
||||
<%= live_flash(@flash, "info") %>
|
||||
</p>
|
||||
|
||||
<%= if @flash && @flash |> Map.has_key?("error") do %>
|
||||
<p
|
||||
class="alert alert-danger"
|
||||
role="alert"
|
||||
phx-click="lv:clear-flash"
|
||||
phx-value-key="error"
|
||||
>
|
||||
<%= live_flash(@flash, "error") %>
|
||||
</p>
|
||||
<% end %>
|
||||
<p
|
||||
:if={@flash && @flash |> Map.has_key?("error")}
|
||||
class="alert alert-danger"
|
||||
role="alert"
|
||||
phx-click="lv:clear-flash"
|
||||
phx-value-key="error"
|
||||
>
|
||||
<%= live_flash(@flash, "error") %>
|
||||
</p>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
|
@ -20,11 +20,13 @@
|
||||
<hr class="hr" />
|
||||
|
||||
<div class="flex flex-row justify-center items-center space-x-4">
|
||||
<%= if Accounts.allow_registration?() do %>
|
||||
<.link href={Routes.user_registration_path(@conn, :new)} class="btn btn-primary">
|
||||
<%= dgettext("actions", "Register") %>
|
||||
</.link>
|
||||
<% end %>
|
||||
<.link
|
||||
:if={Accounts.allow_registration?()}
|
||||
href={Routes.user_registration_path(@conn, :new)}
|
||||
class="btn btn-primary"
|
||||
>
|
||||
<%= dgettext("actions", "Register") %>
|
||||
</.link>
|
||||
<.link href={Routes.user_session_path(@conn, :new)} class="btn btn-primary">
|
||||
<%= dgettext("actions", "Log in") %>
|
||||
</.link>
|
||||
|
@ -9,13 +9,9 @@
|
||||
action={Routes.user_registration_path(@conn, :create)}
|
||||
class="flex flex-col space-y-4 sm:space-y-0 sm:grid sm:grid-cols-3 sm:gap-4 justify-center items-center"
|
||||
>
|
||||
<%= if @changeset.action && not @changeset.valid? do %>
|
||||
<div class="alert alert-danger col-span-3">
|
||||
<p>
|
||||
<%= dgettext("errors", "Oops, something went wrong! Please check the errors below.") %>
|
||||
</p>
|
||||
</div>
|
||||
<% end %>
|
||||
<p :if={@changeset.action && not @changeset.valid?()} class="alert alert-danger col-span-3">
|
||||
<%= dgettext("errors", "Oops, something went wrong! Please check the errors below.") %>
|
||||
</p>
|
||||
|
||||
<%= if @invite do %>
|
||||
<%= hidden_input(f, :invite_token, value: @invite.token) %>
|
||||
|
@ -9,13 +9,9 @@
|
||||
action={Routes.user_reset_password_path(@conn, :update, @token)}
|
||||
class="flex flex-col space-y-4 sm:space-y-0 sm:grid sm:grid-cols-3 sm:gap-4 justify-center items-center"
|
||||
>
|
||||
<%= if @changeset.action && not @changeset.valid? do %>
|
||||
<div class="alert alert-danger col-span-3">
|
||||
<p>
|
||||
<%= dgettext("errors", "Oops, something went wrong! Please check the errors below.") %>
|
||||
</p>
|
||||
</div>
|
||||
<% end %>
|
||||
<p :if={@changeset.action && not @changeset.valid?()} class="alert alert-danger col-span-3">
|
||||
<%= dgettext("errors", "Oops, something went wrong! Please check the errors below.") %>
|
||||
</p>
|
||||
|
||||
<%= label(f, :password, "New password", class: "title text-lg text-primary-600") %>
|
||||
<%= password_input(f, :password, required: true, class: "input input-primary col-span-2") %>
|
||||
@ -38,11 +34,13 @@
|
||||
<hr class="hr" />
|
||||
|
||||
<div class="flex flex-row justify-center items-center space-x-4">
|
||||
<%= if Accounts.allow_registration?() do %>
|
||||
<.link href={Routes.user_registration_path(@conn, :new)} class="btn btn-primary">
|
||||
<%= dgettext("actions", "Register") %>
|
||||
</.link>
|
||||
<% end %>
|
||||
<.link
|
||||
:if={Accounts.allow_registration?()}
|
||||
href={Routes.user_registration_path(@conn, :new)}
|
||||
class="btn btn-primary"
|
||||
>
|
||||
<%= dgettext("actions", "Register") %>
|
||||
</.link>
|
||||
<.link href={Routes.user_session_path(@conn, :new)} class="btn btn-primary">
|
||||
<%= dgettext("actions", "Log in") %>
|
||||
</.link>
|
||||
|
@ -20,11 +20,13 @@
|
||||
<hr class="hr" />
|
||||
|
||||
<div class="flex flex-row justify-center items-center space-x-4">
|
||||
<%= if Accounts.allow_registration?() do %>
|
||||
<.link href={Routes.user_registration_path(@conn, :new)} class="btn btn-primary">
|
||||
<%= dgettext("actions", "Register") %>
|
||||
</.link>
|
||||
<% end %>
|
||||
<.link
|
||||
:if={Accounts.allow_registration?()}
|
||||
href={Routes.user_registration_path(@conn, :new)}
|
||||
class="btn btn-primary"
|
||||
>
|
||||
<%= dgettext("actions", "Register") %>
|
||||
</.link>
|
||||
<.link href={Routes.user_session_path(@conn, :new)} class="btn btn-primary">
|
||||
<%= dgettext("actions", "Log in") %>
|
||||
</.link>
|
||||
|
@ -10,13 +10,9 @@
|
||||
as="user"
|
||||
class="flex flex-col space-y-4 sm:space-y-0 sm:grid sm:grid-cols-3 sm:gap-4 justify-center items-center"
|
||||
>
|
||||
<%= if @error_message do %>
|
||||
<div class="alert alert-danger col-span-3">
|
||||
<p>
|
||||
<%= @error_message %>
|
||||
</p>
|
||||
</div>
|
||||
<% end %>
|
||||
<p :if={@error_message} class="alert alert-danger col-span-3">
|
||||
<%= @error_message %>
|
||||
</p>
|
||||
|
||||
<%= label(f, :email, class: "title text-lg text-primary-600") %>
|
||||
<%= email_input(f, :email, required: true, class: "input input-primary col-span-2") %>
|
||||
@ -35,11 +31,13 @@
|
||||
<hr class="hr" />
|
||||
|
||||
<div class="flex flex-row justify-center items-center space-x-4">
|
||||
<%= if Accounts.allow_registration?() do %>
|
||||
<.link href={Routes.user_registration_path(@conn, :new)} class="btn btn-primary">
|
||||
<%= dgettext("actions", "Register") %>
|
||||
</.link>
|
||||
<% end %>
|
||||
<.link
|
||||
:if={Accounts.allow_registration?()}
|
||||
href={Routes.user_registration_path(@conn, :new)}
|
||||
class="btn btn-primary"
|
||||
>
|
||||
<%= dgettext("actions", "Register") %>
|
||||
</.link>
|
||||
<.link href={Routes.user_reset_password_path(@conn, :new)} class="btn btn-primary">
|
||||
<%= dgettext("actions", "Forgot your password?") %>
|
||||
</.link>
|
||||
|
@ -15,13 +15,14 @@
|
||||
<%= dgettext("actions", "Change email") %>
|
||||
</h3>
|
||||
|
||||
<%= if @email_changeset.action && not @email_changeset.valid? do %>
|
||||
<div class="alert alert-danger col-span-3">
|
||||
<p>
|
||||
<%= dgettext("errors", "Oops, something went wrong! Please check the errors below.") %>
|
||||
</p>
|
||||
</div>
|
||||
<% end %>
|
||||
<div
|
||||
:if={@email_changeset.action && not @email_changeset.valid?()}
|
||||
class="alert alert-danger col-span-3"
|
||||
>
|
||||
<p>
|
||||
<%= dgettext("errors", "Oops, something went wrong! Please check the errors below.") %>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<%= hidden_input(f, :action, name: "action", value: "update_email") %>
|
||||
|
||||
@ -58,13 +59,14 @@
|
||||
<%= dgettext("actions", "Change password") %>
|
||||
</h3>
|
||||
|
||||
<%= if @password_changeset.action && not @password_changeset.valid? do %>
|
||||
<div class="alert alert-danger col-span-3">
|
||||
<p>
|
||||
<%= dgettext("errors", "Oops, something went wrong! Please check the errors below.") %>
|
||||
</p>
|
||||
</div>
|
||||
<% end %>
|
||||
<div
|
||||
:if={@password_changeset.action && not @password_changeset.valid?()}
|
||||
class="alert alert-danger col-span-3"
|
||||
>
|
||||
<p>
|
||||
<%= dgettext("errors", "Oops, something went wrong! Please check the errors below.") %>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<%= hidden_input(f, :action, name: "action", value: "update_password") %>
|
||||
|
||||
@ -113,13 +115,9 @@
|
||||
<%= dgettext("actions", "Change Language") %>
|
||||
</h3>
|
||||
|
||||
<%= if @locale_changeset.action && not @locale_changeset.valid? do %>
|
||||
<div class="alert alert-danger">
|
||||
<p>
|
||||
<%= dgettext("errors", "Oops, something went wrong! Please check the errors below.") %>
|
||||
</p>
|
||||
</div>
|
||||
<% end %>
|
||||
<p :if={@locale_changeset.action && not @locale_changeset.valid?} class="alert alert-danger">
|
||||
<%= dgettext("errors", "Oops, something went wrong! Please check the errors below.") %>
|
||||
</p>
|
||||
|
||||
<%= hidden_input(f, :action, name: "action", value: "update_locale") %>
|
||||
|
||||
|
@ -17,11 +17,13 @@ defmodule LokalWeb.ErrorHelpers do
|
||||
assigns = %{extra_class: extra_class, form: form, field: field}
|
||||
|
||||
~H"""
|
||||
<%= for error <- Keyword.get_values(@form.errors, @field) do %>
|
||||
<span class={["invalid-feedback", @extra_class]} phx-feedback-for={input_name(@form, @field)}>
|
||||
<%= translate_error(error) %>
|
||||
</span>
|
||||
<% end %>
|
||||
<span
|
||||
:for={error <- Keyword.get_values(@form.errors, @field)}
|
||||
class={["invalid-feedback", @extra_class]}
|
||||
phx-feedback-for={input_name(@form, @field)}
|
||||
>
|
||||
<%= translate_error(error) %>
|
||||
</span>
|
||||
"""
|
||||
end
|
||||
|
||||
|
@ -7,11 +7,11 @@ defmodule LokalWeb.LayoutView do
|
||||
# so we instruct Elixir to not warn if the dashboard route is missing.
|
||||
@compile {:no_warn_undefined, {Routes, :live_dashboard_path, 2}}
|
||||
|
||||
def get_title(conn) do
|
||||
if conn.assigns |> Map.has_key?(:title) do
|
||||
"Lokal | #{conn.assigns.title}"
|
||||
else
|
||||
"Lokal"
|
||||
end
|
||||
def get_title(%{assigns: %{title: title}}) when title not in [nil, ""] do
|
||||
gettext("Lokal | %{title}", title: title)
|
||||
end
|
||||
|
||||
def get_title(_conn) do
|
||||
gettext("Lokal")
|
||||
end
|
||||
end
|
||||
|
@ -16,19 +16,18 @@ defmodule LokalWeb.ViewHelpers do
|
||||
|
||||
def datetime(assigns) do
|
||||
~H"""
|
||||
<%= if @datetime do %>
|
||||
<time
|
||||
datetime={cast_datetime(@datetime)}
|
||||
x-data={"{
|
||||
datetime:
|
||||
Intl.DateTimeFormat([], {dateStyle: 'short', timeStyle: 'long'})
|
||||
.format(new Date(\"#{cast_datetime(@datetime)}\"))
|
||||
}"}
|
||||
x-text="datetime"
|
||||
>
|
||||
<%= cast_datetime(@datetime) %>
|
||||
</time>
|
||||
<% end %>
|
||||
<time
|
||||
:if={@datetime}
|
||||
datetime={cast_datetime(@datetime)}
|
||||
x-data={"{
|
||||
datetime:
|
||||
Intl.DateTimeFormat([], {dateStyle: 'short', timeStyle: 'long'})
|
||||
.format(new Date(\"#{cast_datetime(@datetime)}\"))
|
||||
}"}
|
||||
x-text="datetime"
|
||||
>
|
||||
<%= cast_datetime(@datetime) %>
|
||||
</time>
|
||||
"""
|
||||
end
|
||||
|
||||
@ -48,19 +47,18 @@ defmodule LokalWeb.ViewHelpers do
|
||||
|
||||
def date(assigns) do
|
||||
~H"""
|
||||
<%= if @date do %>
|
||||
<time
|
||||
datetime={@date |> Date.to_iso8601(:extended)}
|
||||
x-data={"{
|
||||
date:
|
||||
Intl.DateTimeFormat([], {timeZone: 'Etc/UTC', dateStyle: 'short'})
|
||||
.format(new Date(\"#{@date |> Date.to_iso8601(:extended)}\"))
|
||||
}"}
|
||||
x-text="date"
|
||||
>
|
||||
<%= @date |> Date.to_iso8601(:extended) %>
|
||||
</time>
|
||||
<% end %>
|
||||
<time
|
||||
:if={@date}
|
||||
datetime={@date |> Date.to_iso8601(:extended)}
|
||||
x-data={"{
|
||||
date:
|
||||
Intl.DateTimeFormat([], {timeZone: 'Etc/UTC', dateStyle: 'short'})
|
||||
.format(new Date(\"#{@date |> Date.to_iso8601(:extended)}\"))
|
||||
}"}
|
||||
x-text="date"
|
||||
>
|
||||
<%= @date |> Date.to_iso8601(:extended) %>
|
||||
</time>
|
||||
"""
|
||||
end
|
||||
|
||||
|
@ -11,47 +11,47 @@ msgid ""
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:15
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:44
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:45
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Change email"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:58
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:99
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:59
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:101
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:145
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:143
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Delete User"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:51
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:47
|
||||
#: lib/lokal_web/templates/user_reset_password/new.html.heex:3
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:44
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:42
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Forgot your password?"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/components/topbar.ex:109
|
||||
#: lib/lokal_web/templates/user_confirmation/new.html.heex:29
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:48
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:47
|
||||
#: lib/lokal_web/templates/user_reset_password/new.html.heex:29
|
||||
#: lib/lokal_web/components/topbar.ex:108
|
||||
#: lib/lokal_web/templates/user_confirmation/new.html.heex:31
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:44
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:45
|
||||
#: lib/lokal_web/templates/user_reset_password/new.html.heex:31
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:3
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:32
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:28
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Log in"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/components/topbar.ex:100
|
||||
#: lib/lokal_web/templates/user_confirmation/new.html.heex:25
|
||||
#: lib/lokal_web/templates/user_confirmation/new.html.heex:28
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:3
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:41
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:43
|
||||
#: lib/lokal_web/templates/user_reset_password/new.html.heex:25
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:40
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:37
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:42
|
||||
#: lib/lokal_web/templates/user_reset_password/new.html.heex:28
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:39
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Register"
|
||||
msgstr ""
|
||||
@ -63,7 +63,7 @@ msgid "Resend confirmation instructions"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:3
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:33
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:29
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Reset password"
|
||||
msgstr ""
|
||||
@ -73,7 +73,7 @@ msgstr ""
|
||||
msgid "Send instructions to reset password"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:30
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:29
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Copy to clipboard"
|
||||
msgstr ""
|
||||
@ -88,17 +88,17 @@ msgstr ""
|
||||
msgid "Invite someone new!"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:28
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:29
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:113
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:115
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Change Language"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:131
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:129
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Change language"
|
||||
msgstr ""
|
||||
|
@ -10,7 +10,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:78
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:80
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Confirm new password"
|
||||
msgstr ""
|
||||
@ -20,8 +20,8 @@ msgstr ""
|
||||
msgid "Confirm your account"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:32
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:87
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:33
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:89
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Current password"
|
||||
msgstr ""
|
||||
@ -36,14 +36,14 @@ msgstr ""
|
||||
msgid "Invite Disabled"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/components/topbar.ex:62
|
||||
#: lib/lokal_web/components/topbar.ex:61
|
||||
#: lib/lokal_web/live/invite_live/index.ex:41
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:3
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Invites"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:27
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:23
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Keep me logged in for 60 days"
|
||||
msgstr ""
|
||||
@ -53,12 +53,12 @@ msgstr ""
|
||||
msgid "Log in"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:71
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:73
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "New password"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/layout/live.html.heex:40
|
||||
#: lib/lokal_web/templates/layout/live.html.heex:43
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Reconnecting..."
|
||||
msgstr ""
|
||||
@ -79,27 +79,17 @@ msgstr ""
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:7
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Shop from your community"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:3
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Welcome to Lokal"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.ex:10
|
||||
#: lib/lokal_web/live/home_live.ex:15
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Home"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:90
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:86
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Admins"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:59
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:62
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Disable"
|
||||
msgstr ""
|
||||
@ -109,12 +99,12 @@ msgstr ""
|
||||
msgid "Edit Invite"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:63
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:62
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Enable"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:20
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:21
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
@ -129,28 +119,28 @@ msgstr ""
|
||||
msgid "No invites 😔"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:79
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:77
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Set Unlimited"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:120
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:114
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:24
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:25
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Uses left"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:36
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:126
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:32
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:124
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "English"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:32
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:28
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Language"
|
||||
msgstr ""
|
||||
@ -161,8 +151,10 @@ msgid "Email unconfirmed"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/components/topbar.ex:23
|
||||
#: lib/lokal_web/templates/error/error.html.heex:8
|
||||
#: lib/lokal_web/templates/layout/root.html.heex:8
|
||||
#: lib/lokal_web/templates/layout/root.html.heex:9
|
||||
#: lib/lokal_web/views/layout_view.ex:15
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Lokal"
|
||||
msgstr ""
|
||||
@ -186,3 +178,103 @@ msgstr ""
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Uses Left: Unlimited"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:37
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Access from any internet-capable device"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:51
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Admins:"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:16
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Easy to Use:"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:98
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Get involved!"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:119
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Help translate"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:46
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Instance Information"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:73
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Invite Only"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:72
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Public Signups"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:69
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Registration:"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:130
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Report bugs or request features"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:24
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Secure:"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:27
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Self-host your own instance, or use an instance from someone you trust."
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:34
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Simple:"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:79
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Version:"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:108
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "View the source code"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:28
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Your data stays with you, period"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:19
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Lokal lets you easily shop from your local community"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:7
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Shop from your local community"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:3
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Welcome to Lokal"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/views/layout_view.ex:11
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Lokal | %{title}"
|
||||
msgstr ""
|
||||
|
@ -11,47 +11,47 @@ msgstr ""
|
||||
"Language: en\n"
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:15
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:44
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:45
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Change email"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:58
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:99
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:59
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:101
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Change password"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:145
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:143
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Delete User"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:51
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:47
|
||||
#: lib/lokal_web/templates/user_reset_password/new.html.heex:3
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:44
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:42
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Forgot your password?"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/components/topbar.ex:109
|
||||
#: lib/lokal_web/templates/user_confirmation/new.html.heex:29
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:48
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:47
|
||||
#: lib/lokal_web/templates/user_reset_password/new.html.heex:29
|
||||
#: lib/lokal_web/components/topbar.ex:108
|
||||
#: lib/lokal_web/templates/user_confirmation/new.html.heex:31
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:44
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:45
|
||||
#: lib/lokal_web/templates/user_reset_password/new.html.heex:31
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:3
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:32
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:28
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Log in"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/components/topbar.ex:100
|
||||
#: lib/lokal_web/templates/user_confirmation/new.html.heex:25
|
||||
#: lib/lokal_web/templates/user_confirmation/new.html.heex:28
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:3
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:41
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:43
|
||||
#: lib/lokal_web/templates/user_reset_password/new.html.heex:25
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:40
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:37
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:42
|
||||
#: lib/lokal_web/templates/user_reset_password/new.html.heex:28
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:39
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Register"
|
||||
msgstr ""
|
||||
@ -63,7 +63,7 @@ msgid "Resend confirmation instructions"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:3
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:33
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:29
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Reset password"
|
||||
msgstr ""
|
||||
@ -73,7 +73,7 @@ msgstr ""
|
||||
msgid "Send instructions to reset password"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:30
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:29
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Copy to clipboard"
|
||||
msgstr ""
|
||||
@ -88,17 +88,17 @@ msgstr ""
|
||||
msgid "Invite someone new!"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:28
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:29
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:113
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:115
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Change Language"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:131
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:129
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Change language"
|
||||
msgstr ""
|
||||
|
@ -10,7 +10,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Language: en\n"
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:78
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:80
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Confirm new password"
|
||||
msgstr ""
|
||||
@ -20,8 +20,8 @@ msgstr ""
|
||||
msgid "Confirm your account"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:32
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:87
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:33
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:89
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Current password"
|
||||
msgstr ""
|
||||
@ -36,14 +36,14 @@ msgstr ""
|
||||
msgid "Invite Disabled"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/components/topbar.ex:62
|
||||
#: lib/lokal_web/components/topbar.ex:61
|
||||
#: lib/lokal_web/live/invite_live/index.ex:41
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:3
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Invites"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:27
|
||||
#: lib/lokal_web/templates/user_session/new.html.heex:23
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Keep me logged in for 60 days"
|
||||
msgstr ""
|
||||
@ -53,12 +53,12 @@ msgstr ""
|
||||
msgid "Log in"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:71
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:73
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "New password"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/layout/live.html.heex:40
|
||||
#: lib/lokal_web/templates/layout/live.html.heex:43
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Reconnecting..."
|
||||
msgstr ""
|
||||
@ -79,27 +79,17 @@ msgstr ""
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:7
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Shop from your community"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:3
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Welcome to Lokal"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.ex:10
|
||||
#: lib/lokal_web/live/home_live.ex:15
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Home"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:90
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:86
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Admins"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:59
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:62
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Disable"
|
||||
msgstr ""
|
||||
@ -109,12 +99,12 @@ msgstr ""
|
||||
msgid "Edit Invite"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:63
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:62
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Enable"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:20
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:21
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
@ -129,28 +119,28 @@ msgstr ""
|
||||
msgid "No invites 😔"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:79
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:77
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Set Unlimited"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:120
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:114
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:24
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:25
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Uses left"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:36
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:126
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:32
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:124
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "English"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:32
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:28
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Language"
|
||||
msgstr ""
|
||||
@ -161,8 +151,10 @@ msgid "Email unconfirmed"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/components/topbar.ex:23
|
||||
#: lib/lokal_web/templates/error/error.html.heex:8
|
||||
#: lib/lokal_web/templates/layout/root.html.heex:8
|
||||
#: lib/lokal_web/templates/layout/root.html.heex:9
|
||||
#: lib/lokal_web/views/layout_view.ex:15
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Lokal"
|
||||
msgstr ""
|
||||
@ -186,3 +178,103 @@ msgstr ""
|
||||
#, elixir-autogen, elixir-format, fuzzy
|
||||
msgid "Uses Left: Unlimited"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:37
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Access from any internet-capable device"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:51
|
||||
#, elixir-autogen, elixir-format, fuzzy
|
||||
msgid "Admins:"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:16
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Easy to Use:"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:98
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Get involved!"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:119
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Help translate"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:46
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Instance Information"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:73
|
||||
#, elixir-autogen, elixir-format, fuzzy
|
||||
msgid "Invite Only"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:72
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Public Signups"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:69
|
||||
#, elixir-autogen, elixir-format, fuzzy
|
||||
msgid "Registration:"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:130
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Report bugs or request features"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:24
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Secure:"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:27
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Self-host your own instance, or use an instance from someone you trust."
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:34
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Simple:"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:79
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Version:"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:108
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "View the source code"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:28
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Your data stays with you, period"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:19
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Lokal lets you easily shop from your local community"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:7
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Shop from your local community"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:3
|
||||
#, elixir-autogen, elixir-format, fuzzy
|
||||
msgid "Welcome to Lokal"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/views/layout_view.ex:11
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Lokal | %{title}"
|
||||
msgstr ""
|
||||
|
@ -126,10 +126,10 @@ msgstr ""
|
||||
msgid "Not found"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:15
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:15
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:21
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:64
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:13
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:13
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:23
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:67
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:119
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Oops, something went wrong! Please check the errors below."
|
||||
|
@ -20,12 +20,12 @@ msgstr ""
|
||||
msgid "A link to confirm your email change has been sent to the new address."
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:143
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:141
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Are you sure you want to delete your account?"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/components/topbar.ex:78
|
||||
#: lib/lokal_web/components/topbar.ex:76
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Are you sure you want to log out?"
|
||||
msgstr ""
|
||||
@ -70,8 +70,8 @@ msgstr ""
|
||||
msgid "Your account has been deleted"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:102
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:132
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:97
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:125
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Are you sure you want to delete %{email}? This action is permanent!"
|
||||
msgstr ""
|
||||
@ -81,12 +81,12 @@ msgstr ""
|
||||
msgid "Copied to clipboard"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:30
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:31
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Saving..."
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:133
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:131
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Are you sure you want to change your language?"
|
||||
msgstr ""
|
||||
@ -131,12 +131,17 @@ msgstr ""
|
||||
msgid "%{user_email} deleted succesfully"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:48
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:47
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Are you sure you want to delete the invite for %{invite_name}?"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:74
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:72
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Are you sure you want to make %{invite_name} unlimited?"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:56
|
||||
#, elixir-autogen, elixir-format, fuzzy
|
||||
msgid "Register to setup Lokal"
|
||||
msgstr ""
|
||||
|
@ -123,10 +123,10 @@ msgstr ""
|
||||
msgid "Not found"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:15
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:15
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:21
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:64
|
||||
#: lib/lokal_web/templates/user_registration/new.html.heex:13
|
||||
#: lib/lokal_web/templates/user_reset_password/edit.html.heex:13
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:23
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:67
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:119
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Oops, something went wrong! Please check the errors below."
|
||||
|
@ -20,12 +20,12 @@ msgstr ""
|
||||
msgid "A link to confirm your email change has been sent to the new address."
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:143
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:141
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Are you sure you want to delete your account?"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/components/topbar.ex:78
|
||||
#: lib/lokal_web/components/topbar.ex:76
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Are you sure you want to log out?"
|
||||
msgstr ""
|
||||
@ -70,8 +70,8 @@ msgstr ""
|
||||
msgid "Your account has been deleted"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:102
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:132
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:97
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:125
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Are you sure you want to delete %{email}? This action is permanent!"
|
||||
msgstr ""
|
||||
@ -81,12 +81,12 @@ msgstr ""
|
||||
msgid "Copied to clipboard"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:30
|
||||
#: lib/lokal_web/live/invite_live/form_component.html.heex:31
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Saving..."
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:133
|
||||
#: lib/lokal_web/templates/user_settings/edit.html.heex:131
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Are you sure you want to change your language?"
|
||||
msgstr ""
|
||||
@ -131,12 +131,17 @@ msgstr ""
|
||||
msgid "%{user_email} deleted succesfully"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:48
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:47
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Are you sure you want to delete the invite for %{invite_name}?"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:74
|
||||
#: lib/lokal_web/live/invite_live/index.html.heex:72
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Are you sure you want to make %{invite_name} unlimited?"
|
||||
msgstr ""
|
||||
|
||||
#: lib/lokal_web/live/home_live.html.heex:56
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Register to setup Lokal"
|
||||
msgstr ""
|
||||
|
Loading…
Reference in New Issue
Block a user