From b25af641e2178e987edf1f0da433cf20c2bbb049 Mon Sep 17 00:00:00 2001 From: Geometrically <18202329+Geometrically@users.noreply.github.com> Date: Sun, 4 Sep 2022 13:37:11 -0700 Subject: [PATCH] Fix gallery date display (#445) * Fix gallery date display * Fix approved date not setting --- sqlx-data.json | 24 ++++++++++++------------ src/database/models/mod.rs | 8 +++++++- src/routes/projects.rs | 2 +- src/validate/plugin.rs | 9 ++++++++- 4 files changed, 28 insertions(+), 15 deletions(-) diff --git a/sqlx-data.json b/sqlx-data.json index 81d36a0a4..1c526f822 100644 --- a/sqlx-data.json +++ b/sqlx-data.json @@ -1091,18 +1091,6 @@ }, "query": "\n SELECT id, team_id, role, permissions, accepted, payouts_split\n FROM team_members\n WHERE (user_id = $1 AND accepted = TRUE)\n " }, - "28be156dc8d8c394dd7c8de33a8e45be9c2d9033de461c0b7365cd8e7585aa8d": { - "describe": { - "columns": [], - "nullable": [], - "parameters": { - "Left": [ - "Int8" - ] - } - }, - "query": "\n UPDATE mods\n SET approved = NOW()\n WHERE id = $1 AND approved = NULL\n " - }, "28d5825964b0fddc43bd7d6851daf91845b79c9e88c82d5c7d97ae02502d0b4f": { "describe": { "columns": [], @@ -3718,6 +3706,18 @@ }, "query": "\n DELETE FROM mods_categories\n WHERE joining_mod_id = $1 AND is_additional = FALSE\n " }, + "a11d613479d09dff5fcdc45ab7a0341fb1b4738f0ede71572d939ef0984bd65f": { + "describe": { + "columns": [], + "nullable": [], + "parameters": { + "Left": [ + "Int8" + ] + } + }, + "query": "\n UPDATE mods\n SET approved = NOW()\n WHERE id = $1 AND approved IS NULL\n " + }, "a1e3ac170e45196e5fcca154c96a206f35be68a3219a0d493e1e149206590043": { "describe": { "columns": [ diff --git a/src/database/models/mod.rs b/src/database/models/mod.rs index 627da5e10..6b81174f1 100644 --- a/src/database/models/mod.rs +++ b/src/database/models/mod.rs @@ -121,7 +121,13 @@ impl ids::ProjectTypeId { } pub fn convert_postgres_date(input: &str) -> DateTime { - DateTime::parse_from_str(input, "%Y-%m-%d %T%#z") + let mut result = DateTime::parse_from_str(input, "%Y-%m-%d %T.%f%#z"); + + if result.is_err() { + result = DateTime::parse_from_str(input, "%Y-%m-%d %T%#z") + } + + result .map(|x| x.with_timezone(&Utc)) .unwrap_or_else(|_| Utc::now()) } diff --git a/src/routes/projects.rs b/src/routes/projects.rs index 63941f345..196959a9e 100644 --- a/src/routes/projects.rs +++ b/src/routes/projects.rs @@ -507,7 +507,7 @@ pub async fn project_edit( " UPDATE mods SET approved = NOW() - WHERE id = $1 AND approved = NULL + WHERE id = $1 AND approved IS NULL ", id as database::models::ids::ProjectId, ) diff --git a/src/validate/plugin.rs b/src/validate/plugin.rs index 630625d85..a41896ae3 100644 --- a/src/validate/plugin.rs +++ b/src/validate/plugin.rs @@ -16,7 +16,14 @@ impl super::Validator for PluginYmlValidator { } fn get_supported_loaders(&self) -> &[&str] { - &["bukkit", "spigot", "paper", "purpur", "bungeecord", "waterfall"] + &[ + "bukkit", + "spigot", + "paper", + "purpur", + "bungeecord", + "waterfall", + ] } fn get_supported_game_versions(&self) -> SupportedGameVersions {