version 1.154, 2003/12/27 14:42:57
|
version 1.156, 2003/12/28 20:12:59
|
Line 126 use Apache::loncommon();
|
Line 126 use Apache::loncommon();
|
use Apache::lonmysql; |
use Apache::lonmysql; |
use Apache::lonlocal; |
use Apache::lonlocal; |
use Apache::loncfile; |
use Apache::loncfile; |
|
use Apache::lonmeta; |
use vars qw(%metadatafields %metadatakeys); |
use vars qw(%metadatafields %metadatakeys); |
|
|
my %addid; |
my %addid; |
Line 791 sub store_metadata {
|
Line 792 sub store_metadata {
|
('metadata','url',$metadata{'url'}); |
('metadata','url',$metadata{'url'}); |
} else { |
} else { |
# store new data |
# store new data |
|
# adjust some values to metadatadatabase (e.g., "usage" is a reserved word) |
$metadata{'creationdate'}= |
$metadata{'creationdate'}= |
&Apache::lonmysql::sqltime($metadata{'creationdate'}); |
&Apache::lonmysql::sqltime($metadata{'creationdate'}); |
$metadata{'lastrevisiondate'}= |
$metadata{'lastrevisiondate'}= |
&Apache::lonmysql::sqltime($metadata{'lastrevisiondate'}); |
&Apache::lonmysql::sqltime($metadata{'lastrevisiondate'}); |
$status = &Apache::lonmysql::store_row('metadata',\%metadata); |
$metadata{'sequsage'}=$metadata{'usage'}; |
|
$metadata{'sequsage_list'}=$metadata{'usage_list'}; |
|
my %newmetadata=(); |
|
# see if we have old entries |
|
my @oldmeta=&Apache::lonmysql::get_rows('metadata', |
|
"url LIKE BINARY '". |
|
$metadata{'url'}."'"); |
|
if ($#oldmeta==0) { |
|
# yes, there is one old entry, transfer to newmetadata |
|
%newmetadata=&Apache::lonmeta::metadata_col_to_hash(@{$oldmeta[0]}); |
|
# remove old entry |
|
$status=&Apache::lonmysql::remove_from_table |
|
('metadata','url',$metadata{'url'}); |
|
} elsif ($#oldmeta>0) { |
|
# more than one entry fit - how did that happen? |
|
$error='<font color="red">Error occured retrieving old values in '. |
|
'metadata table in LON-CAPA database: '.$#oldmeta. |
|
' matches</font>'; |
|
&Apache::lonnet::logthis($error); |
|
return ($error,undef); |
|
} |
|
# store new data on top of it |
|
foreach (keys %metadata) { |
|
$newmetadata{$_}=$metadata{$_}; |
|
} |
|
$status = &Apache::lonmysql::store_row('metadata',\%newmetadata); |
} |
} |
if (! defined($status)) { |
if (! defined($status)) { |
$error='<font color="red">Error occured storing new values in '. |
$error='<font color="red">Error occured storing new values in '. |
Line 1622 sub publishdirectory {
|
Line 1649 sub publishdirectory {
|
my $resdir= |
my $resdir= |
$Apache::lonnet::perlvar{'lonDocRoot'}.'/res/'.$cudom.'/'.$cuname.'/'. |
$Apache::lonnet::perlvar{'lonDocRoot'}.'/res/'.$cudom.'/'.$cuname.'/'. |
$thisdisfn; |
$thisdisfn; |
$r->print('<h1>Directory <tt>'.$thisdisfn.'</tt></h1>'. |
$r->print('<h1>'.&mt('Directory').' <tt>'.$thisdisfn.'</tt></h1>'. |
'Target: <tt>'.$resdir.'</tt><br />'); |
&mt('Target').': <tt>'.$resdir.'</tt><br />'); |
|
|
my $dirptr=16384; # Mask indicating a directory in stat.cmode. |
my $dirptr=16384; # Mask indicating a directory in stat.cmode. |
|
|
Line 1661 sub publishdirectory {
|
Line 1688 sub publishdirectory {
|
if ($publishthis) { |
if ($publishthis) { |
&batchpublish($r,$fn.'/'.$filename,$resdir.'/'.$filename); |
&batchpublish($r,$fn.'/'.$filename,$resdir.'/'.$filename); |
} else { |
} else { |
$r->print('<br />Skipping '.$filename.'<br />'); |
$r->print('<br />'.&mt('Skipping').' '.$filename.'<br />'); |
} |
} |
$r->rflush(); |
$r->rflush(); |
} |
} |