Diff for /loncom/homework/lonhomework.pm between versions 1.1 and 1.15

version 1.1, 2000/07/25 17:45:40 version 1.15, 2000/11/07 17:21:18
Line 5  package Apache::lonhomework; Line 5  package Apache::lonhomework;
 use strict;  use strict;
 use Apache::style;  use Apache::style;
 use Apache::lonxml;  use Apache::lonxml;
   use Apache::lonnet;
   use Apache::inputtags;
   use Apache::structuretags;
   use Apache::response;
   
 sub handler {  sub handler {
   my $request=shift;    my $request=shift;
     
     my $target=&get_target();
     $Apache::lonxml::debug=1;
     if ($ENV{'browser.mathml'}) {
       $request->content_type('text/xml');
     } else {
       $request->content_type('text/html');
     }
     $request->send_http_header;
     return 'OK' if $request->header_only;
   
     &Apache::lonhomework::send_header($request);
     my $file = &Apache::lonnet::filelocation("",$request->uri);
     my %mystyle;
     my $result = '';
     &Apache::inputtags::initialize_inputtags;
   
     my $problem=&Apache::lonnet::getfile($file);
     if ($problem == -1) {
       &Apache::lonxml::error("<b> Unable to find <i>$file</i></b>");
       $problem='';
     }
     my $default=&Apache::lonnet::getfile('/home/httpd/html/res/adm/includes/default_homework.lcpm');
     if ($default == -1) {
       &Apache::lonxml::error("<b>Unable to find <i>$file</i></b>");
       $default='';
     }
   
     $result = Apache::lonxml::xmlparse($target, $problem,
        $default.&setup_vars($target),%mystyle);
     #$request->print("Result follows:");
     $request->print($result);
     #$request->print(":Result ends");
     &Apache::lonhomework::send_footer($request);
     return 'OK';
   }
   
   sub get_target {
     if ( $ENV{'request.state'} eq "published") {
       return 'web';
     } elsif ($ENV{'request.state'} eq "construct") {
       if ( defined $ENV{'form.'.$ENV{'form.request.prefix'}.'preview'}) {
         return 'web';
       } else {
         return 'edit';
       }
     }
   }
   
   my @parsecontents;  sub setup_vars {
     my ($target) = @_;
     return ';'
   #  return ';$external::target='.$target.';';
   }
   
   sub send_header {
     my ($request)= @_;
     $request->print(&Apache::lontexconvert::header());
     $request->print('<form name='.$ENV{'form.request.prefix'}.'lonhomework method="POST" action="'.$request->uri.'">');
   }
   
   sub send_footer {
     my ($request)= @_;
     $request->print('</form>');
     $request->print(&Apache::lontexconvert::footer());
   }
   
   sub getfilenothere {
     my ($filename) = @_;
     my $a="";
     if (! -e $filename ) {
       &Apache::lonnet::subscribe($filename);
       &Apache::lonnet::repcopy($filename);
     }
   {    {
     my $fh=Apache::File->new($request->filename);      my $fh=Apache::File->new($filename);
     @parsecontents=<$fh>;  
       while (<$fh>) {
         $a .=$_;
       }
   }    }
       return $a
   my $parsestring=join('',@parsecontents);  
     
   $request->content_type('text/html');  
   $request->send_http_header;  
   $request->print('<html>  
 <form method="post" action="'.$request->uri.'"<input type="hidden" name="TARGET" value="edit"><input type="submit" value="Submit">');  
 }  }
   
 1;  1;

Removed from v.1.1  
changed lines
  Added in v.1.15


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