Add status presence indicator.

This commit is contained in:
Paul
2021-04-03 20:50:14 +01:00
parent c3fa7bf74e
commit a547177325
5 changed files with 14 additions and 4 deletions

View File

@@ -33,11 +33,21 @@ pub enum Badge {
}
*/
#[derive(Serialize, Deserialize, Debug)]
pub enum Presence {
Online,
Idle,
Busy,
Invisible
}
#[derive(Validate, Serialize, Deserialize, Debug)]
pub struct UserStatus {
#[validate(length(min = 1, max = 128))]
#[serde(skip_serializing_if = "Option::is_none")]
text: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
presence: Option<Presence>
}
#[derive(Validate, Serialize, Deserialize, Debug)]

View File

@@ -9,7 +9,7 @@ use rocket_contrib::json::JsonValue;
#[get("/")]
pub async fn root() -> JsonValue {
json!({
"revolt": "0.4.0-alpha.4",
"revolt": "0.4.0-alpha.5",
"features": {
"registration": !*DISABLE_REGISTRATION,
"captcha": {

View File

@@ -17,7 +17,7 @@ pub async fn req(user: User, target: Ref) -> Result<JsonValue> {
}
if target.profile.is_some() {
Ok(json!({ "profile": target.profile }))
Ok(json!(target.profile))
} else {
Ok(json!({}))
}