diff --git a/Cargo.lock b/Cargo.lock index 96dc1122..d4072433 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1393,7 +1393,7 @@ dependencies = [ [[package]] name = "labrinth" -version = "2.3.0" +version = "2.3.1" dependencies = [ "actix", "actix-cors", diff --git a/Cargo.toml b/Cargo.toml index d928a445..68f9ec29 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "labrinth" -version = "2.3.0" +version = "2.3.1" #Team members, please add your emails and usernames authors = ["geometrically ", "Redblueflame ", "Aeledfyr ", "Charalampos Fanoulis ", "AppleTheGolden "] edition = "2018" diff --git a/sqlx-data.json b/sqlx-data.json index 9e0785fa..c416dd42 100644 --- a/sqlx-data.json +++ b/sqlx-data.json @@ -877,27 +877,6 @@ "nullable": [] } }, - "331041c6a4f27f4a6ac2873332074c0127e7368c8ab803843760530d29aaef08": { - "query": "SELECT id FROM versions\n WHERE (version_number = $1 AND mod_id = $2)", - "describe": { - "columns": [ - { - "ordinal": 0, - "name": "id", - "type_info": "Int8" - } - ], - "parameters": { - "Left": [ - "Text", - "Int8" - ] - }, - "nullable": [ - false - ] - } - }, "33a965c7dc615d3b701c05299889357db8dd36d378850625d2602ba471af4885": { "query": "\n UPDATE mods\n SET downloads = downloads + $1\n WHERE (id = $2)\n ", "describe": { @@ -4471,6 +4450,33 @@ "nullable": [] } }, + "c265db2e2cc1ba34ca1f30a9401018eb7760c8f0bafb1e3a7576e62bc9d3f83a": { + "query": "SELECT id, mod_id FROM versions\n WHERE (version_number = $1 AND mod_id = $2)", + "describe": { + "columns": [ + { + "ordinal": 0, + "name": "id", + "type_info": "Int8" + }, + { + "ordinal": 1, + "name": "mod_id", + "type_info": "Int8" + } + ], + "parameters": { + "Left": [ + "Text", + "Int8" + ] + }, + "nullable": [ + false, + false + ] + } + }, "c3dcb5a8b798ea6c0922698a007dbc8ab549f5f85bad780da59163f4d6371238": { "query": "\n SELECT id FROM mods\n WHERE status = (\n SELECT id FROM statuses WHERE status = $1\n )\n ORDER BY updated ASC\n LIMIT $2;\n ", "describe": { diff --git a/src/routes/admin.rs b/src/routes/admin.rs index 43cce136..79c5c043 100644 --- a/src/routes/admin.rs +++ b/src/routes/admin.rs @@ -1,9 +1,9 @@ +use crate::models::ids::ProjectId; use crate::routes::ApiError; use crate::util::guards::admin_key_guard; use actix_web::{patch, web, HttpResponse}; use serde::Deserialize; use sqlx::PgPool; -use crate::models::ids::ProjectId; #[derive(Deserialize)] pub struct DownloadBody { @@ -18,17 +18,19 @@ pub async fn count_download( pool: web::Data, download_body: web::Json, ) -> Result { - let project_id : crate::database::models::ids::ProjectId = download_body.hash.into(); + let project_id: crate::database::models::ids::ProjectId = + download_body.hash.into(); - let version_id = if let Some(version) = sqlx::query!( - "SELECT id FROM versions + let (version_id, project_id) = if let Some(version) = sqlx::query!( + "SELECT id, mod_id FROM versions WHERE (version_number = $1 AND mod_id = $2)", download_body.version_name, - project_id as crate::database::models::ids::ProjectId + project_id as crate::database::models::ids::ProjectId ) - .fetch_optional(pool.as_ref()) - .await? { - version.id + .fetch_optional(pool.as_ref()) + .await? + { + (version.id, version.mod_id) } else if let Some(version) = sqlx::query!( " SELECT v.id id, v.mod_id project_id FROM files f @@ -37,11 +39,14 @@ pub async fn count_download( ", download_body.url, ) - .fetch_optional(pool.as_ref()) - .await? { - version.id + .fetch_optional(pool.as_ref()) + .await? + { + (version.id, version.project_id) } else { - return Err(ApiError::InvalidInput("Specified version does not exist!".to_string())); + return Err(ApiError::InvalidInput( + "Specified version does not exist!".to_string(), + )); }; let mut transaction = pool.begin().await?; @@ -59,7 +64,7 @@ pub async fn count_download( "UPDATE mods SET downloads = downloads + 1 WHERE (id = $1)", - version_id + project_id ) .execute(&mut *transaction) .await?; diff --git a/src/routes/auth.rs b/src/routes/auth.rs index 3c5c80a7..8cea1f4a 100644 --- a/src/routes/auth.rs +++ b/src/routes/auth.rs @@ -145,12 +145,13 @@ pub async fn auth_callback( .await?; if let Some(result) = result_option { - let now = OffsetDateTime::now_utc(); - let duration = now - result.expires; - - if duration.whole_seconds() < 0 { - return Err(AuthorizationError::InvalidCredentials); - } + // let now = OffsetDateTime::now_utc(); + // TODO: redo this condition later.. + // let duration = now - result.expires; + // + // if duration.whole_seconds() < 0 { + // return Err(AuthorizationError::InvalidCredentials); + // } sqlx::query!( " diff --git a/src/routes/projects.rs b/src/routes/projects.rs index bfcb4407..d2ff936c 100644 --- a/src/routes/projects.rs +++ b/src/routes/projects.rs @@ -445,14 +445,14 @@ pub async fn project_edit( } else if !project_item.status.is_searchable() && status.is_searchable() { - let index_project = - crate::search::indexing::local_import::query_one( - id, - &mut *transaction, - ) - .await?; - - indexing_queue.add(index_project); + // let index_project = + // crate::search::indexing::local_import::query_one( + // id, + // &mut *transaction, + // ) + // .await?; + // + // indexing_queue.add(index_project); } }