diff --git a/src/common/src/utils.rs b/src/common/src/utils.rs index 3f6a82329..04007562f 100644 --- a/src/common/src/utils.rs +++ b/src/common/src/utils.rs @@ -16,24 +16,6 @@ const B64_URL_SAFE: engine::GeneralPurpose = general_purpose::URL_SAFE; const B64_URL_SAFE_NO_PAD: engine::GeneralPurpose = general_purpose::URL_SAFE_NO_PAD; const B64_STD: engine::GeneralPurpose = general_purpose::STANDARD; -// Returns the cache key for a given client -pub fn cache_entry_client(id: &str) -> String { - format!("client_{}", id) -} - -// Converts a given Json array / list into a Vec -pub fn json_arr_to_vec(arr: &str) -> Vec { - arr.chars() - .skip(1) - .filter(|&c| c != '"') - // TODO improve -> array inside array would not work - .take_while(|&c| c != ']') - .collect::() - .split(',') - .map(|i| i.to_string()) - .collect() -} - pub fn get_local_hostname() -> String { let hostname_os = gethostname(); hostname_os @@ -209,22 +191,6 @@ fn ip_from_cust_header(headers: &HeaderMap) -> Option { mod tests { use super::*; use pretty_assertions::assert_eq; - use std::string::String; - - #[test] - fn test_json_arr_to_vec() { - let arr = String::from("[\"one\",\"two\",\"three\"]"); - let arr_as_vec = vec!["one", "two", "three"]; - assert_eq!(json_arr_to_vec(&arr), arr_as_vec); - - let arr = String::from("[\"one\"]"); - let arr_as_vec = vec!["one"]; - assert_eq!(json_arr_to_vec(&arr), arr_as_vec); - - let arr = String::from("[]"); - let arr_as_vec = vec![""]; - assert_eq!(json_arr_to_vec(&arr), arr_as_vec); - } #[test] fn test_get_rand() { diff --git a/src/models/src/entity/clients.rs b/src/models/src/entity/clients.rs index d75edd51c..59bbb4f30 100644 --- a/src/models/src/entity/clients.rs +++ b/src/models/src/entity/clients.rs @@ -18,7 +18,7 @@ use rauthy_common::constants::{ EPHEMERAL_CLIENTS_ALLOWED_FLOWS, EPHEMERAL_CLIENTS_ALLOWED_SCOPES, EPHEMERAL_CLIENTS_FORCE_MFA, IDX_CLIENTS, PROXY_MODE, RAUTHY_VERSION, }; -use rauthy_common::utils::{cache_entry_client, get_rand, real_ip_from_req}; +use rauthy_common::utils::{get_rand, real_ip_from_req}; use rauthy_error::{ErrorResponse, ErrorResponseType}; use redhac::{ cache_get, cache_get_from, cache_get_value, cache_insert, cache_put, cache_remove, AckLevel, @@ -225,7 +225,7 @@ impl Client { let client = cache_get!( Client, CACHE_NAME_12HR.to_string(), - cache_entry_client(&id), + Client::get_cache_entry(&id), &data.caches.ha_cache_config, false ) diff --git a/src/models/src/entity/colors.rs b/src/models/src/entity/colors.rs index cbacd2bb0..2aa07e05e 100644 --- a/src/models/src/entity/colors.rs +++ b/src/models/src/entity/colors.rs @@ -17,7 +17,7 @@ pub struct ColorEntity { // CRUD impl ColorEntity { pub async fn delete(data: &web::Data, client_id: &str) -> Result<(), ErrorResponse> { - sqlx::query!("delete from colors where client_id = $1", client_id,) + sqlx::query!("DELETE FROM colors WHERE client_id = $1", client_id,) .execute(&data.db) .await?; @@ -48,7 +48,7 @@ impl ColorEntity { return Ok(colors); } - let res = sqlx::query_as!(Self, "select * from colors where client_id = $1", client_id) + let res = sqlx::query_as!(Self, "SELECT * FROM colors WHERE client_id = $1", client_id) .fetch_optional(&data.db) .await?; let colors = match res { @@ -81,14 +81,14 @@ impl ColorEntity { #[cfg(not(feature = "postgres"))] let q = sqlx::query!( - "insert or replace into colors (client_id, data) values ($1, $2)", + "INSERT OR REPLACE INTO colors (client_id, data) values ($1, $2)", client_id, col_bytes, ); #[cfg(feature = "postgres")] let q = sqlx::query!( - r#"insert into colors (client_id, data) values ($1, $2) - on conflict(client_id) do update set data = $2"#, + r#"INSERT INTO colors (client_id, data) values ($1, $2) + ON CONFLICT(client_id) DO UPDATE SET data = $2"#, client_id, col_bytes, ); diff --git a/src/models/src/entity/db_version.rs b/src/models/src/entity/db_version.rs index 44beddb87..0cf65ef86 100644 --- a/src/models/src/entity/db_version.rs +++ b/src/models/src/entity/db_version.rs @@ -14,7 +14,7 @@ pub struct DbVersion { impl DbVersion { pub async fn find(db: &DbPool) -> Option { - let res = query!("select data from config where id = 'db_version'") + let res = query!("SELECT data FROM config WHERE id = 'db_version'") .fetch_optional(db) .await .ok()?; @@ -39,13 +39,14 @@ impl DbVersion { #[cfg(not(feature = "postgres"))] let q = query!( - "insert or replace into config (id, data) values ('db_version', $1)", + "INSERT OR REPLACE INTO config (id, data) VALUES ('db_version', $1)", data, ); #[cfg(feature = "postgres")] let q = query!( - r#"insert into config (id, data) values ('db_version', $1) - on conflict(id) do update set data = $1"#, + r#"INSERT INTO config (id, data) + VALUES ('db_version', $1) + ON CONFLICT(id) DO UPDATE SET data = $1"#, data, ); q.execute(db).await?; @@ -59,7 +60,7 @@ impl DbVersion { debug!("Current Rauthy Version: {:?}", app_version); // check DB version for compatibility - let db_exists = query!("select id from config limit 1") + let db_exists = query!("SELECT id FROM config LIMIT 1") .fetch_one(db) .await .is_ok(); @@ -133,13 +134,13 @@ impl DbVersion { // the passkeys table was introduced with v0.15.0 #[cfg(feature = "postgres")] - let is_db_v0_15_0 = query!("select * from pg_tables where tablename = 'passkeys' limit 1") + let is_db_v0_15_0 = query!("SELECT * FROM pg_tables WHERE tablename = 'passkeys' LIMIT 1") .fetch_one(db) .await .is_err(); #[cfg(not(feature = "postgres"))] let is_db_v0_15_0 = query!( - "select * from sqlite_master where type = 'table' and name = 'passkeys' limit 1" + "SELECT * FROM sqlite_master WHERE type = 'table' AND name = 'passkeys' LIMIT 1" ) .fetch_one(db) .await @@ -155,13 +156,13 @@ impl DbVersion { // which is there since the very beginning. #[cfg(feature = "postgres")] let is_db_pre_v0_15_0 = - query!("select * from pg_tables where tablename = 'clients' limit 1") + query!("SELECT * FROM pg_tables WHERE tablename = 'clients' LIMIT 1") .fetch_one(db) .await .is_err(); #[cfg(not(feature = "postgres"))] let is_db_pre_v0_15_0 = - query!("select * from sqlite_master where type = 'table' and name = 'clients' limit 1") + query!("SELECT * FROM sqlite_master WHERE type = 'table' AND name = 'clients' LIMIT 1") .fetch_one(db) .await .is_err(); diff --git a/src/models/src/entity/groups.rs b/src/models/src/entity/groups.rs index d74bfe7e0..eb641ca12 100644 --- a/src/models/src/entity/groups.rs +++ b/src/models/src/entity/groups.rs @@ -39,7 +39,7 @@ impl Group { }; sqlx::query!( - "insert into groups (id, name) values ($1, $2)", + "INSERT INTO groups (id, name) VALUES ($1, $2)", new_group.id, new_group.name, ) @@ -93,7 +93,7 @@ impl Group { user.save(data, None, Some(&mut txn)).await?; } - sqlx::query!("delete from groups where id = $1", group.id) + sqlx::query!("DELETE FROM groups WHERE id = $1", group.id) .execute(&mut *txn) .await?; @@ -118,7 +118,7 @@ impl Group { // Returns a single group by id pub async fn find(data: &web::Data, id: String) -> Result { - let res = sqlx::query_as!(Self, "select * from groups where id = $1", id,) + let res = sqlx::query_as!(Self, "SELECT * FROM groups WHERE id = $1", id,) .fetch_one(&data.db) .await?; @@ -139,7 +139,7 @@ impl Group { return Ok(groups); } - let res = sqlx::query_as!(Self, "select * from groups") + let res = sqlx::query_as!(Self, "SELECT * FROM groups") .fetch_all(&data.db) .await?; @@ -197,7 +197,7 @@ impl Group { }; sqlx::query!( - "update groups set name = $1 where id = $2", + "UPDATE groups SET name = $1 WHERE id = $2", new_group.name, new_group.id, ) diff --git a/src/models/src/entity/jwk.rs b/src/models/src/entity/jwk.rs index 6a557d28b..12f54ae58 100644 --- a/src/models/src/entity/jwk.rs +++ b/src/models/src/entity/jwk.rs @@ -111,8 +111,8 @@ impl Jwk { pub async fn save(&self, db: &DbPool) -> Result<(), ErrorResponse> { let sig_str = self.signature.as_str(); sqlx::query!( - r#"insert into jwks (kid, created_at, signature, enc_key_id, jwk) - values ($1, $2, $3, $4, $5)"#, + r#"INSERT INTO jwks (kid, created_at, signature, enc_key_id, jwk) + VALUES ($1, $2, $3, $4, $5)"#, self.kid, self.created_at, sig_str, @@ -164,7 +164,7 @@ impl JWKS { return Ok(jwks); } - let res = sqlx::query_as!(Jwk, "select * from jwks") + let res = sqlx::query_as!(Jwk, "SELECT * FROM jwks") .fetch_all(&data.db) .await?; @@ -644,7 +644,7 @@ impl JwkKeyPair { return Ok(jwk_opt); } - let jwk = sqlx::query_as!(Jwk, "select * from jwks where kid = $1", kid,) + let jwk = sqlx::query_as!(Jwk, "SELECT * FROM jwks WHERE kid = $1", kid,) .fetch_one(&data.db) .await?; @@ -680,7 +680,7 @@ impl JwkKeyPair { return Ok(jwk_opt); } - let mut jwks = sqlx::query_as!(Jwk, "select * from jwks") + let mut jwks = sqlx::query_as!(Jwk, "SELECT * FROM jwks") .fetch_all(&data.db) .await? .into_iter() diff --git a/src/models/src/entity/magic_links.rs b/src/models/src/entity/magic_links.rs index da22fbb57..f8297c61f 100644 --- a/src/models/src/entity/magic_links.rs +++ b/src/models/src/entity/magic_links.rs @@ -115,8 +115,8 @@ impl MagicLink { }; sqlx::query!( - r#"insert into magic_links (id, user_id, csrf_token, exp, used, usage) - values ($1, $2, $3, $4, $5, $6)"#, + r#"INSERT INTO magic_links (id, user_id, csrf_token, exp, used, usage) + VALUES ($1, $2, $3, $4, $5, $6)"#, link.id, link.user_id, link.csrf_token, @@ -131,7 +131,7 @@ impl MagicLink { } pub async fn find(data: &web::Data, id: &str) -> Result { - let res = sqlx::query_as!(Self, "select * from magic_links where id = $1", id) + let res = sqlx::query_as!(Self, "SELECT * FROM magic_links WHERE id = $1", id) .fetch_one(&data.db) .await?; @@ -144,7 +144,7 @@ impl MagicLink { ) -> Result { let res = sqlx::query_as!( Self, - "select * from magic_links where user_id = $1", + "SELECT * FROM magic_links WHERE user_id = $1", user_id ) .fetch_one(&data.db) @@ -158,7 +158,7 @@ impl MagicLink { user_id: &str, ) -> Result<(), ErrorResponse> { sqlx::query!( - "delete from magic_links where user_id = $1 and usage like 'email_change$%'", + "DELETE FROM magic_links WHERE user_id = $1 AND USAGE LIKE 'email_change$%'", user_id, ) .execute(&data.db) @@ -169,7 +169,7 @@ impl MagicLink { pub async fn save(&self, data: &web::Data) -> Result<(), ErrorResponse> { sqlx::query!( - "update magic_links set cookie = $1, exp = $2, used = $3 where id = $4", + "UPDATE magic_links SET cookie = $1, exp = $2, used = $3 WHERE id = $4", self.cookie, self.exp, self.used, diff --git a/src/models/src/entity/password.rs b/src/models/src/entity/password.rs index b790baacb..975a9c400 100644 --- a/src/models/src/entity/password.rs +++ b/src/models/src/entity/password.rs @@ -136,7 +136,7 @@ impl PasswordPolicy { return Ok(policy); } - let res = sqlx::query("select data from config where id = 'password_policy'") + let res = sqlx::query("SELECT data FROM config WHERE id = 'password_policy'") .fetch_one(&data.db) .await?; let bytes: Vec = res.get("data"); @@ -158,7 +158,7 @@ impl PasswordPolicy { let slf = bincode::serialize(&self).unwrap(); sqlx::query!( - "update config set data = $1 where id = 'password_policy'", + "UPDATE config SET data = $1 WHERE id = 'password_policy'", slf ) .execute(&data.db) @@ -219,7 +219,7 @@ impl RecentPasswordsEntity { passwords: &String, ) -> Result<(), ErrorResponse> { sqlx::query!( - "insert into recent_passwords (user_id, passwords) values ($1, $2)", + "INSERT INTO recent_passwords (user_id, passwords) VALUES ($1, $2)", user_id, passwords, ) @@ -232,7 +232,7 @@ impl RecentPasswordsEntity { pub async fn find(data: &web::Data, user_id: &str) -> Result { let res = sqlx::query_as!( Self, - "select * from recent_passwords where user_id = $1", + "SELECT * FROM recent_passwords WHERE user_id = $1", user_id, ) .fetch_one(&data.db) @@ -242,7 +242,7 @@ impl RecentPasswordsEntity { pub async fn save(&self, data: &web::Data) -> Result<(), ErrorResponse> { sqlx::query!( - "update recent_passwords set passwords = $1 where user_id = $2", + "UPDATE recent_passwords SET passwords = $1 WHERE user_id = $2", self.passwords, self.user_id, ) diff --git a/src/models/src/entity/roles.rs b/src/models/src/entity/roles.rs index df48db0c8..64cf0871a 100644 --- a/src/models/src/entity/roles.rs +++ b/src/models/src/entity/roles.rs @@ -38,7 +38,7 @@ impl Role { name: role_req.role, }; sqlx::query!( - "insert into roles (id, name) values ($1, $2)", + "INSERT INTO roles (id, name) VALUES ($1, $2)", new_role.id, new_role.name, ) @@ -100,7 +100,7 @@ impl Role { user.save(data, None, Some(&mut txn)).await?; } - sqlx::query!("delete from roles where id = $1", id) + sqlx::query!("DELETE FROM roles WHERE id = $1", id) .execute(&mut *txn) .await?; @@ -126,7 +126,7 @@ impl Role { // Returns a single role by id pub async fn find(data: &web::Data, id: &str) -> Result { - let res = sqlx::query_as!(Self, "select * from roles where id = $1", id) + let res = sqlx::query_as!(Self, "SELECT * FROM roles WHERE id = $1", id) .fetch_one(&data.db) .await?; @@ -147,7 +147,7 @@ impl Role { return Ok(roles); } - let res = sqlx::query_as!(Self, "select * from roles") + let res = sqlx::query_as!(Self, "SELECT * FROM roles") .fetch_all(&data.db) .await?; @@ -200,7 +200,7 @@ impl Role { let new_role = Role { id, name: new_name }; sqlx::query!( - "update roles set name = $1 where id = $2", + "UPDATE roles SET name = $1 WHERE id = $2", new_role.name, new_role.id, ) diff --git a/src/models/src/entity/scopes.rs b/src/models/src/entity/scopes.rs index 62c1f800d..861982ce8 100644 --- a/src/models/src/entity/scopes.rs +++ b/src/models/src/entity/scopes.rs @@ -151,7 +151,7 @@ impl Scope { // Returns a single scope by id pub async fn find(data: &web::Data, id: &str) -> Result { - let res = sqlx::query_as!(Self, "select * from scopes where id = $1", id) + let res = sqlx::query_as!(Self, "SELECT * FROM scopes WHERE id = $1", id) .fetch_one(&data.db) .await?; Ok(res) @@ -171,7 +171,7 @@ impl Scope { return Ok(scopes); } - let res = sqlx::query_as!(Self, "select * from scopes") + let res = sqlx::query_as!(Self, "SELECT * FROM scopes") .fetch_all(&data.db) .await?; @@ -264,14 +264,16 @@ impl Scope { }; sqlx::query!( - "update scopes set name = $1, attr_include_access = $2, attr_include_id = $3 where id = $4", + r#"UPDATE scopes + SET name = $1, attr_include_access = $2, attr_include_id = $3 + WHERE id = $4"#, new_scope.name, new_scope.attr_include_access, new_scope.attr_include_id, new_scope.id, ) - .execute(&mut *txn) - .await?; + .execute(&mut *txn) + .await?; txn.commit().await?; @@ -311,7 +313,9 @@ impl Scope { txn: &mut DbTxn<'_>, ) -> Result<(), ErrorResponse> { sqlx::query!( - "update scopes set attr_include_access = $1, attr_include_id = $2 where id = $3", + r#"UPDATE scopes + SET attr_include_access = $1, attr_include_id = $2 + WHERE id = $3"#, attr_include_access, attr_include_id, id, diff --git a/src/models/src/entity/sessions.rs b/src/models/src/entity/sessions.rs index a80c3e382..3284e814e 100644 --- a/src/models/src/entity/sessions.rs +++ b/src/models/src/entity/sessions.rs @@ -388,9 +388,9 @@ impl Session { #[cfg(not(feature = "postgres"))] let q = sqlx::query!( - r#"insert or replace into + r#"INSERT OR REPLACE INTO sessions (id, csrf_token, user_id, roles, groups, is_mfa, state, exp, last_seen, remote_ip) - values ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10)"#, + VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10)"#, self.id, self.csrf_token, self.user_id, @@ -405,10 +405,10 @@ impl Session { #[cfg(feature = "postgres")] let q = sqlx::query!( - r#"insert into + r#"INSERT INTO sessions (id, csrf_token, user_id, roles, groups, is_mfa, state, exp, last_seen, remote_ip) - values ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) - on conflict(id) do update set user_id = $3, roles = $4, groups = $5, is_mfa = $6, + VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10) + ON CONFLICT(id) DO UPDATE set user_id = $3, roles = $4, groups = $5, is_mfa = $6, state = $7, exp = $8, last_seen = $9, remote_ip = $10"#, self.id, self.csrf_token, diff --git a/src/models/src/entity/user_attr.rs b/src/models/src/entity/user_attr.rs index a4d8a6aed..22f0bdcb0 100644 --- a/src/models/src/entity/user_attr.rs +++ b/src/models/src/entity/user_attr.rs @@ -37,14 +37,14 @@ impl UserAttrConfigEntity { #[cfg(not(feature = "postgres"))] let q = sqlx::query!( - "insert into user_attr_config (name, desc) values ($1, $2)", + "INSERT INTO user_attr_config (name, desc) VALUES ($1, $2)", new_attr.name, new_attr.desc, ); #[cfg(feature = "postgres")] let q = sqlx::query!( - "insert into user_attr_config (name, \"desc\") values ($1, $2)", + "INSERT INTO user_attr_config (name, \"desc\") VALUES ($1, $2)", new_attr.name, new_attr.desc, ); @@ -134,7 +134,7 @@ impl UserAttrConfigEntity { UserAttrValueEntity::delete_all_by_key(data, &name, &mut txn).await?; - sqlx::query!("delete from user_attr_config where name = $1", name) + sqlx::query!("DELETE FROM user_attr_config WHERE name = $1", name) .execute(&mut *txn) .await?; @@ -170,7 +170,7 @@ impl UserAttrConfigEntity { return Ok(attr_opt); } - let attr = sqlx::query_as!(Self, "select * from user_attr_config where name = $1", name) + let attr = sqlx::query_as!(Self, "SELECT * FROM user_attr_config WHERE name = $1", name) .fetch_one(&data.db) .await?; @@ -198,7 +198,7 @@ impl UserAttrConfigEntity { return Ok(attrs); } - let res = sqlx::query_as!(Self, "select * from user_attr_config") + let res = sqlx::query_as!(Self, "SELECT * FROM user_attr_config") .fetch_all(&data.db) .await?; @@ -228,7 +228,7 @@ impl UserAttrConfigEntity { // collect all current value IDs with the setting for cache clear on success let cache_idxs = if is_name_update { let idx = sqlx::query_as::<_, UserAttrValueEntity>( - "select * from user_attr_values where key = $1", + "SELECT * FROM user_attr_values WHERE key = $1", ) .bind(&name) .fetch_all(&data.db) @@ -245,7 +245,7 @@ impl UserAttrConfigEntity { #[cfg(not(feature = "postgres"))] let q = sqlx::query!( - "update user_attr_config set name = $1, desc = $2 where name = $3", + "UPDATE user_attr_config SET name = $1, desc = $2 WHERE name = $3", slf.name, slf.desc, name, @@ -253,7 +253,7 @@ impl UserAttrConfigEntity { #[cfg(feature = "postgres")] let q = sqlx::query!( - "update user_attr_config set name = $1, \"desc\" = $2 where name = $3", + "UPDATE user_attr_config SET name = $1, \"desc\" = $2 WHERE name = $3", slf.name, slf.desc, name, @@ -391,7 +391,7 @@ impl UserAttrValueEntity { txn: &mut DbTxn<'_>, ) -> Result<(), ErrorResponse> { let cache_idxs = - sqlx::query_as!(Self, "select * from user_attr_values where key = $1", key) + sqlx::query_as!(Self, "SELECT * FROM user_attr_values WHERE key = $1", key) .fetch_all(&data.db) .await? .into_iter() @@ -408,7 +408,7 @@ impl UserAttrValueEntity { .await?; } - sqlx::query!("delete from user_attr_values where key = $1", key) + sqlx::query!("DELETE FROM user_attr_values WHERE key = $1", key) .execute(&mut **txn) .await?; @@ -434,7 +434,7 @@ impl UserAttrValueEntity { let res = sqlx::query_as!( Self, - "select * from user_attr_values where user_id = $1", + "SELECT * FROM user_attr_values WHERE user_id = $1", user_id ) .fetch_all(&data.db) @@ -470,7 +470,7 @@ impl UserAttrValueEntity { if del || value.value == Value::Null { sqlx::query!( - "delete from user_attr_values where user_id = $1 and key = $2", + "DELETE FROM user_attr_values WHERE user_id = $1 AND key = $2", user_id, value.key, ) @@ -481,8 +481,9 @@ impl UserAttrValueEntity { #[cfg(not(feature = "postgres"))] let q = sqlx::query!( - r#"insert or replace into user_attr_values (user_id, key, value) - values ($1, $2, $3)"#, + r#"INSERT OR REPLACE INTO + user_attr_values (user_id, key, value) + VALUES ($1, $2, $3)"#, user_id, value.key, v, @@ -490,9 +491,9 @@ impl UserAttrValueEntity { #[cfg(feature = "postgres")] let q = sqlx::query!( - r#"insert into user_attr_values (user_id, key, value) - values ($1, $2, $3) - on conflict(user_id, key) do update set value = $3"#, + r#"INSERT INTO user_attr_values (user_id, key, value) + VALUES ($1, $2, $3) + ON CONFLICT(user_id, key) DO UPDATE SET value = $3"#, user_id, value.key, v, @@ -505,7 +506,7 @@ impl UserAttrValueEntity { // 2nd query again to have more compatibility let res = sqlx::query_as!( Self, - "select * from user_attr_values where user_id = $1", + "SELECT * FROM user_attr_values WHERE user_id = $1", user_id ) .fetch_all(&data.db) diff --git a/src/models/src/entity/users.rs b/src/models/src/entity/users.rs index ef6a309d5..4a895af31 100644 --- a/src/models/src/entity/users.rs +++ b/src/models/src/entity/users.rs @@ -258,7 +258,7 @@ impl User { return Ok(()); } - sqlx::query!("select id from users where id = $1", id) + sqlx::query!("SELECT id FROM users WHERE id = $1", id) .fetch_one(&data.db) .await?; @@ -279,7 +279,7 @@ impl User { return Ok(user_opt); } - let user = sqlx::query_as!(Self, "select * from users where id = $1", id) + let user = sqlx::query_as!(Self, "SELECT * FROM users WHERE id = $1", id) .fetch_one(&data.db) .await?; @@ -313,7 +313,7 @@ impl User { return Ok(user_opt); } - let user = sqlx::query_as!(Self, "select * from users where email = $1", email) + let user = sqlx::query_as!(Self, "SELECT * FROM users WHERE email = $1", email) .fetch_one(&data.db) .await?; @@ -335,7 +335,7 @@ impl User { ) -> Result { let user = sqlx::query_as!( Self, - "select * from users where auth_provider_id = $1 and federation_uid = $2", + "SELECT * FROM users WHERE auth_provider_id = $1 AND federation_uid = $2", auth_provider_id, federation_uid ) @@ -367,7 +367,7 @@ impl User { let now = OffsetDateTime::now_utc() .add(time::Duration::seconds(10)) .unix_timestamp(); - let res = sqlx::query_as!(Self, "select * from users where user_expires < $1", now) + let res = sqlx::query_as!(Self, "SELECT * FROM users WHERE user_expires < $1", now) .fetch_all(&data.db) .await?; Ok(res) @@ -585,12 +585,12 @@ impl User { let lang = self.language.as_str(); let q = sqlx::query( - r#"update users set + r#"UPDATE USERS SET email = $1, given_name = $2, family_name = $3, password = $4, roles = $5, groups = $6, enabled = $7, email_verified = $8, password_expires = $9, last_login = $10, last_failed_login = $11, failed_login_attempts = $12, language = $13, webauthn_user_id = $14, user_expires = $15, auth_provider_id = $16, federation_uid = $17 - where id = $18"#, + WHERE id = $18"#, ) .bind(&self.email) .bind(&self.given_name)