From 8ecbd779d07c9adf47f7e91973c5a778d3dc5876 Mon Sep 17 00:00:00 2001 From: Mercier Pierre-Olivier Date: Sat, 21 Sep 2013 16:16:34 +0200 Subject: [PATCH] Integrate final grade into grade.xml --- ACU/Grading.pm | 7 +------ process/files/intradata_get.pl | 16 +++++++++------- 2 files changed, 10 insertions(+), 13 deletions(-) diff --git a/ACU/Grading.pm b/ACU/Grading.pm index 9844adb..5623401 100644 --- a/ACU/Grading.pm +++ b/ACU/Grading.pm @@ -161,16 +161,11 @@ sub computeXML ($;$) my $doc = XML::LibXML::Document->new('1.0'); my $root = $doc->createElement("grading"); - my $final = $doc->createElement("grade"); for my $grade (@{ $self->{tree} }) { - my $tmp = $grade->compute($self->{operators}, $self->{ids}, $doc, $final); + my $tmp = $grade->compute($self->{operators}, $self->{ids}, $doc, $root); } - $final->addChild( $doc->createAttribute("value", $self->compute()) ); - $final->addChild( $doc->createAttribute("name", "Note finale") ); - - $root->appendChild( $final ); $root->addChild( $doc->createAttribute("max", $self->{max}) ); $doc->setDocumentElement( $root ); diff --git a/process/files/intradata_get.pl b/process/files/intradata_get.pl index f00e27b..ac7bae7 100644 --- a/process/files/intradata_get.pl +++ b/process/files/intradata_get.pl @@ -3,6 +3,7 @@ use v5.10.1; use strict; use warnings; +use Carp; use Pod::Usage; use lib "../../"; @@ -76,13 +77,14 @@ sub grades_generate } else { - opendir(my $dh, "$basedir/$year/$project_id/traces/") or croak "can't opendir $some_dir: $!"; + opendir(my $dh, "$basedir/$year/$project_id/traces/") or croak "can't opendir $basedir/$year/$project_id/traces/: $!"; for my $dir (grep { ( ! /^\./ ) && -d "$basedir/$year/$project_id/traces/$_" } readdir($dh)) { - opendir(my $dhm, "$basedir/$year/$project_id/traces/$dir") or croak "can't opendir $some_dir: $!"; + opendir(my $dhm, "$basedir/$year/$project_id/traces/$dir") or croak "can't opendir $basedir/$year/$project_id/traces/$dir: $!"; for my $login (grep { ( ! /^\./ ) && -f "$basedir/$year/$project_id/traces/$dir/$_" } readdir($dhm)) { + $login = s/\.xml$//; if (! grep { /^\Q$login\E$/ } @logins) { push @logins, $login; } @@ -105,13 +107,13 @@ sub grades_generate return "Invalid grading.xml received!"; } - my $grading = Grading->new($grading); + $grading = Grading->new($grading); - opendir(my $dh, "$basedir/$year/$project_id/traces/") or croak "can't opendir $some_dir: $!"; - @trace_dirs = grep { ( ! /^\./ ) && -d "$basedir/$year/$project_id/traces/$_" } readdir($dh); + opendir(my $dh, "$basedir/$year/$project_id/traces/") or croak "can't opendir $basedir/$year/$project_id/traces/: $!"; + my @trace_dirs = grep { ( ! /^\./ ) && -d "$basedir/$year/$project_id/traces/$_" } readdir($dh); closedir $dh; - for my $login (@login) + for my $login (@logins) { for my $dir (@trace_dirs) { @@ -128,7 +130,7 @@ sub grades_generate open my $xmlgrade, ">", "$basedir/$year/$project_id/grades/$login.xml" or croak "grades/$login.xml"; binmode $xmlgrade; - print $xmlgrade $grade->computeXML($login); + print $xmlgrade $grading->computeXML($login); close $xmlgrade; }