1
0
mirror of https://gitlab.com/comunic/comunicapiv3 synced 2024-11-26 15:29:21 +00:00
comunicapiv3/src/helpers/friends_helper.rs

26 lines
793 B
Rust
Raw Normal View History

//! # Friends helper
//!
//! @author Pierre Hubert
use crate::data::user::UserID;
use crate::data::error::ResultBoxError;
use crate::helpers::database;
use crate::constants::database_tables_names::FRIENDS_TABLE;
use crate::helpers::database::QueryInfo;
/// Check out whether two users are friend or not
pub fn are_friend(user_one: UserID, user_two: UserID) -> ResultBoxError<bool> {
Ok(database::count(QueryInfo::new(FRIENDS_TABLE)
.cond_i64("ID_personne", user_one)
.cond_i64("ID_amis", user_two)
.cond_i64("actif", 1))? > 0)
2020-06-01 08:00:58 +00:00
}
/// Count the number of friends of a user
pub fn count_friends(user_id: UserID) -> ResultBoxError<usize> {
QueryInfo::new(FRIENDS_TABLE)
.cond_i64("ID_amis", user_id)
.cond_u32("actif", 1)
.exec_count()
}