Diff for /rat/lonratsrv.pm between versions 1.2 and 1.3

version 1.2, 2000/07/04 16:24:17 version 1.3, 2000/07/05 21:05:28
Line 58  sub loadmap { Line 58  sub loadmap {
                 if ($token->[1] eq 'map') {                  if ($token->[1] eq 'map') {
     $graphmode=($token->[2]->{'mode'} eq 'rat/graphical');      $graphmode=($token->[2]->{'mode'} eq 'rat/graphical');
                 } elsif ($token->[1] eq 'resource') {                  } elsif ($token->[1] eq 'resource') {
   # -------------------------------------------------------------------- Resource
                       $outstr.='<&>objcont';
                       if ($token->[2]->{'id'}) {
    $outstr.='<:>'.$token->[2]->{'id'};
                           if ($obj[$token->[2]->{'id'}]==1) {
                              $errtext.='Error: multiple use of ID '.
                                        $token->[2]->{'id'}.'. ';
                           }
                           $obj[$token->[2]->{'id'}]=1; 
                       } else {
                           my $i=1;
                           while (($i<=$#obj) && ($obj[$i]!=0)) { $i++; }
                           $outstr.='<:>'.$i;
                           $obj[$i]=1;
                       }
                       $outstr.='<:>';
                 } elsif ($token->[1] eq 'condition') {                  } elsif ($token->[1] eq 'condition') {
   # ------------------------------------------------------------------- Condition
                       $outstr.='<&>objcont';
                       if ($token->[2]->{'id'}) {
    $outstr.='<:>'.$token->[2]->{'id'};
                           if ($obj[$token->[2]->{'id'}]==1) {
                              $errtext.='Error: multiple use of ID '.
                                        $token->[2]->{'id'}.'. ';
                           }
                           $obj[$token->[2]->{'id'}]=1; 
                       } else {
                           my $i=1;
                           while (($i<=$#obj) && ($obj[$i]!=0)) { $i++; }
                           $outstr.='<:>'.$i;
                           $obj[$i]=1;
                       }
                       $outstr.='<:>';
                 } elsif ($token->[1] eq 'link') {                  } elsif ($token->[1] eq 'link') {
   # ----------------------------------------------------------------------- Links
                     $outstr.='<&>objlinks';                      $outstr.='<&>objlinks';
                     if ($graphmode) {                      if ($graphmode) {
                           if ($token->[2]->{'index'}) {
                              $errtext.='Error: multiple use of link index '.
          $token->[2]->{'index'}.'. ';
  $outstr.='<:>'.$token->[2]->{'index'};   $outstr.='<:>'.$token->[2]->{'index'};
                         @links[$token->[2]->{'index'}]=1;                          $links[$token->[2]->{'index'}]=1;
                     } else {                      } else {
                         my $i=1;                          my $i=1;
                         while (($i<=$#links) && ($links[$i]==1)) { $i++; }                          while (($i<=$#links) && ($links[$i]==1)) { $i++; }
                         $outstr.='<:>'.$i;                          $outstr.='<:>'.$i;
                           $links[$i]=1;
     }      }
                     $outstr.='<:>'.$token->[2]->{'from'}.                      $outstr.='<:>'.$token->[2]->{'from'}.
                              '<:>'.$token->[2]->{'to'};                               '<:>'.$token->[2]->{'to'};
Line 77  sub loadmap { Line 114  sub loadmap {
   $outstr.='<:>0';    $outstr.='<:>0';
                    }                     }
                 } elsif ($graphmode) {                  } elsif ($graphmode) {
   # --------------------------------------------- All other tags (graphical only)
                       $outstr.='<&>'.$token->[1];
                       if ($token->[2]->{'index'}) {
    $outstr.='<:>'.$token->[2]->{'index'};
                           if ($token->[1] eq 'obj') {
       $obj[$token->[2]->{'index'}]=2;
                           }
                       }
                       $outstr.='<:>'.$token->[2]->{'value'};
                 }                  }
             }              }
         }          }
   
     } else {      } else {
         $errtext.='Map not loaded: The file does not exist.';          $errtext.='Map not loaded: The file does not exist. ';
     }      }
     return($outstr,$errtext);      return($outstr,$errtext);
 }  }
Line 165  sub savemap { Line 211  sub savemap {
           my $fh;            my $fh;
           if ($fh=Apache::File->new(">$fn")) {            if ($fh=Apache::File->new(">$fn")) {
              print $fh $outstr;               print $fh $outstr;
              $errtext.="Map saved as $fn.";               $errtext.="Map saved as $fn. ";
   } else {    } else {
              $errtext.='Could not write file $fn. Map not saved.';               $errtext.='Could not write file $fn. Map not saved. ';
   }    }
         }          }
     } else {      } else {
 # -------------------------------------------- Cannot write to that file, error  # -------------------------------------------- Cannot write to that file, error
         $errtext.='Map not saved: The specified path does not exist.';          $errtext.='Map not saved: The specified path does not exist. ';
     }      }
     return $errtext;      return $errtext;
 }  }

Removed from v.1.2  
changed lines
  Added in v.1.3


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>