diff --git a/src/utils.rs b/src/utils.rs index 52c66d1..a72eb67 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -424,6 +424,15 @@ impl Post { }); } posts.sort_by(|a, b| b.created_ts.cmp(&a.created_ts)); + posts.sort_by(|a, b| { + if a.flags.stickied && !b.flags.stickied { + return std::cmp::Ordering::Less; + } + if !a.flags.stickied && b.flags.stickied { + return std::cmp::Ordering::Greater; + } + std::cmp::Ordering::Equal + }); Ok((posts, res["data"]["after"].as_str().unwrap_or_default().to_string())) } }