Validate 'from' and 'to' tokens in client /messages endpoint

This commit is contained in:
Pim Kunis 2021-09-06 16:08:49 +02:00
parent 659fa17053
commit 224201ae2f
3 changed files with 8 additions and 11 deletions

View file

@ -69,7 +69,6 @@ defmodule Architex.Room do
end
def get_messages(room, %Messages{from: from, to: to, dir: dir, limit: limit}) do
# TODO: Quaternion seems to show events in the wrong order?
# TODO: Check 'from' and 'to' formats.
limit = limit || 10
@ -116,23 +115,19 @@ defmodule Architex.Room do
defp get_start([], _), do: nil
defp get_start([%Event{nid: first_nid} | _], "f") do
Integer.to_string(first_nid)
end
defp get_start([%Event{nid: first_nid} | _], "f"), do: first_nid
defp get_start(events, "b") do
%Event{nid: last_nid} = List.last(events)
Integer.to_string(last_nid)
last_nid
end
defp get_end(events, limit, _) when length(events) < limit, do: nil
defp get_end([%Event{nid: first_nid} | _], _, "f") do
Integer.to_string(first_nid)
end
defp get_end([%Event{nid: first_nid} | _], _, "f"), do: first_nid
defp get_end(events, _, "b") do
%Event{nid: last_nid} = List.last(events)
Integer.to_string(last_nid)
last_nid
end
end