version 1.112, 2006/06/22 15:56:03
|
version 1.115, 2006/06/22 18:33:58
|
Line 31 use Apache::lonfeedback;
|
Line 31 use Apache::lonfeedback;
|
use Apache::lonlocal; |
use Apache::lonlocal; |
use Apache::lonnet; |
use Apache::lonnet; |
use Apache::longroup; |
use Apache::longroup; |
use lib '/home/httpd/lib/perl'; |
use HTML::Entities; |
use LONCAPA; |
use LONCAPA; |
|
|
# receives a file name and path stub from username/userfiles/portfolio/ |
# receives a file name and path stub from username/userfiles/portfolio/ |
Line 40 sub make_anchor {
|
Line 40 sub make_anchor {
|
my ($url, $filename, $current_path, $current_mode, $field_name, |
my ($url, $filename, $current_path, $current_mode, $field_name, |
$continue_select,$group) = @_; |
$continue_select,$group) = @_; |
if ($continue_select ne 'true') {$continue_select = 'false'}; |
if ($continue_select ne 'true') {$continue_select = 'false'}; |
my $anchor = '<a href="'.$url.'?selectfile='.$filename.'¤tpath='.$current_path.'&mode='.$current_mode.'&continue='.$continue_select.'&fieldname='.$field_name; |
my $anchor = '<a href="'.$url.'?selectfile='.$filename.'&currentpath='.$current_path.'&mode='.$current_mode.'&continue='.$continue_select.'&fieldname='.$field_name; |
if (defined($group)) { |
if (defined($group)) { |
$anchor .= '&group='.$group; |
$anchor .= '&group='.$group; |
} |
} |
$anchor .= '">'.$filename.'</a>'; |
$anchor .= '">'.$filename.'</a>'; |
return $anchor; |
return $anchor; |
Line 63 sub display_common {
|
Line 63 sub display_common {
|
'createdir' => 'Create Subdirectory', |
'createdir' => 'Create Subdirectory', |
'createdir_label' => |
'createdir_label' => |
'Create subdirectory in current directory:'); |
'Create subdirectory in current directory:'); |
|
my $escuri = &HTML::Entities::encode($r->uri,'&<>"'); |
$r->print(<<"TABLE"); |
$r->print(<<"TABLE"); |
<table border="0" cellspacing="2" cellpadding="2"> |
<table id="LC_portfolio_actions"> |
<form method="post" enctype="multipart/form-data"> |
<tr id="LC_portfolio_upload"> |
<tr valign="middle"> |
<td class="LC_label"> |
<td bgcolor="#ccddaa" align="right"> |
$text{'upload_label'} |
$text{'upload_label'} |
</td> |
</td> |
<td class="LC_value">$groupitem |
<td bgcolor="#ccddaa" align="left">$groupitem |
<form method="post" enctype="multipart/form-data" action="$escuri"> |
<input name="uploaddoc" type="file" /> |
<input name="uploaddoc" type="file" /> |
<input type="hidden" name="currentpath" value="$current_path" /> |
<input type="hidden" name="currentpath" value="$current_path" /> |
<input type="hidden" name="action" value="$env{"form.action"}" /> |
<input type="hidden" name="action" value="$env{"form.action"}" /> |
<input type="hidden" name="fieldname" value="$env{"form.fieldname"}" /> |
<input type="hidden" name="fieldname" value="$env{"form.fieldname"}" /> |
<input type="hidden" name="mode" value="$env{"form.mode"}" /> |
<input type="hidden" name="mode" value="$env{"form.mode"}" /> |
<input type="submit" name="storeupl" value="$text{'upload'}" /> |
<input type="submit" name="storeupl" value="$text{'upload'}" /> |
</td> |
</form> |
</tr> |
</td> |
</form> |
</tr> |
<form method="post"> |
<tr id="LC_portfolio_createdir"> |
<tr> |
<td class="LC_label"> |
<td bgcolor="#ccddaa" align="right"> |
$text{'createdir_label'} |
$text{'createdir_label'} |
</td> |
</td> |
<td class="LC_value"> |
<td bgcolor="#ccddaa" align="left"> |
<form method="post" action="$escuri"> |
<input name="newdir" type="input" />$groupitem |
<input name="newdir" type="input" />$groupitem |
<input type="hidden" name="currentpath" value="$current_path" /> |
<input type="hidden" name="currentpath" value="$current_path" /> |
<input type="hidden" name="action" value="$env{"form.action"}" /> |
<input type="hidden" name="action" value="$env{"form.action"}" /> |
<input type="hidden" name="fieldname" value="$env{"form.fieldname"}" /> |
<input type="hidden" name="fieldname" value="$env{"form.fieldname"}" /> |
<input type="hidden" name="mode" value="$env{"form.mode"}" /> |
<input type="hidden" name="mode" value="$env{"form.mode"}" /> |
<input type="submit" name="createdir" value="$text{'createdir'}" /> |
<input type="submit" name="createdir" value="$text{'createdir'}" /> |
</td> |
</form> |
</tr> |
</td> |
</form> |
</tr> |
</table> |
</table> |
TABLE |
TABLE |
my @tree = split (/\//,$current_path); |
my @tree = split (/\//,$current_path); |
Line 108 TABLE
|
Line 109 TABLE
|
} |
} |
$r->print('</font>'); |
$r->print('</font>'); |
&Apache::lonhtmlcommon::store_recent($namespace,$current_path,$current_path); |
&Apache::lonhtmlcommon::store_recent($namespace,$current_path,$current_path); |
$r->print('<br /><form method=post action="'.$url.'?mode='.$env{"form.mode"}.'&fieldname='.$env{"form.fieldname"}); |
$r->print('<br /><form method="post" action="'.$url.'?mode='.$env{"form.mode"}.'&fieldname='.$env{"form.fieldname"}); |
if (defined($group)) { |
if (defined($group)) { |
$r->print('&group='.$group); |
$r->print('&group='.$group); |
} |
} |
$r->print('">'. |
$r->print('">'. |
&Apache::lonhtmlcommon::select_recent($namespace,'currentpath', |
&Apache::lonhtmlcommon::select_recent($namespace,'currentpath', |
Line 153 sub display_directory {
|
Line 154 sub display_directory {
|
return; |
return; |
} |
} |
if ($select_mode eq 'true') { |
if ($select_mode eq 'true') { |
|
$r->print('<form method="post" name="checkselect" action="'.$url.'">'); |
$r->print('<table border="0" cellspacing="2" cellpadding="2">'. |
$r->print('<table border="0" cellspacing="2" cellpadding="2">'. |
'<tr><th>Select</th><th> </th><th>Name</th><th>Size</th><th>Last Modified</th></tr>'); |
'<tr><th>Select</th><th> </th><th>Name</th><th>Size</th><th>Last Modified</th></tr>'); |
$r->print('<form method="post" name="checkselect" action="'.$url.'">'); |
|
} else { |
} else { |
|
$r->print('<form method="post" action="'.$url.'">'); |
$r->print('<table border="0" cellspacing="2" cellpadding="2">'. |
$r->print('<table border="0" cellspacing="2" cellpadding="2">'. |
'<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>Name</th><th>Size</th><th>Last Modified</th><th>Current Access Status</th></tr>'); |
$r->print('<form method="post" action="'.$url.'">'); |
|
} |
} |
if (defined($group)) { |
if (defined($group)) { |
$r->print("\n".$groupitem."\n"); |
$r->print("\n".$groupitem."\n"); |
Line 190 sub display_directory {
|
Line 191 sub display_directory {
|
if (($filename ne '.') && ($filename ne '..') && ($filename !~ /\.meta$/ ) && ($filename !~ /(.*)\.(\d+)\.([^\.]*)$/)) { |
if (($filename ne '.') && ($filename ne '..') && ($filename !~ /\.meta$/ ) && ($filename !~ /(.*)\.(\d+)\.([^\.]*)$/)) { |
if ($dirptr&$testdir) { |
if ($dirptr&$testdir) { |
if ($select_mode eq 'true'){ |
if ($select_mode eq 'true'){ |
$r->print('<tr bgcolor="#FFAA99"><td><img src="'.$iconpath.'folder_closed.gif"></td>'); |
$r->print('<tr bgcolor="#FFAA99"><td><img alt="'.&mt('open folder').'" src="'.$iconpath.'folder_closed.gif" /></td>'); |
} else { |
} else { |
$r->print('<tr bgcolor="#FFAA99"><td colspan="2"><img src="'.$iconpath.'folder_closed.gif"></td>'); |
$r->print('<tr bgcolor="#FFAA99"><td colspan="2"><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>'.&make_anchor($url,$filename.'/',$current_path.$filename.'/',$env{'form.mode'},$env{"form.fieldname"},$env{'form.continue'},$group).'</td>'); |
$r->print('<td>'.&make_anchor($url,$filename.'/',$current_path.$filename.'/',$env{'form.mode'},$env{"form.fieldname"},$env{'form.continue'},$group).'</td>'); |
Line 256 sub display_directory {
|
Line 257 sub display_directory {
|
} |
} |
$curr_access = join('+ ',@allaccesses); |
$curr_access = join('+ ',@allaccesses); |
} |
} |
$r->print('<td><img src="'.&Apache::loncommon::icon($filename).'"></td>'); |
$r->print('<td><img alt="" src="'.&Apache::loncommon::icon($filename).'" /></td>'); |
$r->print('<td><a href="'.$href_location.$filename.'">'. |
$r->print('<td><a href="'.$href_location.$filename.'">'. |
$filename.'</a></td>'); |
$filename.'</a></td>'); |
$r->print('<td>'.$size.'</td>'); |
$r->print('<td>'.$size.'</td>'); |
Line 693 sub update_access {
|
Line 694 sub update_access {
|
&close_form($r,$url,$group); |
&close_form($r,$url,$group); |
} else { |
} else { |
$r->print('<br /><a href="'.$url.'?access='.$env{'form.selectfile'}. |
$r->print('<br /><a href="'.$url.'?access='.$env{'form.selectfile'}. |
'¤tpath='.$env{'form.currentpath'}.'">'. |
'&currentpath='.$env{'form.currentpath'}.'">'. |
&mt('Display all access settings for this file').'</a>'); |
&mt('Display all access settings for this file').'</a>'); |
} |
} |
return; |
return; |
Line 1011 function getIndex(name,value) {
|
Line 1012 function getIndex(name,value) {
|
|
|
sub course_row { |
sub course_row { |
my ($r,$status,$type,$item,$access_controls,$tablecolor,$now,$then) = @_; |
my ($r,$status,$type,$item,$access_controls,$tablecolor,$now,$then) = @_; |
my %content; |
my $content; |
my $defdom = $env{'user.domain'}; |
my $defdom = $env{'user.domain'}; |
if ($status eq 'old') { |
if ($status eq 'old') { |
$defdom = $$access_controls{$item}{'domain'}; |
$content = $$access_controls{$item}; |
|
$defdom = $content->{'domain'}; |
} |
} |
my $js = &Apache::loncommon::coursebrowser_javascript($defdom) |
my $js = &Apache::loncommon::coursebrowser_javascript($defdom) |
.&course_js(); |
.&course_js(); |
Line 1026 sub course_row {
|
Line 1028 sub course_row {
|
$type); |
$type); |
$r->print('<td>'.$js.&actionbox($status,$num,$scope).'</td>'); |
$r->print('<td>'.$js.&actionbox($status,$num,$scope).'</td>'); |
if ($status eq 'old') { |
if ($status eq 'old') { |
my $cid = $content{'domain'}.'_'.$content{'number'}; |
my $cid = $content->{'domain'}.'_'.$content->{'number'}; |
my %course_description = &Apache::lonnet::coursedescription($cid); |
my %course_description = &Apache::lonnet::coursedescription($cid); |
$r->print('<td><input type="hidden" name="crsdom_'.$num.'" value="'.$content{'domain'}.'" /><input type="hidden" name="crsnum_'.$num.'" value="'.$content{'number'}.'" />'.$course_description{'description'}.'</td>'); |
$r->print('<td><input type="hidden" name="crsdom_'.$num.'" value="'.$content->{'domain'}.'" /><input type="hidden" name="crsnum_'.$num.'" value="'.$content->{'number'}.'" />'.$course_description{'description'}.'</td>'); |
} elsif ($status eq 'new') { |
} elsif ($status eq 'new') { |
my $uctype = $type; |
my $uctype = $type; |
$uctype =~ s/^(\w)/uc($1)/e; |
$uctype =~ s/^(\w)/uc($1)/e; |
Line 1041 sub course_row {
|
Line 1043 sub course_row {
|
&mt($crsgrptext).'</th></tr>'); |
&mt($crsgrptext).'</th></tr>'); |
if ($status eq 'old') { |
if ($status eq 'old') { |
my $max_id = 0; |
my $max_id = 0; |
foreach my $role_id (sort(keys(%{$content{'roles'}}))) { |
foreach my $role_id (sort(keys(%{$content->{'roles'}}))) { |
if ($role_id > $max_id) { |
if ($role_id > $max_id) { |
$max_id = $role_id; |
$max_id = $role_id; |
} |
} |
$max_id ++; |
$max_id ++; |
my $role_selects = &role_selectors($num,$role_id,$status,$type,\%content,'display'); |
my $role_selects = &role_selectors($num,$role_id,$status,$type,$content,'display'); |
$r->print('<tr><td><span style="white-space: nowrap"><label><input type="checkbox" name="delete_role_'.$num.'" value="'.$role_id.'" />'.&mt('Delete').'</label></span><br /><input type="hidden" name="preserve_role_'.$num.'" value="'.$role_id.'" /></td>'.$role_selects.'</tr>'); |
$r->print('<tr><td><span style="white-space: nowrap"><label><input type="checkbox" name="delete_role_'.$num.'" value="'.$role_id.'" />'.&mt('Delete').'</label></span><br /><input type="hidden" name="preserve_role_'.$num.'" value="'.$role_id.'" /></td>'.$role_selects.'</tr>'); |
} |
} |
$r->print('</table><br />'.&mt('Add a roles-based condition').' <input type="checkbox" name ="add_role_'.$num.'" onClick="javascript:setRoleOptions(this,'."'$num','$content{domain}','$content{number}','Course'".')" value="'.$max_id.'" /><input type="hidden" name="role_'.$num.'_'.$max_id.'" /><input type="hidden" name="access_'.$num.'_'.$max_id.'" /><input type="hidden" name="section_'.$num.'_'.$max_id.'" /><input type="hidden" name="group_'.$num.'_'.$max_id.'" /></td>'); |
$r->print('</table><br />'.&mt('Add a roles-based condition').' <input type="checkbox" name ="add_role_'.$num.'" onClick="javascript:setRoleOptions(this,'."'$num','$content->{'domain'}','$content->{'number'}','Course'".')" value="'.$max_id.'" /><input type="hidden" name="role_'.$num.'_'.$max_id.'" /><input type="hidden" name="access_'.$num.'_'.$max_id.'" /><input type="hidden" name="section_'.$num.'_'.$max_id.'" /><input type="hidden" name="group_'.$num.'_'.$max_id.'" /></td>'); |
} elsif ($status eq 'new') { |
} elsif ($status eq 'new') { |
my $role_id = 1; |
my $role_id = 1; |
my $role_selects = &role_selectors($num,$role_id,$status,$type,undef,'display'); |
my $role_selects = &role_selectors($num,$role_id,$status,$type,undef,'display'); |
Line 1277 sub select_files {
|
Line 1279 sub select_files {
|
$java_files.=','; |
$java_files.=','; |
} |
} |
my $javascript =(<<ENDSMP); |
my $javascript =(<<ENDSMP); |
<script language='javascript'> |
<script type="text/javascript"> |
function finishSelect() { |
function finishSelect() { |
ENDSMP |
ENDSMP |
$javascript .= 'fileList = "'.$java_files.'";'; |
$javascript .= 'fileList = "'.$java_files.'";'; |