-sub parseinputbaskets {
- my $booksellerid = shift;
- my $baskets = &GetBasketsByBookseller($booksellerid);
- for(my $i=0; $i < scalar @$baskets; ++$i) {
- if( @$baskets[$i] && ! @$baskets[$i]->{'closedate'} ) {
- splice(@$baskets, $i, 1);
- --$i;
- }
- }
- foreach my $basket (@$baskets){
-#perl DBI uses value "undef" for the mysql "NULL" value, so i need to check everywhere where $basket->{'basketgroupid'} is used for undef ☹
- $basket->{'basketgroupid'} = $input->param($basket->{'basketno'}.'-group') || undef;
- }
- return $baskets;
-}
-
-
-
-sub parseinputbasketgroups {
- my $booksellerid = shift;
- my $baskets = shift;
- my $basketgroups = &GetBasketgroups($booksellerid);
- my $newbasketgroups;
- foreach my $basket (@$baskets){
- my $basketgroup;
- my $i = 0;
- my $exists;
- if(! $basket->{'basketgroupid'} || $basket->{'basketgroupid'} == 0){
- $exists = "true";
- } else {
- foreach my $basketgroup (@$basketgroups){
- if($basket->{'basketgroupid'} == $basketgroup->{'id'}){
- $exists = "true";
- push(@{$basketgroup->{'basketlist'}}, $basket->{'basketno'});
- last;
- }
- }
- }
- if (! $exists){
-#if the basketgroup doesn't exist yet
- $basketgroup = $newbasketgroups->{$basket->{'basketgroupid'}} || undef;
- $basketgroup->{'booksellerid'} = $booksellerid;
- } else {
- while($i < scalar @$basketgroups && @$basketgroups[$i]->{'id'} != $basket->{'basketgroupid'}){
- ++$i;
- }
- $basketgroup = @$basketgroups[$i];
- }
- $basketgroup->{'id'}=$basket->{'basketgroupid'};
- $basketgroup->{'name'}=$input->param('basketgroup-'.$basketgroup->{'id'}.'-name') || "";
- $basketgroup->{'closed'}= $input->param('basketgroup-'.$basketgroup->{'id'}.'-closed');
- push(@{$basketgroup->{'basketlist'}}, $basket->{'basketno'});
- if (! $exists){
- $newbasketgroups->{$basket->{'basketgroupid'}} = $basketgroup;
- } else {
- if($basketgroup->{'id'}){
- @$basketgroups[$i] = $basketgroup;
- }
- }
- }
- return($basketgroups, $newbasketgroups);
-}
-