2020-06-01 15:17:18 +00:00
|
|
|
//! # Virtual directory controller
|
|
|
|
//!
|
|
|
|
//! @author Pierre Hubert
|
|
|
|
|
|
|
|
use crate::data::http_request_handler::HttpRequestHandler;
|
|
|
|
use crate::controllers::routes::RequestResult;
|
2020-06-02 11:26:12 +00:00
|
|
|
use crate::helpers::user_helper;
|
|
|
|
use crate::api_data::res_find_user_by_virtual_directory::FindUserByVirtualDirectoryAPIResult;
|
2020-06-01 15:17:18 +00:00
|
|
|
|
|
|
|
/// Find a user by its virtual directory
|
|
|
|
pub fn find_user(r: &mut HttpRequestHandler) -> RequestResult {
|
2020-06-02 11:12:54 +00:00
|
|
|
let directory = r.post_virtual_directory("subfolder")?;
|
|
|
|
|
2020-06-02 11:26:12 +00:00
|
|
|
let user = r.ok_or_not_found(
|
|
|
|
user_helper::find_user_by_virtual_directory(&directory),
|
|
|
|
"No user was found with this subfolder!"
|
|
|
|
)?;
|
|
|
|
|
|
|
|
r.set_response(FindUserByVirtualDirectoryAPIResult::new(user.id))
|
2020-06-01 15:17:18 +00:00
|
|
|
}
|