mediabox view mediabox @ rev 6

Add mediabox cmdline tool and main CGI script
author Christophe Lincoln <pankso@slitaz.org>
date Thu Feb 23 21:48:35 2017 +0100 (2017-02-23)
parents
children
line source
1 #!/bin/sh
2 #
3 # Cmdline tool to run, debug and config CGI/SHell MediaBox
4 #
5 # Copyright (C) 2017 SliTaz GNU/Linux - BSD License
6 #
8 config="$HOME/.config/mediabox"
9 playlists="$config/playlists"
10 #url="http://localhost/cgi-bin/mediabox/index.cgi"
11 url="http://localhost/~pankso/cgi-bin/mediabox/index.cgi"
13 # Internationalization
14 . /usr/bin/gettext.sh
15 export TEXTDOMAIN='mediabox'
17 help() {
18 cat << EOT
19 $(gettext "MediaBox cmdline tool")
21 $(gettext "Usage:") $(basename $0) [file|command] [file]
22 $(gettext "Commands:")
23 add-playlist Add a playlist into MediaBox database
25 $(gettext "Examples:")
26 $(basename $0) path/to/Music/audio.ogg
27 $(basename $0) add-playlist path/to/playlist.m3u
29 EOT
30 }
32 init() {
33 install -m 0777 -d ${config}
34 install -m 0777 -d ${playlists}
35 cat > ${config}/mediabox.conf << EOT
36 # CGI/SHell MediaBox configuration file
38 LOCALE="$(locale | grep LANG= | cut -d "=" -f 2)"
40 MUSIC="$HOME/Music"
41 VIDEOS="$HOME/Videos"
43 EOT
44 echo "favorites.list|Favorites" > ${config}/playlists.list
45 touch ${playlists}/favorites.m3u
46 chmod 0666 \
47 ${config}/mediabox.conf \
48 ${config}/playlists.list \
49 ${playlists}/favorites.m3u
50 }
52 #
53 # Handle commands|files|urls
54 #
55 case "$1" in
57 add-playlist)
58 [ ! -f "$2" ] && help && exit 0
59 file=$(basename "$2")
60 count=$(wc -l "$2" | cut -d ' ' -f 1)
61 gettext "Adding playlist:"; echo -n " "; basename "$2"
62 gettext "Playlist tracks:"; echo " $count"
63 cp -f "$2" ${playlists} || exit 1
64 cat >> ${config}/playlists.list << EOT
65 $file|$(echo ${file%.m3u})
66 EOT
67 ;;
69 *.m3u)
70 tazweb "${url}?playlists&play=$1" & ;;
72 *.avi)
73 tazweb "${url}?videos&play=$1" & ;;
75 *.mp3|*.ogg|*.wav)
76 tazweb "${url}?music&play=$1" & ;;
78 "")
79 [ -f "$config/mediabox.conf" ] || init
80 tazweb --notoolbar "${url}?home=$HOME" & ;;
82 *) help ;;
84 esac && exit 0