diff --git a/src/client.rs b/src/client.rs index f577f95..95f62c1 100644 --- a/src/client.rs +++ b/src/client.rs @@ -140,7 +140,7 @@ fn request(method: &'static Method, path: String, redirect: bool, quarantine: bo .header("Accept-Encoding", if method == Method::GET { "gzip" } else { "identity" }) .header("Accept-Language", "en-US,en;q=0.5") .header("Connection", "keep-alive") - .header("Cookie", if quarantine { "_options=%7B%22pref_quarantine_optin%22%3A%20true%7D" } else { "" }) + .header("Cookie", if quarantine { "_options=%7B%22pref_quarantine_optin%22%3A%20true%2C%20%22pref_gated_sr_optin%22%3A%20true%7D" } else { "" }) .body(Body::empty()); async move { diff --git a/src/subreddit.rs b/src/subreddit.rs index 71692c4..c3bf3f3 100644 --- a/src/subreddit.rs +++ b/src/subreddit.rs @@ -144,7 +144,7 @@ pub async fn community(req: Request) -> Result, String> { }) } Err(msg) => match msg.as_str() { - "quarantined" => quarantine(req, sub_name), + "quarantined" | "gated" => quarantine(req, sub_name), "private" => error(req, format!("r/{} is a private community", sub_name)).await, "banned" => error(req, format!("r/{} has been banned from Reddit", sub_name)).await, _ => error(req, msg).await,