diff --git a/src/api_data/res_find_virtual_directory.rs b/src/api_data/res_find_virtual_directory.rs index 0e813d6..b578f8f 100644 --- a/src/api_data/res_find_virtual_directory.rs +++ b/src/api_data/res_find_virtual_directory.rs @@ -5,6 +5,7 @@ use serde::{Serialize}; use crate::data::error::ResultBoxError; use crate::data::user::User; +use crate::data::group_id::GroupID; #[derive(Serialize)] pub struct ResultFindVirtualDirectory { @@ -14,14 +15,14 @@ pub struct ResultFindVirtualDirectory { impl ResultFindVirtualDirectory { /// Construct a new instance - pub fn new(user: ResultBoxError, group: ResultBoxError) -> ResultFindVirtualDirectory { + pub fn new(user: ResultBoxError, group: ResultBoxError) -> ResultFindVirtualDirectory { match (user, group) { // User (Ok(u), _) => ResultFindVirtualDirectory { kind: "user".to_string(), id: u.id as u64 }, // Group - (_, Ok(g)) => ResultFindVirtualDirectory { kind: "group".to_string(), id: g }, + (_, Ok(g)) => ResultFindVirtualDirectory { kind: "group".to_string(), id: g.id() }, _ => unreachable!() } diff --git a/src/data/group_id.rs b/src/data/group_id.rs index 1197296..d387781 100644 --- a/src/data/group_id.rs +++ b/src/data/group_id.rs @@ -2,7 +2,7 @@ //! //! @author Pierre Hubert -#[derive(Clone, PartialEq, Eq)] +#[derive(Clone, PartialEq, Eq, Debug)] pub struct GroupID(u64); impl GroupID { diff --git a/src/helpers/groups_helper.rs b/src/helpers/groups_helper.rs index 18eda0c..e1acde0 100644 --- a/src/helpers/groups_helper.rs +++ b/src/helpers/groups_helper.rs @@ -19,11 +19,11 @@ impl GroupVisibilityLevel { } /// Find a group id by virtual directory -pub fn find_by_virtual_directory(dir: &str) -> ResultBoxError { +pub fn find_by_virtual_directory(dir: &str) -> ResultBoxError { database::QueryInfo::new(GROUPS_LIST_TABLE) .cond("virtual_directory", dir) .add_field("id") - .query_row(|res| res.get_u64("id")) + .query_row(|res| res.get_group_id("id")) } /// Search for group