Files
gt/src/user.rs

62 lines
1.6 KiB
Rust

use std::collections::HashMap;
use crate::{request::Request, util};
use serde_derive::{Deserialize, Serialize};
pub struct User;
pub struct MutlipleUsers {
pub data: Vec<UserResponse>,
pub ok: bool,
}
#[derive(Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct UserResponse {
#[serde(rename = "avatar_url")]
pub avatar_url: String,
pub created: String,
pub email: String,
#[serde(rename = "full_name")]
pub full_name: String,
pub id: i64,
#[serde(rename = "is_admin")]
pub is_admin: bool,
pub language: String,
#[serde(rename = "last_login")]
pub last_login: String,
pub login: String,
pub restricted: bool,
}
impl User {
pub fn new() -> User {
User {}
}
pub fn create_user(request: &Request) {
let client = &request.client;
let arg_value = &request
.arg_value
.subcommand()
.1
.unwrap()
.value_of("create")
.unwrap();
let mut user_create_input: HashMap<String, String> = HashMap::new();
let username = util::get_input(String::from("Please enter a username:"));
let email = util::get_input(String::from("Please enter a email address:"));
let password = util::get_input(String::from("Please enter a password:"));
user_create_input.insert("login".to_string(), username);
user_create_input.insert("email".to_string(), email);
user_create_input.insert("password".to_string(), password);
}
pub fn list_user() {}
pub fn search_user() {}
pub fn delete_user() {}
}