--- loncom/interface/lontemplate.pm 2008/11/19 11:58:29 1.1 +++ loncom/interface/lontemplate.pm 2008/12/16 10:41:02 1.9 @@ -1,3 +1,32 @@ +# The LearningOnline Network +# "Template" Functions to generate html output +# +# $Id: lontemplate.pm,v 1.9 2008/12/16 10:41:02 ehlerst Exp $ +# +# Copyright Michigan State University Board of Trustees +# +# This file is part of the LearningOnline Network with CAPA (LON-CAPA). +# +# LON-CAPA is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# LON-CAPA is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with LON-CAPA; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# /home/httpd/html/adm/gpl.txt +# +# http://www.lon-capa.org/ +# + + package Apache::lontemplate; @@ -5,6 +34,8 @@ use strict; 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(); @@ -13,12 +44,81 @@ use Apache::lonmsgdisplay(); use HTML::Entities(); +sub start_columnSection{ + my ($r) = @_; + $r->print('
'); +} + +sub end_columnSection{ + my ($r) = @_; + $r->print('
'); +} + +sub print_content_template{ + my ($r,$allowed,$target,$syllabusfields_ref,$syllabus_ref) = @_; + my %syllabusfields = %{$syllabusfields_ref}; + my %syllabus = %{$syllabus_ref}; + $r->print('
'); + foreach my $field (sort(keys(%syllabusfields))) { + if (($syllabus{$field}) || ($allowed)) { + my $message=$syllabus{$field}; + &Apache::lonfeedback::newline_to_br(\$message); + $message + =~s/(http\:\/\/[^\s]+)/\\$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('
'); +} + +sub start_ContentBox{ + my ($r,$allowed) = @_; + if($allowed){ + $r->print('
'); + }else{ + $r->print('
'); + } +} + +sub end_ContentBox{ + my ($r) = @_; + $r->print('
'); +} + +sub send_message{ + my ($r,$cnum,$cdom) = @_; + $r->print('
'); + $r->print('

'.&mt('Contact').'

'); + $r->print('
'.(&Apache::loncommon::messagewrapper(&mt('Send me a message'),$cnum,$cdom)).'
'); + $r->print('
'); +} + sub print_template { - my ($r,$topic,$content) = @_; - $r->print('
'); + my ($r,$topic,$content, $allowed) = @_; + if($allowed){ + $r->print('
'); + }else{ + $r->print('
'); + } $r->print('

'.$topic.'

'); - $r->print('
'.$content.'
'); + $r->print('
'.$content.'
'); $r->print('
'); } @@ -28,8 +128,7 @@ sub print_editbox_template $r->print('
'); - + &mt('Save All').'" />'); } 1;