mirror of
				https://gitlab.com/comunic/comunicapiv3
				synced 2025-11-04 09:34:04 +00:00 
			
		
		
		
	Can make global search
This commit is contained in:
		
							
								
								
									
										36
									
								
								src/api_data/global_search_result_api.rs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								src/api_data/global_search_result_api.rs
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,36 @@
 | 
			
		||||
//! # Global search result API
 | 
			
		||||
//!
 | 
			
		||||
//! @author Pierre
 | 
			
		||||
 | 
			
		||||
use serde::Serialize;
 | 
			
		||||
 | 
			
		||||
use crate::data::global_search_result::GlobalSearchResult;
 | 
			
		||||
 | 
			
		||||
#[derive(Serialize)]
 | 
			
		||||
pub struct GlobalSearchResultAPI {
 | 
			
		||||
    kind: String,
 | 
			
		||||
    id: u64,
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
impl GlobalSearchResultAPI {
 | 
			
		||||
    /// Construct new entry
 | 
			
		||||
    pub fn new(res: &GlobalSearchResult) -> GlobalSearchResultAPI {
 | 
			
		||||
        match res {
 | 
			
		||||
            GlobalSearchResult::User(user_id) => GlobalSearchResultAPI {
 | 
			
		||||
                kind: "user".to_string(),
 | 
			
		||||
                id: user_id.clone() as u64,
 | 
			
		||||
            },
 | 
			
		||||
            GlobalSearchResult::Group(group_id) => GlobalSearchResultAPI {
 | 
			
		||||
                kind: "group".to_string(),
 | 
			
		||||
                id: group_id.id(),
 | 
			
		||||
            },
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /// Construct a list of results
 | 
			
		||||
    pub fn for_list(l: &Vec<GlobalSearchResult>) -> Vec<GlobalSearchResultAPI> {
 | 
			
		||||
        l.iter()
 | 
			
		||||
            .map(|f| Self::new(f))
 | 
			
		||||
            .collect()
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -21,4 +21,5 @@ pub mod res_find_private_conversations;
 | 
			
		||||
pub mod conversation_message_api;
 | 
			
		||||
pub mod conversations_refresh_api;
 | 
			
		||||
pub mod res_count_unread_conversations;
 | 
			
		||||
pub mod list_unread_conversations_api;
 | 
			
		||||
pub mod list_unread_conversations_api;
 | 
			
		||||
pub mod global_search_result_api;
 | 
			
		||||
		Reference in New Issue
	
	Block a user