filter/sort for pmvhaven
This commit is contained in:
@@ -141,6 +141,10 @@ impl PmvhavenRequest {
|
||||
self.hypno = false;
|
||||
self
|
||||
}
|
||||
fn sort(&mut self, sort:String) -> Self {
|
||||
self.activeView = sort;
|
||||
self
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(serde::Serialize)]
|
||||
@@ -250,10 +254,11 @@ impl PmvhavenProvider {
|
||||
url: "https://pmvhaven.com".to_string(),
|
||||
}
|
||||
}
|
||||
async fn get(&self, cache: VideoCache, page: u8, category: String) -> Result<Vec<VideoItem>> {
|
||||
async fn get(&self, cache: VideoCache, page: u8, category: String, sort:String) -> Result<Vec<VideoItem>> {
|
||||
let index = format!("pmvhaven:{}:{}", page, category);
|
||||
let url = format!("{}/api/getmorevideos", self.url);
|
||||
let mut request = PmvhavenRequest::new(page as u32);
|
||||
request = request.sort(sort);
|
||||
println!("Category: {}", category);
|
||||
request = match category.as_str() {
|
||||
"hypno" => { request.hypno(); request },
|
||||
@@ -432,13 +437,12 @@ impl Provider for PmvhavenProvider {
|
||||
category: String,
|
||||
) -> Vec<VideoItem> {
|
||||
let _ = per_page;
|
||||
let _ = sort;
|
||||
let _ = featured; // Ignored in this implementation
|
||||
let _ = pool; // Ignored in this implementation
|
||||
let videos: std::result::Result<Vec<VideoItem>, Error> = match query {
|
||||
Some(q) => self.query(cache, page.parse::<u8>().unwrap_or(1), &q).await,
|
||||
None => {
|
||||
self.get(cache, page.parse::<u8>().unwrap_or(1), category)
|
||||
self.get(cache, page.parse::<u8>().unwrap_or(1), category, sort)
|
||||
.await
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user