fix some code style and add checks to ci
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
@@ -1,4 +1,7 @@
|
||||
defmodule Eventos.Events.Event.TitleSlug do
|
||||
@moduledoc """
|
||||
Generates a slug for an event title
|
||||
"""
|
||||
alias Eventos.Events.Event
|
||||
import Ecto.Query
|
||||
alias Eventos.Repo
|
||||
@@ -17,25 +20,16 @@ defmodule Eventos.Events.Event.TitleSlug do
|
||||
nil -> slug
|
||||
_event ->
|
||||
slug
|
||||
|> increment_slug
|
||||
|> Eventos.Slug.increment_slug()
|
||||
|> build_unique_slug(changeset)
|
||||
end
|
||||
end
|
||||
|
||||
defp increment_slug(slug) do
|
||||
case List.pop_at(String.split(slug, "-"), -1) do
|
||||
{nil, _} ->
|
||||
slug
|
||||
{suffix, slug_parts} ->
|
||||
case Integer.parse(suffix) do
|
||||
{id, _} -> Enum.join(slug_parts, "-") <> "-" <> Integer.to_string(id + 1)
|
||||
:error -> slug <> "-1"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
defmodule Eventos.Events.Event do
|
||||
@moduledoc """
|
||||
Represents an event
|
||||
"""
|
||||
use Ecto.Schema
|
||||
import Ecto.Changeset
|
||||
alias Eventos.Events.{Event, Participant, Request, Tag, Session, Track}
|
||||
@@ -72,4 +66,4 @@ defmodule Eventos.Events.Event do
|
||||
|> TitleSlug.maybe_generate_slug()
|
||||
|> TitleSlug.unique_constraint()
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user