--- loncom/interface/portfolio.pm 2006/08/02 16:56:30 1.143 +++ loncom/interface/portfolio.pm 2006/08/08 21:34:05 1.151 @@ -1,7 +1,7 @@ # The LearningOnline Network # portfolio browser # -# $Id: portfolio.pm,v 1.143 2006/08/02 16:56:30 banghart Exp $ +# $Id: portfolio.pm,v 1.151 2006/08/08 21:34:05 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(''); @@ -150,20 +167,23 @@ sub display_directory_line { my ($r,$select_mode,$fullpath, $filename, $mtime, $size, $css_class, $line, $access_controls, $curr_access, $now, $version_flag, $href_location, $url, $current_path, $access_admin_text, $versions)=@_; + my %anchor_fields; # 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(''); - $r->print(''.$$version_flag{$filename}.''. - $filename.''); + $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.''); + %anchor_fields = ( + 'access' => $filename, + 'currentpath' => $current_path + ); + $r->print(&make_anchor($url, \%anchor_fields, $access_admin_text).''); } $r->print(''.$/); } @@ -172,6 +192,7 @@ sub display_directory { my ($r,$url,$current_path,$is_empty,$dir_list,$group,$can_upload, $can_modify,$can_delete,$can_setacl)=@_; my $iconpath= $r->dir_config('lonIconsURL') . "/"; + my %anchor_fields; my $display_out; my $select_mode; my $checked_files; @@ -208,11 +229,11 @@ sub display_directory { if ($select_mode eq 'true') { $r->print('
'); $r->print(''. - ''); + ''); } else { $r->print(''); $r->print('
Select NameSizeLast Modified
Select  NameSizeLast Modified
'. - ''); + ''); } $r->print("\n".&group_form_data()."\n"); @@ -249,13 +270,21 @@ sub display_directory { $show_versions = 'true'; } if (exists($versioned{$filename})) { + %anchor_fields = ( + 'selectfile' => $filename, + 'continue' => 'false', + 'currentpath' => $current_path, + ); if ($show_versions) { - $version_flag{$filename} = ''.&mt('opened folder').''; + $version_flag{$filename} = &make_anchor('portfolio',\%anchor_fields, + ''.&mt('opened folder').''); } else { - $version_flag{$filename} = ''.&mt('closed folder').''; + $anchor_fields{'showversions'} = $filename; + $version_flag{$filename} = &make_anchor('portfolio',\%anchor_fields, + ''.&mt('closed folder').''); } } else { - $version_flag{$filename} = ''; + $version_flag{$filename} = ' '; } if ($dirptr&$testdir) { my $colspan='colspan="2"'; @@ -264,7 +293,14 @@ sub display_directory { } $r->print(''); $r->print(''); - $r->print(''); + %anchor_fields = ( + 'selectfile' => $filename.'/', + 'currentpath' => $current_path.$filename.'/', + 'mode' => $env{"form.mode"}, + 'fieldname' => $env{"form.fieldname"}, + 'continue' => $env{"form.continue"} + ); + $r->print(''); $r->print(''); } else { my $css_class = 'LC_browser_file'; @@ -279,7 +315,10 @@ sub display_directory { $line.=' />'; } else { if (exists $locked_files{$fullpath}) { - $line.=''; + %anchor_fields = ( + 'lockinfo' => $current_path.$filename + ); + $line.=''; $css_class= 'LC_browser_file_locked'; } else { if (!$can_modify) { @@ -291,10 +330,15 @@ sub display_directory { $line .= ''; } if ($can_modify) { - my $cat=''.&mt('Catalog Information').
+                            my $cat='<img class='; - $line .= 'Rename'; - $line .= ''; }
Actions NameSizeLast ModifiedCurrent Access Status
Actions  NameSizeLast ModifiedCurrent Access Status
'.&mt('closed folder').'Go to ...'.$version_flag{$filename}.&make_anchor($url,$filename.'/',$current_path.$filename.'/',$env{'form.mode'},$env{"form.fieldname"},$env{'form.continue'}).'/'.$version_flag{$filename}.''.&make_anchor($url,\%anchor_fields,$filename.'/').'
Locked'.&make_anchor($url,\%anchor_fields,'Locked').''.$version_flag{$filename}.''.$cat.''; + %anchor_fields = ( + 'rename' => $filename, + currentpath => $current_path + ); + $line .= &make_anchor($url,\%anchor_fields,'Rename'); + $line .= ''.&make_anchor($href_edit_location.$filename.'.meta',undef,$cat); + # ''.$cat.''; } $line .= '