bashtube/webroot/search.shs
2021-01-28 22:56:24 +01:00

36 lines
1 KiB
Bash
Executable file

#!/bin/bash
meta[title]="youtube but not really"
source templates/head.sh
echo "<form action='${r[url]}/search.shs'>
<input name='q' type='text'>
<input type='submit' value='Search'>
</form>
"
if [[ ${get_data[q]} ]]; then
query=${get_data[q]}
query_nice=$(echo ${get_data[q]} | sed -s 's/+/ /g')
echo "<p>Searching for '$query_nice'</p>"
data=$(haruhi-dl "ytsearch30:${get_data[q]}" --flat-playlist -J | jq '.entries[]')
IFS=$'\n'
id=($(jq -r '.id' <<< "$data"))
title=($(jq -r '.title' <<< "$data"))
runtime=($(jq -r '.duration' <<< "$data"))
views=($(jq -r '.view_count' <<< "$data"))
channel=($(jq -r '.channel' <<< "$data"))
channel_id=($(jq -r '.channel_id' <<< "$data"))
unset IFS
for (( i=0; i<${#id[@]}; i++ )); do
echo "<a href='/watch.shs?v=${id[$i]}'><img src='https://i.ytimg.com/vi/${id[$i]}/mqdefault.jpg'><br>${title[$i]}</a> | ${runtime[$i]} seconds | ${views[$i]} views<br>Uploaded by <a href='/channel.shs?id=${channel_id[$i]}'>${channel[$i]}</a><br>"
done
else
echo "search for something will 'ya?"
fi