Merge branch 'fixes' into 'main'
CI changes See merge request framasoft/mobilizon!1232
This commit is contained in:
commit
c9ebd76cc9
@ -238,13 +238,13 @@ build-docker-tag:
|
||||
|
||||
# Packaging app for amd64
|
||||
package-app:
|
||||
image: mobilizon/buildpack:1.13.4-erlang-24.3.3-${OS}
|
||||
image: mobilizon/buildpack:1.13.4-erlang-24.3.3-debian-buster
|
||||
stage: package
|
||||
variables: &release-variables
|
||||
MIX_ENV: "prod"
|
||||
DEBIAN_FRONTEND: noninteractive
|
||||
TZ: Etc/UTC
|
||||
APP_ASSET: "${CI_PROJECT_NAME}_${CI_COMMIT_REF_NAME}_${ARCH}_${OS}.tar.gz"
|
||||
APP_ASSET: "${CI_PROJECT_NAME}_${CI_COMMIT_REF_NAME}_${ARCH}.tar.gz"
|
||||
script: &release-script
|
||||
- mix local.hex --force
|
||||
- mix local.rebar --force
|
||||
@ -263,9 +263,6 @@ package-app:
|
||||
expire_in: 2 days
|
||||
paths:
|
||||
- ${APP_ASSET}
|
||||
parallel:
|
||||
matrix:
|
||||
- OS: ["debian-bullseye", "debian-buster", "ubuntu-focal", "ubuntu-bionic", "fedora-35", "fedora-36", "alpine-3.14.5", "alpine-3.15.3"]
|
||||
|
||||
package-app-dev:
|
||||
stage: package
|
||||
@ -288,9 +285,8 @@ multi-arch-release:
|
||||
DOCKER_TLS_VERIFY: 1
|
||||
DOCKER_CERT_PATH: "$DOCKER_TLS_CERTDIR/client"
|
||||
DOCKER_DRIVER: overlay2
|
||||
APP_ASSET: "${CI_PROJECT_NAME}_${CI_COMMIT_REF_NAME}_${ARCH}_${OS}.tar.gz"
|
||||
# For now, arm and arm64 are only build for debian bullseye version
|
||||
OS: debian-bullseye
|
||||
APP_ASSET: "${CI_PROJECT_NAME}_${CI_COMMIT_REF_NAME}_${ARCH}.tar.gz"
|
||||
OS: debian-buster
|
||||
services:
|
||||
- docker:20.10.12-dind
|
||||
cache: {}
|
||||
|
95
UPGRADE.md
95
UPGRADE.md
@ -1,26 +1,5 @@
|
||||
# Upgrading from 2.0 to 2.1
|
||||
|
||||
## Distro-specific packages
|
||||
|
||||
Elixir releases are precompiled binaries and are therefore dependent on the host they've been compiled to be compatible with your system (architecture, libc version, …) ([read more](https://hexdocs.pm/mix/Mix.Tasks.Release.html#module-requirements)). For instance, the release build on Debian Bullseye (with libc 2.31) cannot be run on Debian Buster (which only provides libc 2.28). Another example is Red Hat-relative distributions (Fedora, CentOS, …) which have an OpenSSL library version that's not compatible with the version compiled (because of [potential patent issues with Elliptic curves](https://github.com/kerl/kerl#compiling-crypto-on-red-hat-systems)).
|
||||
|
||||
In order to make sure the releases package we redistribute , we now build distro-version-specific packages.
|
||||
The list of packages built for version 2.1.0 with the amd64 (x86_64) architecture is the following:
|
||||
- Debian Buster (10)
|
||||
- Debian Bullseye (11)
|
||||
- Ubuntu Bionic (18.04)
|
||||
- Ubuntu Focal (20.04)
|
||||
- Fedora 35
|
||||
- Fedora 36
|
||||
- Alpine 3.14.5
|
||||
- Alpine 3.15.3
|
||||
|
||||
As building for non-`amd64` architectures is quite difficult (because of the time and extra resources cross-compiling takes), these architectures are only built against Debian Bullseye (11) at the moment.
|
||||
|
||||
We want to expand this list in the future to make sure it covers most uses, so feel free to give us feedback from what you need.
|
||||
|
||||
Note: Docker images are also built for `amd64`/`arm`/`arm64` architectures, and of course you can always install Mobilizon from source on pretty much any unix-compatible system.
|
||||
|
||||
## Mailer library change
|
||||
|
||||
### Docker
|
||||
@ -30,10 +9,11 @@ The change is already applied. You may remove the `MOBILIZON_SMTP_HOSTNAME` envi
|
||||
### Release and source mode
|
||||
|
||||
In your configuration file under `config :mobilizon, Mobilizon.Web.Email.Mailer`,
|
||||
* Change `Bamboo.SMTPAdapter` to `Swoosh.Adapters.SMTP`,
|
||||
* rename the `server` key to `relay`
|
||||
* remove the `hostname` key,
|
||||
* the default value of the username and password fields is an empty string and no longer `nil`.
|
||||
|
||||
- Change `Bamboo.SMTPAdapter` to `Swoosh.Adapters.SMTP`,
|
||||
- rename the `server` key to `relay`
|
||||
- remove the `hostname` key,
|
||||
- the default value of the username and password fields is an empty string and no longer `nil`.
|
||||
|
||||
```diff
|
||||
config :mobilizon, Mobilizon.Web.Email.Mailer,
|
||||
@ -61,7 +41,9 @@ In your configuration file under `config :mobilizon, Mobilizon.Web.Email.Mailer`
|
||||
# Upgrading from 1.3 to 2.0
|
||||
|
||||
Requirements dependencies depend on the way Mobilizon is installed.
|
||||
|
||||
## New Elixir version requirement
|
||||
|
||||
### Docker and Release install
|
||||
|
||||
You are already using latest Elixir version in the release tarball and Docker images.
|
||||
@ -77,17 +59,19 @@ Mobilizon 2.0 uses data based on [timezone-boundary-builder](https://github.com/
|
||||
### Docker install
|
||||
|
||||
The geographic timezone data is already bundled into the image, you have nothing to do.
|
||||
|
||||
### Release install
|
||||
|
||||
In order to keep the release tarballs light, the geographic timezone data is not bundled directly. You need to download the data :
|
||||
* either raw from Github, but **requires an extra ~1Gio of memory** to process the data
|
||||
|
||||
- either raw from Github, but **requires an extra ~1Gio of memory** to process the data
|
||||
|
||||
```sh
|
||||
sudo -u mobilizon mkdir /var/lib/mobilizon/timezones
|
||||
sudo -u mobilizon ./bin/mobilizon_ctl tz_world.update
|
||||
```
|
||||
|
||||
* either already processed from our own distribution server
|
||||
- either already processed from our own distribution server
|
||||
|
||||
```sh
|
||||
sudo -u mobilizon mkdir /var/lib/mobilizon/timezones
|
||||
@ -95,6 +79,7 @@ In order to keep the release tarballs light, the geographic timezone data is not
|
||||
```
|
||||
|
||||
In both cases, ~700Mio of disk will be used. You may use the following configuration to specify where the data is expected if you decide to change it from the default location (`/var/lib/mobilizon/timezones`) :
|
||||
|
||||
```elixir
|
||||
config :tz_world, data_dir: "/some/place"
|
||||
```
|
||||
@ -102,14 +87,15 @@ config :tz_world, data_dir: "/some/place"
|
||||
### Source install
|
||||
|
||||
You need to download the data :
|
||||
* either raw from Github, but **requires an extra ~1Gio of memory** to process the data
|
||||
|
||||
- either raw from Github, but **requires an extra ~1Gio of memory** to process the data
|
||||
|
||||
```sh
|
||||
sudo -u mobilizon mkdir /var/lib/mobilizon/timezones
|
||||
sudo -u mobilizon mix mobilizon.tz_world.update
|
||||
```
|
||||
|
||||
* either already processed from our own distribution server
|
||||
- either already processed from our own distribution server
|
||||
|
||||
```sh
|
||||
sudo -u mobilizon mkdir /var/lib/mobilizon/timezones
|
||||
@ -117,6 +103,7 @@ You need to download the data :
|
||||
```
|
||||
|
||||
In both cases, ~700Mio of disk will be used. You may use the following configuration to specify where the data is expected:
|
||||
|
||||
```elixir
|
||||
config :tz_world, data_dir: "/some/place"
|
||||
```
|
||||
@ -135,14 +122,18 @@ Files in this folder are temporary and are cleaned once an hour.
|
||||
## New optional dependencies
|
||||
|
||||
These are optional, installing them will allow Mobilizon to export to PDF and ODS as well. Mobilizon 2.0 allows to export the participant list, but more is planned.
|
||||
|
||||
### Docker
|
||||
|
||||
Everything is included in our Docker image.
|
||||
|
||||
### Release and source install
|
||||
|
||||
New optional Python dependencies:
|
||||
* `Python` >= 3.6
|
||||
* `weasyprint` for PDF export (with [a few extra dependencies](https://doc.courtbouillon.org/weasyprint/stable/first_steps.html))
|
||||
* `pyexcel-ods3` for ODS export (no extra dependencies)
|
||||
|
||||
- `Python` >= 3.6
|
||||
- `weasyprint` for PDF export (with [a few extra dependencies](https://doc.courtbouillon.org/weasyprint/stable/first_steps.html))
|
||||
- `pyexcel-ods3` for ODS export (no extra dependencies)
|
||||
|
||||
Both can be installed through pip. You need to enable and configure exports for PDF and ODS in the configuration afterwards. Read [the dedicated docs page about this](https://docs.joinmobilizon.org/administration/configure/exports/).
|
||||
|
||||
@ -151,35 +142,41 @@ Both can be installed through pip. You need to enable and configure exports for
|
||||
The 1.1 version of Mobilizon brings Elixir releases support. An Elixir release is a self-contained directory that contains all of Mobilizon's code (front-end and backend), it's dependencies, as well as the Erlang Virtual Machine and runtime (only the parts you need). As long as the release has been assembled on the same OS and architecture, it can be deploy and run straight away. [Read more about releases](https://elixir-lang.org/getting-started/mix-otp/config-and-releases.html#releases).
|
||||
|
||||
## Comparison
|
||||
|
||||
Migrating to releases means:
|
||||
* You only get a precompiled binary, so you avoid compilation times when updating
|
||||
* No need to have Elixir/NodeJS installed on the system
|
||||
* Code/data/config location is more common (/opt, /var/lib, /etc)
|
||||
* More efficient, as only what you need from the Elixir/Erlang standard libraries is included and all of the code is directly preloaded
|
||||
* You can't hardcode modifications in Mobilizon's code
|
||||
|
||||
- You only get a precompiled binary, so you avoid compilation times when updating
|
||||
- No need to have Elixir/NodeJS installed on the system
|
||||
- Code/data/config location is more common (/opt, /var/lib, /etc)
|
||||
- More efficient, as only what you need from the Elixir/Erlang standard libraries is included and all of the code is directly preloaded
|
||||
- You can't hardcode modifications in Mobilizon's code
|
||||
|
||||
Staying on source releases means:
|
||||
* You need to recompile everything with each update
|
||||
* Compiling frontend and backend has higher system requirements than just running Mobilizon
|
||||
* You can change things in Mobilizon's code and recompile right away to test changes
|
||||
|
||||
- You need to recompile everything with each update
|
||||
- Compiling frontend and backend has higher system requirements than just running Mobilizon
|
||||
- You can change things in Mobilizon's code and recompile right away to test changes
|
||||
|
||||
## Releases
|
||||
|
||||
If you want to migrate to releases, [we provide a full guide](https://docs.joinmobilizon.org/administration/upgrading/source_to_release/). You may do this at any time.
|
||||
|
||||
## Source install
|
||||
|
||||
To stay on a source release, you just need to check the following things:
|
||||
* Rename your configuration file `config/prod.secret.exs` to `config/runtime.exs`.
|
||||
* If your config file includes `server: true` under `Mobilizon.Web.Endpoint`, remove it.
|
||||
```diff
|
||||
config :mobilizon, Mobilizon.Web.Endpoint,
|
||||
- server: true,
|
||||
```
|
||||
* The uploads default directory is now `/var/lib/mobilizon/uploads`. To keep it in the previous `uploads/` directory, just add the following line to `config/runtime.exs`:
|
||||
|
||||
- Rename your configuration file `config/prod.secret.exs` to `config/runtime.exs`.
|
||||
- If your config file includes `server: true` under `Mobilizon.Web.Endpoint`, remove it.
|
||||
```diff
|
||||
config :mobilizon, Mobilizon.Web.Endpoint,
|
||||
- server: true,
|
||||
```
|
||||
- The uploads default directory is now `/var/lib/mobilizon/uploads`. To keep it in the previous `uploads/` directory, just add the following line to `config/runtime.exs`:
|
||||
```elixir
|
||||
config :mobilizon, Mobilizon.Web.Upload.Uploader.Local, uploads: "uploads"
|
||||
```
|
||||
Or you may use any other directory where the `mobilizon` user has write permissions.
|
||||
* The GeoIP database default directory is now `/var/lib/mobilizon/geo/GeoLite2-City.mmdb`. To keep it in the previous `priv/data/GeoLite2-City.mmdb` directory, just add the following line to `config/runtime.exs`:
|
||||
- The GeoIP database default directory is now `/var/lib/mobilizon/geo/GeoLite2-City.mmdb`. To keep it in the previous `priv/data/GeoLite2-City.mmdb` directory, just add the following line to `config/runtime.exs`:
|
||||
```elixir
|
||||
config :geolix, databases: [
|
||||
%{
|
||||
@ -189,4 +186,4 @@ To stay on a source release, you just need to check the following things:
|
||||
}
|
||||
]
|
||||
```
|
||||
Or you may use any other directory where the `mobilizon` user has read permissions.
|
||||
Or you may use any other directory where the `mobilizon` user has read permissions.
|
||||
|
@ -131,15 +131,6 @@ export const ADD_INSTANCE = gql`
|
||||
${INSTANCE_FRAGMENT}
|
||||
`;
|
||||
|
||||
export const ADD_RELAY = gql`
|
||||
mutation addRelay($address: String!) {
|
||||
addRelay(address: $address) {
|
||||
...relayFragment
|
||||
}
|
||||
}
|
||||
${RELAY_FRAGMENT}
|
||||
`;
|
||||
|
||||
export const REMOVE_RELAY = gql`
|
||||
mutation removeRelay($address: String!) {
|
||||
removeRelay(address: $address) {
|
||||
|
@ -21,6 +21,11 @@
|
||||
<b-button type="is-primary" native-type="submit">{{
|
||||
$t("Add an instance")
|
||||
}}</b-button>
|
||||
<b-loading
|
||||
:is-full-page="true"
|
||||
v-model="followInstanceLoading"
|
||||
:can-cancel="false"
|
||||
/>
|
||||
</p>
|
||||
</b-field>
|
||||
</b-field>
|
||||
@ -171,7 +176,6 @@ import {
|
||||
InstanceFilterFollowStatus,
|
||||
InstanceFollowStatus,
|
||||
} from "@/types/enums";
|
||||
import { SnackbarProgrammatic as Snackbar } from "buefy";
|
||||
const { isNavigationFailure, NavigationFailureType } = VueRouter;
|
||||
|
||||
const INSTANCES_PAGE_LIMIT = 10;
|
||||
@ -203,6 +207,8 @@ const INSTANCES_PAGE_LIMIT = 10;
|
||||
export default class Follows extends Vue {
|
||||
RouteName = RouteName;
|
||||
|
||||
followInstanceLoading = false;
|
||||
|
||||
newRelayAddress = "";
|
||||
|
||||
instances!: Paginate<IInstance>;
|
||||
@ -257,6 +263,7 @@ export default class Follows extends Vue {
|
||||
|
||||
async followInstance(e: Event): Promise<void> {
|
||||
e.preventDefault();
|
||||
this.followInstanceLoading = true;
|
||||
const domain = this.newRelayAddress.trim(); // trim to fix copy and paste domain name spaces and tabs
|
||||
try {
|
||||
await this.$apollo.mutate<{ relayFollowings: Paginate<IFollower> }>({
|
||||
@ -266,18 +273,18 @@ export default class Follows extends Vue {
|
||||
},
|
||||
});
|
||||
this.newRelayAddress = "";
|
||||
this.followInstanceLoading = false;
|
||||
this.$router.push({
|
||||
name: RouteName.INSTANCE,
|
||||
params: { domain },
|
||||
});
|
||||
} catch (err: any) {
|
||||
if (err.message) {
|
||||
Snackbar.open({
|
||||
message: err.message,
|
||||
type: "is-danger",
|
||||
position: "is-bottom",
|
||||
});
|
||||
} catch (error: any) {
|
||||
if (error.message) {
|
||||
if (error.graphQLErrors && error.graphQLErrors.length > 0) {
|
||||
this.$notifier.error(error.graphQLErrors[0].message);
|
||||
}
|
||||
}
|
||||
this.followInstanceLoading = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -489,24 +489,25 @@ defmodule Mobilizon.GraphQL.Resolvers.Admin do
|
||||
{:error, :unauthenticated}
|
||||
end
|
||||
|
||||
@spec create_instance(any, map(), Absinthe.Resolution.t()) ::
|
||||
{:error, atom() | binary()}
|
||||
| {:ok, Mobilizon.Instances.Instance.t()}
|
||||
def create_instance(
|
||||
parent,
|
||||
%{domain: domain} = args,
|
||||
%{context: %{current_user: %User{role: role}}} = resolution
|
||||
)
|
||||
when is_admin(role) do
|
||||
with {:ok, _activity, _follow} <- Relay.follow(domain) do
|
||||
Instances.refresh()
|
||||
get_instance(parent, args, resolution)
|
||||
end
|
||||
end
|
||||
case Relay.follow(domain) do
|
||||
{:ok, _activity, _follow} ->
|
||||
Instances.refresh()
|
||||
get_instance(parent, args, resolution)
|
||||
|
||||
@spec create_relay(any(), map(), Absinthe.Resolution.t()) ::
|
||||
{:ok, Follower.t()} | {:error, any()}
|
||||
def create_relay(_parent, %{address: address}, %{context: %{current_user: %User{role: role}}})
|
||||
when is_admin(role) do
|
||||
with {:ok, _activity, follow} <- Relay.follow(address) do
|
||||
{:ok, follow}
|
||||
{:error, :http_error} ->
|
||||
{:error, dgettext("errors", "Unable to find an instance to follow at this address")}
|
||||
|
||||
{:error, err} ->
|
||||
{:error, err}
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -352,13 +352,6 @@ defmodule Mobilizon.GraphQL.Schema.AdminType do
|
||||
resolve(&Admin.create_instance/3)
|
||||
end
|
||||
|
||||
@desc "Add a relay subscription"
|
||||
field :add_relay, type: :follower do
|
||||
arg(:address, non_null(:string), description: "The relay hostname to add")
|
||||
|
||||
resolve(&Admin.create_relay/3)
|
||||
end
|
||||
|
||||
@desc "Delete a relay subscription"
|
||||
field :remove_relay, type: :follower do
|
||||
arg(:address, non_null(:string), description: "The relay hostname to delete")
|
||||
|
@ -11,198 +11,198 @@ msgid ""
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:14
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:12
|
||||
msgid "%{member} accepted the invitation to join the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:26
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:17
|
||||
msgid "%{member} rejected the invitation to join the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:1
|
||||
msgid "%{member} requested to join the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:11
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:8
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:6
|
||||
msgid "%{member} was invited by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:40
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:30
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:27
|
||||
msgid "%{profile} added the member %{member}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:46
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:27
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:19
|
||||
msgid "%{profile} archived the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:1
|
||||
msgid "%{profile} created the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:5
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:2
|
||||
msgid "%{profile} created the folder %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_group_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_group_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_group_activity_item.text.eex:1
|
||||
msgid "%{profile} created the group %{group}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:20
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:14
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:8
|
||||
msgid "%{profile} created the resource %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:60
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:35
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:25
|
||||
msgid "%{profile} deleted the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:103
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:80
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:40
|
||||
msgid "%{profile} deleted the folder %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:111
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:86
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:45
|
||||
msgid "%{profile} deleted the resource %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:56
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:42
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:39
|
||||
msgid "%{profile} excluded member %{member}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:71
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:58
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:28
|
||||
msgid "%{profile} moved the folder %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:86
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:68
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:34
|
||||
msgid "%{profile} moved the resource %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:64
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:48
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:45
|
||||
msgid "%{profile} quit the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:32
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:13
|
||||
msgid "%{profile} renamed the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:37
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:26
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:14
|
||||
msgid "%{profile} renamed the folder from %{old_resource_title} to %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:53
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:41
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:21
|
||||
msgid "%{profile} renamed the resource from %{old_resource_title} to %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:18
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:11
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:7
|
||||
msgid "%{profile} replied to the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_group_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_group_activity_item.html.heex:13
|
||||
#: lib/web/templates/email/activity/_group_activity_item.text.eex:7
|
||||
msgid "%{profile} updated the group %{group}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:48
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:36
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:33
|
||||
msgid "%{profile} updated the member %{member}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:23
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:1
|
||||
msgid "The event %{event} was created by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:43
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:34
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:23
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:13
|
||||
msgid "The event %{event} was deleted by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:33
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:13
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:7
|
||||
msgid "The event %{event} was updated by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_post_activity_item.text.eex:1
|
||||
msgid "The post %{post} was created by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:34
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:23
|
||||
#: lib/web/templates/email/activity/_post_activity_item.text.eex:13
|
||||
msgid "The post %{post} was deleted by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:13
|
||||
#: lib/web/templates/email/activity/_post_activity_item.text.eex:7
|
||||
msgid "The post %{post} was updated by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:33
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:24
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:22
|
||||
msgid "%{member} joined the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:63
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:58
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:40
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:25
|
||||
msgid "%{profile} posted a comment on the event %{event}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:54
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:43
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:30
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:19
|
||||
msgid "%{profile} replied to a comment on the event %{event}."
|
||||
msgstr ""
|
||||
@ -213,7 +213,7 @@ msgid "Don't want to receive activity notifications? You may change frequency or
|
||||
msgstr ""
|
||||
|
||||
#, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:135
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:219
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:23
|
||||
msgid "View one more activity"
|
||||
msgid_plural "View %{count} more activities"
|
||||
@ -221,8 +221,8 @@ msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:44
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:46
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:53
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:60
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:6
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:7
|
||||
msgid "There has been an activity!"
|
||||
@ -237,27 +237,27 @@ msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/comment.ex:38
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:13
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.text.eex:7
|
||||
#: lib/web/templates/email/email_anonymous_activity.html.heex:41
|
||||
#: lib/web/templates/email/email_anonymous_activity.html.heex:48
|
||||
#: lib/web/templates/email/email_anonymous_activity.text.eex:5
|
||||
msgid "%{profile} has posted an announcement under event %{event}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/comment.ex:24
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.text.eex:1
|
||||
msgid "%{profile} mentionned you in a comment under event %{event}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:155
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:249
|
||||
msgid "Don't want to receive activity notifications? You may change frequency or disable them in %{tag_start}your settings%{tag_end}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:42
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:51
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:5
|
||||
msgid "Here's your weekly activity recap"
|
||||
msgstr ""
|
||||
@ -274,7 +274,7 @@ msgid "Daily activity recap for %{instance}"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:40
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:49
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:4
|
||||
msgid "Here's your daily activity recap"
|
||||
msgstr ""
|
||||
@ -286,14 +286,14 @@ msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/comment.ex:66
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:51
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:34
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.text.eex:19
|
||||
msgid "%{profile} has posted a new comment under your event %{event}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/comment.ex:53
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:36
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:24
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.text.eex:13
|
||||
msgid "%{profile} has posted a new reply under your event %{event}."
|
||||
msgstr ""
|
||||
|
@ -12,198 +12,198 @@ msgstr ""
|
||||
"Plural-Forms: nplurals=6\n"
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:14
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:12
|
||||
msgid "%{member} accepted the invitation to join the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:26
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:17
|
||||
msgid "%{member} rejected the invitation to join the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:1
|
||||
msgid "%{member} requested to join the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:11
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:8
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:6
|
||||
msgid "%{member} was invited by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:40
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:30
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:27
|
||||
msgid "%{profile} added the member %{member}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:46
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:27
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:19
|
||||
msgid "%{profile} archived the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:1
|
||||
msgid "%{profile} created the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:5
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:2
|
||||
msgid "%{profile} created the folder %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_group_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_group_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_group_activity_item.text.eex:1
|
||||
msgid "%{profile} created the group %{group}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:20
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:14
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:8
|
||||
msgid "%{profile} created the resource %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:60
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:35
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:25
|
||||
msgid "%{profile} deleted the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:103
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:80
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:40
|
||||
msgid "%{profile} deleted the folder %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:111
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:86
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:45
|
||||
msgid "%{profile} deleted the resource %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:56
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:42
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:39
|
||||
msgid "%{profile} excluded member %{member}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:71
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:58
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:28
|
||||
msgid "%{profile} moved the folder %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:86
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:68
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:34
|
||||
msgid "%{profile} moved the resource %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:64
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:48
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:45
|
||||
msgid "%{profile} quit the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:32
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:13
|
||||
msgid "%{profile} renamed the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:37
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:26
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:14
|
||||
msgid "%{profile} renamed the folder from %{old_resource_title} to %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:53
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:41
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:21
|
||||
msgid "%{profile} renamed the resource from %{old_resource_title} to %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:18
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:11
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:7
|
||||
msgid "%{profile} replied to the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_group_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_group_activity_item.html.heex:13
|
||||
#: lib/web/templates/email/activity/_group_activity_item.text.eex:7
|
||||
msgid "%{profile} updated the group %{group}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:48
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:36
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:33
|
||||
msgid "%{profile} updated the member %{member}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:23
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:1
|
||||
msgid "The event %{event} was created by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:43
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:34
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:23
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:13
|
||||
msgid "The event %{event} was deleted by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:33
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:13
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:7
|
||||
msgid "The event %{event} was updated by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_post_activity_item.text.eex:1
|
||||
msgid "The post %{post} was created by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:34
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:23
|
||||
#: lib/web/templates/email/activity/_post_activity_item.text.eex:13
|
||||
msgid "The post %{post} was deleted by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:13
|
||||
#: lib/web/templates/email/activity/_post_activity_item.text.eex:7
|
||||
msgid "The post %{post} was updated by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:33
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:24
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:22
|
||||
msgid "%{member} joined the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:63
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:58
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:40
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:25
|
||||
msgid "%{profile} posted a comment on the event %{event}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:54
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:43
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:30
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:19
|
||||
msgid "%{profile} replied to a comment on the event %{event}."
|
||||
msgstr ""
|
||||
@ -214,7 +214,7 @@ msgid "Don't want to receive activity notifications? You may change frequency or
|
||||
msgstr ""
|
||||
|
||||
#, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:135
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:219
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:23
|
||||
msgid "View one more activity"
|
||||
msgid_plural "View %{count} more activities"
|
||||
@ -226,8 +226,8 @@ msgstr[4] ""
|
||||
msgstr[5] ""
|
||||
|
||||
#, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:44
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:46
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:53
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:60
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:6
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:7
|
||||
msgid "There has been an activity!"
|
||||
@ -246,27 +246,27 @@ msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/comment.ex:38
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:13
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.text.eex:7
|
||||
#: lib/web/templates/email/email_anonymous_activity.html.heex:41
|
||||
#: lib/web/templates/email/email_anonymous_activity.html.heex:48
|
||||
#: lib/web/templates/email/email_anonymous_activity.text.eex:5
|
||||
msgid "%{profile} has posted an announcement under event %{event}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/comment.ex:24
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.text.eex:1
|
||||
msgid "%{profile} mentionned you in a comment under event %{event}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:155
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:249
|
||||
msgid "Don't want to receive activity notifications? You may change frequency or disable them in %{tag_start}your settings%{tag_end}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:42
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:51
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:5
|
||||
msgid "Here's your weekly activity recap"
|
||||
msgstr ""
|
||||
@ -283,7 +283,7 @@ msgid "Daily activity recap for %{instance}"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:40
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:49
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:4
|
||||
msgid "Here's your daily activity recap"
|
||||
msgstr ""
|
||||
@ -295,14 +295,14 @@ msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/comment.ex:66
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:51
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:34
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.text.eex:19
|
||||
msgid "%{profile} has posted a new comment under your event %{event}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/comment.ex:53
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:36
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:24
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.text.eex:13
|
||||
msgid "%{profile} has posted a new reply under your event %{event}."
|
||||
msgstr ""
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -189,10 +189,10 @@ msgstr ""
|
||||
#: lib/graphql/resolvers/participant.ex:210
|
||||
#: lib/graphql/resolvers/person.ex:236
|
||||
#: lib/graphql/resolvers/person.ex:353
|
||||
#: lib/graphql/resolvers/person.ex:388
|
||||
#: lib/graphql/resolvers/person.ex:395
|
||||
#: lib/graphql/resolvers/person.ex:423
|
||||
#: lib/graphql/resolvers/person.ex:438
|
||||
#: lib/graphql/resolvers/person.ex:389
|
||||
#: lib/graphql/resolvers/person.ex:396
|
||||
#: lib/graphql/resolvers/person.ex:425
|
||||
#: lib/graphql/resolvers/person.ex:440
|
||||
msgid "Profile is not owned by authenticated user"
|
||||
msgstr ""
|
||||
|
||||
@ -207,13 +207,13 @@ msgid "The current password is invalid"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:340
|
||||
#: lib/graphql/resolvers/admin.ex:334
|
||||
#: lib/graphql/resolvers/user.ex:470
|
||||
msgid "The new email doesn't seem to be valid"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:343
|
||||
#: lib/graphql/resolvers/admin.ex:337
|
||||
#: lib/graphql/resolvers/user.ex:473
|
||||
msgid "The new email must be different"
|
||||
msgstr ""
|
||||
@ -672,17 +672,17 @@ msgid "You need to be logged-in and a moderator to view a report"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:256
|
||||
#: lib/graphql/resolvers/admin.ex:250
|
||||
msgid "You need to be logged-in and an administrator to access admin settings"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:240
|
||||
#: lib/graphql/resolvers/admin.ex:234
|
||||
msgid "You need to be logged-in and an administrator to access dashboard statistics"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:282
|
||||
#: lib/graphql/resolvers/admin.ex:276
|
||||
msgid "You need to be logged-in and an administrator to save admin settings"
|
||||
msgstr ""
|
||||
|
||||
@ -974,7 +974,7 @@ msgid "Failed to update the group"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:337
|
||||
#: lib/graphql/resolvers/admin.ex:331
|
||||
#: lib/graphql/resolvers/user.ex:467
|
||||
msgid "Failed to update user email"
|
||||
msgstr ""
|
||||
@ -1105,22 +1105,22 @@ msgid "Your email seems to be using an invalid format"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:386
|
||||
#: lib/graphql/resolvers/admin.ex:380
|
||||
msgid "Can't confirm an already confirmed user"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:390
|
||||
#: lib/graphql/resolvers/admin.ex:384
|
||||
msgid "Deconfirming users is not supported"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format, fuzzy
|
||||
#: lib/graphql/resolvers/admin.ex:362
|
||||
#: lib/graphql/resolvers/admin.ex:356
|
||||
msgid "The new role must be different"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format, fuzzy
|
||||
#: lib/graphql/resolvers/admin.ex:313
|
||||
#: lib/graphql/resolvers/admin.ex:307
|
||||
msgid "You need to be logged-in and an administrator to edit an user's details"
|
||||
msgstr ""
|
||||
|
||||
@ -1128,3 +1128,8 @@ msgstr ""
|
||||
#: lib/graphql/api/groups.ex:33
|
||||
msgid "A profile or group with that name already exists"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:506
|
||||
msgid "Unable to find an instance to follow at this address"
|
||||
msgstr ""
|
||||
|
@ -12,198 +12,198 @@ msgstr ""
|
||||
"Plural-Forms: nplurals=3\n"
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:14
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:12
|
||||
msgid "%{member} accepted the invitation to join the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:26
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:17
|
||||
msgid "%{member} rejected the invitation to join the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:1
|
||||
msgid "%{member} requested to join the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:11
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:8
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:6
|
||||
msgid "%{member} was invited by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:40
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:30
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:27
|
||||
msgid "%{profile} added the member %{member}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:46
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:27
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:19
|
||||
msgid "%{profile} archived the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:1
|
||||
msgid "%{profile} created the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:5
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:2
|
||||
msgid "%{profile} created the folder %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_group_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_group_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_group_activity_item.text.eex:1
|
||||
msgid "%{profile} created the group %{group}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:20
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:14
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:8
|
||||
msgid "%{profile} created the resource %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:60
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:35
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:25
|
||||
msgid "%{profile} deleted the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:103
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:80
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:40
|
||||
msgid "%{profile} deleted the folder %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:111
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:86
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:45
|
||||
msgid "%{profile} deleted the resource %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:56
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:42
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:39
|
||||
msgid "%{profile} excluded member %{member}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:71
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:58
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:28
|
||||
msgid "%{profile} moved the folder %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:86
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:68
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:34
|
||||
msgid "%{profile} moved the resource %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:64
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:48
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:45
|
||||
msgid "%{profile} quit the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:32
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:13
|
||||
msgid "%{profile} renamed the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:37
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:26
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:14
|
||||
msgid "%{profile} renamed the folder from %{old_resource_title} to %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:53
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.html.heex:41
|
||||
#: lib/web/templates/email/activity/_resource_activity_item.text.eex:21
|
||||
msgid "%{profile} renamed the resource from %{old_resource_title} to %{resource}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:18
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.html.heex:11
|
||||
#: lib/web/templates/email/activity/_discussion_activity_item.text.eex:7
|
||||
msgid "%{profile} replied to the discussion %{discussion}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_group_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_group_activity_item.html.heex:13
|
||||
#: lib/web/templates/email/activity/_group_activity_item.text.eex:7
|
||||
msgid "%{profile} updated the group %{group}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:48
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:36
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:33
|
||||
msgid "%{profile} updated the member %{member}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:23
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:1
|
||||
msgid "The event %{event} was created by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:43
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:34
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:23
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:13
|
||||
msgid "The event %{event} was deleted by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:33
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:13
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:7
|
||||
msgid "The event %{event} was updated by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_post_activity_item.text.eex:1
|
||||
msgid "The post %{post} was created by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:34
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:23
|
||||
#: lib/web/templates/email/activity/_post_activity_item.text.eex:13
|
||||
msgid "The post %{post} was deleted by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_post_activity_item.html.heex:13
|
||||
#: lib/web/templates/email/activity/_post_activity_item.text.eex:7
|
||||
msgid "The post %{post} was updated by %{profile}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:33
|
||||
#: lib/web/templates/email/activity/_member_activity_item.html.heex:24
|
||||
#: lib/web/templates/email/activity/_member_activity_item.text.eex:22
|
||||
msgid "%{member} joined the group."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:63
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:58
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:40
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:25
|
||||
msgid "%{profile} posted a comment on the event %{event}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/event.ex:54
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:43
|
||||
#: lib/web/templates/email/activity/_event_activity_item.html.heex:30
|
||||
#: lib/web/templates/email/activity/_event_activity_item.text.eex:19
|
||||
msgid "%{profile} replied to a comment on the event %{event}."
|
||||
msgstr ""
|
||||
@ -214,7 +214,7 @@ msgid "Don't want to receive activity notifications? You may change frequency or
|
||||
msgstr ""
|
||||
|
||||
#, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:135
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:219
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:23
|
||||
msgid "View one more activity"
|
||||
msgid_plural "View %{count} more activities"
|
||||
@ -223,8 +223,8 @@ msgstr[1] ""
|
||||
msgstr[2] ""
|
||||
|
||||
#, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:44
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:46
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:53
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:60
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:6
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:7
|
||||
msgid "There has been an activity!"
|
||||
@ -240,27 +240,27 @@ msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/comment.ex:38
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:19
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:13
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.text.eex:7
|
||||
#: lib/web/templates/email/email_anonymous_activity.html.heex:41
|
||||
#: lib/web/templates/email/email_anonymous_activity.html.heex:48
|
||||
#: lib/web/templates/email/email_anonymous_activity.text.eex:5
|
||||
msgid "%{profile} has posted an announcement under event %{event}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/comment.ex:24
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:4
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:3
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.text.eex:1
|
||||
msgid "%{profile} mentionned you in a comment under event %{event}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:155
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:249
|
||||
msgid "Don't want to receive activity notifications? You may change frequency or disable them in %{tag_start}your settings%{tag_end}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:42
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:51
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:5
|
||||
msgid "Here's your weekly activity recap"
|
||||
msgstr ""
|
||||
@ -277,7 +277,7 @@ msgid "Daily activity recap for %{instance}"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:40
|
||||
#: lib/web/templates/email/email_direct_activity.html.heex:49
|
||||
#: lib/web/templates/email/email_direct_activity.text.eex:4
|
||||
msgid "Here's your daily activity recap"
|
||||
msgstr ""
|
||||
@ -289,14 +289,14 @@ msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/comment.ex:66
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:51
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:34
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.text.eex:19
|
||||
msgid "%{profile} has posted a new comment under your event %{event}."
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/service/activity/renderer/comment.ex:53
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:36
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.html.heex:24
|
||||
#: lib/web/templates/email/activity/_comment_activity_item.text.eex:13
|
||||
msgid "%{profile} has posted a new reply under your event %{event}."
|
||||
msgstr ""
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -163,10 +163,10 @@ msgstr ""
|
||||
#: lib/graphql/resolvers/participant.ex:210
|
||||
#: lib/graphql/resolvers/person.ex:236
|
||||
#: lib/graphql/resolvers/person.ex:353
|
||||
#: lib/graphql/resolvers/person.ex:388
|
||||
#: lib/graphql/resolvers/person.ex:395
|
||||
#: lib/graphql/resolvers/person.ex:423
|
||||
#: lib/graphql/resolvers/person.ex:438
|
||||
#: lib/graphql/resolvers/person.ex:389
|
||||
#: lib/graphql/resolvers/person.ex:396
|
||||
#: lib/graphql/resolvers/person.ex:425
|
||||
#: lib/graphql/resolvers/person.ex:440
|
||||
msgid "Profile is not owned by authenticated user"
|
||||
msgstr ""
|
||||
|
||||
@ -181,13 +181,13 @@ msgid "The current password is invalid"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:340
|
||||
#: lib/graphql/resolvers/admin.ex:334
|
||||
#: lib/graphql/resolvers/user.ex:470
|
||||
msgid "The new email doesn't seem to be valid"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:343
|
||||
#: lib/graphql/resolvers/admin.ex:337
|
||||
#: lib/graphql/resolvers/user.ex:473
|
||||
msgid "The new email must be different"
|
||||
msgstr ""
|
||||
@ -646,17 +646,17 @@ msgid "You need to be logged-in and a moderator to view a report"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:256
|
||||
#: lib/graphql/resolvers/admin.ex:250
|
||||
msgid "You need to be logged-in and an administrator to access admin settings"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:240
|
||||
#: lib/graphql/resolvers/admin.ex:234
|
||||
msgid "You need to be logged-in and an administrator to access dashboard statistics"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:282
|
||||
#: lib/graphql/resolvers/admin.ex:276
|
||||
msgid "You need to be logged-in and an administrator to save admin settings"
|
||||
msgstr ""
|
||||
|
||||
@ -948,7 +948,7 @@ msgid "Failed to update the group"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:337
|
||||
#: lib/graphql/resolvers/admin.ex:331
|
||||
#: lib/graphql/resolvers/user.ex:467
|
||||
msgid "Failed to update user email"
|
||||
msgstr ""
|
||||
@ -1079,22 +1079,22 @@ msgid "Your email seems to be using an invalid format"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:386
|
||||
#: lib/graphql/resolvers/admin.ex:380
|
||||
msgid "Can't confirm an already confirmed user"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format
|
||||
#: lib/graphql/resolvers/admin.ex:390
|
||||
#: lib/graphql/resolvers/admin.ex:384
|
||||
msgid "Deconfirming users is not supported"
|
||||
msgstr ""
|
||||
|
||||
#, elixir-autogen, elixir-format, fuzzy
|
||||
#: lib/graphql/resolvers/admin.ex:362
|
||||