-
Notifications
You must be signed in to change notification settings - Fork 2
/
telvira
executable file
·73 lines (69 loc) · 2.24 KB
/
telvira
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#!/bin/bash
# kötelező utility-k telepítése ha nincsenek már telepítve
if ! which http > /dev/null; then
echo -e "Httpie must be installed! Install? (y/n) \c"
read REPLY
if [[ $REPLY == "y" ]]; then
sudo apt-get install -y httpie
fi
fi
if ! which jq > /dev/null; then
echo -e "jq must be installed! Install? (y/n) \c"
read REPLY
if [[ $REPLY == "y" ]]; then
sudo apt-get install -y jq
fi
fi
echo "Üdv a Telvirában!"
cmd="search"
while [[ $cmd != "exit" ]]; do
#switch case három funkcióra search, buy, more
case $cmd in
"search" )
echo "Add meg a kiinduálsi és cél állomást, ha szertnél több paramétert meg adni akkor írd hozzá hogy details(pl.: Győr Sopron details)"
read dep arr done
if [[ $done == "details" ]]; then
echo "Add meg az utazás dátumát:"
read d
echo "Szeretnél átszállások nélkül keresni?(true-false)"
read transfer
echo "Add meg milyen kedvezményeket szertnél igénybe venni:"
read tictype
fi
if [ -z "$d" ]
then
ftime=$(date +"%H:%M")
else
ftime=""
fi
telelvira=$(tempfile)
#API kérés, majd a választ egy .json fáljban mentem
http "http://apiv2.oroszi.net/elvira?from=${dep}&to=${arr}&date=${d}&fromtime=${ftime}&wotransfer=${transfer}&type=${tictype}" > televira
echo Ind.$'\t'Érk.$'\t'Átsz.$'\t'Ut. idő$'\t'Táv$'\t'2.osztály$'\t'1.osztály
jq -j '.timetable[] | .starttime,"\t", .destinationtime,"\t", .change ,"\t", .totaltime,"\t", .distance ,"\t",.cost2nd,"\t", .cost1st, "\n"' televira
;;
*"more"*)
cim=( $cmd )
search=${cim[1]}
echo Ind/Érk$'\t'Vágány$'\t'Állmás$'\t'$'\t'$'\t'Vonatinfo
jq -j '.timetable[] | select(.starttime | contains("'$search'")) | .details[] |.dep,"\t",.platform,"\t",.from,"\t","\t","\t",.train_info.info,"\n"' televira
;;
*"buy"*)
cim=( $cmd )
search=${cim[1]}
browse=$(tempfile)
cat|jq -j '.timetable[] | select(.starttime | contains("'$search'")) | .ticketinfo.full_url' televira > browse
if [[ -s $"browse" ]]; then
firefox $(cat browse)
else
echo Nincs ilyen vonat!
fi
;;
esac
read cmd
done
rm televira
FILE=browse
if [[ -f "$FILE" ]]; then
rm browse
fi