version 1.5, 2001/12/11 03:37:11
|
version 1.10, 2002/05/13 16:00:53
|
Line 28
|
Line 28
|
# |
# |
# YEAR=2001 |
# YEAR=2001 |
# 8/7,8/8,10/14,10/15,12/10 Scott Harrison |
# 8/7,8/8,10/14,10/15,12/10 Scott Harrison |
|
# YEAR=2002 |
|
# 1/17 Scott Harrison |
# |
# |
### |
### |
|
|
Line 44 my $iconpath; # variable to be accessibl
|
Line 46 my $iconpath; # variable to be accessibl
|
# ---------------------------------------------------------------- Main Handler |
# ---------------------------------------------------------------- Main Handler |
sub handler { |
sub handler { |
my $r = shift; |
my $r = shift; |
|
|
|
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
|
['acts','catalogmode','mode']); |
|
|
# color scheme |
# color scheme |
my $fileclr = '#ffffe6'; |
my $fileclr = '#ffffe6'; |
Line 53 sub handler {
|
Line 58 sub handler {
|
$r->send_http_header; |
$r->send_http_header; |
return OK if $r->header_only; |
return OK if $r->header_only; |
|
|
# output start of web page |
# finish_import looks different for graphical or "simple" RAT |
$r->print(<<END); |
my $finishimport=''; |
<html> |
if ($ENV{'form.mode'} eq 'simple') { |
<head> |
$finishimport=(<<ENDSMP); |
<title>The LearningOnline Network With CAPA Group Sorter</title> |
function finish_import() { |
<script language='javascript'> |
opener.document.forms.simpleedit.importdetail.value=''; |
function insertRowInLastRow() { |
for (var num=0; num<document.forms.groupsort.fnum.value; num++) { |
opener.insertrow(opener.maxrow); |
opener.document.forms.simpleedit.importdetail.value+='&'+ |
opener.addobj(opener.maxrow,'e&2'); |
escape(eval("document.forms.groupsort.title"+num+".value"))+'='+ |
} |
escape(eval("document.forms.groupsort.filelink"+num+".value")); |
function placeResourceInLastRow (title,url,linkflag) { |
|
opener.newresource(opener.maxrow,2,opener.escape(title), |
|
opener.escape(url),'false','normal'); |
|
opener.save(); |
|
opener.mostrecent=opener.obj.length-1; |
|
if (linkflag) { |
|
opener.joinres(opener.linkmode,opener.mostrecent,0); |
|
} |
} |
opener.linkmode=opener.mostrecent; |
opener.document.forms.simpleedit.submit(); |
|
self.close(); |
} |
} |
|
ENDSMP |
|
} else { |
|
$finishimport=(<<ENDADV); |
function finish_import() { |
function finish_import() { |
var linkflag=false; |
var linkflag=false; |
for (var num=0; num<document.forms.groupsort.fnum.value; num++) { |
for (var num=0; num<document.forms.groupsort.fnum.value; num++) { |
Line 87 function finish_import() {
|
Line 89 function finish_import() {
|
opener.editmode=0; |
opener.editmode=0; |
opener.notclear=0; |
opener.notclear=0; |
opener.linkmode=0; |
opener.linkmode=0; |
opener.infoclear(); |
|
opener.draw(); |
opener.draw(); |
self.close(); |
self.close(); |
} |
} |
|
ENDADV |
|
} |
|
|
|
# output start of web page |
|
|
|
$r->print(<<END); |
|
<html> |
|
<head> |
|
<title>The LearningOnline Network With CAPA Group Sorter</title> |
|
<script language='javascript'> |
|
function insertRowInLastRow() { |
|
opener.insertrow(opener.maxrow); |
|
opener.addobj(opener.maxrow,'e&2'); |
|
} |
|
function placeResourceInLastRow (title,url,linkflag) { |
|
opener.newresource(opener.maxrow,2,opener.escape(title), |
|
opener.escape(url),'false','normal'); |
|
opener.save(); |
|
opener.mostrecent=opener.obj.length-1; |
|
if (linkflag) { |
|
opener.joinres(opener.linkmode,opener.mostrecent,0); |
|
} |
|
opener.linkmode=opener.mostrecent; |
|
} |
|
$finishimport |
function selectchange(val) { |
function selectchange(val) { |
var newval=0+eval("document.forms.groupsort.alt"+val+".selectedIndex"); |
var newval=0+eval("document.forms.groupsort.alt"+val+".selectedIndex"); |
orderchange(val,newval); |
orderchange(val,newval); |
Line 114 END
|
Line 140 END
|
|
|
my %shash; # sort order (key is resource location, value is sort order) |
my %shash; # sort order (key is resource location, value is sort order) |
my %thash; # title (key is resource location, value is title) |
my %thash; # title (key is resource location, value is title) |
foreach (split(/&/,$ENV{'QUERY_STRING'})) { |
|
my ($name, $value) = split(/=/,$_); |
|
$value =~ tr/+/ /; |
|
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg; |
|
if ($name eq 'acts') { |
|
$ENV{'form.'.$name}=$value; |
|
} |
|
if ($name eq 'catalogmode') { |
|
$ENV{'form.'.$name}=$value; |
|
} |
|
} |
|
my $diropendb; |
my $diropendb; |
if ($ENV{'form.catalogmode'} eq 'groupsearch') { |
if ($ENV{'form.catalogmode'} eq 'groupsearch') { |
$diropendb = |
$diropendb = |
Line 134 END
|
Line 150 END
|
$diropendb = |
$diropendb = |
"/home/httpd/perl/tmp/$domain\_$ENV{'user.name'}_indexer.db"; |
"/home/httpd/perl/tmp/$domain\_$ENV{'user.name'}_indexer.db"; |
} |
} |
|
else { # choose last accessed |
|
my $dsearch; my $dindex; |
|
my $dsearcht; my $dindext; |
|
$dsearch = |
|
"/home/httpd/perl/tmp/$domain\_$ENV{'user.name'}_searchcat.db"; |
|
if (-e $dsearch) { |
|
$dsearcht=(stat($dsearch))[9]; |
|
} |
|
$dindex = |
|
"/home/httpd/perl/tmp/$domain\_$ENV{'user.name'}_indexer.db"; |
|
if (-e $dindex) { |
|
$dindext=(stat($dindex))[9]; |
|
} |
|
if (!$dsearcht and !$dindext) { |
|
$diropendb=''; |
|
} |
|
elsif ($dsearcht>$dindext) { |
|
$diropendb=$dsearch; |
|
} |
|
else { |
|
$diropendb=$dindex; |
|
} |
|
} |
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); |