--- loncom/interface/lonaboutme.pm 2003/02/28 16:16:59 1.13
+++ loncom/interface/lonaboutme.pm 2008/01/16 12:19:39 1.66
@@ -1,7 +1,7 @@
# The LearningOnline Network
# "About Me" Personal Information
#
-# $Id: lonaboutme.pm,v 1.13 2003/02/28 16:16:59 www Exp $
+# $Id: lonaboutme.pm,v 1.66 2008/01/16 12:19:39 bisitz Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -34,88 +34,156 @@ use Apache::loncommon;
use Apache::lonnet;
use Apache::lontexconvert;
use Apache::lonfeedback;
+use Apache::lonrss();
+use Apache::lonlocal;
+use Apache::lonmsgdisplay();
+use HTML::Entities();
sub handler {
my $r = shift;
- $r->content_type('text/html');
+ &Apache::loncommon::content_type($r,'text/html');
$r->send_http_header;
return OK if $r->header_only;
-
+ my $target=$env{'form.grade_target'};
# ------------------------------------------------------------ Print the screen
- $r->print(< '.&Apache::loncommon::messagewrapper('Send me a message',$cnum,$cdom).
- ' '.&Apache::loncommon::messagewrapper(&mt('Send me a message'),$cnum,$cdom).' Privacy Note: The information you submit can be viewed by anybody who is logged into LON-CAPA. Do not provide information that you are not ready to share publically.'.&mt('Group files').'
');
+ &print_portfiles_link($r,$is_course);
+ $r->print(&Apache::loncommon::end_page());
+ }
+ return OK;
}
+
# --------------------------------------------------------------- Force Student
my $forcestudent='';
- if ($ENV{'form.forcestudent'}) { $forcestudent='student'; };
+ if ($env{'form.forcestudent'}) { $forcestudent='student'; };
+
+ my $forceregister = '';
+ if ($forcestudent eq '') {
+ $forceregister = $env{'form.register'};
+ }
# --------------------------------------- There is such a user, get environment
my %courseenv=&Apache::lonnet::dump('environment',$cdom,$cnum);
- $r->print(''.&Apache::loncommon::bodytag
- ("Personal Information",$forcestudent,$addentries,'',$cdom));
- $r->print(''.&Apache::loncommon::plainname($cnum,$cdom).'
');
+ if ($target ne 'tex') {
+ my $rss_link = &Apache::lonrss::rss_link($cnum,$cdom);
+ my $start_page =
+ &Apache::loncommon::start_page("Personal Information", $rss_link,
+ {'function' => $forcestudent,
+ 'domain' => $cdom,
+ 'force_register' =>
+ $forceregister,});
+ $r->print($start_page);
+ $r->print(''.&Apache::loncommon::plainname($cnum,$cdom).'
');
+ } else {
+ $r->print('\noindent{\large\textbf{'.&Apache::loncommon::plainname($cnum,$cdom).'}}\\\\\\\\');
+ }
if ($courseenv{'nickname'}) {
$r->print(
'"'.$courseenv{'nickname'}.
'"
');
}
- $r->print(''.$Apache::lonnet::domaindescription{$cdom}.'
'.
- ''.&Apache::lonnet::domain($cdom,'description').'
'.
+ '
Show Public View'. - &Apache::loncommon::help_open_topic('Uploaded_Templates_PublicView').'
'); - } - if (($ENV{'form.uploaddoc.filename'}) && - ($ENV{'form.storeupl'}) && ($allowed)) { - if ($ENV{'form.uploaddoc.filename'}=~/\.(gif|jpg|png|jpeg)$/) { - $syllabus{'uploaded.photourl'}= - &Apache::lonnet::userfileupload('uploaddoc'); + my $query_string = &build_query_string({'forcestudent' => '1',}); + $r->print(''.&mt('Privacy Note').': '. + &mt('The information you submit can be viewed by anybody who is logged into LON-CAPA. Do not provide information that you are not ready to share publicly.'). + '
'. + &Apache::loncommon::help_open_topic('Uploaded_Templates_TextBoxes','Help with filling in text boxes').''.&mt('Show Public View').''. + &Apache::loncommon::help_open_topic('Uploaded_Templates_PublicView').'
'); + } elsif ($privleged && $target ne 'tex') { + my $query_string = &build_query_string({'forceedit' => '1',}); + $r->print(''); + } + if (($env{'form.uploaddoc.filename'}) && + ($env{'form.storeupl'}) && ($allowed)) { + if ($env{'form.uploaddoc.filename'}=~/\.(gif|jpg|png|jpeg)$/i) { + if ($syllabus{'uploaded.photourl'}) { + &Apache::lonnet::removeuploadedurl($syllabus{'uploaded.photourl'}); + } + $syllabus{'uploaded.photourl'}= + &Apache::lonnet::userfileupload('uploaddoc',undef,'aboutme'); } $syllabus{'uploaded.lastmodified'}=time; &Apache::lonnet::put('aboutme',\%syllabus,$cdom,$cnum); } - if (($allowed) && ($ENV{'form.storesyl'})) { - foreach (keys %syllabusfields) { - my $field=$ENV{'form.'.$_}; + if ($allowed && $env{'form.delupl'}) { + if ($syllabus{'uploaded.photourl'}) { + &Apache::lonnet::removeuploadedurl($syllabus{'uploaded.photourl'}); + delete($syllabus{'uploaded.photourl'}); + &Apache::lonnet::del('aboutme',['uploaded.photourl'],$cdom,$cnum); + } + } + if (($allowed) && ($env{'form.storesyl'})) { + foreach my $syl_field (keys(%syllabusfields)) { + my $field=$env{'form.'.$syl_field}; $field=~s/\s+$//s; $field=&Apache::lonfeedback::clear_out_html($field, - $ENV{'user.adv'}); - $syllabus{$_}=$field; + $env{'user.adv'}); + $syllabus{$syl_field}=$field; } $syllabus{'uploaded.lastmodified'}=time; &Apache::lonnet::put('aboutme',\%syllabus,$cdom,$cnum); @@ -124,54 +192,477 @@ ENDDOCUMENT # ---------------------------------------------------------------- Get syllabus if (($syllabus{'uploaded.lastmodified'}) || ($allowed)) { my $lastmod=$syllabus{'uploaded.lastmodified'}; - $lastmod=($lastmod?localtime($lastmod):'never'); - $r->print('Last updated: '.$lastmod); + $lastmod=($lastmod?&Apache::lonlocal::locallocaltime($lastmod):&mt('never')); + $r->print(&mt('Last updated').': '.$lastmod); if ($syllabus{'uploaded.photourl'}) { - $r->print(''); + &Apache::lonnet::allowuploaded('/adm/aboutme', + $syllabus{'uploaded.photourl'}); + my $image= + qq{}; + if ($target eq 'tex') { + $image=&Apache::lonxml::xmlparse($r,'tex',$image); + } + $r->print($image); } if ($allowed) { $r->print( + ''. ''); } - $r->print(''); + if ($target ne 'tex') {$r->print('No personal information provided.
'); + $r->print(''.&mt('No personal information provided').'.
'); } - if ($ENV{'request.course.id'}) { - if (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'})) { - $r->print('