Compare commits

..

No commits in common. "a726b9d5500b43cdcb58dddc0650814ceb0c8bd3" and "cf5c5dbceed0bc17d321912e1765bdd34fae978c" have entirely different histories.

58
ani-cli
View File

@ -480,26 +480,36 @@ anime_selection() {
# Select anime from query results # Select anime from query results
search_results=$* search_results=$*
if [ "$IS_ROFI" -eq 1 ]; then if [ "$IS_ROFI" -eq 1 ]; then
count=1
menu=() menu=()
res=() res=()
searched=""
cnt=0
# generate inputlist for rofi and indexes of previously searched anime
while read -r anime_id; do while read -r anime_id; do
menu+="$((cnt + 1)). $anime_id\n" menu+="$count. $anime_id\n"
res["$cnt"]="$anime_id" idx=$((count - 1))
lg "ANIME: $anime_id" res["$idx"]="$anime_id"
if ! check_db "$anime_id" "search"; then count=$((count + 1))
lg "$anime_id HAS BEEN SEARCHED BEFORE"
[ -z "$searched" ] && searched="$cnt" || searched="$searched, $cnt"
fi
((++cnt))
done <<- EOF done <<- EOF
$search_results $search_results
EOF EOF
menu+="$((++cnt)). Quit" menu+="$count. Quit"
lg "searched indexes: $searched" searched=""
cnt=0
# Get the comma separated list of indexes of anime that has been searched before
for anime in "${res[@]}"; do
lg "ANIME: $anime"
check_db "$anime" "search"
if [[ $? -gt 0 ]]; then
lg "$anime HAS BEEN SEARCHED BEFORE"
if [ -z "$searched" ]; then
searched="$cnt"
else
searched="$searched, $cnt"
fi
fi
((++cnt))
done
lg "SEARCHED: $searched"
# get the anime from indexed list # get the anime from indexed list
msg="$(generate_span "Query: $query")" msg="$(generate_span "Query: $query")"
@ -541,6 +551,12 @@ anime_selection() {
lg "CHOICE: $choice" lg "CHOICE: $choice"
if [ "$IS_ROFI" -eq 1 ]; then
# check both choice and name are set
if [[ ! "$choice" ]] || [[ ! "$name" ]]; then
die "Invalid choice... committing seppuku"
fi
fi
# Check if input is a number # Check if input is a number
[ "$choice" -eq "$choice" ] 2> /dev/null || die "Invalid number entered" [ "$choice" -eq "$choice" ] 2> /dev/null || die "Invalid number entered"
@ -556,12 +572,13 @@ anime_selection() {
$search_results $search_results
EOF EOF
printf "$c_reset"
[ -z "$name" ] && name="$anime_id" [ -z "$name" ] && name="$anime_id"
[ -z "$selection_id" ] && die "Invalid number entered"
insert_history "$name" "search" & insert_history "$name" "search" &
printf "$c_reset"
[ -z "$selection_id" ] && die "Invalid number entered"
read -r last_ep_number <<- EOF read -r last_ep_number <<- EOF
$(search_eps "$selection_id") $(search_eps "$selection_id")
EOF EOF
@ -575,19 +592,17 @@ episode_selection() {
stmt="SELECT DISTINCT episode_number \ stmt="SELECT DISTINCT episode_number \
FROM watch_history \ FROM watch_history \
WHERE anime_name = '$anime_id';" WHERE anime_name = '$anime_id';"
# hist=$(run_stmt "$stmt") hist=$(run_stmt "$stmt")
# Get Watch History for $anime_id as comma separated list # Get Watch History for $anime_id as comma separated list
watch_history="" watch_history=""
# for i in $hist; do for i in $hist; do
while read -r i; do
if [[ "$watch_history" == "" ]]; then if [[ "$watch_history" == "" ]]; then
watch_history="$((--i))" watch_history="$((--i))"
else else
watch_history="$watch_history, $((--i))" watch_history="$watch_history, $((--i))"
fi fi
done < <(run_stmt "$stmt") done
lg "Episode watch history -> $watch_history"
# get user choice and set the start and end # get user choice and set the start and end
msg=$(printf "%s\n%s" "$(generate_span "Anime Name: $anime_id")" "$(generate_span "Range of episodes can be provided as: START_EPISODE - END_EPISODE")") msg=$(printf "%s\n%s" "$(generate_span "Anime Name: $anime_id")" "$(generate_span "Range of episodes can be provided as: START_EPISODE - END_EPISODE")")
@ -626,6 +641,7 @@ episode_selection() {
ep_choice_end="" ep_choice_end=""
fi fi
printf "$c_reset" printf "$c_reset"
} }
open_episode() { open_episode() {