# !/bin/bash
# MSChecker by Wynd
#
# Used to check for mobilesubstrate addons

if [ "$(id -u)" != "0" ]; then
	echo "Please run this as root"
	exit 0
fi

if [ "$1" = "" ]; then
	echo "MobileSubstrate Checker by Wynd

To use:
Check: -c [filename] [packagename]
Remove: -r"
	exit 0
fi

if [ ! -d /var/mobile/Library/Wynd ]; then
	mkdir /var/mobile/Library/Wynd
	chmod 0777 /var/mobile/Library/Wynd
fi

if [ ! -d /var/mobile/Library/Wynd/MSCheck ]; then
	mkdir /var/mobile/Library/Wynd/MSCheck
	chmod 0777 /var/mobile/Library/Wynd/MSCheck
fi

if [ "$1" == "!" ]; then
	filename="$2"
	if [ ! -e /var/mobile/Library/Wynd/MSCheck/remove.sh ]; then
		echo "# !/bin/bash" > /var/mobile/Library/Wynd/MSCheck/remove.sh
	else
		if ! grep -q "# !/bin/bash" /var/mobile/Library/Wynd/MSCheck/remove.sh; then
			echo "# !/bin/bash" > /var/mobile/Library/Wynd/MSCheck/remove.sh
		fi
	fi
	echo "Checking for $filename"
	if [ -f /Library/MobileSubstrate/DynamicLibraries/${filename}.disabled ]; then
		echo "MobileSusbstrate exists"
		exit 0
	fi
	if [ -f /Library/MobileSubstrate/DynamicLibraries/${filename}.dylib ]; then
		echo "MobileSusbstrate exists, but is enabled"
		mv /Library/MobileSubstrate/DynamicLibraries/${filename}.dylib /Library/MobileSubstrate/DynamicLibraries/${filename}.disabled
		echo "mv /Library/MobileSubstrate/DynamicLibraries/${filename}.disabled /Library/MobileSubstrate/DynamicLibraries/${filename}.dylib
" >> /var/mobile/Library/Wynd/MSCheck/remove.sh
		exit 0
	fi
fi
if [ "$1" == "-c" ]; then
	filename="$2"
	packagename="$3"
	if [ ! -e /var/mobile/Library/Wynd/MSCheck/remove.sh ]; then
		echo "# !/bin/bash" > /var/mobile/Library/Wynd/MSCheck/remove.sh
	else
		if ! grep -q "# !/bin/bash" /var/mobile/Library/Wynd/MSCheck/remove.sh; then
			echo "# !/bin/bash" > /var/mobile/Library/Wynd/MSCheck/remove.sh
		fi
	fi
	echo "Checking for $filename in $packagename"
	if [ -f /Library/MobileSubstrate/DynamicLibraries/${filename}.dylib ]; then
		echo "MobileSusbstrate exists"
		exit 0
	fi
	if [ -f /Library/MobileSubstrate/DynamicLibraries/${filename}.disabled ]; then
		echo "MobileSusbstrate exists, but is disabled"
		mv /Library/MobileSubstrate/DynamicLibraries/${filename}.disabled /Library/MobileSubstrate/DynamicLibraries/${filename}.dylib
		echo "mv /Library/MobileSubstrate/DynamicLibraries/${filename}.dylib /Library/MobileSubstrate/DynamicLibraries/${filename}.disabled
" >> /var/mobile/Library/Wynd/MSCheck/remove.sh
		exit 0
	fi
	if [ ! -f /Library/MobileSubstrate/DynamicLibraries/${filename}.dylib ]; then
		if [ ! -f /usr/bin/apt-get ]; then
			echo "Please install APT 0.7 Strict from Cydia"
			exit 0
		fi
		if [ "$packagename" == "" ]; then
			echo "PackageName not entered, unable to retrieve"
			exit 0
		fi
		killall Cydia_
		apt-get install --force-yes -qq "$packagename"
		echo "apt-get remove --force-yes -qq $packagename
" >> /var/mobile/Library/Wynd/MSCheck/remove.sh
	fi
	exit 0
fi

if [ "$1" == "-r" ]; then
	if [ ! -e /var/mobile/Library/Wynd/MSCheck/remove.sh ]; then
		echo "Nothing to remove"
		exit 0
	fi
	chmod 0755 /var/mobile/Library/Wynd/MSCheck/remove.sh
	/var/mobile/Library/Wynd/MSCheck/remove.sh
	rm -rf /var/mobile/Library/Wynd/MSCheck/remove.sh
fi