-# coding: utf-8\r
-# YopYop est un super programme permettant de :\r
-# - Parcourir des dossiers recursivement à la recherche de fichier video\r
-# - Parser les fichiers afin d'en retirer les infos suivantes :\r
-# o le codec video\r
-# o le codec son\r
-# o les pistes audio\r
-# o les sous-titres disponible\r
-# - Les formats supportés :\r
-# o avi\r
-# o ogm\r
-# o mkv\r
-# o rmvb\r
-# - Rechercher chaque film sur le site 'allocine.com' et 'imdb.com' et en pomper un max d'infos\r
-# - Etablir une petit base de données des films au format xml\r
-\r
-require 'films.rb'\r
-require 'film.rb'\r
-\r
-require 'images.rb'\r
-\r
-# vérifie les arguments donnés\r
-$xmlFile = nil\r
-$repBase = Dir::getwd\r
-$repFilms = '.'\r
-$repAffichette = '../img/affichette/'\r
-$force = false\r
-mod = 'Allocine'\r
-purgeImages = false\r
-update = nil\r
-titre = ".*"\r
-\r
-aPrec = ''\r
-$*.each{|a|\r
- case a\r
- when '-p'\r
- purgeImages = true\r
- next\r
- when '-f'\r
- $force = true\r
- next\r
- end\r
- case aPrec\r
- when '-x'\r
- $xmlFile = a\r
- when '-d'\r
- $repFilms = a\r
- when '-m'\r
- mod = a\r
- when '-a'\r
- $repAffichette = a\r
- when '-u'\r
- update = a\r
- when '-t'\r
- titre = a\r
- end \r
- aPrec = a\r
-}\r
-\r
-if $xmlFile.nil?\r
- puts USAGE\r
- exit 0\r
-end\r
-\r
-unless File::directory?($repFilms)\r
- puts "'#{$repFilms}' is not a valid directory"\r
- exit 1\r
-end\r
-\r
-begin\r
- require "modules/#{mod}"\r
-rescue\r
- puts "Le module '#{mode}' n'existe pas. Les modules se trouvent dans le dossier 'src/modules'"\r
- puts USAGE\r
- exit 1\r
-end\r
-\r
-# charge les films à partir du fichier xml\r
-films = Films::new($xmlFile, Module.class_eval(mod))\r
-\r
-if purgeImages\r
- Images.nettoyer(films, $repAffichette)\r
-else\r
- if update == nil\r
- # parcours le dossier donné et recherche les infos sur le net\r
- films.pomper($repFilms)\r
- else\r
- films.update(update, titre)\r
- end\r
- \r
- # écrit le fichier XML\r
- films.sauverFilms()\r
-end\r
+#! /usr/bin/ruby
+# coding: utf-8
+# YopYop est un super programme permettant de :
+# - Parcourir des dossiers recursivement à la recherche de fichiers videos
+# - Parser les fichiers afin d'en retirer les infos suivantes : (pas encore implémenté)
+# o le codec video
+# o le codec son
+# o les pistes audio
+# o les sous-titres disponible
+# - Les formats supportés :
+# o avi
+# o ogm
+# o mkv
+# o rmvb
+# - Rechercher chaque film sur le site 'allocine.com' et 'imdb.com' et en pomper un max d'infos
+# - Etablir une petit base de données des films au format xml
+
+require 'films.rb'
+require 'film.rb'
+
+require 'images.rb'
+
+# vérifie les arguments donnés
+$xmlFile = nil
+$repBase = Dir::getwd
+$repFilms = '.'
+$repAffichette = '../img/affichette/'
+$force = false
+mod = 'Allocine'
+purgeImages = false
+update = nil
+titre = ".*"
+
+aPrec = ''
+$*.each{|a|
+ case a
+ when '-p'
+ purgeImages = true
+ next
+ when '-f'
+ $force = true
+ next
+ end
+ case aPrec
+ when '-x'
+ $xmlFile = a
+ when '-d'
+ $repFilms = a
+ when '-m'
+ mod = a.capitalize
+ when '-a'
+ $repAffichette = a
+ when '-u'
+ update = a
+ when '-t'
+ titre = a
+ end
+ aPrec = a
+}
+
+if $xmlFile.nil?
+ puts USAGE
+ exit 0
+end
+
+unless File::directory?($repFilms)
+ puts "'#{$repFilms}' is not a valid directory"
+ exit 1
+end
+
+begin
+ require "modules/#{mod.downcase}"
+rescue
+ puts "Le module '#{mod.downcase}' n'existe pas. Les modules se trouvent dans le dossier 'src/modules'"
+ puts USAGE
+ exit 1
+end
+
+# charge les films à partir du fichier xml
+films = Films::new($xmlFile, Module.class_eval(mod))
+
+if purgeImages
+ Images.nettoyer(films, $repAffichette)
+else
+ if update == nil
+ # parcours le dossier donné et recherche les infos sur le net
+ films.pomper($repFilms)
+ else
+ films.update(update, titre)
+ end
+
+ # écrit le fichier XML
+ films.sauverFilms()
+end