#!/bin/bash
########################################################################
#Script permettant de fabriquer un fichier PDF a partir d'un MIDI
#Nom du script: MIDI_vers_PDF
#Auteur: gepeto@du-libre.org
#Licence: GPL v3
########################################################################
version="v1.0"
set -x
IFS="
"


	# On s'assure que 'musescore' est bien installé
	musescore_exists=`which musescore | grep -c "musescore"`

	# On affiche une erreur si 'musescore' n'est pas installé
	# On tente une installation automatique de 'musescore'
	if [ $musescore_exists -eq 0 ]; then
	musescor_erre=`zenity --error --title="Erreur - Outil de conversion manquant !" --text="Vous devez installer le paquet musescore afin d'utiliser ce script.\n\nTentative d'installation automatique amorcée."`;
	install_musescore=`gksudo apt-get install musescore | zenity --progress --pulsate --title "Installation de pstotext" --text "Installation en cours..." --auto-close`;
	fi

	# On s'assure que l'installation automatique de 'musescore' a réussi
	musescore_exists=`which musescore | grep -c "musescore"`
	
	# Si ce n'est pas le cas, on affiche une erreur et on quitte
	if [ $musescore_exists -eq 0 ]; then
		zenity --error --title="Erreur détectée !" --text="ERREUR: La tentative d'installation automatique a échouée. Veuillez installer musescore manuellement, à partir de votre terminal: sudo apt-get install musescore";
		exit;
	fi


	# On s'assure qu'un fichier est seléctionné
	FIFI="$1"
	mime=`file -bi "$FIFI"`;
	correct_format="0";

	# On s'assure que ce fichier est dans le bon format; pdf
	if echo "$1" | grep -q -e '.mid' -e 'MID' -e 'midi' -e 'MIDI'; then
		echo "File is in .mid Format"
		format_type="mid"
		correct_format="1"
	elif [ $1 -eq 0 ]; then
		zenity --error --title="Erreur" --text="Vous devez sélectionner un fichier MIDI.."
		exit 1
	elif [ $correct_format -eq 0 ]; then
		zenity --error --title="Erreur - Format non supporté -" --text="Sélectionnez un fichier MIDIvalide."
		exit 1
	else
		zenity --error --title="Erreur" --text="Erreur inconnue. Réessayez !"
		exit 1
	fi

	# Si le format du fichier est correct, on affiche la compression
	if [ $correct_format -eq "1" ]; then
file="$1"
conversion=`musescore -o "${file%.*}.pdf" "$1"`
	# On affiche une notification
	notify-send "MIDI vers PDF" "Conversion de $1 en ${file%.*}.pdf réussie !";

fi

