1#!/bin/sh
2GREEN_DOWNLOAD_QUEUEN_BT="/tmp/admin_home/.mldonkey/queuen_bt.file"
3GREEN_DOWNLOAD_CHECK_FILE="/tmp/admin_home/.mldonkey/green_download_check_file"
4TRANS_REMOTE="/usr/bin/transmission-remote"
5TORRENT_DIR="/tmp/admin_home/.mldonkey"
6QUEUEN_FILE=$GREEN_DOWNLOAD_QUEUEN_BT
7ret=0
8let "ln=0"
9config unset add_suc
10
11mem_full=0
12check_mem()
13{
14	/usr/sbin/dni_dcheck /tmp/admin_home/.mldonkey/$1 1>/dev/null 2>$GREEN_DOWNLOAD_CHECK_FILE
15	grep "overall_size_bigger_than_usb:1" $GREEN_DOWNLOAD_CHECK_FILE && mem_full=1
16}
17
18auto_process()
19{
20	if [ "x$1" = "xqueuen" ] ; then
21		sed -i ''$ln's/^queuen/adding/' $QUEUEN_FILE
22		check_mem $3
23		if [ $mem_full = 0 ] ; then
24			$TRANS_REMOTE -a $TORRENT_DIR/$3 | grep success && ret=1 && rm $TORRENT_DIR/$3 && return
25		else
26			sed -i ''$ln's/^adding/mem-full/' $QUEUEN_FILE
27			return
28		fi
29	else
30		echo "TRANSBT ignore this task.."
31		return
32	fi
33
34	echo transbt add task failed...
35	sed -i ''$ln's/^adding/ERROR/' $QUEUEN_FILE
36}
37
38[ -f $QUEUEN_FILE ] || exit 0
39
40cat $QUEUEN_FILE | while read line
41do
42	let "ln=$ln + 1"
43	if [ "x$line" != "x" ] ;then
44		if [ "x$2" = "xauto" ]; then
45			auto_process $line
46			[ $ret = 1 ] && sed -i ''$ln'd' $QUEUEN_FILE && break
47			continue
48		fi
49	fi
50done
51