From 33222d78c5d6977567739aa5a4a6a07dd2cae358 Mon Sep 17 00:00:00 2001 From: Mercier Pierre-Olivier Date: Thu, 12 Dec 2013 05:42:57 +0100 Subject: [PATCH] Fix defense_id generation --- hooks/subjects.pl | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/hooks/subjects.pl b/hooks/subjects.pl index ba81913..89119a0 100755 --- a/hooks/subjects.pl +++ b/hooks/subjects.pl @@ -97,7 +97,7 @@ sub tag_defense my $path; if ($_[3]) { - if ($_[3] =~ /^(?:defenses\/)?([a-zA-Z0-9_.\/-]+)(?:.xml)?$/) { + if ($_[3] =~ /^(?:defenses\/)?([a-zA-Z0-9_.\/-]+?)(?:.xml)?$/) { $path = "defenses/".$1.".xml"; } else { $path = $_[3]; @@ -119,12 +119,11 @@ sub tag_defense chomp($path); } - my $defense_id; - if ($path =~ /^(?:defenses\/)?([a-zA-Z0-9.\/]+)(?:.xml)?$/) { - $defense_id = $1; - } else { - log ERROR, "Déplacez votre soutenance dans le dossier defenses ou simplifiez le nom du fichier."; - } + log WARN, "Placez votre soutenance dans le dossier defenses/." if ($path !~ /^defenses/); + + my $defense_id = basename($path); + $defense_id =~ s/\.xml$//; + $defense_id =~ s/[^a-zA-Z0-9_.-]/_/g; my $year; if ($_[4])