+# Met à disposition plusieurs outils (classes), tel que :\r
+# - Vérification du code javascript\r
+# - Mise à jour du numéro de version à partir du fichier VERSION\r
+# - Mise en production et en preproduction\r
+# tools.rb peut s'utiliser à la ligne de commande, exemples :\r
+# * Mise en production :\r
+# ./tools.rb --doprod gburri@euphorik.ch:/var/www/euphorik\r
+# * Mise en préproduction, l'emplacement de production peut être indiqué pour copier la base\r
+# ./tools.rb --dopreprod gburri@euphorik.ch:/var/www/euphorik_preprod --prod gburri@euphorik.ch:/var/www/euphorik\r
+\r
+# Classe permettant la vérification du code JS pas jslint.\r
+# Passe en revu chaque fichier js de manière récursive à partir d'un dossier de départ.s\r
+class VerifJS \r
+ \r
+ def initialize(dossier)\r
+ @dossier = dossier\r
+ end\r
+ \r
+ def verifier\r
+ verifierRecu(@dossier)\r
+ end\r
+ \r
+ def verifierRecu(dossier)\r
+ Dir.foreach(dossier){|fichier|\r
+ if fichier != '.' and fichier != '..' and File.directory?(fichier) and fichier != 'dirs'\r
+ if not verifierRecu(dossier + '/' + fichier)\r
+ return false\r
+ end\r
+ elsif fichier[-3, 3] == '.js'\r
+ puts "== Vérification de #{dossier}/#{fichier} =="\r
+ system("java org.mozilla.javascript.tools.shell.Main jslint.js #{dossier}/#{fichier}")\r
+ puts $?.exitstatus\r
+ if $?.exitstatus > 0\r
+ return false\r
+ end\r
+ end\r
+ }\r
+ return true\r
+ end\r
+end