X-Git-Url: http://git.euphorik.ch/?a=blobdiff_plain;f=src%2Ffilms.rb;h=be1ebf959788636ce2846bda3c4505de2fd0c6c8;hb=339621e8669fbd4b09e2d0825f5521469503837b;hp=7d9c17ed9fea5395f626b7d35df1e3d11f0601be;hpb=c3b0deb3d8c9f439739c79806e915c29bc1d4b84;p=pompage.git diff --git a/src/films.rb b/src/films.rb index 7d9c17e..be1ebf9 100644 --- a/src/films.rb +++ b/src/films.rb @@ -103,6 +103,22 @@ class Films Dir::chdir(repPrecedant) end + # Mise à jour des films dans la BD. + # p1 string : un motif Regex correspondant à un ou plusieurs champs + def update(champ, titre) + @films.each{|t, f| + next if !f.titre.match(Regexp::new(titre, true)) + + ## si le film est complet on ne fait rien + if $force || f.url == nil || f.titre == '' || f.annee == nil || + f.realisateurs.empty? || f.acteurs.empty? || f.pays.empty? || + f.genres.empty? || f.synopsis == nil || !f.possedeImage? + + f.update(champ) + end + } + end + # Sauve les films dans un fichier XML def sauverFilms # le document @@ -171,6 +187,9 @@ class Films acteurs.each{|e| film.acteurs << Personne::ajouter(e.get_text.value) } + realisateurs.each{|e| + film.realisateurs << Personne::ajouter(e.get_text.value) + } pays.each{|e| film.pays << Pays::ajouter(e.get_text.value) } @@ -179,14 +198,15 @@ class Films film.critiqueSpectateur = critiqueSpectateur.value unless critiqueSpectateur.nil? genres.each{|e| film.genres << Genre::ajouter(e.get_text.value) if e.get_text != nil - } + } debut = true film.synopsis = "" synopsis.each{|e| film.synopsis += "\n" unless debut film.synopsis += e.get_text.value if e.get_text != nil debut = false - } + } + film.synopsis = nil if film.synopsis == "" film.budget = budget.value unless budget.nil? @films[film.titre] = film } @@ -213,14 +233,14 @@ class Films if @films.has_key?(film.titre) if !@filmsFichier.has_key?(film.fichiers[0]) - puts "[i] movie #{film.titre} has a another file part : #{film.fichiers[0]}" + puts "[i] Le film #{film.titre} possède une autre partie : #{film.fichiers[0]}" @films[film.titre].addFichier(film.fichiers[0]) @filmsFichier[film.fichiers[0]] = @films[film.titre] else - puts "[!] Duplicate movie : #{film.titre} (#{film.fichiers[0]})" + puts "[!] Film déjà dans la BD : #{film.titre} (#{film.fichiers[0]})" end else - puts "[i] movie added : #{film.titre} (#{film.fichiers[0]})" + puts "[i] Film ajouté : #{film.titre} (#{film.fichiers[0]})" @films[film.titre] = film @filmsFichier[film.fichiers[0]] = film end @@ -246,7 +266,7 @@ class Films # on skip si le film est déjà dans la BD if film = @filmsFichier[fichier] - puts "[i] Already exists in DB : #{film.titre} (#{fichier})" + puts "[!] Film déjà dans la BD : #{film.titre} (#{film.fichiers[0]})" next end