Skip to content
Snippets Groups Projects
Verified Commit 92f20d7b authored by insert's avatar insert
Browse files

Write out templates for routes.

parent 7f0baa2a
No related merge requests found
...@@ -6,5 +6,5 @@ mod user; ...@@ -6,5 +6,5 @@ mod user;
pub fn mount(rocket: Rocket) -> Rocket { pub fn mount(rocket: Rocket) -> Rocket {
rocket rocket
.mount("/api/account", routes![ account::create, account::verify_email, account::resend_email, account::login ]) .mount("/api/account", routes![ account::create, account::verify_email, account::resend_email, account::login ])
.mount("/api/users", routes![ user::me, user::lookup ]) .mount("/api/users", routes![ user::me, user::dms, user::lookup ])
} }
...@@ -6,6 +6,7 @@ use serde::{ Serialize, Deserialize }; ...@@ -6,6 +6,7 @@ use serde::{ Serialize, Deserialize };
use mongodb::options::FindOptions; use mongodb::options::FindOptions;
use bson::{ bson, doc }; use bson::{ bson, doc };
/// retrieve your user information
#[get("/@me")] #[get("/@me")]
pub fn me(user: User) -> JsonValue { pub fn me(user: User) -> JsonValue {
let User ( id, username, doc ) = user; let User ( id, username, doc ) = user;
...@@ -20,11 +21,19 @@ pub fn me(user: User) -> JsonValue { ...@@ -20,11 +21,19 @@ pub fn me(user: User) -> JsonValue {
}) })
} }
/// retrieve another user's information
#[get("/<id>")]
pub fn user(user: User, id: String) -> JsonValue {
json!([])
}
#[derive(Serialize, Deserialize)] #[derive(Serialize, Deserialize)]
pub struct Query { pub struct Query {
username: String, username: String,
} }
/// lookup a user on Revolt
/// currently only supports exact username searches
#[post("/lookup", data = "<query>")] #[post("/lookup", data = "<query>")]
pub fn lookup(_user: User, query: Json<Query>) -> JsonValue { pub fn lookup(_user: User, query: Json<Query>) -> JsonValue {
let col = database::get_db().collection("users"); let col = database::get_db().collection("users");
...@@ -47,3 +56,39 @@ pub fn lookup(_user: User, query: Json<Query>) -> JsonValue { ...@@ -47,3 +56,39 @@ pub fn lookup(_user: User, query: Json<Query>) -> JsonValue {
json!(results) json!(results)
} }
/// retrieve all of your DMs
#[get("/@me/dms")]
pub fn dms(user: User) -> JsonValue {
json!([])
}
/// open a DM with a user
#[get("/<id>/dm")]
pub fn dm(user: User, id: String) -> JsonValue {
json!([])
}
/// retrieve all of your friends
#[get("/@me/friend")]
pub fn get_friends(user: User) -> JsonValue {
json!([])
}
/// retrieve friend status with user
#[get("/<id>/friend")]
pub fn get_friend(user: User, id: String) -> JsonValue {
json!([])
}
/// create or accept a friend request
#[put("/<id>/friend")]
pub fn add_friend(user: User, id: String) -> JsonValue {
json!([])
}
/// remove a friend or deny a request
#[delete("/<id>/friend")]
pub fn remove_friend(user: User, id: String) -> JsonValue {
json!([])
}
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment