modified: c/CtrlCheckLinks.rb

new file:   c/CtrlHistoLink.rb
	modified:   c/Main.rb
	modified:   fichier/haut.html
	deleted:    groupe3.html
	modified:   m/ReadFile.rb
	deleted:    m/ReadFolder.rb
	new file:   sauv/aa
	new file:   sauv/ff
	modified:   v/Vue1.rb
	new file:   v/VueHisto.rb
	new file:   v/VueMenu.rb
	modified:   v/VueResult.rb
This commit is contained in:
Quentin
2014-01-17 02:37:20 +01:00
parent e3cd387365
commit 7df4c9c289
13 changed files with 289 additions and 1971 deletions

View File

@ -1,22 +1,23 @@
# Controleur de la vérification de la validité des liens ainsi que les vues correspondantes
class CtrlCheckLinks
def saisie
liste_dir = "../fichier/".liste_rep
#Va checher les fichiers et arborecenses dans le dossier fichier (Méthode dans ReadFolder)
Gtk.init
@v1 = Vue1.new(liste_dir, self)
@v1.getWindow.show_all
#Controleur de la saisie pour vérification de lien
def saisie(type)
@v1 = Vue1.new(self, 'Saisie nom fichier', type) #creation vue principal
@v1.getWindow.show_all # affichage
Gtk.main
return @urls
end
def recupUrls(str)
#Controleur recuperation et verification de liens dans 1 fichiers
def recupUrls(str)
f = ReadFile.new(str)
@urls = f.getUrls
self.vueResult(self.verifLiens(@urls), str)
s = CtrlHistoLink.new #on enregistre dans l'histo le verif du lien
s.sauv(str, @urls)
return @urls
end
def recupUrlsDoss(str)
#Controleur recuperation et verification de liens dans 1 dossier
def recupUrlsDoss(str)
d = Dir.open(str)
liste_exclus = [".", ".."]
liste_dir = d.sort - liste_exclus
@ -24,18 +25,18 @@ class CtrlCheckLinks
if (File.ftype(str + "/" + fichier) == "file")
self.recupUrls(str + "/" + fichier)
end
}
}
end
def destructionFen
#Controleur permettant de detruire la vue principal
def destructionFen
@v1.getWindow.destroy
Gtk.main_quit
end
def verifLiens(urls)
resultats = ""
urls.each { |n|
p = Net::Ping::HTTP.new n , 80
#Controleur de verification de liens
def verifLiens(urls)
resultats = ""
urls.each { |n| # pour chaque urls on realise un ping -> mise des resultats en chaine de caractere
p = Net::Ping::HTTP.new n , 80, 5
if p.ping?
resultats += "#{n} est vivant\n"
else
@ -43,16 +44,13 @@ class CtrlCheckLinks
end
}
return resultats
end
def vueResult(resultats, nom)
#Controleur permettant d'afficher la vue secondaire d'affichage de resultat
def vueResult(resultats, nom)
v = VueResult.new(resultats, nom)
v.getWindow.show_all
Gtk.main
end
end

30
c/CtrlHistoLink.rb Normal file
View File

@ -0,0 +1,30 @@
#Classe permettant de g"rer l'historique de fichier traité
class CtrlHistoLink
#Saisie pour vérification de lien stocké en historique
def saisie
@v = VueHisto.new(self,"Historique") #creation vue
@v.getWindow.show_all # affichage
Gtk.main
return @urls
end
#Sauvegarde les liens dans un fichier pour historique
def sauv(fileName, urls)
fileName = File.basename(fileName)
f = File.new("../sauv/#{fileName}", "w+")
f.write(urls)
f.close
end
#Permet de rejouer les liens d'un fichier
def rejouer(fileName)
r = CtrlCheckLinks.new
@urls = r.recupUrls(fileName)
end
#Controleur permettant de detruire la vue historique
def destructionFen
@v.getWindow.destroy
Gtk.main_quit
end
end

View File

@ -6,15 +6,50 @@ require 'net/ping' #lib netwotk
#include
require './CtrlCheckLinks'
require './CtrlHistoLink'
require '../m/ReadFile'
require '../m/ReadFolder'
require '../v/Vue1'
require '../v/VueResult'
require '../v/VueMenu'
require '../v/VueHisto'
c = CtrlCheckLinks.new
urls = c.saisie
while urls!=nil
c = CtrlCheckLinks.new
urls = c.saisie
#Classe principal du controleur main
class Main
# Controleur du menu de départ
def menu
@v = VueMenu.new(self,"Menu")
@v.getWindow.show_all # affichage
Gtk.main
end
# Controleur historique
def histo
c = CtrlHistoLink.new
urls = c.saisie
end
# Controleur vérification d'un fichier
def newVerifFile
c = CtrlCheckLinks.new
urls = c.saisie(1)
end
# Controleur vérification d'un dossier
def newVerifDossier
c = CtrlCheckLinks.new
urls = c.saisie(0)
end
# Controleur permettant de detruire la vue menu
def destructionMenu
@v.getWindow.destroy
Gtk.main_quit
end
end
c = Main.new
c.menu
print "Termine\n"