--- loncom/interface/lontemplate.pm 2009/12/22 06:22:12 1.42
+++ loncom/interface/lontemplate.pm 2012/05/15 22:52:56 1.45.6.2
@@ -1,7 +1,7 @@
# The LearningOnline Network
# "Template" Functions to generate html output
#
-# $Id: lontemplate.pm,v 1.42 2009/12/22 06:22:12 faziophi Exp $
+# $Id: lontemplate.pm,v 1.45.6.2 2012/05/15 22:52:56 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -26,11 +26,11 @@
# http://www.lon-capa.org/
#
-
package Apache::lontemplate;
use strict;
+use utf8;
use Apache::Constants qw(:common);
use Apache::loncommon;
use Apache::lonnet;
@@ -144,4 +144,56 @@ sub print_saveall_template {
$r->print('');
}
+sub print_template_fields {
+ my ($r, $data_ref, $fields_ref, $target, $allowed, $default_rich_text, $custom_handlers_ref, $group) = @_;
+ my @html_ids = ();
+ my %data = %{$data_ref};
+ my %fields = %{$fields_ref};
+ my %custom_handlers = %{$custom_handlers_ref};
+
+ foreach my $field (sort(keys(%fields))) {
+ my $message = $data{$field} if (($data{$field}=~/\w/) || ($allowed));
+ if ((%custom_handlers) && ($custom_handlers{$field})) {
+ $custom_handlers{$field}->($r, $field, $message, $group, $data_ref, $fields_ref, $target, $allowed);
+ } else {
+ if (($data{$field}=~/\w/) || ($allowed)) {
+ if (!&Apache::lonfeedback::contains_block_html($message)) {
+ &Apache::lonfeedback::newline_to_br(\$message);
+ } else {
+ $message = &Apache::lonfeedback::tidy_html($message);
+ }
+ $message=&Apache::lonhtmlcommon::raw_href_to_link($message);
+ if ($allowed) {
+ $message=&Apache::lonspeller::markeduptext($message);
+ }
+ $message=&Apache::lontexconvert::msgtexconverted($message);
+ if ($target ne 'tex') {
+ #output of syllabusfields will be generated here.
+ &Apache::lontemplate::print_start_template($r,$fields{$field},'LC_Box');
+ $r->print($message);
+ if ($allowed) {
+ $r->print("