summaryrefslogtreecommitdiffstats
path: root/server/src/websocket/server.rs
diff options
context:
space:
mode:
Diffstat (limited to 'server/src/websocket/server.rs')
-rw-r--r--server/src/websocket/server.rs16
1 files changed, 16 insertions, 0 deletions
diff --git a/server/src/websocket/server.rs b/server/src/websocket/server.rs
index 957c5f64..5efcb7bf 100644
--- a/server/src/websocket/server.rs
+++ b/server/src/websocket/server.rs
@@ -547,5 +547,21 @@ fn parse_json_message(chat: &mut ChatServer, msg: StandardMessage) -> Result<Str
let res = Oper::new(user_operation, password_change).perform(&conn)?;
Ok(serde_json::to_string(&res)?)
}
+ UserOperation::CreatePrivateMessage => {
+ chat.check_rate_limit_message(msg.id)?;
+ let create_private_message: CreatePrivateMessage = serde_json::from_str(data)?;
+ let res = Oper::new(user_operation, create_private_message).perform(&conn)?;
+ Ok(serde_json::to_string(&res)?)
+ }
+ UserOperation::EditPrivateMessage => {
+ let edit_private_message: EditPrivateMessage = serde_json::from_str(data)?;
+ let res = Oper::new(user_operation, edit_private_message).perform(&conn)?;
+ Ok(serde_json::to_string(&res)?)
+ }
+ UserOperation::GetPrivateMessages => {
+ let messages: GetPrivateMessages = serde_json::from_str(data)?;
+ let res = Oper::new(user_operation, messages).perform(&conn)?;
+ Ok(serde_json::to_string(&res)?)
+ }
}
}