[LON-CAPA-cvs] cvs: loncom /homework outputtags.pm
albertel
lon-capa-cvs@mail.lon-capa.org
Wed, 16 Oct 2002 20:50:08 -0000
albertel Wed Oct 16 16:50:08 2002 EDT
Modified files:
/loncom/homework outputtags.pm
Log:
- added a weight tag
Index: loncom/homework/outputtags.pm
diff -u loncom/homework/outputtags.pm:1.21 loncom/homework/outputtags.pm:1.22
--- loncom/homework/outputtags.pm:1.21 Wed Oct 16 16:42:22 2002
+++ loncom/homework/outputtags.pm Wed Oct 16 16:50:08 2002
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# tags that create controlled output
#
-# $Id: outputtags.pm,v 1.21 2002/10/16 20:42:22 albertel Exp $
+# $Id: outputtags.pm,v 1.22 2002/10/16 20:50:08 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -33,7 +33,7 @@
use POSIX qw(strftime);
BEGIN {
- &Apache::lonxml::register('Apache::outputtags',('displayduedate','displaytitle'));
+ &Apache::lonxml::register('Apache::outputtags',('displayduedate','displaytitle','displayweight'));
}
sub initialize_outputtags {
@@ -103,6 +103,36 @@
}
sub end_displaytitle {
+ my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
+ my @result;
+ if ($target eq 'edit') { $result[1]='no'; }
+ return @result;
+}
+
+sub start_displayweight {
+ my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
+ my $result;
+ if (exists($Apache::outputtags::showonce{'displayweight'})) {
+ return '';
+ } else {
+ $Apache::outputtags::showonce{'displayweight'}=1;
+ }
+ my $status=$Apache::inputtags::status['-1'];
+ if (($status =~ /CAN.*_ANSWER/) && ($target eq 'web')) {
+ my $id = $Apache::inputtags::part;
+ my $weight = &Apache::lonnet::EXT("resource.$id.weight");
+ &Apache::lonxml::debug("duedatebox found $weight for $id");
+ if (!defined($weight)) { $weight=1; }
+ $result.=$weight;
+ } elsif ( $target eq 'edit' ) {
+ $result=&Apache::edit::tag_start($target,$token);
+ $result.='</td></tr>';
+ $result.=&Apache::edit::end_table();
+ }
+ return $result;
+}
+
+sub end_displayweight {
my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_;
my @result;
if ($target eq 'edit') { $result[1]='no'; }