upgrades
This commit is contained in:
@@ -883,11 +883,35 @@ impl OmgxxxProvider {
|
||||
) -> Result<Vec<VideoItem>> {
|
||||
let mut search_type = "search";
|
||||
let mut search_string = query.to_string().to_ascii_lowercase().trim().to_string();
|
||||
let trimmed = query.trim().trim_start_matches('@').to_ascii_lowercase();
|
||||
if let Some((kind, raw)) = trimmed.split_once(':') {
|
||||
let candidate = raw.trim().replace(' ', "-");
|
||||
if !candidate.is_empty() {
|
||||
match kind.trim() {
|
||||
"models" | "model" | "stars" => {
|
||||
search_type = "models";
|
||||
search_string = candidate;
|
||||
}
|
||||
"sites" | "site" => {
|
||||
search_type = "sites";
|
||||
search_string = candidate;
|
||||
}
|
||||
"networks" | "network" => {
|
||||
search_type = "networks";
|
||||
search_string = candidate;
|
||||
}
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
}
|
||||
match self.stars.read() {
|
||||
Ok(stars) => {
|
||||
if let Some(star) = stars
|
||||
.iter()
|
||||
.find(|s| s.title.to_ascii_lowercase() == search_string)
|
||||
.find(|s| {
|
||||
s.title.eq_ignore_ascii_case(&search_string)
|
||||
|| s.id.eq_ignore_ascii_case(&search_string)
|
||||
})
|
||||
{
|
||||
search_type = "models";
|
||||
search_string = star.id.clone();
|
||||
@@ -901,7 +925,10 @@ impl OmgxxxProvider {
|
||||
Ok(sites) => {
|
||||
if let Some(site) = sites
|
||||
.iter()
|
||||
.find(|s| s.title.to_ascii_lowercase() == search_string)
|
||||
.find(|s| {
|
||||
s.title.eq_ignore_ascii_case(&search_string)
|
||||
|| s.id.eq_ignore_ascii_case(&search_string)
|
||||
})
|
||||
{
|
||||
search_type = "sites";
|
||||
search_string = site.id.clone();
|
||||
@@ -911,6 +938,23 @@ impl OmgxxxProvider {
|
||||
report_provider_error_background("omgxxx", "query.sites_read", &e.to_string());
|
||||
}
|
||||
}
|
||||
match self.networks.read() {
|
||||
Ok(networks) => {
|
||||
if let Some(network) = networks
|
||||
.iter()
|
||||
.find(|n| {
|
||||
n.title.eq_ignore_ascii_case(&search_string)
|
||||
|| n.id.eq_ignore_ascii_case(&search_string)
|
||||
})
|
||||
{
|
||||
search_type = "networks";
|
||||
search_string = network.id.clone();
|
||||
}
|
||||
}
|
||||
Err(e) => {
|
||||
report_provider_error_background("omgxxx", "query.networks_read", &e.to_string());
|
||||
}
|
||||
}
|
||||
let mut video_url = format!("{}/{}/{}/{}/", self.url, search_type, search_string, page);
|
||||
video_url = video_url.replace(" ", "+");
|
||||
// Check our Video Cache. If the result is younger than 1 hour, we return it.
|
||||
|
||||
Reference in New Issue
Block a user