From 7e52129bbc87df0f890b918bbbbcb965542d09cf Mon Sep 17 00:00:00 2001
From: sticks <tanner@teamhydra.dev>
Date: Mon, 25 Nov 2024 18:54:53 -0600
Subject: [PATCH] fix quote error weridness

---
 src/commands/quote.rs | 16 +++++++++++++---
 src/handlers/db.rs    |  4 ++--
 src/structs/quote.rs  |  2 +-
 3 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/src/commands/quote.rs b/src/commands/quote.rs
index 8a92eab..145de80 100644
--- a/src/commands/quote.rs
+++ b/src/commands/quote.rs
@@ -14,7 +14,7 @@ pub async fn quote_action(
         username: message.author.name.clone(),
         quote: message.content.clone(),
         added_by: ctx.author().id.into(),
-        added_at: OffsetDateTime::now_utc(),
+        added_at: Some(OffsetDateTime::now_utc()),
     };
 
     if quote.user_id == quote.added_by {
@@ -40,7 +40,12 @@ pub async fn random_quote(ctx: Context<'_>) -> Result<(), Error> {
                     "{}: {}\nQuoted at: <t:{}:f> by <@{}>",
                     quote.username,
                     quote.quote,
-                    quote.added_at.unix_timestamp(),
+                    if let Some(added_at) = quote.added_at {
+                        added_at.unix_timestamp()
+                    } else {
+                        // Use now if added_at is None
+                        OffsetDateTime::now_utc().unix_timestamp()
+                    },
                     quote.added_by
                 ))
                 .allowed_mentions(CreateAllowedMentions::new().empty_users()),
@@ -76,7 +81,12 @@ pub async fn user_quotes(
             "{}: {}\nQuoted at: <t:{}:f> by <@{}>\n",
             quote.username,
             quote.quote,
-            quote.added_at.unix_timestamp(),
+            if let Some(added_at) = quote.added_at {
+                added_at.unix_timestamp()
+            } else {
+                // Use now if added_at is None
+                OffsetDateTime::now_utc().unix_timestamp()
+            },
             quote.added_by
         ));
     }
diff --git a/src/handlers/db.rs b/src/handlers/db.rs
index 2984228..484bc7d 100644
--- a/src/handlers/db.rs
+++ b/src/handlers/db.rs
@@ -151,7 +151,7 @@ impl DatabaseController {
                 username: quote.username,
                 quote: quote.quote,
                 added_by: quote.added_by,
-                added_at: quote.added_at.unwrap(),
+                added_at: quote.added_at,
             })),
             None => Ok(None),
         }
@@ -170,7 +170,7 @@ impl DatabaseController {
                 username: q.username,
                 quote: q.quote,
                 added_by: q.added_by,
-                added_at: q.added_at.unwrap(),
+                added_at: q.added_at,
             });
         }
 
diff --git a/src/structs/quote.rs b/src/structs/quote.rs
index 8e8bce6..18b5c67 100644
--- a/src/structs/quote.rs
+++ b/src/structs/quote.rs
@@ -7,5 +7,5 @@ pub struct Quote {
     pub username: String,
     pub quote: String,
     pub added_by: i64,
-    pub added_at: OffsetDateTime,
+    pub added_at: Option<OffsetDateTime>,
 }