Fix API::Projects::get_groups
This commit is contained in:
parent
ce15c69841
commit
37dde8ce57
3 changed files with 20 additions and 19 deletions
|
|
@ -249,8 +249,7 @@ sub new ($$)
|
||||||
my $class = shift;
|
my $class = shift;
|
||||||
my $self = {
|
my $self = {
|
||||||
parsed => shift,
|
parsed => shift,
|
||||||
inStd => 0,
|
savValue => 0,
|
||||||
inResult => 0,
|
|
||||||
lastGroup => {},
|
lastGroup => {},
|
||||||
values => ""
|
values => ""
|
||||||
};
|
};
|
||||||
|
|
@ -264,14 +263,10 @@ sub start_element
|
||||||
{
|
{
|
||||||
my ($self, $element) = @_;
|
my ($self, $element) = @_;
|
||||||
|
|
||||||
if ($element->{Name} eq "result") {
|
if ($element->{Name} eq "student")
|
||||||
$self->{parsed}{result} = $self->{values};
|
|
||||||
$self->{inResult} = 0;
|
|
||||||
$self->{values} = "";
|
|
||||||
}
|
|
||||||
elsif ($element->{Name} eq "student")
|
|
||||||
{
|
{
|
||||||
$self->{inStd} = 1;
|
$self->{values} = "";
|
||||||
|
$self->{savValue} = 1;
|
||||||
push @{ $self->{lastGroup}{stds} }, {
|
push @{ $self->{lastGroup}{stds} }, {
|
||||||
id => $element->{Attributes}{"{}id"}{Value},
|
id => $element->{Attributes}{"{}id"}{Value},
|
||||||
chief => $element->{Attributes}{"{}chief"}{Value},
|
chief => $element->{Attributes}{"{}chief"}{Value},
|
||||||
|
|
@ -283,13 +278,18 @@ sub start_element
|
||||||
$self->{lastGroup}{id} = $element->{Attributes}{"{}id"}{Value};
|
$self->{lastGroup}{id} = $element->{Attributes}{"{}id"}{Value};
|
||||||
$self->{lastGroup}{stds} = [];
|
$self->{lastGroup}{stds} = [];
|
||||||
}
|
}
|
||||||
|
elsif ($element->{Name} eq "result")
|
||||||
|
{
|
||||||
|
$self->{values} = "";
|
||||||
|
$self->{savValue} = 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sub characters
|
sub characters
|
||||||
{
|
{
|
||||||
my ($self, $characters) = @_;
|
my ($self, $characters) = @_;
|
||||||
|
|
||||||
if ($self->{inStd}) {
|
if ($self->{savValue}) {
|
||||||
$self->{values} .= $characters->{Data};
|
$self->{values} .= $characters->{Data};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -298,13 +298,16 @@ sub end_element
|
||||||
{
|
{
|
||||||
my ($self, $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};
|
push @{ $self->{parsed}{groups} }, $self->{lastGroup};
|
||||||
$self->{lastGroup} = {};
|
$self->{lastGroup} = {};
|
||||||
|
$self->{savValue} = 0;
|
||||||
$self->{inStd} = 0;
|
|
||||||
$self->{values} = "";
|
|
||||||
}
|
}
|
||||||
elsif ($element->{Name} eq "student")
|
elsif ($element->{Name} eq "student")
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -90,10 +90,9 @@ sub get_groups($;$)
|
||||||
|
|
||||||
my $res = API::Base::get('ProjectGroupHandler', $url);
|
my $res = API::Base::get('ProjectGroupHandler', $url);
|
||||||
|
|
||||||
#TODO: uncomment-me
|
if ($res->{result} ne '0') {
|
||||||
#if ($res->{result} ne '0') {
|
croak "Erreur durant la récupération : " . $res->{message};
|
||||||
# croak "Erreur durant la récupération : " . $res->{message};
|
}
|
||||||
#}
|
|
||||||
|
|
||||||
return $res;
|
return $res;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,6 @@ my $projid = $ARGV[0];
|
||||||
my $year = $ARGV[1] // LDAP::get_year;
|
my $year = $ARGV[1] // LDAP::get_year;
|
||||||
|
|
||||||
my $res = API::Projects::get_groups($projid, $year);
|
my $res = API::Projects::get_groups($projid, $year);
|
||||||
my $tag = "rendu-1";
|
|
||||||
|
|
||||||
map {
|
map {
|
||||||
my $chief;
|
my $chief;
|
||||||
|
|
|
||||||
Reference in a new issue