diff --git a/ACU/API/Base.pm b/ACU/API/Base.pm index 2d9c632..c00643c 100644 --- a/ACU/API/Base.pm +++ b/ACU/API/Base.pm @@ -249,8 +249,7 @@ sub new ($$) my $class = shift; my $self = { parsed => shift, - inStd => 0, - inResult => 0, + savValue => 0, lastGroup => {}, values => "" }; @@ -264,14 +263,10 @@ sub start_element { my ($self, $element) = @_; - if ($element->{Name} eq "result") { - $self->{parsed}{result} = $self->{values}; - $self->{inResult} = 0; - $self->{values} = ""; - } - elsif ($element->{Name} eq "student") + if ($element->{Name} eq "student") { - $self->{inStd} = 1; + $self->{values} = ""; + $self->{savValue} = 1; push @{ $self->{lastGroup}{stds} }, { id => $element->{Attributes}{"{}id"}{Value}, chief => $element->{Attributes}{"{}chief"}{Value}, @@ -283,13 +278,18 @@ sub start_element $self->{lastGroup}{id} = $element->{Attributes}{"{}id"}{Value}; $self->{lastGroup}{stds} = []; } + elsif ($element->{Name} eq "result") + { + $self->{values} = ""; + $self->{savValue} = 1; + } } sub characters { my ($self, $characters) = @_; - if ($self->{inStd}) { + if ($self->{savValue}) { $self->{values} .= $characters->{Data}; } } @@ -298,13 +298,16 @@ sub end_element { my ($self, $element) = @_; - if ($element->{Name} eq "group") + if ($element->{Name} eq "result") + { + $self->{parsed}{result} = $self->{values}; + $self->{savValue} = 0; + } + elsif ($element->{Name} eq "group") { push @{ $self->{parsed}{groups} }, $self->{lastGroup}; $self->{lastGroup} = {}; - - $self->{inStd} = 0; - $self->{values} = ""; + $self->{savValue} = 0; } elsif ($element->{Name} eq "student") { diff --git a/ACU/API/Projects.pm b/ACU/API/Projects.pm index 5f1a2c5..eb39572 100644 --- a/ACU/API/Projects.pm +++ b/ACU/API/Projects.pm @@ -90,10 +90,9 @@ sub get_groups($;$) my $res = API::Base::get('ProjectGroupHandler', $url); - #TODO: uncomment-me - #if ($res->{result} ne '0') { -# croak "Erreur durant la récupération : " . $res->{message}; - #} + if ($res->{result} ne '0') { + croak "Erreur durant la récupération : " . $res->{message}; + } return $res; } diff --git a/commands/project/gen_git_str.pl b/commands/project/gen_git_str.pl index f49e193..14cffec 100644 --- a/commands/project/gen_git_str.pl +++ b/commands/project/gen_git_str.pl @@ -11,7 +11,6 @@ my $projid = $ARGV[0]; my $year = $ARGV[1] // LDAP::get_year; my $res = API::Projects::get_groups($projid, $year); -my $tag = "rendu-1"; map { my $chief;