--- loncom/interface/lonbulletin.pm 2009/12/14 13:42:33 1.56 +++ loncom/interface/lonbulletin.pm 2010/06/05 22:07:05 1.60 @@ -1,7 +1,7 @@ # The LearningOnline Network # Bulletin Board Handler # -# $Id: lonbulletin.pm,v 1.56 2009/12/14 13:42:33 wenzelju Exp $ +# $Id: lonbulletin.pm,v 1.60 2010/06/05 22:07:05 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -184,6 +184,9 @@ sub handler { if (($group ne '') && ($env{'form.group'} eq $group)) { $query_str.='&group='.$group.'&'.$refarg; } + if ($env{'form.register'}) { + $query_str .= '&register='.$env{'form.register'}; + } #Function Box for Edit Mode. my $functionbox = &Apache::lonhtmlcommon::start_funclist(); $functionbox .= &Apache::lonhtmlcommon::add_item_funclist( @@ -196,6 +199,9 @@ sub handler { if (($group ne '') && ($env{'form.group'} eq $group)) { $query_str.='&group='.$group.'&'.$refarg; } + if ($env{'form.register'}) { + $query_str .= '&register='.$env{'form.register'}; + } #Functionbox for Student view. my $functionbox = &Apache::lonhtmlcommon::start_funclist(); $functionbox .= &Apache::lonhtmlcommon::add_item_funclist( @@ -237,7 +243,7 @@ sub handler { # ---------------------------------------------------------------- Get discussion board if (($syllabus{'uploaded.lastmodified'}) || ($allowed)) { #Print Topic as Heading - my $titletext=$syllabus{'aaa_title'}; + my $titletext=&HTML::Entities::encode($syllabus{'aaa_title'},'<>&"');; if ($target ne 'tex') { $r->print('

'.$titletext.'

'); } else { @@ -246,53 +252,44 @@ sub handler { #Outputbox and Inputbox for Topic if ($allowed) { $r->print('
'); - &Apache::lontemplate::print_template($r, &mt('Title'), $titletext,$allowed,'LC_Box'); - &Apache::lontemplate::print_editbox_template($r, $syllabus{'aaa_title'},'aaa_title'); + &Apache::lontemplate::print_start_template($r,&mt('Title'),'LC_Box'); + $r->print($titletext); + $r->print("
"); + &Apache::lontemplate::print_textarea_template($r, $syllabus{'aaa_title'}, + 'aaa_title', Apache::lontemplate->RICH_TEXT_ALWAYS_OFF); + &Apache::lontemplate::print_saveall_template($r); + $r->print("
"); + &Apache::lontemplate::print_end_template($r); } if ($syllabus{'uploaded.photourl'}) { &Apache::lonnet::allowuploaded('/adm/syllabus', $syllabus{'uploaded.photourl'}); } + my @htmlids=(); #Outputbox and Inputbox for Image upload if ($allowed) { - &Apache::lontemplate::print_template($r, &mt('Upload a Photo'), ''.&mt('Image').'',$allowed,'LC_Box'); + my $message = ''.&mt('Image').''; + &Apache::lontemplate::print_start_template($r, &mt('Upload a Photo'),'LC_Box'); + $r->print($message); + $r->print("

"); $r->print( ''. ''. ''. ''); + &Apache::lontemplate::print_end_template($r); } #Image in Student view. elsif($syllabus{'uploaded.photourl'} && $target ne 'tex'){ $r->print(''.&mt('Image').''); } - foreach my $field (sort(keys(%syllabusfields))) { - if (($syllabus{$field}) || ($allowed)) { - my $message=$syllabus{$field}; - if (!&Apache::lonfeedback::contains_block_html($message)) { - &Apache::lonfeedback::newline_to_br(\$message); - } - $message=&Apache::lonhtmlcommon::raw_href_to_link($message); - if ($allowed) { - $message=&Apache::lonspeller::markeduptext($message); - } - $message=&Apache::lontexconvert::msgtexconverted($message); - unless ($field eq 'aaa_title') { - #Outputbox - if ($target ne 'tex') { - &Apache::lontemplate::print_template($r, $syllabusfields{$field}, $message,$allowed,'LC_Box'); - } else { - $r->print('\\\\\textbf{'.$syllabusfields{$field}.'}\\\\'.&Apache::lonxml::xmlparse($r,'tex',$message)); - } - #Inputbox - if ($allowed) { - &Apache::lontemplate::print_editbox_template($r, $syllabus{$field}, $field); - } - } - } - } + + my %custom_handlers = ( 'aaa_title' => sub {} ); + @htmlids = &Apache::lontemplate::print_template_fields($r, \%syllabus, \%syllabusfields, + $target, $allowed, Apache::lontemplate->RICH_TEXT_DETECT_HTML, \%custom_handlers); if ($allowed) { - $r->print('
'); + $r->print(''. + &Apache::lonhtmlcommon::htmlareaselectactive(@htmlids)); } if ($target ne 'tex'){ $r->print('



'); @@ -301,7 +298,9 @@ sub handler { $r->print(&Apache::lonxml::xmlparse($r,'tex','



')); } } else { - $r->print('

'.&mt('No page information provided.').'

'); + if ($target ne 'tex') { + $r->print('

'.&mt('No page information provided.').'

'); + } } #Lists discussion posts and box for a new discussion post. if ($target ne 'tex') {