Database: Add user settings sync entity.

Run cargo fmt.
This commit is contained in:
Paul
2021-05-26 11:02:16 +01:00
parent 7aad88ad3f
commit 5aa9624d5c
13 changed files with 67 additions and 41 deletions

View File

@@ -1,4 +1,4 @@
use crate::util::variables::{VAPID_PRIVATE_KEY, USE_JANUARY};
use crate::util::variables::{USE_JANUARY, VAPID_PRIVATE_KEY};
use crate::{
database::*,
notifications::{events::ClientboundNotification, websocket::is_online},
@@ -297,12 +297,13 @@ impl Message {
let channel = self.channel.clone();
ClientboundNotification::MessageDelete {
id: self.id.clone(),
channel: self.channel.clone()
channel: self.channel.clone(),
}
.publish(channel);
if let Some(attachments) = &self.attachments {
let attachment_ids: Vec<String> = attachments.iter().map(|f| f.id.to_string()).collect();
let attachment_ids: Vec<String> =
attachments.iter().map(|f| f.id.to_string()).collect();
get_collection("attachments")
.update_one(
doc! {

View File

@@ -0,0 +1,2 @@
pub mod autumn;
pub mod january;

View File

@@ -1,9 +1,11 @@
mod autumn;
mod microservice;
mod channel;
mod january;
mod message;
mod server;
mod user;
mod sync;
use microservice::*;
pub use autumn::*;
pub use channel::*;
@@ -11,3 +13,4 @@ pub use january::*;
pub use message::*;
pub use server::*;
pub use user::*;
pub use sync::*;

View File

@@ -0,0 +1,3 @@
use std::collections::HashMap;
pub type UserSettings = HashMap<String, (i64, String)>;

View File

@@ -4,11 +4,11 @@ use mongodb::{
bson::{doc, from_document},
options::FindOptions,
};
use serde::{Deserialize, Serialize};
use validator::Validate;
use num_enum::TryFromPrimitive;
use ulid::Ulid;
use serde::{Deserialize, Serialize};
use std::ops;
use ulid::Ulid;
use validator::Validate;
use crate::database::permissions::user::UserPermissions;
use crate::database::*;
@@ -65,7 +65,7 @@ pub enum Badges {
Developer = 1,
Translator = 2,
Supporter = 4,
EarlyAdopter = 256
EarlyAdopter = 256,
}
impl_op_ex_commutative!(+ |a: &i32, b: &Badges| -> i32 { *a | *b as i32 });