version 1.139, 2006/07/19 21:58:16
|
version 1.146, 2006/08/04 22:22:32
|
Line 149 TABLE
|
Line 149 TABLE
|
sub display_directory_line { |
sub display_directory_line { |
my ($r,$select_mode,$fullpath, $filename, $mtime, $size, $css_class, |
my ($r,$select_mode,$fullpath, $filename, $mtime, $size, $css_class, |
$line, $access_controls, $curr_access, $now, $version_flag, |
$line, $access_controls, $curr_access, $now, $version_flag, |
$href_location, $url, $current_path, $access_admin_text)=@_; |
$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); |
# my ($filename,$dom,undef,$testdir,undef,undef,undef,undef,$size,undef,$mtime,undef,undef,undef,$obs,undef)=split(/\&/,$line,16); |
$r->print('<tr class="'.$css_class.'">'); |
$r->print('<tr class="'.$css_class.'">'); |
$r->print($line); |
$r->print($line); |
$r->print('<td><img alt="" src="'.&Apache::loncommon::icon($filename).'" /></td>'); |
$r->print('<td><img alt="" src="'.&Apache::loncommon::icon($filename).'" /></td>'); |
$r->print('<td>'.$$version_flag{$filename}.'<a href="'.$href_location.$filename.'">'. |
$r->print('<td>'.$$version_flag{$filename}.'</td><td><a href="'.$href_location.$filename.'">'. |
$filename.'</a></td>'); |
$filename.'</a></td>'); |
$r->print('<td>'.$size.'</td>'); |
$r->print('<td>'.$size.'</td>'); |
$r->print('<td>'.&Apache::lonlocal::locallocaltime($mtime).'</td>'); |
$r->print('<td>'.&Apache::lonlocal::locallocaltime($mtime).'</td>'); |
Line 208 sub display_directory {
|
Line 208 sub display_directory {
|
if ($select_mode eq 'true') { |
if ($select_mode eq 'true') { |
$r->print('<form method="post" name="checkselect" action="'.$url.'">'); |
$r->print('<form method="post" name="checkselect" action="'.$url.'">'); |
$r->print('<table id="LC_browser">'. |
$r->print('<table id="LC_browser">'. |
'<tr><th>Select</th><th> </th><th>Name</th><th>Size</th><th>Last Modified</th></tr>'); |
'<tr><th>Select</th><th> </th><th> </th><th>Name</th><th>Size</th><th>Last Modified</th></tr>'); |
} else { |
} else { |
$r->print('<form method="post" action="'.$url.'">'); |
$r->print('<form method="post" action="'.$url.'">'); |
$r->print('<table id="LC_browser">'. |
$r->print('<table id="LC_browser">'. |
'<tr><th colspan="2">Actions</th><th> </th><th>Name</th><th>Size</th><th>Last Modified</th><th>Current Access Status</th></tr>'); |
'<tr><th colspan="2">Actions</th><th> </th><th> </th><th>Name</th><th>Size</th><th>Last Modified</th><th>Current Access Status</th></tr>'); |
} |
} |
$r->print("\n".&group_form_data()."\n"); |
$r->print("\n".&group_form_data()."\n"); |
|
|
Line 221 sub display_directory {
|
Line 221 sub display_directory {
|
my @dir_lines; |
my @dir_lines; |
my @version_lines; |
my @version_lines; |
my %versioned; |
my %versioned; |
foreach my $line (sort |
foreach my $dir_line (sort |
{ |
{ |
my ($afile)=split('&',$a,2); |
my ($afile)=split('&',$a,2); |
my ($bfile)=split('&',$b,2); |
my ($bfile)=split('&',$b,2); |
Line 229 sub display_directory {
|
Line 229 sub display_directory {
|
} (@$dir_list)) { |
} (@$dir_list)) { |
#$strip holds directory/file name |
#$strip holds directory/file name |
#$dom |
#$dom |
my ($filename,$dom,undef,$testdir,undef,undef,undef,undef,$size,undef,$mtime,undef,undef,undef,$obs,undef)=split(/\&/,$line,16); |
my ($filename,$dom,undef,$testdir,undef,undef,undef,undef,$size,undef,$mtime,undef,undef,undef,$obs,undef)=split(/\&/,$dir_line,16); |
$filename =~ s/\s+$//; |
$filename =~ s/\s+$//; |
my ($fname,$version,$extension) = &Apache::grades::file_name_version_ext($filename); |
my ($fname,$version,$extension) = &Apache::grades::file_name_version_ext($filename); |
if ($version) { |
if ($version) { |
Line 239 sub display_directory {
|
Line 239 sub display_directory {
|
push(@dir_lines, [$filename,$dom,$testdir,$size,$mtime,$obs]); |
push(@dir_lines, [$filename,$dom,$testdir,$size,$mtime,$obs]); |
} |
} |
} |
} |
foreach my $line (@dir_lines) { |
foreach my $dir_line (@dir_lines) { |
my ($filename,$dom,$testdir,$size,$mtime,$obs) = @$line; |
my ($filename,$dom,$testdir,$size,$mtime,$obs) = @$dir_line; |
my ($fname,$version,$extension) = &Apache::grades::file_name_version_ext($filename); |
my ($fname,$version,$extension) = &Apache::grades::file_name_version_ext($filename); |
if (($filename ne '.') && ($filename ne '..') && ($filename !~ /\.meta$/ ) && ($filename !~ /(.*)\.(\d+)\.([^\.]*)$/)) { |
if (($filename ne '.') && ($filename ne '..') && ($filename !~ /\.meta$/ ) && ($filename !~ /(.*)\.(\d+)\.([^\.]*)$/)) { |
my %version_flag; |
my %version_flag; |
Line 250 sub display_directory {
|
Line 250 sub display_directory {
|
} |
} |
if (exists($versioned{$filename})) { |
if (exists($versioned{$filename})) { |
if ($show_versions) { |
if ($show_versions) { |
$version_flag{$filename} = '<a href="portfolio"><img alt="'.&mt('opened folder').'" src="'.$iconpath.'folder_pointer_opened.gif" /></a>'; |
$version_flag{$filename} = '<a href="portfolio"><img class="LC_icon" alt="'.&mt('opened folder').'" src="'.$iconpath.'folder_pointer_opened.gif" /></a>'; |
} else { |
} else { |
$version_flag{$filename} = '<a href="portfolio?showversions='.$filename.'"><img alt="'.&mt('closed folder').'" src="'.$iconpath.'folder_pointer_closed.gif" /></a>'; |
$version_flag{$filename} = '<a href="portfolio?showversions='.$filename.'"><img class="LC_icon" alt="'.&mt('closed folder').'" src="'.$iconpath.'folder_pointer_closed.gif" /></a>'; |
} |
} |
} else { |
} else { |
$version_flag{$filename} = ''; |
$version_flag{$filename} = ' '; |
} |
} |
if ($dirptr&$testdir) { |
if ($dirptr&$testdir) { |
my $colspan='colspan="2"'; |
my $colspan='colspan="2"'; |
Line 264 sub display_directory {
|
Line 264 sub display_directory {
|
} |
} |
$r->print('<tr class="LC_browser_folder"><td '.$colspan.'><img alt="'.&mt('closed folder').'" src="'.$iconpath.'folder_closed.gif" /></td>'); |
$r->print('<tr class="LC_browser_folder"><td '.$colspan.'><img alt="'.&mt('closed folder').'" src="'.$iconpath.'folder_closed.gif" /></td>'); |
$r->print('<td>Go to ...</td>'); |
$r->print('<td>Go to ...</td>'); |
$r->print('<td>'.$version_flag{$filename}.&make_anchor($url,$filename.'/',$current_path.$filename.'/',$env{'form.mode'},$env{"form.fieldname"},$env{'form.continue'}).'/</td>'); |
$r->print('<td>'.$version_flag{$filename}.'</td><td>'.&make_anchor($url,$filename.'/',$current_path.$filename.'/',$env{'form.mode'},$env{"form.fieldname"},$env{'form.continue'}).'/</td>'); |
$r->print('</tr>'); |
$r->print('</tr>'); |
} else { |
} else { |
my $css_class = 'LC_browser_file'; |
my $css_class = 'LC_browser_file'; |
Line 291 sub display_directory {
|
Line 291 sub display_directory {
|
$line .= '<input type="checkbox" name="selectfile" value="'.$filename.'" />'; |
$line .= '<input type="checkbox" name="selectfile" value="'.$filename.'" />'; |
} |
} |
if ($can_modify) { |
if ($can_modify) { |
my $cat='<img alt="'.&mt('Catalog Information'). |
my $cat='<img class="LC_icon" alt="'.&mt('Catalog Information'). |
'" src="'.&Apache::loncommon::lonhttpdurl('/res/adm/pages/catalog.gif').'" />'; |
'" src="'.&Apache::loncommon::lonhttpdurl('/res/adm/pages/catalog.gif').'" />'; |
$line .= '<a href="'.$url.'?rename='.$filename.'&currentpath='.$current_path.&group_args().'">Rename</a>'; |
$line .= '<a href="'.$url.'?rename='.$filename.'&currentpath='.$current_path.&group_args().'">Rename</a>'; |
$line .= '</td><td>'.$version_flag{$filename}.'<a href="'.$href_edit_location.$filename.'.meta">'.$cat.'</a>'; |
$line .= '</td><td>'.'<a href="'.$href_edit_location.$filename.'.meta">'.$cat.'</a>'; |
} |
} |
$line .= '</td>'; |
$line .= '</td>'; |
} |
} |
Line 332 sub display_directory {
|
Line 332 sub display_directory {
|
$curr_access = join('+ ',@allaccesses); |
$curr_access = join('+ ',@allaccesses); |
} |
} |
} |
} |
&display_directory_line($r,$select_mode,$fullpath, $filename, $mtime, $size, $css_class, $line, \%access_controls, $curr_access, |
&display_directory_line($r,$select_mode,$fullpath, $filename, $mtime, $size, $css_class, $line, |
$now, \%version_flag, $href_location, $url, $current_path, $access_admin_text); |
\%access_controls, $curr_access,$now, \%version_flag, $href_location, |
# $r->print('<tr class="'.$css_class.'">'); |
$url, $current_path, $access_admin_text); |
# $r->print($line); |
|
# $r->print('<td><img alt="" src="'.&Apache::loncommon::icon($filename).'" /></td>'); |
|
# $r->print('<td>'.$version_flag{$filename}.'<a href="'.$href_location.$filename.'">'. |
|
# $filename.'</a></td>'); |
|
# $r->print('<td>'.$size.'</td>'); |
|
# $r->print('<td>'.&Apache::lonlocal::locallocaltime($mtime).'</td>'); |
|
# if ($select_mode ne 'true') { |
|
# $r->print('<td><span style="white-space: nowrap">'. |
|
# &mt($curr_access).' '); |
|
# $r->print('<a href="'.$url.'?access='.$filename. |
|
# '&currentpath='.$current_path.&group_args(). |
|
# '">'.$access_admin_text.'</a></span></td>'); |
|
# } |
|
# $r->print('</tr>'.$/); |
|
if ($show_versions) { |
if ($show_versions) { |
&display_directory_line($r,$select_mode,$fullpath, $css_class, $line, \%access_controls, |
foreach my $dir_line (@version_lines) { |
$now, \%version_flag, $href_location, $url, $current_path, $access_admin_text); |
my ($v_filename,$dom,$testdir,$size,$mtime,$obs) = @$dir_line; |
|
my ($v_fname,$version,$v_extension) = &Apache::grades::file_name_version_ext($v_filename); |
|
$line = '<td colspan="2"> </td>'; |
|
if (($v_fname eq $fname)&&($v_extension eq $extension)) { |
|
&display_directory_line($r,$select_mode,$fullpath, $v_filename, $mtime, $size, |
|
$css_class, $line, \%access_controls, $curr_access, $now, |
|
\%version_flag, $href_location, $url, $current_path, $access_admin_text, 1); |
|
} |
|
} |
} |
} |
} |
} |
} |
} |
Line 579 sub display_access {
|
Line 572 sub display_access {
|
$uname); |
$uname); |
my %access_controls = &Apache::lonnet::get_access_controls($current_permissions,$group,$file_name); |
my %access_controls = &Apache::lonnet::get_access_controls($current_permissions,$group,$file_name); |
my $aclcount = keys(%access_controls); |
my $aclcount = keys(%access_controls); |
my $header = '<h3>'.&mt('Allowing others to retrieve portfolio file: [_1]',$port_path.$env{'form.currentpath'}.$env{'form.access'}).'</h3>'; |
my $header = '<h3>'.&mt('Allowing others to retrieve file: [_1]',$port_path.$env{'form.currentpath'}.$env{'form.access'}).'</h3>'; |
my $info .= &mt('Access to this file by others can be set to be one or more of the following types: public, passphrase-protected or conditional.').'<br /><ul><li>'.&mt('Public files are available to anyone without the need for login.').'</li><li>'.&mt('Passphrase-protected files do not require log-in, but will require the viewer to enter the passphrase you set.').'</li><li>'.&mt('Conditional files are accessible to logged-in users with accounts in the LON-CAPA network, who satisfy the conditions you set.').'<br />'.&mt('The conditions can include affiliation with a particular course or group, or a user account in a specific domain.').'<br />'.&mt('Alternatively access can be granted to people with specific LON-CAPA usernames and domains.').'</li></ul>'; |
my $info .= &mt('Access to this file by others can be set to be one or more of the following types: public, passphrase-protected or conditional.').'<br /><ul><li>'.&mt('Public files are available to anyone without the need for login.').'</li><li>'.&mt('Passphrase-protected files do not require log-in, but will require the viewer to enter the passphrase you set.').'</li><li>'.&mt('Conditional files are accessible to logged-in users with accounts in the LON-CAPA network, who satisfy the conditions you set.').'<br />'.&mt('The conditions can include affiliation with a particular course or group, or a user account in a specific domain.').'<br />'.&mt('Alternatively access can be granted to people with specific LON-CAPA usernames and domains.').'</li></ul>'; |
|
|
|
if ($group eq '') { |
|
$info .= (&mt("Direct others to the 'Display file listing' link (shown when there are viewable files) on your personal information page:<br /><a href='/adm/$udom/$uname/aboutme'>http://$ENV{'SERVER_NAME'}/adm/$udom/$uname/aboutme</a>")); |
|
} |
|
|
if ($can_setacl) { |
if ($can_setacl) { |
&open_form($r,$url); |
&open_form($r,$url); |
$r->print($header.$info); |
$r->print($header.$info); |
Line 755 sub update_access {
|
Line 753 sub update_access {
|
} |
} |
} |
} |
my $file_name = $env{'form.currentpath'}.$env{'form.selectfile'}; |
my $file_name = $env{'form.currentpath'}.$env{'form.selectfile'}; |
$r->print('<h3>'.&mt('Allowing others to retrieve portfolio file: [_1]', |
$r->print('<h3>'.&mt('Allowing others to retrieve file: [_1]', |
$port_path.$file_name).'</h3>'."\n"); |
$port_path.$file_name).'</h3>'."\n"); |
$file_name = &prepend_group($file_name); |
$file_name = &prepend_group($file_name); |
my ($uname,$udom) = &get_name_dom(); |
my ($uname,$udom) = &get_name_dom(); |
Line 1492 sub upload {
|
Line 1490 sub upload {
|
$file_name = $env{'form.currentpath'}.$file_name; |
$file_name = $env{'form.currentpath'}.$file_name; |
$file_name = &prepend_group($file_name); |
$file_name = &prepend_group($file_name); |
$found_file = 1; |
$found_file = 1; |
# FIXME I think this is incorrect, prepend_group took care of this? |
|
if (defined($group)) { |
|
$file_name = $group.'/'.$file_name; |
|
} |
|
if (&Apache::lonnet::is_locked($file_name,$udom,$uname) eq 'true') { |
if (&Apache::lonnet::is_locked($file_name,$udom,$uname) eq 'true') { |
$locked_file = 1; |
$locked_file = 1; |
} |
} |