getlevels fix, moar config

This commit is contained in:
Reid 2023-09-13 15:58:56 -07:00
parent cc1c365e5f
commit d418896c82
Signed by: reidlab
GPG key ID: 6C9EAA3364F962C8
6 changed files with 22 additions and 5 deletions

View file

@ -225,11 +225,19 @@ pub fn get_levels(input: Form<FormGetLevels>) -> status::Custom<&'static str> {
if user_id_val == input.str.parse::<i32>().expect("couldnt convert query input to i32") {
can_see_unlisted = true;
query = query.filter(levels::user_id.eq(user_id_val));
count_query = count_query.filter(levels::user_id.eq(user_id_val))
} else {
return status::Custom(Status::Ok, "-1")
}
}
}
if let None = input.local {
let user_id_val = input.str.parse::<i32>().expect("couldnt convert query input to i32");
query = query.filter(levels::user_id.eq(user_id_val));
count_query = count_query.filter(levels::user_id.eq(user_id_val))
}
}
// featured
// 17 is gdworld

View file

@ -8,6 +8,7 @@ use base64::{Engine as _, engine::general_purpose};
use std::fs;
use crate::config::CONFIG;
use crate::helpers;
use crate::db;
@ -96,6 +97,11 @@ pub fn upload_level(input: Form<FormUploadLevel>) -> status::Custom<&'static str
return status::Custom(Status::Ok, "-1")
}
// too many objects
if objects_val > CONFIG.levels.max_objects as usize {
return status::Custom(Status::Ok, "-1")
}
// forbidden object checking
if let Some(_forbidden_object) = level_objects.iter().find(|obj| crate::CONFIG.levels.blocklist.contains(&obj.id())) {
return status::Custom(Status::Ok, "-1")