Diff for /rat/lonratedt.pm between versions 1.6 and 1.8

version 1.6, 2002/05/09 21:59:33 version 1.8, 2002/05/10 18:58:04
Line 35  package Apache::lonratedt; Line 35  package Apache::lonratedt;
 use strict;  use strict;
 use Apache::Constants qw(:common);  use Apache::Constants qw(:common);
 use Apache::lonnet;  use Apache::lonnet;
   use Apache::lonratsrv;
   
   my @links=();
   my @resources=();
   
   
   # Mapread read maps into global arrays @links and @resources, determines status
   
   sub mapread {
       my $fn=shift;
   
       undef @links;
       undef @resources;
   
       my ($outtext,$errtext)=&Apache::lonratsrv::loadmap($fn,'');
       if ($errtext) { return ($errtext,2); }
   
       foreach (split(/\<\&\>/,$outtext)) {
    my ($command,$parms)=split(/\<\:\>/,$_);
           my @item=split(/\:/,$parms);
           if ($command eq 'objcont') {
           }
           if ($command eq 'objlinks') {
       if (defined($links[$item[0]])) {
    return
                    ('Map too complex, has branchings. Use advanced editor.',1);
               }
       if ($links[$item[2]]) {
    return
                    ('Map too complex, has conditions. Use advanced editor.',1);
               }
       $links[$item[0]]=$item[1];
    }
   
       }
       return $errtext;
   }
   
 # --------------------------------------------------------- Build up RAT screen  # --------------------------------------------------------- Build up RAT screen
 sub ratedt {  sub ratedt {
Line 57  sub ratedt { Line 94  sub ratedt {
 ENDDOCUMENT  ENDDOCUMENT
 }  }
   
   # ---------------------------------------------------------------- Make buttons
   
   sub buttons {
       my $adv=shift;
       my $output='<form method=post>';     
       if ($adv==1) {
    $output.='<input type=submit name=forceadv value="Edit">';
       } else {
           unless ($adv==2) {
              $output.='<input type=submit name=forcesmp value="Simple Edit">';
           }
    $output.='<input type=submit name=forceadv value="Advanced Edit">';
       }
       return $output.'</form><hr>';
   }
   
 sub smpedt {  sub smpedt {
    my ($r,$fn)=@_;     my ($r,$errtext)=@_;
      my $buttons=&buttons(2);
   # ----------------------------------------------------- Start simple RAT screen
    $r->print(<<ENDSMPHEAD);     $r->print(<<ENDSMPHEAD);
 <html>  <html>
 <head>  <head>
Line 144  function idxcheck(mode) { Line 199  function idxcheck(mode) {
 </script>  </script>
 </head>                   </head>                 
 <body bgcolor='#FFFFFF'>  <body bgcolor='#FFFFFF'>
 <form method=post>  $buttons
 <input type=submit name=forceadv   <font color=red>$errtext</font>
 value="Advanced Map Editing - Graphical Resource Assembly Tool"><hr>  
 This is the future site of the great simple RAT  
 <a href="javascript:groupsearch()">Group Search</a>  <a href="javascript:groupsearch()">Group Search</a>
 <a href="javascript:groupimport()">Group Import</a>  <a href="javascript:groupimport()">Group Import</a>
   
Line 169  sub nodir { Line 222  sub nodir {
 ENDNODIR  ENDNODIR
 }  }
   
   # ---------------------------------------------------------------- View Handler
   
   sub viewmap {
       my ($r,$adv)=@_;
       $r->print('<html><body bgcolor="#FFFFFF">'.&buttons($adv));
   
       $r->print('</body></html>');
   }
   
 # ================================================================ Main Handler  # ================================================================ Main Handler
   
 sub handler {  sub handler {
Line 186  sub handler { Line 248  sub handler {
       &nodir($r,$dir);        &nodir($r,$dir);
       return OK;        return OK;
   }    }
   
   # ------------------------------------------- Determine which tools can be used
   my $adv=0;    my $adv=0;
   
   unless ($ENV{'form.forcesmp'}) {    unless ($ENV{'form.forcesmp'}) {
Line 197  sub handler { Line 261  sub handler {
      }       }
   }    }
   
   if ($adv) {    my $errtext='';
     my $fatal=0;
   
   # -------------------------------------------------------------------- Load map
     ($errtext,$fatal)=&mapread($fn,$errtext);
   
     if ($fatal==1) { $adv=1; }
   
   # ----------------------------------- adv==1 now means "graphical MUST be used"
   
     if ($ENV{'form.forceadv'}) {
       &ratedt($r,$url);        &ratedt($r,$url);
     } elsif ($ENV{'form.forcesmp'}) {
         &smpedt($r,$errtext);
   } else {    } else {
       &smpedt($r,$fn);        &viewmap($r,$adv);
   }    }
   return OK;    return OK;
 }  }

Removed from v.1.6  
changed lines
  Added in v.1.8


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