fix(token): allow to get and store token in local config
This commit is contained in:
@@ -56,6 +56,7 @@ impl RequestManager {
|
||||
|
||||
pub fn get_token(&mut self) -> String {
|
||||
if self.token.is_none() {
|
||||
// look in global config
|
||||
if let Some(token) = gconfig::read_token() {
|
||||
if !token.is_empty() {
|
||||
self.token = Some(token);
|
||||
@@ -63,10 +64,21 @@ impl RequestManager {
|
||||
}
|
||||
}
|
||||
|
||||
// look in local config
|
||||
if let Some(token) = config::find_option_in_cat("core", "token")
|
||||
{
|
||||
if !token.is_empty() {
|
||||
self.token = Some(token);
|
||||
return self.token.clone().unwrap();
|
||||
}
|
||||
}
|
||||
|
||||
// ask for a token
|
||||
let get_token = Login::new()
|
||||
.ask_auth()
|
||||
.set_host(Some(self.get_host()))
|
||||
.send_login();
|
||||
|
||||
// todo deal with error cases
|
||||
self.token = Some(get_token.unwrap());
|
||||
if let Err(err) = gconfig::write_token(&self.token.clone().unwrap()) {
|
||||
|
||||
Reference in New Issue
Block a user