mirror of
https://github.com/ClaperCo/Claper.git
synced 2025-12-16 20:07:59 +01:00
Add nickname feature + German locale + minor fixes (#43)
* Add attendee name feature * Add names to report * Add name to test * Finish nickname feature + minor fixes * Add german locale * Update changelog
This commit is contained in:
10
CHANGELOG.md
10
CHANGELOG.md
@@ -1,3 +1,13 @@
|
||||
## 1.5.0
|
||||
|
||||
- Add a nickname feature and toggle button to avoid anonymous messages
|
||||
- Add url information on the instruction page with QR Code
|
||||
- Add German locale (thanks to @Dynnammo)
|
||||
- Update Moment Timezone, Moment to patch security vulnerabilities
|
||||
- Update TailwindCSS 2 to 3
|
||||
- Fix layout on the moderator page for messages list
|
||||
- Fix event link color being white
|
||||
|
||||
## v1.4.2
|
||||
|
||||
- Update Moment Timezone, Moment to patch security vulnerabilities
|
||||
|
||||
@@ -125,6 +125,40 @@ Hooks.ScrollIntoDiv = {
|
||||
}
|
||||
}
|
||||
|
||||
Hooks.NicknamePicker = {
|
||||
mounted() {
|
||||
let currentNickname = localStorage.getItem("nickname") || ""
|
||||
if (currentNickname.length > 0) {
|
||||
this.pushEvent("set-nickname", {nickname: currentNickname})
|
||||
}
|
||||
|
||||
this.el.addEventListener("click", (e) => this.clicked(e))
|
||||
},
|
||||
destroy() {
|
||||
this.el.removeEventListener("click", (e) => this.clicked(e))
|
||||
},
|
||||
clicked(e) {
|
||||
let nickname = prompt(this.el.dataset.prompt, localStorage.getItem("nickname") || "")
|
||||
|
||||
if (nickname) {
|
||||
localStorage.setItem("nickname", nickname)
|
||||
this.pushEvent("set-nickname", {nickname: nickname})
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
Hooks.EmptyNickname = {
|
||||
mounted() {
|
||||
this.el.addEventListener("click", (e) => this.clicked(e))
|
||||
},
|
||||
destroy() {
|
||||
this.el.removeEventListener("click", (e) => this.clicked(e))
|
||||
},
|
||||
clicked(e) {
|
||||
localStorage.removeItem("nickname")
|
||||
},
|
||||
}
|
||||
|
||||
Hooks.PostForm = {
|
||||
onPress(e, submitBtn, TA) {
|
||||
if (e.key == "Enter" && !e.shiftKey) {
|
||||
@@ -146,11 +180,19 @@ Hooks.PostForm = {
|
||||
TA.value = ""
|
||||
},
|
||||
mounted() {
|
||||
const submitBtn = document.getElementById("submitBtn")
|
||||
const TA = document.getElementById("postFormTA")
|
||||
if (submitBtn && TA) {
|
||||
submitBtn.addEventListener("click", (e) => this.onSubmit(e, TA))
|
||||
TA.addEventListener("keydown", (e) => this.onPress(e, submitBtn, TA))
|
||||
setTimeout(() => {
|
||||
const submitBtn = document.getElementById("submitBtn")
|
||||
const TA = document.getElementById("postFormTA")
|
||||
if (submitBtn && TA) {
|
||||
submitBtn.addEventListener("click", (e) => this.onSubmit(e, TA))
|
||||
TA.addEventListener("keydown", (e) => this.onPress(e, submitBtn, TA))
|
||||
}
|
||||
}, 500)
|
||||
|
||||
// set nickname if present
|
||||
let nickname = this.el.dataset.nickname
|
||||
if (nickname) {
|
||||
localStorage.setItem("nickname", nickname)
|
||||
}
|
||||
},
|
||||
updated() {
|
||||
@@ -419,7 +461,7 @@ Uploaders.S3 = function(entries, onViewError){
|
||||
|
||||
let liveSocket = new LiveSocket("/live", Socket, {
|
||||
uploaders: Uploaders,
|
||||
params: {_csrf_token: csrfToken, tz: Intl.DateTimeFormat().resolvedOptions().timeZone},
|
||||
params: {_csrf_token: csrfToken, tz: Intl.DateTimeFormat().resolvedOptions().timeZone, host: window.location.host},
|
||||
hooks: Hooks,
|
||||
dom: {
|
||||
onBeforeElUpdated(from, to){
|
||||
|
||||
@@ -19,7 +19,7 @@ config :claper, ClaperWeb.Endpoint,
|
||||
|
||||
config :claper, ClaperWeb.Gettext,
|
||||
default_locale: "en",
|
||||
locales: ~w(fr en)
|
||||
locales: ~w(fr en de)
|
||||
|
||||
# Configures the mailer
|
||||
#
|
||||
|
||||
@@ -29,9 +29,17 @@ defmodule Claper.Posts.Post do
|
||||
:like_count,
|
||||
:love_count,
|
||||
:lol_count,
|
||||
:name,
|
||||
:position
|
||||
])
|
||||
|> validate_required([:body, :position])
|
||||
|> validate_length(:body, min: 2, max: 250)
|
||||
end
|
||||
|
||||
def nickname_changeset(post, attrs) do
|
||||
post
|
||||
|> cast(attrs, [:name])
|
||||
|> validate_required([:name])
|
||||
|> validate_length(:name, min: 2, max: 20)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -8,6 +8,7 @@ defmodule Claper.Presentations.PresentationState do
|
||||
field :poll_visible, :boolean
|
||||
field :join_screen_visible, :boolean
|
||||
field :chat_enabled, :boolean
|
||||
field :anonymous_chat_enabled, :boolean
|
||||
field :banned, {:array, :string}, default: []
|
||||
|
||||
belongs_to :presentation_file, Claper.Presentations.PresentationFile
|
||||
@@ -25,7 +26,8 @@ defmodule Claper.Presentations.PresentationState do
|
||||
:join_screen_visible,
|
||||
:banned,
|
||||
:presentation_file_id,
|
||||
:chat_enabled
|
||||
:chat_enabled,
|
||||
:anonymous_chat_enabled
|
||||
])
|
||||
|> validate_required([])
|
||||
end
|
||||
|
||||
@@ -66,7 +66,7 @@ defmodule ClaperWeb.EventLive.FormComponent do
|
||||
required="true"
|
||||
value={
|
||||
if is_nil(assigns.current_form_submit),
|
||||
do: '',
|
||||
do: ~c"",
|
||||
else: assigns.current_form_submit.response[field.name]
|
||||
}
|
||||
/>
|
||||
@@ -80,7 +80,7 @@ defmodule ClaperWeb.EventLive.FormComponent do
|
||||
required="true"
|
||||
value={
|
||||
if is_nil(assigns.current_form_submit),
|
||||
do: '',
|
||||
do: ~c"",
|
||||
else: assigns.current_form_submit.response[field.name]
|
||||
}
|
||||
/>
|
||||
|
||||
@@ -314,6 +314,23 @@ defmodule ClaperWeb.EventLive.Manage do
|
||||
{:noreply, socket |> assign(:state, new_state)}
|
||||
end
|
||||
|
||||
@impl true
|
||||
def handle_event(
|
||||
"checked",
|
||||
%{"key" => "anonymous_chat_enabled", "value" => value},
|
||||
%{assigns: %{state: state}} = socket
|
||||
) do
|
||||
{:ok, new_state} =
|
||||
Claper.Presentations.update_presentation_state(
|
||||
state,
|
||||
%{
|
||||
:anonymous_chat_enabled => value
|
||||
}
|
||||
)
|
||||
|
||||
{:noreply, socket |> assign(:state, new_state)}
|
||||
end
|
||||
|
||||
@impl true
|
||||
def handle_event(
|
||||
"checked",
|
||||
|
||||
@@ -551,7 +551,7 @@
|
||||
|
||||
<div class="grid grid-cols-1 grid-rows-2 md:grid-rows-3">
|
||||
<div class="bg-gray-200 md:row-span-2">
|
||||
<ul class="flex items-center space-x-3 px-2 mt-2">
|
||||
<ul class="fixed z-20 flex items-center bg-gray-200 space-x-3 px-2 w-full py-2">
|
||||
<li class={"rounded-md #{if @list_tab == :posts, do: 'bg-secondary-600 text-white', else: 'bg-white text-gray-600' } px-2 py-0.5 text-sm shadow-sm"}>
|
||||
<%= link(gettext("Messages"), to: "#", phx_click: "list-tab", phx_value_tab: :posts) %>
|
||||
</li>
|
||||
@@ -586,7 +586,7 @@
|
||||
<% end %>
|
||||
<div
|
||||
id="post-list"
|
||||
class={"overflow-y-auto #{if Enum.count(@posts) > 0, do: 'max-h-full'} pb-5 px-5"}
|
||||
class={"overflow-y-auto #{if Enum.count(@posts) > 0, do: 'max-h-full'} pb-5 pt-8 px-5"}
|
||||
phx-update="append"
|
||||
data-posts-nb={Enum.count(@posts)}
|
||||
phx-hook="ScrollIntoDiv"
|
||||
@@ -650,7 +650,13 @@
|
||||
/>
|
||||
<% end %>
|
||||
|
||||
<p class="text-xl"><%= post.body %></p>
|
||||
<div class="flex flex-col">
|
||||
<%= if post.name do %>
|
||||
<p class="text-black text-sm font-semibold mr-2"><%= post.name %></p>
|
||||
<% end %>
|
||||
|
||||
<p class="text-xl"><%= post.body %></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<%= if post.like_count > 0 || post.love_count > 0 || post.lol_count > 0 do %>
|
||||
@@ -793,6 +799,14 @@
|
||||
<ClaperWeb.Component.Input.check key={:chat_enabled} checked={@state.chat_enabled} />
|
||||
<span><%= gettext("Enable messages") %></span>
|
||||
</div>
|
||||
|
||||
<div class="flex space-x-2 items-center mt-3">
|
||||
<ClaperWeb.Component.Input.check
|
||||
key={:anonymous_chat_enabled}
|
||||
checked={@state.anonymous_chat_enabled}
|
||||
/>
|
||||
<span><%= gettext("Enable anonymous messages") %></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -21,6 +21,21 @@ defmodule ClaperWeb.EventLive.PostComponent do
|
||||
>
|
||||
<img src="/images/icons/ellipsis-horizontal-white.svg" class="h-5" />
|
||||
</button>
|
||||
|
||||
<%= if @post.name || is_a_leader(@post, @event, @leaders) do %>
|
||||
<div class="inline-flex items-center">
|
||||
<%= if @post.name do %>
|
||||
<p class="text-white text-xs font-semibold mb-2 mr-2"><%= @post.name %></p>
|
||||
<% end %>
|
||||
<%= if is_a_leader(@post, @event, @leaders) do %>
|
||||
<div class="inline-flex items-center space-x-1 justify-center px-3 py-0.5 rounded-full text-xs font-medium bg-supporting-yellow-100 text-supporting-yellow-800 mb-2">
|
||||
<img src="/images/icons/star.svg" class="h-3" />
|
||||
<span><%= gettext("Host") %></span>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<div
|
||||
id={"post-menu-#{@post.id}"}
|
||||
class="hidden absolute right-4 top-7 bg-white rounded-lg px-5 py-2"
|
||||
@@ -60,10 +75,17 @@ defmodule ClaperWeb.EventLive.PostComponent do
|
||||
</div>
|
||||
<% else %>
|
||||
<div class="px-4 pt-3 pb-8 rounded-b-lg rounded-tr-lg bg-white text-black relative z-0 break-all">
|
||||
<%= if is_a_leader(@post, @event, @leaders) do %>
|
||||
<div class="inline-flex items-center space-x-1 justify-center px-3 py-0.5 rounded-full text-xs font-medium bg-supporting-yellow-100 text-supporting-yellow-800 mb-2">
|
||||
<img src="/images/icons/star.svg" class="h-3" />
|
||||
<span><%= gettext("Host") %></span>
|
||||
<%= if @post.name || is_a_leader(@post, @event, @leaders) do %>
|
||||
<div class="inline-flex items-center">
|
||||
<%= if @post.name do %>
|
||||
<p class="text-black text-xs font-semibold mb-2 mr-2"><%= @post.name %></p>
|
||||
<% end %>
|
||||
<%= if is_a_leader(@post, @event, @leaders) do %>
|
||||
<div class="inline-flex items-center space-x-1 justify-center px-3 py-0.5 rounded-full text-xs font-medium bg-supporting-yellow-100 text-supporting-yellow-800 mb-2">
|
||||
<img src="/images/icons/star.svg" class="h-3" />
|
||||
<span><%= gettext("Host") %></span>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
|
||||
@@ -33,9 +33,16 @@ defmodule ClaperWeb.EventLive.Presenter do
|
||||
)
|
||||
end
|
||||
|
||||
host =
|
||||
case get_connect_params(socket) do
|
||||
nil -> ""
|
||||
%{"host" => host} -> host
|
||||
end
|
||||
|
||||
socket =
|
||||
socket
|
||||
|> assign(:attendees_nb, 1)
|
||||
|> assign(:host, host)
|
||||
|> assign(:event, event)
|
||||
|> assign(:state, event.presentation_file.presentation_state)
|
||||
|> assign(:posts, list_posts(socket, event.uuid))
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
>
|
||||
</div>
|
||||
<span class="font-semibold mb-10 sm:text-3xl md:text-4xl lg:text-6xl">
|
||||
<%= gettext("Or use the code:") %>
|
||||
<%= gettext("Or go to %{url} and use the code:", url: @host) %>
|
||||
</span>
|
||||
<span class="font-semibold mb-10 sm:text-5xl md:text-6xl lg:text-8xl">
|
||||
#<%= String.upcase(@event.code) %>
|
||||
@@ -81,6 +81,9 @@
|
||||
<%= for post <- @posts do %>
|
||||
<div class={if post.__meta__.state == :deleted, do: "hidden"} id={"#{post.id}-post"}>
|
||||
<div class="px-4 pb-2 pt-3 rounded-b-lg rounded-tr-lg bg-white shadow-md text-black break-all mt-4">
|
||||
<%= if post.name do %>
|
||||
<p class="text-gray-400 text-lg font-semibold mb-2 mr-2"><%= post.name %></p>
|
||||
<% end %>
|
||||
<p class="text-3xl"><%= post.body %></p>
|
||||
|
||||
<%= if post.like_count > 0 || post.love_count > 0 || post.lol_count > 0 do %>
|
||||
|
||||
@@ -82,6 +82,7 @@ defmodule ClaperWeb.EventLive.Show do
|
||||
|> assign(:poll_opt_saved, false)
|
||||
|> assign(:event, event)
|
||||
|> assign(:state, event.presentation_file.presentation_state)
|
||||
|> assign(:nickname, "")
|
||||
|> starting_soon_assigns(event)
|
||||
|> get_current_poll(event)
|
||||
|> get_current_form(event)
|
||||
@@ -328,13 +329,14 @@ defmodule ClaperWeb.EventLive.Show do
|
||||
post_params
|
||||
|> Map.put("user_id", current_user.id)
|
||||
|> Map.put("position", socket.assigns.state.position)
|
||||
|> Map.put("name", socket.assigns.nickname)
|
||||
|
||||
case Posts.create_post(socket.assigns.event, post_params) do
|
||||
{:ok, _post} ->
|
||||
{:noreply, socket}
|
||||
|
||||
{:error, %Ecto.Changeset{} = changeset} ->
|
||||
{:noreply, assign(socket, changeset: changeset)}
|
||||
{:noreply, assign(socket, post_changeset: changeset)}
|
||||
end
|
||||
end
|
||||
|
||||
@@ -348,13 +350,32 @@ defmodule ClaperWeb.EventLive.Show do
|
||||
post_params
|
||||
|> Map.put("attendee_identifier", attendee_identifier)
|
||||
|> Map.put("position", socket.assigns.state.position)
|
||||
|> Map.put("name", socket.assigns.nickname)
|
||||
|
||||
case Posts.create_post(socket.assigns.event, post_params) do
|
||||
{:ok, _post} ->
|
||||
{:noreply, socket}
|
||||
|
||||
{:error, %Ecto.Changeset{} = changeset} ->
|
||||
{:noreply, assign(socket, changeset: changeset)}
|
||||
{:noreply, assign(socket, post_changeset: changeset)}
|
||||
end
|
||||
end
|
||||
|
||||
@impl true
|
||||
def handle_event(
|
||||
"save-nickname",
|
||||
%{"post" => post_params},
|
||||
socket
|
||||
) do
|
||||
changeset = Posts.Post.nickname_changeset(%Posts.Post{}, post_params)
|
||||
|
||||
case changeset.valid? do
|
||||
true ->
|
||||
{:noreply, socket |> assign(:nickname, post_params["name"])}
|
||||
|
||||
false ->
|
||||
IO.inspect(changeset)
|
||||
{:noreply, assign(socket, post_changeset: %{changeset | action: :insert})}
|
||||
end
|
||||
end
|
||||
|
||||
@@ -373,6 +394,13 @@ defmodule ClaperWeb.EventLive.Show do
|
||||
{:noreply, socket}
|
||||
end
|
||||
|
||||
@impl true
|
||||
def handle_event("set-nickname", %{"nickname" => nickname}, socket) do
|
||||
{:noreply,
|
||||
socket
|
||||
|> assign(:nickname, nickname)}
|
||||
end
|
||||
|
||||
@impl true
|
||||
def handle_event(
|
||||
"react",
|
||||
@@ -530,6 +558,16 @@ defmodule ClaperWeb.EventLive.Show do
|
||||
)
|
||||
end
|
||||
|
||||
def toggle_nickname_popup(js \\ %JS{}) do
|
||||
js
|
||||
|> JS.toggle(
|
||||
to: "#nickname-popup",
|
||||
out: "animate__animated animate__slideOutDown",
|
||||
in: "animate__animated animate__slideInUp",
|
||||
display: "flex"
|
||||
)
|
||||
end
|
||||
|
||||
defp add_post_like(socket, post_id, params) do
|
||||
with post <- Posts.get_post!(post_id, [:event]),
|
||||
{:ok, _} <- Posts.create_reaction(Map.merge(params, %{post: post})) do
|
||||
|
||||
@@ -83,7 +83,7 @@
|
||||
<% end %>
|
||||
|
||||
<div
|
||||
class="flex flex-col space-y-4 px-5 pt-20 pb-24 lg:w-1/3 bg-black min-h-screen"
|
||||
class="flex flex-col space-y-4 px-5 pt-20 pb-32 lg:w-1/3 bg-black min-h-screen"
|
||||
id="post-list"
|
||||
phx-update="append"
|
||||
data-posts-nb={Enum.count(@posts)}
|
||||
@@ -123,59 +123,199 @@
|
||||
>
|
||||
</div>
|
||||
|
||||
<%= if @state.chat_enabled do %>
|
||||
<.form
|
||||
:let={f}
|
||||
for={@post_changeset}
|
||||
id="post-form"
|
||||
class="fixed bottom-12 w-full lg:w-1/3 lg:mx-auto"
|
||||
phx-hook="PostForm"
|
||||
phx-submit="save"
|
||||
>
|
||||
<div
|
||||
class="rounded-full text-base px-4 py-2 mx-5 relative"
|
||||
style="
|
||||
background: rgb(17,134,213);
|
||||
background: linear-gradient(333deg, rgba(17,134,213,0.4962359943977591) 0%, rgba(163,39,255,0.5046393557422969) 100%);
|
||||
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
|
||||
backdrop-filter: blur(11.5px);
|
||||
-webkit-backdrop-filter: blur(11.5px);"
|
||||
<div
|
||||
id="nickname-popup"
|
||||
class="hidden fixed bottom-0 h-36 w-full lg:w-1/3 lg:mx-auto bg-black text-white z-40 shadow-md rounded-md p-4 flex flex-col gap-y-2"
|
||||
>
|
||||
<%= if @state.anonymous_chat_enabled do %>
|
||||
<button
|
||||
phx-click={JS.push("set-nickname") |> toggle_nickname_popup()}
|
||||
phx-value-nickname=""
|
||||
phx-hook="EmptyNickname"
|
||||
id="setAnonymous"
|
||||
class="w-full bg-gray-900 text-left text-white px-3 py-2 rounded-md flex space-x-2 items-center"
|
||||
>
|
||||
<button class="absolute right-10 top-4 opacity-50" id="submitBtn">
|
||||
<img src="/images/icons/send.svg" class="h-6" />
|
||||
</button>
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="w-5 h-5"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path d="M3 11h18"></path>
|
||||
<path d="M5 11v-4a3 3 0 0 1 3 -3h8a3 3 0 0 1 3 3v4"></path>
|
||||
<path d="M7 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"></path>
|
||||
<path d="M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"></path>
|
||||
<path d="M10 17h4"></path>
|
||||
</svg>
|
||||
<span><%= gettext("Anonymous") %></span>
|
||||
</button>
|
||||
<% else %>
|
||||
<button class="w-full bg-gray-900 opacity-50 text-left text-white px-3 py-2 rounded-md flex space-x-2 items-center cursor-default">
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
class="w-5 h-5"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="2"
|
||||
stroke="currentColor"
|
||||
fill="none"
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
>
|
||||
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
|
||||
<path d="M3 11h18"></path>
|
||||
<path d="M5 11v-4a3 3 0 0 1 3 -3h8a3 3 0 0 1 3 3v4"></path>
|
||||
<path d="M7 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"></path>
|
||||
<path d="M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"></path>
|
||||
<path d="M10 17h4"></path>
|
||||
</svg>
|
||||
<span><%= gettext("Anonymous") %> (<%= gettext("disabled") %>)</span>
|
||||
</button>
|
||||
<% end %>
|
||||
|
||||
<div class="flex space-x-2 items-center">
|
||||
<%= textarea(f, :body,
|
||||
id: "postFormTA",
|
||||
class:
|
||||
"bg-transparent outline-none w-full text-white h-10 placeholder-white pt-3 resize-none pr-20 leading-4 overflow-y-hidden focus:overflow-y-auto",
|
||||
placeholder: gettext("Ask, comment...")
|
||||
) %>
|
||||
</div>
|
||||
</div>
|
||||
<%= error_tag(f, :body) %>
|
||||
<%= submit("Save", phx_disable_with: "Saving...", id: "hiddenSubmit", class: "hidden") %>
|
||||
</.form>
|
||||
<% else %>
|
||||
<div id="post-form" class="fixed bottom-12 w-full lg:w-1/3 lg:mx-auto">
|
||||
<div
|
||||
class="rounded-full text-base px-4 py-2 mx-5 relative"
|
||||
style="
|
||||
background: rgb(17,134,213);
|
||||
background: linear-gradient(333deg, rgba(17,134,213,0.4962359943977591) 0%, rgba(163,39,255,0.5046393557422969) 100%);
|
||||
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
|
||||
backdrop-filter: blur(11.5px);
|
||||
-webkit-backdrop-filter: blur(11.5px);"
|
||||
<button
|
||||
id="nicknamepicker"
|
||||
phx-click={toggle_nickname_popup()}
|
||||
data-prompt={gettext("Enter your name")}
|
||||
phx-hook="NicknamePicker"
|
||||
class="w-full bg-gray-900 text-left text-white px-3 py-2 rounded-md flex space-x-2 items-center"
|
||||
>
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
viewBox="0 0 20 20"
|
||||
fill="currentColor"
|
||||
class="w-5 h-5"
|
||||
>
|
||||
<div class="flex space-x-2 items-center">
|
||||
<div class="opacity-50 bg-transparent outline-none w-full text-white h-10 placeholder-white pt-3 resize-none pr-20 leading-4 overflow-y-hidden focus:overflow-y-auto">
|
||||
<%= gettext("Messages deactivated") %>
|
||||
<path d="M5.433 13.917l1.262-3.155A4 4 0 017.58 9.42l6.92-6.918a2.121 2.121 0 013 3l-6.92 6.918c-.383.383-.84.685-1.343.886l-3.154 1.262a.5.5 0 01-.65-.65z" />
|
||||
<path d="M3.5 5.75c0-.69.56-1.25 1.25-1.25H10A.75.75 0 0010 3H4.75A2.75 2.75 0 002 5.75v9.5A2.75 2.75 0 004.75 18h9.5A2.75 2.75 0 0017 15.25V10a.75.75 0 00-1.5 0v5.25c0 .69-.56 1.25-1.25 1.25h-9.5c-.69 0-1.25-.56-1.25-1.25v-9.5z" />
|
||||
</svg>
|
||||
<span><%= gettext("Use your name") %></span>
|
||||
</button>
|
||||
<button
|
||||
phx-click={toggle_nickname_popup()}
|
||||
class="w-full text-left text-primary-500 text-sm px-3 py-0 rounded-md"
|
||||
>
|
||||
<%= gettext("Close") %>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div class="fixed bottom-12 w-full">
|
||||
<%= if @state.chat_enabled do %>
|
||||
<%= if !@state.anonymous_chat_enabled && (@nickname && @nickname == "") do %>
|
||||
<.form
|
||||
:let={f}
|
||||
for={@post_changeset}
|
||||
id="nickname-form"
|
||||
class="w-full lg:w-1/3 lg:mx-auto"
|
||||
phx-submit="save-nickname"
|
||||
>
|
||||
<div
|
||||
class="rounded-lg text-base px-3 py-2 mx-5 relative"
|
||||
style="
|
||||
background: rgb(17,134,213);
|
||||
background: linear-gradient(333deg, rgba(17,134,213,0.4962359943977591) 0%, rgba(163,39,255,0.5046393557422969) 100%);
|
||||
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
|
||||
backdrop-filter: blur(11.5px);
|
||||
-webkit-backdrop-filter: blur(11.5px);"
|
||||
>
|
||||
<%= text_input(f, :name,
|
||||
class:
|
||||
"bg-transparent outline-none w-full text-white h-10 placeholder-white resize-none pr-20 leading-4 overflow-y-hidden focus:overflow-y-auto",
|
||||
placeholder: gettext("Enter your name")
|
||||
) %>
|
||||
<p class="font-semibold text-sm">
|
||||
<%= error_tag(f, :name) %>
|
||||
</p>
|
||||
<%= submit(gettext("Join"), class: "absolute right-5 top-2 p-2 bg-white rounded-md") %>
|
||||
</div>
|
||||
</.form>
|
||||
<% else %>
|
||||
<.form
|
||||
:let={f}
|
||||
for={@post_changeset}
|
||||
id="post-form"
|
||||
class="w-full lg:w-1/3 lg:mx-auto"
|
||||
phx-hook="PostForm"
|
||||
data-nickname={@nickname}
|
||||
phx-submit="save"
|
||||
>
|
||||
<div
|
||||
class="rounded-lg text-base px-3 py-2 mx-5 relative"
|
||||
style="
|
||||
background: rgb(17,134,213);
|
||||
background: linear-gradient(333deg, rgba(17,134,213,0.4962359943977591) 0%, rgba(163,39,255,0.5046393557422969) 100%);
|
||||
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
|
||||
backdrop-filter: blur(11.5px);
|
||||
-webkit-backdrop-filter: blur(11.5px);"
|
||||
>
|
||||
<div class="ml-0">
|
||||
<a
|
||||
href="#"
|
||||
phx-click={toggle_nickname_popup()}
|
||||
class="px-2 py-0.5 text-xs text-white rounded-full w-fit bg-gray-900 flex gap-x-1 items-center"
|
||||
>
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
fill="none"
|
||||
viewBox="0 0 24 24"
|
||||
stroke-width="1.5"
|
||||
stroke="currentColor"
|
||||
class="w-4 h-4"
|
||||
>
|
||||
<path
|
||||
stroke-linecap="round"
|
||||
stroke-linejoin="round"
|
||||
d="M19.5 8.25l-7.5 7.5-7.5-7.5"
|
||||
/>
|
||||
</svg>
|
||||
<%= if @nickname && @nickname == "" do %>
|
||||
<span><%= gettext("Anonymous") %></span>
|
||||
<% else %>
|
||||
<span><%= @nickname %></span>
|
||||
<% end %>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<button class="absolute right-5 top-6 opacity-50" id="submitBtn">
|
||||
<img src="/images/icons/send.svg" class="h-6" />
|
||||
</button>
|
||||
|
||||
<div class="flex space-x-2 items-center">
|
||||
<%= textarea(f, :body,
|
||||
id: "postFormTA",
|
||||
class:
|
||||
"bg-transparent outline-none w-full text-white h-10 placeholder-white pt-3 resize-none pr-20 leading-4 overflow-y-hidden focus:overflow-y-auto",
|
||||
placeholder: gettext("Ask, comment...")
|
||||
) %>
|
||||
</div>
|
||||
</div>
|
||||
<%= submit("Save", phx_disable_with: "Saving...", id: "hiddenSubmit", class: "hidden") %>
|
||||
</.form>
|
||||
<% end %>
|
||||
<% else %>
|
||||
<div id="post-form" class="w-full lg:w-1/3 lg:mx-auto">
|
||||
<div
|
||||
class="rounded-lg text-base px-4 py-2 mx-5 relative"
|
||||
style="
|
||||
background: rgb(17,134,213);
|
||||
background: linear-gradient(333deg, rgba(17,134,213,0.4962359943977591) 0%, rgba(163,39,255,0.5046393557422969) 100%);
|
||||
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
|
||||
backdrop-filter: blur(11.5px);
|
||||
-webkit-backdrop-filter: blur(11.5px);"
|
||||
>
|
||||
<div class="flex space-x-2 items-center">
|
||||
<div class="opacity-50 bg-transparent outline-none w-full text-white h-10 placeholder-white pt-3 resize-none pr-20 leading-4 overflow-y-hidden focus:overflow-y-auto">
|
||||
<%= gettext("Messages deactivated") %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
|
||||
<div class="flex space-x-6 fixed justify-center bottom-3 w-full lg:w-1/3 lg:mx-auto">
|
||||
<a
|
||||
|
||||
@@ -277,7 +277,13 @@
|
||||
/>
|
||||
<% end %>
|
||||
|
||||
<p class="text-xl"><%= post.body %></p>
|
||||
<div class="flex flex-col">
|
||||
<%= if post.name do %>
|
||||
<p class="text-black text-sm font-semibold mr-2"><%= post.name %></p>
|
||||
<% end %>
|
||||
|
||||
<p class="text-xl"><%= post.body %></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<%= if post.like_count > 0 || post.love_count > 0 || post.lol_count > 0 do %>
|
||||
|
||||
2
mix.exs
2
mix.exs
@@ -1,7 +1,7 @@
|
||||
defmodule Claper.MixProject do
|
||||
use Mix.Project
|
||||
|
||||
@version "1.4.2"
|
||||
@version "1.5.0"
|
||||
|
||||
def project do
|
||||
[
|
||||
|
||||
2
mix.lock
2
mix.lock
@@ -24,7 +24,7 @@
|
||||
"finch": {:hex, :finch, "0.16.0", "40733f02c89f94a112518071c0a91fe86069560f5dbdb39f9150042f44dcfb1a", [:mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: false]}, {:mime, "~> 1.0 or ~> 2.0", [hex: :mime, repo: "hexpm", optional: false]}, {:mint, "~> 1.3", [hex: :mint, repo: "hexpm", optional: false]}, {:nimble_options, "~> 0.4 or ~> 1.0", [hex: :nimble_options, repo: "hexpm", optional: false]}, {:nimble_pool, "~> 0.2.6 or ~> 1.0", [hex: :nimble_pool, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "f660174c4d519e5fec629016054d60edd822cdfe2b7270836739ac2f97735ec5"},
|
||||
"floki": {:hex, :floki, "0.34.2", "5fad07ef153b3b8ec110b6b155ec3780c4b2c4906297d0b4be1a7162d04a7e02", [:mix], [], "hexpm", "26b9d50f0f01796bc6be611ca815c5e0de034d2128e39cc9702eee6b66a4d1c8"},
|
||||
"gen_smtp": {:hex, :gen_smtp, "1.2.0", "9cfc75c72a8821588b9b9fe947ae5ab2aed95a052b81237e0928633a13276fd3", [:rebar3], [{:ranch, ">= 1.8.0", [hex: :ranch, repo: "hexpm", optional: false]}], "hexpm", "5ee0375680bca8f20c4d85f58c2894441443a743355430ff33a783fe03296779"},
|
||||
"gettext": {:hex, :gettext, "0.22.1", "e7942988383c3d9eed4bdc22fc63e712b655ae94a672a27e4900e3d4a2c43581", [:mix], [{:expo, "~> 0.4.0", [hex: :expo, repo: "hexpm", optional: false]}], "hexpm", "ad105b8dab668ee3f90c0d3d94ba75e9aead27a62495c101d94f2657a190ac5d"},
|
||||
"gettext": {:hex, :gettext, "0.22.3", "c8273e78db4a0bb6fba7e9f0fd881112f349a3117f7f7c598fa18c66c888e524", [:mix], [{:expo, "~> 0.4.0", [hex: :expo, repo: "hexpm", optional: false]}], "hexpm", "935f23447713954a6866f1bb28c3a878c4c011e802bcd68a726f5e558e4b64bd"},
|
||||
"hackney": {:hex, :hackney, "1.18.1", "f48bf88f521f2a229fc7bae88cf4f85adc9cd9bcf23b5dc8eb6a1788c662c4f6", [:rebar3], [{:certifi, "~>2.9.0", [hex: :certifi, repo: "hexpm", optional: false]}, {:idna, "~>6.1.0", [hex: :idna, repo: "hexpm", optional: false]}, {:metrics, "~>1.0.0", [hex: :metrics, repo: "hexpm", optional: false]}, {:mimerl, "~>1.1", [hex: :mimerl, repo: "hexpm", optional: false]}, {:parse_trans, "3.3.1", [hex: :parse_trans, repo: "hexpm", optional: false]}, {:ssl_verify_fun, "~>1.1.0", [hex: :ssl_verify_fun, repo: "hexpm", optional: false]}, {:unicode_util_compat, "~>0.7.0", [hex: :unicode_util_compat, repo: "hexpm", optional: false]}], "hexpm", "a4ecdaff44297e9b5894ae499e9a070ea1888c84afdd1fd9b7b2bc384950128e"},
|
||||
"hashids": {:hex, :hashids, "2.1.0", "aabbcc4f9fa0b460cc6ef629f5bcbc35e7e87b382fee79f9c50be40b86574288", [:mix], [], "hexpm", "172163b1642d415881ef1c6e1f1be12d4e92b0711d5bbbd8854f82a1ce32d60b"},
|
||||
"honeybadger": {:hex, :honeybadger, "0.18.1", "f61f71147d9e6ce8cdc6114e5df5eed4d2daa32dd15308267a1dacf5fa88b1e9", [:mix], [{:ecto, ">= 2.0.0", [hex: :ecto, repo: "hexpm", optional: true]}, {:hackney, "~> 1.1", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}, {:phoenix, ">= 1.0.0 and < 2.0.0", [hex: :phoenix, repo: "hexpm", optional: true]}, {:plug, ">= 1.0.0 and < 2.0.0", [hex: :plug, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "693e14b1b7d254dd75f977240c208d6b69cc1cbdd515bdd5b8b1738a1baf5fd5"},
|
||||
|
||||
958
priv/gettext/de/LC_MESSAGES/default.po
Normal file
958
priv/gettext/de/LC_MESSAGES/default.po
Normal file
@@ -0,0 +1,958 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: POEditor.com\n"
|
||||
"Project-Id-Version: Claper\n"
|
||||
"Language: de\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: lib/claper_web/live/user_settings_live/show.ex:48
|
||||
#: lib/claper_web/live/user_settings_live/show.html.heex:5
|
||||
#: lib/claper_web/templates/layout/_user_menu.html.heex:2
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Settings"
|
||||
msgstr "Einstellungen"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.ex:455
|
||||
#: lib/claper_web/live/form_live/form_component.html.heex:37
|
||||
#: lib/claper_web/live/user_settings_live/show.html.heex:34
|
||||
#: lib/claper_web/templates/user_registration/new.html.heex:34
|
||||
#: lib/claper_web/templates/user_session/new.html.heex:47
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Email"
|
||||
msgstr "Email"
|
||||
|
||||
#: lib/claper_web/templates/user_registration/new.html.heex:12
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Join the Claper experience"
|
||||
msgstr "Treten Sie den Claper Experience bei"
|
||||
|
||||
#: lib/claper_web/templates/user_registration/new.html.heex:24
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Oops, check that all fields are filled in correctly."
|
||||
msgstr "Oops, verifizieren Sie alle Felder."
|
||||
|
||||
#: lib/claper_web/live/user_settings_live/show.html.heex:108
|
||||
#: lib/claper_web/live/user_settings_live/show.html.heex:121
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Change"
|
||||
msgstr "Ändern"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:239
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Code"
|
||||
msgstr "Kode"
|
||||
|
||||
#: lib/claper_web/live/user_settings_live/show.html.heex:103
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Email address"
|
||||
msgstr "Email Adresse"
|
||||
|
||||
#: lib/claper_web/templates/layout/_user_menu.html.heex:8
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Logout"
|
||||
msgstr "Ausloggen"
|
||||
|
||||
#: lib/claper_web/live/user_settings_live/show.html.heex:93
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Personal informations"
|
||||
msgstr "Persönliche Informationen"
|
||||
|
||||
#: lib/claper_web/templates/user_registration/confirm.html.heex:13
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "We already sent you an email to login, please retry in 5 minutes."
|
||||
msgstr "Wir haben Ihnen gerade ein Email zum einloggen geschickt, versuchen Sie wieder in 5 Minuten."
|
||||
|
||||
#: lib/claper_web/templates/user_registration/confirm.html.heex:16
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "We sent you an email at"
|
||||
msgstr "Wir senden ein Email an"
|
||||
|
||||
#: lib/claper_web/live/user_settings_live/show.html.heex:96
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Your personal informations only visible by you"
|
||||
msgstr "Ihre persönliche Informationen sind nur sichtbar bei Ihnen"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:381
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "days"
|
||||
msgstr "tage"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:387
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "hours"
|
||||
msgstr "uhr"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:393
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "minutes"
|
||||
msgstr "minuten"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:112
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Be the first to react !"
|
||||
msgstr "Seien Sie die erste zu reagieren !"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:98
|
||||
#: lib/claper_web/live/event_live/join.ex:42
|
||||
#: lib/claper_web/live/event_live/join.html.heex:106
|
||||
#: lib/claper_web/live/event_live/show.html.heex:233
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Join"
|
||||
msgstr "Teilnehmen"
|
||||
|
||||
#: lib/claper_web/live/event_live/index.ex:82
|
||||
#: lib/claper_web/live/event_live/join.html.heex:26
|
||||
#: lib/claper_web/live/event_live/join.html.heex:47
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Dashboard"
|
||||
msgstr "Dashboard"
|
||||
|
||||
#: lib/claper_web/live/event_live/post_component.ex:33
|
||||
#: lib/claper_web/live/event_live/post_component.ex:86
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Host"
|
||||
msgstr "Host"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:399
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "seconds"
|
||||
msgstr "sekunden"
|
||||
|
||||
#: lib/claper_web/live/event_live/index.html.heex:61
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Create your first presentation"
|
||||
msgstr "Erstellen Ihre erste Vorstellung"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:50
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:80
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Finish on"
|
||||
msgstr "Endet um"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:30
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Finished"
|
||||
msgstr "Beendet"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:62
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Finished on"
|
||||
msgstr "Beendet um"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:20
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "In progress"
|
||||
msgstr "Laufend"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:25
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Incoming"
|
||||
msgstr "Kommende"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:26
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Leave"
|
||||
msgstr "Verlassen"
|
||||
|
||||
#: lib/claper_web/live/event_live/index.html.heex:16
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "My presentations"
|
||||
msgstr "Meine Vorstellungen"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:228
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Name of your presentation"
|
||||
msgstr "Name Ihrer Vorstellung"
|
||||
|
||||
#: lib/claper_web/live/event_live/presenter.html.heex:21
|
||||
#: lib/claper_web/live/event_live/show.html.heex:408
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Scan to interact in real-time"
|
||||
msgstr "Scannen um in Realzeit zu reagieren"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:56
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Starting on"
|
||||
msgstr "Startet um"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:207
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Updated successfully"
|
||||
msgstr "Richtig aktualisiert"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:249
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "When your presentation will be available ?"
|
||||
msgstr "Wann wird Ihre Vorstellung verfügbar sein ?"
|
||||
|
||||
#: lib/claper_web/live/event_live/join.html.heex:72
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Return to your last presentation"
|
||||
msgstr "Zurück zum letzten Vorstellung"
|
||||
|
||||
#: lib/claper_web/templates/user_session/new.html.heex:22
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "It's time to empower your presentations."
|
||||
msgstr "Es ist Zeit, Ihre Vorstellungen zu beleben."
|
||||
|
||||
#: lib/claper_web/templates/error/404.html.heex:44
|
||||
#: lib/claper_web/templates/error/500.html.heex:45
|
||||
#: lib/claper_web/templates/user_registration/confirm.html.heex:28
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Return to home"
|
||||
msgstr "Zurück zum Empfang"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:179
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Created successfully"
|
||||
msgstr "Erstellt mit Erfolg"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.ex:23
|
||||
#: lib/claper_web/live/event_live/presenter.ex:21
|
||||
#: lib/claper_web/live/event_live/show.ex:24
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Presentation doesn't exist"
|
||||
msgstr "Vorstellung existiert nicht"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:109
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:129
|
||||
#: lib/claper_web/live/event_live/form_component.ex:96
|
||||
#: lib/claper_web/live/event_live/index.ex:65
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Edit"
|
||||
msgstr "Ändern"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:18
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:25
|
||||
#: lib/claper_web/live/event_live/index.ex:71
|
||||
#: lib/claper_web/live/event_live/index.html.heex:40
|
||||
#: lib/claper_web/live/form_live/form_component.html.heex:98
|
||||
#: lib/claper_web/live/poll_live/form_component.html.heex:94
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Create"
|
||||
msgstr "Erstellen"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:171
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:30
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:631
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:731
|
||||
#: lib/claper_web/live/event_live/post_component.ex:44
|
||||
#: lib/claper_web/live/event_live/post_component.ex:116
|
||||
#: lib/claper_web/live/form_live/form_component.html.heex:103
|
||||
#: lib/claper_web/live/poll_live/form_component.html.heex:99
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Delete"
|
||||
msgstr "Erledigen"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:17
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:24
|
||||
#: lib/claper_web/live/form_live/form_component.html.heex:99
|
||||
#: lib/claper_web/live/poll_live/form_component.html.heex:95
|
||||
#: lib/claper_web/live/user_settings_live/show.html.heex:38
|
||||
#: lib/claper_web/live/user_settings_live/show.html.heex:80
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Save"
|
||||
msgstr "Validieren"
|
||||
|
||||
#: lib/claper_web/live/user_settings_live/show.ex:69
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "A link to confirm your email change has been sent to the new address."
|
||||
msgstr "Ein Link zum Ihren Emailbestätigung war zum Ihre neue Email-Adresse abgeschickt."
|
||||
|
||||
#: lib/claper_web/live/user_settings_live/show.ex:33
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Change the email address you want associated with your account."
|
||||
msgstr "Änder die Email-Adresse Ihre Konto"
|
||||
|
||||
#: lib/claper_web/live/user_settings_live/show.ex:30
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Update your email"
|
||||
msgstr "Ihre Email ändern"
|
||||
|
||||
#: lib/claper_web/notifiers/user_notifier.ex:12
|
||||
#: lib/claper_web/templates/user_notifier/magic.html.heex:17
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Connect to Claper"
|
||||
msgstr "Einloggen zu Claper"
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/magic.html.heex:29
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "ACCESS TO MY ACCOUNT"
|
||||
msgstr "ZUGANG MEINEM KONTO"
|
||||
|
||||
#: lib/claper_web/notifiers/user_notifier.ex:34
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Update email instructions"
|
||||
msgstr "Email-Einweisung ändern"
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/change.html.heex:29
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "CONFIRM EMAIL"
|
||||
msgstr "EMAIL BESTÄTIGEN"
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/change.html.heex:17
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Confirm email"
|
||||
msgstr "Email bestätigen"
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/change.html.heex:32
|
||||
#: lib/claper_web/templates/user_notifier/magic.html.heex:32
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "If you didn't create an account with us, please ignore this."
|
||||
msgstr "Wenn sie dieses Konto mit uns nicht erstellt haben, bitte springen Sie diesen Nachricht über."
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/magic.html.heex:22
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "You can log into your account by clicking here."
|
||||
msgstr "Sie können einloggen, wenn Sie hier klicken"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:34
|
||||
#: lib/claper_web/live/event_live/post_component.ex:49
|
||||
#: lib/claper_web/live/event_live/post_component.ex:121
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Are you sure?"
|
||||
msgstr "Sind Sie sicher ?"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:149
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Presentation attached"
|
||||
msgstr "Vorstellung anhängt"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:109
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Presentation uploaded"
|
||||
msgstr "Vorstellung hochgeladet"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:120
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:198
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:323
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:346
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Remove"
|
||||
msgstr "Erledigen"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:45
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:130
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Select your presentation"
|
||||
msgstr "Ihre Vorstellung wählen"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:72
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Upload a file"
|
||||
msgstr "Datei hochladen"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:76
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "or drag and drop"
|
||||
msgstr "oder drag and drop"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:226
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "You have selected an incorrect file type"
|
||||
msgstr "Sie haben einen falschen Dateitype auswählen"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:225
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Your file is too large"
|
||||
msgstr "Ihrer Datei ist zu groẞ"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:159
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Change file"
|
||||
msgstr "Datei ändern"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:185
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Presentation replaced"
|
||||
msgstr "Vorstellung ersetzt"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:256
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Edit poll"
|
||||
msgstr "Umfrage ändern"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:255
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "New poll"
|
||||
msgstr "Neue Umfrage"
|
||||
|
||||
#: lib/claper_web/live/poll_live/form_component.html.heex:14
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Title of your poll"
|
||||
msgstr "Name Ihrer Umfrage"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:227
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Upload failed"
|
||||
msgstr "Hochladung scheitert"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:176
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Add poll to know opinion of your public."
|
||||
msgstr "Umfrage hinzufügen um die Meinung Ihrem Publikum zu wissen"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:174
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:395
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Poll"
|
||||
msgstr "Umfrage"
|
||||
|
||||
#: lib/claper_web/live/poll_live/form_component.html.heex:35
|
||||
#, elixir-format, ex-autogen
|
||||
msgid "Choice %{count}"
|
||||
msgid_plural "Choice %{count}"
|
||||
msgstr[0] "Wahl %{count}"
|
||||
msgstr[1] "Wähle %{count}"
|
||||
|
||||
#: lib/claper_web/live/event_live/poll_component.ex:47
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Current poll"
|
||||
msgstr "Aktuelle Umfrage"
|
||||
|
||||
#: lib/claper_web/live/event_live/poll_component.ex:28
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "See current poll"
|
||||
msgstr "Sehen aktuelle Umfrage"
|
||||
|
||||
#: lib/claper_web/live/event_live/poll_component.ex:107
|
||||
#: lib/claper_web/live/event_live/poll_component.ex:115
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Vote"
|
||||
msgstr "Wählen"
|
||||
|
||||
#: lib/claper_web/live/event_live/index.html.heex:70
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Invited presentations"
|
||||
msgstr "Vorstellung eingeladet"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:313
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:330
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "User email address"
|
||||
msgstr "Benutzer Email-Adresse"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:90
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Present/Customize"
|
||||
msgstr "Vorstellen/Ändern"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:408
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:484
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Active"
|
||||
msgstr "Aktiv"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:164
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Changing your file will remove all interaction elements like polls associated."
|
||||
msgstr "Ändern Ihrem Datei wird alle verbindete Interaktionen wie Umfrage erledigen."
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:584
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Messages from attendees will appear here."
|
||||
msgstr "Nachrichte von Teilnehmer wird hier erscheinen."
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:770
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "On screen settings"
|
||||
msgstr "Auf Bildschirm Einstellungen"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:139
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Processing your file..."
|
||||
msgstr "Prozess Ihrem Datei..."
|
||||
|
||||
#: lib/claper_web/live/poll_live/form_component.html.heex:106
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "This will delete all responses associated and the poll itself, are you sure?"
|
||||
msgstr "Es wird alle verbindete Antworte und die Umfrage selbst erledigen, Sind Sie sicher?"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:112
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Start"
|
||||
msgstr "Anfangen"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:88
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Press <strong>F</strong> in the presentation window to enable fullscreen"
|
||||
msgstr "Drücken <strong>F</strong> in dem Vorstellungfenster, um Vollbild zulassen"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:292
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Ask, comment..."
|
||||
msgstr "Fragen, kommentieren.."
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:556
|
||||
#: lib/claper_web/live/stat_live/index.html.heex:71
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Messages"
|
||||
msgstr "Nachrichte"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:416
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:492
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Set active"
|
||||
msgstr "Zum aktiv ändern"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:295
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Add facilitator"
|
||||
msgstr "Moderator hinzufügen"
|
||||
|
||||
#: lib/claper_web/templates/error/404.html.heex:40
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Oops, page doesn't exist."
|
||||
msgstr "Hoppla, Seite existiert nicht."
|
||||
|
||||
#: lib/claper_web/templates/error/500.html.heex:40
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "The site is under maintenance, we'll be back very soon!"
|
||||
msgstr "Die Website ist , wir werden bald zurück!"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:275
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Facilitators can present and manage interactions"
|
||||
msgstr "Moderatoren können vorstellen und Interaktionen führen"
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/change.html.heex:42
|
||||
#: lib/claper_web/templates/user_notifier/magic.html.heex:42
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "If you’re having trouble with the button above, copy and paste the URL below into your web browser"
|
||||
msgstr "When "
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/change.html.heex:22
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "You can change your email by visiting the URL below"
|
||||
msgstr "Sie können Ihre E-mail ändern bei klicken auf den URL unten"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:525
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Add interaction"
|
||||
msgstr "Interaktion hinzufügen"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:607
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:622
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Blocking this user will delete all his messages and he will not be able to join again, confirm ?"
|
||||
msgstr "Durch das Blockieren dieses Benutzers werden alle seine Nachrichten gelöscht und er kann nicht mehr beitreten. Bestätigen?"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.ex:50
|
||||
#: lib/claper_web/live/event_live/show.ex:197
|
||||
#: lib/claper_web/live/event_live/show.ex:212
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "You have been banned from this event"
|
||||
msgstr "Sie wurden von dieser Veranstaltung ausgeschlossen"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:601
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:616
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Ban"
|
||||
msgstr "Verbot"
|
||||
|
||||
#: lib/claper_web/templates/user_registration/confirm.html.heex:18
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid ", click on the provided link to connect (check your spam !)"
|
||||
msgstr ", klicken Sie auf den bereitgestellten Link, um eine Verbindung herzustellen (überprüfen Sie Ihren Spam!)"
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/welcome.html.heex:29
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "<span style='font-weight: 700'>Export your current presentation</span> to PDF from your favorite slide presentation software (PowerPoint, etc)"
|
||||
msgstr "<span style='font-weight: 700'>Exportieren Sie Ihre aktuelle Präsentation</span> aus Ihrer bevorzugten Folienpräsentationssoftware (PowerPoint usw.) als PDF."
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/welcome.html.heex:50
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "<span style='font-weight: 700'>Wait few minutes</span> for your file to be processed"
|
||||
msgstr "<span style='font-weight: 700'>Warten Sie einige Minuten</span>, bis Ihre Datei verarbeitet wird"
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/welcome.html.heex:43
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Choose <span style='font-weight: 700'>a name</span> for your event, <span style='font-weight: 700'>a code</span> for your attendees to join and <span style='font-weight: 700'>dates when your attendees could start interacting</span>"
|
||||
msgstr "Wählen Sie <span style='font-weight: 700'>einen Namen</span> für Ihre Veranstaltung, <span style='font-weight: 700'>einen Code</span> für den Beitritt Ihrer Teilnehmer und <span style ='font-weight: 700'>Daten, an denen Ihre Teilnehmer mit der Interaktion beginnen könnten</span>"
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/welcome.html.heex:64
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Click <span style='font-weight: 700'>Start</span> to open your presentation and move the window on the big screen"
|
||||
msgstr "Klicken Sie auf <span style='font-weight: 700'>Anfangen</span>, um Ihre Präsentation zu öffnen und das Fenster auf dem großen Bildschirm zu verschieben"
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/welcome.html.heex:57
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Click on <span style='font-weight: 700'>Present/Customize</span> to add interaction on your slides"
|
||||
msgstr "Klicken Sie auf <span style='font-weight: 700'>Präsentieren/Anpassen</span>, um Ihren Folien Interaktion hinzuzufügen"
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/welcome.html.heex:22
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Congrats! You've taken the first step to improving your presentations. Here are the next steps to create step up your presentations with Claper:"
|
||||
msgstr "Herzlichen Glückwunsch! Sie haben den ersten Schritt zur Verbesserung Ihrer Präsentationen getan. Hier sind die nächsten Schritte, um Ihre Präsentationen mit Claper zu verbessern:"
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/welcome.html.heex:69
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Enjoy ! ✨"
|
||||
msgstr "Genießen ! ✨"
|
||||
|
||||
#: lib/claper_web/templates/user_registration/confirm.html.heex:20
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "We sent you an email, click on the provided link to connect (check your spam !)"
|
||||
msgstr "Wir haben Ihnen eine E-Mail gesendet. Klicken Sie auf den bereitgestellten Link, um eine Verbindung herzustellen (überprüfen Sie Ihren Spam!)"
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/welcome.html.heex:17
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Welcome !"
|
||||
msgstr "Willkommen !"
|
||||
|
||||
#: lib/claper_web/templates/user_notifier/welcome.html.heex:36
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Click on the <span style='font-weight: 700'>create button</span> on your dashboard"
|
||||
msgstr "Klicken Sie in Ihrem Dashboard auf die Schaltfläche <span style='font-weight: 700'>Erstellen</span>"
|
||||
|
||||
#: lib/claper_web/notifiers/user_notifier.ex:23
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Next steps to boost your presentations"
|
||||
msgstr "Nächste Schritte zur Verbesserung Ihrer Präsentationen"
|
||||
|
||||
#: lib/claper_web/live/stat_live/index.html.heex:78
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "from %{count} people"
|
||||
msgid_plural "from %{count} peoples"
|
||||
msgstr[0] "von %{count} Personen"
|
||||
msgstr[1] "von %{count} Personen"
|
||||
|
||||
#: lib/claper_web/live/stat_live/index.html.heex:115
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "from %{count} poll"
|
||||
msgid_plural "from %{count} polls"
|
||||
msgstr[0] "von %{count} Umfrage"
|
||||
msgstr[1] "von %{count} Umfragen"
|
||||
|
||||
#: lib/claper_web/live/stat_live/index.html.heex:108
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Average voters"
|
||||
msgstr "Durchschnittliche Wähler"
|
||||
|
||||
#: lib/claper_web/live/stat_live/index.html.heex:15
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Event"
|
||||
msgstr "Fall"
|
||||
|
||||
#: lib/claper_web/live/stat_live/index.html.heex:158
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Interactions history"
|
||||
msgstr "Interaktionsgeschichte"
|
||||
|
||||
#: lib/claper_web/live/stat_live/index.html.heex:260
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "No messages has been sent"
|
||||
msgstr "Es wurden keine Nachrichten gesendet"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:166
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Report"
|
||||
msgstr "Bericht"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:177
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "This will delete all data related to your event, this cannot be undone. Confirm ?"
|
||||
msgstr "Dadurch werden alle Daten im Zusammenhang mit Ihrer Veranstaltung gelöscht. Dies kann nicht rückgängig gemacht werden. Bestätigen ?"
|
||||
|
||||
#: lib/claper_web/live/stat_live/index.html.heex:45
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "attendee"
|
||||
msgid_plural "attendees"
|
||||
msgstr[0] "teilnehmer"
|
||||
msgstr[1] "teilnehmer"
|
||||
|
||||
#: lib/claper_web/live/stat_live/index.html.heex:38
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Audience peak"
|
||||
msgstr "Publikumsspitze"
|
||||
|
||||
#: lib/claper_web/live/stat_live/index.html.heex:146
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Engagement rate"
|
||||
msgstr "Engagement-Rate"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:119
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Error when processing the file"
|
||||
msgstr "Fehler beim Verarbeiten der Datei"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:71
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Error when processing the new file"
|
||||
msgstr "Fehler beim Verarbeiten der neuen Datei"
|
||||
|
||||
#: lib/claper_web/live/event_live/join.html.heex:23
|
||||
#: lib/claper_web/live/event_live/join.html.heex:44
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "About"
|
||||
msgstr "Um"
|
||||
|
||||
#: lib/claper_web/live/event_live/join.html.heex:32
|
||||
#: lib/claper_web/live/event_live/join.html.heex:53
|
||||
#: lib/claper_web/templates/user_session/new.html.heex:66
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Login"
|
||||
msgstr "Anmeldung"
|
||||
|
||||
#: lib/claper_web/templates/user_session/new.html.heex:25
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Connect to your account"
|
||||
msgstr "Verbinden Sie sich mit Ihrem Konto"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:417
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Or use the code:"
|
||||
msgstr "Oder verwenden Sie den Code:"
|
||||
|
||||
#: lib/claper_web/templates/user_registration/new.html.heex:51
|
||||
#: lib/claper_web/templates/user_session/new.html.heex:73
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Create account"
|
||||
msgstr "Benutzerkonto erstellen"
|
||||
|
||||
#: lib/claper_web/live/user_settings_live/show.html.heex:116
|
||||
#: lib/claper_web/templates/user_registration/new.html.heex:42
|
||||
#: lib/claper_web/templates/user_session/new.html.heex:57
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Password"
|
||||
msgstr "Passwort"
|
||||
|
||||
#: lib/claper_web/templates/user_session/new.html.heex:45
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Your email address"
|
||||
msgstr "Ihre E-Mail-Adresse"
|
||||
|
||||
#: lib/claper_web/templates/user_session/new.html.heex:55
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Your password"
|
||||
msgstr "Ihr Passwort"
|
||||
|
||||
#: lib/claper_web/live/user_settings_live/show.ex:42
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Change the password used to access your account."
|
||||
msgstr "Ändern Sie das Passwort, mit dem Sie auf Ihr Konto zugreifen."
|
||||
|
||||
#: lib/claper_web/live/user_settings_live/show.html.heex:70
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Current password"
|
||||
msgstr "Aktuelles Passwort"
|
||||
|
||||
#: lib/claper_web/live/user_settings_live/show.html.heex:76
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "New password"
|
||||
msgstr "Neues Kennwort"
|
||||
|
||||
#: lib/claper_web/live/user_settings_live/show.ex:39
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Update your password"
|
||||
msgstr "Aktualisieren Sie Ihr Passwort"
|
||||
|
||||
#: lib/claper_web/live/user_settings_live/show.ex:91
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Your password has been updated."
|
||||
msgstr "Dein Passwort wurde aktualisiert."
|
||||
|
||||
#: lib/claper_web/live/form_live/form_component.html.heex:30
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Field %{count}"
|
||||
msgid_plural "Field %{count}"
|
||||
msgstr[0] "Feld %{count}"
|
||||
msgstr[1] "Feld %{count}"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:213
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Add form to collect data from your public."
|
||||
msgstr "Fügen Sie ein Formular hinzu, um Daten von Ihrer Öffentlichkeit zu sammeln."
|
||||
|
||||
#: lib/claper_web/live/event_live/form_component.ex:51
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Current form"
|
||||
msgstr "Aktuelle Form"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:277
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Edit form"
|
||||
msgstr "Formular bearbeiten"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:211
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:471
|
||||
#: lib/claper_web/live/stat_live/index.html.heex:215
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Form"
|
||||
msgstr "Form"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:559
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Form submissions"
|
||||
msgstr "Formulareinreichungen"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:711
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Form submissions from attendees will appear here."
|
||||
msgstr "Formulareinsendungen der Teilnehmer werden hier angezeigt."
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.ex:454
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Name"
|
||||
msgstr "Name"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:276
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "New form"
|
||||
msgstr "Neue Form"
|
||||
|
||||
#: lib/claper_web/live/stat_live/index.html.heex:225
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "No form submission has been sent"
|
||||
msgstr "Es wurde kein Formular gesendet"
|
||||
|
||||
#: lib/claper_web/live/event_live/form_component.ex:32
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "See current form"
|
||||
msgstr "Siehe aktuelles Formular"
|
||||
|
||||
#: lib/claper_web/live/event_live/form_component.ex:96
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Submit"
|
||||
msgstr "Einreichen"
|
||||
|
||||
#: lib/claper_web/live/form_live/form_component.html.heex:37
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Text"
|
||||
msgstr "Text"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:736
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "This cannot be undone, confirm ?"
|
||||
msgstr "Dies kann nicht rückgängig gemacht werden. Bestätigen?"
|
||||
|
||||
#: lib/claper_web/live/form_live/form_component.html.heex:110
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "This will delete all responses associated and the form itself, are you sure?"
|
||||
msgstr "Dadurch werden alle zugehörigen Antworten und das Formular selbst gelöscht. Sind Sie sicher?"
|
||||
|
||||
#: lib/claper_web/live/form_live/form_component.html.heex:14
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Title of your form"
|
||||
msgstr "Titel Ihres Formulars"
|
||||
|
||||
#: lib/claper_web/live/form_live/form_component.html.heex:40
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Type"
|
||||
msgstr "Typ"
|
||||
|
||||
#: lib/claper_web/live/stat_live/index.html.heex:220
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Export all submissions"
|
||||
msgstr "Alle Einsendungen exportieren"
|
||||
|
||||
#: lib/claper_web/live/event_live/poll_component.ex:52
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Select one option"
|
||||
msgstr "Wählen Sie eine Option aus"
|
||||
|
||||
#: lib/claper_web/live/event_live/poll_component.ex:50
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Select one or multiple options"
|
||||
msgstr "Wählen Sie eine oder mehrere Optionen aus"
|
||||
|
||||
#: lib/claper_web/live/poll_live/form_component.html.heex:24
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Multiple answers"
|
||||
msgstr "Mehrere Antworten"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:244
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Import all interactions from another presentation"
|
||||
msgstr "Importieren Sie alle Interaktionen aus einer anderen Präsentation"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.ex:181
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Interactions import failed"
|
||||
msgstr "Der Import der Interaktionen ist fehlgeschlagen"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.ex:174
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Interactions imported successfully"
|
||||
msgstr "Interaktionen erfolgreich importiert"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:295
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Select presentation"
|
||||
msgstr "Präsentation auswählen"
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:79
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "PDF, PPT, PPTX up to %{size} MB"
|
||||
msgstr "PDF, PPT, PPTX bis zu %{size} MB"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:796
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Attendees settings"
|
||||
msgstr "Teilnehmereinstellungen"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:800
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Enable messages"
|
||||
msgstr "Nachrichten aktivieren"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:777
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Show instructions"
|
||||
msgstr "Anleitung anzeigen"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:782
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Show messages"
|
||||
msgstr "Nachrichten anzeigen"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:791
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Show poll results"
|
||||
msgstr "Umfrageergebnisse anzeigen"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:312
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Messages deactivated"
|
||||
msgstr "Nachrichten deaktiviert"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:155
|
||||
#: lib/claper_web/live/event_live/show.html.heex:176
|
||||
#: lib/claper_web/live/event_live/show.html.heex:276
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Anonymous"
|
||||
msgstr "Anonyme"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:202
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Close"
|
||||
msgstr "Schließen"
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:808
|
||||
#, elixir-autogen, elixir-format, fuzzy
|
||||
msgid "Enable anonymous messages"
|
||||
msgstr "Anonyme Nachrichten aktivieren"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:183
|
||||
#: lib/claper_web/live/event_live/show.html.heex:228
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Enter your name"
|
||||
msgstr "Geben Sie Ihren Namen ein"
|
||||
|
||||
#: lib/claper_web/live/event_live/presenter.html.heex:33
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Or go to %{url} and use the code:"
|
||||
msgstr "Oder gehen Sie zu %{url} und verwenden Sie den Code:"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:196
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Use your name"
|
||||
msgstr "Benutze deinen Namen"
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:176
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "disabled"
|
||||
msgstr "deaktiviert"
|
||||
85
priv/gettext/de/LC_MESSAGES/errors.po
Normal file
85
priv/gettext/de/LC_MESSAGES/errors.po
Normal file
@@ -0,0 +1,85 @@
|
||||
##
|
||||
## Do not add, change, or remove `msgid`s manually here as
|
||||
## they're tied to the ones in the corresponding POT file
|
||||
## (with the same domain).
|
||||
##
|
||||
## Use `mix gettext.extract --merge` or `mix gettext.merge`
|
||||
## to merge POT files into PO files.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Language: de\n"
|
||||
|
||||
msgid "can't be blank"
|
||||
msgstr "darf nicht leer sein"
|
||||
|
||||
msgid "has already been taken"
|
||||
msgstr "ist bereits vergeben"
|
||||
|
||||
msgid "is invalid"
|
||||
msgstr "ist ungültig"
|
||||
|
||||
msgid "must be accepted"
|
||||
msgstr "muss akzeptiert werden"
|
||||
|
||||
msgid "has invalid format"
|
||||
msgstr "hat ein ungültiges Format"
|
||||
|
||||
msgid "has an invalid entry"
|
||||
msgstr "hat einen ungültigen Eintrag"
|
||||
|
||||
msgid "is reserved"
|
||||
msgstr "ist reserviert"
|
||||
|
||||
msgid "does not match confirmation"
|
||||
msgstr "stimmt nicht mit der Bestätigung überein"
|
||||
|
||||
msgid "is still associated with this entry"
|
||||
msgstr "ist immer noch mit diesem Eintrag verknüpft"
|
||||
|
||||
msgid "are still associated with this entry"
|
||||
msgstr "sind noch mit diesem Eintrag verknüpft"
|
||||
|
||||
msgid "should be %{count} character(s)"
|
||||
msgid_plural "should be %{count} character(s)"
|
||||
msgstr[0] "sollte %{count} Zeichen sein"
|
||||
msgstr[1] "sollte %{count} Zeichen sein"
|
||||
|
||||
msgid "should have %{count} item(s)"
|
||||
msgid_plural "should have %{count} item(s)"
|
||||
msgstr[0] "sollte %{count} item(s) haben"
|
||||
msgstr[1] "sollte %{count} item(s) haben"
|
||||
|
||||
msgid "should be at least %{count} character(s)"
|
||||
msgid_plural "should be at least %{count} character(s)"
|
||||
msgstr[0] "sollte mindestens %{count} Zeichen umfassen"
|
||||
msgstr[1] "sollte mindestens %{count} Zeichen umfassen"
|
||||
|
||||
msgid "should have at least %{count} item(s)"
|
||||
msgid_plural "should have at least %{count} item(s)"
|
||||
msgstr[0] "sollte mindestens %{count} item(s) haben"
|
||||
msgstr[1] "sollte mindestens %{count} item(s) haben"
|
||||
|
||||
msgid "should be at most %{count} character(s)"
|
||||
msgid_plural "should be at most %{count} character(s)"
|
||||
msgstr[0] "sollte höchstens %{count} Zeichen lang sein"
|
||||
msgstr[1] "sollte höchstens %{count} Zeichen lang sein"
|
||||
|
||||
msgid "should have at most %{count} item(s)"
|
||||
msgid_plural "should have at most %{count} item(s)"
|
||||
msgstr[0] "sollte höchstens %{count} item(s) haben"
|
||||
msgstr[1] "sollte höchstens %{count} item(s) haben"
|
||||
|
||||
msgid "must be less than %{number}"
|
||||
msgstr "muss kleiner sein als %{number}"
|
||||
|
||||
msgid "must be greater than %{number}"
|
||||
msgstr "muss größer sein als %{number}"
|
||||
|
||||
msgid "must be less than or equal to %{number}"
|
||||
msgstr "muss kleiner oder gleich %{number} sein"
|
||||
|
||||
msgid "must be greater than or equal to %{number}"
|
||||
msgstr "muss größer oder gleich %{number} sein"
|
||||
|
||||
msgid "must be equal to %{number}"
|
||||
msgstr "muss gleich %{number} sein"
|
||||
@@ -17,7 +17,7 @@ msgstr ""
|
||||
msgid "Settings"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.ex:438
|
||||
#: lib/claper_web/live/event_live/manage.ex:455
|
||||
#: lib/claper_web/live/form_live/form_component.html.heex:37
|
||||
#: lib/claper_web/live/user_settings_live/show.html.heex:34
|
||||
#: lib/claper_web/templates/user_registration/new.html.heex:34
|
||||
@@ -42,7 +42,7 @@ msgstr ""
|
||||
msgid "Change"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:237
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:239
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Code"
|
||||
msgstr ""
|
||||
@@ -77,17 +77,17 @@ msgstr ""
|
||||
msgid "Your personal informations only visible by you"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:249
|
||||
#: lib/claper_web/live/event_live/show.html.heex:381
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "days"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:255
|
||||
#: lib/claper_web/live/event_live/show.html.heex:387
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "hours"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:261
|
||||
#: lib/claper_web/live/event_live/show.html.heex:393
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "minutes"
|
||||
msgstr ""
|
||||
@@ -100,6 +100,7 @@ msgstr ""
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:98
|
||||
#: lib/claper_web/live/event_live/join.ex:42
|
||||
#: lib/claper_web/live/event_live/join.html.heex:106
|
||||
#: lib/claper_web/live/event_live/show.html.heex:233
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Join"
|
||||
msgstr ""
|
||||
@@ -111,12 +112,13 @@ msgstr ""
|
||||
msgid "Dashboard"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/post_component.ex:66
|
||||
#: lib/claper_web/live/event_live/post_component.ex:33
|
||||
#: lib/claper_web/live/event_live/post_component.ex:86
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Host"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:267
|
||||
#: lib/claper_web/live/event_live/show.html.heex:399
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "seconds"
|
||||
msgstr ""
|
||||
@@ -162,13 +164,13 @@ msgstr ""
|
||||
msgid "My presentations"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:226
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:228
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Name of your presentation"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/presenter.html.heex:21
|
||||
#: lib/claper_web/live/event_live/show.html.heex:276
|
||||
#: lib/claper_web/live/event_live/show.html.heex:408
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Scan to interact in real-time"
|
||||
msgstr ""
|
||||
@@ -178,12 +180,12 @@ msgstr ""
|
||||
msgid "Starting on"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:205
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:207
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Updated successfully"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:247
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:249
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "When your presentation will be available ?"
|
||||
msgstr ""
|
||||
@@ -205,7 +207,7 @@ msgstr ""
|
||||
msgid "Return to home"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:177
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:179
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Created successfully"
|
||||
msgstr ""
|
||||
@@ -238,9 +240,9 @@ msgstr ""
|
||||
#: lib/claper_web/live/event_live/event_card_component.ex:171
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:30
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:631
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:725
|
||||
#: lib/claper_web/live/event_live/post_component.ex:29
|
||||
#: lib/claper_web/live/event_live/post_component.ex:94
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:731
|
||||
#: lib/claper_web/live/event_live/post_component.ex:44
|
||||
#: lib/claper_web/live/event_live/post_component.ex:116
|
||||
#: lib/claper_web/live/form_live/form_component.html.heex:103
|
||||
#: lib/claper_web/live/poll_live/form_component.html.heex:99
|
||||
#, elixir-autogen, elixir-format
|
||||
@@ -310,32 +312,32 @@ msgid "You can log into your account by clicking here."
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:34
|
||||
#: lib/claper_web/live/event_live/post_component.ex:34
|
||||
#: lib/claper_web/live/event_live/post_component.ex:99
|
||||
#: lib/claper_web/live/event_live/post_component.ex:49
|
||||
#: lib/claper_web/live/event_live/post_component.ex:121
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Are you sure?"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:147
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:149
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Presentation attached"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:107
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:109
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Presentation uploaded"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:118
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:196
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:321
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:344
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:120
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:198
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:323
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:346
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Remove"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:45
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:128
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:130
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Select your presentation"
|
||||
msgstr ""
|
||||
@@ -350,22 +352,22 @@ msgstr ""
|
||||
msgid "or drag and drop"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:214
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:226
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "You have selected an incorrect file type"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:213
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:225
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Your file is too large"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:157
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:159
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Change file"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:183
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:185
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Presentation replaced"
|
||||
msgstr ""
|
||||
@@ -385,7 +387,7 @@ msgstr ""
|
||||
msgid "Title of your poll"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:215
|
||||
#: lib/claper_web/live/event_live/event_form_component.ex:227
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Upload failed"
|
||||
msgstr ""
|
||||
@@ -429,8 +431,8 @@ msgstr ""
|
||||
msgid "Invited presentations"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:311
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:328
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:313
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:330
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "User email address"
|
||||
msgstr ""
|
||||
@@ -446,7 +448,7 @@ msgstr ""
|
||||
msgid "Active"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:162
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:164
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Changing your file will remove all interaction elements like polls associated."
|
||||
msgstr ""
|
||||
@@ -456,7 +458,7 @@ msgstr ""
|
||||
msgid "Messages from attendees will appear here."
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:764
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:770
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "On screen settings"
|
||||
msgstr ""
|
||||
@@ -481,7 +483,7 @@ msgstr ""
|
||||
msgid "Press <strong>F</strong> in the presentation window to enable fullscreen"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:153
|
||||
#: lib/claper_web/live/event_live/show.html.heex:292
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Ask, comment..."
|
||||
msgstr ""
|
||||
@@ -498,7 +500,7 @@ msgstr ""
|
||||
msgid "Set active"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:293
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:295
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Add facilitator"
|
||||
msgstr ""
|
||||
@@ -513,7 +515,7 @@ msgstr ""
|
||||
msgid "The site is under maintenance, we'll be back very soon!"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:273
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:275
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Facilitators can present and manage interactions"
|
||||
msgstr ""
|
||||
@@ -541,8 +543,8 @@ msgid "Blocking this user will delete all his messages and he will not be able t
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/show.ex:50
|
||||
#: lib/claper_web/live/event_live/show.ex:196
|
||||
#: lib/claper_web/live/event_live/show.ex:211
|
||||
#: lib/claper_web/live/event_live/show.ex:197
|
||||
#: lib/claper_web/live/event_live/show.ex:212
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "You have been banned from this event"
|
||||
msgstr ""
|
||||
@@ -702,8 +704,7 @@ msgstr ""
|
||||
msgid "Connect to your account"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/presenter.html.heex:33
|
||||
#: lib/claper_web/live/event_live/show.html.heex:285
|
||||
#: lib/claper_web/live/event_live/show.html.heex:417
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Or use the code:"
|
||||
msgstr ""
|
||||
@@ -790,12 +791,12 @@ msgstr ""
|
||||
msgid "Form submissions"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:705
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:711
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Form submissions from attendees will appear here."
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.ex:437
|
||||
#: lib/claper_web/live/event_live/manage.ex:454
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
@@ -825,7 +826,7 @@ msgstr ""
|
||||
msgid "Text"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:730
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:736
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "This cannot be undone, confirm ?"
|
||||
msgstr ""
|
||||
@@ -885,37 +886,75 @@ msgstr ""
|
||||
msgid "Select presentation"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:78
|
||||
#: lib/claper_web/live/event_live/event_form_component.html.heex:79
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "PDF, PPT, PPTX up to %{size} MB"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:790
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:796
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Attendees settings"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:797
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:800
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Enable messages"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:771
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:777
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Show instructions"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:776
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:782
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Show messages"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:785
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:791
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Show poll results"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:179
|
||||
#: lib/claper_web/live/event_live/show.html.heex:312
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Messages deactivated"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:155
|
||||
#: lib/claper_web/live/event_live/show.html.heex:176
|
||||
#: lib/claper_web/live/event_live/show.html.heex:276
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Anonymous"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:202
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/manage.html.heex:808
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Enable anonymous messages"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:183
|
||||
#: lib/claper_web/live/event_live/show.html.heex:228
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Enter your name"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/presenter.html.heex:33
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Or go to %{url} and use the code:"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:196
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Use your name"
|
||||
msgstr ""
|
||||
|
||||
#: lib/claper_web/live/event_live/show.html.heex:176
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "disabled"
|
||||
msgstr ""
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -91,7 +91,7 @@ msgid "must be less than or equal to %{number}"
|
||||
msgstr "doit être inférieur ou égal à %{number}"
|
||||
|
||||
msgid "must be greater than or equal to %{number}"
|
||||
msgstr "doit être supérieure ou égale à %{number}."
|
||||
msgstr "doit être supérieure ou égale à %{number}"
|
||||
|
||||
msgid "must be equal to %{number}"
|
||||
msgstr "doit être égal à %{number}"
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
defmodule Claper.Repo.Migrations.AddAnonymousChatEnabledToPresentationStates do
|
||||
use Ecto.Migration
|
||||
|
||||
def change do
|
||||
alter table(:presentation_states) do
|
||||
add :anonymous_chat_enabled, :boolean, default: true
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -23,7 +23,7 @@ defmodule Claper.PostsTest do
|
||||
test "create_post/1 with valid data creates a post" do
|
||||
user = user_fixture()
|
||||
event = event_fixture()
|
||||
valid_attrs = %{body: "some body", user_id: user.id, event_id: event.id}
|
||||
valid_attrs = %{body: "some body", user_id: user.id, event_id: event.id, name: "some name"}
|
||||
|
||||
assert {:ok, %Post{} = post} = Posts.create_post(event, valid_attrs)
|
||||
assert post.body == "some body"
|
||||
|
||||
Reference in New Issue
Block a user