1
0
mirror of https://gitlab.com/comunic/comunicapiv3 synced 2025-06-21 00:45:18 +00:00

Get user page status

This commit is contained in:
2020-05-26 13:15:39 +02:00
parent be4d1befcc
commit eb3e6e9afa
3 changed files with 26 additions and 2 deletions

View File

@ -1,5 +1,5 @@
use crate::data::error::ResultBoxError;
use crate::data::user::{User, UserID};
use crate::data::user::{User, UserID, UserPageStatus};
use crate::helpers::database;
use crate::database_structure::USERS_TABLE;
@ -22,12 +22,24 @@ pub fn find_user_by_email(email: &str) -> ResultBoxError<User> {
/// Execute query & return result
fn exec_get_user_query(query: database::QueryInfo) -> ResultBoxError<User> {
database::query_row(query, |res| {
// Page status
let page_status = if res.get_int64("pageouverte")? == 1 {
UserPageStatus::OPEN
} else if res.get_int64("public")? == 1 {
UserPageStatus::PUBLIC
} else {
UserPageStatus::PRIVATE
};
Ok(User {
id: res.get_int64("ID")?,
email: res.get_str("mail")?,
password: res.get_str("password")?,
first_name: res.get_str("prenom")?,
last_name: res.get_str("nom")?,
status: page_status,
})
})
}