diff --git a/src/database/entities/january.rs b/src/database/entities/january.rs index cb6f9ffb54a7d3953c501a4f3b340849cf5d737b..7c3c6182902996d96c18ea08aa378957ecc6fddd 100644 --- a/src/database/entities/january.rs +++ b/src/database/entities/january.rs @@ -107,9 +107,8 @@ impl Embed { v }) - // This will also remove newlines, but - // that isn't important here. - .collect::<String>(); + .collect::<Vec<&str>>() + .join("\n"); // ! FIXME: allow multiple links // ! FIXME: prevent generation if link is surrounded with < > diff --git a/src/database/entities/message.rs b/src/database/entities/message.rs index cca5b28eeed9f04b2bfea24356864175c959aa64..04238edc99dc0e1836b8d6cb38b0faf74c60bd8a 100644 --- a/src/database/entities/message.rs +++ b/src/database/entities/message.rs @@ -1,4 +1,4 @@ -use crate::util::variables::VAPID_PRIVATE_KEY; +use crate::util::variables::{VAPID_PRIVATE_KEY, USE_JANUARY}; use crate::{ database::*, notifications::{events::ClientboundNotification, websocket::is_online}, @@ -231,6 +231,10 @@ impl Message { } pub fn process_embed(&self) { + if !*USE_JANUARY { + return; + } + if let Content::Text(text) = &self.content { let id = self.id.clone(); let content = text.clone(); diff --git a/src/routes/root.rs b/src/routes/root.rs index 9ca42d67cb81da6dc958b35a8f88d80be7da28e7..d14ff388e42b167160cd7b5305275cbfc43ecb5d 100644 --- a/src/routes/root.rs +++ b/src/routes/root.rs @@ -1,6 +1,6 @@ use crate::util::variables::{ - APP_URL, AUTUMN_URL, DISABLE_REGISTRATION, EXTERNAL_WS_URL, HCAPTCHA_SITEKEY, INVITE_ONLY, - USE_AUTUMN, USE_EMAIL, USE_HCAPTCHA, USE_VOSO, VAPID_PUBLIC_KEY, VOSO_URL, VOSO_WS_HOST, + APP_URL, JANUARY_URL, AUTUMN_URL, DISABLE_REGISTRATION, EXTERNAL_WS_URL, HCAPTCHA_SITEKEY, INVITE_ONLY, + USE_AUTUMN, USE_JANUARY, USE_EMAIL, USE_HCAPTCHA, USE_VOSO, VAPID_PUBLIC_KEY, VOSO_URL, VOSO_WS_HOST, }; use mongodb::bson::doc; @@ -22,6 +22,10 @@ pub async fn root() -> JsonValue { "enabled": *USE_AUTUMN, "url": *AUTUMN_URL }, + "january": { + "enabled": *USE_JANUARY, + "url": *JANUARY_URL + }, "voso": { "enabled": *USE_VOSO, "url": *VOSO_URL, diff --git a/src/util/variables.rs b/src/util/variables.rs index 1bd71e9461cd403507e293b66256468dea8ea617..788bb94ffc5979505379ea4cd67da1ed6f316e39 100644 --- a/src/util/variables.rs +++ b/src/util/variables.rs @@ -49,6 +49,7 @@ lazy_static! { pub static ref USE_HCAPTCHA: bool = env::var("REVOLT_HCAPTCHA_KEY").is_ok(); pub static ref USE_PROMETHEUS: bool = env::var("REVOLT_ENABLE_PROMETHEUS").map_or(false, |v| v == "1"); pub static ref USE_AUTUMN: bool = env::var("AUTUMN_PUBLIC_URL").is_ok(); + pub static ref USE_JANUARY: bool = env::var("JANUARY_PUBLIC_URL").is_ok(); pub static ref USE_VOSO: bool = env::var("VOSO_PUBLIC_URL").is_ok() && env::var("VOSO_MANAGE_TOKEN").is_ok(); // SMTP Settings