summaryrefslogtreecommitdiff
path: root/src/database/database.rs
diff options
context:
space:
mode:
authorDaniel Hader <[email protected]>2026-06-05 19:29:40 -0500
committerDaniel Hader <[email protected]>2026-06-05 19:29:40 -0500
commitc071aca5c5c16d56aafe38ace2b2c158e1b875fc (patch)
treeaa947a0f6fa53be3de6fb879aa5c4d96bc087cf1 /src/database/database.rs
parent3ac68b8b59f150e08731a62026ce3ac825655614 (diff)
server text sanitation, username/email filters, and code length measurement
Diffstat (limited to 'src/database/database.rs')
-rw-r--r--src/database/database.rs9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/database/database.rs b/src/database/database.rs
index 95c8bf6..ee9b6b9 100644
--- a/src/database/database.rs
+++ b/src/database/database.rs
@@ -173,6 +173,7 @@ impl Database {
language: &str,
details: &str,
code: &str,
+ code_length: i64,
) -> Result<Submission, DatabaseError> {
static QUERY: &str = include_str!("sql/insert_submission.sql");
let conn = self.pool
@@ -182,14 +183,15 @@ impl Database {
.map_err(|e| DatabaseError::Query(e.to_string()))?;
Ok(statement
- .query_one((user_id, problem_id, language, details, code), |row| {
+ .query_one((user_id, problem_id, language, details, code, code_length), |row| {
Ok(Submission::new(
row.get("id")?,
user_id,
problem_id,
language.to_owned(),
details.to_owned(),
- code.to_owned()
+ code.to_owned(),
+ code_length,
))
})
.map_err(|e| DatabaseError::Query(e.to_string()))?
@@ -213,6 +215,7 @@ impl Database {
row.get("language")?,
row.get("details")?,
row.get("code")?,
+ row.get("code_length")?,
))
})
.map_err(|e| DatabaseError::Query(e.to_string()))?
@@ -237,6 +240,7 @@ impl Database {
language: row.get("language")?,
details: row.get("details")?,
code: row.get("code")?,
+ code_length: row.get("code_length")?,
})
})
.map_err(|e| DatabaseError::Query(e.to_string()))?
@@ -261,6 +265,7 @@ impl Database {
language: row.get("language")?,
details: row.get("details")?,
code: row.get("code")?,
+ code_length: row.get("code_length")?,
})
})
.optional()