Skip to content

Commit d11b116

Browse files
committedMar 31, 2017
prettier messags
1 parent 4d43795 commit d11b116

File tree

1 file changed

+30
-9
lines changed

1 file changed

+30
-9
lines changed
 

‎lib/largo/responders/memmory_responder.ex

+30-9
Original file line numberDiff line numberDiff line change
@@ -36,27 +36,27 @@ defmodule Largo.Responders.MemmoryResponder do
3636
defp get(key) do
3737
key = clean_key(key)
3838
case Ecto.Query.from(v in Value, where: v.key == ^key) |> Repo.one do
39-
nil -> {:ok, "No encontré la clave #{key}"}
40-
value -> {:ok, "• #{value.key}: #{value.value}"}
39+
nil -> {:ok, build_colored_message("No encontré la clave #{key}", "warn")}
40+
value -> {:ok, build_kv_message([{value.key, value.value}], "hmmmmmmm", "good")}
4141
end
4242
end
4343

4444
defp delete(key) do
4545
key = clean_key(key)
4646
case Ecto.Query.from(v in Value, where: v.key == ^key) |> Repo.one do
47-
nil -> {:ok, "No encontré la clave #{key}"}
47+
nil -> {:ok, build_colored_message("No encontré la clave #{key}", "warning")}
4848
value ->
4949
case Repo.delete(value) do
50-
{:error, _} -> {:ok, "No pude borrar la clave #{key}"}
51-
{:ok, value} -> {:ok, "Borré la clave #{value.key}. Último valor: #{value.value}"}
50+
{:error, _} -> {:ok, build_colored_message("No pude borrar la clave #{key}", "danger")}
51+
{:ok, value} -> {:ok, build_colored_message("Borré la clave #{value.key}. Último valor: #{value.value}", "good")}
5252
end
5353
end
5454
end
5555

5656
defp list do
5757
msg = Repo.all(Value)
58-
|> Enum.map(&"• *#{&1.key}*: #{&1.value}")
59-
|> Enum.join("\n")
58+
|> Enum.map(&{&1.key, &1.value})
59+
|> build_kv_message("*hmmmmm*", "good")
6060
{:ok, msg}
6161
end
6262

@@ -66,13 +66,34 @@ defmodule Largo.Responders.MemmoryResponder do
6666
nil ->
6767
Value.changeset(%Value{}, %{key: key, value: String.trim(value)})
6868
|> Repo.insert!
69-
{:ok, "guardado!"}
69+
{:ok, build_colored_message("guardado...", "good")}
7070
db_val ->
7171
Value.changeset(db_val, %{value: String.trim(value)})
7272
|> Repo.update!
73-
{:ok, "actualizado!"}
73+
{:ok, build_colored_message("actualizado...", "good")}
7474
end
7575
end
76+
77+
defp build_kv_message(kvs, text, color \\ "") do
78+
fields = Enum.map(kvs, fn {key, value} -> %{title: key, value: value, short: false} end)
79+
fallback = Enum.map(kvs, fn {key, value} -> "#{key}: #{value}" end) |> Enum.join("/n")
80+
{"", %{attachments: Poison.encode!([%{
81+
fallback: fallback,
82+
color: color,
83+
pretext: text,
84+
fields: fields
85+
}])}}
86+
end
87+
88+
defp build_colored_message(text, color) do
89+
{"", %{attachments: Poison.encode!([%{
90+
fallback: text,
91+
color: color,
92+
text: text,
93+
}])}}
94+
end
95+
96+
7697

7798
defp clean_key(key) do
7899
key

0 commit comments

Comments
 (0)
Please sign in to comment.