Diff for /loncom/homework/outputtags.pm between versions 1.1 and 1.9

version 1.1, 2001/01/11 15:20:58 version 1.9, 2001/08/06 19:36:17
Line 1 Line 1
   # The LON-CAPA output tags handler
   #
   # Handles output tags.
   #
   # YEAR=2001
   # 1/11,1/15,4/26,6/1,6/2 Guy Albertelli
   # 8/6 Scott Harrison
   
 package Apache::outputtags;   package Apache::outputtags; 
   
 use strict;  use strict;
 use Apache::lonnet;  use Apache::lonnet;
 use POSIX qw(strftime);  use POSIX qw(strftime);
   
   # ======================================================================= BEGIN
 sub BEGIN {  sub BEGIN {
   &Apache::lonxml::register('Apache::outputtags',('duedatebox'));      &Apache::lonxml::register('Apache::outputtags',('displayduedate',
       'displaytitle'));
   }
   
   # =============================== Start display due date (return scalar string)
   sub start_displayduedate {
       my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
       my $result;
       my $status=$Apache::inputtags::status['-1'];
       &Apache::lonxml::debug("got a $status in duedatebox");
       if (($status =~ /CAN.*_ANSWER/) && ($target eq 'web')) {
    my $format = &Apache::lonxml::get_param('format',$parstack,$safeeval);
    if ($format eq '') {
       &Apache::lonxml::debug("using default format");
       $format="%c";
    }
    my $id = $Apache::inputtags::part;
    my $date = &Apache::lonnet::EXT("resource.$id.duedate");
    &Apache::lonxml::debug("duedatebox found $date for $id");
    if ($date) {
       $result = '<table border="on"><tr><td>Due at '.
                 POSIX::strftime($format,localtime($date)).
         '</td></tr></table>';
    } else {
       $result = '<table border="on"><tr><td>No due date set.</td></tr>'.
         '</table>';
    }
       }
       return $result;
 }  }
   
   # ======================================================== End display due date
   sub end_displayduedate {
       return '';
   }
   
 sub start_duedatebox {  # ================================== Start display title (return scalar string)
   my ($target,$token,$parstack,$parser,$safeeval)=@_;  sub start_displaytitle {
   my $result;      my ($target,$token,$tagstack,$parstack,$parser,$safeeval) = @_;
   my $status=$Apache::inputtags::status['-1'];      my $result = '';
   &Apache::lonxml::debug("got a $status in duedatebox");      if ($target eq 'web') {
   if ($status =~ /CAN.*_ANSWER/) {   $result = "<h1>$Apache::lonhomework::name</h1>";
     my $args ='';  
     if ( $#$parstack > -1 ) { $args=$$parstack[$#$parstack]; }  
     my $format = &Apache::run::run("{$args;".'return $format}',$safeeval);  
     if ($format eq '') {  
       &Apache::lonxml::debug("using default format");  
       $format="%c";  
     }      }
     my $id = $Apache::inputtags::part;      return $result;
     my $date = &Apache::lonnet::EXT("resource.$id.duedate");  
     &Apache::lonxml::debug("duedatebox found $date for $id");  
     $result ='<table border="on"><tr><td>Due at '.  
       POSIX::strftime($format,localtime($date)).  
  '</td></tr></table>';  
   }  
   return $result;  
 }  }
   
 sub end_duedatebox {  # =========================================================== End display title
   sub end_displaytitle {
     return '';
 }  }
   
 1;  1;
   
 __END__  __END__

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


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