--- loncom/interface/lonaboutme.pm 2009/04/03 10:46:13 1.122
+++ loncom/interface/lonaboutme.pm 2009/05/13 14:27:52 1.131
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Personal Information Page
#
-# $Id: lonaboutme.pm,v 1.122 2009/04/03 10:46:13 amueller Exp $
+# $Id: lonaboutme.pm,v 1.131 2009/05/13 14:27:52 bisitz Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -144,7 +144,7 @@ sub handler {
['forceedit','forcestudent',
'register','popup']);
-# ----------------------------------------------- Available Portfolio file display
+# ----------------------------------------------- Available Portfolio file display
if (($target ne 'tex') && ($action eq 'portfolio')) {
&display_portfolio_header($r,$is_course);
if ((!$is_course) && (!&Apache::lonnet::usertools_access($cnum,$cdom,'portfolio'))) {
@@ -154,7 +154,7 @@ sub handler {
'
'.&mt('The domain has been configured to disable, by default, portfolio functionality for all users in the domain.').''.
'');
} else {
- my ($blocked,$blocktext) =
+ my ($blocked,$blocktext) =
&Apache::loncommon::blocking_status('port',$cnum,$cdom);
if (!$blocked) {
&display_portfolio_files($r,$is_course);
@@ -199,13 +199,13 @@ sub handler {
my %courseenv=&Apache::lonnet::dump('environment',$cdom,$cnum);
my %syllabus=&Apache::lonnet::dump('aboutme',$cdom,$cnum);
my $allowed=0;
- my $privleged=$allowed=(($env{'user.name'} eq $cnum) &&
+ my $privleged=$allowed=(($env{'user.name'} eq $cnum) &&
($env{'user.domain'} eq $cdom));
- if ($forcestudent or $target eq 'tex') { $allowed=0; }
-
-
+ if ($forcestudent or $target eq 'tex') { $allowed=0; }
+
+
# --------------------------------------- There is such a user, get environment
-
+
if ($target ne 'tex') {
my $rss_link = &Apache::lonrss::rss_link($cnum,$cdom);
my $args = {'function' => $forcestudent,
@@ -214,34 +214,42 @@ sub handler {
if ($env{'form.popup'}) {
$args->{'no_nav_bar'} = 1;
}
- $args->{'bread_crumbs'} = [{href=>"/adm/fhwfdev/$cnum/aboutme",text=>"Personal Information Page"}];
- my $start_page =
- &Apache::loncommon::start_page("Personal Data",$rss_link,$args);
+ $args->{'bread_crumbs'} = [{href=>"/adm/$cdom/$cnum/aboutme",text=>"Personal Information Page"}];
+ my $start_page = &Apache::loncommon::start_page('Personal Information Page',$rss_link,$args);
$r->print($start_page);
-
- }
-#Print Privacy Note
- if ($allowed) {
- $r->print(''
+ #Print Privacy Note
+ if ($allowed) {
+ $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.')
- .''
+ .'
'
);
}
+#Print last modified
+
+ my $lastmod;
+ if (($syllabus{'uploaded.lastmodified'}) || ($allowed)) {
+ $lastmod=$syllabus{'uploaded.lastmodified'};
+ $lastmod=($lastmod?&Apache::lonlocal::locallocaltime($lastmod):&mt('never'));
+ $r->print('');
+ $r->print(&mt('Last updated').': '.$lastmod . '');
+ $r->print('
');
+ }
+}
#Print Help Text
if ($target ne 'tex') {
if($allowed){
$r->print(&Apache::loncommon::help_open_topic('Uploaded_Templates_TextBoxes',&mt('Help with filling in text boxes')));
- }
+ }
}
#----------------Print Functions
- if ($target ne 'tex'){
+ if ($target ne 'tex') {
$r->print(&Apache::lontemplate::start_functionslist());
- if($allowed){
- my $query_string = &build_query_string({'forcestudent' => '1','popup' => $env{'form.popup'}});
+ if ($allowed) {
+ my $query_string = &build_query_string({'forcestudent' => '1','popup' => $env{'form.popup'}});
$r->print(&Apache::lontemplate::item_functionslist(
''.&mt('Show Public View').''
.&Apache::loncommon::help_open_topic('Uploaded_Templates_PublicView')));
@@ -259,7 +267,7 @@ sub handler {
$r->print(&Apache::lontemplate::item_functionslist(
&Apache::loncommon::track_student_link('View recent activity by this student',$cnum,$cdom)));
}
- if (&Apache::lonnet::allowed('vgr', $env{'request.course.id'}) ||
+ if (&Apache::lonnet::allowed('vgr', $env{'request.course.id'}) ||
&Apache::lonnet::allowed('vgr', $env{'request.course.id'}.'/'.
$env{'request.course.sec'})) {
$r->print(&Apache::lontemplate::item_functionslist(
@@ -269,12 +277,12 @@ sub handler {
&Apache::loncommon::noteswrapper(&mt('Add Records'),$cnum,$cdom)));
}
$r->print(&Apache::lontemplate::end_functionslist());
- }
+ }
#------Print Headtitle
if ($target ne 'tex') {
$r->print('');
$r->print('
'.&Apache::loncommon::plainname($cnum,$cdom).'
');
- $r->print('
');
+ $r->print('' );
if ($courseenv{'nickname'}) {
$r->print('
"'.$courseenv{'nickname'}.'"
');
}
@@ -282,13 +290,13 @@ sub handler {
}
else {
$r->print('\noindent{\large\textbf{'.&Apache::loncommon::plainname($cnum,$cdom).'}}\\\\\\\\');
- $r->print('\textbf{'.&Apache::lonnet::domain($cdom,'description').'}\\\\');
+ $r->print('\textbf{'.&Apache::lonnet::domain($cdom,'description').'}\\\\');
}
# does this user have privileges to post, etc?
-
- my $query_string;
-
+
+ my $query_string;
+
if (($env{'form.uploaddoc.filename'}) &&
($env{'form.storeupl'}) && ($allowed)) {
if ($env{'form.uploaddoc.filename'}=~/\.(gif|jpg|png|jpeg)$/i) {
@@ -320,31 +328,25 @@ sub handler {
&Apache::lonnet::put('aboutme',\%syllabus,$cdom,$cnum);
}
-my $lastmod;
-my $image;
+my $image;
# ---------------------------------------------------------------- Get syllabus
if (($syllabus{'uploaded.lastmodified'}) || ($allowed)) {
- $lastmod=$syllabus{'uploaded.lastmodified'};
- $lastmod=($lastmod?&Apache::lonlocal::locallocaltime($lastmod):&mt('never'));
- $r->print('
'.&mt('Last updated').': '.$lastmod);
-
-
if ($syllabus{'uploaded.photourl'}) {
&Apache::lonnet::allowuploaded('/adm/aboutme',
$syllabus{'uploaded.photourl'});
-
+
#This call is to resize all "Personal Information" images in the LonCapa System. When its done, you can remove this line.
&Apache::lonnet::resizeImage(&Apache::lonnet::filelocation('',$syllabus{'uploaded.photourl'}));
#---End Resize---
$image=qq{
};
-
+
if ($target eq 'tex') {
$image=&Apache::lonxml::xmlparse($r,'tex',$image);
}
-
+
}
-
+
if ($allowed) {
$r->print(
'
');
if ($target ne 'tex') {
+ $r->print('
');
+ $r->print('');
if ($env{'form.popup'}) {
$r->print(''.&mt('Close window').'');
}
@@ -433,8 +429,8 @@ my $image;
$r->print('\end{document}');
}
-
-
+
+
return OK;
}
@@ -486,11 +482,11 @@ sub print_portfiles_link {
'vpfi' => 'Viewable portfolio files',
'vgpf' => 'Viewable group portfolio files',
'difl' => 'Display file listing',
- );
+ );
if ($filecounts->{'both'} > 0) {
$output = '
';
- $output .= ($is_course?$lt{'vgpf'}:$lt{'vpfi'}).'
';
-
+ $output .= ($is_course?$lt{'vgpf'}:$lt{'vpfi'}).'
';
+ $output .='
';
}
$r->print($output);
return;
@@ -525,11 +521,11 @@ sub print_portfiles_link {
sub build_query_string {
my ($new_items) = @_;
my $query_string;
- my @formelements = ('register');
+ my @formelements = ('register');
my $new = 0;
if (ref($new_items) eq 'HASH') {
$new = 1;
- if (!defined($new_items->{'forceedit'}) &&
+ if (!defined($new_items->{'forceedit'}) &&
!defined($new_items->{'forcestudent'})) {
push(@formelements,('forceedit','forcestudent'));
}
@@ -562,7 +558,7 @@ sub display_portfolio_header {
my $output;
if ($is_course) {
- $output =
+ $output =
&Apache::loncommon::start_page('Viewable group portfolio files',undef,
{'function' => $forcestudent,
'domain' => $cdom,});
@@ -643,7 +639,7 @@ sub portfolio_files {
};
my $current_permissions =
&Apache::lonnet::get_portfile_permissions($cdom,$cnum);
- my %access_controls =
+ my %access_controls =
&Apache::lonnet::get_access_controls($current_permissions);
my $portaccess;
if ($mode eq 'showlink') {
@@ -660,7 +656,7 @@ sub portfolio_files {
my %files_by_group;
foreach my $filename (sort(keys(%access_controls))) {
my ($group,$path) = split('/',$filename,2);
- $files_by_group{$group}{$path} = $access_controls{$filename};
+ $files_by_group{$group}{$path} = $access_controls{$filename};
}
foreach my $group (sort(keys(%files_by_group))) {
my %fileshash;
@@ -684,7 +680,7 @@ sub portfolio_files {
} else {
my $access_text;
if (ref($lt) eq 'HASH') {
- $access_text = $lt->{$portaccess};
+ $access_text = $lt->{$portaccess};
}
$r->print(&mt('There are no available files of the specified access type: [_1]',$access_text));
}
@@ -692,20 +688,6 @@ sub portfolio_files {
return $filecounts;
}
-{
- my $count=0;
- sub portfolio_table_start {
- $count=0;
- return '';
- }
- sub portfolio_row_start {
- $count++;
- my $class = ($count%2)?'LC_odd_row'
- :'LC_even_row';
- return '';
- }
-}
-
sub build_hierarchy {
my ($r,$cdom,$cnum,$portaccess,$is_course,$filecounts,$mode,$access_info,
$allfileshash,$group) = @_;
@@ -750,10 +732,10 @@ sub build_hierarchy {
my $output;
if ($mode eq 'listfiles') {
if ($filecounts->{'both'} > 0) {
- $output = &portfolio_table_start();
+ $output = &Apache::loncommon::start_data_table();
$output .= &parse_directory($r,0,$allfileshash,'',$is_course,
$group);
- $output .= '
';
+ $output .= &Apache::loncommon::end_data_table();
}
}
return $output;
@@ -772,16 +754,17 @@ sub parse_directory {
((split('&',$_,2))[0],1)
} &Apache::lonnet::dirlist($portfolio_root.$path,$cdom,$cnum,$getpropath);
foreach my $item (sort(keys(%{$currhash}))) {
- $output .= &portfolio_row_start();
+ $output .= &Apache::loncommon::start_data_table_row();
$output .= '';
if (ref($currhash->{$item}) eq 'HASH') {
my $title=&HTML::Entities::encode($item,'<>&"');
$output .= ' '.$title;
- $output .= ' | | ';
+ $output .= ' | '
+ .&Apache::loncommon::end_data_table_row();
$output .= &parse_directory($r,$depth,$currhash->{$item},
$path.'/'.$item,$is_course,$group);
} else {
- my $file_name;
+ my $file_name;
if ($currhash->{$item} =~ m|/([^/]+)$|) {
$file_name = $1;
} else {
@@ -792,7 +775,7 @@ sub parse_directory {
if ($is_course) {
$url = '/uploaded/'.$cdom.'/'.$cnum.'/groups/'.$group.
'/portfolio/'.$currhash->{$item};
- } else {
+ } else {
$url = '/uploaded/'.$cdom.'/'.$cnum.'/portfolio/'.
$currhash->{$item};
}
@@ -816,7 +799,8 @@ sub parse_directory {
&Apache::loncommon::lonhttpdurl('/res/adm/pages/catalog.gif').
'" class="LC_icon" />';
}
- $output .= '';
+ $output .= ''
+ .&Apache::loncommon::end_data_table_row();
}
}
return $output;
@@ -837,7 +821,7 @@ sub aboutme_access {
$cdom = $coursehash{'domain'};
$cnum = $coursehash{'cnum'};
}
- if ((&Apache::lonnet::allowed('srm',$privcheck)) ||
+ if ((&Apache::lonnet::allowed('srm',$privcheck)) ||
(&Apache::lonnet::allowed('dff',$privcheck))) {
if (&in_course($uname,$udom,$cnum,$cdom)) {
return 1;