version 1.150, 2004/12/10 19:21:21
|
version 1.155, 2004/12/13 01:57:10
|
Line 1152 END
|
Line 1152 END
|
} elsif ($url=~m|^/ext/|) { |
} elsif ($url=~m|^/ext/|) { |
$url='/adm/wrapper'.$url; |
$url='/adm/wrapper'.$url; |
} |
} |
unless ($container eq 'page') { |
$url.=(($url=~/\?/)?'&':'?').'symb='.&Apache::lonnet::escape($symb); |
|
if ($container eq 'page') { |
|
my $symb=$ENV{'form.pagesymb'}; |
|
|
|
$url=&Apache::lonnet::clutter((&Apache::lonnet::decode_symb($symb))[2]); |
$url.=(($url=~/\?/)?'&':'?').'symb='.&Apache::lonnet::escape($symb); |
$url.=(($url=~/\?/)?'&':'?').'symb='.&Apache::lonnet::escape($symb); |
} |
} |
} |
} |
my $parameterset=' '; |
my $parameterset=' '; |
if ($isfolder) { |
if ($isfolder) { |
Line 1176 END
|
Line 1180 END
|
my $folderpath=$ENV{'form.folderpath'}; |
my $folderpath=$ENV{'form.folderpath'}; |
if ($folderpath) { $pagepath = $folderpath.'&' }; |
if ($folderpath) { $pagepath = $folderpath.'&' }; |
$pagepath.=$pagearg.'&'.$pagename; |
$pagepath.=$pagearg.'&'.$pagename; |
$url.='pagepath='.&Apache::lonnet::escape($pagepath); |
my $symb=$ENV{'form.pagesymb'}; |
|
if (!$symb) { |
|
my $path='uploaded/'. |
|
$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}.'/'. |
|
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}.'/'; |
|
$symb=&Apache::lonnet::encode_symb($path.$folder.'.sequence', |
|
$residx, |
|
$path.$pagearg.'.page'); |
|
} |
|
$url.='pagepath='.&Apache::lonnet::escape($pagepath). |
|
'&pagesymb='.&Apache::lonnet::escape($symb); |
} |
} |
$line.='<td bgcolor="#FFFFBB"><a href="'.$url.'"><img src="'.$icon. |
$line.='<td bgcolor="#FFFFBB"><a href="'.$url.'"><img src="'.$icon. |
'" border="0"></a></td>'. |
'" border="0"></a></td>'. |
Line 1210 ENDPARMS
|
Line 1224 ENDPARMS
|
sub tiehash { |
sub tiehash { |
my ($mode)=@_; |
my ($mode)=@_; |
$hashtied=0; |
$hashtied=0; |
&Apache::lonnet::logthis(" tiehash1 -- $hashtied "); |
|
if ($ENV{'request.course.fn'}) { |
if ($ENV{'request.course.fn'}) { |
&Apache::lonnet::logthis(" tiehash2 -- $hashtied "); |
|
if ($mode eq 'write') { |
if ($mode eq 'write') { |
&Apache::lonnet::logthis(" tiehash3 -- $hashtied "); |
|
if (tie(%hash,'GDBM_File',$ENV{'request.course.fn'}.".db", |
if (tie(%hash,'GDBM_File',$ENV{'request.course.fn'}.".db", |
&GDBM_WRCREAT(),0640)) { |
&GDBM_WRCREAT(),0640)) { |
$hashtied=2; |
$hashtied=2; |
&Apache::lonnet::logthis(" tiehash4 -- $hashtied "); |
|
} |
} |
} else { |
} else { |
&Apache::lonnet::logthis(" tiehash5 -- $hashtied "); |
|
if (tie(%hash,'GDBM_File',$ENV{'request.course.fn'}.".db", |
if (tie(%hash,'GDBM_File',$ENV{'request.course.fn'}.".db", |
&GDBM_READER(),0640)) { |
&GDBM_READER(),0640)) { |
$hashtied=1; |
$hashtied=1; |
&Apache::lonnet::logthis(" tiehash6 -- $hashtied "); |
|
} |
} |
} |
} |
} |
} |
&Apache::lonnet::logthis(" tiehash7 -- $hashtied "); |
|
} |
} |
|
|
sub untiehash { |
sub untiehash { |
&Apache::lonnet::logthis(" untiehash1 -- $hashtied "); |
|
if ($hashtied) { untie %hash; } |
if ($hashtied) { untie %hash; } |
$hashtied=0; |
$hashtied=0; |
&Apache::lonnet::logthis(" untiehash2 -- $hashtied "); |
|
} |
} |
|
|
# --------------------------------------------------------------- check on this |
# --------------------------------------------------------------- check on this |
Line 1592 ENDHEADERS
|
Line 1597 ENDHEADERS
|
|
|
sub mark_hash_old { |
sub mark_hash_old { |
my $retie_hash=0; |
my $retie_hash=0; |
&Apache::lonnet::logthis(" markold1 -- $hashtied $retie_hash "); |
|
if ($hashtied) { |
if ($hashtied) { |
$retie_hash=1; |
$retie_hash=1; |
&Apache::lonnet::logthis(" markold2 -- $hashtied $retie_hash "); |
|
&untiehash(); |
&untiehash(); |
&Apache::lonnet::logthis(" markold3 -- $hashtied $retie_hash "); |
|
} |
} |
&tiehash('write'); |
&tiehash('write'); |
&Apache::lonnet::logthis(" markold4 -- $hashtied $retie_hash "); |
|
$hash{'old'}=1; |
$hash{'old'}=1; |
&Apache::lonnet::logthis(" markold5 -- $hashtied $retie_hash "); |
|
&untiehash(); |
&untiehash(); |
&Apache::lonnet::logthis(" markold6 -- $hashtied $retie_hash "); |
|
if ($retie_hash) { &tiehash(); } |
if ($retie_hash) { &tiehash(); } |
&Apache::lonnet::logthis(" markold7 -- $hashtied $retie_hash "); |
|
} |
} |
|
|
sub is_hash_old { |
sub is_hash_old { |
Line 1683 sub handler {
|
Line 1681 sub handler {
|
# is this a standard course? |
# is this a standard course? |
|
|
my $standard=($ENV{'request.course.uri'}=~/^\/uploaded\//); |
my $standard=($ENV{'request.course.uri'}=~/^\/uploaded\//); |
my $forcestandard; |
my $forcestandard = 0; |
my $forcesupplement; |
my $forcesupplement; |
my $script=''; |
my $script=''; |
my $allowed; |
my $allowed; |
Line 1692 sub handler {
|
Line 1690 sub handler {
|
my $containertag; |
my $containertag; |
my $uploadtag; |
my $uploadtag; |
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
['folderpath','pagepath']); |
['folderpath','pagepath','pagesymb']); |
if ($ENV{'form.folderpath'}) { |
if ($ENV{'form.folderpath'}) { |
my (@folderpath)=split('&',$ENV{'form.folderpath'}); |
my (@folderpath)=split('&',$ENV{'form.folderpath'}); |
$ENV{'form.foldername'}=&Apache::lonnet::unescape(pop(@folderpath)); |
$ENV{'form.foldername'}=&Apache::lonnet::unescape(pop(@folderpath)); |
Line 1709 sub handler {
|
Line 1707 sub handler {
|
$showdoc='/'.$1; |
$showdoc='/'.$1; |
} |
} |
unless ($showdoc) { # got called from remote |
unless ($showdoc) { # got called from remote |
$forcestandard=($ENV{'form.folder'}=~/^default_/); |
if (($ENV{'form.folder'}=~/^default_$/) || |
|
($ENV{'form.folder'} =~ m#^\d+/(pages|sequences)/#)) { |
|
$forcestandard = 1; |
|
} |
$forcesupplement=($ENV{'form.folder'}=~/^supplemental_/); |
$forcesupplement=($ENV{'form.folder'}=~/^supplemental_/); |
|
|
# does this user have privileges to post, etc? |
# does this user have privileges to post, etc? |