Rename project to Mobilizon

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
Thomas Citharel
2018-10-11 17:37:39 +02:00
parent 3b48ac957f
commit 559c889f1b
191 changed files with 739 additions and 739 deletions

View File

@@ -1,9 +1,9 @@
defmodule Eventos do
defmodule Mobilizon do
@moduledoc """
Eventos is a decentralized and federated Meetup-like using [ActivityPub](http://activitypub.rocks/).
Mobilizon is a decentralized and federated Meetup-like using [ActivityPub](http://activitypub.rocks/).
It consists of an API server build with [Elixir](http://elixir-lang.github.io/) and the [Phoenix Framework](https://hexdocs.pm/phoenix).
Eventos relies on `Guardian` for auth and `Geo`/Postgis for geographical informations.
Mobilizon relies on `Guardian` for auth and `Geo`/Postgis for geographical informations.
"""
end

View File

@@ -1,6 +0,0 @@
defmodule Eventos.Mailer do
@moduledoc """
Mailer
"""
use Bamboo.Mailer, otp_app: :eventos
end

View File

@@ -1,12 +1,12 @@
defmodule EventosWeb do
defmodule MobilizonWeb do
@moduledoc """
The entrypoint for defining your web interface, such
as controllers, views, channels and so on.
This can be used in your application as:
use EventosWeb, :controller
use EventosWeb, :view
use MobilizonWeb, :controller
use MobilizonWeb, :view
The definitions below will be executed for every view,
controller, etc, so keep them short and clean, focused
@@ -19,18 +19,18 @@ defmodule EventosWeb do
def controller do
quote do
use Phoenix.Controller, namespace: EventosWeb
use Phoenix.Controller, namespace: MobilizonWeb
import Plug.Conn
import EventosWeb.Router.Helpers
import EventosWeb.Gettext
import MobilizonWeb.Router.Helpers
import MobilizonWeb.Gettext
end
end
def view do
quote do
use Phoenix.View,
root: "lib/eventos_web/templates",
namespace: EventosWeb
root: "lib/mobilizon_web/templates",
namespace: MobilizonWeb
# Import convenience functions from controllers
import Phoenix.Controller, only: [get_flash: 2, view_module: 1]
@@ -38,9 +38,9 @@ defmodule EventosWeb do
# Use all HTML functionality (forms, tags, etc)
use Phoenix.HTML
import EventosWeb.Router.Helpers
import EventosWeb.ErrorHelpers
import EventosWeb.Gettext
import MobilizonWeb.Router.Helpers
import MobilizonWeb.ErrorHelpers
import MobilizonWeb.Gettext
end
end
@@ -55,7 +55,7 @@ defmodule EventosWeb do
def channel do
quote do
use Phoenix.Channel
import EventosWeb.Gettext
import MobilizonWeb.Gettext
end
end

View File

@@ -1,6 +0,0 @@
defmodule EventosWeb.InboxesController do
use EventosWeb, :controller
def create(conn) do
end
end

View File

@@ -1,10 +0,0 @@
<html>
<head>
<link rel="stylesheet" href="<%= static_url(EventosWeb.Endpoint, "/css/email.css") %>">
</head>
<body>
<%= render @view_module, @view_template, assigns %>
<p><%= gettext "An email sent by Eventos on %{instance}.", instance: @instance %></p>
</body>
</html>

View File

@@ -1,3 +0,0 @@
<%= render @view_module, @view_template, assigns %>
<%= gettext "An email sent by Eventos on %{instance}.", instance: @instance %>

View File

@@ -1,3 +0,0 @@
defmodule Eventos.EmailView do
use EventosWeb, :view
end

View File

@@ -1,6 +0,0 @@
defmodule EventosWeb.PageView do
@moduledoc """
View for our webapp
"""
use EventosWeb, :view
end

View File

@@ -1,10 +0,0 @@
defmodule EventosWeb.UserSessionView do
@moduledoc """
View for user Sessions
"""
use EventosWeb, :view
def render("token.json", %{token: token, user: user}) do
%{token: token, user: render_one(user, EventosWeb.UserView, "user_simple.json")}
end
end

View File

@@ -4,10 +4,10 @@ defmodule Mix.Tasks.CreateBot do
"""
use Mix.Task
alias Eventos.Actors
alias Eventos.Actors.Bot
alias Eventos.Repo
alias Eventos.Actors.User
alias Mobilizon.Actors
alias Mobilizon.Actors.Bot
alias Mobilizon.Repo
alias Mobilizon.Actors.User
import Logger
@shortdoc "Register user"

View File

@@ -1,4 +1,4 @@
defmodule Eventos.Activity do
defmodule Mobilizon.Activity do
@moduledoc """
Represents an activity
"""

View File

@@ -1,6 +1,6 @@
import EctoEnum
defenum(Eventos.Actors.ActorTypeEnum, :actor_type, [
defenum(Mobilizon.Actors.ActorTypeEnum, :actor_type, [
:Person,
:Application,
:Group,
@@ -8,19 +8,19 @@ defenum(Eventos.Actors.ActorTypeEnum, :actor_type, [
:Service
])
defmodule Eventos.Actors.Actor do
defmodule Mobilizon.Actors.Actor do
@moduledoc """
Represents an actor (local and remote actors)
"""
use Ecto.Schema
import Ecto.Changeset
alias Eventos.Actors
alias Eventos.Actors.{Actor, User, Follower, Member}
alias Eventos.Events.Event
alias Eventos.Service.ActivityPub
alias Mobilizon.Actors
alias Mobilizon.Actors.{Actor, User, Follower, Member}
alias Mobilizon.Events.Event
alias Mobilizon.Service.ActivityPub
import Ecto.Query
alias Eventos.Repo
alias Mobilizon.Repo
import Logger
@@ -33,7 +33,7 @@ defmodule Eventos.Actors.Actor do
field(:following_url, :string)
field(:followers_url, :string)
field(:shared_inbox_url, :string)
field(:type, Eventos.Actors.ActorTypeEnum, default: :Person)
field(:type, Mobilizon.Actors.ActorTypeEnum, default: :Person)
field(:name, :string)
field(:domain, :string)
field(:summary, :string)
@@ -73,7 +73,7 @@ defmodule Eventos.Actors.Actor do
:banner_url,
:user_id
])
|> put_change(:url, "#{EventosWeb.Endpoint.url()}/@#{attrs["preferred_username"]}")
|> put_change(:url, "#{MobilizonWeb.Endpoint.url()}/@#{attrs["preferred_username"]}")
|> validate_required([:preferred_username, :keys, :suspended, :url])
|> unique_constraint(:preferred_username, name: :actors_preferred_username_domain_index)
end
@@ -94,10 +94,10 @@ defmodule Eventos.Actors.Actor do
:user_id
])
|> unique_constraint(:preferred_username, name: :actors_preferred_username_domain_index)
|> put_change(:url, "#{EventosWeb.Endpoint.url()}/@#{attrs.preferred_username}")
|> put_change(:inbox_url, "#{EventosWeb.Endpoint.url()}/@#{attrs.preferred_username}/inbox")
|> put_change(:outbox_url, "#{EventosWeb.Endpoint.url()}/@#{attrs.preferred_username}/outbox")
|> put_change(:shared_inbox_url, "#{EventosWeb.Endpoint.url()}/inbox")
|> put_change(:url, "#{MobilizonWeb.Endpoint.url()}/@#{attrs.preferred_username}")
|> put_change(:inbox_url, "#{MobilizonWeb.Endpoint.url()}/@#{attrs.preferred_username}/inbox")
|> put_change(:outbox_url, "#{MobilizonWeb.Endpoint.url()}/@#{attrs.preferred_username}/outbox")
|> put_change(:shared_inbox_url, "#{MobilizonWeb.Endpoint.url()}/inbox")
|> validate_required([:preferred_username, :keys, :suspended, :url, :type])
end
@@ -160,14 +160,14 @@ defmodule Eventos.Actors.Actor do
])
|> put_change(
:outbox_url,
"#{EventosWeb.Endpoint.url()}/@#{params["preferred_username"]}/outbox"
"#{MobilizonWeb.Endpoint.url()}/@#{params["preferred_username"]}/outbox"
)
|> put_change(
:inbox_url,
"#{EventosWeb.Endpoint.url()}/@#{params["preferred_username"]}/inbox"
"#{MobilizonWeb.Endpoint.url()}/@#{params["preferred_username"]}/inbox"
)
|> put_change(:shared_inbox_url, "#{EventosWeb.Endpoint.url()}/inbox")
|> put_change(:url, "#{EventosWeb.Endpoint.url()}/@#{params["preferred_username"]}")
|> put_change(:shared_inbox_url, "#{MobilizonWeb.Endpoint.url()}/inbox")
|> put_change(:url, "#{MobilizonWeb.Endpoint.url()}/@#{params["preferred_username"]}")
|> put_change(:domain, nil)
|> put_change(:type, :Group)
|> validate_required([:url, :outbox_url, :inbox_url, :type, :name, :preferred_username])
@@ -180,7 +180,7 @@ defmodule Eventos.Actors.Actor do
def get_public_key_for_url(url) do
with {:ok, %Actor{} = actor} <- Actors.get_or_fetch_by_url(url) do
actor.keys
|> Eventos.Service.ActivityPub.Utils.pem_to_public_key()
|> Mobilizon.Service.ActivityPub.Utils.pem_to_public_key()
else
_ -> :error
end

View File

@@ -1,15 +1,15 @@
defmodule Eventos.Actors do
defmodule Mobilizon.Actors do
@moduledoc """
The Actors context.
"""
import Ecto.Query, warn: false
alias Eventos.Repo
alias Mobilizon.Repo
alias Eventos.Actors.Actor
alias Eventos.Actors
alias Mobilizon.Actors.Actor
alias Mobilizon.Actors
alias Eventos.Service.ActivityPub
alias Mobilizon.Service.ActivityPub
@doc """
Returns the list of actors.
@@ -147,7 +147,7 @@ defmodule Eventos.Actors do
|> Repo.insert()
end
alias Eventos.Actors.User
alias Mobilizon.Actors.User
@doc """
Returns the list of users.
@@ -361,7 +361,7 @@ defmodule Eventos.Actors do
case Comeonin.Argon2.checkpw(password, user.password_hash) do
true ->
# Yes, create and return the token
EventosWeb.Guardian.encode_and_sign(user)
MobilizonWeb.Guardian.encode_and_sign(user)
_ ->
# No, return an error
@@ -391,7 +391,7 @@ defmodule Eventos.Actors do
end
actor =
Eventos.Actors.Actor.registration_changeset(%Eventos.Actors.Actor{}, %{
Mobilizon.Actors.Actor.registration_changeset(%Mobilizon.Actors.Actor{}, %{
preferred_username: username,
domain: nil,
keys: pem,
@@ -399,7 +399,7 @@ defmodule Eventos.Actors do
})
user =
Eventos.Actors.User.registration_changeset(%Eventos.Actors.User{}, %{
Mobilizon.Actors.User.registration_changeset(%Mobilizon.Actors.User{}, %{
email: email,
password: password
})
@@ -407,7 +407,7 @@ defmodule Eventos.Actors do
actor_with_user = Ecto.Changeset.put_assoc(actor, :user, user)
try do
Eventos.Repo.insert!(actor_with_user)
Mobilizon.Repo.insert!(actor_with_user)
find_by_email(email)
rescue
e in Ecto.InvalidChangesetError ->
@@ -421,7 +421,7 @@ defmodule Eventos.Actors do
pem = [entry] |> :public_key.pem_encode() |> String.trim_trailing()
actor =
Eventos.Actors.Actor.registration_changeset(%Eventos.Actors.Actor{}, %{
Mobilizon.Actors.Actor.registration_changeset(%Mobilizon.Actors.Actor{}, %{
preferred_username: name,
domain: nil,
keys: pem,
@@ -430,7 +430,7 @@ defmodule Eventos.Actors do
})
try do
Eventos.Repo.insert!(actor)
Mobilizon.Repo.insert!(actor)
rescue
e in Ecto.InvalidChangesetError ->
{:error, e.changeset}
@@ -520,7 +520,7 @@ defmodule Eventos.Actors do
User.changeset(user, %{})
end
alias Eventos.Actors.Member
alias Mobilizon.Actors.Member
@doc """
Gets a single member.
@@ -626,7 +626,7 @@ defmodule Eventos.Actors do
)
end
alias Eventos.Actors.Bot
alias Mobilizon.Actors.Bot
@doc """
Returns the list of bots.
@@ -727,7 +727,7 @@ defmodule Eventos.Actors do
Bot.changeset(bot, %{})
end
alias Eventos.Actors.Follower
alias Mobilizon.Actors.Follower
@doc """
Gets a single follower.

View File

@@ -1,10 +1,10 @@
defmodule Eventos.Actors.Bot do
defmodule Mobilizon.Actors.Bot do
@moduledoc """
Represents a local bot
"""
use Ecto.Schema
import Ecto.Changeset
alias Eventos.Actors.{Actor, User, Bot}
alias Mobilizon.Actors.{Actor, User, Bot}
schema "bots" do
field(:source, :string)

View File

@@ -1,11 +1,11 @@
defmodule Eventos.Actors.Follower do
defmodule Mobilizon.Actors.Follower do
@moduledoc """
Represents the following of an actor to another actor
"""
use Ecto.Schema
import Ecto.Changeset
alias Eventos.Actors.Follower
alias Eventos.Actors.Actor
alias Mobilizon.Actors.Follower
alias Mobilizon.Actors.Actor
schema "followers" do
field(:approved, :boolean, default: false)

View File

@@ -1,11 +1,11 @@
defmodule Eventos.Actors.Member do
defmodule Mobilizon.Actors.Member do
@moduledoc """
Represents the membership of an actor to a group
"""
use Ecto.Schema
import Ecto.Changeset
alias Eventos.Actors.Member
alias Eventos.Actors.Actor
alias Mobilizon.Actors.Member
alias Mobilizon.Actors.Actor
schema "members" do
field(:approved, :boolean, default: true)

View File

@@ -1,8 +1,8 @@
defmodule Eventos.Actors.Service.Activation do
defmodule Mobilizon.Actors.Service.Activation do
@moduledoc false
alias Eventos.{Mailer, Repo, Actors.User, Actors}
alias Eventos.Email.User, as: UserEmail
alias Mobilizon.{Mailer, Repo, Actors.User, Actors}
alias Mobilizon.Email.User, as: UserEmail
require Logger

View File

@@ -1,10 +1,10 @@
defmodule Eventos.Actors.Service.ResetPassword do
defmodule Mobilizon.Actors.Service.ResetPassword do
@moduledoc false
require Logger
alias Eventos.{Mailer, Repo, Actors.User}
alias Eventos.Email.User, as: UserEmail
alias Mobilizon.{Mailer, Repo, Actors.User}
alias Mobilizon.Email.User, as: UserEmail
@doc """
Check that the provided token is correct and update provided password

View File

@@ -1,10 +1,10 @@
defmodule Eventos.Actors.User do
defmodule Mobilizon.Actors.User do
@moduledoc """
Represents a local user
"""
use Ecto.Schema
import Ecto.Changeset
alias Eventos.Actors.{Actor, User}
alias Mobilizon.Actors.{Actor, User}
schema "users" do
field(:email, :string)

View File

@@ -1,11 +1,11 @@
defmodule Eventos.Addresses.Address do
defmodule Mobilizon.Addresses.Address do
@moduledoc "An address for an event or a group"
use Ecto.Schema
import Ecto.Changeset
alias Eventos.Addresses.Address
alias Eventos.Events.Event
alias Eventos.Groups.Group
alias Mobilizon.Addresses.Address
alias Mobilizon.Events.Event
alias Mobilizon.Groups.Group
schema "addresses" do
field(:addressCountry, :string)

View File

@@ -1,12 +1,12 @@
defmodule Eventos.Addresses do
defmodule Mobilizon.Addresses do
@moduledoc """
The Addresses context.
"""
import Ecto.Query, warn: false
alias Eventos.Repo
alias Mobilizon.Repo
alias Eventos.Addresses.Address
alias Mobilizon.Addresses.Address
import Logger

View File

@@ -1,6 +1,6 @@
defmodule Eventos.Application do
defmodule Mobilizon.Application do
@moduledoc """
The Eventos application
The Mobilizon application
"""
use Application
@@ -12,25 +12,25 @@ defmodule Eventos.Application do
# Define workers and child supervisors to be supervised
children = [
# Start the Ecto repository
supervisor(Eventos.Repo, []),
supervisor(Mobilizon.Repo, []),
# Start the endpoint when the application starts
supervisor(EventosWeb.Endpoint, []),
# Start your own worker by calling: Eventos.Worker.start_link(arg1, arg2, arg3)
# worker(Eventos.Worker, [arg1, arg2, arg3]),
supervisor(MobilizonWeb.Endpoint, []),
# Start your own worker by calling: Mobilizon.Worker.start_link(arg1, arg2, arg3)
# worker(Mobilizon.Worker, [arg1, arg2, arg3]),
worker(Guardian.DB.Token.SweeperServer, []),
worker(Eventos.Service.Federator, [])
worker(Mobilizon.Service.Federator, [])
]
# See https://hexdocs.pm/elixir/Supervisor.html
# for other strategies and supported options
opts = [strategy: :one_for_one, name: Eventos.Supervisor]
opts = [strategy: :one_for_one, name: Mobilizon.Supervisor]
Supervisor.start_link(children, opts)
end
# Tell Phoenix to update the endpoint configuration
# whenever the application is updated.
def config_change(changed, _new, removed) do
EventosWeb.Endpoint.config_change(changed, removed)
MobilizonWeb.Endpoint.config_change(changed, removed)
:ok
end
end

View File

@@ -1,13 +1,13 @@
defmodule Eventos.Email.User do
defmodule Mobilizon.Email.User do
@moduledoc """
Handles emails sent to users
"""
alias Eventos.Actors.User
alias Mobilizon.Actors.User
import Bamboo.Email
import Bamboo.Phoenix
use Bamboo.Phoenix, view: Eventos.EmailView
import EventosWeb.Gettext
use Bamboo.Phoenix, view: Mobilizon.EmailView
import MobilizonWeb.Gettext
def confirmation_email(%User{} = user, locale \\ "en") do
Gettext.put_locale(locale)
@@ -45,13 +45,13 @@ defmodule Eventos.Email.User do
defp base_email do
# Here you can set a default from, default headers, etc.
new_email()
|> from(Application.get_env(:eventos, EventosWeb.Endpoint)[:email_from])
|> put_html_layout({Eventos.EmailView, "email.html"})
|> put_text_layout({Eventos.EmailView, "email.text"})
|> from(Application.get_env(:mobilizon, MobilizonWeb.Endpoint)[:email_from])
|> put_html_layout({Mobilizon.EmailView, "email.html"})
|> put_text_layout({Mobilizon.EmailView, "email.text"})
end
@spec get_config(atom()) :: any()
defp get_config(key) do
_config = Application.get_env(:eventos, EventosWeb.Endpoint) |> Keyword.get(key)
_config = Application.get_env(:mobilizon, MobilizonWeb.Endpoint) |> Keyword.get(key)
end
end

View File

@@ -1,10 +1,10 @@
defmodule Eventos.Events.Category do
defmodule Mobilizon.Events.Category do
@moduledoc """
Represents a category for events
"""
use Ecto.Schema
import Ecto.Changeset
alias Eventos.Events.Category
alias Mobilizon.Events.Category
schema "categories" do
field(:description, :string)

View File

@@ -1,4 +1,4 @@
defmodule Eventos.Events.Comment do
defmodule Mobilizon.Events.Comment do
@moduledoc """
An actor comment (for instance on an event or on a group)
"""
@@ -6,9 +6,9 @@ defmodule Eventos.Events.Comment do
use Ecto.Schema
import Ecto.Changeset
alias Eventos.Events.Event
alias Eventos.Actors.Actor
alias Eventos.Actors.Comment
alias Mobilizon.Events.Event
alias Mobilizon.Actors.Actor
alias Mobilizon.Actors.Comment
schema "comments" do
field(:text, :string)
@@ -32,7 +32,7 @@ defmodule Eventos.Events.Comment do
url =
if Map.has_key?(attrs, "url"),
do: attrs["url"],
else: "#{EventosWeb.Endpoint.url()}/comments/#{uuid}"
else: "#{MobilizonWeb.Endpoint.url()}/comments/#{uuid}"
comment
|> cast(attrs, [:url, :text, :actor_id, :event_id, :in_reply_to_comment_id, :attributed_to_id])

View File

@@ -1,15 +1,15 @@
import EctoEnum
defenum(AddressTypeEnum, :address_type, [:physical, :url, :phone, :other])
defmodule Eventos.Events.Event do
defmodule Mobilizon.Events.Event do
@moduledoc """
Represents an event
"""
use Ecto.Schema
import Ecto.Changeset
alias Eventos.Events.{Event, Participant, Tag, Category, Session, Track}
alias Eventos.Actors.Actor
alias Eventos.Addresses.Address
alias Mobilizon.Events.{Event, Participant, Tag, Category, Session, Track}
alias Mobilizon.Actors.Actor
alias Mobilizon.Addresses.Address
schema "events" do
field(:url, :string)
@@ -58,7 +58,7 @@ defmodule Eventos.Events.Event do
url =
if Map.has_key?(attrs, "url"),
do: attrs["url"],
else: "#{EventosWeb.Endpoint.url()}/@#{actor_url}/#{uuid}"
else: "#{MobilizonWeb.Endpoint.url()}/@#{actor_url}/#{uuid}"
event
|> Ecto.Changeset.cast(attrs, [

View File

@@ -1,15 +1,15 @@
defmodule Eventos.Events do
defmodule Mobilizon.Events do
@moduledoc """
The Events context.
"""
import Ecto.Query, warn: false
alias Eventos.Repo
alias Mobilizon.Repo
alias Eventos.Events.Event
alias Eventos.Events.Comment
alias Eventos.Actors.Actor
alias Eventos.Addresses.Address
alias Mobilizon.Events.Event
alias Mobilizon.Events.Comment
alias Mobilizon.Actors.Actor
alias Mobilizon.Addresses.Address
@doc """
Returns the list of events.
@@ -263,7 +263,7 @@ defmodule Eventos.Events do
Event.changeset(event, %{})
end
alias Eventos.Events.Category
alias Mobilizon.Events.Category
@doc """
Returns the list of categories.
@@ -364,7 +364,7 @@ defmodule Eventos.Events do
Category.changeset(category, %{})
end
alias Eventos.Events.Tag
alias Mobilizon.Events.Tag
@doc """
Returns the list of tags.
@@ -460,7 +460,7 @@ defmodule Eventos.Events do
Tag.changeset(tag, %{})
end
alias Eventos.Events.Participant
alias Mobilizon.Events.Participant
@doc """
Returns the list of participants.
@@ -562,7 +562,7 @@ defmodule Eventos.Events do
Repo.all(from(p in Participant, where: p.actor_id == ^actor.id and p.approved == false))
end
alias Eventos.Events.Session
alias Mobilizon.Events.Session
@doc """
Returns the list of sessions.
@@ -679,7 +679,7 @@ defmodule Eventos.Events do
Session.changeset(session, %{})
end
alias Eventos.Events.Track
alias Mobilizon.Events.Track
@doc """
Returns the list of tracks.
@@ -775,7 +775,7 @@ defmodule Eventos.Events do
Track.changeset(track, %{})
end
alias Eventos.Events.Comment
alias Mobilizon.Events.Comment
@doc """
Returns the list of comments.

View File

@@ -1,11 +1,11 @@
defmodule Eventos.Events.Participant do
defmodule Mobilizon.Events.Participant do
@moduledoc """
Represents a participant, an actor participating to an event
"""
use Ecto.Schema
import Ecto.Changeset
alias Eventos.Events.{Participant, Event}
alias Eventos.Actors.Actor
alias Mobilizon.Events.{Participant, Event}
alias Mobilizon.Actors.Actor
@primary_key false
schema "participants" do

View File

@@ -1,10 +1,10 @@
defmodule Eventos.Events.Session do
defmodule Mobilizon.Events.Session do
@moduledoc """
Represents a session for an event (such as a talk at a conference)
"""
use Ecto.Schema
import Ecto.Changeset
alias Eventos.Events.{Session, Event, Track}
alias Mobilizon.Events.{Session, Event, Track}
schema "sessions" do
field(:audios_urls, :string)

View File

@@ -1,10 +1,10 @@
defmodule Eventos.Events.Tag.TitleSlug do
defmodule Mobilizon.Events.Tag.TitleSlug do
@moduledoc """
Generates slugs for tags
"""
alias Eventos.Events.Tag
alias Mobilizon.Events.Tag
import Ecto.Query
alias Eventos.Repo
alias Mobilizon.Repo
use EctoAutoslugField.Slug, from: :title, to: :slug
def build_slug(sources, changeset) do
@@ -25,20 +25,20 @@ defmodule Eventos.Events.Tag.TitleSlug do
_story ->
slug
|> Eventos.Slug.increment_slug()
|> Mobilizon.Slug.increment_slug()
|> build_unique_slug(changeset)
end
end
end
defmodule Eventos.Events.Tag do
defmodule Mobilizon.Events.Tag do
@moduledoc """
Represents a tag for events
"""
use Ecto.Schema
import Ecto.Changeset
alias Eventos.Events.Tag
alias Eventos.Events.Tag.TitleSlug
alias Mobilizon.Events.Tag
alias Mobilizon.Events.Tag.TitleSlug
schema "tags" do
field(:title, :string)

View File

@@ -1,10 +1,10 @@
defmodule Eventos.Events.Track do
defmodule Mobilizon.Events.Track do
@moduledoc """
Represents a track for an event (such as a theme) having multiple sessions
"""
use Ecto.Schema
import Ecto.Changeset
alias Eventos.Events.{Track, Event, Session}
alias Mobilizon.Events.{Track, Event, Session}
schema "tracks" do
field(:color, :string)

View File

@@ -1,9 +1,9 @@
defmodule Eventos.Export.ICalendar do
defmodule Mobilizon.Export.ICalendar do
@moduledoc """
Export an event to iCalendar format
"""
alias Eventos.Events.Event
alias Mobilizon.Events.Event
@spec export_event(%Event{}) :: String
def export_event(%Event{} = event) do

6
lib/mobilizon/mailer.ex Normal file
View File

@@ -0,0 +1,6 @@
defmodule Mobilizon.Mailer do
@moduledoc """
Mailer
"""
use Bamboo.Mailer, otp_app: :mobilizon
end

View File

@@ -1,5 +1,5 @@
Postgrex.Types.define(
Eventos.PostgresTypes,
Mobilizon.PostgresTypes,
[Geo.PostGIS.Extension] ++ Ecto.Adapters.Postgres.extensions(),
json: Poison
)

View File

@@ -1,8 +1,8 @@
defmodule Eventos.Repo do
defmodule Mobilizon.Repo do
@moduledoc """
Eventos Repo
Mobilizon Repo
"""
use Ecto.Repo, otp_app: :eventos
use Ecto.Repo, otp_app: :mobilizon
@doc """
Dynamically loads the repository url from the

View File

@@ -1,4 +1,4 @@
defmodule Eventos.Slug do
defmodule Mobilizon.Slug do
@moduledoc """
Common functions for slug generation
"""

View File

@@ -1,4 +1,4 @@
defmodule EventosWeb.AuthErrorHandler do
defmodule MobilizonWeb.AuthErrorHandler do
@moduledoc """
In case we have an auth error
"""

View File

@@ -1,12 +1,12 @@
defmodule EventosWeb.AuthPipeline do
defmodule MobilizonWeb.AuthPipeline do
@moduledoc """
Handles the app sessions
"""
use Guardian.Plug.Pipeline,
otp_app: :eventos,
module: EventosWeb.Guardian,
error_handler: EventosWeb.AuthErrorHandler
otp_app: :mobilizon,
module: MobilizonWeb.Guardian,
error_handler: MobilizonWeb.AuthErrorHandler
plug(Guardian.Plug.VerifyHeader, claims: %{"typ" => "access"})
plug(Guardian.Plug.EnsureAuthenticated)

View File

@@ -1,11 +1,11 @@
defmodule EventosWeb.UserSocket do
defmodule MobilizonWeb.UserSocket do
@moduledoc """
Channel for User
"""
use Phoenix.Socket
# Channels
# channel "room:*", EventosWeb.RoomChannel
# channel "room:*", MobilizonWeb.RoomChannel
# Transports
transport(:websocket, Phoenix.Transports.WebSocket)
@@ -33,7 +33,7 @@ defmodule EventosWeb.UserSocket do
# Would allow you to broadcast a "disconnect" event and terminate
# all active sockets and channels for a given user:
#
# EventosWeb.Endpoint.broadcast("user_socket:#{user.id}", "disconnect", %{})
# MobilizonWeb.Endpoint.broadcast("user_socket:#{user.id}", "disconnect", %{})
#
# Returning `nil` makes this socket anonymous.
def id(_socket), do: nil

View File

@@ -1,9 +1,9 @@
defmodule EventosWeb.ActivityPubController do
use EventosWeb, :controller
alias Eventos.{Actors, Actors.Actor, Events, Events.Event}
alias EventosWeb.ActivityPub.{ObjectView, ActorView}
alias Eventos.Service.ActivityPub
alias Eventos.Service.Federator
defmodule MobilizonWeb.ActivityPubController do
use MobilizonWeb, :controller
alias Mobilizon.{Actors, Actors.Actor, Events, Events.Event}
alias MobilizonWeb.ActivityPub.{ObjectView, ActorView}
alias Mobilizon.Service.ActivityPub
alias Mobilizon.Service.Federator
require Logger

View File

@@ -1,14 +1,14 @@
defmodule EventosWeb.ActorController do
defmodule MobilizonWeb.ActorController do
@moduledoc """
Controller for Actors
"""
use EventosWeb, :controller
use MobilizonWeb, :controller
alias Eventos.Actors
alias Eventos.Actors.{Actor, User}
alias Eventos.Service.ActivityPub
alias Mobilizon.Actors
alias Mobilizon.Actors.{Actor, User}
alias Mobilizon.Service.ActivityPub
action_fallback(EventosWeb.FallbackController)
action_fallback(MobilizonWeb.FallbackController)
def index(conn, _params) do
actors = Actors.list_actors()

View File

@@ -1,14 +1,14 @@
defmodule EventosWeb.AddressController do
defmodule MobilizonWeb.AddressController do
@moduledoc """
A controller for addresses
"""
use EventosWeb, :controller
use MobilizonWeb, :controller
alias Eventos.Addresses
alias Eventos.Addresses.Address
alias Mobilizon.Addresses
alias Mobilizon.Addresses.Address
action_fallback(EventosWeb.FallbackController)
action_fallback(MobilizonWeb.FallbackController)
def index(conn, _params) do
addresses = Addresses.list_addresses()

View File

@@ -1,10 +1,10 @@
defmodule EventosWeb.BotController do
use EventosWeb, :controller
defmodule MobilizonWeb.BotController do
use MobilizonWeb, :controller
alias Eventos.Actors
alias Eventos.Actors.{Bot, Actor}
alias Mobilizon.Actors
alias Mobilizon.Actors.{Bot, Actor}
action_fallback(EventosWeb.FallbackController)
action_fallback(MobilizonWeb.FallbackController)
def index(conn, _params) do
bots = Actors.list_bots()

View File

@@ -1,13 +1,13 @@
defmodule EventosWeb.CategoryController do
defmodule MobilizonWeb.CategoryController do
@moduledoc """
Controller for Categories
"""
use EventosWeb, :controller
use MobilizonWeb, :controller
alias Eventos.Events
alias Eventos.Events.Category
alias Mobilizon.Events
alias Mobilizon.Events.Category
action_fallback(EventosWeb.FallbackController)
action_fallback(MobilizonWeb.FallbackController)
def index(conn, _params) do
categories = Events.list_categories()

View File

@@ -1,10 +1,10 @@
defmodule EventosWeb.CommentController do
use EventosWeb, :controller
defmodule MobilizonWeb.CommentController do
use MobilizonWeb, :controller
alias Eventos.Events
alias Eventos.Events.Comment
alias Mobilizon.Events
alias Mobilizon.Events.Comment
action_fallback(EventosWeb.FallbackController)
action_fallback(MobilizonWeb.FallbackController)
def index(conn, _params) do
comments = Events.list_comments()

View File

@@ -1,16 +1,16 @@
defmodule EventosWeb.EventController do
defmodule MobilizonWeb.EventController do
@moduledoc """
Controller for Events
"""
use EventosWeb, :controller
use MobilizonWeb, :controller
alias Eventos.Events
alias Eventos.Events.Event
alias Eventos.Export.ICalendar
alias Mobilizon.Events
alias Mobilizon.Events.Event
alias Mobilizon.Export.ICalendar
require Logger
action_fallback(EventosWeb.FallbackController)
action_fallback(MobilizonWeb.FallbackController)
def index(conn, _params) do
ip = "88.161.154.97"
@@ -70,7 +70,7 @@ defmodule EventosWeb.EventController do
Map.has_key?(event, "physical_address") ->
address = event["physical_address"]
geom = EventosWeb.AddressController.process_geom(address["geom"])
geom = MobilizonWeb.AddressController.process_geom(address["geom"])
address =
case geom do

View File

@@ -1,13 +1,13 @@
# defmodule EventosWeb.EventRequestController do
# defmodule MobilizonWeb.EventRequestController do
# @moduledoc """
# Controller for Event requests
# """
# use EventosWeb, :controller
# use MobilizonWeb, :controller
#
# alias Eventos.Events
# alias Eventos.Events.{Event, Request}
# alias Mobilizon.Events
# alias Mobilizon.Events.{Event, Request}
#
# action_fallback EventosWeb.FallbackController
# action_fallback MobilizonWeb.FallbackController
#
# def index_for_user(conn, _params) do
# actor = Guardian.Plug.current_resource(conn).actor

View File

@@ -1,26 +1,26 @@
defmodule EventosWeb.FallbackController do
defmodule MobilizonWeb.FallbackController do
@moduledoc """
Translates controller action results into valid `Plug.Conn` responses.
See `Phoenix.Controller.action_fallback/1` for more details.
"""
use EventosWeb, :controller
use MobilizonWeb, :controller
def call(conn, {:error, %Ecto.Changeset{} = changeset}) do
conn
|> put_status(:unprocessable_entity)
|> render(EventosWeb.ChangesetView, "error.json", changeset: changeset)
|> render(MobilizonWeb.ChangesetView, "error.json", changeset: changeset)
end
def call(conn, {:error, nil}) do
conn
|> put_status(:unprocessable_entity)
|> render(EventosWeb.ErrorView, "invalid_request.json")
|> render(MobilizonWeb.ErrorView, "invalid_request.json")
end
def call(conn, {:error, :not_found}) do
conn
|> put_status(:not_found)
|> render(EventosWeb.ErrorView, :"404")
|> render(MobilizonWeb.ErrorView, :"404")
end
end

View File

@@ -1,10 +1,10 @@
defmodule EventosWeb.FollowerController do
use EventosWeb, :controller
defmodule MobilizonWeb.FollowerController do
use MobilizonWeb, :controller
alias Eventos.Actors
alias Eventos.Actors.Follower
alias Mobilizon.Actors
alias Mobilizon.Actors.Follower
action_fallback(EventosWeb.FallbackController)
action_fallback(MobilizonWeb.FallbackController)
def index(conn, _params) do
followers = Actors.list_followers()

View File

@@ -1,17 +1,17 @@
defmodule EventosWeb.GroupController do
defmodule MobilizonWeb.GroupController do
@moduledoc """
Controller for Groups
"""
use EventosWeb, :controller
use MobilizonWeb, :controller
alias Eventos.Actors
alias Eventos.Actors.{Actor, Member}
alias Mobilizon.Actors
alias Mobilizon.Actors.{Actor, Member}
action_fallback(EventosWeb.FallbackController)
action_fallback(MobilizonWeb.FallbackController)
def index(conn, _params) do
groups = Actors.list_groups()
render(conn, EventosWeb.ActorView, "index.json", actors: groups)
render(conn, MobilizonWeb.ActorView, "index.json", actors: groups)
end
def create(conn, %{"group" => group_params}) do
@@ -25,7 +25,7 @@ defmodule EventosWeb.GroupController do
conn
|> put_status(:created)
|> put_resp_header("location", actor_path(conn, :show, group))
|> render(EventosWeb.ActorView, "actor_basic.json", actor: group)
|> render(MobilizonWeb.ActorView, "actor_basic.json", actor: group)
end
end
@@ -36,12 +36,12 @@ defmodule EventosWeb.GroupController do
Actors.create_member(%{"parent_id" => group.id, "actor_id" => actor.id}) do
conn
|> put_status(:created)
|> render(EventosWeb.MemberView, "member.json", member: member)
|> render(MobilizonWeb.MemberView, "member.json", member: member)
else
nil ->
conn
|> put_status(:not_found)
|> render(EventosWeb.ErrorView, "not_found.json", details: "group or actor doesn't exist")
|> render(MobilizonWeb.ErrorView, "not_found.json", details: "group or actor doesn't exist")
err ->
require Logger

View File

@@ -0,0 +1,6 @@
defmodule MobilizonWeb.InboxesController do
use MobilizonWeb, :controller
def create(conn) do
end
end

View File

@@ -1,17 +1,17 @@
defmodule EventosWeb.NodeinfoController do
use EventosWeb, :controller
defmodule MobilizonWeb.NodeinfoController do
use MobilizonWeb, :controller
alias EventosWeb
alias Eventos.{Actors, Events}
alias MobilizonWeb
alias Mobilizon.{Actors, Events}
@instance Application.get_env(:eventos, :instance)
@instance Application.get_env(:mobilizon, :instance)
def schemas(conn, _params) do
response = %{
links: [
%{
rel: "http://nodeinfo.diaspora.software/ns/schema/2.0",
href: EventosWeb.Router.Helpers.nodeinfo_url(EventosWeb.Endpoint, :nodeinfo, "2.0")
href: MobilizonWeb.Router.Helpers.nodeinfo_url(MobilizonWeb.Endpoint, :nodeinfo, "2.0")
}
]
}
@@ -28,7 +28,7 @@ defmodule EventosWeb.NodeinfoController do
response = %{
version: "2.0",
software: %{
name: "eventos",
name: "mobilizon",
version: Keyword.get(@instance, :version)
},
protocols: ["activitypub"],

View File

@@ -1,5 +1,5 @@
defmodule EventosWeb.OutboxesController do
use EventosWeb, :controller
defmodule MobilizonWeb.OutboxesController do
use MobilizonWeb, :controller
def show(conn) do
actor = Guardian.Plug.current_resource(conn).actor

View File

@@ -1,8 +1,8 @@
defmodule EventosWeb.PageController do
defmodule MobilizonWeb.PageController do
@moduledoc """
Controller to load our webapp
"""
use EventosWeb, :controller
use MobilizonWeb, :controller
plug(:put_layout, false)

View File

@@ -1,10 +1,10 @@
defmodule EventosWeb.ParticipantController do
defmodule MobilizonWeb.ParticipantController do
@moduledoc """
Controller for participants to an event
"""
use EventosWeb, :controller
use MobilizonWeb, :controller
alias Eventos.Events
alias Mobilizon.Events
def join(conn, %{"uuid" => uuid}) do
with event <- Events.get_event_by_uuid(uuid),

View File

@@ -1,13 +1,13 @@
defmodule EventosWeb.SearchController do
defmodule MobilizonWeb.SearchController do
@moduledoc """
Controller for Search
"""
use EventosWeb, :controller
use MobilizonWeb, :controller
alias Eventos.Events
alias Eventos.Actors
alias Mobilizon.Events
alias Mobilizon.Actors
action_fallback(EventosWeb.FallbackController)
action_fallback(MobilizonWeb.FallbackController)
def search(conn, %{"name" => name}) do
events = Events.find_events_by_name(name)

View File

@@ -1,13 +1,13 @@
defmodule EventosWeb.SessionController do
defmodule MobilizonWeb.SessionController do
@moduledoc """
Controller for (event) Sessions
"""
use EventosWeb, :controller
use MobilizonWeb, :controller
alias Eventos.Events
alias Eventos.Events.Session
alias Mobilizon.Events
alias Mobilizon.Events.Session
action_fallback(EventosWeb.FallbackController)
action_fallback(MobilizonWeb.FallbackController)
def index(conn, _params) do
sessions = Events.list_sessions()

View File

@@ -1,13 +1,13 @@
defmodule EventosWeb.TagController do
defmodule MobilizonWeb.TagController do
@moduledoc """
Controller for Tags
"""
use EventosWeb, :controller
use MobilizonWeb, :controller
alias Eventos.Events
alias Eventos.Events.Tag
alias Mobilizon.Events
alias Mobilizon.Events.Tag
action_fallback(EventosWeb.FallbackController)
action_fallback(MobilizonWeb.FallbackController)
def index(conn, _params) do
tags = Events.list_tags()

View File

@@ -1,13 +1,13 @@
defmodule EventosWeb.TrackController do
defmodule MobilizonWeb.TrackController do
@moduledoc """
Controller for Tracks
"""
use EventosWeb, :controller
use MobilizonWeb, :controller
alias Eventos.Events
alias Eventos.Events.Track
alias Mobilizon.Events
alias Mobilizon.Events.Track
action_fallback(EventosWeb.FallbackController)
action_fallback(MobilizonWeb.FallbackController)
def index(conn, _params) do
tracks = Events.list_tracks()

View File

@@ -1,15 +1,15 @@
defmodule EventosWeb.UserController do
defmodule MobilizonWeb.UserController do
@moduledoc """
Controller for Users
"""
use EventosWeb, :controller
use MobilizonWeb, :controller
alias Eventos.Actors
alias Eventos.Actors.User
alias Eventos.Repo
alias Eventos.Actors.Service.{Activation, ResetPassword}
alias Mobilizon.Actors
alias Mobilizon.Actors.User
alias Mobilizon.Repo
alias Mobilizon.Actors.Service.{Activation, ResetPassword}
action_fallback(EventosWeb.FallbackController)
action_fallback(MobilizonWeb.FallbackController)
def index(conn, _params) do
users = Actors.list_users_with_actors()
@@ -29,7 +29,7 @@ defmodule EventosWeb.UserController do
def validate(conn, %{"token" => token}) do
with {:ok, %User{} = user} <- Activation.check_confirmation_token(token) do
{:ok, token, _claims} = EventosWeb.Guardian.encode_and_sign(user)
{:ok, token, _claims} = MobilizonWeb.Guardian.encode_and_sign(user)
conn
|> put_resp_header("location", user_path(conn, :show_current_actor))
@@ -88,7 +88,7 @@ defmodule EventosWeb.UserController do
def reset_password(conn, %{"password" => password, "token" => token}) do
with {:ok, %User{} = user} <- ResetPassword.check_reset_password_token(password, token) do
{:ok, token, _claims} = EventosWeb.Guardian.encode_and_sign(user)
{:ok, token, _claims} = MobilizonWeb.Guardian.encode_and_sign(user)
render(conn, "show_with_token.json", %{user: user, token: token})
else
{:error, :invalid_token} ->
@@ -99,7 +99,7 @@ defmodule EventosWeb.UserController do
{:error, %Ecto.Changeset{} = changeset} ->
conn
|> put_status(:unprocessable_entity)
|> render(EventosWeb.ChangesetView, "error.json", changeset: changeset)
|> render(MobilizonWeb.ChangesetView, "error.json", changeset: changeset)
end
end

View File

@@ -1,10 +1,10 @@
defmodule EventosWeb.UserSessionController do
defmodule MobilizonWeb.UserSessionController do
@moduledoc """
Controller for user sessions
"""
use EventosWeb, :controller
alias Eventos.Actors.User
alias Eventos.Actors
use MobilizonWeb, :controller
alias Mobilizon.Actors.User
alias Mobilizon.Actors
def sign_in(conn, %{"email" => email, "password" => password}) do
with {:ok, %User{} = user} <- Actors.find_by_email(email),
@@ -35,7 +35,7 @@ defmodule EventosWeb.UserSessionController do
def sign_out(conn, _params) do
conn
|> EventosWeb.Guardian.Plug.sign_out()
|> MobilizonWeb.Guardian.Plug.sign_out()
|> send_resp(204, "")
end
end

View File

@@ -1,7 +1,7 @@
defmodule EventosWeb.WebFingerController do
use EventosWeb, :controller
defmodule MobilizonWeb.WebFingerController do
use MobilizonWeb, :controller
alias Eventos.Service.WebFinger
alias Mobilizon.Service.WebFinger
def host_meta(conn, _params) do
xml = WebFinger.host_meta()

View File

@@ -1,10 +1,10 @@
defmodule EventosWeb.Endpoint do
defmodule MobilizonWeb.Endpoint do
@moduledoc """
Endpoint for Eventos app
Endpoint for Mobilizon app
"""
use Phoenix.Endpoint, otp_app: :eventos
use Phoenix.Endpoint, otp_app: :mobilizon
socket("/socket", EventosWeb.UserSocket)
socket("/socket", MobilizonWeb.UserSocket)
# Serve at "/" the static files from "priv/static" directory.
#
@@ -13,7 +13,7 @@ defmodule EventosWeb.Endpoint do
plug(
Plug.Static,
at: "/",
from: :eventos,
from: :mobilizon,
gzip: false,
only: ~w(css fonts images js favicon.ico robots.txt index.html)
)
@@ -46,11 +46,11 @@ defmodule EventosWeb.Endpoint do
plug(
Plug.Session,
store: :cookie,
key: "_eventos_key",
key: "_mobilizon_key",
signing_salt: "F9CCTF22"
)
plug(EventosWeb.Router)
plug(MobilizonWeb.Router)
@doc """
Callback invoked for dynamically configuring the endpoint.

View File

@@ -1,11 +1,11 @@
defmodule EventosWeb.Gettext do
defmodule MobilizonWeb.Gettext do
@moduledoc """
A module providing Internationalization with a gettext-based API.
By using [Gettext](https://hexdocs.pm/gettext),
your module gains a set of macros for translations, for example:
import EventosWeb.Gettext
import MobilizonWeb.Gettext
# Simple translation
gettext "Here is the string to translate"
@@ -20,5 +20,5 @@ defmodule EventosWeb.Gettext do
See the [Gettext Docs](https://hexdocs.pm/gettext) for detailed usage.
"""
use Gettext, otp_app: :eventos
use Gettext, otp_app: :mobilizon
end

View File

@@ -1,16 +1,16 @@
defmodule EventosWeb.Guardian do
defmodule MobilizonWeb.Guardian do
@moduledoc """
Handles the JWT tokens encoding and decoding
"""
use Guardian,
otp_app: :eventos,
otp_app: :mobilizon,
permissions: %{
superuser: [:moderate, :super],
user: [:base]
}
alias Eventos.Actors
alias Eventos.Actors.User
alias Mobilizon.Actors
alias Mobilizon.Actors.User
def subject_for_token(%User{} = user, _claims) do
{:ok, "User:" <> to_string(user.id)}

View File

@@ -1,11 +1,11 @@
defmodule EventosWeb.HTTPSignaturePlug do
defmodule MobilizonWeb.HTTPSignaturePlug do
@moduledoc """
# HTTPSignaturePlug
Plug to check HTTP Signatures on every incoming request
"""
alias Eventos.Service.HTTPSignatures
alias Mobilizon.Service.HTTPSignatures
import Plug.Conn
require Logger

View File

@@ -1,8 +1,8 @@
defmodule EventosWeb.Router do
defmodule MobilizonWeb.Router do
@moduledoc """
Router for eventos app
Router for mobilizon app
"""
use EventosWeb, :router
use MobilizonWeb, :router
pipeline :api do
plug(:accepts, ["json"])
@@ -14,12 +14,12 @@ defmodule EventosWeb.Router do
pipeline :activity_pub do
plug(:accepts, ["activity-json", "text/html"])
plug(EventosWeb.HTTPSignaturePlug)
plug(MobilizonWeb.HTTPSignaturePlug)
end
pipeline :api_auth do
plug(:accepts, ["json"])
plug(EventosWeb.AuthPipeline)
plug(MobilizonWeb.AuthPipeline)
end
pipeline :browser do
@@ -34,7 +34,7 @@ defmodule EventosWeb.Router do
plug(:accepts, ["html", "application/json"])
end
scope "/api", EventosWeb do
scope "/api", MobilizonWeb do
pipe_through(:api)
scope "/v1" do
@@ -81,7 +81,7 @@ defmodule EventosWeb.Router do
end
# Authentificated API
scope "/api", EventosWeb do
scope "/api", MobilizonWeb do
pipe_through(:api_auth)
scope "/v1" do
@@ -112,7 +112,7 @@ defmodule EventosWeb.Router do
end
end
scope "/.well-known", EventosWeb do
scope "/.well-known", MobilizonWeb do
pipe_through(:well_known)
get("/host-meta", WebFingerController, :host_meta)
@@ -120,7 +120,7 @@ defmodule EventosWeb.Router do
get("/nodeinfo", NodeinfoController, :schemas)
end
scope "/", EventosWeb do
scope "/", MobilizonWeb do
pipe_through(:activity_pub)
get("/@:name", ActivityPubController, :actor)
@@ -138,7 +138,7 @@ defmodule EventosWeb.Router do
forward("/sent_emails", Bamboo.SentEmailViewerPlug)
end
scope "/", EventosWeb do
scope "/", MobilizonWeb do
pipe_through(:browser)
get("/*path", PageController, :index)

View File

@@ -0,0 +1,10 @@
<html>
<head>
<link rel="stylesheet" href="<%= static_url(MobilizonWeb.Endpoint, "/css/email.css") %>">
</head>
<body>
<%= render @view_module, @view_template, assigns %>
<p><%= gettext "An email sent by Mobilizon on %{instance}.", instance: @instance %></p>
</body>
</html>

View File

@@ -0,0 +1,3 @@
<%= render @view_module, @view_template, assigns %>
<%= gettext "An email sent by Mobilizon on %{instance}.", instance: @instance %>

View File

@@ -2,4 +2,4 @@
<p><%= gettext "You requested a new password for your account on %{host}.", host: @instance %></p>
<p><%= gettext "If you didn't request this, please ignore this email. Your password won't change until you access the link below and create a new one." %></p>
<p><%= link "Change password", to: EventosWeb.Endpoint.url() <> "/password-reset/#{@token}", target: "_blank" %></p>
<p><%= link "Change password", to: MobilizonWeb.Endpoint.url() <> "/password-reset/#{@token}", target: "_blank" %></p>

View File

@@ -6,6 +6,6 @@
<%= gettext "If you didn't request this, please ignore this email. Your password won't change until you access the link below and create a new one." %>
<%= EventosWeb.Endpoint.url() <> "/password-reset/#{@token}" %>
<%= MobilizonWeb.Endpoint.url() <> "/password-reset/#{@token}" %>

View File

@@ -1,4 +1,4 @@
<h1><%= gettext "Confirm the email address" %></h1>
<p><%= gettext "You created an account on %{host} with this email address. You are one click away from activating it. If this wasn't you, please ignore this email.", host: @instance %></p>
<p><%= link "Confirm your email address", to: EventosWeb.Endpoint.url() <> "/validate/#{@token}", target: "_blank" %></p>
<p><%= link "Confirm your email address", to: MobilizonWeb.Endpoint.url() <> "/validate/#{@token}", target: "_blank" %></p>

View File

@@ -4,6 +4,6 @@
<%= gettext "You created an account on %{host} with this email address. You are one click away from activating it. If this wasn't you, please ignore this email.", host: @instance %>
<%= EventosWeb.Endpoint.url() <> "/validate/#{@token}" %>
<%= MobilizonWeb.Endpoint.url() <> "/validate/#{@token}" %>

View File

@@ -1,19 +1,19 @@
defmodule EventosWeb.ActivityPub.ActorView do
use EventosWeb, :view
defmodule MobilizonWeb.ActivityPub.ActorView do
use MobilizonWeb, :view
alias EventosWeb.ActivityPub.ActorView
alias EventosWeb.ActivityPub.ObjectView
alias EventosWeb.WebFinger
alias Eventos.Actors.Actor
alias Eventos.Repo
alias Eventos.Service.ActivityPub
alias Eventos.Service.ActivityPub.Transmogrifier
alias Eventos.Service.ActivityPub.Utils
alias Eventos.Activity
alias MobilizonWeb.ActivityPub.ActorView
alias MobilizonWeb.ActivityPub.ObjectView
alias MobilizonWeb.WebFinger
alias Mobilizon.Actors.Actor
alias Mobilizon.Repo
alias Mobilizon.Service.ActivityPub
alias Mobilizon.Service.ActivityPub.Transmogrifier
alias Mobilizon.Service.ActivityPub.Utils
alias Mobilizon.Activity
import Ecto.Query
def render("actor.json", %{actor: actor}) do
public_key = Eventos.Service.ActivityPub.Utils.pem_to_public_key_pem(actor.keys)
public_key = Mobilizon.Service.ActivityPub.Utils.pem_to_public_key_pem(actor.keys)
%{
"id" => actor.url,

View File

@@ -1,7 +1,7 @@
defmodule EventosWeb.ActivityPub.ObjectView do
use EventosWeb, :view
alias EventosWeb.ActivityPub.ObjectView
alias Eventos.Service.ActivityPub.Transmogrifier
defmodule MobilizonWeb.ActivityPub.ObjectView do
use MobilizonWeb, :view
alias MobilizonWeb.ActivityPub.ObjectView
alias Mobilizon.Service.ActivityPub.Transmogrifier
@base %{
"@context" => [

View File

@@ -1,10 +1,10 @@
defmodule EventosWeb.ActorView do
defmodule MobilizonWeb.ActorView do
@moduledoc """
View for Actors
"""
use EventosWeb, :view
alias EventosWeb.{ActorView, EventView, MemberView}
alias Eventos.Actors
use MobilizonWeb, :view
alias MobilizonWeb.{ActorView, EventView, MemberView}
alias Mobilizon.Actors
def render("index.json", %{actors: actors}) do
%{data: render_many(actors, ActorView, "actor_basic.json")}

View File

@@ -1,10 +1,10 @@
defmodule EventosWeb.AddressView do
defmodule MobilizonWeb.AddressView do
@moduledoc """
View for addresses
"""
use EventosWeb, :view
alias EventosWeb.AddressView
use MobilizonWeb, :view
alias MobilizonWeb.AddressView
def render("index.json", %{addresses: addresses}) do
%{data: render_many(addresses, AddressView, "address.json")}

View File

@@ -1,6 +1,6 @@
defmodule EventosWeb.BotView do
use EventosWeb, :view
alias EventosWeb.BotView
defmodule MobilizonWeb.BotView do
use MobilizonWeb, :view
alias MobilizonWeb.BotView
def render("index.json", %{bots: bots}) do
%{data: render_many(bots, BotView, "bot.json")}

View File

@@ -1,9 +1,9 @@
defmodule EventosWeb.CategoryView do
defmodule MobilizonWeb.CategoryView do
@moduledoc """
View for Categories
"""
use EventosWeb, :view
alias EventosWeb.CategoryView
use MobilizonWeb, :view
alias MobilizonWeb.CategoryView
def render("index.json", %{categories: categories}) do
%{data: render_many(categories, CategoryView, "category.json")}

View File

@@ -1,14 +1,14 @@
defmodule EventosWeb.ChangesetView do
defmodule MobilizonWeb.ChangesetView do
@moduledoc """
View for changesets in case of errors
"""
use EventosWeb, :view
use MobilizonWeb, :view
@doc """
Traverses and translates changeset errors.
See `Ecto.Changeset.traverse_errors/2` and
`EventosWeb.ErrorHelpers.translate_error/1` for more details.
`MobilizonWeb.ErrorHelpers.translate_error/1` for more details.
"""
def translate_errors(changeset) do
Ecto.Changeset.traverse_errors(changeset, &translate_error/1)

View File

@@ -1,6 +1,6 @@
defmodule EventosWeb.CommentView do
use EventosWeb, :view
alias EventosWeb.CommentView
defmodule MobilizonWeb.CommentView do
use MobilizonWeb, :view
alias MobilizonWeb.CommentView
def render("index.json", %{comments: comments}) do
%{data: render_many(comments, CommentView, "comment.json")}

View File

@@ -0,0 +1,3 @@
defmodule Mobilizon.EmailView do
use MobilizonWeb, :view
end

View File

@@ -1,4 +1,4 @@
defmodule EventosWeb.ErrorHelpers do
defmodule MobilizonWeb.ErrorHelpers do
@moduledoc """
Conveniences for translating and building error messages.
"""
@@ -32,9 +32,9 @@ defmodule EventosWeb.ErrorHelpers do
# dgettext "errors", "is invalid"
#
if count = opts[:count] do
Gettext.dngettext(EventosWeb.Gettext, "errors", msg, msg, count, opts)
Gettext.dngettext(MobilizonWeb.Gettext, "errors", msg, msg, count, opts)
else
Gettext.dgettext(EventosWeb.Gettext, "errors", msg, opts)
Gettext.dgettext(MobilizonWeb.Gettext, "errors", msg, opts)
end
end
end

View File

@@ -1,8 +1,8 @@
defmodule EventosWeb.ErrorView do
defmodule MobilizonWeb.ErrorView do
@moduledoc """
View for errors
"""
use EventosWeb, :view
use MobilizonWeb, :view
def render("404.html", _assigns) do
"Page not found"

View File

@@ -1,9 +1,9 @@
defmodule EventosWeb.EventView do
defmodule MobilizonWeb.EventView do
@moduledoc """
View for Events
"""
use EventosWeb, :view
alias EventosWeb.{EventView, ActorView, GroupView, AddressView}
use MobilizonWeb, :view
alias MobilizonWeb.{EventView, ActorView, GroupView, AddressView}
def render("index.json", %{events: events, coord: coord, city: city, country: country}) do
%{

View File

@@ -1,6 +1,6 @@
defmodule EventosWeb.FollowerView do
use EventosWeb, :view
alias EventosWeb.FollowerView
defmodule MobilizonWeb.FollowerView do
use MobilizonWeb, :view
alias MobilizonWeb.FollowerView
def render("index.json", %{followers: followers}) do
%{data: render_many(followers, FollowerView, "follower.json")}

View File

@@ -1,9 +1,9 @@
defmodule EventosWeb.GroupView do
defmodule MobilizonWeb.GroupView do
@moduledoc """
View for Groups
"""
use EventosWeb, :view
alias EventosWeb.{GroupView, ActorView}
use MobilizonWeb, :view
alias MobilizonWeb.{GroupView, ActorView}
def render("index.json", %{groups: groups}) do
%{data: render_many(groups, GroupView, "group_simple.json")}

View File

@@ -1,9 +1,9 @@
defmodule EventosWeb.MemberView do
defmodule MobilizonWeb.MemberView do
@moduledoc """
View for Members
"""
use EventosWeb, :view
alias EventosWeb.{MemberView, ActorView}
use MobilizonWeb, :view
alias MobilizonWeb.{MemberView, ActorView}
def render("index.json", %{members: members}) do
%{data: render_many(members, MemberView, "member.json")}

View File

@@ -0,0 +1,6 @@
defmodule MobilizonWeb.PageView do
@moduledoc """
View for our webapp
"""
use MobilizonWeb, :view
end

View File

@@ -1,9 +1,9 @@
defmodule EventosWeb.ParticipantView do
defmodule MobilizonWeb.ParticipantView do
@moduledoc """
View for Participants
"""
use EventosWeb, :view
alias EventosWeb.ParticipantView
use MobilizonWeb, :view
alias MobilizonWeb.ParticipantView
def render("index.json", %{participants: participants}) do
%{data: render_many(participants, ParticipantView, "participant.json")}

View File

@@ -1,9 +1,9 @@
defmodule EventosWeb.SearchView do
defmodule MobilizonWeb.SearchView do
@moduledoc """
View for Events
"""
use EventosWeb, :view
alias EventosWeb.{EventView, ActorView, GroupView, AddressView}
use MobilizonWeb, :view
alias MobilizonWeb.{EventView, ActorView, GroupView, AddressView}
def render("search.json", %{events: events, actors: actors}) do
%{

View File

@@ -1,9 +1,9 @@
defmodule EventosWeb.SessionView do
defmodule MobilizonWeb.SessionView do
@moduledoc """
View for event Sessions
"""
use EventosWeb, :view
alias EventosWeb.SessionView
use MobilizonWeb, :view
alias MobilizonWeb.SessionView
def render("index.json", %{sessions: sessions}) do
%{data: render_many(sessions, SessionView, "session.json")}

View File

@@ -1,9 +1,9 @@
defmodule EventosWeb.TagView do
defmodule MobilizonWeb.TagView do
@moduledoc """
View for Tags
"""
use EventosWeb, :view
alias EventosWeb.TagView
use MobilizonWeb, :view
alias MobilizonWeb.TagView
def render("index.json", %{tags: tags}) do
%{data: render_many(tags, TagView, "tag.json")}

View File

@@ -1,9 +1,9 @@
defmodule EventosWeb.TrackView do
defmodule MobilizonWeb.TrackView do
@moduledoc """
View for Tracks
"""
use EventosWeb, :view
alias EventosWeb.TrackView
use MobilizonWeb, :view
alias MobilizonWeb.TrackView
def render("index.json", %{tracks: tracks}) do
%{data: render_many(tracks, TrackView, "track.json")}

View File

@@ -0,0 +1,10 @@
defmodule MobilizonWeb.UserSessionView do
@moduledoc """
View for user Sessions
"""
use MobilizonWeb, :view
def render("token.json", %{token: token, user: user}) do
%{token: token, user: render_one(user, MobilizonWeb.UserView, "user_simple.json")}
end
end

View File

@@ -1,10 +1,10 @@
defmodule EventosWeb.UserView do
defmodule MobilizonWeb.UserView do
@moduledoc """
View for Users
"""
use EventosWeb, :view
alias EventosWeb.UserView
alias EventosWeb.ActorView
use MobilizonWeb, :view
alias MobilizonWeb.UserView
alias MobilizonWeb.ActorView
def render("index.json", %{users: users}) do
%{data: render_many(users, UserView, "user_simple.json")}

View File

@@ -1,23 +1,23 @@
defmodule Eventos.Service.ActivityPub do
defmodule Mobilizon.Service.ActivityPub do
@moduledoc """
# ActivityPub
Every ActivityPub method
"""
alias Eventos.Events
alias Eventos.Events.{Event, Category, Comment}
alias Eventos.Service.ActivityPub.Transmogrifier
alias Eventos.Service.WebFinger
alias Eventos.Activity
alias Mobilizon.Events
alias Mobilizon.Events.{Event, Category, Comment}
alias Mobilizon.Service.ActivityPub.Transmogrifier
alias Mobilizon.Service.WebFinger
alias Mobilizon.Activity
alias Eventos.Actors
alias Eventos.Actors.Actor
alias Mobilizon.Actors
alias Mobilizon.Actors.Actor
alias Eventos.Service.Federator
alias Mobilizon.Service.Federator
import Logger
import Eventos.Service.ActivityPub.Utils
import Mobilizon.Service.ActivityPub.Utils
def get_recipients(data) do
(data["to"] || []) ++ (data["cc"] || [])
@@ -261,7 +261,7 @@ defmodule Eventos.Service.ActivityPub do
host = URI.parse(inbox).host
signature =
Eventos.Service.HTTPSignatures.sign(actor, %{host: host, "content-length": byte_size(json)})
Mobilizon.Service.HTTPSignatures.sign(actor, %{host: host, "content-length": byte_size(json)})
Logger.debug("signature")
Logger.debug(inspect(signature))

View File

@@ -1,11 +1,11 @@
defmodule Eventos.Service.ActivityPub.Transmogrifier do
defmodule Mobilizon.Service.ActivityPub.Transmogrifier do
@moduledoc """
A module to handle coding from internal to wire ActivityPub and back.
"""
alias Eventos.Actors.Actor
alias Eventos.Actors
alias Eventos.Events.{Event, Comment}
alias Eventos.Service.ActivityPub
alias Mobilizon.Actors.Actor
alias Mobilizon.Actors
alias Mobilizon.Events.{Event, Comment}
alias Mobilizon.Service.ActivityPub
import Ecto.Query

View File

@@ -1,19 +1,19 @@
defmodule Eventos.Service.ActivityPub.Utils do
defmodule Mobilizon.Service.ActivityPub.Utils do
@moduledoc """
# Utils
Various utils
"""
alias Eventos.Repo
alias Eventos.Actors
alias Eventos.Actors.Actor
alias Eventos.Events.Event
alias Eventos.Events
alias Eventos.Activity
alias EventosWeb
alias EventosWeb.Router.Helpers
alias EventosWeb.Endpoint
alias Mobilizon.Repo
alias Mobilizon.Actors
alias Mobilizon.Actors.Actor
alias Mobilizon.Events.Event
alias Mobilizon.Events
alias Mobilizon.Activity
alias MobilizonWeb
alias MobilizonWeb.Router.Helpers
alias MobilizonWeb.Endpoint
alias Ecto.{Changeset, UUID}
import Ecto.Query
@@ -49,7 +49,7 @@ defmodule Eventos.Service.ActivityPub.Utils do
# end
def generate_id(type) do
"#{EventosWeb.Endpoint.url()}/#{type}/#{UUID.generate()}"
"#{MobilizonWeb.Endpoint.url()}/#{type}/#{UUID.generate()}"
end
# def create_context(context) do
@@ -78,7 +78,7 @@ defmodule Eventos.Service.ActivityPub.Utils do
_ -> 5
end
Eventos.Service.Federator.enqueue(:publish, activity, priority)
Mobilizon.Service.Federator.enqueue(:publish, activity, priority)
:ok
end

View File

@@ -1,13 +1,13 @@
defmodule Eventos.Service.Federator do
defmodule Mobilizon.Service.Federator do
@moduledoc """
Handle federated activities
"""
use GenServer
alias Eventos.Actors
alias Eventos.Activity
alias Eventos.Service.ActivityPub
alias Eventos.Service.ActivityPub.Transmogrifier
alias Mobilizon.Actors
alias Mobilizon.Activity
alias Mobilizon.Service.ActivityPub
alias Mobilizon.Service.ActivityPub.Transmogrifier
require Logger
@max_jobs 20

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