#!/bin/bash
# Designed to be used with pcmanfm-mod
# http://igurublog.wordpress.com/downloads/mod-pcmanfm/


if [ "$1" = "" ]; then
	echo "Help: Opener accepts one or more files or folders on the command"
	echo "      line and opens them."
	exit
fi

if [ "$(whoami)" = "root" ]; then
    echo "Do not run as root"
    exit
fi

while [ "$1" != "" ]; do
	fitem="$1"
	if [ "${fitem:0:7}" = "http://" ] || \
	   [ "${fitem:0:8}" = "https://" ] || \
	   [ "${fitem:0:6}" = "ftp://" ]; then
		# URL - use your favorite app here
		xdg-open "$fitem" &
	elif [ -e "$fitem" ]; then
		# Determine MIME type of file
		type=`file -L --mime-type "$fitem"`
		type=${type##*: }
		echo "$fitem: $type"
		# Open file based on type
		if [ "${type:0:5}" = "image" ]; then
			# Image - use your favorite app here
			xdg-open "$fitem" &
		elif [ "$type" = "application/x-gzip" ] || \
			 [ "$type" = "application/x-bzip2" ] || \
		     [ "$type" = "application/zip" ]; then
		    # Archive - use your favorite app here
			xdg-open "$fitem" &
		elif [ "$type" = "application/pdf" ]; then
			# PDF - use your favorite app here
			xdg-open "$fitem" &
		elif [ "${type:0:35}" = "application/vnd.oasis.opendocument." ]; then
			# OpenOffice - use your favorite app here
			soffice "$fitem" &
		elif [ "${type:0:5}" = "audio" ]; then
			# Audio - use your favorite app here
			xdg-open "$fitem" &
		elif [ "${type:0:5}" = "video" ]; then
			# Video - use your favorite app here
			xdg-open "$fitem" &
		elif [ "$type" = "text/html" ]; then
			# HTML - use your favorite app here
			xdg-open "$fitem" &
		elif [ "${type:0:4}" = "text" ]; then
			# Text file - use your favorite app here
			xdg-open "$fitem" &
		elif [ "$type" = "application/x-directory" ]; then
			# Open a folder - use your favorite app here
			xdg-open "$fitem" &
		else
			# Unknown type ???
			xdg-open "$fitem" &
		fi
		sleep .4
	fi
	shift
done

exit

