[LON-CAPA-cvs] cvs: loncom /interface lontemplate.pm

ehlerst ehlerst@source.lon-capa.org
Tue, 02 Dec 2008 09:19:47 -0000


ehlerst		Tue Dec  2 09:19:47 2008 EDT

  Modified files:              
    /loncom/interface	lontemplate.pm 
  Log:
  added function print_content_template for template creation
  
  
Index: loncom/interface/lontemplate.pm
diff -u loncom/interface/lontemplate.pm:1.4 loncom/interface/lontemplate.pm:1.5
--- loncom/interface/lontemplate.pm:1.4	Fri Nov 28 10:56:31 2008
+++ loncom/interface/lontemplate.pm	Tue Dec  2 09:19:47 2008
@@ -1,7 +1,7 @@
 # The LearningOnline Network
 # "Template" Functions to generate html output
 #
-# $Id: lontemplate.pm,v 1.4 2008/11/28 10:56:31 bisitz Exp $
+# $Id: lontemplate.pm,v 1.5 2008/12/02 09:19:47 ehlerst Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -34,6 +34,8 @@
 use Apache::Constants qw(:common);
 use Apache::loncommon;
 use Apache::lonnet;
+use Apache::lonxml;
+use Apache::lonspeller;
 use Apache::lontexconvert;
 use Apache::lonfeedback;
 use Apache::lonrss();
@@ -41,11 +43,43 @@
 use Apache::lonmsgdisplay();
 use HTML::Entities();
 
+sub print_content_template{
+	my ($r,$allowed,$target,$syllabusfields_ref,$syllabus_ref) = @_;
+	my %syllabusfields = %{$syllabusfields_ref};
+	my %syllabus = %{$syllabus_ref};
+	$r->print('<div class="ContentBox">');       
+       foreach my $field (sort(keys(%syllabusfields))) {
+          if (($syllabus{$field}) || ($allowed)) {
+              my $message=$syllabus{$field};
+              &Apache::lonfeedback::newline_to_br(\$message);
+              $message
+             =~s/(http\:\/\/[^\s]+)/\<a href=\"$1\"\>\<tt\>$1\<\/tt\>\<\/a\>/g;
+              if ($allowed) {
+                  $message=&Apache::lonspeller::markeduptext($message);
+              }
+              $message=&Apache::lontexconvert::msgtexconverted($message);
+              if ($target ne 'tex') {
+                                
+               &print_template($r,$syllabusfields{$field},$message);
+                                
+                                
+                                
+              } else {
+                     $r->print('\\\\\textbf{'.$syllabusfields{$field}.'}\\\\'.
+                               &Apache::lonxml::xmlparse($r,'tex',$message).'\\\\');
+              }
+              if ($allowed) {
+               &print_editbox_template($r,$syllabus{$field},$field);
+              }
+          }
+       }
+        $r->print('</div>');
+}
 
 sub print_template
 {	
 	my ($r,$topic,$content) = @_;
-	$r->print('<div class="DivContentBoxSpecial">');
+	$r->print('<div class="ContentBoxSpecial">');
 	$r->print('<h4 class="hcell">'.$topic.'</h4>');
 	$r->print('<d1 class="ListStyleClean"><blockquote>'.$content.'</blockquote></d1>');
 	$r->print('</div>');