version 1.53, 2007/07/06 08:34:37
|
version 1.55, 2007/07/11 23:51:19
|
Line 43 my $iconpath; # variable to be accessibl
|
Line 43 my $iconpath; # variable to be accessibl
|
my %hash; # variable to tie to user specific database |
my %hash; # variable to tie to user specific database |
|
|
|
|
|
sub update_actions_hash { |
|
my ($hash) = @_; |
|
my $acts=$env{'form.acts'}; |
|
my @Acts=split(/b/,$acts); |
|
my %ahash; |
|
my %achash; |
|
my $ac=0; |
|
# some initial hashes for working with data |
|
foreach (@Acts) { |
|
my ($state,$ref)=split(/a/); |
|
$ahash{$ref}=$state; |
|
$achash{$ref}=$ac; |
|
$ac++; |
|
} |
|
# sorting through the actions and changing the global database hash |
|
foreach my $key (sort {$achash{$a}<=>$achash{$b}} (keys %ahash)) { |
|
if ($ahash{$key} eq '1') { |
|
$hash->{'store_'.$hash{'pre_'.$key.'_link'}}= |
|
$hash->{'pre_'.$key.'_title'}; |
|
$hash->{'storectr_'.$hash{'pre_'.$key.'_link'}}= |
|
$hash->{'storectr'}+0; |
|
$hash->{'storectr'}++; |
|
} |
|
if ($ahash{$key} eq '0') { |
|
if ($hash->{'store_'.$hash{'pre_'.$key.'_link'}}) { |
|
delete($hash->{'store_'.$hash{'pre_'.$key.'_link'}}); |
|
} |
|
} |
|
} |
|
# deleting the previously cached listing |
|
foreach my $key (keys(%{ $hash })) { |
|
next if ($key !~ /^pre_(\d+)_link/); |
|
my $which = $1; |
|
delete($hash->{'pre_'.$which.'_title'}); |
|
delete($hash->{'pre_'.$which.'_link'}); |
|
} |
|
} |
|
|
sub readfromdb { |
sub readfromdb { |
my ($r,$shash,$thash)=@_; |
my ($r,$shash,$thash)=@_; |
|
|
Line 51 sub readfromdb {
|
Line 89 sub readfromdb {
|
|
|
# ----------------------------- 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'}; |
&update_actions_hash(\%hash); |
my @Acts = split(/b/,$acts); |
|
my %ahash; |
|
my %achash; |
|
my $ac = 0; |
|
foreach (@Acts) { |
|
my ($state,$ref) = split(/a/); |
|
$ahash{$ref} = $state; |
|
$achash{$ref} = $ac; |
|
$ac++; |
|
} |
|
foreach (sort {$achash{$a} <=> $achash{$b}} (keys %ahash)) { |
|
my $key = $_; |
|
if ($ahash{$key} eq '1') { |
|
if ($hash{'pre_'.$key.'_title'} eq 'Not_retrieved') { |
|
$hash{'pre_'.$key.'_title'} = &Apache::lonnet::gettitle($hash{'pre_'.$key.'_link'}); |
|
} |
|
$hash{'store_'.$hash{'pre_'.$key.'_link'}} = |
|
$hash{'pre_'.$key.'_title'}; |
|
$hash{'storectr_'.$hash{'pre_'.$key.'_link'}} = |
|
$hash{'storectr'}+0; |
|
$hash{'storectr'}++; |
|
} |
|
if ($ahash{$key} eq '0') { |
|
if ($hash{'store_'.$hash{'pre_'.$key.'_link'}}) { |
|
delete $hash{'store_'.$hash{'pre_'.$key.'_link'}}; |
|
} |
|
} |
|
} |
|
foreach (keys %hash) { |
foreach (keys %hash) { |
if ($_ =~ /^store_/) { |
if ($_ =~ /^store_/) { |
my $key = $_; |
my $key = $_; |
Line 353 END
|
Line 364 END
|
<input type="hidden" name="recover" value="$env{'form.recover'}" /> |
<input type="hidden" name="recover" value="$env{'form.recover'}" /> |
END |
END |
|
|
|
$r->print(&Apache::loncommon::inhibit_menu_check('input')); |
# --- |
# --- |
|
|
if ($env{'form.recover'}) { |
if ($env{'form.recover'}) { |
Line 368 END
|
Line 379 END
|
&Apache::loncommon::escape_single(&Apache::loncommon::lastresurl()); |
&Apache::loncommon::escape_single(&Apache::loncommon::lastresurl()); |
$r->print(<<END); |
$r->print(<<END); |
<input type="button" name="alter" value="$lt{'ci'}" |
<input type="button" name="alter" value="$lt{'ci'}" |
onClick="window.location='$resurl?catalogmode=import'" /> |
onClick="window.location='$resurl?inhibitmenu=yes&catalogmode=import'" /> |
<input type="button" name="altersearch" value="$lt{'cs'}" |
<input type="button" name="altersearch" value="$lt{'cs'}" |
onClick="window.location='/adm/searchcat?catalogmode=import'" /> |
onClick="window.location='/adm/searchcat?inhibitmenu=yes&catalogmode=import'" /> |
<input type="button" name="alter" value="$lt{'fi'}" |
<input type="button" name="alter" value="$lt{'fi'}" |
onClick="finish_import()" /> |
onClick="finish_import()" /> |
<input type="button" name="alter" value="$lt{'ca'}" onClick="self.close()" /> |
<input type="button" name="alter" value="$lt{'ca'}" onClick="self.close()" /> |
Line 396 END
|
Line 407 END
|
<input type="hidden" name="newval" value="" /> |
<input type="hidden" name="newval" value="" /> |
<input type="hidden" name="mode" value="$env{'form.mode'}" /> |
<input type="hidden" name="mode" value="$env{'form.mode'}" /> |
END |
END |
|
$r->print(&Apache::loncommon::inhibit_menu_check('input')); |
|
|
} |
} |
foreach (sort {$shash{$a}<=>$shash{$b}} (keys %shash)) { |
foreach (sort {$shash{$a}<=>$shash{$b}} (keys %shash)) { |
my $key=$_; |
my $key=$_; |