--- loncom/interface/portfolio.pm 2006/08/06 16:48:44 1.147
+++ loncom/interface/portfolio.pm 2006/08/11 23:45:18 1.153
@@ -1,7 +1,7 @@
# The LearningOnline Network
# portfolio browser
#
-# $Id: portfolio.pm,v 1.147 2006/08/06 16:48:44 banghart Exp $
+# $Id: portfolio.pm,v 1.153 2006/08/11 23:45:18 banghart Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -66,12 +66,15 @@ sub group_form_data {
# receives a file name and path stub from username/userfiles/portfolio/
# returns an anchor tag consisting encoding filename and currentpath
sub make_anchor {
- my ($url, $filename, $current_path, $current_mode, $field_name,
- $continue_select) = @_;
- if ($continue_select ne 'true') {$continue_select = 'false'};
- my $anchor = '';
+ $anchor .= '">'.$inner_text.'';
return $anchor;
}
@@ -129,12 +132,26 @@ sub display_common {
TABLE
}
my @tree = split (/\//,$current_path);
- $r->print(''.&make_anchor($url,$port_path,'/',$env{"form.mode"},$env{"form.fieldname"},$env{"form.continue"}).'/');
+ my %anchor_fields = (
+ 'selectfile' => $port_path,
+ 'currentpath' => '/',
+ 'mode' => $env{"form.mode"},
+ 'fieldname' => $env{"form.fieldname"},
+ 'continue' => $env{"form.continue"}
+ );
+ $r->print(''.&make_anchor($url,\%anchor_fields,$port_path).'/');
if (@tree > 1){
my $newCurrentPath = '';
for (my $i = 1; $i< @tree; $i++){
$newCurrentPath .= $tree[$i].'/';
- $r->print(&make_anchor($url,$tree[$i],'/'.$newCurrentPath, $env{"form.mode"},$env{"form.fieldname"}, $env{"form.continue"}).'/');
+ my %anchor_fields = (
+ 'selectfile' => $tree[$i],
+ 'currentpath' => '/',
+ 'mode' => $env{"form.mode"},
+ 'fieldname' => $env{"form.fieldname"},
+ 'continue' => $env{"form.continue"}
+ );
+ $r->print(&make_anchor($url,\%anchor_fields,$tree[$i]).'/');
}
}
$r->print('');
@@ -152,18 +169,25 @@ sub display_directory_line {
$href_location, $url, $current_path, $access_admin_text, $versions)=@_;
# my ($filename,$dom,undef,$testdir,undef,undef,undef,undef,$size,undef,$mtime,undef,undef,undef,$obs,undef)=split(/\&/,$line,16);
$r->print('');
- $r->print($line);
- $r->print(' '.$/);
}
@@ -249,10 +273,18 @@ sub display_directory {
$show_versions = 'true';
}
if (exists($versioned{$filename})) {
+ my %anchor_fields = (
+ 'selectfile' => $filename,
+ 'continue' => 'false',
+ 'currentpath' => $current_path,
+ );
if ($show_versions) {
- $version_flag{$filename} = ' ');
- $r->print(''.$$version_flag{$filename}.' '.
- $filename.' ');
+ $r->print($line); # contains first two cells of table
+ if ($$version_flag{$filename}) { # versioned can't be versioned, so TRUE when root file
+ $r->print(' ');
+ $r->print(''.$$version_flag{$filename}.' ');
+ } else { # this is a graded or handed back file
+ $r->print(' ');
+ }
+ # $r->print(''.$$version_flag{$filename}.' ');
+ $r->print(' '.&make_anchor($href_location.$filename,undef,$filename).' ');
$r->print(''.$size.' ');
$r->print(''.&Apache::lonlocal::locallocaltime($mtime).' ');
if ($select_mode ne 'true') {
$r->print(''.
&mt($curr_access).' ');
- $r->print(''.$access_admin_text.' ');
+ my %anchor_fields = (
+ 'access' => $filename,
+ 'currentpath' => $current_path
+ );
+ $r->print(&make_anchor($url, \%anchor_fields, $access_admin_text).'');
}
$r->print('';
+ $version_flag{$filename} = &make_anchor('portfolio',\%anchor_fields,
+ '
');
} else {
- $version_flag{$filename} = '
';
+ $anchor_fields{'showversions'} = $filename;
+ $version_flag{$filename} = &make_anchor('portfolio',\%anchor_fields,
+ '
');
}
} else {
$version_flag{$filename} = ' ';
@@ -264,7 +296,14 @@ sub display_directory {
}
$r->print('
');
} else {
my $css_class = 'LC_browser_file';
@@ -279,7 +318,10 @@ sub display_directory {
$line.=' />';
} else {
if (exists $locked_files{$fullpath}) {
- $line.=' ');
$r->print('Go to ... ');
- $r->print(''.$version_flag{$filename}.' '.&make_anchor($url,$filename.'/',$current_path.$filename.'/',$env{'form.mode'},$env{"form.fieldname"},$env{'form.continue'}).' ');
+ my %anchor_fields = (
+ 'selectfile' => $filename.'/',
+ 'currentpath' => $current_path.$filename.'/',
+ 'mode' => $env{"form.mode"},
+ 'fieldname' => $env{"form.fieldname"},
+ 'continue' => $env{"form.continue"}
+ );
+ $r->print(''.$version_flag{$filename}.' '.&make_anchor($url,\%anchor_fields,$filename.'/').' ');
$r->print('