From 6b771b55030256378b1a2ca1e769f400ed52a7cb Mon Sep 17 00:00:00 2001 From: Xe Iaso Date: Tue, 5 Apr 2022 21:02:14 -0400 Subject: [PATCH] fix better???? Signed-off-by: Xe Iaso --- lib/patreon/src/lib.rs | 6 ++++-- src/app/mod.rs | 11 ++++++++++- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/lib/patreon/src/lib.rs b/lib/patreon/src/lib.rs index 06c952c..a2fa63d 100644 --- a/lib/patreon/src/lib.rs +++ b/lib/patreon/src/lib.rs @@ -125,14 +125,16 @@ pub struct Links { impl Client { pub fn new() -> Result { + let mut creds = Credentials::default(); + let p = Path::new(".patreon.json"); let config = fs::read_to_string(p)?; - let creds: Credentials = serde_json::from_str(&config)?; + creds = serde_json::from_str(&config)?; Ok(Self { cli: reqwest::Client::new(), base_url: "https://api.patreon.com".into(), - creds, + creds: creds, }) } diff --git a/src/app/mod.rs b/src/app/mod.rs index 221650b..a58551e 100644 --- a/src/app/mod.rs +++ b/src/app/mod.rs @@ -1,7 +1,10 @@ use crate::{post::Post, signalboost::Person}; use color_eyre::eyre::Result; use serde::Deserialize; -use std::{fs, path::PathBuf}; +use std::{ + fs, + path::{Path, PathBuf}, +}; use tracing::{error, instrument}; pub mod markdown; @@ -18,6 +21,12 @@ pub struct Config { #[instrument] async fn patrons() -> Result> { + let p = Path::new(".patreon.json"); + if !p.exists() { + info!("{:?} does not exist", p); + return Ok(None); + } + let mut cli = patreon::Client::new()?; if let Err(why) = cli.refresh_token().await {