fixed bug where you could not watch the last episode

This commit is contained in:
Zastian Pretorius
2022-07-11 16:26:08 +01:00
parent 7c8ec33d05
commit 40e308dab4
4 changed files with 19 additions and 14 deletions

View File

@@ -1,4 +1,4 @@
use crate::{string_input,int_input,u16_input};
use crate::{string_input,int_input};
use crate::{anime_names,anime_ep_range,anime_link};
use crate::open_video;
use crate::main;
@@ -30,9 +30,9 @@ pub fn anime_stream(){
count += 1;
});
let mut anime_num: usize = usize::MAX;
while anime_num == usize::max_value() || anime_num >= anime_list.len() {
while anime_num == usize::max_value() || anime_num > anime_list.len() {
anime_num = int_input("Enter anime number: ");
if anime_num >= anime_list.len() {
if anime_num > anime_list.len() {
println!("Invalid anime number");
}
}
@@ -47,9 +47,9 @@ pub fn anime_stream(){
loop{
println!("select episode 1-{}: ", ep_range);
let mut ep_num: usize = usize::MAX;
while ep_num == usize::max_value() || ep_num >= ep_range as usize {
while ep_num == usize::max_value() || ep_num > ep_range as usize {
ep_num = int_input("Enter episode number: ");
if ep_num >= ep_range as usize {
if ep_num > ep_range as usize {
println!("Invalid episode number");
}
}

View File

@@ -1,7 +1,7 @@
use std::fs::File;
use std::io::Write;
use crate::{search_ln,chapter_selector,get_full_text,open_bat};
pub fn ln(){
pub fn ln_read(){
let ln_url = search_ln();
let mut selected_page = 1;
loop {

View File

@@ -11,8 +11,7 @@ use crate::{
};
pub fn chapter_selector(ln_url: &str, mut selected_page: u32) -> (String, u32) {
let exit = false;
while exit == false {
loop {
let ln_html = ln::scraper::get_html(ln_url);
let ln_id = get_ln_id(&ln_html);
let ln_last_page = get_ln_last_page(&ln_html);
@@ -42,11 +41,17 @@ pub fn chapter_selector(ln_url: &str, mut selected_page: u32) -> (String, u32) {
main();
} else {
let chapter_number = chapter_number.trim().to_string();
let chapter_number = chapter_number.parse::<usize>().unwrap();
let chapter_url = &ln_chapters_urls[chapter_number];
let mut chapter_number_int = 0;
if chapter_number.parse::<u32>().is_ok() {
chapter_number_int = chapter_number.parse::<u32>().unwrap();
} else {
println!("{}", "Invalid chapter number".red());
continue;
}
//let chapter_number = chapter_number.parse::<usize>().unwrap();
let chapter_url = &ln_chapters_urls[chapter_number_int as usize];
let chapter_url = chapter_url.trim().to_string();
return (chapter_url, selected_page);
}
}
("".to_string(), 1)
}

View File

@@ -1,12 +1,12 @@
use crate::anime::anime::anime_stream;
use crate::anime::scraper::{anime_ep_range, anime_link, anime_names};
use crate::ln::ln::ln;
use crate::ln::ln::ln_read;
use crate::ln::menu::chapter_selector;
use crate::ln::open_text::open_bat;
use crate::ln::scraper::get_full_text;
use crate::{
anime::player::open_video,
helpers::take_input::{int_input, string_input, u16_input},
helpers::take_input::{int_input, string_input},
ln::search::search_ln,
};
use colored::Colorize;
@@ -30,7 +30,7 @@ fn main() {
std::process::exit(0);
}
if _arg == "l" {
ln();
ln_read();
} else if _arg == "a" {
anime_stream()
} else {