+
+END
}
-# Expand here for more modes
-# ....
-
-# Okay, find most recent existing
- my $newest=0;
- my $diropendb='';
- for (my $i=0; $i<=$#dbfn; $i++) {
- if ($dbst[$i]>$newest) {
- $newest=$dbst[$i];
- $diropendb=$dbfn[$i];
+ # Only display header if content exists
+ if ($clen > 0) {
+ $r->print(&Apache::loncommon::start_data_table()
+ .&Apache::loncommon::start_data_table_header_row());
+ if (($env{'form.readfile'})) {
+ $r->print("
$lt{'in'}
\n");
+ } else {
+ $r->print('
'.$lt{'co'}.'
'."\n");
}
+ $r->print('
'.$lt{'ti'}.'
'."\n");
+ $r->print("
$lt{'pa'}
");
+ $r->print(&Apache::loncommon::end_data_table_header_row()."\n");
+ } else {
+ my $errtxt = '';
+ if ($env{'form.recover'}) {
+ $errtxt = 'There are no resources to recover.';
+ } else {
+ $errtxt = 'There are no resources to import.';
+ }
+ if ($env{'form.bookmarks'}) {
+ $errtxt = 'There are no resources in your bookmarks to import.';
+ }
+ $r->print('
'.&mt($errtxt).'
');
}
-
- }
-# ----------------------------- diropendb is now the filename of the db to open
- if (tie(%hash,'GDBM_File',$diropendb,&GDBM_WRCREAT,0640)) {
- my $acts = $ENV{'form.acts'};
- 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') {
-# my $keyz=join(" ",keys %hash);
-# print " $key $keyz".$hash{'pre_'.$key.'_link'}." \n";
- $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) {
- if ($_ =~ /^store_/) {
- my $key = $_;
- $key =~ s/^store_//;
- $shash{$key} = $hash{'storectr_'.$key};
- $thash{$key} = $hash{'store_'.$key};
- }
- }
- if ($ENV{'form.oldval'}) {
- my $newctr = 0;
- my %chash;
- foreach (sort {$shash{$a} <=> $shash{$b}} (keys %shash)) {
- my $key = $_;
- $newctr++;
- $shash{$key} = $newctr;
- $hash{'storectr_'.$key} = $newctr;
- $chash{$newctr} = $key;
- }
- my $oldval = $ENV{'form.oldval'};
- my $newval = $ENV{'form.newval'};
- if ($oldval != $newval) {
- # when newval==0, then push down and delete
- if ($newval!=0) {
- $shash{$chash{$oldval}} = $newval;
- $hash{'storectr_'.$chash{$oldval}} = $newval;
- }
- else {
- $shash{$chash{$oldval}} = $newctr;
- $hash{'storectr_'.$chash{$oldval}} = $newctr;
- }
- if ($newval==0) { # push down
- my $newval2=$newctr;
- for my $idx ($oldval..($newval2-1)) {
- $shash{$chash{$idx+1}} = $idx;
- $hash{'storectr_'.$chash{$idx+1}} = $idx;
- }
- delete $shash{$chash{$oldval}};
- delete $hash{'storectr_'.$chash{$oldval}};
- delete $hash{'store_'.$chash{$oldval}};
- }
- elsif ($oldval < $newval) { # push down
- for my $idx ($oldval..($newval-1)) {
- $shash{$chash{$idx+1}} = $idx;
- $hash{'storectr_'.$chash{$idx+1}} = $idx;
- }
- }
- elsif ($oldval > $newval) { # push up
- for my $idx (reverse($newval..($oldval-1))) {
- $shash{$chash{$idx}} = $idx+1;
- $hash{'storectr_'.$chash{$idx}} = $idx+1;
- }
- }
- }
- }
} else {
- $r->print('Unable to tie hash to db file