Change primary keys for accounts and devices table
This commit is contained in:
parent
dfc3fa450d
commit
91a06aff1b
9 changed files with 81 additions and 77 deletions
|
@ -4,7 +4,7 @@ defmodule MatrixServerWeb.Client.LoginController do
|
|||
import MatrixServerWeb.Error
|
||||
import Ecto.Changeset
|
||||
|
||||
alias MatrixServer.{Repo, Account}
|
||||
alias MatrixServer.{Repo, Account, Device}
|
||||
alias MatrixServerWeb.Client.Request.Login
|
||||
alias Ecto.Changeset
|
||||
|
||||
|
@ -38,11 +38,13 @@ defmodule MatrixServerWeb.Client.LoginController do
|
|||
input = apply_changes(cs)
|
||||
|
||||
case Account.login(input) |> Repo.transaction() do
|
||||
{:ok, device} ->
|
||||
{:ok,
|
||||
{%Account{localpart: localpart},
|
||||
%Device{access_token: access_token, device_id: device_id}}} ->
|
||||
data = %{
|
||||
user_id: MatrixServer.get_mxid(device.localpart),
|
||||
access_token: device.access_token,
|
||||
device_id: device.device_id
|
||||
user_id: MatrixServer.get_mxid(localpart),
|
||||
access_token: access_token,
|
||||
device_id: device_id
|
||||
}
|
||||
|
||||
conn
|
||||
|
|
|
@ -4,7 +4,7 @@ defmodule MatrixServerWeb.Client.RegisterController do
|
|||
import MatrixServerWeb.Error
|
||||
import Ecto.Changeset
|
||||
|
||||
alias MatrixServer.{Repo, Account}
|
||||
alias MatrixServer.{Repo, Account, Device}
|
||||
alias MatrixServerWeb.Client.Request.Register
|
||||
alias Ecto.Changeset
|
||||
|
||||
|
@ -21,14 +21,18 @@ defmodule MatrixServerWeb.Client.RegisterController do
|
|||
input = apply_changes(cs)
|
||||
|
||||
case Account.register(input) |> Repo.transaction() do
|
||||
{:ok, %{device_with_access_token: device}} ->
|
||||
data = %{user_id: MatrixServer.get_mxid(device.localpart)}
|
||||
{:ok,
|
||||
%{
|
||||
account: %Account{localpart: localpart},
|
||||
device: %Device{device_id: device_id, access_token: access_token}
|
||||
}} ->
|
||||
data = %{user_id: MatrixServer.get_mxid(localpart)}
|
||||
|
||||
data =
|
||||
if not input.inhibit_login do
|
||||
data
|
||||
|> Map.put(:device_id, device.device_id)
|
||||
|> Map.put(:access_token, device.access_token)
|
||||
|> Map.put(:device_id, device_id)
|
||||
|> Map.put(:access_token, access_token)
|
||||
else
|
||||
data
|
||||
end
|
||||
|
|
|
@ -207,4 +207,14 @@ defmodule MatrixServerWeb.Client.RoomController do
|
|||
end
|
||||
|
||||
def unban(conn, _), do: put_error(conn, :missing_param)
|
||||
|
||||
def send_message(%Conn{assigns: %{account: account}, body_params: body_params} = conn, %{
|
||||
"room_id" => room_id,
|
||||
"event_type" => event_type,
|
||||
"txn_id" => txn_id
|
||||
}) do
|
||||
conn
|
||||
|> send_resp(200, [])
|
||||
|> halt()
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue