version 1.11, 2002/05/24 13:53:43
|
version 1.21.2.1, 2003/10/08 20:33:34
|
Line 27
|
Line 27
|
# http://www.lon-capa.org/ |
# http://www.lon-capa.org/ |
# |
# |
# YEAR=2001 |
# YEAR=2001 |
# 8/7,8/8,10/14,10/15,12/10 Scott Harrison |
|
# YEAR=2002 |
# YEAR=2002 |
# 1/17 Scott Harrison |
|
# |
# |
### |
### |
|
|
Line 39 use strict;
|
Line 37 use strict;
|
|
|
use Apache::Constants qw(:common); |
use Apache::Constants qw(:common); |
use GDBM_File; |
use GDBM_File; |
|
use Apache::loncommon; |
|
|
my %hash; # variable to tie to user specific database |
my %hash; # variable to tie to user specific database |
my $iconpath; # variable to be accessible to multiple subroutines |
my $iconpath; # variable to be accessible to multiple subroutines |
|
|
|
sub cleanup { |
|
if (tied(%hash)){ |
|
&Apache::lonnet::logthis('Cleanup groupsort: hash'); |
|
unless (untie(%hash)) { |
|
&Apache::lonnet::logthis('Failed cleanup groupsort: hash'); |
|
} |
|
} |
|
} |
|
|
# ---------------------------------------------------------------- Main Handler |
# ---------------------------------------------------------------- Main Handler |
sub handler { |
sub handler { |
my $r = shift; |
my $r = shift; |
|
|
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
['acts','catalogmode','mode']); |
['acts','catalogmode','mode']); |
|
|
# color scheme |
# color scheme |
my $fileclr = '#ffffe6'; |
my $fileclr = '#ffffe6'; |
my $titleclr = '#ddffff'; |
my $titleclr = '#ddffff'; |
Line 60 sub handler {
|
Line 67 sub handler {
|
|
|
# finish_import looks different for graphical or "simple" RAT |
# finish_import looks different for graphical or "simple" RAT |
my $finishimport=''; |
my $finishimport=''; |
if ($ENV{'form.mode'} eq 'simple') { |
if ($ENV{'form.mode'} eq 'simple' || $ENV{'form.mode'} eq '') { |
$finishimport=(<<ENDSMP); |
$finishimport=(<<ENDSMP); |
function finish_import() { |
function finish_import() { |
opener.document.forms.simpleedit.importdetail.value=''; |
opener.document.forms.simpleedit.importdetail.value=''; |
Line 131 function orderchange(val,newval) {
|
Line 138 function orderchange(val,newval) {
|
} |
} |
</script> |
</script> |
</head> |
</head> |
<body bgcolor="#FFFFFF"> |
|
END |
END |
|
$r->print(&Apache::loncommon::bodytag('Sort Imported Resources')); |
# read pertinent machine configuration |
# read pertinent machine configuration |
my $domain = $r->dir_config('lonDefDomain'); |
my $domain = $r->dir_config('lonDefDomain'); |
$iconpath = $r->dir_config('lonIconsURL') . "/"; |
$iconpath = $r->dir_config('lonIconsURL') . "/"; |
Line 145 END
|
Line 151 END
|
# ------------------------------ which file do we open? Easy if explictly given |
# ------------------------------ which file do we open? Easy if explictly given |
if ($ENV{'form.catalogmode'} eq 'groupsearch') { |
if ($ENV{'form.catalogmode'} eq 'groupsearch') { |
$diropendb = |
$diropendb = |
"/home/httpd/perl/tmp/$domain\_$ENV{'user.name'}_searchcat.db"; |
"/home/httpd/perl/tmp/$ENV{'user.domain'}_$ENV{'user.name'}_searchcat.db"; |
} |
} |
elsif ($ENV{'form.catalogmode'} eq 'groupimport') { |
elsif ($ENV{'form.catalogmode'} eq 'groupimport') { |
$diropendb = |
$diropendb = |
"/home/httpd/perl/tmp/$domain\_$ENV{'user.name'}_indexer.db"; |
"/home/httpd/perl/tmp/$ENV{'user.domain'}_$ENV{'user.name'}_indexer.db"; |
} |
} |
elsif ($ENV{'form.catalogmode'} eq 'groupsec') { |
elsif ($ENV{'form.catalogmode'} eq 'groupsec') { |
$diropendb = |
$diropendb = |
"/home/httpd/perl/tmp/$domain\_$ENV{'user.name'}_groupsec.db"; |
"/home/httpd/perl/tmp/$ENV{'user.domain'}_$ENV{'user.name'}_groupsec.db"; |
} |
} |
# --------------------- not explicitly given, choose the one most recently used |
# --------------------- not explicitly given, choose the one most recently used |
else { # choose last accessed |
else { # choose last accessed |
Line 161 END
|
Line 167 END
|
my @dbst; |
my @dbst; |
|
|
$dbfn[0] = |
$dbfn[0] = |
"/home/httpd/perl/tmp/$domain\_$ENV{'user.name'}_searchcat.db"; |
"/home/httpd/perl/tmp/$ENV{'user.domain'}_$ENV{'user.name'}_searchcat.db"; |
$dbst[0]=-1; |
$dbst[0]=-1; |
if (-e $dbfn[0]) { |
if (-e $dbfn[0]) { |
$dbst[0]=(stat($dbfn[0]))[9]; |
$dbst[0]=(stat($dbfn[0]))[9]; |
} |
} |
$dbfn[1] = |
$dbfn[1] = |
"/home/httpd/perl/tmp/$domain\_$ENV{'user.name'}_indexer.db"; |
"/home/httpd/perl/tmp/$ENV{'user.domain'}_$ENV{'user.name'}_indexer.db"; |
$dbst[1]=-1; |
$dbst[1]=-1; |
if (-e $dbfn[1]) { |
if (-e $dbfn[1]) { |
$dbst[1]=(stat($dbfn[1]))[9]; |
$dbst[1]=(stat($dbfn[1]))[9]; |
} |
} |
$dbfn[2] = |
$dbfn[2] = |
"/home/httpd/perl/tmp/$domain\_$ENV{'user.name'}_groupsec.db"; |
"/home/httpd/perl/tmp/$ENV{'user.domain'}_$ENV{'user.name'}_groupsec.db"; |
$dbst[2]=-1; |
$dbst[2]=-1; |
if (-e $dbfn[2]) { |
if (-e $dbfn[2]) { |
$dbst[2]=(stat($dbfn[2]))[9]; |
$dbst[2]=(stat($dbfn[2]))[9]; |
Line 184 END
|
Line 190 END
|
# Okay, find most recent existing |
# Okay, find most recent existing |
|
|
my $newest=0; |
my $newest=0; |
my $diropendb=''; |
$diropendb=''; |
for (my $i=0; $i<=$#dbfn; $i++) { |
for (my $i=0; $i<=$#dbfn; $i++) { |
if ($dbst[$i]>$newest) { |
if ($dbst[$i]>$newest) { |
$newest=$dbst[$i]; |
$newest=$dbst[$i]; |
Line 194 END
|
Line 200 END
|
|
|
} |
} |
# ----------------------------- diropendb is now the filename of the db to open |
# ----------------------------- diropendb is now the filename of the db to open |
if (tie(%hash,'GDBM_File',$diropendb,&GDBM_WRCREAT,0640)) { |
if (tie(%hash,'GDBM_File',$diropendb,&GDBM_WRCREAT(),0640)) { |
my $acts = $ENV{'form.acts'}; |
my $acts = $ENV{'form.acts'}; |
my @Acts = split(/b/,$acts); |
my @Acts = split(/b/,$acts); |
my %ahash; |
my %ahash; |
Line 284 END
|
Line 290 END
|
untie %hash; |
untie %hash; |
my $ctr = 0; |
my $ctr = 0; |
my $clen = scalar(keys %shash); |
my $clen = scalar(keys %shash); |
$r->print('<h2><font color="#888888">The LearningOnline With CAPA '. |
$r->print(<<END); |
'Group Sorter</font></h2>'."\n"); |
<b><font color="#888888">Finalize order of resources</font></b> |
$r->print('<b><font color="#888888">Finalize order of resources</font>'. |
<form method='post' action='/adm/groupsort' name='groupsort' |
'</b>'."\n"); |
enctype='application/x-www-form-urlencoded'> |
$r->print("<form method='post' action='/adm/groupsort' name='groupsort' ". |
|
"enctype='application/x-www-form-urlencoded'>"); |
|
$r->print(<<END); |
|
<input type="hidden" name="fnum" value="$clen" /> |
<input type="hidden" name="fnum" value="$clen" /> |
<input type="hidden" name="oldval" value="" /> |
<input type="hidden" name="oldval" value="" /> |
<input type="hidden" name="newval" value="" /> |
<input type="hidden" name="newval" value="" /> |
|
<input type="hidden" name="mode" value="$ENV{'form.mode'}" /> |
END |
END |
|
|
# --- Expand here if "GO BACK" button desired |
# --- Expand here if "GO BACK" button desired |
Line 305 END
|
Line 309 END
|
} |
} |
if ($ENV{'form.catalogmode'} eq 'groupsearch') { |
if ($ENV{'form.catalogmode'} eq 'groupsearch') { |
$r->print(<<END); |
$r->print(<<END); |
<input type="button" name="alter" value="GO BACK" |
<input type="button" name="alter" value="New Search" |
onClick="window.location='/adm/searchcat?catalogmode=groupsearch'" /> |
onClick="window.location='/adm/searchcat?catalogmode=groupsearch&cleargroupsort=1'" /> |
END |
END |
} |
} |
# --- |
# --- |
|
|
$r->print(<<END); |
$r->print(<<END); |
Line 327 END
|
Line 331 END
|
$ctr++; |
$ctr++; |
my @file_ext = split(/\./,$key); |
my @file_ext = split(/\./,$key); |
my $curfext = $file_ext[scalar(@file_ext)-1]; |
my $curfext = $file_ext[scalar(@file_ext)-1]; |
|
my $iconname="unknown.gif"; |
|
my $embstyle = &Apache::loncommon::fileembstyle($curfext); |
|
# The unless conditional that follows is a bit of overkill |
|
$iconname = $curfext.".gif" unless |
|
(!defined($embstyle) || $embstyle eq 'unk' || $embstyle eq 'hdn'); |
$r->print("<tr><td bgcolor='$fileclr'>"); |
$r->print("<tr><td bgcolor='$fileclr'>"); |
$r->print(&movers($clen,$ctr)); |
$r->print(&movers($clen,$ctr)); |
$r->print(&hidden($ctr-1,$thash{$key},$key)); |
$r->print(&hidden($ctr-1,$thash{$key},$key)); |
$r->print("</td><td bgcolor='$fileclr'>"); |
$r->print("</td><td bgcolor='$fileclr'>"); |
$r->print(&select_box($clen,$ctr)); |
$r->print(&select_box($clen,$ctr)); |
$r->print("</td><td bgcolor='$fileclr'>"); |
$r->print("</td><td bgcolor='$fileclr'>"); |
$r->print("<img src='$iconpath$curfext.gif'>"); |
$r->print("<img src='$iconpath$iconname'>"); |
$r->print("</td><td bgcolor='$fileclr'>"); |
$r->print("</td><td bgcolor='$fileclr'>"); |
$r->print("$thash{$key}</td><td bgcolor='$fileclr'>\n"); |
$r->print("$thash{$key}</td><td bgcolor='$fileclr'>\n"); |
$r->print("$key</td></tr>\n"); |
$r->print("$key</td></tr>\n"); |