Merge branch 'tz-improvements' into 'master'

TZ and emails improvements

See merge request framasoft/mobilizon!1081
This commit is contained in:
Thomas Citharel 2021-10-19 10:46:24 +00:00
commit 12e0b8a30f
101 changed files with 2551 additions and 1264 deletions

View file

@ -109,8 +109,7 @@ exunit:
variables: variables:
MIX_ENV: test MIX_ENV: test
before_script: before_script:
- mix deps.get - mix deps.get && mix tz_world.update
- mix tz_world.update
- mix ecto.create - mix ecto.create
- mix ecto.migrate - mix ecto.migrate
script: script:
@ -210,19 +209,25 @@ package-app:
stage: package stage: package
variables: &release-variables variables: &release-variables
MIX_ENV: "prod" MIX_ENV: "prod"
APP_VERSION: "${CI_COMMIT_TAG}"
APP_ASSET: "${CI_PROJECT_NAME}_${APP_VERSION}_${ARCH}.tar.gz"
script: &release-script script: &release-script
- mix local.hex --force - mix local.hex --force
- mix local.rebar --force - mix local.rebar --force
- mix deps.get - mix deps.get
- mix phx.digest - mix phx.digest
- mix release --path release/mobilizon - mix release --path release/mobilizon
- cd release/mobilizon && ln -s lib/mobilizon-*/priv priv - cd release/mobilizon && ln -s lib/mobilizon-*/priv priv && cd ../../
- du -sh release/
- 'echo "Artifact: ${APP_ASSET}"'
- tar czf ${APP_ASSET} -C release mobilizon
- du -sh ${APP_ASSET}
only: only:
- tags@framasoft/mobilizon - tags@framasoft/mobilizon
artifacts: artifacts:
expire_in: 30 days expire_in: 30 days
paths: paths:
- release - ${APP_ASSET}
package-app-dev: package-app-dev:
stage: package stage: package
@ -233,20 +238,16 @@ package-app-dev:
artifacts: artifacts:
expire_in: 2 days expire_in: 2 days
paths: paths:
- release - ${APP_ASSET}
release-upload: release-upload:
stage: upload stage: upload
image: framasoft/yakforms-assets-deploy:latest image: framasoft/yakforms-assets-deploy:latest
rules: *tag-rules rules: *tag-rules
variables:
APP_VERSION: "${CI_COMMIT_TAG}"
APP_ASSET: "${CI_PROJECT_NAME}_${APP_VERSION}_${ARCH}.tar.gz"
script: script:
- APP_VERSION="${CI_COMMIT_TAG}"
- APP_ASSET="${CI_PROJECT_NAME}_${APP_VERSION}_${ARCH}.tar.gz"
- 'echo "Artifact: ${APP_ASSET}"'
- tar czf ${APP_ASSET} -C release mobilizon
- ls -al ${APP_ASSET}
- eval `ssh-agent -s` - eval `ssh-agent -s`
- ssh-add <(echo "${DEPLOYEMENT_KEY}" | base64 --decode -i) - ssh-add <(echo "${DEPLOYEMENT_KEY}" | base64 --decode -i)
- echo "put -r ${APP_ASSET}" | sftp -o "VerifyHostKeyDNS yes" ${DEPLOYEMENT_USER}@${DEPLOYEMENT_HOST}:public/ - echo "put -r ${APP_ASSET}" | sftp -o "VerifyHostKeyDNS yes" ${DEPLOYEMENT_USER}@${DEPLOYEMENT_HOST}:public/

View file

@ -38,6 +38,10 @@ config :mobilizon, :cldr,
"sv" "sv"
] ]
config :tzdata, :data_dir, "/var/lib/mobilizon/tzdata"
config :tz_world, data_dir: "/var/lib/mobilizon/tz_world"
cond do cond do
System.get_env("INSTANCE_CONFIG") && System.get_env("INSTANCE_CONFIG") &&
File.exists?("./config/#{System.get_env("INSTANCE_CONFIG")}") -> File.exists?("./config/#{System.get_env("INSTANCE_CONFIG")}") ->

View file

@ -5,7 +5,7 @@
"scripts": { "scripts": {
"serve": "vue-cli-service serve", "serve": "vue-cli-service serve",
"build": "yarn run build:assets && yarn run build:pictures", "build": "yarn run build:assets && yarn run build:pictures",
"test:unit": "LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 vue-cli-service test:unit", "test:unit": "LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 TZ=UTC vue-cli-service test:unit",
"test:e2e": "vue-cli-service test:e2e", "test:e2e": "vue-cli-service test:e2e",
"lint": "vue-cli-service lint", "lint": "vue-cli-service lint",
"build:assets": "vue-cli-service build", "build:assets": "vue-cli-service build",

View file

@ -216,16 +216,18 @@ export default class App extends Vue {
// Set the focus to the router view // Set the focus to the router view
// https://marcus.io/blog/accessible-routing-vuejs // https://marcus.io/blog/accessible-routing-vuejs
setTimeout(() => { setTimeout(() => {
const focusTarget = this.routerView.$el as HTMLElement; const focusTarget = this.routerView?.$el as HTMLElement;
// Make focustarget programmatically focussable if (focusTarget) {
focusTarget.setAttribute("tabindex", "-1"); // Make focustarget programmatically focussable
focusTarget.setAttribute("tabindex", "-1");
// Focus element // Focus element
focusTarget.focus(); focusTarget.focus();
// Remove tabindex from focustarget. // Remove tabindex from focustarget.
// Reason: https://axesslab.com/skip-links/#update-3-a-comment-from-gov-uk // Reason: https://axesslab.com/skip-links/#update-3-a-comment-from-gov-uk
focusTarget.removeAttribute("tabindex"); focusTarget.removeAttribute("tabindex");
}
}, 0); }, 0);
} }

View file

@ -3,6 +3,8 @@
@import "~bulma"; @import "~bulma";
@import "~bulma-divider"; @import "~bulma-divider";
@import "~buefy/src/scss/buefy"; @import "~buefy/src/scss/buefy";
@import "styles/vue-announcer.scss";
@import "styles/vue-skip-to.scss";
// a { // a {
// color: $violet-2; // color: $violet-2;

View file

@ -1,6 +1,7 @@
<template> <template>
<div> <div>
<event-metadata-block <event-metadata-block
v-if="!event.options.isOnline"
:title="$t('Location')" :title="$t('Location')"
:icon="physicalAddress ? physicalAddress.poiInfos.poiIcon.icon : 'earth'" :icon="physicalAddress ? physicalAddress.poiInfos.poiIcon.icon : 'earth'"
> >

View file

@ -34,6 +34,7 @@
@select="updateSelected" @select="updateSelected"
v-bind="$attrs" v-bind="$attrs"
:id="id" :id="id"
:disabled="disabled"
> >
<template #default="{ option }"> <template #default="{ option }">
<b-icon :icon="option.poiInfos.poiIcon.icon" /> <b-icon :icon="option.poiInfos.poiIcon.icon" />
@ -156,6 +157,7 @@ export default class FullAddressAutoComplete extends Mixins(
) { ) {
@Prop({ required: false, default: "" }) label!: string; @Prop({ required: false, default: "" }) label!: string;
@Prop({ required: false }) userTimezone!: string; @Prop({ required: false }) userTimezone!: string;
@Prop({ required: false, default: false, type: Boolean }) disabled!: boolean;
addressModalActive = false; addressModalActive = false;

View file

@ -200,6 +200,7 @@ export default class ParticipationWithoutAccount extends Vue {
email: this.anonymousParticipation.email, email: this.anonymousParticipation.email,
message: this.anonymousParticipation.message, message: this.anonymousParticipation.message,
locale: this.$i18n.locale, locale: this.$i18n.locale,
timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,
}, },
update: ( update: (
store: ApolloCache<{ joinEvent: IParticipant }>, store: ApolloCache<{ joinEvent: IParticipant }>,

View file

@ -62,6 +62,7 @@ const EVENT_OPTIONS_FRAGMENT = gql`
commentModeration commentModeration
showParticipationPrice showParticipationPrice
hideOrganizerWhenGroupEvent hideOrganizerWhenGroupEvent
isOnline
} }
`; `;
@ -380,6 +381,7 @@ export const JOIN_EVENT = gql`
$email: String $email: String
$message: String $message: String
$locale: String $locale: String
$timezone: String
) { ) {
joinEvent( joinEvent(
eventId: $eventId eventId: $eventId
@ -387,6 +389,7 @@ export const JOIN_EVENT = gql`
email: $email email: $email
message: $message message: $message
locale: $locale locale: $locale
timezone: $timezone
) { ) {
...ParticipantQuery ...ParticipantQuery
} }

View file

@ -1202,5 +1202,6 @@
"{timezoneLongName} ({timezoneShortName})": "{timezoneLongName} ({timezoneShortName})", "{timezoneLongName} ({timezoneShortName})": "{timezoneLongName} ({timezoneShortName})",
"Back to top": "Back to top", "Back to top": "Back to top",
"Powered by Mobilizon": "Powered by Mobilizon", "Powered by Mobilizon": "Powered by Mobilizon",
"Instance follows": "Instance follows" "Instance follows": "Instance follows",
} "The event is fully online": "The event is fully online"
}

View file

@ -1308,5 +1308,6 @@
"{timezoneLongName} ({timezoneShortName})": "{timezoneLongName} ({timezoneShortName})", "{timezoneLongName} ({timezoneShortName})": "{timezoneLongName} ({timezoneShortName})",
"Back to top": "Retour en haut", "Back to top": "Retour en haut",
"Powered by Mobilizon": "Propulsé par Mobilizon", "Powered by Mobilizon": "Propulsé par Mobilizon",
"Instance follows": "Abonnements de l'instance" "Instance follows": "Abonnements de l'instance",
} "The event is fully online": "L'événement est entièrement en ligne"
}

View file

@ -0,0 +1,15 @@
/**
* Taken from https://github.com/vue-a11y/vue-announcer/blob/master/src/vue-announcer.vue because styles are inlined there
*/
.announcer {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}

View file

@ -0,0 +1,63 @@
@import "../variables.scss";
/**
* Taken from https://github.com/vue-a11y/vue-skip-to/blob/master/src/VueSkipTo.vue because styles are inlined there
*/
.vue-skip-to {
position: fixed;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
* {
padding: 0;
margin: 0;
box-sizing: border-box;
}
&.focused,
&:hover {
left: 0;
top: 0;
clip: auto;
height: auto;
width: auto;
background-color: $white;
border: 2px solid $violet-3;
}
&,
&__nav-list {
list-style-type: none;
}
&__nav > span,
&__link {
display: block;
padding: 8px 16px;
color: $violet-3;
font-size: 18px;
}
&__nav > span {
border-bottom: 2px solid $violet-3;
font-weight: bold;
}
&,
&__link {
text-decoration: none;
}
&__link:focus {
outline: none;
background-color: $violet-3;
color: #f2f2f2;
}
}

View file

@ -27,6 +27,7 @@ export interface IEventOptions {
showStartTime: boolean; showStartTime: boolean;
showEndTime: boolean; showEndTime: boolean;
timezone: string | null; timezone: string | null;
isOnline: boolean;
} }
export class EventOptions implements IEventOptions { export class EventOptions implements IEventOptions {
@ -57,4 +58,6 @@ export class EventOptions implements IEventOptions {
showEndTime = true; showEndTime = true;
timezone = null; timezone = null;
isOnline = false;
} }

View file

@ -81,10 +81,16 @@
{{ $t("Date parameters") }} {{ $t("Date parameters") }}
</b-button> </b-button>
<full-address-auto-complete <div class="address">
v-model="eventPhysicalAddress" <full-address-auto-complete
:user-timezone="userActualTimezone" v-model="eventPhysicalAddress"
/> :user-timezone="userActualTimezone"
:disabled="isOnline"
/>
<b-switch class="is-online" v-model="isOnline">{{
$t("The event is fully online")
}}</b-switch>
</div>
<div class="field"> <div class="field">
<label class="label">{{ $t("Description") }}</label> <label class="label">{{ $t("Description") }}</label>
@ -536,6 +542,15 @@ section {
} }
} }
} }
.address {
::v-deep .address-autocomplete {
margin-bottom: 0 !important;
}
.is-online {
margin-bottom: 10px;
}
}
</style> </style>
<style lang="scss"> <style lang="scss">
.dialog .modal-card { .dialog .modal-card {
@ -1288,5 +1303,16 @@ export default class EditEvent extends Vue {
} }
this.event.physicalAddress = address; this.event.physicalAddress = address;
} }
get isOnline(): boolean {
return this.event.options.isOnline;
}
set isOnline(isOnline: boolean) {
this.event.options = {
...this.event.options,
isOnline,
};
}
} }
</script> </script>

View file

@ -61,6 +61,7 @@ export const joinEventMock = {
email: "some@email.tld", email: "some@email.tld",
message: "a message long enough", message: "a message long enough",
locale: "en_US", locale: "en_US",
timezone: "UTC",
}; };
export const eventNoCommentThreadsMock = { export const eventNoCommentThreadsMock = {

View file

@ -114,7 +114,11 @@ defmodule Mobilizon.Federation.ActivityPub.Utils do
"PropertyValue" => "sc:PropertyValue", "PropertyValue" => "sc:PropertyValue",
"value" => "sc:value", "value" => "sc:value",
"propertyID" => "sc:propertyID", "propertyID" => "sc:propertyID",
"inLanguage" => "sc:inLanguage" "inLanguage" => "sc:inLanguage",
"timezone" => %{
"@id" => "mz:timezone",
"@type" => "sc:Text"
}
} }
] ]
} }

View file

@ -16,6 +16,7 @@ defmodule Mobilizon.Federation.ActivityStream.Converter.Event do
alias Mobilizon.Federation.ActivityStream.Converter.Address, as: AddressConverter alias Mobilizon.Federation.ActivityStream.Converter.Address, as: AddressConverter
alias Mobilizon.Federation.ActivityStream.Converter.EventMetadata, as: EventMetadataConverter alias Mobilizon.Federation.ActivityStream.Converter.EventMetadata, as: EventMetadataConverter
alias Mobilizon.Federation.ActivityStream.Converter.Media, as: MediaConverter alias Mobilizon.Federation.ActivityStream.Converter.Media, as: MediaConverter
alias Mobilizon.Service.TimezoneDetector
alias Mobilizon.Web.Endpoint alias Mobilizon.Web.Endpoint
import Mobilizon.Federation.ActivityStream.Converter.Utils, import Mobilizon.Federation.ActivityStream.Converter.Utils,
@ -49,11 +50,11 @@ defmodule Mobilizon.Federation.ActivityStream.Converter.Event do
def as_to_model_data(object) do def as_to_model_data(object) do
case maybe_fetch_actor_and_attributed_to_id(object) do case maybe_fetch_actor_and_attributed_to_id(object) do
{:ok, %Actor{id: actor_id}, attributed_to} -> {:ok, %Actor{id: actor_id}, attributed_to} ->
address_id = get_address(object["location"]) address = get_address(object["location"])
tags = fetch_tags(object["tag"]) tags = fetch_tags(object["tag"])
mentions = fetch_mentions(object["tag"]) mentions = fetch_mentions(object["tag"])
visibility = get_visibility(object) visibility = get_visibility(object)
options = get_options(object) options = get_options(object, address)
metadata = get_metdata(object) metadata = get_metdata(object)
[description: description, picture_id: picture_id, medias: medias] = [description: description, picture_id: picture_id, medias: medias] =
@ -82,7 +83,7 @@ defmodule Mobilizon.Federation.ActivityStream.Converter.Event do
uuid: object["uuid"], uuid: object["uuid"],
tags: tags, tags: tags,
mentions: mentions, mentions: mentions,
physical_address_id: address_id, physical_address_id: if(address, do: address.id, else: nil),
updated_at: object["updated"], updated_at: object["updated"],
publish_at: object["published"], publish_at: object["published"],
language: object["inLanguage"] language: object["inLanguage"]
@ -118,9 +119,9 @@ defmodule Mobilizon.Federation.ActivityStream.Converter.Event do
"published" => (event.publish_at || event.inserted_at) |> date_to_string(), "published" => (event.publish_at || event.inserted_at) |> date_to_string(),
"updated" => event.updated_at |> date_to_string(), "updated" => event.updated_at |> date_to_string(),
"mediaType" => "text/html", "mediaType" => "text/html",
"startTime" => event.begins_on |> date_to_string(), "startTime" => event.begins_on |> shift_tz(event.options.timezone) |> date_to_string(),
"joinMode" => to_string(event.join_options), "joinMode" => to_string(event.join_options),
"endTime" => event.ends_on |> date_to_string(), "endTime" => event.ends_on |> shift_tz(event.options.timezone) |> date_to_string(),
"tag" => event.tags |> build_tags(), "tag" => event.tags |> build_tags(),
"maximumAttendeeCapacity" => event.options.maximum_attendee_capacity, "maximumAttendeeCapacity" => event.options.maximum_attendee_capacity,
"repliesModerationOption" => event.options.comment_moderation, "repliesModerationOption" => event.options.comment_moderation,
@ -131,7 +132,8 @@ defmodule Mobilizon.Federation.ActivityStream.Converter.Event do
"ical:status" => event.status |> to_string |> String.upcase(), "ical:status" => event.status |> to_string |> String.upcase(),
"id" => event.url, "id" => event.url,
"url" => event.url, "url" => event.url,
"inLanguage" => event.language "inLanguage" => event.language,
"timezone" => event.options.timezone
} }
|> maybe_add_physical_address(event) |> maybe_add_physical_address(event)
|> maybe_add_event_picture(event) |> maybe_add_event_picture(event)
@ -149,8 +151,8 @@ defmodule Mobilizon.Federation.ActivityStream.Converter.Event do
end end
# Get only elements that we have in EventOptions # Get only elements that we have in EventOptions
@spec get_options(map) :: map @spec get_options(map, Address.t() | nil) :: map
defp get_options(object) do defp get_options(object, address) do
%{ %{
maximum_attendee_capacity: object["maximumAttendeeCapacity"], maximum_attendee_capacity: object["maximumAttendeeCapacity"],
anonymous_participation: object["anonymousParticipationEnabled"], anonymous_participation: object["anonymousParticipationEnabled"],
@ -159,10 +161,29 @@ defmodule Mobilizon.Federation.ActivityStream.Converter.Event do
object, object,
"repliesModerationOption", "repliesModerationOption",
if(Map.get(object, "commentsEnabled", true), do: :allow_all, else: :closed) if(Map.get(object, "commentsEnabled", true), do: :allow_all, else: :closed)
) ),
timezone: calculate_timezone(object, address)
} }
end end
defp calculate_timezone(%{"timezone" => timezone}, %Address{geom: geom}) do
TimezoneDetector.detect(
timezone,
geom,
"Etc/UTC"
)
end
defp calculate_timezone(_object, nil), do: nil
defp calculate_timezone(_object, %Address{geom: geom}) do
TimezoneDetector.detect(
nil,
geom,
"Etc/UTC"
)
end
defp get_metdata(%{"attachment" => attachments}) do defp get_metdata(%{"attachment" => attachments}) do
attachments attachments
|> Enum.filter(&(&1["type"] == "PropertyValue")) |> Enum.filter(&(&1["type"] == "PropertyValue"))
@ -171,7 +192,7 @@ defmodule Mobilizon.Federation.ActivityStream.Converter.Event do
defp get_metdata(_), do: [] defp get_metdata(_), do: []
@spec get_address(map | binary | nil) :: integer | nil @spec get_address(map | binary | nil) :: Address.t() | nil
defp get_address(address_url) when is_binary(address_url) do defp get_address(address_url) when is_binary(address_url) do
get_address(%{"id" => address_url}) get_address(%{"id" => address_url})
end end
@ -180,8 +201,8 @@ defmodule Mobilizon.Federation.ActivityStream.Converter.Event do
Logger.debug("Address with an URL, let's check against our own database") Logger.debug("Address with an URL, let's check against our own database")
case Addresses.get_address_by_url(url) do case Addresses.get_address_by_url(url) do
%Address{id: address_id} -> %Address{} = address ->
address_id address
_ -> _ ->
Logger.debug("not in our database, let's try to create it") Logger.debug("not in our database, let's try to create it")
@ -196,13 +217,13 @@ defmodule Mobilizon.Federation.ActivityStream.Converter.Event do
defp get_address(nil), do: nil defp get_address(nil), do: nil
@spec do_get_address(map) :: integer | nil @spec do_get_address(map) :: Address.t() | nil
defp do_get_address(map) do defp do_get_address(map) do
map = AddressConverter.as_to_model_data(map) map = AddressConverter.as_to_model_data(map)
case Addresses.create_address(map) do case Addresses.create_address(map) do
{:ok, %Address{id: address_id}} -> {:ok, %Address{} = address} ->
address_id address
_ -> _ ->
nil nil
@ -217,6 +238,13 @@ defmodule Mobilizon.Federation.ActivityStream.Converter.Event do
defp date_to_string(nil), do: nil defp date_to_string(nil), do: nil
defp date_to_string(%DateTime{} = date), do: DateTime.to_iso8601(date) defp date_to_string(%DateTime{} = date), do: DateTime.to_iso8601(date)
@spec shift_tz(DateTime.t(), String.t() | nil) :: DateTime.t()
defp shift_tz(%DateTime{} = date, timezone) when is_binary(timezone) do
DateTime.shift_zone!(date, timezone)
end
defp shift_tz(datetime, _tz), do: datetime
defp get_online_address(attachments) do defp get_online_address(attachments) do
Enum.find_value(attachments, fn attachment -> Enum.find_value(attachments, fn attachment ->
case attachment do case attachment do

View file

@ -243,6 +243,8 @@ defmodule Mobilizon.GraphQL.Schema.EventType do
description: description:
"Whether to show or hide the person organizer when event is organized by a group" "Whether to show or hide the person organizer when event is organized by a group"
) )
field(:is_online, :boolean, description: "Whether the event is fully online")
end end
@desc """ @desc """
@ -294,6 +296,8 @@ defmodule Mobilizon.GraphQL.Schema.EventType do
description: description:
"Whether to show or hide the person organizer when event is organized by a group" "Whether to show or hide the person organizer when event is organized by a group"
) )
field(:is_online, :boolean, description: "Whether the event is fully online")
end end
enum :event_metadata_type do enum :event_metadata_type do

View file

@ -91,6 +91,7 @@ defmodule Mobilizon.GraphQL.Schema.Events.ParticipantType do
arg(:email, :string, description: "The anonymous participant's email") arg(:email, :string, description: "The anonymous participant's email")
arg(:message, :string, description: "The anonymous participant's message") arg(:message, :string, description: "The anonymous participant's message")
arg(:locale, :string, description: "The anonymous participant's locale") arg(:locale, :string, description: "The anonymous participant's locale")
arg(:timezone, :string, description: "The anonymous participant's timezone")
resolve(&Participant.actor_join_event/3) resolve(&Participant.actor_join_event/3)
end end

View file

@ -14,10 +14,12 @@ defmodule Mobilizon do
import Cachex.Spec import Cachex.Spec
alias Mix.Tasks.TzWorld.Update, as: TzWorldUpdate
alias Mobilizon.{Config, Storage, Web} alias Mobilizon.{Config, Storage, Web}
alias Mobilizon.Federation.ActivityPub alias Mobilizon.Federation.ActivityPub
alias Mobilizon.Service.{ErrorPage, ErrorReporting} alias Mobilizon.Service.{ErrorPage, ErrorReporting}
alias Mobilizon.Service.Export.{Feed, ICalendar} alias Mobilizon.Service.Export.{Feed, ICalendar}
alias TzWorld.Backend.DetsWithIndexCache
@name Mix.Project.config()[:name] @name Mix.Project.config()[:name]
@version Mix.Project.config()[:version] @version Mix.Project.config()[:version]
@ -36,6 +38,10 @@ defmodule Mobilizon do
@spec start(:normal | {:takeover, node} | {:failover, node}, term) :: @spec start(:normal | {:takeover, node} | {:failover, node}, term) ::
{:ok, pid} | {:ok, pid, term} | {:error, term} {:ok, pid} | {:ok, pid, term} | {:error, term}
def start(_type, _args) do def start(_type, _args) do
# We update and reload TzWorld at runtime so that the data is not contained in releases
TzWorldUpdate.run(nil)
DetsWithIndexCache.handle_call(:reload_data, nil, nil)
children = children =
[ [
# supervisors # supervisors

View file

@ -28,7 +28,8 @@ defmodule Mobilizon.Events.EventOptions do
show_start_time: boolean, show_start_time: boolean,
show_end_time: boolean, show_end_time: boolean,
timezone: String.t() | nil, timezone: String.t() | nil,
hide_organizer_when_group_event: boolean hide_organizer_when_group_event: boolean,
is_online: boolean()
} }
@attrs [ @attrs [
@ -43,7 +44,8 @@ defmodule Mobilizon.Events.EventOptions do
:show_start_time, :show_start_time,
:show_end_time, :show_end_time,
:timezone, :timezone,
:hide_organizer_when_group_event :hide_organizer_when_group_event,
:is_online
] ]
@primary_key false @primary_key false
@ -61,6 +63,7 @@ defmodule Mobilizon.Events.EventOptions do
field(:show_end_time, :boolean, default: true) field(:show_end_time, :boolean, default: true)
field(:timezone, :string) field(:timezone, :string)
field(:hide_organizer_when_group_event, :boolean, default: false) field(:hide_organizer_when_group_event, :boolean, default: false)
field(:is_online, :boolean, default: false)
embeds_many(:offers, EventOffer) embeds_many(:offers, EventOffer)
embeds_many(:participation_condition, EventParticipationCondition) embeds_many(:participation_condition, EventParticipationCondition)

View file

@ -738,6 +738,11 @@ defmodule Mobilizon.Events do
|> Repo.one() |> Repo.one()
end end
@spec get_participant!(integer | String.t()) :: Participant.t()
def get_participant!(participant_id) do
Repo.get_by!(Participant, id: participant_id)
end
@doc """ @doc """
Gets a single participation for an event and actor. Gets a single participation for an event and actor.

View file

@ -17,6 +17,7 @@ defmodule Mobilizon.Events.Participant do
@type t :: %__MODULE__{ @type t :: %__MODULE__{
id: String.t(), id: String.t(),
role: ParticipantRole.t(), role: ParticipantRole.t(),
code: String.t(),
url: String.t(), url: String.t(),
event: Event.t(), event: Event.t(),
actor: Actor.t(), actor: Actor.t(),
@ -24,7 +25,8 @@ defmodule Mobilizon.Events.Participant do
} }
@required_attrs [:url, :role, :event_id, :actor_id] @required_attrs [:url, :role, :event_id, :actor_id]
@attrs @required_attrs @optional_attrs [:code]
@attrs @required_attrs ++ @optional_attrs
@timestamps_opts [type: :utc_datetime] @timestamps_opts [type: :utc_datetime]
@ -32,6 +34,7 @@ defmodule Mobilizon.Events.Participant do
schema "participants" do schema "participants" do
field(:role, ParticipantRole, default: :participant) field(:role, ParticipantRole, default: :participant)
field(:url, :string) field(:url, :string)
field(:code, :string)
embeds_one(:metadata, Metadata, on_replace: :delete) embeds_one(:metadata, Metadata, on_replace: :delete)
@ -64,6 +67,7 @@ defmodule Mobilizon.Events.Participant do
|> cast(attrs, @attrs) |> cast(attrs, @attrs)
|> cast_embed(:metadata) |> cast_embed(:metadata)
|> ensure_url() |> ensure_url()
|> add_code()
|> validate_required(@required_attrs) |> validate_required(@required_attrs)
|> unique_constraint(:actor_id, name: :participants_event_id_actor_id_index) |> unique_constraint(:actor_id, name: :participants_event_id_actor_id_index)
end end
@ -93,4 +97,25 @@ defmodule Mobilizon.Events.Participant do
@spec generate_url(String.t()) :: String.t() @spec generate_url(String.t()) :: String.t()
defp generate_url(uuid), do: "#{Endpoint.url()}/join/event/#{uuid}" defp generate_url(uuid), do: "#{Endpoint.url()}/join/event/#{uuid}"
@spec add_code(Ecto.Changeset.t()) :: Ecto.Changeset.t()
defp add_code(%Ecto.Changeset{} = changeset) do
case fetch_field(changeset, :code) do
{:data, nil} -> put_change(changeset, :code, generate_code())
{_, _code} -> changeset
:error -> put_change(changeset, :code, generate_code())
end
end
# No lookalike symbols
@symbols '6789BCDFGHJKLMNPQRTW'
@symbol_count Enum.count(@symbols) - 1
@code_length 6
@spec generate_code :: String.t()
defp generate_code do
for _ <- 1..@code_length,
into: "",
do: <<Enum.at(@symbols, :rand.uniform(@symbol_count))>>
end
end end

View file

@ -15,7 +15,7 @@ defmodule Mobilizon.Events.Participant.Metadata do
locale: String.t() locale: String.t()
} }
@attrs [:email, :confirmation_token, :cancellation_token, :message, :locale] @attrs [:email, :confirmation_token, :cancellation_token, :message, :locale, :timezone]
@derive Jason.Encoder @derive Jason.Encoder
embedded_schema do embedded_schema do
@ -24,6 +24,7 @@ defmodule Mobilizon.Events.Participant.Metadata do
field(:cancellation_token, :string) field(:cancellation_token, :string)
field(:message, :string) field(:message, :string)
field(:locale, :string) field(:locale, :string)
field(:timezone, :string)
end end
@doc false @doc false

View file

@ -16,8 +16,13 @@ defmodule Mobilizon.Service.DateTime do
Mobilizon.Cldr.Time.to_string!(datetime, format: format, locale: locale_or_default(locale)) Mobilizon.Cldr.Time.to_string!(datetime, format: format, locale: locale_or_default(locale))
end end
@spec datetime_tz_convert(DateTime.t(), String.t()) :: DateTime.t() @spec datetime_to_date_string(DateTime.t(), String.t(), to_string_format()) :: String.t()
def datetime_tz_convert(%DateTime{} = datetime, timezone) do def datetime_to_date_string(%DateTime{} = datetime, locale \\ "en", format \\ :short) do
Mobilizon.Cldr.Date.to_string!(datetime, format: format, locale: locale_or_default(locale))
end
@spec datetime_tz_convert(DateTime.t(), String.t() | nil) :: DateTime.t()
def datetime_tz_convert(%DateTime{} = datetime, timezone) when is_binary(timezone) do
case DateTime.shift_zone(datetime, timezone) do case DateTime.shift_zone(datetime, timezone) do
{:ok, datetime_with_tz} -> {:ok, datetime_with_tz} ->
datetime_with_tz datetime_with_tz
@ -27,6 +32,8 @@ defmodule Mobilizon.Service.DateTime do
end end
end end
def datetime_tz_convert(%DateTime{} = datetime, nil), do: datetime
@spec datetime_relative(DateTime.t(), String.t()) :: String.t() @spec datetime_relative(DateTime.t(), String.t()) :: String.t()
def datetime_relative(%DateTime{} = datetime, locale \\ "en") do def datetime_relative(%DateTime{} = datetime, locale \\ "en") do
Relative.to_string!(datetime, Mobilizon.Cldr, Relative.to_string!(datetime, Mobilizon.Cldr,
@ -200,4 +207,9 @@ defmodule Mobilizon.Service.DateTime do
DateTime.compare(DateTime.add(last_notification_sent, 3_600), DateTime.utc_now()) == DateTime.compare(DateTime.add(last_notification_sent, 3_600), DateTime.utc_now()) ==
:lt :lt
end end
@spec is_same_day?(DateTime.t(), DateTime.t()) :: boolean()
def is_same_day?(%DateTime{} = one, %DateTime{} = two) do
DateTime.to_date(one) == DateTime.to_date(two)
end
end end

View file

@ -5,7 +5,7 @@ defmodule Mobilizon.Service.Export.ICalendar do
alias Mobilizon.Addresses.Address alias Mobilizon.Addresses.Address
alias Mobilizon.{Config, Events} alias Mobilizon.{Config, Events}
alias Mobilizon.Events.Event alias Mobilizon.Events.{Event, EventOptions}
alias Mobilizon.Service.Export.Common alias Mobilizon.Service.Export.Common
alias Mobilizon.Service.Formatter.HTML alias Mobilizon.Service.Formatter.HTML
@ -114,9 +114,9 @@ defmodule Mobilizon.Service.Export.ICalendar do
defp do_export_event(%Event{} = event) do defp do_export_event(%Event{} = event) do
%ICalendar.Event{ %ICalendar.Event{
summary: event.title, summary: event.title,
dtstart: event.begins_on, dtstart: begins_on(event),
dtstamp: event.publish_at || DateTime.utc_now(), dtstamp: event.publish_at || DateTime.utc_now(),
dtend: event.ends_on, dtend: ends_on(event),
description: HTML.strip_tags(event.description), description: HTML.strip_tags(event.description),
uid: event.uuid, uid: event.uuid,
url: event.url, url: event.url,
@ -130,4 +130,18 @@ defmodule Mobilizon.Service.Export.ICalendar do
defp vendor do defp vendor do
"Mobilizon #{Config.instance_version()}" "Mobilizon #{Config.instance_version()}"
end end
defp begins_on(%Event{begins_on: begins_on, options: %EventOptions{timezone: timezone}}) do
shift_tz(begins_on, timezone)
end
defp ends_on(%Event{ends_on: ends_on, options: %EventOptions{timezone: timezone}}) do
shift_tz(ends_on, timezone)
end
defp shift_tz(%DateTime{} = date, timezone) when is_binary(timezone) do
DateTime.shift_zone!(date, timezone)
end
defp shift_tz(%DateTime{} = date, _), do: date
end end

View file

@ -3,11 +3,10 @@ defmodule Mobilizon.Service.Workers.Notification do
Worker to send notifications Worker to send notifications
""" """
alias Mobilizon.{Actors, Events, Users}
alias Mobilizon.Actors.Actor alias Mobilizon.Actors.Actor
alias Mobilizon.Events
alias Mobilizon.Events.{Event, Participant} alias Mobilizon.Events.{Event, Participant}
alias Mobilizon.Storage.Page alias Mobilizon.Storage.Page
alias Mobilizon.Users
alias Mobilizon.Users.{Setting, User} alias Mobilizon.Users.{Setting, User}
alias Mobilizon.Web.Email.{Mailer, Notification} alias Mobilizon.Web.Email.{Mailer, Notification}
@ -22,12 +21,19 @@ defmodule Mobilizon.Service.Workers.Notification do
def perform(%Job{ def perform(%Job{
args: %{"op" => "before_event_notification", "participant_id" => participant_id} args: %{"op" => "before_event_notification", "participant_id" => participant_id}
}) do }) do
with %Participant{actor: %Actor{user_id: user_id}, event: %Event{status: :confirmed}} = with %Participant{} = participant <- Events.get_participant(participant_id),
participant <- Events.get_participant(participant_id), %Event{status: :confirmed} = event <-
%User{email: email, locale: locale, settings: %Setting{notification_before_event: true}} <- Events.get_event_with_preload!(participant.event_id),
Users.get_user_with_settings!(user_id) do %Actor{user_id: user_id} = actor when not is_nil(user_id) <-
Actors.get_actor_with_preload!(participant.actor_id) do
%User{email: email, locale: locale, settings: %Setting{notification_before_event: true}} =
Users.get_user_with_settings!(user_id)
email email
|> Notification.before_event_notification(participant, locale) |> Notification.before_event_notification(
%Participant{participant | event: event, actor: actor},
locale
)
|> Mailer.send_email_later() |> Mailer.send_email_later()
:ok :ok
@ -50,7 +56,12 @@ defmodule Mobilizon.Service.Workers.Notification do
Enum.filter(participations, fn participation -> Enum.filter(participations, fn participation ->
participation.event.status == :confirmed participation.event.status == :confirmed
end), end),
true <- length(participations) > 0 do true <- length(participations) > 0,
participations <-
Enum.map(participations, fn participation ->
%Event{} = event = Events.get_event_with_preload!(participation.event_id)
%Participant{participation | event: event}
end) do
user user
|> Notification.on_day_notification(participations, total, locale) |> Notification.on_day_notification(participations, total, locale)
|> Mailer.send_email_later() |> Mailer.send_email_later()
@ -79,7 +90,12 @@ defmodule Mobilizon.Service.Workers.Notification do
Enum.filter(participations, fn participation -> Enum.filter(participations, fn participation ->
participation.event.status == :confirmed participation.event.status == :confirmed
end), end),
true <- length(participations) > 0 do true <- length(participations) > 0,
participations <-
Enum.map(participations, fn participation ->
%Event{} = event = Events.get_event_with_preload!(participation.event_id)
%Participant{participation | event: event}
end) do
user user
|> Notification.weekly_notification(participations, total, locale) |> Notification.weekly_notification(participations, total, locale)
|> Mailer.send_email_later() |> Mailer.send_email_later()
@ -99,7 +115,7 @@ defmodule Mobilizon.Service.Workers.Notification do
} }
}) do }) do
with %User{} = user <- Users.get_user(user_id), with %User{} = user <- Users.get_user(user_id),
{:ok, %Event{} = event} <- Events.get_event(event_id), {:ok, %Event{} = event} <- Events.get_event_with_preload(event_id),
%Page{total: total} when total > 0 <- %Page{total: total} when total > 0 <-
Events.list_participants_for_event(event_id, [:not_approved]) do Events.list_participants_for_event(event_id, [:not_approved]) do
user user

View file

@ -18,7 +18,9 @@ defmodule Mobilizon.Web.Email do
|> put_header("Reply-To", Config.instance_email_reply_to()) |> put_header("Reply-To", Config.instance_email_reply_to())
|> maybe_put_date_header() |> maybe_put_date_header()
|> maybe_put_message_id() |> maybe_put_message_id()
|> assign(:jsonLDMetadata, nil)
|> assign(:instance_name, Config.instance_name()) |> assign(:instance_name, Config.instance_name())
|> assign(:offer_unsupscription, true)
|> put_html_layout({EmailView, "email.html"}) |> put_html_layout({EmailView, "email.html"})
|> put_text_layout({EmailView, "email.text"}) |> put_text_layout({EmailView, "email.text"})
end end

View file

@ -14,15 +14,24 @@ defmodule Mobilizon.Web.Email.Event do
alias Mobilizon.Events.{Event, Participant} alias Mobilizon.Events.{Event, Participant}
alias Mobilizon.Storage.Repo alias Mobilizon.Storage.Repo
alias Mobilizon.Users.{Setting, User} alias Mobilizon.Users.{Setting, User}
alias Mobilizon.Web.Email alias Mobilizon.Web.Email
alias Mobilizon.Web.JsonLD.ObjectView
@important_changes [:title, :begins_on, :ends_on, :status, :physical_address] @important_changes [:title, :begins_on, :ends_on, :status, :physical_address]
@spec event_updated(String.t(), Actor.t(), Event.t(), Event.t(), MapSet.t(), String.t()) :: @spec event_updated(
Participant.t(),
String.t(),
Actor.t(),
Event.t(),
Event.t(),
MapSet.t(),
String.t()
) ::
Bamboo.Email.t() Bamboo.Email.t()
def event_updated( def event_updated(
email, email,
%Participant{} = participant,
%Actor{} = actor, %Actor{} = actor,
%Event{} = old_event, %Event{} = old_event,
%Event{} = event, %Event{} = event,
@ -38,6 +47,11 @@ defmodule Mobilizon.Web.Email.Event do
title: old_event.title title: old_event.title
) )
json_ld =
"participation.json"
|> ObjectView.render(%{participant: %Participant{participant | event: event, actor: actor}})
|> Jason.encode!()
Email.base_email(to: {Actor.display_name(actor), email}, subject: subject) Email.base_email(to: {Actor.display_name(actor), email}, subject: subject)
|> assign(:locale, locale) |> assign(:locale, locale)
|> assign(:event, event) |> assign(:event, event)
@ -45,6 +59,7 @@ defmodule Mobilizon.Web.Email.Event do
|> assign(:changes, changes) |> assign(:changes, changes)
|> assign(:subject, subject) |> assign(:subject, subject)
|> assign(:timezone, timezone) |> assign(:timezone, timezone)
|> assign(:jsonLDMetadata, json_ld)
|> Email.add_event_attachment(event) |> Email.add_event_attachment(event)
|> render(:event_updated) |> render(:event_updated)
end end
@ -83,13 +98,14 @@ defmodule Mobilizon.Web.Email.Event do
MapSet.t() MapSet.t()
) :: Bamboo.Email.t() ) :: Bamboo.Email.t()
defp send_notification_for_event_update_to_participant( defp send_notification_for_event_update_to_participant(
{%Participant{} = _participant, %Actor{} = actor, {%Participant{} = participant, %Actor{} = actor,
%User{locale: locale, email: email} = _user, %Setting{timezone: timezone}}, %User{locale: locale, email: email} = _user, %Setting{timezone: timezone}},
%Event{} = old_event, %Event{} = old_event,
%Event{} = event, %Event{} = event,
diff diff
) do ) do
do_send_notification_for_event_update_to_participant( do_send_notification_for_event_update_to_participant(
participant,
email, email,
actor, actor,
old_event, old_event,
@ -101,13 +117,14 @@ defmodule Mobilizon.Web.Email.Event do
end end
defp send_notification_for_event_update_to_participant( defp send_notification_for_event_update_to_participant(
{%Participant{} = _participant, %Actor{} = actor, {%Participant{} = participant, %Actor{} = actor,
%User{locale: locale, email: email} = _user, nil}, %User{locale: locale, email: email} = _user, nil},
%Event{} = old_event, %Event{} = old_event,
%Event{} = event, %Event{} = event,
diff diff
) do ) do
do_send_notification_for_event_update_to_participant( do_send_notification_for_event_update_to_participant(
participant,
email, email,
actor, actor,
old_event, old_event,
@ -119,7 +136,8 @@ defmodule Mobilizon.Web.Email.Event do
end end
defp send_notification_for_event_update_to_participant( defp send_notification_for_event_update_to_participant(
{%Participant{metadata: %{email: email}} = _participant, %Actor{} = actor, nil, nil}, {%Participant{metadata: %{email: email} = participant_metadata} = participant,
%Actor{} = actor, nil, nil},
%Event{} = old_event, %Event{} = old_event,
%Event{} = event, %Event{} = event,
diff diff
@ -128,17 +146,19 @@ defmodule Mobilizon.Web.Email.Event do
locale = Gettext.get_locale() locale = Gettext.get_locale()
do_send_notification_for_event_update_to_participant( do_send_notification_for_event_update_to_participant(
participant,
email, email,
actor, actor,
old_event, old_event,
event, event,
diff, diff,
"Etc/UTC", Map.get(participant_metadata, :timezone, "Etc/UTC"),
locale locale
) )
end end
@spec do_send_notification_for_event_update_to_participant( @spec do_send_notification_for_event_update_to_participant(
Participant.t(),
String.t(), String.t(),
Actor.t(), Actor.t(),
Event.t(), Event.t(),
@ -148,6 +168,7 @@ defmodule Mobilizon.Web.Email.Event do
String.t() String.t()
) :: Bamboo.Email.t() ) :: Bamboo.Email.t()
defp do_send_notification_for_event_update_to_participant( defp do_send_notification_for_event_update_to_participant(
participant,
email, email,
actor, actor,
old_event, old_event,
@ -157,7 +178,7 @@ defmodule Mobilizon.Web.Email.Event do
locale locale
) do ) do
email email
|> Email.Event.event_updated(actor, old_event, event, diff, timezone, locale) |> Email.Event.event_updated(participant, actor, old_event, event, diff, timezone, locale)
|> Email.Mailer.send_email_later() |> Email.Mailer.send_email_later()
end end
end end

View file

@ -10,6 +10,7 @@ defmodule Mobilizon.Web.Email.Notification do
alias Mobilizon.Events.{Event, Participant} alias Mobilizon.Events.{Event, Participant}
alias Mobilizon.Users.{Setting, User} alias Mobilizon.Users.{Setting, User}
alias Mobilizon.Web.Email alias Mobilizon.Web.Email
alias Mobilizon.Web.JsonLD.ObjectView
@spec before_event_notification(String.t(), Participant.t(), String.t()) :: @spec before_event_notification(String.t(), Participant.t(), String.t()) ::
Bamboo.Email.t() Bamboo.Email.t()
@ -30,6 +31,7 @@ defmodule Mobilizon.Web.Email.Notification do
|> assign(:locale, locale) |> assign(:locale, locale)
|> assign(:participant, participant) |> assign(:participant, participant)
|> assign(:subject, subject) |> assign(:subject, subject)
|> assign(:jsonLDMetadata, build_json_ld(participant))
|> Email.add_event_attachment(event) |> Email.add_event_attachment(event)
|> render(:before_event_notification) |> render(:before_event_notification)
end end
@ -57,6 +59,7 @@ defmodule Mobilizon.Web.Email.Notification do
|> assign(:total, total) |> assign(:total, total)
|> assign(:timezone, timezone) |> assign(:timezone, timezone)
|> assign(:subject, subject) |> assign(:subject, subject)
|> assign(:jsonLDMetadata, build_json_ld(participations))
|> render(:on_day_notification) |> render(:on_day_notification)
end end
@ -83,6 +86,7 @@ defmodule Mobilizon.Web.Email.Notification do
|> assign(:total, total) |> assign(:total, total)
|> assign(:timezone, timezone) |> assign(:timezone, timezone)
|> assign(:subject, subject) |> assign(:subject, subject)
|> assign(:jsonLDMetadata, build_json_ld(participations))
|> render(:notification_each_week) |> render(:notification_each_week)
end end
@ -110,4 +114,17 @@ defmodule Mobilizon.Web.Email.Notification do
|> assign(:subject, subject) |> assign(:subject, subject)
|> render(:pending_participation_notification) |> render(:pending_participation_notification)
end end
@spec build_json_ld(Participant.t()) :: String.t()
defp build_json_ld(%Participant{} = participant) do
"participation.json"
|> ObjectView.render(%{participant: participant})
|> Jason.encode!()
end
defp build_json_ld(participations) when is_list(participations) do
participations
|> Enum.map(&ObjectView.render("participation.json", %{participant: &1}))
|> Jason.encode!()
end
end end

View file

@ -8,11 +8,11 @@ defmodule Mobilizon.Web.Email.Participation do
import Mobilizon.Web.Gettext import Mobilizon.Web.Gettext
alias Mobilizon.Actors.Actor alias Mobilizon.Actors.Actor
alias Mobilizon.Config alias Mobilizon.{Config, Events, Users}
alias Mobilizon.Events.{Event, Participant} alias Mobilizon.Events.{Event, Participant}
alias Mobilizon.Users
alias Mobilizon.Users.User alias Mobilizon.Users.User
alias Mobilizon.Web.Email alias Mobilizon.Web.Email
alias Mobilizon.Web.JsonLD.ObjectView
@doc """ @doc """
Send participation emails to local user Send participation emails to local user
@ -59,7 +59,7 @@ defmodule Mobilizon.Web.Email.Participation do
def participation_updated( def participation_updated(
email, email,
%Participant{event: event, role: :rejected}, %Participant{event: event, role: :rejected} = participant,
locale locale
) do ) do
Gettext.put_locale(locale) Gettext.put_locale(locale)
@ -73,13 +73,15 @@ defmodule Mobilizon.Web.Email.Participation do
Email.base_email(to: email, subject: subject) Email.base_email(to: email, subject: subject)
|> assign(:locale, locale) |> assign(:locale, locale)
|> assign(:event, event) |> assign(:event, event)
|> assign(:jsonLDMetadata, json_ld(participant))
|> assign(:subject, subject) |> assign(:subject, subject)
|> render(:event_participation_rejected) |> render(:event_participation_rejected)
end end
def participation_updated( def participation_updated(
email, email,
%Participant{event: %Event{join_options: :free} = event, role: :participant}, %Participant{event: %Event{join_options: :free} = event, role: :participant} =
participant,
locale locale
) do ) do
Gettext.put_locale(locale) Gettext.put_locale(locale)
@ -94,12 +96,13 @@ defmodule Mobilizon.Web.Email.Participation do
|> assign(:locale, locale) |> assign(:locale, locale)
|> assign(:event, event) |> assign(:event, event)
|> assign(:subject, subject) |> assign(:subject, subject)
|> assign(:jsonLDMetadata, json_ld(participant))
|> render(:event_participation_confirmed) |> render(:event_participation_confirmed)
end end
def participation_updated( def participation_updated(
email, email,
%Participant{event: event, role: :participant}, %Participant{event: event, role: :participant} = participant,
locale locale
) do ) do
Gettext.put_locale(locale) Gettext.put_locale(locale)
@ -114,6 +117,7 @@ defmodule Mobilizon.Web.Email.Participation do
|> assign(:locale, locale) |> assign(:locale, locale)
|> assign(:event, event) |> assign(:event, event)
|> assign(:subject, subject) |> assign(:subject, subject)
|> assign(:jsonLDMetadata, json_ld(participant))
|> Email.add_event_attachment(event) |> Email.add_event_attachment(event)
|> render(:event_participation_approved) |> render(:event_participation_approved)
end end
@ -136,7 +140,16 @@ defmodule Mobilizon.Web.Email.Participation do
Email.base_email(to: email, subject: subject) Email.base_email(to: email, subject: subject)
|> assign(:locale, locale) |> assign(:locale, locale)
|> assign(:participant, participant) |> assign(:participant, participant)
|> assign(:jsonLDMetadata, json_ld(participant))
|> assign(:subject, subject) |> assign(:subject, subject)
|> render(:anonymous_participation_confirmation) |> render(:anonymous_participation_confirmation)
end end
defp json_ld(participant) do
event = Events.get_event_with_preload!(participant.event_id)
"participation.json"
|> ObjectView.render(%{participant: %Participant{participant | event: event}})
|> Jason.encode!()
end
end end

View file

@ -34,6 +34,7 @@ defmodule Mobilizon.Web.Email.User do
|> assign(:locale, locale) |> assign(:locale, locale)
|> assign(:token, confirmation_token) |> assign(:token, confirmation_token)
|> assign(:subject, subject) |> assign(:subject, subject)
|> assign(:offer_unsupscription, false)
|> render(:registration_confirmation) |> render(:registration_confirmation)
end end
@ -54,6 +55,7 @@ defmodule Mobilizon.Web.Email.User do
|> assign(:locale, locale) |> assign(:locale, locale)
|> assign(:token, reset_password_token) |> assign(:token, reset_password_token)
|> assign(:subject, subject) |> assign(:subject, subject)
|> assign(:offer_unsupscription, false)
|> render(:password_reset) |> render(:password_reset)
end end
@ -161,6 +163,7 @@ defmodule Mobilizon.Web.Email.User do
|> assign(:locale, user_locale) |> assign(:locale, user_locale)
|> assign(:subject, subject) |> assign(:subject, subject)
|> assign(:new_email, unconfirmed_email) |> assign(:new_email, unconfirmed_email)
|> assign(:offer_unsupscription, false)
|> render(:email_changed_old) |> render(:email_changed_old)
end end
@ -181,6 +184,7 @@ defmodule Mobilizon.Web.Email.User do
|> assign(:locale, user_locale) |> assign(:locale, user_locale)
|> assign(:subject, subject) |> assign(:subject, subject)
|> assign(:token, confirmation_token) |> assign(:token, confirmation_token)
|> assign(:offer_unsupscription, false)
|> render(:email_changed_new) |> render(:email_changed_new)
end end

View file

@ -0,0 +1,8 @@
<%= if @event.options.timezone == nil do %>
<%= @date |> datetime_tz_convert(@timezone) |> datetime_to_string(@locale , :short) %>
<% else %>
<strong><%= @date |> datetime_tz_convert(@event.options.timezone) |> datetime_to_string(@locale, :short) %></strong><br />
<%= if @event.options.timezone != @timezone do %>
<span style="font-size: 13px;"><%= gettext "🌐 %{timezone} %{offset}", timezone: @event.options.timezone, offset: @date |> datetime_tz_convert(@event.options.timezone) |> Cldr.DateTime.Formatter.zone_gmt() %></span>
<% end %>
<% end %>

View file

@ -0,0 +1 @@
<%= if @event.options.timezone == nil do %><%= @date |> datetime_tz_convert(@timezone) |> datetime_to_string(@locale) %><% else %><%= if @event.options.timezone != @timezone do %><%= gettext "%{date_time} (%{timezone} %{offset})", date_time: @date |> datetime_tz_convert(@event.options.timezone) |> datetime_to_string(@locale), timezone: @event.options.timezone, offset: @date |> datetime_tz_convert(@event.options.timezone) |> Cldr.DateTime.Formatter.zone_gmt() %><% else %><%= gettext "%{date_time} (in your timezone %{timezone} %{offset})", date_time: @date |> datetime_tz_convert(@event.options.timezone) |> datetime_to_string(@locale), timezone: @event.options.timezone, offset: @date |> datetime_tz_convert(@event.options.timezone) |> Cldr.DateTime.Formatter.zone_gmt() %><% end %><% end %>

View file

@ -0,0 +1,14 @@
<%= cond do %>
<%= @end_date == nil -> %>
<%= render("date/event_tz_date.html", date: @start_date, event: @event, timezone: @timezone, locale: @locale) %>
<% is_same_day?(@start_date, @end_date) -> %>
<strong><%= gettext "On %{date} from %{start_time} to %{end_time}", date: datetime_to_date_string(@start_date, @locale), start_time: datetime_to_time_string(@start_date, @locale), end_time: datetime_to_time_string(@end_date, @locale) %></strong><br />
<%= if @event.options.timezone != @timezone do %>
<span style="font-size: 13px;"><%= gettext "🌐 %{timezone} %{offset}", timezone: @event.options.timezone, offset: Cldr.DateTime.Formatter.zone_gmt(@start_date) %></span>
<% end %>
<% true -> %>
<strong><%= gettext "From the %{start} to the %{end}", start: datetime_to_string(@start_date, @locale, :short), end: datetime_to_string(@end_date, @locale, :short) %></strong><br />
<%= if @event.options.timezone != @timezone do %>
<span style="font-size: 13px;"><%= gettext "🌐 %{timezone} %{offset}", timezone: @event.options.timezone, offset: Cldr.DateTime.Formatter.zone_gmt(@start_date) %></span>
<% end %>
<% end %>

View file

@ -1,6 +1,3 @@
<!-- THIS EMAIL WAS BUILT AND TESTED WITH LITMUS http://litmus.com -->
<!-- IT WAS RELEASED UNDER THE MIT LICENSE https://opensource.org/licenses/MIT -->
<!-- QUESTIONS? TWEET US @LITMUSAPP -->
<!DOCTYPE html> <!DOCTYPE html>
<html lang={"#{ @locale }"}> <html lang={"#{ @locale }"}>
<head> <head>
@ -41,6 +38,11 @@
/* ANDROID CENTER FIX */ /* ANDROID CENTER FIX */
div[style*="margin: 16px 0;"] { margin: 0 !important; } div[style*="margin: 16px 0;"] { margin: 0 !important; }
</style> </style>
<%= if @jsonLDMetadata do %>
<script type="application/ld+json">
<%= @jsonLDMetadata |> raw %>
</script>
<% end %>
</head> </head>
<body style="background-color: #ECEBF2; margin: 0 !important; padding: 0 !important;mso-line-height-rule: exactly;"> <body style="background-color: #ECEBF2; margin: 0 !important; padding: 0 !important;mso-line-height-rule: exactly;">
<table border="0" cellpadding="0" cellspacing="0" width="100%"> <table border="0" cellpadding="0" cellspacing="0" width="100%">
@ -56,7 +58,7 @@
<tr> <tr>
<td align="center" valign="top" style="padding: 40px 10px 40px 10px;"> <td align="center" valign="top" style="padding: 40px 10px 40px 10px;">
<a href={"#{ Mobilizon.Web.Endpoint.url() }"} target="_blank"> <a href={"#{ Mobilizon.Web.Endpoint.url() }"} target="_blank">
<img alt={"#{ @instance_name }"} src={"#{ "#{Mobilizon.Web.Endpoint.url()}/img/mobilizon_logo.png" }"} width="366" height="108" style="display: block; width: 366px; max-width: 366px; min-width: 366px; font-family: 'Roboto', Helvetica, Arial, sans-serif; color: #ffffff; font-size: 18px;" border="0"> <img alt={"#{ @instance_name }"} src={"#{ "#{Mobilizon.Web.Endpoint.url()}/img/mobilizon_logo.png" }"} width="340" height="108" style="display: block; width: 340px; max-width: 370px; min-width: 340px; font-family: 'Roboto', Helvetica, Arial, sans-serif; color: #ffffff; font-size: 18px;" border="0">
</a> </a>
</td> </td>
</tr> </tr>
@ -140,6 +142,11 @@
<tr> <tr>
<td bgcolor="#ECEBF2" align="center" style="padding: 30px 30px 30px 30px; color: #474467; font-family: 'Roboto', Helvetica, Arial, sans-serif; font-size: 14px; font-weight: 400; line-height: 18px;" > <td bgcolor="#ECEBF2" align="center" style="padding: 30px 30px 30px 30px; color: #474467; font-family: 'Roboto', Helvetica, Arial, sans-serif; font-size: 14px; font-weight: 400; line-height: 18px;" >
<p style="margin: 0;"> <p style="margin: 0;">
<%= if @offer_unsupscription do %>
<a href={"#{Mobilizon.Web.Endpoint.url()}/settings/notifications"}>
<%= gettext("Manage your notification settings") %>
</a>
<% end %>
<%= gettext("<b>%{instance}</b> is powered by Mobilizon.", instance: @instance_name) |> raw %><br /> <%= gettext("<b>%{instance}</b> is powered by Mobilizon.", instance: @instance_name) |> raw %><br />
<a href="https://joinmobilizon.org"><%= gettext "Learn more about Mobilizon here!" %></a> <a href="https://joinmobilizon.org"><%= gettext "Learn more about Mobilizon here!" %></a>
</p> </p>

View file

@ -74,7 +74,7 @@
<%= gettext "Start" %> <%= gettext "Start" %>
</td> </td>
<td bgcolor="#ffffff" align="left"> <td bgcolor="#ffffff" align="left">
<b><%= @event.begins_on |> datetime_tz_convert(@timezone) |> datetime_to_string(@locale) %></b> <%= render("date/event_tz_date.html", event: @event, date: @event.begins_on, timezone: @timezone, locale: @locale) %>
</td> </td>
</tr> </tr>
<% end %> <% end %>
@ -84,7 +84,7 @@
<%= gettext "End" %> <%= gettext "End" %>
</td> </td>
<td bgcolor="#ffffff" align="left"> <td bgcolor="#ffffff" align="left">
<b><%= @event.ends_on |> datetime_tz_convert(@timezone) |> datetime_to_string(@locale) %></b> <%= render("date/event_tz_date.html", event: @event, date: @event.ends_on, timezone: @timezone, locale: @locale) %>
</td> </td>
</tr> </tr>
<% end %> <% end %>

View file

@ -14,11 +14,9 @@
<%= if MapSet.member?(@changes, :title) do %> <%= if MapSet.member?(@changes, :title) do %>
<%= gettext "New title: %{title}", title: @event.title %> <%= gettext "New title: %{title}", title: @event.title %>
<% end %> <% end %>
<%= if MapSet.member?(@changes, :begins_on) do %> <%= if MapSet.member?(@changes, :begins_on) do %><%= render("date/event_tz_date.text", event: @event, date: @event.begins_on, timezone: @timezone, locale: @locale) %>
<%= gettext "Start %{begins_on}", begins_on: @event.begins_on |> datetime_tz_convert(@timezone) |> datetime_to_string(@locale) %>
<% end %> <% end %>
<%= if MapSet.member?(@changes, :ends_on) && !is_nil(@event.ends_on) do %> <%= if MapSet.member?(@changes, :ends_on) && !is_nil(@event.ends_on) do %><%= render("date/event_tz_date.text", event: @event, date: @event.ends_on, timezone: @timezone, locale: @locale) %>
<%= gettext "End %{ends_on}", ends_on: @event.ends_on |> datetime_tz_convert(@timezone) |> datetime_to_string(@locale) %>
<% end %> <% end %>
<%= gettext "Visit the updated event page: %{link}", link: Routes.page_url(Mobilizon.Web.Endpoint, :event, @event.uuid) %> <%= gettext "Visit the updated event page: %{link}", link: Routes.page_url(Mobilizon.Web.Endpoint, :event, @event.uuid) %>
<%= ngettext "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button.", "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button.", 1 %> <%= ngettext "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button.", "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button.", 1 %>

View file

@ -10,7 +10,7 @@
<tr> <tr>
<td bgcolor="#ffffff" align="center" valign="top" style="padding: 40px 20px 20px 20px; border-radius: 4px 4px 0px 0px; color: #3A384C; font-family: 'Roboto', Helvetica, Arial, sans-serif; font-size: 48px; font-weight: 400; line-height: 48px;"> <td bgcolor="#ffffff" align="center" valign="top" style="padding: 40px 20px 20px 20px; border-radius: 4px 4px 0px 0px; color: #3A384C; font-family: 'Roboto', Helvetica, Arial, sans-serif; font-size: 48px; font-weight: 400; line-height: 48px;">
<h1 style="font-size: 48px; font-weight: 400; margin: 0;"> <h1 style="font-size: 48px; font-weight: 400; margin: 0;">
<%= gettext "What's up this week?" %> <%= gettext "On the agenda this week" %>
</h1> </h1>
</td> </td>
</tr> </tr>
@ -40,27 +40,17 @@
</td> </td>
</tr> </tr>
<tr> <tr>
<td bgcolor="#ffffff" align="left" style="padding: 20px 30px 0px 30px; color: #474467; font-family: 'Roboto', Helvetica, Arial, sans-serif; font-size: 18px; font-weight: 400; line-height: 25px;" > <td bgcolor="#ffffff" align="left" style="padding: 20px 15px 0px 15px; color: #474467; font-family: 'Roboto', Helvetica, Arial, sans-serif; font-size: 18px; font-weight: 400; line-height: 25px;" >
<%= if @total > 1 do %> <%= if @total > 1 do %>
<ul style="margin: 0;"> <ul style="margin: 0;padding: 0;list-style-type: none;">
<%= for participation <- @participations do %> <%= for participation <- @participations do %>
<li> <li style="padding: 0; border: 1px solid rgba(0,0,0,.125); border-radius: .25rem; margin-bottom: 10px">
<strong> <%= render("participation/event_card.html", event: participation.event, timezone: @timezone, locale: @locale) %>
<%= participation.event.begins_on |> datetime_tz_convert(@timezone) |> datetime_to_string(@locale) %>
</strong>
<a href={"#{ Routes.page_url(Mobilizon.Web.Endpoint, :event, participation.event.uuid) }"} target="_blank">
<%= participation.event.title %>
</a>
</li> </li>
<% end %> <% end %>
</ul> </ul>
<% else %> <% else %>
<strong> <%= render("participation/event_card.html", event: @participation.event, timezone: @timezone, locale: @locale) %>
<%= @participation.event.begins_on |> datetime_tz_convert(@timezone) |> datetime_to_string(@locale) %>
</strong>
<a href={"#{ Routes.page_url(Mobilizon.Web.Endpoint, :event, @participation.event.uuid) }"} target="_blank">
<%= @participation.event.title %>
</a>
<% end %> <% end %>
</td> </td>
</tr> </tr>

View file

@ -1,11 +1,11 @@
<%= gettext "What's up this week?" %> <%= gettext "On the agenda this week" %>
== ==
<%= ngettext "You have one event this week:", "You have %{total} events this week:", @total, total: @total %> <%= ngettext "You have one event this week:", "You have %{total} events this week:", @total, total: @total %>
<%= if @total > 1 do %> <%= if @total > 1 do %>
<%= for participation <- @participations do %> <%= for participation <- @participations do %>
- <%= participation.event.begins_on |> datetime_tz_convert(@timezone) |> datetime_to_string(@locale) %> - <%= participation.event.title %> <%= Routes.page_url(Mobilizon.Web.Endpoint, :event, participation.event.uuid) %> - <%= render("date/event_tz_date.text", event: participation.event, date: participation.event.begins_on, timezone: @timezone, locale: @locale) %> - <%= participation.event.title %> <%= Routes.page_url(Mobilizon.Web.Endpoint, :event, participation.event.uuid) %>
<% end %> <% end %>
<% else %> <% else %>
<%= @participation.event.begins_on |> datetime_tz_convert(@timezone) |> datetime_to_string(@locale) %> - <%= @participation.event.title %> <%= Routes.page_url(Mobilizon.Web.Endpoint, :event, @participation.event.uuid) %> <%= render("date/event_tz_date.text", event: @participation.event, date: @participation.event.begins_on, timezone: @timezone, locale: @locale) %> - <%= @participation.event.title %> <%= Routes.page_url(Mobilizon.Web.Endpoint, :event, @participation.event.uuid) %>
<% end %> <% end %>
<%= ngettext "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button.", "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button.", @total %> <%= ngettext "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button.", "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button.", @total %>

View file

@ -45,22 +45,12 @@
<ul style="margin: 0;"> <ul style="margin: 0;">
<%= for participation <- @participations do %> <%= for participation <- @participations do %>
<li> <li>
<strong> <%= render("participation/event_card.html", event: participation.event, timezone: @timezone, locale: @locale) %>
<%= participation.event.begins_on |> DateTime.shift_zone!(@timezone) |> datetime_to_time_string(@locale) %>
</strong>
<a href={"#{ Routes.page_url(Mobilizon.Web.Endpoint, :event, participation.event.uuid) }"} target="_blank">
<%= participation.event.title %>
</a>
</li> </li>
<% end %> <% end %>
</ul> </ul>
<% else %> <% else %>
<strong> <%= render("participation/event_card.html", event: @participation.event, timezone: @timezone, locale: @locale) %>
<%= @participation.event.begins_on |> DateTime.shift_zone!(@timezone) |> datetime_to_time_string(@locale) %>
</strong>
<a href={"#{ Routes.page_url(Mobilizon.Web.Endpoint, :event, @participation.event.uuid) }"} target="_blank">
<%= @participation.event.title %>
</a>
<% end %> <% end %>
</td> </td>
</tr> </tr>

View file

@ -1,14 +1,11 @@
<%= gettext "What's up today?" %> <%= gettext "What's up today?" %>
== ==
<%= ngettext "You have one event today:", "You have %{total} events today:", @total, total: @total %> <%= ngettext "You have one event today:", "You have %{total} events today:", @total, total: @total %>
<%= if @total > 1 do %> <%= if @total > 1 do %>
<%= for participation <- @participations do %> <%= for participation <- @participations do %>
- <%= participation.event.begins_on |> DateTime.shift_zone!(@timezone) |> datetime_to_time_string(@locale) %> - <%= participation.event.title %> <%= Routes.page_url(Mobilizon.Web.Endpoint, :event, participation.event.uuid) %> - <%= render("date/event_tz_date.text", event: participation.event, date: participation.event.begins_on, timezone: @timezone, locale: @locale) %> - <%= participation.event.title %> <%= Routes.page_url(Mobilizon.Web.Endpoint, :event, participation.event.uuid) %>
<% end %> <% end %>
<% else %> <% else %>
<%= DateTime.shift_zone!(@participation.event.begins_on, @timezone) |> datetime_to_time_string(@locale) %> - <%= @participation.event.title %> <%= Routes.page_url(Mobilizon.Web.Endpoint, :event, @participation.event.uuid) %> <%= render("date/event_tz_date.text", event: @participation.event, date: @participation.event.begins_on, timezone: @timezone, locale: @locale) %> - <%= @participation.event.title %> <%= Routes.page_url(Mobilizon.Web.Endpoint, :event, @participation.event.uuid) %>
<% end %> <% end %>
<%= ngettext "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button.", "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button.", @total %> <%= ngettext "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button.", "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button.", @total %>

View file

@ -0,0 +1,91 @@
<table style="border-spacing: 0; border-collapse: collapse; vertical-align: baseline; text-align: left; width: 100%; display: table; margin: 0; padding: 0; border: 0;">
<thead style="vertical-align: baseline; margin: 0; padding: 0; border: 0;">
<tr style="vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<td style="word-wrap: break-word; border-collapse: collapse; color: rgb(10,10,10); font-family: Helvetica,Arial,sans-serif; font-weight: normal; line-height: 1.3; font-size: 16px; margin: 0; padding: 0; border: 0;" valign="baseline" align="left">
<div style="vertical-align: baseline; border-bottom-color: rgb(224,224,224); border-bottom-style: solid; margin: 0; padding: 0; border-width: 0 0 1px;">
</div>
</td>
</tr>
</thead>
<tbody style="vertical-align: baseline; margin: 0; padding: 0; border: 0;">
<tr style="vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<td style="word-wrap: break-word; border-collapse: collapse; color: rgb(10,10,10); font-family: Helvetica,Arial,sans-serif; font-weight: normal; line-height: 1.3; font-size: 16px; margin: 0; padding: 16px 0; border: 0;" valign="middle" align="left">
<div style="vertical-align: baseline; margin: 0 0 0 10px; padding: 0; border: 0;">
<div class="event__content_info" style="vertical-align: baseline; display: inline-block; margin: 0; padding: 0; border: 0;">
<table style="border-spacing: 0; border-collapse: collapse; vertical-align: baseline; text-align: left; margin: 0; padding: 0; border: 0;">
<tbody style="vertical-align: baseline; margin: 0; padding: 0; border: 0;">
<!-- row for datetime -->
<tr style="vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<td style="word-wrap: break-word; border-collapse: collapse; color: rgb(10,10,10); font-family: Helvetica,Arial,sans-serif; font-weight: normal; line-height: 1.3; font-size: 16px; margin: 0; padding: 0 12px 24px 0; border: 0;" valign="baseline" align="left">
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAABgAAAAYADwa0LPAAAAf0lEQVRIx2NgGEDwH4opUsdEa1eiW+DNwMDwBM1F/wlgZHWPGRgYPPFZ+JgIAwnhR8gGMmIJT2oAuLl0jwOqAxZCXiQRYATx0A+iAYsDfABbUsYZZ0M/iIa+BeREMkmZkO5B9ARKk1tUMzBAinycwJOBsjrhEQMDgwetQ2WYAQCSDEUsvZlgYAAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMS0xMC0xNFQxNDo1MTowNyswMDowMCvAzKIAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjEtMTAtMTRUMTQ6NTE6MDcrMDA6MDBanXQeAAAAAElFTkSuQmCC" style="outline: none; text-decoration: none; width: 21px; max-width: 100%; clear: both; display: block; vertical-align: baseline; margin: 0; padding: 0; border: 0;">
</td>
<td style="word-wrap: break-word; border-collapse: collapse; color: rgb(10,10,10); font-family: Helvetica,Arial,sans-serif; font-weight: normal; line-height: 1.3; font-size: 16px; margin: 0; padding: 0 0 12px; border: 0;" valign="top" align="left">
<p style="color: rgb(87,100,108); font-family: Helvetica,Arial,sans-serif; font-weight: 300; line-height: 1.5; font-size: 16px; vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<%= render("date/event_tz_date_range.html", event: @event, start_date: datetime_tz_convert(@event.begins_on, @event.options.timezone), end_date: datetime_tz_convert(@event.ends_on, @event.options.timezone), timezone: @timezone, locale: @locale) %>
</p>
</td>
</tr>
<!-- row for datetime end -->
<%= if @event.physical_address do %>
<!-- venue block -->
<tr style="vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<td style="word-wrap: break-word; border-collapse: collapse; color: rgb(10,10,10); font-family: Helvetica,Arial,sans-serif; font-weight: normal; line-height: 1.3; font-size: 16px; margin: 0; padding: 0 12px 24px 0; border: 0;" valign="baseline" align="left">
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAABgAAAAYADwa0LPAAABHklEQVRIx+XUsUoDQRQF0EMUtNPGYGsULMTeNuonqJ8SsNZ/kLSW/kEaLQykMvoJNoKdGkWCQrTYDS6b3c1O1i4XbjHz3rt35u2+YR5Qxznu8RGzj7M4VgnHGOAnhwMcVREfFYiPOZrFpD7l5Gm+YS1LaCHH4BSHqb1XXOIOW1hOxJYwxE3ZGzykTviCjUS8ERsmc/ohLXpPFV9k5LRNfvAJ1HIMvkrk1abUFKKX0aJGIr6Z0aJeltBijsEt9hLrVVGPr+L1CVYyakpjR/lfdMzdEAPoBoh3Q8XhIMBgfxYD6JQQ78wqTjSxnwXiQ2xXMYBWgUGrqjjRQGW16lr+WxaMOp4S4s9Y/y/xMZr4jtksWxRyxUfRk9HxN9FzgF/m1ZTuGrd6hAAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMS0xMC0xNFQxNDo1Mjo0NyswMDowMES9eVsAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjEtMTAtMTRUMTQ6NTI6NDcrMDA6MDA14MHnAAAAAElFTkSuQmCC" style="outline: none; text-decoration: none; width: 21px; max-width: 100%; clear: both; display: block; vertical-align: baseline; margin: 0; padding: 0; border: 0;">
</td>
<td class="m_8261046153705514309event__content_local" style="word-wrap: break-word; border-collapse: collapse; color: rgb(10,10,10); font-family: Helvetica,Arial,sans-serif; font-weight: normal; line-height: 1.3; font-size: 16px; margin: 0; padding: 0; border: 0;" valign="top" align="left">
<p style="color: rgb(87,100,108); font-family: Helvetica,Arial,sans-serif; font-weight: 300; line-height: 1.5; font-size: 16px; vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<%= render_address(@event.physical_address) %>
</p>
</td>
</tr>
<!-- venue block end -->
<% end %>
<%= if @event.options.is_online do %>
<tr style="vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<td style="word-wrap: break-word; border-collapse: collapse; color: rgb(10,10,10); font-family: Helvetica,Arial,sans-serif; font-weight: normal; line-height: 1.3; font-size: 16px; margin: 0; padding: 0 12px 24px 0; border: 0;" valign="baseline" align="left">
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAABgAAAAYADwa0LPAAABWUlEQVRIx+WUP04CURDGf5pIQsROOAMHsNSgVmpp9AZ6AG1MiA1CsZ6DCxiwMx5BtKNQGs2uLf9aFov9DC8s++ftNiZOMpmdnW/mm8x78+A/SAVoAa/AVNoDmorlknNgDMwjdAyc5Snuq9ADUAM2pftARzE/C0nF6PwmBlcXZgSUbQhaRucABeAe8AAXcPQPoCvsnQ3Bm5Jq8h3C83cUO5DfsyGYKKkk31tB8K3YFosDD8l6BME8wQeYya7FYCIJBrI7su0VmPYSZoCFNNVRR36BYOYu4UN+FLZhQ2Be03oM7laYIbBtQwDB8vwuWpfgtpSkh0bnPnBqW9wkGRH9VAzzFC/KlgmW6IXg+k703TDGUrQtfgK8A7spsHvAh3JSyQbQN8bwBFwAVRaPXRW4BJ4NXF+5iXIdM/MkvUpD4OUgcJeLrdrkGdklVe4x8JWh+0/gKEdzf1R+ADQolKDXzQqjAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIxLTEwLTE1VDEzOjA5OjAzKzAwOjAwbhSTzgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMS0xMC0xNVQxMzowOTowMyswMDowMB9JK3IAAAAASUVORK5CYII=" style="outline: none; text-decoration: none; width: 21px; max-width: 100%; clear: both; display: block; vertical-align: baseline; margin: 0; padding: 0; border: 0;">
</td>
<td class="m_8261046153705514309event__content_local" style="word-wrap: break-word; border-collapse: collapse; color: rgb(10,10,10); font-family: Helvetica,Arial,sans-serif; font-weight: normal; line-height: 1.3; font-size: 16px; margin: 0; padding: 0; border: 0;" valign="top" align="left">
<p style="color: rgb(87,100,108); font-family: Helvetica,Arial,sans-serif; font-weight: 300; line-height: 1.5; font-size: 16px; vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<%= gettext "Online event" %>
</p>
</td>
</tr>
<% end %>
</tbody>
</table>
</div>
<div class="event__content_attend" style="vertical-align: middle; margin: 0; padding: 0; border: 0;">
<table class="button btn-attend event__content_position" style="border-spacing: 0; border-collapse: collapse; vertical-align: baseline; text-align: left; width: auto; margin: 0; padding: 0; border: 0;">
<tbody style="vertical-align: baseline; margin: 0; padding: 0; border: 0;">
<tr style="vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<td style="word-wrap: break-word; border-collapse: collapse; color: rgb(10,10,10); font-family: Helvetica,Arial,sans-serif; font-weight: normal; line-height: 1.3; font-size: 16px; margin: 0; padding: 0; border: 0;" valign="baseline" align="left">
<table style="border-spacing: 0; border-collapse: collapse; vertical-align: baseline; text-align: left; margin: 0; padding: 0; border: 0;">
<tbody style="vertical-align: baseline; margin: 0; padding: 0; border: 0;">
<tr style="vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<td style="word-wrap: break-word; border-collapse: collapse; color: rgb(255,255,255); font-family: Helvetica,Arial,sans-serif; font-weight: 500; line-height: 1.3; font-size: 16px; border-radius: 4px; margin: 0; padding: 0px; border: none;" valign="middle" bgcolor="FE3859" align="center">
<a href={Routes.page_url(Mobilizon.Web.Endpoint, :event, @event.uuid)} style="color: rgb(255,255,255); font-family: Helvetica,Arial,sans-serif; font-weight: bold; text-align: left; line-height: 14px; text-decoration: none; vertical-align: baseline; font-size: 16px; display: inline-block; border-radius: 3px; white-space: nowrap; margin: 0; padding: 12px 32px; border: none;" target="_blank">
<%= gettext("Manage your participation") %>
</a>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</td>
</tr>
</tbody>
<tfoot style="vertical-align: baseline; margin: 0; padding: 0; border: 0;">
<tr style="vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<td style="word-wrap: break-word; border-collapse: collapse; color: rgb(10,10,10); font-family: Helvetica,Arial,sans-serif; font-weight: normal; line-height: 1.3; font-size: 16px; margin: 0; padding: 0; border: 0;" valign="baseline" align="left">
<div style="vertical-align: baseline; border-bottom-color: rgb(224,224,224); border-bottom-style: solid; margin: 0; padding: 0; border-width: 0 0 1px;">
</div>
</td>
</tr>
</tfoot>
</table>

View file

@ -0,0 +1,12 @@
<table style="border-spacing: 0; border-collapse: collapse; vertical-align: baseline; text-align: left; width: 100%; display: table; height: 180px; margin: 0 0 24px; padding: 0; border: 0;">
<tbody style="vertical-align: baseline; margin: 0; padding: 0; border: 0;">
<tr style="vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<td style="word-wrap: break-word; border-collapse: collapse; color: rgb(10,10,10); font-family: Helvetica,Arial,sans-serif; font-weight: normal; line-height: 1.3; font-size: 16px; margin: 0; padding: 0; border: 0;" valign="baseline" align="left">
<a href={Routes.page_url(Mobilizon.Web.Endpoint, :event, @event.uuid)} style="color: rgb(87,100,108); font-family: Helvetica,Arial,sans-serif; font-weight: normal; text-align: left; line-height: 1.3; text-decoration: none; vertical-align: baseline; margin: 0; padding: 0; border: 0;" target="_blank">
<div class="event-intro__banner_photo" style={"vertical-align: baseline; height: 180px; background: url(#{@event.picture.file.url}) center 40% / cover; margin: -1px -1px 10px; padding: 0; border: 0;"}>
</div>
</a>
</td>
</tr>
</tbody>
</table>

View file

@ -0,0 +1,33 @@
<table style="border-spacing: 0; border-collapse: collapse; vertical-align: baseline; text-align: left; width: 100%; display: table; margin: 0; padding: 0; border: 0;">
<tbody style="vertical-align: baseline; margin: 0; padding: 0; border: 0;">
<tr style="vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<td style="word-wrap: break-word; border-collapse: collapse; color: rgb(10,10,10); font-family: Helvetica,Arial,sans-serif; font-weight: normal; line-height: 1.3; font-size: 16px; margin: 0; padding: 0; border: 0;" valign="baseline" align="left">
<div style="vertical-align: baseline; width: 100%; margin: 0 0 0 10px; padding: 0; border: 0;display: flex;">
<%= cond do %>
<% @event.attributed_to != nil and @event.attributed_to.avatar != nil && @event.attributed_to.avatar.url != nil -> %>
<img style="float: left;border-radius: 75%;margin-right: 8px;max-width: 30px;margin-top: auto;margin-bottom: auto;" src={@event.attributed_to.avatar.url}>
<% @event.organizer_actor.avatar != nil and @event.organizer_actor.avatar.url != nil -> %>
<img style="float: left;border-radius: 75%;margin-right: 8px;max-width: 30px;margin-top: auto;margin-bottom: auto;" src={@event.organizer_actor.avatar.url}>
<% true -> %>
<% end %>
<div class="event-info__title" style="vertical-align: top; float: left; width: 75%; margin: 0; padding: 0; border: 0;">
<a href={Routes.page_url(Mobilizon.Web.Endpoint, :event, @event.uuid)} style="color: rgb(66,81,90); font-family: Helvetica,Arial,sans-serif; font-weight: 700; text-align: left; line-height: 1.4; text-decoration: none; vertical-align: baseline; font-size: 22px; letter-spacing: 0.2px; margin: 0 0 30px; padding: 0; border: 0;" target="_blank">
<%= @event.title %>
</a>
<p style="color: rgb(254,56,89); font-family: Helvetica,Arial,sans-serif; font-weight: 400; line-height: 1.5; font-size: 16px; vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<%= if @event.attributed_to do %>
<a href={Routes.page_url(:actor, Mobilizon.Actors.Actor.preferred_username_and_domain(@event.attributed_to))} style="color: rgb(254,56,89); font-family: Helvetica,Arial,sans-serif; font-weight: normal; text-align: left; line-height: 1.3; text-decoration: none; vertical-align: baseline; margin: 0; padding: 0; border: 0;" target="_blank">
<%= @event.attributed_to.name || @event.attributed_to.preferred_username %>
</a>
<% else %>
<span style="color: rgb(254,56,89); font-family: Helvetica,Arial,sans-serif; font-weight: normal; text-align: left; line-height: 1.3; text-decoration: none; vertical-align: baseline; margin: 0; padding: 0; border: 0;">
<%= @event.organizer_actor.name || @event.organizer_actor.preferred_username %>
</span>
<% end %>
</p>
</div>
</div>
</td>
</tr>
</tbody>
</table>

View file

@ -0,0 +1,24 @@
<%= if @event.picture do %>
<!-- event image -->
<%= render("participation/card/_picture.html", event: @event) %>
<!-- event image end -->
<% end %>
<%= render("participation/card/_title.html", event: @event) %>
<%= render("participation/card/_metadata.html", event: @event, timezone: @timezone, locale: @locale) %>
<%= if @event.description do %>
<div class="event-working" style="vertical-align: baseline; width: 450px; margin: 0 0 0 10px; padding: 7.5px 0 15px; border: 0;">
<p style="color: rgb(46,62,72); font-family: Helvetica,Arial,sans-serif; font-weight: 700; line-height: 1.5; font-size: 16px; vertical-align: baseline; margin: 0; padding: 0 0 7.5px; border: 0;" align="left">
<%= gettext("Details") %>
</p>
<p class="event-working__detail" style="color: rgb(87,100,108); font-family: Helvetica,Arial,sans-serif; font-weight: 300; line-height: 1.5; font-size: 16px; vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<%= process_description(@event.description) %>
</p>
<%= if String.length(@event.description) > 200 do %>
<p style="color: rgb(10,10,10); font-family: Helvetica,Arial,sans-serif; font-weight: normal; line-height: 1.3; font-size: 16px; vertical-align: baseline; margin: 0; padding: 0; border: 0;" align="left">
<a href={Routes.page_url(Mobilizon.Web.Endpoint, :event, @event.uuid)} style="color: rgb(254,56,89); font-family: Helvetica,Arial,sans-serif; font-weight: 400; text-align: left; line-height: 1.5; text-decoration: none; vertical-align: baseline; font-size: 16px; margin: 0; padding: 0; border: 0;" target="_blank">
<%= gettext("Read more") %>
</a>
</p>
<% end %>
</div>
<% end %>

View file

@ -57,7 +57,7 @@
<td bgcolor="#ffffff" align="center" style="padding: 20px 30px 60px 30px;"> <td bgcolor="#ffffff" align="center" style="padding: 20px 30px 60px 30px;">
<table border="0" cellspacing="0" cellpadding="0"> <table border="0" cellspacing="0" cellpadding="0">
<tr> <tr>
<td align="center" style="border-radius: 3px;" bgcolor="#474467"><a href={"#{ "#{Mobilizon.Web.Endpoint.url()}/password-reset/#{@token}" }"} target="_blank" style="font-size: 20px; font-family: Helvetica, Arial, sans-serif; color: #ffffff; text-decoration: none; color: #ffffff; text-decoration: none; padding: 15px 25px; border-radius: 2px; border: 1px solid #474467; display: inline-block;"> <td align="center" style="border-radius: 3px;" bgcolor="#474467"><a href={"#{Mobilizon.Web.Endpoint.url()}/password-reset/#{@token}"} target="_blank" style="font-size: 20px; font-family: Helvetica, Arial, sans-serif; color: #ffffff; text-decoration: none; color: #ffffff; text-decoration: none; padding: 15px 25px; border-radius: 2px; border: 1px solid #474467; display: inline-block;">
<%= gettext "Reset Password" %> <%= gettext "Reset Password" %>
</a></td> </a></td>
</tr> </tr>

View file

@ -1,8 +1,10 @@
defmodule Mobilizon.Web.EmailView do defmodule Mobilizon.Web.EmailView do
use Mobilizon.Web, :view use Mobilizon.Web, :view
alias Mobilizon.Service.Address
alias Mobilizon.Service.DateTime, as: DateTimeRenderer alias Mobilizon.Service.DateTime, as: DateTimeRenderer
import Mobilizon.Web.Gettext import Mobilizon.Web.Gettext
import Mobilizon.Service.Metadata.Utils, only: [process_description: 1]
defdelegate datetime_to_string(datetime, locale \\ "en", format \\ :medium), defdelegate datetime_to_string(datetime, locale \\ "en", format \\ :medium),
to: DateTimeRenderer to: DateTimeRenderer
@ -10,6 +12,11 @@ defmodule Mobilizon.Web.EmailView do
defdelegate datetime_to_time_string(datetime, locale \\ "en", format \\ :short), defdelegate datetime_to_time_string(datetime, locale \\ "en", format \\ :short),
to: DateTimeRenderer to: DateTimeRenderer
defdelegate datetime_to_date_string(datetime, locale \\ "en", format \\ :short),
to: DateTimeRenderer
defdelegate datetime_tz_convert(datetime, timezone), to: DateTimeRenderer defdelegate datetime_tz_convert(datetime, timezone), to: DateTimeRenderer
defdelegate datetime_relative(datetime, locale \\ "en"), to: DateTimeRenderer defdelegate datetime_relative(datetime, locale \\ "en"), to: DateTimeRenderer
defdelegate render_address(address), to: Address
defdelegate is_same_day?(one, two), to: DateTimeRenderer
end end

View file

@ -3,10 +3,11 @@ defmodule Mobilizon.Web.JsonLD.ObjectView do
alias Mobilizon.Actors.Actor alias Mobilizon.Actors.Actor
alias Mobilizon.Addresses.Address alias Mobilizon.Addresses.Address
alias Mobilizon.Events.Event alias Mobilizon.Events.{Event, Participant, ParticipantRole}
alias Mobilizon.Posts.Post alias Mobilizon.Posts.Post
alias Mobilizon.Web.Endpoint alias Mobilizon.Web.Endpoint
alias Mobilizon.Web.JsonLD.ObjectView alias Mobilizon.Web.JsonLD.ObjectView
alias Mobilizon.Web.Router.Helpers, as: Routes
@spec render(String.t(), map()) :: map() @spec render(String.t(), map()) :: map()
def render("group.json", %{group: %Actor{} = group}) do def render("group.json", %{group: %Actor{} = group}) do
@ -25,6 +26,13 @@ defmodule Mobilizon.Web.JsonLD.ObjectView do
"name" => Actor.display_name(event.organizer_actor) "name" => Actor.display_name(event.organizer_actor)
} }
organizer =
if event.organizer_actor.avatar do
Map.put(organizer, "image", event.organizer_actor.avatar.url)
else
organizer
end
json_ld = %{ json_ld = %{
"@context" => "https://schema.org", "@context" => "https://schema.org",
"@type" => "Event", "@type" => "Event",
@ -94,6 +102,35 @@ defmodule Mobilizon.Web.JsonLD.ObjectView do
} }
end end
def render("participation.json", %{
participant: %Participant{} = participant
}) do
res = %{
"@context" => "http://schema.org",
"@type" => "EventReservation",
"underName" => %{
"@type" => "Person",
"name" => participant.actor.name || participant.actor.preferred_username
},
"reservationFor" => render("event.json", %{event: participant.event}),
"reservationStatus" => reservation_status(participant.role),
"modifiedTime" => participant.updated_at,
"modifyReservationUrl" => Routes.page_url(Endpoint, :event, participant.event.uuid)
}
if participant.code do
Map.put(res, "reservationNumber", participant.code)
else
res
end
end
@spec reservation_status(ParticipantRole.t()) :: String.t()
defp reservation_status(:rejected), do: "https://schema.org/ReservationCancelled"
defp reservation_status(:not_confirmed), do: "https://schema.org/ReservationPending"
defp reservation_status(:not_approved), do: "https://schema.org/ReservationHold"
defp reservation_status(_), do: "https://schema.org/ReservationConfirmed"
@spec render_location(map()) :: map() | nil @spec render_location(map()) :: map() | nil
defp render_location(%{physical_address: %Address{} = address}), defp render_location(%{physical_address: %Address{} = address}),
do: render_one(address, ObjectView, "place.json", as: :address) do: render_one(address, ObjectView, "place.json", as: :address)

View file

@ -201,12 +201,13 @@ defmodule Mobilizon.Mixfile do
{:html_entities, "~> 0.5"}, {:html_entities, "~> 0.5"},
{:sweet_xml, "~> 0.7"}, {:sweet_xml, "~> 0.7"},
{:web_push_encryption, "~> 0.3"}, {:web_push_encryption, "~> 0.3"},
{:eblurhash, "~> 1.2"}, {:eblurhash, "1.2.0"},
{:struct_access, "~> 1.1.2"}, {:struct_access, "~> 1.1.2"},
{:paasaa, "~> 0.5.0"}, {:paasaa, "~> 0.5.0"},
{:nimble_csv, "~> 1.1"}, {:nimble_csv, "~> 1.1"},
{:export, "~> 0.1.0"}, {:export, "~> 0.1.0"},
{:tz_world, "~> 0.5.0"}, {:tz_world, "~> 0.7.0"},
{:tzdata, "~> 1.1"},
# Dev and test dependencies # Dev and test dependencies
{:phoenix_live_reload, "~> 1.2", only: [:dev, :e2e]}, {:phoenix_live_reload, "~> 1.2", only: [:dev, :e2e]},
{:ex_machina, "~> 2.3", only: [:dev, :test]}, {:ex_machina, "~> 2.3", only: [:dev, :test]},

View file

@ -20,18 +20,18 @@
"cowlib": {:hex, :cowlib, "2.11.0", "0b9ff9c346629256c42ebe1eeb769a83c6cb771a6ee5960bd110ab0b9b872063", [:make, :rebar3], [], "hexpm", "2b3e9da0b21c4565751a6d4901c20d1b4cc25cbb7fd50d91d2ab6dd287bc86a9"}, "cowlib": {:hex, :cowlib, "2.11.0", "0b9ff9c346629256c42ebe1eeb769a83c6cb771a6ee5960bd110ab0b9b872063", [:make, :rebar3], [], "hexpm", "2b3e9da0b21c4565751a6d4901c20d1b4cc25cbb7fd50d91d2ab6dd287bc86a9"},
"credo": {:hex, :credo, "1.5.6", "e04cc0fdc236fefbb578e0c04bd01a471081616e741d386909e527ac146016c6", [:mix], [{:bunt, "~> 0.2.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:file_system, "~> 0.2.8", [hex: :file_system, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "4b52a3e558bd64e30de62a648518a5ea2b6e3e5d2b164ef5296244753fc7eb17"}, "credo": {:hex, :credo, "1.5.6", "e04cc0fdc236fefbb578e0c04bd01a471081616e741d386909e527ac146016c6", [:mix], [{:bunt, "~> 0.2.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:file_system, "~> 0.2.8", [hex: :file_system, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "4b52a3e558bd64e30de62a648518a5ea2b6e3e5d2b164ef5296244753fc7eb17"},
"dataloader": {:hex, :dataloader, "1.0.7", "58351b335673cf40601429bfed6c11fece6ce7ad169b2ac0f0fe83e716587391", [:mix], [{:ecto, ">= 0.0.0", [hex: :ecto, repo: "hexpm", optional: true]}], "hexpm", "12bf66478e4a5085d09dc96932d058c206ee8c219cc7691d12a40dc35c8cefaa"}, "dataloader": {:hex, :dataloader, "1.0.7", "58351b335673cf40601429bfed6c11fece6ce7ad169b2ac0f0fe83e716587391", [:mix], [{:ecto, ">= 0.0.0", [hex: :ecto, repo: "hexpm", optional: true]}], "hexpm", "12bf66478e4a5085d09dc96932d058c206ee8c219cc7691d12a40dc35c8cefaa"},
"db_connection": {:hex, :db_connection, "2.4.0", "d04b1b73795dae60cead94189f1b8a51cc9e1f911c234cc23074017c43c031e5", [:mix], [{:connection, "~> 1.0", [hex: :connection, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ad416c21ad9f61b3103d254a71b63696ecadb6a917b36f563921e0de00d7d7c8"}, "db_connection": {:hex, :db_connection, "2.4.1", "6411f6e23f1a8b68a82fa3a36366d4881f21f47fc79a9efb8c615e62050219da", [:mix], [{:connection, "~> 1.0", [hex: :connection, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ea36d226ec5999781a9a8ad64e5d8c4454ecedc7a4d643e4832bf08efca01f00"},
"decimal": {:hex, :decimal, "2.0.0", "a78296e617b0f5dd4c6caf57c714431347912ffb1d0842e998e9792b5642d697", [:mix], [], "hexpm", "34666e9c55dea81013e77d9d87370fe6cb6291d1ef32f46a1600230b1d44f577"}, "decimal": {:hex, :decimal, "2.0.0", "a78296e617b0f5dd4c6caf57c714431347912ffb1d0842e998e9792b5642d697", [:mix], [], "hexpm", "34666e9c55dea81013e77d9d87370fe6cb6291d1ef32f46a1600230b1d44f577"},
"dialyxir": {:hex, :dialyxir, "1.1.0", "c5aab0d6e71e5522e77beff7ba9e08f8e02bad90dfbeffae60eaf0cb47e29488", [:mix], [{:erlex, ">= 0.2.6", [hex: :erlex, repo: "hexpm", optional: false]}], "hexpm", "07ea8e49c45f15264ebe6d5b93799d4dd56a44036cf42d0ad9c960bc266c0b9a"}, "dialyxir": {:hex, :dialyxir, "1.1.0", "c5aab0d6e71e5522e77beff7ba9e08f8e02bad90dfbeffae60eaf0cb47e29488", [:mix], [{:erlex, ">= 0.2.6", [hex: :erlex, repo: "hexpm", optional: false]}], "hexpm", "07ea8e49c45f15264ebe6d5b93799d4dd56a44036cf42d0ad9c960bc266c0b9a"},
"doctor": {:hex, :doctor, "0.18.0", "114934c1740239953208a39db617699b7e2660770e81129d7f95cdf7837ab766", [:mix], [{:decimal, "~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}], "hexpm", "829c88c365f72c0666e443ea670ffb6f180de7b90c23d536edabdd8c722b88f4"}, "doctor": {:hex, :doctor, "0.18.0", "114934c1740239953208a39db617699b7e2660770e81129d7f95cdf7837ab766", [:mix], [{:decimal, "~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}], "hexpm", "829c88c365f72c0666e443ea670ffb6f180de7b90c23d536edabdd8c722b88f4"},
"earmark": {:hex, :earmark, "1.4.16", "2188754e590a3c379fdd2783bb44eedd8c54968fa0256b6f336f6d56b089d793", [:mix], [{:earmark_parser, ">= 1.4.16", [hex: :earmark_parser, repo: "hexpm", optional: false]}], "hexpm", "46f853f7ae10bee06923430dca522ba9dcbdc6b7a9729748e8dd5344d21b8418"}, "earmark": {:hex, :earmark, "1.4.16", "2188754e590a3c379fdd2783bb44eedd8c54968fa0256b6f336f6d56b089d793", [:mix], [{:earmark_parser, ">= 1.4.16", [hex: :earmark_parser, repo: "hexpm", optional: false]}], "hexpm", "46f853f7ae10bee06923430dca522ba9dcbdc6b7a9729748e8dd5344d21b8418"},
"earmark_parser": {:hex, :earmark_parser, "1.4.16", "607709303e1d4e3e02f1444df0c821529af1c03b8578dfc81bb9cf64553d02b9", [:mix], [], "hexpm", "69fcf696168f5a274dd012e3e305027010658b2d1630cef68421d6baaeaccead"}, "earmark_parser": {:hex, :earmark_parser, "1.4.16", "607709303e1d4e3e02f1444df0c821529af1c03b8578dfc81bb9cf64553d02b9", [:mix], [], "hexpm", "69fcf696168f5a274dd012e3e305027010658b2d1630cef68421d6baaeaccead"},
"eblurhash": {:hex, :eblurhash, "1.2.1", "36b187459244f5374bb7f47fd0b3001ee3f74d72b18bb04b00cdb7080cdf70f2", [:rebar3], [], "hexpm", "c0b168e734562f8edf1f0abf145b95f93e7657187e1bfaacc32a5714921e920b"}, "eblurhash": {:hex, :eblurhash, "1.2.0", "ff461979542fcb1bfd428aaba6ee56e544975f6d657aa3dfcf3e314b1d1c2517", [:rebar3], [], "hexpm", "8fa6b740f1630adc0a3e425dbbb4ff92d036e62eb973e7a06676226137a10aa7"},
"ecto": {:hex, :ecto, "3.7.1", "a20598862351b29f80f285b21ec5297da1181c0442687f9b8329f0445d228892", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "d36e5b39fc479e654cffd4dbe1865d9716e4a9b6311faff799b6f90ab81b8638"}, "ecto": {:hex, :ecto, "3.7.1", "a20598862351b29f80f285b21ec5297da1181c0442687f9b8329f0445d228892", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "d36e5b39fc479e654cffd4dbe1865d9716e4a9b6311faff799b6f90ab81b8638"},
"ecto_autoslug_field": {:hex, :ecto_autoslug_field, "3.0.0", "37fbc2f07e6691136afff246f2cf5b159ad395b665a55d06db918975fd2397db", [:mix], [{:ecto, ">= 3.7.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:slugger, ">= 0.3.0", [hex: :slugger, repo: "hexpm", optional: false]}], "hexpm", "8ec252c7cf85f13132062f56a484d6a0ef1f981f7be9ce4ad7e9546dd8c0cc0f"}, "ecto_autoslug_field": {:hex, :ecto_autoslug_field, "3.0.0", "37fbc2f07e6691136afff246f2cf5b159ad395b665a55d06db918975fd2397db", [:mix], [{:ecto, ">= 3.7.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:slugger, ">= 0.3.0", [hex: :slugger, repo: "hexpm", optional: false]}], "hexpm", "8ec252c7cf85f13132062f56a484d6a0ef1f981f7be9ce4ad7e9546dd8c0cc0f"},
"ecto_enum": {:hex, :ecto_enum, "1.4.0", "d14b00e04b974afc69c251632d1e49594d899067ee2b376277efd8233027aec8", [:mix], [{:ecto, ">= 3.0.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:ecto_sql, "> 3.0.0", [hex: :ecto_sql, repo: "hexpm", optional: false]}, {:mariaex, ">= 0.0.0", [hex: :mariaex, repo: "hexpm", optional: true]}, {:postgrex, ">= 0.0.0", [hex: :postgrex, repo: "hexpm", optional: true]}], "hexpm", "8fb55c087181c2b15eee406519dc22578fa60dd82c088be376d0010172764ee4"}, "ecto_enum": {:hex, :ecto_enum, "1.4.0", "d14b00e04b974afc69c251632d1e49594d899067ee2b376277efd8233027aec8", [:mix], [{:ecto, ">= 3.0.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:ecto_sql, "> 3.0.0", [hex: :ecto_sql, repo: "hexpm", optional: false]}, {:mariaex, ">= 0.0.0", [hex: :mariaex, repo: "hexpm", optional: true]}, {:postgrex, ">= 0.0.0", [hex: :postgrex, repo: "hexpm", optional: true]}], "hexpm", "8fb55c087181c2b15eee406519dc22578fa60dd82c088be376d0010172764ee4"},
"ecto_shortuuid": {:hex, :ecto_shortuuid, "0.1.3", "d36aede64edf256e4b769be2ad15a8ad5d9d1ff8ad46befe39e8cb4489abcd05", [:mix], [{:ecto, "~> 2.2 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:shortuuid, "~> 2.1.1", [hex: :shortuuid, repo: "hexpm", optional: false]}], "hexpm", "d215c8ced7125265de94d55abc696125942caef33439cf281fafded9744a4294"}, "ecto_shortuuid": {:hex, :ecto_shortuuid, "0.1.3", "d36aede64edf256e4b769be2ad15a8ad5d9d1ff8ad46befe39e8cb4489abcd05", [:mix], [{:ecto, "~> 2.2 or ~> 3.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:shortuuid, "~> 2.1.1", [hex: :shortuuid, repo: "hexpm", optional: false]}], "hexpm", "d215c8ced7125265de94d55abc696125942caef33439cf281fafded9744a4294"},
"ecto_sql": {:hex, :ecto_sql, "3.7.0", "2fcaad4ab0c8d76a5afbef078162806adbe709c04160aca58400d5cbbe8eeac6", [:mix], [{:db_connection, "~> 2.2", [hex: :db_connection, repo: "hexpm", optional: false]}, {:ecto, "~> 3.7.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:myxql, "~> 0.4.0 or ~> 0.5.0", [hex: :myxql, repo: "hexpm", optional: true]}, {:postgrex, "~> 0.15.0 or ~> 1.0", [hex: :postgrex, repo: "hexpm", optional: true]}, {:tds, "~> 2.1.1", [hex: :tds, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4.0 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "a26135dfa1d99bf87a928c464cfa25bba6535a4fe761eefa56077a4febc60f70"}, "ecto_sql": {:hex, :ecto_sql, "3.7.1", "8de624ef50b2a8540252d8c60506379fbbc2707be1606853df371cf53df5d053", [:mix], [{:db_connection, "~> 2.2", [hex: :db_connection, repo: "hexpm", optional: false]}, {:ecto, "~> 3.7.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:myxql, "~> 0.4.0 or ~> 0.5.0", [hex: :myxql, repo: "hexpm", optional: true]}, {:postgrex, "~> 0.15.0 or ~> 1.0", [hex: :postgrex, repo: "hexpm", optional: true]}, {:tds, "~> 2.1.1 or ~> 2.2", [hex: :tds, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4.0 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "2b42a32e2ce92f64aba5c88617891ab3b0ba34f3f3a503fa20009eae1a401c81"},
"elixir_feed_parser": {:hex, :elixir_feed_parser, "2.1.0", "bb96fb6422158dc7ad59de62ef211cc69d264acbbe63941a64a5dce97bbbc2e6", [:mix], [{:timex, "~> 3.4", [hex: :timex, repo: "hexpm", optional: false]}], "hexpm", "2d3c62fe7b396ee3b73d7160bc8fadbd78bfe9597c98c7d79b3f1038d9cba28f"}, "elixir_feed_parser": {:hex, :elixir_feed_parser, "2.1.0", "bb96fb6422158dc7ad59de62ef211cc69d264acbbe63941a64a5dce97bbbc2e6", [:mix], [{:timex, "~> 3.4", [hex: :timex, repo: "hexpm", optional: false]}], "hexpm", "2d3c62fe7b396ee3b73d7160bc8fadbd78bfe9597c98c7d79b3f1038d9cba28f"},
"elixir_make": {:hex, :elixir_make, "0.6.2", "7dffacd77dec4c37b39af867cedaabb0b59f6a871f89722c25b28fcd4bd70530", [:mix], [], "hexpm", "03e49eadda22526a7e5279d53321d1cced6552f344ba4e03e619063de75348d9"}, "elixir_make": {:hex, :elixir_make, "0.6.2", "7dffacd77dec4c37b39af867cedaabb0b59f6a871f89722c25b28fcd4bd70530", [:mix], [], "hexpm", "03e49eadda22526a7e5279d53321d1cced6552f344ba4e03e619063de75348d9"},
"erlex": {:hex, :erlex, "0.2.6", "c7987d15e899c7a2f34f5420d2a2ea0d659682c06ac607572df55a43753aa12e", [:mix], [], "hexpm", "2ed2e25711feb44d52b17d2780eabf998452f6efda104877a3881c2f8c0c0c75"}, "erlex": {:hex, :erlex, "0.2.6", "c7987d15e899c7a2f34f5420d2a2ea0d659682c06ac607572df55a43753aa12e", [:mix], [], "hexpm", "2ed2e25711feb44d52b17d2780eabf998452f6efda104877a3881c2f8c0c0c75"},
@ -58,7 +58,7 @@
"fast_sanitize": {:hex, :fast_sanitize, "0.2.2", "3cbbaebaea6043865dfb5b4ecb0f1af066ad410a51470e353714b10c42007b81", [:mix], [{:fast_html, "~> 2.0", [hex: :fast_html, repo: "hexpm", optional: false]}, {:plug, "~> 1.8", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "69f204db9250afa94a0d559d9110139850f57de2b081719fbafa1e9a89e94466"}, "fast_sanitize": {:hex, :fast_sanitize, "0.2.2", "3cbbaebaea6043865dfb5b4ecb0f1af066ad410a51470e353714b10c42007b81", [:mix], [{:fast_html, "~> 2.0", [hex: :fast_html, repo: "hexpm", optional: false]}, {:plug, "~> 1.8", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "69f204db9250afa94a0d559d9110139850f57de2b081719fbafa1e9a89e94466"},
"file_info": {:hex, :file_info, "0.0.4", "2e0e77f211e833f38ead22cb29ce53761d457d80b3ffe0ffe0eb93880b0963b2", [:mix], [{:mimetype_parser, "~> 0.1.2", [hex: :mimetype_parser, repo: "hexpm", optional: false]}], "hexpm", "50e7ad01c2c8b9339010675fe4dc4a113b8d6ca7eddce24d1d74fd0e762781a5"}, "file_info": {:hex, :file_info, "0.0.4", "2e0e77f211e833f38ead22cb29ce53761d457d80b3ffe0ffe0eb93880b0963b2", [:mix], [{:mimetype_parser, "~> 0.1.2", [hex: :mimetype_parser, repo: "hexpm", optional: false]}], "hexpm", "50e7ad01c2c8b9339010675fe4dc4a113b8d6ca7eddce24d1d74fd0e762781a5"},
"file_system": {:hex, :file_system, "0.2.10", "fb082005a9cd1711c05b5248710f8826b02d7d1784e7c3451f9c1231d4fc162d", [:mix], [], "hexpm", "41195edbfb562a593726eda3b3e8b103a309b733ad25f3d642ba49696bf715dc"}, "file_system": {:hex, :file_system, "0.2.10", "fb082005a9cd1711c05b5248710f8826b02d7d1784e7c3451f9c1231d4fc162d", [:mix], [], "hexpm", "41195edbfb562a593726eda3b3e8b103a309b733ad25f3d642ba49696bf715dc"},
"floki": {:hex, :floki, "0.31.0", "f05ee8a8e6a3ced4e62beeb2c79a63bc8e12ab98fbaaf6e6a3d9b76b1278e23f", [:mix], [{:html_entities, "~> 0.5.0", [hex: :html_entities, repo: "hexpm", optional: false]}], "hexpm", "b05afa372f5c345a5bf240ac25ea1f0f3d5fcfd7490ac0beeb4a203f9444891e"}, "floki": {:hex, :floki, "0.32.0", "f915dc15258bc997d49be1f5ef7d3992f8834d6f5695270acad17b41f5bcc8e2", [:mix], [{:html_entities, "~> 0.5.0", [hex: :html_entities, repo: "hexpm", optional: false]}], "hexpm", "1c5a91cae1fd8931c26a4826b5e2372c284813904c8bacb468b5de39c7ececbd"},
"gen_smtp": {:hex, :gen_smtp, "1.1.1", "bf9303c31735100631b1d708d629e4c65944319d1143b5c9952054f4a1311d85", [:rebar3], [{:hut, "1.3.0", [hex: :hut, repo: "hexpm", optional: false]}, {:ranch, ">= 1.7.0", [hex: :ranch, repo: "hexpm", optional: false]}], "hexpm", "51bc50cc017efd4a4248cbc39ea30fb60efa7d4a49688986fafad84434ff9ab7"}, "gen_smtp": {:hex, :gen_smtp, "1.1.1", "bf9303c31735100631b1d708d629e4c65944319d1143b5c9952054f4a1311d85", [:rebar3], [{:hut, "1.3.0", [hex: :hut, repo: "hexpm", optional: false]}, {:ranch, ">= 1.7.0", [hex: :ranch, repo: "hexpm", optional: false]}], "hexpm", "51bc50cc017efd4a4248cbc39ea30fb60efa7d4a49688986fafad84434ff9ab7"},
"geo": {:hex, :geo, "3.4.2", "834f106e4ba072f5917920bd7ece42cfe1caa03c7fb278f85ea5d0905c8dc153", [:mix], [{:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "0a9fdad0d5197678cbac85e1dac674528bd90fa923398679a174b541cdf0ec68"}, "geo": {:hex, :geo, "3.4.2", "834f106e4ba072f5917920bd7ece42cfe1caa03c7fb278f85ea5d0905c8dc153", [:mix], [{:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "0a9fdad0d5197678cbac85e1dac674528bd90fa923398679a174b541cdf0ec68"},
"geo_postgis": {:hex, :geo_postgis, "3.4.0", "67815cc9b3db12e378e7a96d0f77d3bc2188534aba4d2c2229e3ebf8370f9d52", [:mix], [{:geo, "~> 3.4", [hex: :geo, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: true]}, {:poison, "~> 2.2 or ~> 3.0 or ~> 4.0", [hex: :poison, repo: "hexpm", optional: true]}, {:postgrex, ">= 0.0.0", [hex: :postgrex, repo: "hexpm", optional: false]}], "hexpm", "23563946ef6e5c747380e6a7a0493b0a631e91d0452314ee7e33354f4fdf5230"}, "geo_postgis": {:hex, :geo_postgis, "3.4.0", "67815cc9b3db12e378e7a96d0f77d3bc2188534aba4d2c2229e3ebf8370f9d52", [:mix], [{:geo, "~> 3.4", [hex: :geo, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: true]}, {:poison, "~> 2.2 or ~> 3.0 or ~> 4.0", [hex: :poison, repo: "hexpm", optional: true]}, {:postgrex, ">= 0.0.0", [hex: :postgrex, repo: "hexpm", optional: false]}], "hexpm", "23563946ef6e5c747380e6a7a0493b0a631e91d0452314ee7e33354f4fdf5230"},
@ -85,7 +85,7 @@
"junit_formatter": {:hex, :junit_formatter, "3.3.0", "bd7914d92885f7cf949dbe1dc6bacf76badfb2c1f5f7b3f9433c20e5b6ec42c8", [:mix], [], "hexpm", "4d040410925324b155ae4c7d41e884a0cdebe53b917bee4f22adf152e987a666"}, "junit_formatter": {:hex, :junit_formatter, "3.3.0", "bd7914d92885f7cf949dbe1dc6bacf76badfb2c1f5f7b3f9433c20e5b6ec42c8", [:mix], [], "hexpm", "4d040410925324b155ae4c7d41e884a0cdebe53b917bee4f22adf152e987a666"},
"linkify": {:hex, :linkify, "0.5.1", "6dc415cbc948b2f6ecec7cb226aab7ba9d3a1815bb501ae33e042334d707ecee", [:mix], [], "hexpm", "a3128c7e22fada4aa7214009501d8131e1fa3faf2f0a68b33dba379dc84ff944"}, "linkify": {:hex, :linkify, "0.5.1", "6dc415cbc948b2f6ecec7cb226aab7ba9d3a1815bb501ae33e042334d707ecee", [:mix], [], "hexpm", "a3128c7e22fada4aa7214009501d8131e1fa3faf2f0a68b33dba379dc84ff944"},
"makeup": {:hex, :makeup, "1.0.5", "d5a830bc42c9800ce07dd97fa94669dfb93d3bf5fcf6ea7a0c67b2e0e4a7f26c", [:mix], [{:nimble_parsec, "~> 0.5 or ~> 1.0", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "cfa158c02d3f5c0c665d0af11512fed3fba0144cf1aadee0f2ce17747fba2ca9"}, "makeup": {:hex, :makeup, "1.0.5", "d5a830bc42c9800ce07dd97fa94669dfb93d3bf5fcf6ea7a0c67b2e0e4a7f26c", [:mix], [{:nimble_parsec, "~> 0.5 or ~> 1.0", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "cfa158c02d3f5c0c665d0af11512fed3fba0144cf1aadee0f2ce17747fba2ca9"},
"makeup_elixir": {:hex, :makeup_elixir, "0.15.1", "b5888c880d17d1cc3e598f05cdb5b5a91b7b17ac4eaf5f297cb697663a1094dd", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.1", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "db68c173234b07ab2a07f645a5acdc117b9f99d69ebf521821d89690ae6c6ec8"}, "makeup_elixir": {:hex, :makeup_elixir, "0.15.2", "dc72dfe17eb240552857465cc00cce390960d9a0c055c4ccd38b70629227e97c", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.1", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "fd23ae48d09b32eff49d4ced2b43c9f086d402ee4fd4fcb2d7fad97fa8823e75"},
"makeup_erlang": {:hex, :makeup_erlang, "0.1.1", "3fcb7f09eb9d98dc4d208f49cc955a34218fc41ff6b84df7c75b3e6e533cc65f", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "174d0809e98a4ef0b3309256cbf97101c6ec01c4ab0b23e926a9e17df2077cbb"}, "makeup_erlang": {:hex, :makeup_erlang, "0.1.1", "3fcb7f09eb9d98dc4d208f49cc955a34218fc41ff6b84df7c75b3e6e533cc65f", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "174d0809e98a4ef0b3309256cbf97101c6ec01c4ab0b23e926a9e17df2077cbb"},
"meck": {:hex, :meck, "0.9.2", "85ccbab053f1db86c7ca240e9fc718170ee5bda03810a6292b5306bf31bae5f5", [:rebar3], [], "hexpm", "81344f561357dc40a8344afa53767c32669153355b626ea9fcbc8da6b3045826"}, "meck": {:hex, :meck, "0.9.2", "85ccbab053f1db86c7ca240e9fc718170ee5bda03810a6292b5306bf31bae5f5", [:rebar3], [], "hexpm", "81344f561357dc40a8344afa53767c32669153355b626ea9fcbc8da6b3045826"},
"metrics": {:hex, :metrics, "1.0.1", "25f094dea2cda98213cecc3aeff09e940299d950904393b2a29d191c346a8486", [:rebar3], [], "hexpm", "69b09adddc4f74a40716ae54d140f93beb0fb8978d8636eaded0c31b6f099f16"}, "metrics": {:hex, :metrics, "1.0.1", "25f094dea2cda98213cecc3aeff09e940299d950904393b2a29d191c346a8486", [:rebar3], [], "hexpm", "69b09adddc4f74a40716ae54d140f93beb0fb8978d8636eaded0c31b6f099f16"},
@ -96,7 +96,7 @@
"mmdb2_decoder": {:hex, :mmdb2_decoder, "3.0.0", "54828676a36e75e9a25bc9a0bb0598d4c7fcc767bf0b40674850b22e05b7b6cc", [:mix], [], "hexpm", "359dc9242915538d1dceb9f6d96c72201dca76ce62e49d22e2ed1e86f20bea8e"}, "mmdb2_decoder": {:hex, :mmdb2_decoder, "3.0.0", "54828676a36e75e9a25bc9a0bb0598d4c7fcc767bf0b40674850b22e05b7b6cc", [:mix], [], "hexpm", "359dc9242915538d1dceb9f6d96c72201dca76ce62e49d22e2ed1e86f20bea8e"},
"mock": {:hex, :mock, "0.3.7", "75b3bbf1466d7e486ea2052a73c6e062c6256fb429d6797999ab02fa32f29e03", [:mix], [{:meck, "~> 0.9.2", [hex: :meck, repo: "hexpm", optional: false]}], "hexpm", "4da49a4609e41fd99b7836945c26f373623ea968cfb6282742bcb94440cf7e5c"}, "mock": {:hex, :mock, "0.3.7", "75b3bbf1466d7e486ea2052a73c6e062c6256fb429d6797999ab02fa32f29e03", [:mix], [{:meck, "~> 0.9.2", [hex: :meck, repo: "hexpm", optional: false]}], "hexpm", "4da49a4609e41fd99b7836945c26f373623ea968cfb6282742bcb94440cf7e5c"},
"mogrify": {:hex, :mogrify, "0.9.1", "a26f107c4987477769f272bd0f7e3ac4b7b75b11ba597fd001b877beffa9c068", [:mix], [], "hexpm", "134edf189337d2125c0948bf0c228fdeef975c594317452d536224069a5b7f05"}, "mogrify": {:hex, :mogrify, "0.9.1", "a26f107c4987477769f272bd0f7e3ac4b7b75b11ba597fd001b877beffa9c068", [:mix], [], "hexpm", "134edf189337d2125c0948bf0c228fdeef975c594317452d536224069a5b7f05"},
"mox": {:hex, :mox, "1.0.0", "4b3c7005173f47ff30641ba044eb0fe67287743eec9bd9545e37f3002b0a9f8b", [:mix], [], "hexpm", "201b0a20b7abdaaab083e9cf97884950f8a30a1350a1da403b3145e213c6f4df"}, "mox": {:hex, :mox, "1.0.1", "b651bf0113265cda0ba3a827fcb691f848b683c373b77e7d7439910a8d754d6e", [:mix], [], "hexpm", "35bc0dea5499d18db4ef7fe4360067a59b06c74376eb6ab3bd67e6295b133469"},
"nimble_csv": {:hex, :nimble_csv, "1.1.0", "b1dba4a86be9e03065c9de829050468e591f569100332db949e7ce71be0afc25", [:mix], [], "hexpm", "e986755bc302832cac429be6deda0fc9d82d3c82b47abefb68b3c17c9d949a3f"}, "nimble_csv": {:hex, :nimble_csv, "1.1.0", "b1dba4a86be9e03065c9de829050468e591f569100332db949e7ce71be0afc25", [:mix], [], "hexpm", "e986755bc302832cac429be6deda0fc9d82d3c82b47abefb68b3c17c9d949a3f"},
"nimble_parsec": {:hex, :nimble_parsec, "1.1.0", "3a6fca1550363552e54c216debb6a9e95bd8d32348938e13de5eda962c0d7f89", [:mix], [], "hexpm", "08eb32d66b706e913ff748f11694b17981c0b04a33ef470e33e11b3d3ac8f54b"}, "nimble_parsec": {:hex, :nimble_parsec, "1.1.0", "3a6fca1550363552e54c216debb6a9e95bd8d32348938e13de5eda962c0d7f89", [:mix], [], "hexpm", "08eb32d66b706e913ff748f11694b17981c0b04a33ef470e33e11b3d3ac8f54b"},
"nimble_pool": {:hex, :nimble_pool, "0.1.0", "ffa9d5be27eee2b00b0c634eb649aa27f97b39186fec3c493716c2a33e784ec6", [:mix], [], "hexpm", "343a1eaa620ddcf3430a83f39f2af499fe2370390d4f785cd475b4df5acaf3f9"}, "nimble_pool": {:hex, :nimble_pool, "0.1.0", "ffa9d5be27eee2b00b0c634eb649aa27f97b39186fec3c493716c2a33e784ec6", [:mix], [], "hexpm", "343a1eaa620ddcf3430a83f39f2af499fe2370390d4f785cd475b4df5acaf3f9"},
@ -115,7 +115,7 @@
"plug": {:hex, :plug, "1.12.1", "645678c800601d8d9f27ad1aebba1fdb9ce5b2623ddb961a074da0b96c35187d", [:mix], [{:mime, "~> 1.0 or ~> 2.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.1.1 or ~> 1.2", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4.3 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "d57e799a777bc20494b784966dc5fbda91eb4a09f571f76545b72a634ce0d30b"}, "plug": {:hex, :plug, "1.12.1", "645678c800601d8d9f27ad1aebba1fdb9ce5b2623ddb961a074da0b96c35187d", [:mix], [{:mime, "~> 1.0 or ~> 2.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.1.1 or ~> 1.2", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4.3 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "d57e799a777bc20494b784966dc5fbda91eb4a09f571f76545b72a634ce0d30b"},
"plug_cowboy": {:hex, :plug_cowboy, "2.5.2", "62894ccd601cf9597e2c23911ff12798a8a18d237e9739f58a6b04e4988899fe", [:mix], [{:cowboy, "~> 2.7", [hex: :cowboy, repo: "hexpm", optional: false]}, {:cowboy_telemetry, "~> 0.3", [hex: :cowboy_telemetry, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "ea6e87f774c8608d60c8d34022a7d073bd7680a0a013f049fc62bf35efea1044"}, "plug_cowboy": {:hex, :plug_cowboy, "2.5.2", "62894ccd601cf9597e2c23911ff12798a8a18d237e9739f58a6b04e4988899fe", [:mix], [{:cowboy, "~> 2.7", [hex: :cowboy, repo: "hexpm", optional: false]}, {:cowboy_telemetry, "~> 0.3", [hex: :cowboy_telemetry, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "ea6e87f774c8608d60c8d34022a7d073bd7680a0a013f049fc62bf35efea1044"},
"plug_crypto": {:hex, :plug_crypto, "1.2.2", "05654514ac717ff3a1843204b424477d9e60c143406aa94daf2274fdd280794d", [:mix], [], "hexpm", "87631c7ad914a5a445f0a3809f99b079113ae4ed4b867348dd9eec288cecb6db"}, "plug_crypto": {:hex, :plug_crypto, "1.2.2", "05654514ac717ff3a1843204b424477d9e60c143406aa94daf2274fdd280794d", [:mix], [], "hexpm", "87631c7ad914a5a445f0a3809f99b079113ae4ed4b867348dd9eec288cecb6db"},
"postgrex": {:hex, :postgrex, "0.15.11", "50abbb50f33d22d79af402e549b9a566ba4f0451b4f5fd39b72d9bbd49743d24", [:mix], [{:connection, "~> 1.0", [hex: :connection, repo: "hexpm", optional: false]}, {:db_connection, "~> 2.1", [hex: :db_connection, repo: "hexpm", optional: false]}, {:decimal, "~> 1.5 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "6f0e5c3ea10f97468f5ff852277cb207f068399eb68b0c06c142ef68a4e82952"}, "postgrex": {:hex, :postgrex, "0.15.12", "9ee623448310a6ea8543c1207379aea072d699b738b89549f05248b5807302d1", [:mix], [{:connection, "~> 1.0", [hex: :connection, repo: "hexpm", optional: false]}, {:db_connection, "~> 2.1", [hex: :db_connection, repo: "hexpm", optional: false]}, {:decimal, "~> 1.5 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "1234a9cda8803ca5026dd1512d9fa171c78dd9a27ed3ffd2ca2c5d5753af8922"},
"progress_bar": {:hex, :progress_bar, "2.0.1", "7b40200112ae533d5adceb80ff75fbe66dc753bca5f6c55c073bfc122d71896d", [:mix], [{:decimal, "~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}], "hexpm", "2519eb58a2f149a3a094e729378256d8cb6d96a259ec94841bd69fdc71f18f87"}, "progress_bar": {:hex, :progress_bar, "2.0.1", "7b40200112ae533d5adceb80ff75fbe66dc753bca5f6c55c073bfc122d71896d", [:mix], [{:decimal, "~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}], "hexpm", "2519eb58a2f149a3a094e729378256d8cb6d96a259ec94841bd69fdc71f18f87"},
"ranch": {:hex, :ranch, "1.8.0", "8c7a100a139fd57f17327b6413e4167ac559fbc04ca7448e9be9057311597a1d", [:make, :rebar3], [], "hexpm", "49fbcfd3682fab1f5d109351b61257676da1a2fdbe295904176d5e521a2ddfe5"}, "ranch": {:hex, :ranch, "1.8.0", "8c7a100a139fd57f17327b6413e4167ac559fbc04ca7448e9be9057311597a1d", [:make, :rebar3], [], "hexpm", "49fbcfd3682fab1f5d109351b61257676da1a2fdbe295904176d5e521a2ddfe5"},
"remote_ip": {:hex, :remote_ip, "1.0.0", "3d7fb45204a5704443f480cee9515e464997f52c35e0a60b6ece1f81484067ae", [:mix], [{:combine, "~> 0.10", [hex: :combine, repo: "hexpm", optional: false]}, {:plug, "~> 1.10", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "9e9fcad4e50c43b5234bb6a9629ed6ab223f3ed07147bd35470e4ee5c8caf907"}, "remote_ip": {:hex, :remote_ip, "1.0.0", "3d7fb45204a5704443f480cee9515e464997f52c35e0a60b6ece1f81484067ae", [:mix], [{:combine, "~> 0.10", [hex: :combine, repo: "hexpm", optional: false]}, {:plug, "~> 1.10", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "9e9fcad4e50c43b5234bb6a9629ed6ab223f3ed07147bd35470e4ee5c8caf907"},
@ -131,7 +131,7 @@
"telemetry": {:hex, :telemetry, "1.0.0", "0f453a102cdf13d506b7c0ab158324c337c41f1cc7548f0bc0e130bbf0ae9452", [:rebar3], [], "hexpm", "73bc09fa59b4a0284efb4624335583c528e07ec9ae76aca96ea0673850aec57a"}, "telemetry": {:hex, :telemetry, "1.0.0", "0f453a102cdf13d506b7c0ab158324c337c41f1cc7548f0bc0e130bbf0ae9452", [:rebar3], [], "hexpm", "73bc09fa59b4a0284efb4624335583c528e07ec9ae76aca96ea0673850aec57a"},
"tesla": {:hex, :tesla, "1.4.3", "f5a494e08fb1abe4fd9c28abb17f3d9b62b8f6fc492860baa91efb1aab61c8a0", [:mix], [{:castore, "~> 0.1", [hex: :castore, repo: "hexpm", optional: true]}, {:exjsx, ">= 3.0.0", [hex: :exjsx, repo: "hexpm", optional: true]}, {:finch, "~> 0.3", [hex: :finch, repo: "hexpm", optional: true]}, {:fuse, "~> 2.4", [hex: :fuse, repo: "hexpm", optional: true]}, {:gun, "~> 1.3", [hex: :gun, repo: "hexpm", optional: true]}, {:hackney, "~> 1.6", [hex: :hackney, repo: "hexpm", optional: true]}, {:ibrowse, "4.4.0", [hex: :ibrowse, repo: "hexpm", optional: true]}, {:jason, ">= 1.0.0", [hex: :jason, repo: "hexpm", optional: true]}, {:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:mint, "~> 1.0", [hex: :mint, repo: "hexpm", optional: true]}, {:poison, ">= 1.0.0", [hex: :poison, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: true]}], "hexpm", "e0755bb664bf4d664af72931f320c97adbf89da4586670f4864bf259b5750386"}, "tesla": {:hex, :tesla, "1.4.3", "f5a494e08fb1abe4fd9c28abb17f3d9b62b8f6fc492860baa91efb1aab61c8a0", [:mix], [{:castore, "~> 0.1", [hex: :castore, repo: "hexpm", optional: true]}, {:exjsx, ">= 3.0.0", [hex: :exjsx, repo: "hexpm", optional: true]}, {:finch, "~> 0.3", [hex: :finch, repo: "hexpm", optional: true]}, {:fuse, "~> 2.4", [hex: :fuse, repo: "hexpm", optional: true]}, {:gun, "~> 1.3", [hex: :gun, repo: "hexpm", optional: true]}, {:hackney, "~> 1.6", [hex: :hackney, repo: "hexpm", optional: true]}, {:ibrowse, "4.4.0", [hex: :ibrowse, repo: "hexpm", optional: true]}, {:jason, ">= 1.0.0", [hex: :jason, repo: "hexpm", optional: true]}, {:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:mint, "~> 1.0", [hex: :mint, repo: "hexpm", optional: true]}, {:poison, ">= 1.0.0", [hex: :poison, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: true]}], "hexpm", "e0755bb664bf4d664af72931f320c97adbf89da4586670f4864bf259b5750386"},
"timex": {:hex, :timex, "3.7.6", "502d2347ec550e77fdf419bc12d15bdccd31266bb7d925b30bf478268098282f", [:mix], [{:combine, "~> 0.10", [hex: :combine, repo: "hexpm", optional: false]}, {:gettext, "~> 0.10", [hex: :gettext, repo: "hexpm", optional: false]}, {:tzdata, "~> 1.0", [hex: :tzdata, repo: "hexpm", optional: false]}], "hexpm", "a296327f79cb1ec795b896698c56e662ed7210cc9eb31f0ab365eb3a62e2c589"}, "timex": {:hex, :timex, "3.7.6", "502d2347ec550e77fdf419bc12d15bdccd31266bb7d925b30bf478268098282f", [:mix], [{:combine, "~> 0.10", [hex: :combine, repo: "hexpm", optional: false]}, {:gettext, "~> 0.10", [hex: :gettext, repo: "hexpm", optional: false]}, {:tzdata, "~> 1.0", [hex: :tzdata, repo: "hexpm", optional: false]}], "hexpm", "a296327f79cb1ec795b896698c56e662ed7210cc9eb31f0ab365eb3a62e2c589"},
"tz_world": {:hex, :tz_world, "0.5.0", "fb93adb6ec9a32bbf1664d84083bb426b5273a31d4051a93654feaf9feb96b33", [:mix], [{:castore, "~> 0.1", [hex: :castore, repo: "hexpm", optional: true]}, {:certifi, "~> 2.5", [hex: :certifi, repo: "hexpm", optional: true]}, {:geo, "~> 1.0 or ~> 2.0 or ~> 3.0", [hex: :geo, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "df236849eff87a36c436b557803fb72b57f10dbc3f5d44cd1c06324e0c8447bb"}, "tz_world": {:hex, :tz_world, "0.7.1", "c6e2d7fe4ee8119563f7dc75808c7067d39441b143b6f26dbb7be31791ea5f41", [:mix], [{:castore, "~> 0.1", [hex: :castore, repo: "hexpm", optional: true]}, {:certifi, "~> 2.5", [hex: :certifi, repo: "hexpm", optional: true]}, {:geo, "~> 1.0 or ~> 2.0 or ~> 3.3", [hex: :geo, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "8932d76b2e5b7113e6f5773465b75c3bb7d04693b59a842657c164cdb85b4bcf"},
"tzdata": {:hex, :tzdata, "1.1.0", "72f5babaa9390d0f131465c8702fa76da0919e37ba32baa90d93c583301a8359", [:mix], [{:hackney, "~> 1.17", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "18f453739b48d3dc5bcf0e8906d2dc112bb40baafe2c707596d89f3c8dd14034"}, "tzdata": {:hex, :tzdata, "1.1.0", "72f5babaa9390d0f131465c8702fa76da0919e37ba32baa90d93c583301a8359", [:mix], [{:hackney, "~> 1.17", [hex: :hackney, repo: "hexpm", optional: false]}], "hexpm", "18f453739b48d3dc5bcf0e8906d2dc112bb40baafe2c707596d89f3c8dd14034"},
"ueberauth": {:hex, :ueberauth, "0.6.3", "d42ace28b870e8072cf30e32e385579c57b9cc96ec74fa1f30f30da9c14f3cc0", [:mix], [{:plug, "~> 1.5", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "afc293d8a1140d6591b53e3eaf415ca92842cb1d32fad3c450c6f045f7f91b60"}, "ueberauth": {:hex, :ueberauth, "0.6.3", "d42ace28b870e8072cf30e32e385579c57b9cc96ec74fa1f30f30da9c14f3cc0", [:mix], [{:plug, "~> 1.5", [hex: :plug, repo: "hexpm", optional: false]}], "hexpm", "afc293d8a1140d6591b53e3eaf415ca92842cb1d32fad3c450c6f045f7f91b60"},
"ueberauth_discord": {:hex, :ueberauth_discord, "0.6.0", "d6ec040e4195c4138b9a959c79024ab4c213ba1aed9fc08099ecff141a6486da", [:mix], [{:oauth2, "~> 1.0 or ~> 2.0", [hex: :oauth2, repo: "hexpm", optional: false]}, {:ueberauth, "~> 0.6.3", [hex: :ueberauth, repo: "hexpm", optional: false]}], "hexpm", "c5ea960191c1d6c3a974947cae4d57efa565a9a0796b8e82bee45fac7ae2fabc"}, "ueberauth_discord": {:hex, :ueberauth_discord, "0.6.0", "d6ec040e4195c4138b9a959c79024ab4c213ba1aed9fc08099ecff141a6486da", [:mix], [{:oauth2, "~> 1.0 or ~> 2.0", [hex: :oauth2, repo: "hexpm", optional: false]}, {:ueberauth, "~> 0.6.3", [hex: :ueberauth, repo: "hexpm", optional: false]}], "hexpm", "c5ea960191c1d6c3a974947cae4d57efa565a9a0796b8e82bee45fac7ae2fabc"},

View file

@ -31,7 +31,7 @@ msgid "Activate my account"
msgstr "تنشيط حسابي" msgstr "تنشيط حسابي"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "أطلب مِن المجتمَع على Framacolibri" msgstr "أطلب مِن المجتمَع على Framacolibri"
@ -110,7 +110,7 @@ msgid "You created an account on %{host} with this email address. You are one cl
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "" msgstr ""
@ -120,7 +120,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "تم تحديث الفعالية %{title}" msgstr "تم تحديث الفعالية %{title}"
@ -135,12 +135,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "تنبيه" msgstr "تنبيه"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "" msgstr ""
@ -335,7 +335,7 @@ msgstr[5] ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "" msgstr[0] ""
@ -744,7 +744,7 @@ msgid "Hi there! You just registered to join this event: « %{title} ». Please
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "" msgstr ""
@ -777,9 +777,9 @@ msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -807,7 +807,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "%{instance} هو خادم موبيليزون Mobilizon." msgstr "%{instance} هو خادم موبيليزون Mobilizon."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "%{instance} هو خادم موبيليزون Mobilizon." msgstr "%{instance} هو خادم موبيليزون Mobilizon."
@ -834,11 +834,6 @@ msgstr ""
msgid "End" msgid "End"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -891,7 +886,7 @@ msgid "If you wish to cancel your attendance, visit the event page through the l
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "تعلّم المزيد عن Mobilizon." msgstr "تعلّم المزيد عن Mobilizon."
@ -946,11 +941,6 @@ msgstr ""
msgid "Start" msgid "Start"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1007,16 +997,10 @@ msgid "Visit the updated event page"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1060,7 +1044,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "" msgstr ""
@ -1245,7 +1229,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "لقد قمتَ بتقديم طلب للمشاركة في فعالية %{title}." msgstr "لقد قمتَ بتقديم طلب للمشاركة في فعالية %{title}."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "" msgstr ""
@ -1368,7 +1352,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "" msgstr ""
@ -1534,3 +1518,55 @@ msgstr "تم قبول المشاركة"
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -982,7 +982,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -28,7 +28,7 @@ msgid "Activate my account"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "" msgstr ""
@ -107,7 +107,7 @@ msgid "You created an account on %{host} with this email address. You are one cl
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "" msgstr ""
@ -117,7 +117,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "" msgstr ""
@ -132,12 +132,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "" msgstr ""
@ -329,7 +329,7 @@ msgstr[2] ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "" msgstr[0] ""
@ -726,7 +726,7 @@ msgid "Hi there! You just registered to join this event: « %{title} ». Please
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "" msgstr ""
@ -759,9 +759,9 @@ msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -783,7 +783,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "" msgstr ""
@ -810,11 +810,6 @@ msgstr ""
msgid "End" msgid "End"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -867,7 +862,7 @@ msgid "If you wish to cancel your attendance, visit the event page through the l
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "" msgstr ""
@ -922,11 +917,6 @@ msgstr ""
msgid "Start" msgid "Start"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -983,16 +973,10 @@ msgid "Visit the updated event page"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1036,7 +1020,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "" msgstr ""
@ -1221,7 +1205,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "" msgstr ""
@ -1344,7 +1328,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "" msgstr ""
@ -1510,3 +1494,55 @@ msgstr ""
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -956,7 +956,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -32,7 +32,7 @@ msgid "Activate my account"
msgstr "Activa el meu compte" msgstr "Activa el meu compte"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Pregunta a la comunitat a Framacolibri" msgstr "Pregunta a la comunitat a Framacolibri"
@ -117,7 +117,7 @@ msgstr ""
"'activar-lo. Si no l'has creat tu, ignora aquest mail." "'activar-lo. Si no l'has creat tu, ignora aquest mail."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "T'han aprovat la participació a %{title}" msgstr "T'han aprovat la participació a %{title}"
@ -127,7 +127,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "T'han denegat la participació a %{title}" msgstr "T'han denegat la participació a %{title}"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "S'ha actualitzat {%title}" msgstr "S'ha actualitzat {%title}"
@ -142,12 +142,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "Algú ha soŀlicitat a %{instance} una contrasenya nova." msgstr "Algú ha soŀlicitat a %{instance} una contrasenya nova."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Alerta" msgstr "Alerta"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "Confirma que participaràs a l'activitat %{title}" msgstr "Confirma que participaràs a l'activitat %{title}"
@ -372,7 +372,7 @@ msgstr[1] "%{nb_events} activitats planificades avui"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "Tens una activitat avui:" msgstr[0] "Tens una activitat avui:"
@ -892,7 +892,7 @@ msgstr ""
"confirma l'adreça de correu que has introduït:" "confirma l'adreça de correu que has introduït:"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "Necessites ajuda? Alguna cosa no funciona?" msgstr "Necessites ajuda? Alguna cosa no funciona?"
@ -926,9 +926,9 @@ msgstr "No ho facis servir més que proves, sisplau"
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -954,7 +954,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "%{instance} és un servidor de Mobilizon." msgstr "%{instance} és un servidor de Mobilizon."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "%{instance} és un servidor de Mobilizon." msgstr "%{instance} és un servidor de Mobilizon."
@ -981,11 +981,6 @@ msgstr "Confirma la nova adreça"
msgid "End" msgid "End"
msgstr "Final" msgstr "Final"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr "Final %{ends_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -1055,7 +1050,7 @@ msgstr ""
"l'enllaç de dalt i clica al botó de participació." "l'enllaç de dalt i clica al botó de participació."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "Per aprendre més de Mobilizon." msgstr "Per aprendre més de Mobilizon."
@ -1110,11 +1105,6 @@ msgstr "Ho sentim! No hi podràs anar."
msgid "Start" msgid "Start"
msgstr "Inici" msgstr "Inici"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr "Inici %{starts_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1173,16 +1163,10 @@ msgid "Visit the updated event page"
msgstr "Vés a la pàgina d'activitat actualitzada" msgstr "Vés a la pàgina d'activitat actualitzada"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "Vés a l'activitat actualitzada a %{link}" msgstr "Vés a l'activitat actualitzada a %{link}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr "Què hi ha aquesta setmana?"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1232,7 +1216,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "Si no has fet tu aquest canvi, pots ignorar aquest missatge." msgstr "Si no has fet tu aquest canvi, pots ignorar aquest missatge."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "<b>No ho facis servir més que proves, sisplau.</b>" msgstr "<b>No ho facis servir més que proves, sisplau.</b>"
@ -1460,7 +1444,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "Has soŀlicitat participar a l'activitat %{title}." msgstr "Has soŀlicitat participar a l'activitat %{title}."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "T'han aprovat la participació a %{title}" msgstr "T'han aprovat la participació a %{title}"
@ -1596,7 +1580,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "Ho sentim, s'ha produït un error al nostre costat." msgstr "Ho sentim, s'ha produït un error al nostre costat."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "Aquesta és una web de proves per provar la beta de Mobilizon." msgstr "Aquesta és una web de proves per provar la beta de Mobilizon."
@ -1766,3 +1750,55 @@ msgstr "S'ha aprovat la participació"
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr "Una activitat planificada per aquesta setmana"
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -957,7 +957,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -28,7 +28,7 @@ msgid "Activate my account"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "" msgstr ""
@ -107,7 +107,7 @@ msgid "You created an account on %{host} with this email address. You are one cl
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "" msgstr ""
@ -117,7 +117,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "" msgstr ""
@ -132,12 +132,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "" msgstr ""
@ -329,7 +329,7 @@ msgstr[2] ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "" msgstr[0] ""
@ -726,7 +726,7 @@ msgid "Hi there! You just registered to join this event: « %{title} ». Please
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "" msgstr ""
@ -759,9 +759,9 @@ msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -783,7 +783,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "" msgstr ""
@ -810,11 +810,6 @@ msgstr ""
msgid "End" msgid "End"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -867,7 +862,7 @@ msgid "If you wish to cancel your attendance, visit the event page through the l
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "" msgstr ""
@ -922,11 +917,6 @@ msgstr ""
msgid "Start" msgid "Start"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -983,16 +973,10 @@ msgid "Visit the updated event page"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1036,7 +1020,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "" msgstr ""
@ -1221,7 +1205,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "" msgstr ""
@ -1344,7 +1328,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "" msgstr ""
@ -1510,3 +1494,55 @@ msgstr ""
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -956,7 +956,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -33,7 +33,7 @@ msgid "Activate my account"
msgstr "Mein Konto aktivieren" msgstr "Mein Konto aktivieren"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Richte deine Fragen an die Gemeinschaft auf Framacolibri" msgstr "Richte deine Fragen an die Gemeinschaft auf Framacolibri"
@ -119,7 +119,7 @@ msgstr ""
"E-Mail bitte." "E-Mail bitte."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "Deine Teilnahme an der Veranstaltung %{title}wurde akzeptiert" msgstr "Deine Teilnahme an der Veranstaltung %{title}wurde akzeptiert"
@ -129,7 +129,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "Deine Teilnahme an der Veranstaltung %{title}wurde abgelehnt" msgstr "Deine Teilnahme an der Veranstaltung %{title}wurde abgelehnt"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "Veranstaltung %{title} wurde aktualisiert" msgstr "Veranstaltung %{title} wurde aktualisiert"
@ -145,12 +145,12 @@ msgstr ""
"Du hast ein neues Passwort für deinen Account auf %{instance} angefragt." "Du hast ein neues Passwort für deinen Account auf %{instance} angefragt."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Warnung" msgstr "Warnung"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "Meine Teilnahme an der Veranstaltung %{title} zusagen" msgstr "Meine Teilnahme an der Veranstaltung %{title} zusagen"
@ -378,7 +378,7 @@ msgstr[1] "%{nb_events} wurden heute geplannt"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "Du hast heute ein Event:" msgstr[0] "Du hast heute ein Event:"
@ -922,7 +922,7 @@ msgstr ""
"angegebene E-Mail Adresse:" "angegebene E-Mail Adresse:"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "Brauchst Du Hilfe? Funktioniert etwas nicht richtig?" msgstr "Brauchst Du Hilfe? Funktioniert etwas nicht richtig?"
@ -959,9 +959,9 @@ msgstr "Bitte verwenden Sie es nicht für reale Zwecke."
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -986,7 +986,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "%{instance} ist ein Mobilizon-Server." msgstr "%{instance} ist ein Mobilizon-Server."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "<b>%{instance}</b> ist ein Mobilizon-Server." msgstr "<b>%{instance}</b> ist ein Mobilizon-Server."
@ -1013,11 +1013,6 @@ msgstr "Neue E-Mail bestätigen"
msgid "End" msgid "End"
msgstr "Ende" msgstr "Ende"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr "Ende %{ends_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -1088,7 +1083,7 @@ msgstr ""
"auf die Veranstaltungs-Seite und klicke auf den Teilnahme-Button." "auf die Veranstaltungs-Seite und klicke auf den Teilnahme-Button."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "Lerne mehr über Mobilizon!" msgstr "Lerne mehr über Mobilizon!"
@ -1145,11 +1140,6 @@ msgstr "Schade! Sie sind nicht dabei."
msgid "Start" msgid "Start"
msgstr "Start" msgstr "Start"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr "Start %{begins_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1211,16 +1201,10 @@ msgid "Visit the updated event page"
msgstr "Besuchen Sie die aktualisierte Veranstaltungsseite" msgstr "Besuchen Sie die aktualisierte Veranstaltungsseite"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "Zeige die aktualisierte Veranstaltung unter: %{link}" msgstr "Zeige die aktualisierte Veranstaltung unter: %{link}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr "Was gibt's diese Woche?"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1274,7 +1258,7 @@ msgstr ""
"diese Meldung." "diese Meldung."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "<b>Bitte verwenden Sie es nicht für reale Zwecke.</b>" msgstr "<b>Bitte verwenden Sie es nicht für reale Zwecke.</b>"
@ -1561,7 +1545,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "Du hast angefragt, an der Veranstaltung <b>%{title}</b> teilzunehmen." msgstr "Du hast angefragt, an der Veranstaltung <b>%{title}</b> teilzunehmen."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "Deine Teilnahme an der Veranstaltung %{title}wurde akzeptiert" msgstr "Deine Teilnahme an der Veranstaltung %{title}wurde akzeptiert"
@ -1700,7 +1684,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "Es tut uns leid, aber auf unserer Seite ist etwas schief gelaufen." msgstr "Es tut uns leid, aber auf unserer Seite ist etwas schief gelaufen."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "Dies ist eine Demo-Seite, um die Beta-Version von Mobilizon zu testen." msgstr "Dies ist eine Demo-Seite, um die Beta-Version von Mobilizon zu testen."
@ -1878,3 +1862,55 @@ msgstr "Teilnahme bestätigt"
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr "Ein Event ist für diese Woche geplant"
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -986,7 +986,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -14,7 +14,7 @@ msgid "Activate my account"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "" msgstr ""
@ -93,7 +93,7 @@ msgid "You created an account on %{host} with this email address. You are one cl
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "" msgstr ""
@ -103,7 +103,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "" msgstr ""
@ -118,12 +118,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "" msgstr ""
@ -314,7 +314,7 @@ msgstr[1] ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "" msgstr[0] ""
@ -707,7 +707,7 @@ msgid "Hi there! You just registered to join this event: « %{title} ». Please
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "" msgstr ""
@ -740,9 +740,9 @@ msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -762,7 +762,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "" msgstr ""
@ -789,11 +789,6 @@ msgstr ""
msgid "End" msgid "End"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -846,7 +841,7 @@ msgid "If you wish to cancel your attendance, visit the event page through the l
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "" msgstr ""
@ -901,11 +896,6 @@ msgstr ""
msgid "Start" msgid "Start"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -962,16 +952,10 @@ msgid "Visit the updated event page"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1015,7 +999,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "" msgstr ""
@ -1200,7 +1184,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "" msgstr ""
@ -1323,7 +1307,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "" msgstr ""
@ -1489,3 +1473,55 @@ msgstr ""
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -37,7 +37,7 @@ msgid "Activate my account"
msgstr "Activate my account" msgstr "Activate my account"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Ask the community on Framacolibri" msgstr "Ask the community on Framacolibri"
@ -116,7 +116,7 @@ msgid "You created an account on %{host} with this email address. You are one cl
msgstr "You created an account on %{host} with this email address. You are one click away from activating it." msgstr "You created an account on %{host} with this email address. You are one click away from activating it."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "Your participation to event %{title} has been approved" msgstr "Your participation to event %{title} has been approved"
@ -126,7 +126,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "Your participation to event %{title} has been rejected" msgstr "Your participation to event %{title} has been rejected"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "Event %{title} has been updated" msgstr "Event %{title} has been updated"
@ -141,12 +141,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "You requested a new password for your account on %{instance}." msgstr "You requested a new password for your account on %{instance}."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Warning" msgstr "Warning"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "Confirm your participation to event %{title}" msgstr "Confirm your participation to event %{title}"
@ -367,7 +367,7 @@ msgstr[1] ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "" msgstr[0] ""
@ -760,7 +760,7 @@ msgid "Hi there! You just registered to join this event: « %{title} ». Please
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "Need some help? Something not working properly?" msgstr "Need some help? Something not working properly?"
@ -793,9 +793,9 @@ msgstr "Please do not use it in any real way"
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "If you need to cancel your participation, just access the event page through link above and click on the participation button." msgstr[0] "If you need to cancel your participation, just access the event page through link above and click on the participation button."
@ -815,7 +815,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "%{instance} is a Mobilizon server." msgstr "%{instance} is a Mobilizon server."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "%{instance} is a Mobilizon server." msgstr "%{instance} is a Mobilizon server."
@ -842,11 +842,6 @@ msgstr ""
msgid "End" msgid "End"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -899,7 +894,7 @@ msgid "If you wish to cancel your attendance, visit the event page through the l
msgstr "If you need to cancel your participation, just access the event page through link above and click on the participation button." msgstr "If you need to cancel your participation, just access the event page through link above and click on the participation button."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "Learn more about Mobilizon." msgstr "Learn more about Mobilizon."
@ -954,11 +949,6 @@ msgstr ""
msgid "Start" msgid "Start"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1015,16 +1005,10 @@ msgid "Visit the updated event page"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "View the updated event on: %{link}" msgstr "View the updated event on: %{link}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1068,7 +1052,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "Please do not use it in any real way" msgstr "Please do not use it in any real way"
@ -1253,7 +1237,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "You requested to participate in event %{title}." msgstr "You requested to participate in event %{title}."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "Your participation to event %{title} has been approved" msgstr "Your participation to event %{title} has been approved"
@ -1376,7 +1360,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "This is a demonstration site to test the beta version of Mobilizon." msgstr "This is a demonstration site to test the beta version of Mobilizon."
@ -1542,3 +1526,55 @@ msgstr "Participant"
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -960,7 +960,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -937,8 +937,8 @@ msgid "Please do not use it for real purposes."
msgstr "Por favor no lo use de ninguna manera real." msgstr "Por favor no lo use de ninguna manera real."
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:147
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:29 lib/web/templates/email/notification_each_week.html.heex:70
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:14
#, elixir-format #, elixir-format
@ -1837,3 +1837,55 @@ msgstr "Participación aprobada"
#, elixir-format #, elixir-format
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "Participante anónimo" msgstr "Participante anónimo"
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr "Un evento programado para hoy"
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -32,7 +32,7 @@ msgid "Activate my account"
msgstr "Aktivoi tilini" msgstr "Aktivoi tilini"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Kysy yhteisöltä Framacolibrissa" msgstr "Kysy yhteisöltä Framacolibrissa"
@ -118,7 +118,7 @@ msgstr ""
"huomiotta." "huomiotta."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "Osallistumisesi tapahtumaan %{title} on hyväksytty" msgstr "Osallistumisesi tapahtumaan %{title} on hyväksytty"
@ -128,7 +128,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "Osallistumisesi tapahtumaan %{title) on hylätty" msgstr "Osallistumisesi tapahtumaan %{title) on hylätty"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "Tapahtumaa %{title} on päivitetty" msgstr "Tapahtumaa %{title} on päivitetty"
@ -143,12 +143,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "Pyysit uutta salasanaa tilillesi palvelimella %{instance}." msgstr "Pyysit uutta salasanaa tilillesi palvelimella %{instance}."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Varoitus" msgstr "Varoitus"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "Vahvista osallistumisesi tapahtumaan %{title}" msgstr "Vahvista osallistumisesi tapahtumaan %{title}"
@ -368,7 +368,7 @@ msgstr[1] "%{nb_events} suunniteltua tapahtumaa tänään"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "Sinulla on tänään yksi tapahtuma:" msgstr[0] "Sinulla on tänään yksi tapahtuma:"
@ -885,7 +885,7 @@ msgstr ""
"sähköpostiosoite:" "sähköpostiosoite:"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "Tarvitsetko apua? Eikö kaikki toimi niin kuin pitäisi?" msgstr "Tarvitsetko apua? Eikö kaikki toimi niin kuin pitäisi?"
@ -921,9 +921,9 @@ msgstr "Älä käytä todellisiin tarkoituksiin."
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -948,7 +948,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "%{instance} on Mobilizon-palvelin." msgstr "%{instance} on Mobilizon-palvelin."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "<b>%{instance}</b> on Mobilizon-palvelin." msgstr "<b>%{instance}</b> on Mobilizon-palvelin."
@ -975,11 +975,6 @@ msgstr "Vahvista sähköpostiosoite"
msgid "End" msgid "End"
msgstr "Päättyy" msgstr "Päättyy"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr "Päättyy %{ends_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -1048,7 +1043,7 @@ msgstr ""
"linkistä ja napsauta siellä osallistumispainiketta." "linkistä ja napsauta siellä osallistumispainiketta."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "Lue lisää Mobilizonista." msgstr "Lue lisää Mobilizonista."
@ -1103,11 +1098,6 @@ msgstr "Valitettavasti et pääse mukaan."
msgid "Start" msgid "Start"
msgstr "Alkaa" msgstr "Alkaa"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr "Alkaa %{begins_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1166,16 +1156,10 @@ msgid "Visit the updated event page"
msgstr "Käy päivitetyllä tapahtumasivulla" msgstr "Käy päivitetyllä tapahtumasivulla"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "Katso päivitetty tapahtuma: %{linkki}" msgstr "Katso päivitetty tapahtuma: %{linkki}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr "Mitä tällä viikolla tapahtuu?"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1225,7 +1209,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "Jos et tehnyt vaihtoa itse, voit jättää tämän viestin huomiotta." msgstr "Jos et tehnyt vaihtoa itse, voit jättää tämän viestin huomiotta."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "<b>Älä käytä todellisiin tarkoituksiin.</b>" msgstr "<b>Älä käytä todellisiin tarkoituksiin.</b>"
@ -1496,7 +1480,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "Lähetit pyynnön osallistua tapahtumaan <b>%{title}</b>." msgstr "Lähetit pyynnön osallistua tapahtumaan <b>%{title}</b>."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "Osallistumisesi tapahtumaan %{title} on hyväksytty" msgstr "Osallistumisesi tapahtumaan %{title} on hyväksytty"
@ -1632,7 +1616,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "Pahoittelemme, tapahtui virhe palvelimen päässä." msgstr "Pahoittelemme, tapahtui virhe palvelimen päässä."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "Tämä on koekäyttöön tarkoitettu Mobilizonin esittelysivu." msgstr "Tämä on koekäyttöön tarkoitettu Mobilizonin esittelysivu."
@ -1804,3 +1788,55 @@ msgstr "Osallistuminen hyväksytty"
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr "Yksi suunniteltu tapahtuma tällä viikolla"
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -963,7 +963,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

File diff suppressed because it is too large Load diff

View file

@ -96,701 +96,879 @@ msgstr "doit être supérieur ou égal à %{number}"
msgid "must be equal to %{number}" msgid "must be equal to %{number}"
msgstr "doit être égal à %{number}" msgstr "doit être égal à %{number}"
#, elixir-format
#: lib/graphql/resolvers/user.ex:107 #: lib/graphql/resolvers/user.ex:107
msgid "Cannot refresh the token" msgid "Cannot refresh the token"
msgstr "Impossible de rafraîchir le jeton" msgstr "Impossible de rafraîchir le jeton"
#, elixir-format
#: lib/graphql/resolvers/group.ex:245 #: lib/graphql/resolvers/group.ex:245
msgid "Current profile is not a member of this group" msgid "Current profile is not a member of this group"
msgstr "Le profil actuel n'est pas un membre de ce groupe" msgstr "Le profil actuel n'est pas un membre de ce groupe"
#, elixir-format
#: lib/graphql/resolvers/group.ex:249 #: lib/graphql/resolvers/group.ex:249
msgid "Current profile is not an administrator of the selected group" msgid "Current profile is not an administrator of the selected group"
msgstr "Le profil actuel n'est pas un·e administrateur·ice du groupe sélectionné" msgstr "Le profil actuel n'est pas un·e administrateur·ice du groupe sélectionné"
#, elixir-format
#: lib/graphql/resolvers/user.ex:592 #: lib/graphql/resolvers/user.ex:592
msgid "Error while saving user settings" msgid "Error while saving user settings"
msgstr "Erreur lors de la sauvegarde des paramètres utilisateur" msgstr "Erreur lors de la sauvegarde des paramètres utilisateur"
#: lib/graphql/error.ex:99 lib/graphql/resolvers/group.ex:242 lib/graphql/resolvers/group.ex:274 #, elixir-format
#: lib/graphql/resolvers/group.ex:311 lib/graphql/resolvers/member.ex:79 #: lib/graphql/error.ex:99 lib/graphql/resolvers/group.ex:242
#: lib/graphql/resolvers/group.ex:274 lib/graphql/resolvers/group.ex:311 lib/graphql/resolvers/member.ex:79
msgid "Group not found" msgid "Group not found"
msgstr "Groupe non trouvé" msgstr "Groupe non trouvé"
#, elixir-format
#: lib/graphql/resolvers/group.ex:78 lib/graphql/resolvers/group.ex:82 #: lib/graphql/resolvers/group.ex:78 lib/graphql/resolvers/group.ex:82
msgid "Group with ID %{id} not found" msgid "Group with ID %{id} not found"
msgstr "Groupe avec l'ID %{id} non trouvé" msgstr "Groupe avec l'ID %{id} non trouvé"
#, elixir-format
#: lib/graphql/resolvers/user.ex:85 #: lib/graphql/resolvers/user.ex:85
msgid "Impossible to authenticate, either your email or password are invalid." msgid "Impossible to authenticate, either your email or password are invalid."
msgstr "Impossible de s'authentifier, votre adresse e-mail ou bien votre mot de passe sont invalides." msgstr "Impossible de s'authentifier, votre adresse e-mail ou bien votre mot de passe sont invalides."
#, elixir-format
#: lib/graphql/resolvers/group.ex:308 #: lib/graphql/resolvers/group.ex:308
msgid "Member not found" msgid "Member not found"
msgstr "Membre non trouvé" msgstr "Membre non trouvé"
#, elixir-format
#: lib/graphql/resolvers/actor.ex:94 #: lib/graphql/resolvers/actor.ex:94
msgid "No profile found for the moderator user" msgid "No profile found for the moderator user"
msgstr "Aucun profil trouvé pour l'utilisateur modérateur" msgstr "Aucun profil trouvé pour l'utilisateur modérateur"
#, elixir-format
#: lib/graphql/resolvers/user.ex:253 #: lib/graphql/resolvers/user.ex:253
msgid "No user to validate with this email was found" msgid "No user to validate with this email was found"
msgstr "Aucun·e utilisateur·ice à valider avec cet email n'a été trouvé·e" msgstr "Aucun·e utilisateur·ice à valider avec cet email n'a été trouvé·e"
#, elixir-format
#: lib/graphql/resolvers/person.ex:314 lib/graphql/resolvers/user.ex:278 #: lib/graphql/resolvers/person.ex:314 lib/graphql/resolvers/user.ex:278
msgid "No user with this email was found" msgid "No user with this email was found"
msgstr "Aucun·e utilisateur·ice avec cette adresse e-mail n'a été trouvé·e" msgstr "Aucun·e utilisateur·ice avec cette adresse e-mail n'a été trouvé·e"
#: lib/graphql/resolvers/feed_token.ex:28 lib/graphql/resolvers/participant.ex:32 #, elixir-format
#: lib/graphql/resolvers/participant.ex:210 lib/graphql/resolvers/person.ex:236 lib/graphql/resolvers/person.ex:353 #: lib/graphql/resolvers/feed_token.ex:28
#: lib/graphql/resolvers/person.ex:380 lib/graphql/resolvers/person.ex:397 #: lib/graphql/resolvers/participant.ex:32 lib/graphql/resolvers/participant.ex:210 lib/graphql/resolvers/person.ex:236
#: lib/graphql/resolvers/person.ex:353 lib/graphql/resolvers/person.ex:380 lib/graphql/resolvers/person.ex:397
msgid "Profile is not owned by authenticated user" msgid "Profile is not owned by authenticated user"
msgstr "Le profil n'est pas possédé par l'utilisateur connecté" msgstr "Le profil n'est pas possédé par l'utilisateur connecté"
#, elixir-format
#: lib/graphql/resolvers/user.ex:156 #: lib/graphql/resolvers/user.ex:156
msgid "Registrations are not open" msgid "Registrations are not open"
msgstr "Les inscriptions ne sont pas ouvertes" msgstr "Les inscriptions ne sont pas ouvertes"
#, elixir-format
#: lib/graphql/resolvers/user.ex:407 #: lib/graphql/resolvers/user.ex:407
msgid "The current password is invalid" msgid "The current password is invalid"
msgstr "Le mot de passe actuel est invalid" msgstr "Le mot de passe actuel est invalid"
#, elixir-format
#: lib/graphql/resolvers/user.ex:450 #: lib/graphql/resolvers/user.ex:450
msgid "The new email doesn't seem to be valid" msgid "The new email doesn't seem to be valid"
msgstr "La nouvelle adresse e-mail ne semble pas être valide" msgstr "La nouvelle adresse e-mail ne semble pas être valide"
#, elixir-format
#: lib/graphql/resolvers/user.ex:453 #: lib/graphql/resolvers/user.ex:453
msgid "The new email must be different" msgid "The new email must be different"
msgstr "La nouvelle adresse e-mail doit être différente" msgstr "La nouvelle adresse e-mail doit être différente"
#, elixir-format
#: lib/graphql/resolvers/user.ex:410 #: lib/graphql/resolvers/user.ex:410
msgid "The new password must be different" msgid "The new password must be different"
msgstr "Le nouveau mot de passe doit être différent" msgstr "Le nouveau mot de passe doit être différent"
#: lib/graphql/resolvers/user.ex:457 lib/graphql/resolvers/user.ex:519 lib/graphql/resolvers/user.ex:522 #, elixir-format
#: lib/graphql/resolvers/user.ex:457 lib/graphql/resolvers/user.ex:519
#: lib/graphql/resolvers/user.ex:522
msgid "The password provided is invalid" msgid "The password provided is invalid"
msgstr "Le mot de passe fourni est invalide" msgstr "Le mot de passe fourni est invalide"
#, elixir-format
#: lib/graphql/resolvers/user.ex:414 #: lib/graphql/resolvers/user.ex:414
msgid "The password you have chosen is too short. Please make sure your password contains at least 6 characters." msgid "The password you have chosen is too short. Please make sure your password contains at least 6 characters."
msgstr "" msgstr ""
"Le mot de passe que vous avez choisi est trop court. Merci de vous assurer que votre mot de passe contienne au moins " "Le mot de passe que vous avez choisi est trop court. Merci de vous assurer que votre mot de passe contienne au moins "
"6 caractères." "6 caractères."
#, elixir-format
#: lib/graphql/resolvers/user.ex:274 #: lib/graphql/resolvers/user.ex:274
msgid "This user can't reset their password" msgid "This user can't reset their password"
msgstr "Cet·te utilisateur·ice ne peut pas réinitialiser son mot de passe" msgstr "Cet·te utilisateur·ice ne peut pas réinitialiser son mot de passe"
#, elixir-format
#: lib/graphql/resolvers/user.ex:81 #: lib/graphql/resolvers/user.ex:81
msgid "This user has been disabled" msgid "This user has been disabled"
msgstr "Cet·te utilisateur·ice a été désactivé·e" msgstr "Cet·te utilisateur·ice a été désactivé·e"
#, elixir-format
#: lib/graphql/resolvers/user.ex:232 lib/graphql/resolvers/user.ex:237 #: lib/graphql/resolvers/user.ex:232 lib/graphql/resolvers/user.ex:237
msgid "Unable to validate user" msgid "Unable to validate user"
msgstr "Impossible de valider l'utilisateur·ice" msgstr "Impossible de valider l'utilisateur·ice"
#, elixir-format
#: lib/graphql/resolvers/user.ex:500 #: lib/graphql/resolvers/user.ex:500
msgid "User already disabled" msgid "User already disabled"
msgstr "L'utilisateur·ice est déjà désactivé·e" msgstr "L'utilisateur·ice est déjà désactivé·e"
#, elixir-format
#: lib/graphql/resolvers/user.ex:567 #: lib/graphql/resolvers/user.ex:567
msgid "User requested is not logged-in" msgid "User requested is not logged-in"
msgstr "L'utilisateur·ice demandé·e n'est pas connecté·e" msgstr "L'utilisateur·ice demandé·e n'est pas connecté·e"
#, elixir-format
#: lib/graphql/resolvers/group.ex:280 #: lib/graphql/resolvers/group.ex:280
msgid "You are already a member of this group" msgid "You are already a member of this group"
msgstr "Vous êtes déjà membre de ce groupe" msgstr "Vous êtes déjà membre de ce groupe"
#, elixir-format
#: lib/graphql/resolvers/group.ex:315 #: lib/graphql/resolvers/group.ex:315
msgid "You can't leave this group because you are the only administrator" msgid "You can't leave this group because you are the only administrator"
msgstr "Vous ne pouvez pas quitter ce groupe car vous en êtes le ou la seul·e administrateur·ice" msgstr "Vous ne pouvez pas quitter ce groupe car vous en êtes le ou la seul·e administrateur·ice"
#, elixir-format
#: lib/graphql/resolvers/group.ex:277 #: lib/graphql/resolvers/group.ex:277
msgid "You cannot join this group" msgid "You cannot join this group"
msgstr "Vous ne pouvez pas rejoindre ce groupe" msgstr "Vous ne pouvez pas rejoindre ce groupe"
#, elixir-format
#: lib/graphql/resolvers/group.ex:112 #: lib/graphql/resolvers/group.ex:112
msgid "You may not list groups unless moderator." msgid "You may not list groups unless moderator."
msgstr "Vous ne pouvez pas lister les groupes sauf à être modérateur·ice." msgstr "Vous ne pouvez pas lister les groupes sauf à être modérateur·ice."
#, elixir-format
#: lib/graphql/resolvers/user.ex:465 #: lib/graphql/resolvers/user.ex:465
msgid "You need to be logged-in to change your email" msgid "You need to be logged-in to change your email"
msgstr "Vous devez être connecté·e pour changer votre adresse e-mail" msgstr "Vous devez être connecté·e pour changer votre adresse e-mail"
#, elixir-format
#: lib/graphql/resolvers/user.ex:422 #: lib/graphql/resolvers/user.ex:422
msgid "You need to be logged-in to change your password" msgid "You need to be logged-in to change your password"
msgstr "Vous devez être connecté·e pour changer votre mot de passe" msgstr "Vous devez être connecté·e pour changer votre mot de passe"
#, elixir-format
#: lib/graphql/resolvers/group.ex:254 #: lib/graphql/resolvers/group.ex:254
msgid "You need to be logged-in to delete a group" msgid "You need to be logged-in to delete a group"
msgstr "Vous devez être connecté·e pour supprimer un groupe" msgstr "Vous devez être connecté·e pour supprimer un groupe"
#, elixir-format
#: lib/graphql/resolvers/user.ex:527 #: lib/graphql/resolvers/user.ex:527
msgid "You need to be logged-in to delete your account" msgid "You need to be logged-in to delete your account"
msgstr "Vous devez être connecté·e pour supprimer votre compte" msgstr "Vous devez être connecté·e pour supprimer votre compte"
#, elixir-format
#: lib/graphql/resolvers/group.ex:285 #: lib/graphql/resolvers/group.ex:285
msgid "You need to be logged-in to join a group" msgid "You need to be logged-in to join a group"
msgstr "Vous devez être connecté·e pour rejoindre un groupe" msgstr "Vous devez être connecté·e pour rejoindre un groupe"
#, elixir-format
#: lib/graphql/resolvers/group.ex:320 #: lib/graphql/resolvers/group.ex:320
msgid "You need to be logged-in to leave a group" msgid "You need to be logged-in to leave a group"
msgstr "Vous devez être connecté·e pour quitter un groupe" msgstr "Vous devez être connecté·e pour quitter un groupe"
#, elixir-format
#: lib/graphql/resolvers/group.ex:218 #: lib/graphql/resolvers/group.ex:218
msgid "You need to be logged-in to update a group" msgid "You need to be logged-in to update a group"
msgstr "Vous devez être connecté·e pour mettre à jour un groupe" msgstr "Vous devez être connecté·e pour mettre à jour un groupe"
#, elixir-format
#: lib/graphql/resolvers/user.ex:112 #: lib/graphql/resolvers/user.ex:112
msgid "You need to have an existing token to get a refresh token" msgid "You need to have an existing token to get a refresh token"
msgstr "Vous devez avoir un jeton existant pour obtenir un jeton de rafraîchissement" msgstr "Vous devez avoir un jeton existant pour obtenir un jeton de rafraîchissement"
#, elixir-format
#: lib/graphql/resolvers/user.ex:256 lib/graphql/resolvers/user.ex:281 #: lib/graphql/resolvers/user.ex:256 lib/graphql/resolvers/user.ex:281
msgid "You requested again a confirmation email too soon" msgid "You requested again a confirmation email too soon"
msgstr "Vous avez à nouveau demandé un email de confirmation trop vite" msgstr "Vous avez à nouveau demandé un email de confirmation trop vite"
#, elixir-format
#: lib/graphql/resolvers/user.ex:159 #: lib/graphql/resolvers/user.ex:159
msgid "Your email is not on the allowlist" msgid "Your email is not on the allowlist"
msgstr "Votre adresse e-mail n'est pas sur la liste d'autorisations" msgstr "Votre adresse e-mail n'est pas sur la liste d'autorisations"
#, elixir-format
#: lib/graphql/resolvers/actor.ex:100 #: lib/graphql/resolvers/actor.ex:100
msgid "Error while performing background task" msgid "Error while performing background task"
msgstr "Erreur lors de l'exécution d'une tâche d'arrière-plan" msgstr "Erreur lors de l'exécution d'une tâche d'arrière-plan"
#, elixir-format
#: lib/graphql/resolvers/actor.ex:32 #: lib/graphql/resolvers/actor.ex:32
msgid "No profile found with this ID" msgid "No profile found with this ID"
msgstr "Aucun profil trouvé avec cet ID" msgstr "Aucun profil trouvé avec cet ID"
#, elixir-format
#: lib/graphql/resolvers/actor.ex:61 lib/graphql/resolvers/actor.ex:97 #: lib/graphql/resolvers/actor.ex:61 lib/graphql/resolvers/actor.ex:97
msgid "No remote profile found with this ID" msgid "No remote profile found with this ID"
msgstr "Aucun profil distant trouvé avec cet ID" msgstr "Aucun profil distant trouvé avec cet ID"
#, elixir-format
#: lib/graphql/resolvers/actor.ex:72 #: lib/graphql/resolvers/actor.ex:72
msgid "Only moderators and administrators can suspend a profile" msgid "Only moderators and administrators can suspend a profile"
msgstr "Seul·es les modérateur·ice et les administrateur·ices peuvent suspendre un profil" msgstr "Seul·es les modérateur·ice et les administrateur·ices peuvent suspendre un profil"
#, elixir-format
#: lib/graphql/resolvers/actor.ex:105 #: lib/graphql/resolvers/actor.ex:105
msgid "Only moderators and administrators can unsuspend a profile" msgid "Only moderators and administrators can unsuspend a profile"
msgstr "Seul·es les modérateur·ice et les administrateur·ices peuvent annuler la suspension d'un profil" msgstr "Seul·es les modérateur·ice et les administrateur·ices peuvent annuler la suspension d'un profil"
#, elixir-format
#: lib/graphql/resolvers/actor.ex:29 #: lib/graphql/resolvers/actor.ex:29
msgid "Only remote profiles may be refreshed" msgid "Only remote profiles may be refreshed"
msgstr "Seuls les profils distants peuvent être rafraîchis" msgstr "Seuls les profils distants peuvent être rafraîchis"
#, elixir-format
#: lib/graphql/resolvers/actor.ex:64 #: lib/graphql/resolvers/actor.ex:64
msgid "Profile already suspended" msgid "Profile already suspended"
msgstr "Le profil est déjà suspendu" msgstr "Le profil est déjà suspendu"
#, elixir-format
#: lib/graphql/resolvers/participant.ex:96 #: lib/graphql/resolvers/participant.ex:96
msgid "A valid email is required by your instance" msgid "A valid email is required by your instance"
msgstr "Une adresse e-mail valide est requise par votre instance" msgstr "Une adresse e-mail valide est requise par votre instance"
#: lib/graphql/resolvers/participant.ex:90 lib/graphql/resolvers/participant.ex:143 #, elixir-format
#: lib/graphql/resolvers/participant.ex:90
#: lib/graphql/resolvers/participant.ex:143
msgid "Anonymous participation is not enabled" msgid "Anonymous participation is not enabled"
msgstr "La participation anonyme n'est pas activée" msgstr "La participation anonyme n'est pas activée"
#, elixir-format
#: lib/graphql/resolvers/person.ex:210 #: lib/graphql/resolvers/person.ex:210
msgid "Cannot remove the last administrator of a group" msgid "Cannot remove the last administrator of a group"
msgstr "Impossible de supprimer le ou la dernier·ère administrateur·ice d'un groupe" msgstr "Impossible de supprimer le ou la dernier·ère administrateur·ice d'un groupe"
#, elixir-format
#: lib/graphql/resolvers/person.ex:207 #: lib/graphql/resolvers/person.ex:207
msgid "Cannot remove the last identity of a user" msgid "Cannot remove the last identity of a user"
msgstr "Impossible de supprimer le dernier profil d'un·e utilisateur·ice" msgstr "Impossible de supprimer le dernier profil d'un·e utilisateur·ice"
#, elixir-format
#: lib/graphql/resolvers/comment.ex:126 #: lib/graphql/resolvers/comment.ex:126
msgid "Comment is already deleted" msgid "Comment is already deleted"
msgstr "Le commentaire est déjà supprimé" msgstr "Le commentaire est déjà supprimé"
#, elixir-format
#: lib/graphql/error.ex:101 lib/graphql/resolvers/discussion.ex:75 #: lib/graphql/error.ex:101 lib/graphql/resolvers/discussion.ex:75
msgid "Discussion not found" msgid "Discussion not found"
msgstr "Discussion non trouvée" msgstr "Discussion non trouvée"
#, elixir-format
#: lib/graphql/resolvers/report.ex:63 lib/graphql/resolvers/report.ex:82 #: lib/graphql/resolvers/report.ex:63 lib/graphql/resolvers/report.ex:82
msgid "Error while saving report" msgid "Error while saving report"
msgstr "Erreur lors de la sauvegarde du signalement" msgstr "Erreur lors de la sauvegarde du signalement"
#, elixir-format
#: lib/graphql/resolvers/report.ex:102 #: lib/graphql/resolvers/report.ex:102
msgid "Error while updating report" msgid "Error while updating report"
msgstr "Erreur lors de la mise à jour du signalement" msgstr "Erreur lors de la mise à jour du signalement"
#, elixir-format
#: lib/graphql/resolvers/participant.ex:131 #: lib/graphql/resolvers/participant.ex:131
msgid "Event id not found" msgid "Event id not found"
msgstr "ID de l'événement non trouvé" msgstr "ID de l'événement non trouvé"
#: lib/graphql/error.ex:98 lib/graphql/resolvers/event.ex:355 lib/graphql/resolvers/event.ex:407 #, elixir-format
#: lib/graphql/error.ex:98 lib/graphql/resolvers/event.ex:355
#: lib/graphql/resolvers/event.ex:407
msgid "Event not found" msgid "Event not found"
msgstr "Événement non trouvé" msgstr "Événement non trouvé"
#: lib/graphql/resolvers/participant.ex:87 lib/graphql/resolvers/participant.ex:128 #, elixir-format
#: lib/graphql/resolvers/participant.ex:155 lib/graphql/resolvers/participant.ex:336 #: lib/graphql/resolvers/participant.ex:87
#: lib/graphql/resolvers/participant.ex:128 lib/graphql/resolvers/participant.ex:155
#: lib/graphql/resolvers/participant.ex:336
msgid "Event with this ID %{id} doesn't exist" msgid "Event with this ID %{id} doesn't exist"
msgstr "L'événement avec cet ID %{id} n'existe pas" msgstr "L'événement avec cet ID %{id} n'existe pas"
#, elixir-format
#: lib/graphql/resolvers/participant.ex:103 #: lib/graphql/resolvers/participant.ex:103
msgid "Internal Error" msgid "Internal Error"
msgstr "Erreur interne" msgstr "Erreur interne"
#, elixir-format
#: lib/graphql/resolvers/discussion.ex:225 #: lib/graphql/resolvers/discussion.ex:225
msgid "No discussion with ID %{id}" msgid "No discussion with ID %{id}"
msgstr "Aucune discussion avec l'ID %{id}" msgstr "Aucune discussion avec l'ID %{id}"
#: lib/graphql/resolvers/todos.ex:80 lib/graphql/resolvers/todos.ex:107 lib/graphql/resolvers/todos.ex:179 #, elixir-format
#: lib/graphql/resolvers/todos.ex:208 lib/graphql/resolvers/todos.ex:237 #: lib/graphql/resolvers/todos.ex:80 lib/graphql/resolvers/todos.ex:107
#: lib/graphql/resolvers/todos.ex:179 lib/graphql/resolvers/todos.ex:208 lib/graphql/resolvers/todos.ex:237
msgid "No profile found for user" msgid "No profile found for user"
msgstr "Aucun profil trouvé pour l'utilisateur modérateur" msgstr "Aucun profil trouvé pour l'utilisateur modérateur"
#, elixir-format
#: lib/graphql/resolvers/feed_token.ex:64 #: lib/graphql/resolvers/feed_token.ex:64
msgid "No such feed token" msgid "No such feed token"
msgstr "Aucun jeton de flux correspondant" msgstr "Aucun jeton de flux correspondant"
#, elixir-format
#: lib/graphql/resolvers/participant.ex:259 #: lib/graphql/resolvers/participant.ex:259
msgid "Participant already has role %{role}" msgid "Participant already has role %{role}"
msgstr "Le ou la participant·e a déjà le rôle %{role}" msgstr "Le ou la participant·e a déjà le rôle %{role}"
#: lib/graphql/resolvers/participant.ex:187 lib/graphql/resolvers/participant.ex:220 #, elixir-format
#: lib/graphql/resolvers/participant.ex:263 #: lib/graphql/resolvers/participant.ex:187
#: lib/graphql/resolvers/participant.ex:220 lib/graphql/resolvers/participant.ex:263
msgid "Participant not found" msgid "Participant not found"
msgstr "Participant·e non trouvé·e" msgstr "Participant·e non trouvé·e"
#, elixir-format
#: lib/graphql/resolvers/person.ex:32 #: lib/graphql/resolvers/person.ex:32
msgid "Person with ID %{id} not found" msgid "Person with ID %{id} not found"
msgstr "Personne avec l'ID %{id} non trouvé" msgstr "Personne avec l'ID %{id} non trouvé"
#, elixir-format
#: lib/graphql/resolvers/person.ex:56 #: lib/graphql/resolvers/person.ex:56
msgid "Person with username %{username} not found" msgid "Person with username %{username} not found"
msgstr "Personne avec le nom %{name} non trouvé" msgstr "Personne avec le nom %{name} non trouvé"
#, elixir-format
#: lib/graphql/resolvers/post.ex:169 lib/graphql/resolvers/post.ex:203 #: lib/graphql/resolvers/post.ex:169 lib/graphql/resolvers/post.ex:203
msgid "Post ID is not a valid ID" msgid "Post ID is not a valid ID"
msgstr "L'ID du billet n'est pas un ID valide" msgstr "L'ID du billet n'est pas un ID valide"
#, elixir-format
#: lib/graphql/resolvers/post.ex:172 lib/graphql/resolvers/post.ex:206 #: lib/graphql/resolvers/post.ex:172 lib/graphql/resolvers/post.ex:206
msgid "Post doesn't exist" msgid "Post doesn't exist"
msgstr "Le billet n'existe pas" msgstr "Le billet n'existe pas"
#, elixir-format
#: lib/graphql/resolvers/member.ex:82 #: lib/graphql/resolvers/member.ex:82
msgid "Profile invited doesn't exist" msgid "Profile invited doesn't exist"
msgstr "Le profil invité n'existe pas" msgstr "Le profil invité n'existe pas"
#, elixir-format
#: lib/graphql/resolvers/member.ex:91 lib/graphql/resolvers/member.ex:95 #: lib/graphql/resolvers/member.ex:91 lib/graphql/resolvers/member.ex:95
msgid "Profile is already a member of this group" msgid "Profile is already a member of this group"
msgstr "Ce profil est déjà membre de ce groupe" msgstr "Ce profil est déjà membre de ce groupe"
#: lib/graphql/resolvers/post.ex:133 lib/graphql/resolvers/post.ex:175 lib/graphql/resolvers/post.ex:209 #, elixir-format
#: lib/graphql/resolvers/resource.ex:90 lib/graphql/resolvers/resource.ex:132 lib/graphql/resolvers/resource.ex:165 #: lib/graphql/resolvers/post.ex:133 lib/graphql/resolvers/post.ex:175
#: lib/graphql/resolvers/resource.ex:199 lib/graphql/resolvers/todos.ex:58 lib/graphql/resolvers/todos.ex:83 #: lib/graphql/resolvers/post.ex:209 lib/graphql/resolvers/resource.ex:90 lib/graphql/resolvers/resource.ex:132
#: lib/graphql/resolvers/todos.ex:110 lib/graphql/resolvers/todos.ex:182 lib/graphql/resolvers/todos.ex:214 #: lib/graphql/resolvers/resource.ex:165 lib/graphql/resolvers/resource.ex:199 lib/graphql/resolvers/todos.ex:58
#: lib/graphql/resolvers/todos.ex:246 #: lib/graphql/resolvers/todos.ex:83 lib/graphql/resolvers/todos.ex:110 lib/graphql/resolvers/todos.ex:182
#: lib/graphql/resolvers/todos.ex:214 lib/graphql/resolvers/todos.ex:246
msgid "Profile is not member of group" msgid "Profile is not member of group"
msgstr "Le profil n'est pas un·e membre du groupe" msgstr "Le profil n'est pas un·e membre du groupe"
#, elixir-format
#: lib/graphql/resolvers/actor.ex:67 lib/graphql/resolvers/person.ex:233 #: lib/graphql/resolvers/actor.ex:67 lib/graphql/resolvers/person.ex:233
msgid "Profile not found" msgid "Profile not found"
msgstr "Profile non trouvé" msgstr "Profile non trouvé"
#, elixir-format
#: lib/graphql/resolvers/report.ex:40 #: lib/graphql/resolvers/report.ex:40
msgid "Report not found" msgid "Report not found"
msgstr "Groupe non trouvé" msgstr "Groupe non trouvé"
#, elixir-format
#: lib/graphql/resolvers/resource.ex:169 lib/graphql/resolvers/resource.ex:196 #: lib/graphql/resolvers/resource.ex:169 lib/graphql/resolvers/resource.ex:196
msgid "Resource doesn't exist" msgid "Resource doesn't exist"
msgstr "La ressource n'existe pas" msgstr "La ressource n'existe pas"
#, elixir-format
#: lib/graphql/resolvers/participant.ex:124 #: lib/graphql/resolvers/participant.ex:124
msgid "The event has already reached its maximum capacity" msgid "The event has already reached its maximum capacity"
msgstr "L'événement a déjà atteint sa capacité maximale" msgstr "L'événement a déjà atteint sa capacité maximale"
#, elixir-format
#: lib/graphql/resolvers/participant.ex:282 #: lib/graphql/resolvers/participant.ex:282
msgid "This token is invalid" msgid "This token is invalid"
msgstr "Ce jeton est invalide" msgstr "Ce jeton est invalide"
#, elixir-format
#: lib/graphql/resolvers/todos.ex:176 lib/graphql/resolvers/todos.ex:243 #: lib/graphql/resolvers/todos.ex:176 lib/graphql/resolvers/todos.ex:243
msgid "Todo doesn't exist" msgid "Todo doesn't exist"
msgstr "Ce todo n'existe pas" msgstr "Ce todo n'existe pas"
#: lib/graphql/resolvers/todos.ex:77 lib/graphql/resolvers/todos.ex:211 lib/graphql/resolvers/todos.ex:240 #, elixir-format
#: lib/graphql/resolvers/todos.ex:77 lib/graphql/resolvers/todos.ex:211
#: lib/graphql/resolvers/todos.ex:240
msgid "Todo list doesn't exist" msgid "Todo list doesn't exist"
msgstr "Cette todo-liste n'existe pas" msgstr "Cette todo-liste n'existe pas"
#, elixir-format
#: lib/graphql/resolvers/feed_token.ex:73 #: lib/graphql/resolvers/feed_token.ex:73
msgid "Token does not exist" msgid "Token does not exist"
msgstr "Ce jeton n'existe pas" msgstr "Ce jeton n'existe pas"
#, elixir-format
#: lib/graphql/resolvers/feed_token.ex:67 lib/graphql/resolvers/feed_token.ex:70 #: lib/graphql/resolvers/feed_token.ex:67 lib/graphql/resolvers/feed_token.ex:70
msgid "Token is not a valid UUID" msgid "Token is not a valid UUID"
msgstr "Ce jeton n'est pas un UUID valide" msgstr "Ce jeton n'est pas un UUID valide"
#, elixir-format
#: lib/graphql/error.ex:96 lib/graphql/resolvers/person.ex:415 #: lib/graphql/error.ex:96 lib/graphql/resolvers/person.ex:415
msgid "User not found" msgid "User not found"
msgstr "Utilisateur·ice non trouvé·e" msgstr "Utilisateur·ice non trouvé·e"
#, elixir-format
#: lib/graphql/resolvers/person.ex:310 #: lib/graphql/resolvers/person.ex:310
msgid "You already have a profile for this user" msgid "You already have a profile for this user"
msgstr "Vous avez déjà un profil pour cet utilisateur" msgstr "Vous avez déjà un profil pour cet utilisateur"
#, elixir-format
#: lib/graphql/resolvers/participant.ex:134 #: lib/graphql/resolvers/participant.ex:134
msgid "You are already a participant of this event" msgid "You are already a participant of this event"
msgstr "Vous êtes déjà un·e participant·e à cet événement" msgstr "Vous êtes déjà un·e participant·e à cet événement"
#, elixir-format
#: lib/graphql/resolvers/member.ex:85 #: lib/graphql/resolvers/member.ex:85
msgid "You are not a member of this group" msgid "You are not a member of this group"
msgstr "Vous n'êtes pas membre de ce groupe" msgstr "Vous n'êtes pas membre de ce groupe"
#, elixir-format
#: lib/graphql/resolvers/member.ex:155 #: lib/graphql/resolvers/member.ex:155
msgid "You are not a moderator or admin for this group" msgid "You are not a moderator or admin for this group"
msgstr "Vous n'êtes pas administrateur·ice ou modérateur·ice de ce groupe" msgstr "Vous n'êtes pas administrateur·ice ou modérateur·ice de ce groupe"
#, elixir-format
#: lib/graphql/resolvers/comment.ex:59 #: lib/graphql/resolvers/comment.ex:59
msgid "You are not allowed to create a comment if not connected" msgid "You are not allowed to create a comment if not connected"
msgstr "Vous n'êtes pas autorisé·e à créer un commentaire si non connecté·e" msgstr "Vous n'êtes pas autorisé·e à créer un commentaire si non connecté·e"
#, elixir-format
#: lib/graphql/resolvers/feed_token.ex:41 #: lib/graphql/resolvers/feed_token.ex:41
msgid "You are not allowed to create a feed token if not connected" msgid "You are not allowed to create a feed token if not connected"
msgstr "Vous n'êtes pas autorisé·e à créer un jeton de flux si non connecté·e" msgstr "Vous n'êtes pas autorisé·e à créer un jeton de flux si non connecté·e"
#, elixir-format
#: lib/graphql/resolvers/comment.ex:134 #: lib/graphql/resolvers/comment.ex:134
msgid "You are not allowed to delete a comment if not connected" msgid "You are not allowed to delete a comment if not connected"
msgstr "Vous n'êtes pas autorisé·e à supprimer un commentaire si non connecté·e" msgstr "Vous n'êtes pas autorisé·e à supprimer un commentaire si non connecté·e"
#, elixir-format
#: lib/graphql/resolvers/feed_token.ex:82 #: lib/graphql/resolvers/feed_token.ex:82
msgid "You are not allowed to delete a feed token if not connected" msgid "You are not allowed to delete a feed token if not connected"
msgstr "Vous n'êtes pas autorisé·e à supprimer un jeton de flux si non connecté·e" msgstr "Vous n'êtes pas autorisé·e à supprimer un jeton de flux si non connecté·e"
#, elixir-format
#: lib/graphql/resolvers/comment.ex:93 #: lib/graphql/resolvers/comment.ex:93
msgid "You are not allowed to update a comment if not connected" msgid "You are not allowed to update a comment if not connected"
msgstr "Vous n'êtes pas autorisé·e à mettre à jour un commentaire si non connecté·e" msgstr "Vous n'êtes pas autorisé·e à mettre à jour un commentaire si non connecté·e"
#: lib/graphql/resolvers/participant.ex:181 lib/graphql/resolvers/participant.ex:214 #, elixir-format
#: lib/graphql/resolvers/participant.ex:181
#: lib/graphql/resolvers/participant.ex:214
msgid "You can't leave event because you're the only event creator participant" msgid "You can't leave event because you're the only event creator participant"
msgstr "Vous ne pouvez pas quitter cet événement car vous en êtes le ou la seule créateur·ice participant" msgstr "Vous ne pouvez pas quitter cet événement car vous en êtes le ou la seule créateur·ice participant"
#, elixir-format
#: lib/graphql/resolvers/member.ex:159 #: lib/graphql/resolvers/member.ex:159
msgid "You can't set yourself to a lower member role for this group because you are the only administrator" msgid "You can't set yourself to a lower member role for this group because you are the only administrator"
msgstr "" msgstr ""
"Vous ne pouvez pas vous définir avec un rôle de membre inférieur pour ce groupe car vous en êtes le ou la seul·e " "Vous ne pouvez pas vous définir avec un rôle de membre inférieur pour ce groupe car vous en êtes le ou la seul·e "
"administrateur·ice" "administrateur·ice"
#, elixir-format
#: lib/graphql/resolvers/comment.ex:122 #: lib/graphql/resolvers/comment.ex:122
msgid "You cannot delete this comment" msgid "You cannot delete this comment"
msgstr "Vous ne pouvez pas supprimer ce commentaire" msgstr "Vous ne pouvez pas supprimer ce commentaire"
#, elixir-format
#: lib/graphql/resolvers/event.ex:403 #: lib/graphql/resolvers/event.ex:403
msgid "You cannot delete this event" msgid "You cannot delete this event"
msgstr "Vous ne pouvez pas supprimer cet événement" msgstr "Vous ne pouvez pas supprimer cet événement"
#, elixir-format
#: lib/graphql/resolvers/member.ex:88 #: lib/graphql/resolvers/member.ex:88
msgid "You cannot invite to this group" msgid "You cannot invite to this group"
msgstr "Vous ne pouvez pas rejoindre ce groupe" msgstr "Vous ne pouvez pas rejoindre ce groupe"
#, elixir-format
#: lib/graphql/resolvers/feed_token.ex:76 #: lib/graphql/resolvers/feed_token.ex:76
msgid "You don't have permission to delete this token" msgid "You don't have permission to delete this token"
msgstr "Vous n'avez pas la permission de supprimer ce jeton" msgstr "Vous n'avez pas la permission de supprimer ce jeton"
#, elixir-format
#: lib/graphql/resolvers/admin.ex:54 #: lib/graphql/resolvers/admin.ex:54
msgid "You need to be logged-in and a moderator to list action logs" msgid "You need to be logged-in and a moderator to list action logs"
msgstr "Vous devez être connecté·e et une modérateur·ice pour lister les journaux de modération" msgstr "Vous devez être connecté·e et une modérateur·ice pour lister les journaux de modération"
#, elixir-format
#: lib/graphql/resolvers/report.ex:28 #: lib/graphql/resolvers/report.ex:28
msgid "You need to be logged-in and a moderator to list reports" msgid "You need to be logged-in and a moderator to list reports"
msgstr "Vous devez être connecté·e et une modérateur·ice pour lister les signalements" msgstr "Vous devez être connecté·e et une modérateur·ice pour lister les signalements"
#, elixir-format
#: lib/graphql/resolvers/report.ex:107 #: lib/graphql/resolvers/report.ex:107
msgid "You need to be logged-in and a moderator to update a report" msgid "You need to be logged-in and a moderator to update a report"
msgstr "Vous devez être connecté·e et une modérateur·ice pour modifier un signalement" msgstr "Vous devez être connecté·e et une modérateur·ice pour modifier un signalement"
#, elixir-format
#: lib/graphql/resolvers/report.ex:45 #: lib/graphql/resolvers/report.ex:45
msgid "You need to be logged-in and a moderator to view a report" msgid "You need to be logged-in and a moderator to view a report"
msgstr "Vous devez être connecté·e pour et une modérateur·ice pour visionner un signalement" msgstr "Vous devez être connecté·e pour et une modérateur·ice pour visionner un signalement"
#, elixir-format
#: lib/graphql/resolvers/admin.ex:246 #: lib/graphql/resolvers/admin.ex:246
msgid "You need to be logged-in and an administrator to access admin settings" msgid "You need to be logged-in and an administrator to access admin settings"
msgstr "Vous devez être connecté·e et un·e administrateur·ice pour accéder aux paramètres administrateur" msgstr "Vous devez être connecté·e et un·e administrateur·ice pour accéder aux paramètres administrateur"
#, elixir-format
#: lib/graphql/resolvers/admin.ex:230 #: lib/graphql/resolvers/admin.ex:230
msgid "You need to be logged-in and an administrator to access dashboard statistics" msgid "You need to be logged-in and an administrator to access dashboard statistics"
msgstr "Vous devez être connecté·e et un·e administrateur·ice pour accéder aux panneau de statistiques" msgstr "Vous devez être connecté·e et un·e administrateur·ice pour accéder aux panneau de statistiques"
#, elixir-format
#: lib/graphql/resolvers/admin.ex:272 #: lib/graphql/resolvers/admin.ex:272
msgid "You need to be logged-in and an administrator to save admin settings" msgid "You need to be logged-in and an administrator to save admin settings"
msgstr "Vous devez être connecté·e et un·e administrateur·ice pour sauvegarder les paramètres administrateur" msgstr "Vous devez être connecté·e et un·e administrateur·ice pour sauvegarder les paramètres administrateur"
#, elixir-format
#: lib/graphql/resolvers/discussion.ex:90 #: lib/graphql/resolvers/discussion.ex:90
msgid "You need to be logged-in to access discussions" msgid "You need to be logged-in to access discussions"
msgstr "Vous devez être connecté·e pour accéder aux discussions" msgstr "Vous devez être connecté·e pour accéder aux discussions"
#, elixir-format
#: lib/graphql/resolvers/resource.ex:96 #: lib/graphql/resolvers/resource.ex:96
msgid "You need to be logged-in to access resources" msgid "You need to be logged-in to access resources"
msgstr "Vous devez être connecté·e pour supprimer un groupe" msgstr "Vous devez être connecté·e pour supprimer un groupe"
#, elixir-format
#: lib/graphql/resolvers/event.ex:313 #: lib/graphql/resolvers/event.ex:313
msgid "You need to be logged-in to create events" msgid "You need to be logged-in to create events"
msgstr "Vous devez être connecté·e pour créer des événements" msgstr "Vous devez être connecté·e pour créer des événements"
#, elixir-format
#: lib/graphql/resolvers/post.ex:141 #: lib/graphql/resolvers/post.ex:141
msgid "You need to be logged-in to create posts" msgid "You need to be logged-in to create posts"
msgstr "Vous devez être connecté·e pour quitter un groupe" msgstr "Vous devez être connecté·e pour quitter un groupe"
#, elixir-format
#: lib/graphql/resolvers/report.ex:79 #: lib/graphql/resolvers/report.ex:79
msgid "You need to be logged-in to create reports" msgid "You need to be logged-in to create reports"
msgstr "Vous devez être connecté·e pour quitter un groupe" msgstr "Vous devez être connecté·e pour quitter un groupe"
#, elixir-format
#: lib/graphql/resolvers/resource.ex:137 #: lib/graphql/resolvers/resource.ex:137
msgid "You need to be logged-in to create resources" msgid "You need to be logged-in to create resources"
msgstr "Vous devez être connecté·e pour quitter un groupe" msgstr "Vous devez être connecté·e pour quitter un groupe"
#, elixir-format
#: lib/graphql/resolvers/event.ex:412 #: lib/graphql/resolvers/event.ex:412
msgid "You need to be logged-in to delete an event" msgid "You need to be logged-in to delete an event"
msgstr "Vous devez être connecté·e pour supprimer un groupe" msgstr "Vous devez être connecté·e pour supprimer un groupe"
#, elixir-format
#: lib/graphql/resolvers/post.ex:214 #: lib/graphql/resolvers/post.ex:214
msgid "You need to be logged-in to delete posts" msgid "You need to be logged-in to delete posts"
msgstr "Vous devez être connecté·e pour supprimer un groupe" msgstr "Vous devez être connecté·e pour supprimer un groupe"
#, elixir-format
#: lib/graphql/resolvers/resource.ex:204 #: lib/graphql/resolvers/resource.ex:204
msgid "You need to be logged-in to delete resources" msgid "You need to be logged-in to delete resources"
msgstr "Vous devez être connecté·e pour supprimer un groupe" msgstr "Vous devez être connecté·e pour supprimer un groupe"
#, elixir-format
#: lib/graphql/resolvers/participant.ex:108 #: lib/graphql/resolvers/participant.ex:108
msgid "You need to be logged-in to join an event" msgid "You need to be logged-in to join an event"
msgstr "Vous devez être connecté·e pour rejoindre un événement" msgstr "Vous devez être connecté·e pour rejoindre un événement"
#, elixir-format
#: lib/graphql/resolvers/participant.ex:225 #: lib/graphql/resolvers/participant.ex:225
msgid "You need to be logged-in to leave an event" msgid "You need to be logged-in to leave an event"
msgstr "Vous devez être connecté·e pour quitter un groupe" msgstr "Vous devez être connecté·e pour quitter un groupe"
#, elixir-format
#: lib/graphql/resolvers/event.ex:369 #: lib/graphql/resolvers/event.ex:369
msgid "You need to be logged-in to update an event" msgid "You need to be logged-in to update an event"
msgstr "Vous devez être connecté·e pour mettre à jour un groupe" msgstr "Vous devez être connecté·e pour mettre à jour un groupe"
#, elixir-format
#: lib/graphql/resolvers/post.ex:180 #: lib/graphql/resolvers/post.ex:180
msgid "You need to be logged-in to update posts" msgid "You need to be logged-in to update posts"
msgstr "Vous devez être connecté·e pour mettre à jour un groupe" msgstr "Vous devez être connecté·e pour mettre à jour un groupe"
#, elixir-format
#: lib/graphql/resolvers/resource.ex:174 #: lib/graphql/resolvers/resource.ex:174
msgid "You need to be logged-in to update resources" msgid "You need to be logged-in to update resources"
msgstr "Vous devez être connecté·e pour mettre à jour un groupe" msgstr "Vous devez être connecté·e pour mettre à jour un groupe"
#, elixir-format
#: lib/graphql/resolvers/resource.ex:233 #: lib/graphql/resolvers/resource.ex:233
msgid "You need to be logged-in to view a resource preview" msgid "You need to be logged-in to view a resource preview"
msgstr "Vous devez être connecté·e pour supprimer un groupe" msgstr "Vous devez être connecté·e pour supprimer un groupe"
#, elixir-format
#: lib/graphql/resolvers/resource.ex:129 #: lib/graphql/resolvers/resource.ex:129
msgid "Parent resource doesn't belong to this group" msgid "Parent resource doesn't belong to this group"
msgstr "La ressource parente n'appartient pas à ce groupe" msgstr "La ressource parente n'appartient pas à ce groupe"
#, elixir-format
#: lib/mobilizon/users/user.ex:114 #: lib/mobilizon/users/user.ex:114
msgid "The chosen password is too short." msgid "The chosen password is too short."
msgstr "Le mot de passe choisi est trop court." msgstr "Le mot de passe choisi est trop court."
#, elixir-format
#: lib/mobilizon/users/user.ex:142 #: lib/mobilizon/users/user.ex:142
msgid "The registration token is already in use, this looks like an issue on our side." msgid "The registration token is already in use, this looks like an issue on our side."
msgstr "Le jeton d'inscription est déjà utilisé, cela ressemble à un problème de notre côté." msgstr "Le jeton d'inscription est déjà utilisé, cela ressemble à un problème de notre côté."
#, elixir-format
#: lib/mobilizon/users/user.ex:108 #: lib/mobilizon/users/user.ex:108
msgid "This email is already used." msgid "This email is already used."
msgstr "Cette adresse e-mail est déjà utilisée." msgstr "Cette adresse e-mail est déjà utilisée."
#, elixir-format
#: lib/graphql/error.ex:97 #: lib/graphql/error.ex:97
msgid "Post not found" msgid "Post not found"
msgstr "Billet non trouvé" msgstr "Billet non trouvé"
#, elixir-format
#: lib/graphql/error.ex:84 #: lib/graphql/error.ex:84
msgid "Invalid arguments passed" msgid "Invalid arguments passed"
msgstr "Paramètres fournis invalides" msgstr "Paramètres fournis invalides"
#, elixir-format
#: lib/graphql/error.ex:90 #: lib/graphql/error.ex:90
msgid "Invalid credentials" msgid "Invalid credentials"
msgstr "Identifiants invalides" msgstr "Identifiants invalides"
#, elixir-format
#: lib/graphql/error.ex:88 #: lib/graphql/error.ex:88
msgid "Reset your password to login" msgid "Reset your password to login"
msgstr "Réinitialiser votre mot de passe pour vous connecter" msgstr "Réinitialiser votre mot de passe pour vous connecter"
#, elixir-format
#: lib/graphql/error.ex:95 lib/graphql/error.ex:100 #: lib/graphql/error.ex:95 lib/graphql/error.ex:100
msgid "Resource not found" msgid "Resource not found"
msgstr "Ressource non trouvée" msgstr "Ressource non trouvée"
#, elixir-format
#: lib/graphql/error.ex:102 #: lib/graphql/error.ex:102
msgid "Something went wrong" msgid "Something went wrong"
msgstr "Quelque chose s'est mal passé" msgstr "Quelque chose s'est mal passé"
#, elixir-format
#: lib/graphql/error.ex:83 #: lib/graphql/error.ex:83
msgid "Unknown Resource" msgid "Unknown Resource"
msgstr "Ressource inconnue" msgstr "Ressource inconnue"
#, elixir-format
#: lib/graphql/error.ex:93 #: lib/graphql/error.ex:93
msgid "You don't have permission to do this" msgid "You don't have permission to do this"
msgstr "Vous n'avez pas la permission de faire ceci" msgstr "Vous n'avez pas la permission de faire ceci"
#, elixir-format
#: lib/graphql/error.ex:85 #: lib/graphql/error.ex:85
msgid "You need to be logged in" msgid "You need to be logged in"
msgstr "Vous devez être connecté·e" msgstr "Vous devez être connecté·e"
#, elixir-format
#: lib/graphql/resolvers/member.ex:116 #: lib/graphql/resolvers/member.ex:116
msgid "You can't accept this invitation with this profile." msgid "You can't accept this invitation with this profile."
msgstr "Vous ne pouvez pas accepter cette invitation avec ce profil." msgstr "Vous ne pouvez pas accepter cette invitation avec ce profil."
#, elixir-format
#: lib/graphql/resolvers/member.ex:137 #: lib/graphql/resolvers/member.ex:137
msgid "You can't reject this invitation with this profile." msgid "You can't reject this invitation with this profile."
msgstr "Vous ne pouvez pas rejeter cette invitation avec ce profil." msgstr "Vous ne pouvez pas rejeter cette invitation avec ce profil."
#, elixir-format
#: lib/graphql/resolvers/media.ex:71 #: lib/graphql/resolvers/media.ex:71
msgid "File doesn't have an allowed MIME type." msgid "File doesn't have an allowed MIME type."
msgstr "Le fichier n'a pas un type MIME autorisé." msgstr "Le fichier n'a pas un type MIME autorisé."
#, elixir-format
#: lib/graphql/resolvers/group.ex:213 #: lib/graphql/resolvers/group.ex:213
msgid "Profile is not administrator for the group" msgid "Profile is not administrator for the group"
msgstr "Le profil n'est pas administrateur·ice pour le groupe" msgstr "Le profil n'est pas administrateur·ice pour le groupe"
#, elixir-format
#: lib/graphql/resolvers/event.ex:358 #: lib/graphql/resolvers/event.ex:358
msgid "You can't edit this event." msgid "You can't edit this event."
msgstr "Vous ne pouvez pas éditer cet événement." msgstr "Vous ne pouvez pas éditer cet événement."
#, elixir-format
#: lib/graphql/resolvers/event.ex:361 #: lib/graphql/resolvers/event.ex:361
msgid "You can't attribute this event to this profile." msgid "You can't attribute this event to this profile."
msgstr "Vous ne pouvez pas attribuer cet événement à ce profil." msgstr "Vous ne pouvez pas attribuer cet événement à ce profil."
#, elixir-format
#: lib/graphql/resolvers/member.ex:140 #: lib/graphql/resolvers/member.ex:140
msgid "This invitation doesn't exist." msgid "This invitation doesn't exist."
msgstr "Cette invitation n'existe pas." msgstr "Cette invitation n'existe pas."
#, elixir-format
#: lib/graphql/resolvers/member.ex:185 #: lib/graphql/resolvers/member.ex:185
msgid "This member already has been rejected." msgid "This member already has been rejected."
msgstr "Ce·tte membre a déjà été rejetté·e." msgstr "Ce·tte membre a déjà été rejetté·e."
#, elixir-format
#: lib/graphql/resolvers/member.ex:192 #: lib/graphql/resolvers/member.ex:192
msgid "You don't have the right to remove this member." msgid "You don't have the right to remove this member."
msgstr "Vous n'avez pas les droits pour supprimer ce·tte membre." msgstr "Vous n'avez pas les droits pour supprimer ce·tte membre."
#, elixir-format
#: lib/mobilizon/actors/actor.ex:349 #: lib/mobilizon/actors/actor.ex:349
msgid "This username is already taken." msgid "This username is already taken."
msgstr "Cet identifiant est déjà pris." msgstr "Cet identifiant est déjà pris."
#, elixir-format
#: lib/graphql/resolvers/discussion.ex:87 #: lib/graphql/resolvers/discussion.ex:87
msgid "You must provide either an ID or a slug to access a discussion" msgid "You must provide either an ID or a slug to access a discussion"
msgstr "Vous devez fournir un ID ou bien un slug pour accéder à une discussion" msgstr "Vous devez fournir un ID ou bien un slug pour accéder à une discussion"
#, elixir-format
#: lib/graphql/resolvers/event.ex:308 #: lib/graphql/resolvers/event.ex:308
msgid "Organizer profile is not owned by the user" msgid "Organizer profile is not owned by the user"
msgstr "Le profil de l'organisateur·ice n'appartient pas à l'utilisateur·ice" msgstr "Le profil de l'organisateur·ice n'appartient pas à l'utilisateur·ice"
#, elixir-format
#: lib/graphql/resolvers/participant.ex:93 #: lib/graphql/resolvers/participant.ex:93
msgid "Profile ID provided is not the anonymous profile one" msgid "Profile ID provided is not the anonymous profile one"
msgstr "L'ID du profil fourni n'est pas celui du profil anonyme" msgstr "L'ID du profil fourni n'est pas celui du profil anonyme"
#: lib/graphql/resolvers/group.ex:159 lib/graphql/resolvers/group.ex:201 lib/graphql/resolvers/person.ex:148 #, elixir-format
#: lib/graphql/resolvers/person.ex:182 lib/graphql/resolvers/person.ex:304 #: lib/graphql/resolvers/group.ex:159 lib/graphql/resolvers/group.ex:201
#: lib/graphql/resolvers/person.ex:148 lib/graphql/resolvers/person.ex:182 lib/graphql/resolvers/person.ex:304
msgid "The provided picture is too heavy" msgid "The provided picture is too heavy"
msgstr "L'image fournie est trop lourde" msgstr "L'image fournie est trop lourde"
#, elixir-format
#: lib/web/views/utils.ex:34 #: lib/web/views/utils.ex:34
msgid "Index file not found. You need to recompile the front-end." msgid "Index file not found. You need to recompile the front-end."
msgstr "Fichier d'index non trouvé. Vous devez recompiler le front-end." msgstr "Fichier d'index non trouvé. Vous devez recompiler le front-end."
#, elixir-format
#: lib/graphql/resolvers/resource.ex:126 #: lib/graphql/resolvers/resource.ex:126
msgid "Error while creating resource" msgid "Error while creating resource"
msgstr "Erreur lors de la création de la resource" msgstr "Erreur lors de la création de la resource"
#, elixir-format
#: lib/graphql/resolvers/user.ex:483 #: lib/graphql/resolvers/user.ex:483
msgid "Invalid activation token" msgid "Invalid activation token"
msgstr "Jeton d'activation invalide" msgstr "Jeton d'activation invalide"
#, elixir-format
#: lib/graphql/resolvers/resource.ex:223 #: lib/graphql/resolvers/resource.ex:223
msgid "Unable to fetch resource details from this URL." msgid "Unable to fetch resource details from this URL."
msgstr "Impossible de récupérer les détails de la ressource depuis cette URL." msgstr "Impossible de récupérer les détails de la ressource depuis cette URL."
#: lib/graphql/resolvers/event.ex:173 lib/graphql/resolvers/participant.ex:253 lib/graphql/resolvers/participant.ex:328 #, elixir-format
#: lib/graphql/resolvers/event.ex:173 lib/graphql/resolvers/participant.ex:253
#: lib/graphql/resolvers/participant.ex:328
msgid "Provided profile doesn't have moderator permissions on this event" msgid "Provided profile doesn't have moderator permissions on this event"
msgstr "Le profil modérateur fourni n'a pas de permissions sur cet événement" msgstr "Le profil modérateur fourni n'a pas de permissions sur cet événement"
#, elixir-format
#: lib/graphql/resolvers/event.ex:294 #: lib/graphql/resolvers/event.ex:294
msgid "Organizer profile doesn't have permission to create an event on behalf of this group" msgid "Organizer profile doesn't have permission to create an event on behalf of this group"
msgstr "Le profil de l'organisateur⋅ice n'a pas la permission de créer un événement au nom de ce groupe" msgstr "Le profil de l'organisateur⋅ice n'a pas la permission de créer un événement au nom de ce groupe"
#, elixir-format
#: lib/graphql/resolvers/event.ex:349 #: lib/graphql/resolvers/event.ex:349
msgid "This profile doesn't have permission to update an event on behalf of this group" msgid "This profile doesn't have permission to update an event on behalf of this group"
msgstr "Ce profil n'a pas la permission de mettre à jour un événement au nom du groupe" msgstr "Ce profil n'a pas la permission de mettre à jour un événement au nom du groupe"
#, elixir-format
#: lib/graphql/resolvers/user.ex:163 #: lib/graphql/resolvers/user.ex:163
msgid "Your e-mail has been denied registration or uses a disallowed e-mail provider" msgid "Your e-mail has been denied registration or uses a disallowed e-mail provider"
msgstr "Votre adresse e-mail a été refusée à l'inscription ou bien utilise un fournisseur d'e-mail interdit" msgstr "Votre adresse e-mail a été refusée à l'inscription ou bien utilise un fournisseur d'e-mail interdit"
#, elixir-format
#: lib/graphql/resolvers/comment.ex:129 #: lib/graphql/resolvers/comment.ex:129
msgid "Comment not found" msgid "Comment not found"
msgstr "Commentaire non trouvé" msgstr "Commentaire non trouvé"
#, elixir-format
#: lib/graphql/resolvers/discussion.ex:129 #: lib/graphql/resolvers/discussion.ex:129
msgid "Error while creating a discussion" msgid "Error while creating a discussion"
msgstr "Erreur lors de la création de la discussion" msgstr "Erreur lors de la création de la discussion"
#, elixir-format
#: lib/graphql/resolvers/user.ex:606 #: lib/graphql/resolvers/user.ex:606
msgid "Error while updating locale" msgid "Error while updating locale"
msgstr "Erreur lors de la mise à jour des options linguistiques" msgstr "Erreur lors de la mise à jour des options linguistiques"
#, elixir-format
#: lib/graphql/resolvers/person.ex:307 #: lib/graphql/resolvers/person.ex:307
msgid "Error while uploading pictures" msgid "Error while uploading pictures"
msgstr "Erreur lors du téléversement des images" msgstr "Erreur lors du téléversement des images"
#, elixir-format
#: lib/graphql/resolvers/participant.ex:190 #: lib/graphql/resolvers/participant.ex:190
msgid "Failed to leave the event" msgid "Failed to leave the event"
msgstr "Impossible de quitter l'événement" msgstr "Impossible de quitter l'événement"
#, elixir-format
#: lib/graphql/resolvers/group.ex:209 #: lib/graphql/resolvers/group.ex:209
msgid "Failed to update the group" msgid "Failed to update the group"
msgstr "Impossible de mettre à jour le groupe" msgstr "Impossible de mettre à jour le groupe"
#, elixir-format
#: lib/graphql/resolvers/user.ex:447 #: lib/graphql/resolvers/user.ex:447
msgid "Failed to update user email" msgid "Failed to update user email"
msgstr "Impossible de mettre à jour l'adresse e-mail de utilisateur" msgstr "Impossible de mettre à jour l'adresse e-mail de utilisateur"
#, elixir-format
#: lib/graphql/resolvers/user.ex:479 #: lib/graphql/resolvers/user.ex:479
msgid "Failed to validate user email" msgid "Failed to validate user email"
msgstr "Impossible de valider l'adresse e-mail de l'utilisateur·ice" msgstr "Impossible de valider l'adresse e-mail de l'utilisateur·ice"
#, elixir-format
#: lib/graphql/resolvers/participant.ex:146 #: lib/graphql/resolvers/participant.ex:146
msgid "The anonymous actor ID is invalid" msgid "The anonymous actor ID is invalid"
msgstr "L'ID de l'acteur anonyme est invalide" msgstr "L'ID de l'acteur anonyme est invalide"
#, elixir-format
#: lib/graphql/resolvers/resource.ex:162 #: lib/graphql/resolvers/resource.ex:162
msgid "Unknown error while updating resource" msgid "Unknown error while updating resource"
msgstr "Erreur inconnue lors de la mise à jour de la resource" msgstr "Erreur inconnue lors de la mise à jour de la resource"
#, elixir-format
#: lib/graphql/resolvers/comment.ex:84 #: lib/graphql/resolvers/comment.ex:84
msgid "You are not the comment creator" msgid "You are not the comment creator"
msgstr "Vous n'êtes pas le ou la createur⋅ice du commentaire" msgstr "Vous n'êtes pas le ou la createur⋅ice du commentaire"
#, elixir-format
#: lib/graphql/resolvers/user.ex:404 #: lib/graphql/resolvers/user.ex:404
msgid "You cannot change your password." msgid "You cannot change your password."
msgstr "Vous ne pouvez pas changer votre mot de passe." msgstr "Vous ne pouvez pas changer votre mot de passe."
#, elixir-format
#: lib/graphql/resolvers/participant.ex:321 #: lib/graphql/resolvers/participant.ex:321
msgid "Format not supported" msgid "Format not supported"
msgstr "Format non supporté" msgstr "Format non supporté"
#, elixir-format
#: lib/graphql/resolvers/participant.ex:305 #: lib/graphql/resolvers/participant.ex:305
msgid "A dependency needed to export to %{format} is not installed" msgid "A dependency needed to export to %{format} is not installed"
msgstr "Une dépendance nécessaire pour exporter en %{format} n'est pas installée" msgstr "Une dépendance nécessaire pour exporter en %{format} n'est pas installée"
#, elixir-format
#: lib/graphql/resolvers/participant.ex:313 #: lib/graphql/resolvers/participant.ex:313
msgid "An error occured while saving export" msgid "An error occured while saving export"
msgstr "Une erreur est survenue lors de l'enregistrement de l'export" msgstr "Une erreur est survenue lors de l'enregistrement de l'export"
#, elixir-format
#: lib/web/controllers/export_controller.ex:30 #: lib/web/controllers/export_controller.ex:30
msgid "Export to format %{format} is not enabled on this instance" msgid "Export to format %{format} is not enabled on this instance"
msgstr "L'export au format %{format} n'est pas activé sur cette instance" msgstr "L'export au format %{format} n'est pas activé sur cette instance"
#, elixir-format
#: lib/graphql/resolvers/group.ex:165 #: lib/graphql/resolvers/group.ex:165
msgid "Only admins can create groups" msgid "Only admins can create groups"
msgstr "Seul⋅es les administrateur⋅ices peuvent créer des groupes" msgstr "Seul⋅es les administrateur⋅ices peuvent créer des groupes"
#, elixir-format
#: lib/graphql/resolvers/event.ex:301 #: lib/graphql/resolvers/event.ex:301
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "Seuls les groupes peuvent créer des événements" msgstr "Seuls les groupes peuvent créer des événements"
#, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "Erreur inconnue lors de la création de l'événement" msgstr "Erreur inconnue lors de la création de l'événement"
#, elixir-format
#: lib/graphql/resolvers/user.ex:460 #: lib/graphql/resolvers/user.ex:460
msgid "User cannot change email" msgid "User cannot change email"
msgstr "L'utilisateur ne peut changer son adresse e-mail" msgstr "L'utilisateur ne peut changer son adresse e-mail"

View file

@ -32,7 +32,7 @@ msgid "Activate my account"
msgstr "Activar a miña conta" msgstr "Activar a miña conta"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Pregunta á comunidade en Framacolibri" msgstr "Pregunta á comunidade en Framacolibri"
@ -117,7 +117,7 @@ msgstr ""
"activalo. Se non foches ti, por favor ignora este email." "activalo. Se non foches ti, por favor ignora este email."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "Foi aprobada a túa participación no evento %{title}" msgstr "Foi aprobada a túa participación no evento %{title}"
@ -127,7 +127,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "Foi rexeitada a túa participación no evento %{title}" msgstr "Foi rexeitada a túa participación no evento %{title}"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "Actualizouse o evento %{title}" msgstr "Actualizouse o evento %{title}"
@ -143,12 +143,12 @@ msgstr ""
"Solicitaches un novo contrasinal para a túa conta na instancia %{instance]." "Solicitaches un novo contrasinal para a túa conta na instancia %{instance]."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Aviso" msgstr "Aviso"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "Confirma a túa participación no evento %{title}" msgstr "Confirma a túa participación no evento %{title}"
@ -370,7 +370,7 @@ msgstr[1] "%{nb_events} eventos previstos hoxe"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "Hoxe tes un evento:" msgstr[0] "Hoxe tes un evento:"
@ -881,7 +881,7 @@ msgstr ""
"confirma o email proporcionado:" "confirma o email proporcionado:"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "Precisas axuda? Algo non funciona como agardabas?" msgstr "Precisas axuda? Algo non funciona como agardabas?"
@ -917,9 +917,9 @@ msgstr "Por favor, non o utilices nun entorno de produción."
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -945,7 +945,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "%{instance} funciona grazas a Mobilizon." msgstr "%{instance} funciona grazas a Mobilizon."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "<b>%{instance}</b> funciona grazas a Mobilizon." msgstr "<b>%{instance}</b> funciona grazas a Mobilizon."
@ -972,11 +972,6 @@ msgstr "Confirma o novo email"
msgid "End" msgid "End"
msgstr "Fin" msgstr "Fin"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr "Remata o %{ends_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -1045,7 +1040,7 @@ msgstr ""
"da ligazón superior e preme no botón « Participar »." "da ligazón superior e preme no botón « Participar »."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "Coñece máis acerca de Mobilizon!" msgstr "Coñece máis acerca de Mobilizon!"
@ -1102,11 +1097,6 @@ msgstr "Lamentámos que non participes."
msgid "Start" msgid "Start"
msgstr "Inicio" msgstr "Inicio"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr "Comeza en %{begins_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1165,16 +1155,10 @@ msgid "Visit the updated event page"
msgstr "Visita a páxina do evento actualizada" msgstr "Visita a páxina do evento actualizada"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "Visita a páxina do evento actualizada: %{link}" msgstr "Visita a páxina do evento actualizada: %{link}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr "Que acontece nesta semana?"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1223,7 +1207,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "Se non propiciaches ti o cambio, por favor ignora esta mensaxe." msgstr "Se non propiciaches ti o cambio, por favor ignora esta mensaxe."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "<b>Por favor, non o uses para eventos reais.</b>" msgstr "<b>Por favor, non o uses para eventos reais.</b>"
@ -1495,7 +1479,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "Recentemente solicitaches participar en <b>%{title}</b>." msgstr "Recentemente solicitaches participar en <b>%{title}</b>."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "Confirmouse a túa participación no evento %{title}" msgstr "Confirmouse a túa participación no evento %{title}"
@ -1627,7 +1611,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "Lamentámolo, pero algo está a fallar pola nosa parte." msgstr "Lamentámolo, pero algo está a fallar pola nosa parte."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "Este é un sitio web de exemplo para probar Mobilizon." msgstr "Este é un sitio web de exemplo para probar Mobilizon."
@ -1804,3 +1788,55 @@ msgstr "Participación aprobada"
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr "Un evento previsto nesta semana"
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -977,7 +977,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -37,7 +37,7 @@ msgid "Activate my account"
msgstr "Saját fiók aktiválása" msgstr "Saját fiók aktiválása"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Kérdezze meg a közösséget a Framacolibrin" msgstr "Kérdezze meg a közösséget a Framacolibrin"
@ -124,7 +124,7 @@ msgstr ""
"kívül a levelet." "kívül a levelet."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "Jóváhagyták a részvételét a(z) %{title} eseményen" msgstr "Jóváhagyták a részvételét a(z) %{title} eseményen"
@ -134,7 +134,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "Elutasították a részvételét a(z) %{title} eseményen" msgstr "Elutasították a részvételét a(z) %{title} eseményen"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "A(z) %{title} esemény frissítésre került" msgstr "A(z) %{title} esemény frissítésre került"
@ -149,12 +149,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "Új jelszót kért a(z) %{instance} példányon lévő fiókjához." msgstr "Új jelszót kért a(z) %{instance} példányon lévő fiókjához."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Figyelmeztetés" msgstr "Figyelmeztetés"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "Erősítse meg a részvételét a(z) %{title} eseményen" msgstr "Erősítse meg a részvételét a(z) %{title} eseményen"
@ -376,7 +376,7 @@ msgstr[1] "%{nb_events} tervezett esemény ma"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "Egy eseménye van ma:" msgstr[0] "Egy eseménye van ma:"
@ -771,7 +771,7 @@ msgid "Hi there! You just registered to join this event: « %{title} ». Please
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "" msgstr ""
@ -804,9 +804,9 @@ msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -826,7 +826,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "" msgstr ""
@ -853,11 +853,6 @@ msgstr "Új e-mail-cím megerősítése"
msgid "End" msgid "End"
msgstr "Befejezés" msgstr "Befejezés"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr "Befejezés: %{ends_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -910,7 +905,7 @@ msgid "If you wish to cancel your attendance, visit the event page through the l
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "" msgstr ""
@ -967,11 +962,6 @@ msgstr "Sajnáljuk! Ön nem megy."
msgid "Start" msgid "Start"
msgstr "Kezdés" msgstr "Kezdés"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr "Kezdés: %{begins_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1028,16 +1018,10 @@ msgid "Visit the updated event page"
msgstr "A frissített eseményoldal felkeresése" msgstr "A frissített eseményoldal felkeresése"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "A frissített eseményoldal felkeresése: %{link}" msgstr "A frissített eseményoldal felkeresése: %{link}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr "Mi lesz a héten?"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1081,7 +1065,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "" msgstr ""
@ -1266,7 +1250,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "" msgstr ""
@ -1389,7 +1373,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "" msgstr ""
@ -1555,3 +1539,55 @@ msgstr "Részvétel jóváhagyva"
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr "Egy esemény tervezve a héten"
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -997,7 +997,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -33,7 +33,7 @@ msgid "Activate my account"
msgstr "Aktifkan akun saya" msgstr "Aktifkan akun saya"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Bertanya ke komunitas di Framacolibri" msgstr "Bertanya ke komunitas di Framacolibri"
@ -112,7 +112,7 @@ msgid "You created an account on %{host} with this email address. You are one cl
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "Keikutsertaan Anda pada acara %{title} telah diterima" msgstr "Keikutsertaan Anda pada acara %{title} telah diterima"
@ -122,7 +122,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "Keikutsertaan Anda pada acara %{title} telah ditolak" msgstr "Keikutsertaan Anda pada acara %{title} telah ditolak"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "Acara %{title} telah diperbarui" msgstr "Acara %{title} telah diperbarui"
@ -137,12 +137,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Peringatan" msgstr "Peringatan"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "Konfirmasi keikutsertaan Anda pada acara %{title}" msgstr "Konfirmasi keikutsertaan Anda pada acara %{title}"
@ -346,7 +346,7 @@ msgstr[0] "%{nb_events} acara direncanakan hari ini"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "Anda memiliki %{total} acara hari ini:" msgstr[0] "Anda memiliki %{total} acara hari ini:"
@ -753,7 +753,7 @@ msgstr ""
"Harap konfirmasi alamat surel yang Anda berikan:" "Harap konfirmasi alamat surel yang Anda berikan:"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "Butuh bantuan? Ada yang tidak bekerja sesuai ekspektasi?" msgstr "Butuh bantuan? Ada yang tidak bekerja sesuai ekspektasi?"
@ -786,9 +786,9 @@ msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -806,7 +806,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "%{instance} didukung oleh Mobilizon." msgstr "%{instance} didukung oleh Mobilizon."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "<b>%{instance}</b> didukung oleh Mobilizon." msgstr "<b>%{instance}</b> didukung oleh Mobilizon."
@ -833,11 +833,6 @@ msgstr "Konfirmasi surel baru"
msgid "End" msgid "End"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -890,7 +885,7 @@ msgid "If you wish to cancel your attendance, visit the event page through the l
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "Pelajari lebih lanjut tentang Mobilizon di sini!" msgstr "Pelajari lebih lanjut tentang Mobilizon di sini!"
@ -945,11 +940,6 @@ msgstr "Maaf! Anda tidak ikut."
msgid "Start" msgid "Start"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1008,16 +998,10 @@ msgid "Visit the updated event page"
msgstr "Kunjungi halaman acara yang sudah diperbarui" msgstr "Kunjungi halaman acara yang sudah diperbarui"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "Kunjungi halaman acara yang sudah diperbarui: %{link}" msgstr "Kunjungi halaman acara yang sudah diperbarui: %{link}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr "Ada apa pekan ini?"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1061,7 +1045,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "" msgstr ""
@ -1249,7 +1233,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "" msgstr ""
@ -1372,7 +1356,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "" msgstr ""
@ -1538,3 +1522,55 @@ msgstr ""
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr "%{nb_events} acara direncanakan pekan ini"
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -951,7 +951,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -32,7 +32,7 @@ msgid "Activate my account"
msgstr "Attiva il mio account" msgstr "Attiva il mio account"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Chiedi alla comunità su Framacolibri" msgstr "Chiedi alla comunità su Framacolibri"
@ -117,7 +117,7 @@ msgstr ""
"dall'attivarlo. Se non sei tu ignora questo messaggio." "dall'attivarlo. Se non sei tu ignora questo messaggio."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "La tua partecipazione all'evento %{title} è stata approvata" msgstr "La tua partecipazione all'evento %{title} è stata approvata"
@ -127,7 +127,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "La tua partecipazione all'evento %{title} è stata rifiutata" msgstr "La tua partecipazione all'evento %{title} è stata rifiutata"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "L'evento %{title} è stato aggiornato" msgstr "L'evento %{title} è stato aggiornato"
@ -142,12 +142,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "Hai richiesto una nuova password per il tuo account su %{instance}." msgstr "Hai richiesto una nuova password per il tuo account su %{instance}."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Avviso" msgstr "Avviso"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "Conferma la tua partecipazione all'evento %{title}" msgstr "Conferma la tua partecipazione all'evento %{title}"
@ -371,7 +371,7 @@ msgstr[1] "%{nb_events} eventi programmati oggi"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "Hai un evento oggi:" msgstr[0] "Hai un evento oggi:"
@ -904,7 +904,7 @@ msgstr ""
"Conferma l'indirizzo e-mail che hai fornito:" "Conferma l'indirizzo e-mail che hai fornito:"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "Bisogno di aiuto? Qualcosa non funziona correttamente?" msgstr "Bisogno di aiuto? Qualcosa non funziona correttamente?"
@ -941,9 +941,9 @@ msgstr "Si prega di non usarlo per scopi reali."
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -970,7 +970,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "% {instance} è alimentata da Mobilizon." msgstr "% {instance} è alimentata da Mobilizon."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "<b>%{instance}</b> è alimentata da Mobilizon." msgstr "<b>%{instance}</b> è alimentata da Mobilizon."
@ -997,11 +997,6 @@ msgstr "Conferma il nuovo indirizzo e-mail"
msgid "End" msgid "End"
msgstr "Fine" msgstr "Fine"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr "Fine %{ends_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -1071,7 +1066,7 @@ msgstr ""
"tramite il link in alto e fai clic sul pulsante «Partecipanti»." "tramite il link in alto e fai clic sul pulsante «Partecipanti»."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "Scopri di più su Mobilizon qui!" msgstr "Scopri di più su Mobilizon qui!"
@ -1128,11 +1123,6 @@ msgstr "Peccato! Non ci sei andato."
msgid "Start" msgid "Start"
msgstr "Inizio" msgstr "Inizio"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr "Inizio %{begins_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1194,16 +1184,10 @@ msgid "Visit the updated event page"
msgstr "Visita la pagina dell'evento aggiornata" msgstr "Visita la pagina dell'evento aggiornata"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "Visita la pagina dell'evento aggiornata:% {link}" msgstr "Visita la pagina dell'evento aggiornata:% {link}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr "Che succede questa settimana?"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1254,7 +1238,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "Se non hai attivato tu stesso la modifica, ignora questo messaggio." msgstr "Se non hai attivato tu stesso la modifica, ignora questo messaggio."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "<b> Si prega di non utilizzarlo per scopi reali. </b>" msgstr "<b> Si prega di non utilizzarlo per scopi reali. </b>"
@ -1537,7 +1521,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "Recentemente hai richiesto di partecipare <b>%{title}</b>." msgstr "Recentemente hai richiesto di partecipare <b>%{title}</b>."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "La tua partecipazione all'evento %{title} è stata confermata" msgstr "La tua partecipazione all'evento %{title} è stata confermata"
@ -1672,7 +1656,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "Siamo spiacenti, ma qualcosa è andato storto da parte nostra." msgstr "Siamo spiacenti, ma qualcosa è andato storto da parte nostra."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "Questo è un sito di prova per testare Mobilizon." msgstr "Questo è un sito di prova per testare Mobilizon."
@ -1845,3 +1829,55 @@ msgstr "Partecipazione approvata"
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr "Un evento in programma questa settimana"
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -974,7 +974,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -30,7 +30,7 @@ msgid "Activate my account"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "" msgstr ""
@ -109,7 +109,7 @@ msgid "You created an account on %{host} with this email address. You are one cl
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "" msgstr ""
@ -119,7 +119,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "" msgstr ""
@ -134,12 +134,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "" msgstr ""
@ -329,7 +329,7 @@ msgstr[0] ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "" msgstr[0] ""
@ -718,7 +718,7 @@ msgid "Hi there! You just registered to join this event: « %{title} ». Please
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "" msgstr ""
@ -751,9 +751,9 @@ msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -771,7 +771,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "" msgstr ""
@ -798,11 +798,6 @@ msgstr ""
msgid "End" msgid "End"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -855,7 +850,7 @@ msgid "If you wish to cancel your attendance, visit the event page through the l
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "" msgstr ""
@ -910,11 +905,6 @@ msgstr ""
msgid "Start" msgid "Start"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -971,16 +961,10 @@ msgid "Visit the updated event page"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1024,7 +1008,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "" msgstr ""
@ -1209,7 +1193,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "" msgstr ""
@ -1332,7 +1316,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "" msgstr ""
@ -1498,3 +1482,55 @@ msgstr ""
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -944,7 +944,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -33,7 +33,7 @@ msgid "Activate my account"
msgstr "Activeer mijn account" msgstr "Activeer mijn account"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Vragen aan de gemeenschap op Framacolibri" msgstr "Vragen aan de gemeenschap op Framacolibri"
@ -118,7 +118,7 @@ msgstr ""
"klik van de activering. Gelieve deze email te negeren als u dit niet was." "klik van de activering. Gelieve deze email te negeren als u dit niet was."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "Uw deelname aan het evenement %{title} is goedgekeurd" msgstr "Uw deelname aan het evenement %{title} is goedgekeurd"
@ -128,7 +128,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "Uw deelname aan het evenement %{title} is afgewezen" msgstr "Uw deelname aan het evenement %{title} is afgewezen"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "Evenement %{title} is bijgewerkt" msgstr "Evenement %{title} is bijgewerkt"
@ -143,12 +143,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "U hebt een nieuw wachtwoord aangevraagd voor uw account op %{instance}." msgstr "U hebt een nieuw wachtwoord aangevraagd voor uw account op %{instance}."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Waarschuwing" msgstr "Waarschuwing"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "" msgstr ""
@ -339,7 +339,7 @@ msgstr[1] ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "" msgstr[0] ""
@ -732,7 +732,7 @@ msgid "Hi there! You just registered to join this event: « %{title} ». Please
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "Hulp nodig? Werkt iets niet juist?" msgstr "Hulp nodig? Werkt iets niet juist?"
@ -767,9 +767,9 @@ msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -793,7 +793,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "%{instance} is een Mobilizonserver." msgstr "%{instance} is een Mobilizonserver."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "%{instance} is een Mobilizonserver." msgstr "%{instance} is een Mobilizonserver."
@ -820,11 +820,6 @@ msgstr ""
msgid "End" msgid "End"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -879,7 +874,7 @@ msgstr ""
"via de link hierboven, en klikt u op de deelnameknop." "via de link hierboven, en klikt u op de deelnameknop."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "Leer meer over Mobilizon." msgstr "Leer meer over Mobilizon."
@ -934,11 +929,6 @@ msgstr ""
msgid "Start" msgid "Start"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -995,16 +985,10 @@ msgid "Visit the updated event page"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "Bekijk het bijgewerkte evenement op: %{link}" msgstr "Bekijk het bijgewerkte evenement op: %{link}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1048,7 +1032,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "" msgstr ""
@ -1233,7 +1217,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "U hebt gevraagd om deel te nemen aan het evenement %{title}." msgstr "U hebt gevraagd om deel te nemen aan het evenement %{title}."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "Uw deelname aan het evenement %{title} is goedgekeurd" msgstr "Uw deelname aan het evenement %{title} is goedgekeurd"
@ -1357,7 +1341,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "Dit is een demosite om de bètaversie van Mobilizon te testen." msgstr "Dit is een demosite om de bètaversie van Mobilizon te testen."
@ -1523,3 +1507,55 @@ msgstr "Deelname goedgekeurd"
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -950,7 +950,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -32,7 +32,7 @@ msgid "Activate my account"
msgstr "Ta i bruk kontoen min" msgstr "Ta i bruk kontoen min"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Spør brukarsamfunnet på Framacolibri" msgstr "Spør brukarsamfunnet på Framacolibri"
@ -118,7 +118,7 @@ msgstr ""
"berre oversjå denne eposten." "berre oversjå denne eposten."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "Deltakinga di på hendinga %{title} er godkjent" msgstr "Deltakinga di på hendinga %{title} er godkjent"
@ -128,7 +128,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "Deltakinga di på hendinga %{title} er avslegen" msgstr "Deltakinga di på hendinga %{title} er avslegen"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "Hendinga %{title} er oppdatert" msgstr "Hendinga %{title} er oppdatert"
@ -143,12 +143,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "Du ba om eit nytt passord for brukarkontoen din på %{instance}." msgstr "Du ba om eit nytt passord for brukarkontoen din på %{instance}."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Åtvaring" msgstr "Åtvaring"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "Stadfest at du vil delta på hendinga %{title}" msgstr "Stadfest at du vil delta på hendinga %{title}"
@ -365,7 +365,7 @@ msgstr[1] "%{nb_events} planlagde hendingar i dag"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "Du har ei hending i dag:" msgstr[0] "Du har ei hending i dag:"
@ -877,7 +877,7 @@ msgstr ""
"epostadressa du skreiv inn:" "epostadressa du skreiv inn:"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "Treng du hjelp, eller er det noko som ikkje verkar slik du venta?" msgstr "Treng du hjelp, eller er det noko som ikkje verkar slik du venta?"
@ -912,9 +912,9 @@ msgstr "Ikkje bruk han på ordentleg."
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -940,7 +940,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "%{instance} er ein Mobilizon-nettstad." msgstr "%{instance} er ein Mobilizon-nettstad."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "<b>%{instance}</b> er ein Mobilizon-nettstad." msgstr "<b>%{instance}</b> er ein Mobilizon-nettstad."
@ -967,11 +967,6 @@ msgstr "Stadfest ny epostadresse"
msgid "End" msgid "End"
msgstr "Slutt" msgstr "Slutt"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr "Slutt %{ends_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -1040,7 +1035,7 @@ msgstr ""
"og klkka på «Deltek»-knappen." "og klkka på «Deltek»-knappen."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "Lær meir om Mobilizon her!" msgstr "Lær meir om Mobilizon her!"
@ -1096,11 +1091,6 @@ msgstr "Orsak! Du er ikkje påmeld."
msgid "Start" msgid "Start"
msgstr "Start" msgstr "Start"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr "Startar %{begins_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1159,16 +1149,10 @@ msgid "Visit the updated event page"
msgstr "Sjå på den oppdaterte hendingssida" msgstr "Sjå på den oppdaterte hendingssida"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "Sjå på den oppdaterte hendingssida: %{link}" msgstr "Sjå på den oppdaterte hendingssida: %{link}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr "Kva skjer denne veka?"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1218,7 +1202,7 @@ msgstr ""
"Viss du ikkje endra dette sjølv, kan du trygt sjå bort frå denne meldinga." "Viss du ikkje endra dette sjølv, kan du trygt sjå bort frå denne meldinga."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "<b>Ikkje bruk det på ordentleg.</b>" msgstr "<b>Ikkje bruk det på ordentleg.</b>"
@ -1493,7 +1477,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "Du ba nett om å vera med på <b>%{title}</b>." msgstr "Du ba nett om å vera med på <b>%{title}</b>."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "Me har stadfesta at du deltek på hendinga %{title}" msgstr "Me har stadfesta at du deltek på hendinga %{title}"
@ -1628,7 +1612,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "Orsak, det skjedde noko feil hjå oss." msgstr "Orsak, det skjedde noko feil hjå oss."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "Dette er ei demoside for å prøva ut Mobilizon." msgstr "Dette er ei demoside for å prøva ut Mobilizon."
@ -1803,3 +1787,55 @@ msgstr "Deltakinga er godkjend"
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "Anonym deltakar" msgstr "Anonym deltakar"
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr "Ei planlagd hending denne veka"
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -994,7 +994,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "Det var ein ukjend feil då ressursen vart oppdatert" msgstr "Det var ein ukjend feil då ressursen vart oppdatert"

View file

@ -31,7 +31,7 @@ msgid "Activate my account"
msgstr "Activar mon compte" msgstr "Activar mon compte"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Demandatz a la comunautat sus Framacolibri" msgstr "Demandatz a la comunautat sus Framacolibri"
@ -110,7 +110,7 @@ msgid "You created an account on %{host} with this email address. You are one cl
msgstr "Avètz creat un compte sus %{host} amb aquesta adreça electronica. Sètz a un clic de lactivar." msgstr "Avètz creat un compte sus %{host} amb aquesta adreça electronica. Sètz a un clic de lactivar."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "Vòstra participacion a leveniment %{title} es estada aprovada" msgstr "Vòstra participacion a leveniment %{title} es estada aprovada"
@ -120,7 +120,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "Vòstra participacion a leveniment %{title} es estada regetada" msgstr "Vòstra participacion a leveniment %{title} es estada regetada"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "Leveniment %{title} es estat actualizat" msgstr "Leveniment %{title} es estat actualizat"
@ -135,12 +135,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "Avètz demandat un nòu senhal per vòstre compte sus %{instance}." msgstr "Avètz demandat un nòu senhal per vòstre compte sus %{instance}."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Avertiment" msgstr "Avertiment"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "Confirmatz vòstra participacion a leveniment %{title}" msgstr "Confirmatz vòstra participacion a leveniment %{title}"
@ -362,7 +362,7 @@ msgstr[1] "%{nb_events} eveniments previstes uèi"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "Avètz un eveniment uèi:" msgstr[0] "Avètz un eveniment uèi:"
@ -800,7 +800,7 @@ msgid "Hi there! You just registered to join this event: « %{title} ». Please
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "Besonh dajuda? Quicòm truca?" msgstr "Besonh dajuda? Quicòm truca?"
@ -837,9 +837,9 @@ msgstr "Mercés de lutilizar pas dun biais real."
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -865,7 +865,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "%{instance} es una instància Mobilizon." msgstr "%{instance} es una instància Mobilizon."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "<b>%{instance}</b> es una instància Mobilizon." msgstr "<b>%{instance}</b> es una instància Mobilizon."
@ -892,11 +892,6 @@ msgstr "Confirmatz vòstra adreça electronica"
msgid "End" msgid "End"
msgstr "Fin" msgstr "Fin"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr "Fin %{ends_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -952,7 +947,7 @@ msgstr ""
"participacion." "participacion."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "Ne saber mai tocant Mobilizon." msgstr "Ne saber mai tocant Mobilizon."
@ -1007,11 +1002,6 @@ msgstr ""
msgid "Start" msgid "Start"
msgstr "Debuta" msgstr "Debuta"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr "Debuta %{begins_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1071,16 +1061,10 @@ msgid "Visit the updated event page"
msgstr "Veire la pagina de l'eveniment mes a jorn" msgstr "Veire la pagina de l'eveniment mes a jorn"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "Veire leveniment actualizat sus : %{link}" msgstr "Veire leveniment actualizat sus : %{link}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr "Qué de nòu aquesta setmana?"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1125,7 +1109,7 @@ msgstr ""
"Savètz pas demandat aquesta modificacion, mercés dignorar aqueste messatge." "Savètz pas demandat aquesta modificacion, mercés dignorar aqueste messatge."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "<b>Mercés de lutilizar pas dun biais real.</b>" msgstr "<b>Mercés de lutilizar pas dun biais real.</b>"
@ -1318,7 +1302,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "Avètz demandat de participar a leveniment <b>%{title}</b>." msgstr "Avètz demandat de participar a leveniment <b>%{title}</b>."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "Vòstra participacion a leveniment %{title} es estada aprovada" msgstr "Vòstra participacion a leveniment %{title} es estada aprovada"
@ -1441,7 +1425,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "" msgstr ""
@ -1608,3 +1592,55 @@ msgstr "Participacion aprovada"
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr "Un eveniment previst aquesta setmana"
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -962,7 +962,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -34,7 +34,7 @@ msgid "Activate my account"
msgstr "Aktywuj moje konto" msgstr "Aktywuj moje konto"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Zapytaj społeczność na Framacolibri" msgstr "Zapytaj społeczność na Framacolibri"
@ -120,7 +120,7 @@ msgstr ""
"e-mail." "e-mail."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "Twój udział w wydarzeniu %{title} został zatwierdzony" msgstr "Twój udział w wydarzeniu %{title} został zatwierdzony"
@ -130,7 +130,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "Twój udział w wydarzeniu %(title} został odrzucony" msgstr "Twój udział w wydarzeniu %(title} został odrzucony"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "Wydarzenie %{title} zostało zaktualizowane" msgstr "Wydarzenie %{title} zostało zaktualizowane"
@ -145,12 +145,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "Poprosiłeś(-aś) o nowe hasło do swojego konta na %{instance}." msgstr "Poprosiłeś(-aś) o nowe hasło do swojego konta na %{instance}."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Ostrzeżenie" msgstr "Ostrzeżenie"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "Potwierdź swoje uczestnictwo w wydarzeniu %{title}" msgstr "Potwierdź swoje uczestnictwo w wydarzeniu %{title}"
@ -362,7 +362,7 @@ msgstr[2] "%{nv_events} wydareń zaplanowanych na dzisiaj"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "Masz dzisiaj jedno wydarzenie:" msgstr[0] "Masz dzisiaj jedno wydarzenie:"
@ -795,7 +795,7 @@ msgstr ""
"„%{title}”. Potwierdź wprowadzony adres e-mail:" "„%{title}”. Potwierdź wprowadzony adres e-mail:"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "Potrzebujesz pomocy? Coś nie działa prawidłowo?" msgstr "Potrzebujesz pomocy? Coś nie działa prawidłowo?"
@ -830,9 +830,9 @@ msgstr "Nie używaj go do żadnych rzeczywistych celów"
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -864,7 +864,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "%{instance} jest serwerem Mobilizon." msgstr "%{instance} jest serwerem Mobilizon."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "%{instance} jest serwerem Mobilizon." msgstr "%{instance} jest serwerem Mobilizon."
@ -891,11 +891,6 @@ msgstr "Potwierdź nowy e-mail"
msgid "End" msgid "End"
msgstr "Koniec" msgstr "Koniec"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr "Koniec %{ends_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -963,7 +958,7 @@ msgstr ""
"używając powyższego przycisku i naciśnij przycisk zgłaszania udziału." "używając powyższego przycisku i naciśnij przycisk zgłaszania udziału."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "Dowiedz się więcej o Mobilizon." msgstr "Dowiedz się więcej o Mobilizon."
@ -1018,11 +1013,6 @@ msgstr "Przepraszamy! Nie weźmiesz udziału."
msgid "Start" msgid "Start"
msgstr "Początek" msgstr "Początek"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr "Początek %{begins_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1081,16 +1071,10 @@ msgid "Visit the updated event page"
msgstr "Odwiedź zaktualizowaną stronę wydarzenia" msgstr "Odwiedź zaktualizowaną stronę wydarzenia"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "Zobacz zaktualizowane wydarzenie na %{link}" msgstr "Zobacz zaktualizowane wydarzenie na %{link}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr "Co wydarzy się w tym tygodniu?"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1134,7 +1118,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "Nie używaj go do żadnych rzeczywistych celów" msgstr "Nie używaj go do żadnych rzeczywistych celów"
@ -1329,7 +1313,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "Poprosiłeś(-aś) o uczestnictwo w wydarzeniu %{title}." msgstr "Poprosiłeś(-aś) o uczestnictwo w wydarzeniu %{title}."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "Twój udział w wydarzeniu %{title} został zatwierdzony" msgstr "Twój udział w wydarzeniu %{title} został zatwierdzony"
@ -1456,7 +1440,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "Przepraszamy, ale coś poszło nie tak po naszej stronie." msgstr "Przepraszamy, ale coś poszło nie tak po naszej stronie."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "To jest strona demonstracyjna pozwalająca na przetestowanie Mobilizon." msgstr "To jest strona demonstracyjna pozwalająca na przetestowanie Mobilizon."
@ -1622,3 +1606,55 @@ msgstr "Uczestnictwo przyjęte"
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr "Jedno wydarzenie zaplanowane na ten tydzień"
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -979,7 +979,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -28,7 +28,7 @@ msgid "Activate my account"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "" msgstr ""
@ -107,7 +107,7 @@ msgid "You created an account on %{host} with this email address. You are one cl
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "" msgstr ""
@ -117,7 +117,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "" msgstr ""
@ -132,12 +132,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "" msgstr ""
@ -328,7 +328,7 @@ msgstr[1] ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "" msgstr[0] ""
@ -721,7 +721,7 @@ msgid "Hi there! You just registered to join this event: « %{title} ». Please
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "" msgstr ""
@ -754,9 +754,9 @@ msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -776,7 +776,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "" msgstr ""
@ -803,11 +803,6 @@ msgstr ""
msgid "End" msgid "End"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -860,7 +855,7 @@ msgid "If you wish to cancel your attendance, visit the event page through the l
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "" msgstr ""
@ -915,11 +910,6 @@ msgstr ""
msgid "Start" msgid "Start"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -976,16 +966,10 @@ msgid "Visit the updated event page"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1029,7 +1013,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "" msgstr ""
@ -1214,7 +1198,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "" msgstr ""
@ -1337,7 +1321,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "" msgstr ""
@ -1503,3 +1487,55 @@ msgstr ""
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -950,7 +950,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -32,7 +32,7 @@ msgid "Activate my account"
msgstr "Ativar a minha conta" msgstr "Ativar a minha conta"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Perguntar à comunidade Framacolibri" msgstr "Perguntar à comunidade Framacolibri"
@ -118,7 +118,7 @@ msgstr ""
"ignorar este e-mail." "ignorar este e-mail."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "A sua participação no evento %{title} foi aprovada" msgstr "A sua participação no evento %{title} foi aprovada"
@ -128,7 +128,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "A sua participação no evento %{title} foi rejeitada" msgstr "A sua participação no evento %{title} foi rejeitada"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "Evento %{title} foi atualizado" msgstr "Evento %{title} foi atualizado"
@ -143,12 +143,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "Você solicitou uma nova senha para sua conta em %{instance}." msgstr "Você solicitou uma nova senha para sua conta em %{instance}."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Atenção" msgstr "Atenção"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "Confirmar sua participação no evento %{title}" msgstr "Confirmar sua participação no evento %{title}"
@ -374,7 +374,7 @@ msgstr[1] ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "" msgstr[0] ""
@ -790,7 +790,7 @@ msgid "Hi there! You just registered to join this event: « %{title} ». Please
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "Precisa de ajuda? Algo não está funcionando bem?" msgstr "Precisa de ajuda? Algo não está funcionando bem?"
@ -825,9 +825,9 @@ msgstr "Por favor não utilize este serviço em nenhum caso real"
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -851,7 +851,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "%{instance} é um servidor Mobilizon." msgstr "%{instance} é um servidor Mobilizon."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "%{instance} é um servidor Mobilizon." msgstr "%{instance} é um servidor Mobilizon."
@ -878,11 +878,6 @@ msgstr ""
msgid "End" msgid "End"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -937,7 +932,7 @@ msgstr ""
"evento através do link acima e clique no botão participação." "evento através do link acima e clique no botão participação."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "Aprenda mais sobre Mobilizon." msgstr "Aprenda mais sobre Mobilizon."
@ -992,11 +987,6 @@ msgstr ""
msgid "Start" msgid "Start"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1053,16 +1043,10 @@ msgid "Visit the updated event page"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "Veja o evento atualizado em: %{link}" msgstr "Veja o evento atualizado em: %{link}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1106,7 +1090,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "Por favor não utilize este serviço em nenhum caso real" msgstr "Por favor não utilize este serviço em nenhum caso real"
@ -1326,7 +1310,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "Você solicitou participar no evento %{title}." msgstr "Você solicitou participar no evento %{title}."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "A sua participação no evento %{title} foi aprovada" msgstr "A sua participação no evento %{title} foi aprovada"
@ -1449,7 +1433,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "Este é um site de demonstração para testar a versão beta do Mobilizon." msgstr "Este é um site de demonstração para testar a versão beta do Mobilizon."
@ -1615,3 +1599,55 @@ msgstr "Participação aprovada"
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -950,7 +950,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -33,7 +33,7 @@ msgid "Activate my account"
msgstr "Активировать мою учётную запись" msgstr "Активировать мою учётную запись"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Обратиться к сообществу на Framacolibri" msgstr "Обратиться к сообществу на Framacolibri"
@ -119,7 +119,7 @@ msgstr ""
"это письмо." "это письмо."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "Ваше участие в мероприятии %{title} было одобрено" msgstr "Ваше участие в мероприятии %{title} было одобрено"
@ -129,7 +129,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "Ваш запрос на участие в %{title} был отклонен" msgstr "Ваш запрос на участие в %{title} был отклонен"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "Мероприятие %{title} было обновлено" msgstr "Мероприятие %{title} было обновлено"
@ -144,12 +144,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "Вы запросили новый пароль для своей учетной записи на %{instance}." msgstr "Вы запросили новый пароль для своей учетной записи на %{instance}."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Предупреждение" msgstr "Предупреждение"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "Подтвердите свое участие в мероприятии %{title}" msgstr "Подтвердите свое участие в мероприятии %{title}"
@ -374,7 +374,7 @@ msgstr[2] "Сегодня запланировано %{nb_events} меропри
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "У вас сегодня одно мероприятие:" msgstr[0] "У вас сегодня одно мероприятие:"
@ -901,7 +901,7 @@ msgstr ""
"указали:" "указали:"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "Нужна помощь? Что-то не работает?" msgstr "Нужна помощь? Что-то не работает?"
@ -938,9 +938,9 @@ msgstr "Пожалуйста, используйте это только для
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -974,7 +974,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "%{instance} работает на платформе Mobilizon." msgstr "%{instance} работает на платформе Mobilizon."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "<b>%{instance}</b> работает на платформе Mobilizon." msgstr "<b>%{instance}</b> работает на платформе Mobilizon."
@ -1001,11 +1001,6 @@ msgstr "Подтвердите новый адрес электронной по
msgid "End" msgid "End"
msgstr "Конец" msgstr "Конец"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr "Конец %{ends_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -1075,7 +1070,7 @@ msgstr ""
"мероприятия по ссылке выше и нажмите кнопку « Я участвую »." "мероприятия по ссылке выше и нажмите кнопку « Я участвую »."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "Узнайте больше о Mobilizon!" msgstr "Узнайте больше о Mobilizon!"
@ -1130,11 +1125,6 @@ msgstr "Очень жаль! Вы не будете участвовать."
msgid "Start" msgid "Start"
msgstr "Начало" msgstr "Начало"
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr "Начало %{begins_on}"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1193,16 +1183,10 @@ msgid "Visit the updated event page"
msgstr "Посетите обновленную страницу мероприятия" msgstr "Посетите обновленную страницу мероприятия"
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "Посетите обновленную страницу мероприятия: %{link}" msgstr "Посетите обновленную страницу мероприятия: %{link}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr "Что будет на этой неделе?"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1254,7 +1238,7 @@ msgstr ""
"сообщение." "сообщение."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "<b>Пожалуйста, используйте это только для тестовых целей.</b>" msgstr "<b>Пожалуйста, используйте это только для тестовых целей.</b>"
@ -1531,7 +1515,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "Вы недавно запросили участие в мероприятии <b>%{title}</b>." msgstr "Вы недавно запросили участие в мероприятии <b>%{title}</b>."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "Ваше участие в мероприятии %{title} одобрено" msgstr "Ваше участие в мероприятии %{title} одобрено"
@ -1668,7 +1652,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "Сожалеем, но с нашей стороны что-то пошло не так." msgstr "Сожалеем, но с нашей стороны что-то пошло не так."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "Это демонстрационная площадка для тестирования Mobilizon." msgstr "Это демонстрационная площадка для тестирования Mobilizon."
@ -1848,3 +1832,55 @@ msgstr ""
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr "На этой неделе запланировано одно мероприятие"
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -1005,7 +1005,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "Неизвестная ошибка при обновлении ресурса" msgstr "Неизвестная ошибка при обновлении ресурса"

View file

@ -33,7 +33,7 @@ msgid "Activate my account"
msgstr "Aktivera mitt konto" msgstr "Aktivera mitt konto"
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:118 #: lib/web/templates/email/email.html.heex:123
#: lib/web/templates/email/email.text.eex:9 #: lib/web/templates/email/email.text.eex:9
msgid "Ask the community on Framacolibri" msgid "Ask the community on Framacolibri"
msgstr "Fråga människorna på Framacolibri" msgstr "Fråga människorna på Framacolibri"
@ -119,7 +119,7 @@ msgstr ""
"du strunta i det här meddelandet." "du strunta i det här meddelandet."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:108 #: lib/web/email/participation.ex:111
msgid "Your participation to event %{title} has been approved" msgid "Your participation to event %{title} has been approved"
msgstr "Din förfrågan om att få delta i evenemanget %{title} har godkännts" msgstr "Din förfrågan om att få delta i evenemanget %{title} har godkännts"
@ -129,7 +129,7 @@ msgid "Your participation to event %{title} has been rejected"
msgstr "Din förfrågan om att få delta i evenemanget %{title} har fått avslag" msgstr "Din förfrågan om att få delta i evenemanget %{title} har fått avslag"
#, elixir-format #, elixir-format
#: lib/web/email/event.ex:36 #: lib/web/email/event.ex:45
msgid "Event %{title} has been updated" msgid "Event %{title} has been updated"
msgstr "Evenemanget %{title} har uppdaterats" msgstr "Evenemanget %{title} har uppdaterats"
@ -144,12 +144,12 @@ msgid "You requested a new password for your account on %{instance}."
msgstr "Du har bett om ett nytt lösenord för ditt konto på %{instance}." msgstr "Du har bett om ett nytt lösenord för ditt konto på %{instance}."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:86 #: lib/web/templates/email/email.html.heex:91
msgid "Warning" msgid "Warning"
msgstr "Varning" msgstr "Varning"
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:131 #: lib/web/email/participation.ex:135
msgid "Confirm your participation to event %{title}" msgid "Confirm your participation to event %{title}"
msgstr "Bekräfta ditt deltagande i eventet %{title}" msgstr "Bekräfta ditt deltagande i eventet %{title}"
@ -344,7 +344,7 @@ msgstr[1] "%{nb_events} evenemang har planerats idag"
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:38 #: lib/web/templates/email/on_day_notification.html.heex:38
#: lib/web/templates/email/on_day_notification.text.eex:4 #: lib/web/templates/email/on_day_notification.text.eex:3
msgid "You have one event today:" msgid "You have one event today:"
msgid_plural "You have %{total} events today:" msgid_plural "You have %{total} events today:"
msgstr[0] "Du har ett evenemang idag:" msgstr[0] "Du har ett evenemang idag:"
@ -737,7 +737,7 @@ msgid "Hi there! You just registered to join this event: « %{title} ». Please
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:115 #: lib/web/templates/email/email.html.heex:120
#: lib/web/templates/email/email.text.eex:8 #: lib/web/templates/email/email.text.eex:8
msgid "Need help? Is something not working as expected?" msgid "Need help? Is something not working as expected?"
msgstr "Behöver du hjälp? Är det något som krånglar?" msgstr "Behöver du hjälp? Är det något som krånglar?"
@ -772,9 +772,9 @@ msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63 #: lib/web/templates/email/anonymous_participation_confirmation.html.heex:63
#: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133 #: lib/web/templates/email/anonymous_participation_confirmation.text.eex:6 lib/web/templates/email/event_updated.html.heex:133
#: lib/web/templates/email/event_updated.text.eex:24 lib/web/templates/email/notification_each_week.html.heex:70 #: lib/web/templates/email/event_updated.text.eex:22 lib/web/templates/email/notification_each_week.html.heex:60
#: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:70 #: lib/web/templates/email/notification_each_week.text.eex:11 lib/web/templates/email/on_day_notification.html.heex:60
#: lib/web/templates/email/on_day_notification.text.eex:14 #: lib/web/templates/email/on_day_notification.text.eex:11
msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button." msgid "Would you wish to cancel your attendance, visit the event page through the link above and click the « Attending » button."
msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button." msgid_plural "Would you wish to cancel your attendance to one or several events, visit the event pages through the links above and click the « Attending » button."
msgstr[0] "" msgstr[0] ""
@ -798,7 +798,7 @@ msgid "%{instance} is powered by Mobilizon."
msgstr "%{instance} är en Mobilizon-server." msgstr "%{instance} är en Mobilizon-server."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:143 #: lib/web/templates/email/email.html.heex:148
msgid "<b>%{instance}</b> is powered by Mobilizon." msgid "<b>%{instance}</b> is powered by Mobilizon."
msgstr "<b>%{instance}</b> är en Mobilizon-server." msgstr "<b>%{instance}</b> är en Mobilizon-server."
@ -825,11 +825,6 @@ msgstr ""
msgid "End" msgid "End"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:21
msgid "End %{ends_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.html.heex:13 #: lib/web/templates/email/event_updated.html.heex:13
#: lib/web/templates/email/event_updated.text.eex:1 #: lib/web/templates/email/event_updated.text.eex:1
@ -885,7 +880,7 @@ msgstr ""
"länken ovan, och klicka på deltagande-knappen." "länken ovan, och klicka på deltagande-knappen."
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:144 #: lib/web/templates/email/email.html.heex:149
#: lib/web/templates/email/email.text.eex:11 #: lib/web/templates/email/email.text.eex:11
msgid "Learn more about Mobilizon here!" msgid "Learn more about Mobilizon here!"
msgstr "Läs mer om Mobilizon här!" msgstr "Läs mer om Mobilizon här!"
@ -940,11 +935,6 @@ msgstr ""
msgid "Start" msgid "Start"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/event_updated.text.eex:18
msgid "Start %{begins_on}"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:3 #: lib/web/templates/email/event_updated.text.eex:3
msgid "There have been changes for %{title} so we'd thought we'd let you know." msgid "There have been changes for %{title} so we'd thought we'd let you know."
@ -1001,16 +991,10 @@ msgid "Visit the updated event page"
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/event_updated.text.eex:23 #: lib/web/templates/email/event_updated.text.eex:21
msgid "Visit the updated event page: %{link}" msgid "Visit the updated event page: %{link}"
msgstr "Visa det uppdaterade evenemanget på %{link}" msgstr "Visa det uppdaterade evenemanget på %{link}"
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "What's up this week?"
msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/on_day_notification.html.heex:13 #: lib/web/templates/email/on_day_notification.html.heex:13
#: lib/web/templates/email/on_day_notification.text.eex:1 #: lib/web/templates/email/on_day_notification.text.eex:1
@ -1054,7 +1038,7 @@ msgid "If you didn't trigger the change yourself, please ignore this message."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:90 #: lib/web/templates/email/email.html.heex:95
msgid "<b>Please do not use it for real purposes.</b>" msgid "<b>Please do not use it for real purposes.</b>"
msgstr "" msgstr ""
@ -1239,7 +1223,7 @@ msgid "You recently requested to attend <b>%{title}</b>."
msgstr "Du har bett om att få delta i evenemanget <b>%{title}</b>." msgstr "Du har bett om att få delta i evenemanget <b>%{title}</b>."
#, elixir-format #, elixir-format
#: lib/web/email/participation.ex:88 #: lib/web/email/participation.ex:90
msgid "Your participation to event %{title} has been confirmed" msgid "Your participation to event %{title} has been confirmed"
msgstr "Din förfrågan om att få delta i evenemanget %{title} har godkännts" msgstr "Din förfrågan om att få delta i evenemanget %{title} har godkännts"
@ -1364,7 +1348,7 @@ msgid "We're sorry, but something went wrong on our end."
msgstr "" msgstr ""
#, elixir-format #, elixir-format
#: lib/web/templates/email/email.html.heex:89 #: lib/web/templates/email/email.html.heex:94
#: lib/web/templates/email/email.text.eex:4 #: lib/web/templates/email/email.text.eex:4
msgid "This is a demonstration site to test Mobilizon." msgid "This is a demonstration site to test Mobilizon."
msgstr "" msgstr ""
@ -1531,3 +1515,55 @@ msgstr "Ditt deltagande har godkänts"
#: lib/service/export/participants/common.ex:88 #: lib/service/export/participants/common.ex:88
msgid "Anonymous participant" msgid "Anonymous participant"
msgstr "" msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.html.heex:6
#: lib/web/templates/email/date/event_tz_date_range.html.heex:7 lib/web/templates/email/date/event_tz_date_range.html.heex:12
msgid "🌐 %{timezone} %{offset}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (%{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date.text.eex:1
msgid "%{date_time} (in your timezone %{timezone} %{offset})"
msgstr ""
#, elixir-format
#: lib/web/templates/email/notification_each_week.html.heex:13
#: lib/web/templates/email/notification_each_week.text.eex:1
msgid "On the agenda this week"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:11
msgid "Details"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:10
msgid "From the %{start} to the %{end}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:68
msgid "Manage your participation"
msgstr ""
#, elixir-format
#: lib/web/templates/email/date/event_tz_date_range.html.heex:5
msgid "On %{date} from %{start_time} to %{end_time}"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/event_card.html.heex:19
msgid "Read more"
msgstr ""
#, elixir-format
#: lib/web/templates/email/participation/card/_metadata.html.heex:50
msgid "Online event"
msgstr ""

View file

@ -957,7 +957,7 @@ msgstr ""
msgid "Only groups can create events" msgid "Only groups can create events"
msgstr "" msgstr ""
#, elixir-format, fuzzy #, elixir-format
#: lib/graphql/resolvers/event.ex:287 #: lib/graphql/resolvers/event.ex:287
msgid "Unknown error while creating event" msgid "Unknown error while creating event"
msgstr "" msgstr ""

View file

@ -0,0 +1,9 @@
defmodule Mobilizon.Storage.Repo.Migrations.AddCodeToParticipants do
use Ecto.Migration
def change do
alter table(:participants) do
add(:code, :string)
end
end
end

View file

@ -932,11 +932,11 @@ defmodule Mobilizon.Web.Resolvers.EventTest do
test "update_event/3 updates an event", %{conn: conn, actor: actor, user: user} do test "update_event/3 updates an event", %{conn: conn, actor: actor, user: user} do
event = insert(:event, organizer_actor: actor) event = insert(:event, organizer_actor: actor)
_creator = insert(:participant, event: event, actor: actor, role: :creator) creator = insert(:participant, event: event, actor: actor, role: :creator)
participant_user = insert(:user) participant_user = insert(:user)
participant_actor = insert(:actor, user: participant_user) participant_actor = insert(:actor, user: participant_user)
_participant = participant =
insert(:participant, event: event, actor: participant_actor, role: :participant) insert(:participant, event: event, actor: participant_actor, role: :participant)
address = insert(:address) address = insert(:address)
@ -1010,6 +1010,7 @@ defmodule Mobilizon.Web.Resolvers.EventTest do
assert_delivered_email( assert_delivered_email(
Email.Event.event_updated( Email.Event.event_updated(
user.email, user.email,
creator,
actor, actor,
event, event,
new_event, new_event,
@ -1020,6 +1021,7 @@ defmodule Mobilizon.Web.Resolvers.EventTest do
assert_delivered_email( assert_delivered_email(
Email.Event.event_updated( Email.Event.event_updated(
participant_user.email, participant_user.email,
participant,
participant_actor, participant_actor,
event, event,
new_event, new_event,

View file

@ -0,0 +1,65 @@
defmodule Mobilizon.Service.TimezoneDetectorTest do
@moduledoc """
Test the timezone detector
"""
alias Mobilizon.Service.TimezoneDetector
use Mobilizon.DataCase
describe "detect when no geographic data is provided" do
test "with timezone" do
assert "Europe/Paris" == TimezoneDetector.detect("Europe/Paris", "Europe/Paris")
end
test "with invalid timezone" do
assert "Europe/Paris" == TimezoneDetector.detect("Europe/Neuilly", "Europe/Paris")
end
test "with default" do
assert "Europe/Paris" == TimezoneDetector.detect(nil, "Europe/Paris")
end
end
describe "with geographic data provided" do
test "when valid with value" do
assert "Europe/Berlin" ==
TimezoneDetector.detect(
"Europe/Berlin",
%Geo.Point{coordinates: {4.842569, 45.751718}, properties: %{}, srid: 4326},
"Europe/Moscow"
)
end
test "when valid with no value" do
assert "Europe/Paris" ==
TimezoneDetector.detect(
nil,
%Geo.Point{coordinates: {4.842569, 45.751718}, properties: %{}, srid: 4326},
"Europe/Moscow"
)
end
test "when valid with inalid value" do
assert "Europe/Paris" ==
TimezoneDetector.detect(
"Europe/Neuilly",
%Geo.Point{coordinates: {4.842569, 45.751718}, properties: %{}, srid: 4326},
"Europe/Moscow"
)
end
test "with invalid coordinates" do
assert "Europe/Moscow" ==
TimezoneDetector.detect(
nil,
%Geo.Point{coordinates: {0, 0}, properties: %{}, srid: 4326},
"Europe/Moscow"
)
end
test "with no data" do
assert "Europe/Paris" == TimezoneDetector.detect("Europe/Neuilly", nil, "Europe/Paris")
end
end
end

Some files were not shown because too many files have changed in this diff Show more