summaryrefslogtreecommitdiff
path: root/scripts/dvdarchive.sh
blob: 70770ce217ecacb6a5016e5127f4f5d7dc8c30dd (plain)
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
#!/bin/bash

MOUNTCMD="/usr/bin/sudo /bin/mount"
UMOUNTCMD="/usr/bin/sudo /bin/umount"
MOUNTPOINT="/media/cdrom" # no trailing '/'!

PATH="$2"
NAME="$3"

case "$1" in
mount)
	# mount dvd
	$MOUNTCMD "$MOUNTPOINT"
	if [ $? -eq 0 ]
	then
		DIR="$(/usr/bin/find "${MOUNTPOINT}/" -name "$NAME")"
		# link vdr files
		/bin/cp -s "${DIR}/index.vdr" "${PATH}/"
		/bin/cp -s "${DIR}/"???.vdr "${PATH}/"
		if [ $? -ne 0 ]
		then
			$UMOUNTCMD "$MOUNTPOINT"
			# unlink broken links
			for LINK in "${PATH}/"*.vdr; do
				if [ -L "$LINK" -a ! -s "$LINK" ]; then
					/bin/rm "$LINK"
				fi
			done
			exit 2
		fi
        else
		exit 1
        fi
	;;
umount)
	$MOUNTCMD | /bin/grep "$MOUNTPOINT" > /dev/null
	if [ $? -eq 0 ]
	then
		# umount dvd
		$UMOUNTCMD "$MOUNTPOINT"
		# unlink broken links
		for LINK in "${PATH}/"*.vdr; do
			if [ -L "$LINK" -a ! -s "$LINK" ]; then
				/bin/rm "$LINK"
			fi
		done
	fi
	;;
esac