[calc]
my $data = q{[version extended=1 modules=1 joiner=""]};
$dbstatus = q{[version extended=1 modtest="GDBM_File"][version extended=1 modtest="DB_File"]};
return unless $data =~ /IMPORTANT/ or $dbstatus < 1;
my @lines = grep /not\s+found|IMPORTANT/, split /
/, $data;
my @important = grep /IMPORTANT/, @lines;
my @minor = grep $_ !~ /IMPORTANT/, @lines;
my $imp = join '
', @important;
my $minor = join '
', @minor;
my $out = '';
$out .= <
Admin interface will not work properly.
Please install needed Perl modules:
$imp
$minor
The easiest way to do this is to use the CPAN module and do:
perl -MCPAN -e 'install Bundle::Interchange'
|
EOF
if($dbstatus < 1) {
$out .= <
You need either GDBM_File or DB_File for Interchange to work as documented.
Contact your system administrator about rebuilding Perl with GDBM or Berkeley DB.
|
EOF
}
return $out;
[/calc]
[perl tables="__UI_META_TABLE__ mv_metadata"]
delete $Scratch->{merge_complete};
delete $Scratch->{do_merge};
my $tab = q{__UI_META_TABLE__} || 'mv_metadata';
my $db = $Db{$tab}
or do {
$Scratch->{merge_complete}
= errmsg("Cannot merge: no meta table '%s'", $tab);
return;
};
my $newver = $Tag->version();
$Scratch->{newver} = $newver;
my $compnew = $newver;
$compnew =~ s/\D+//g;
my $curver = 0;
if($db->record_exists('ui-version')) {
$curver = $db->field("ui-version", 'label');
}
$Scratch->{curver} = $curver;
my $compcur = $curver;
$compcur =~ s/\D+//g;
if ($curver eq $newver) {
## All is copasetic
}
elsif($compcur gt $compnew) {
## I guess this is OK
}
else {
return qq{
[L]UI update appears to have been done and metadata has not
been updated for this catalog...[/L]
[page href=admin/merge_meta extra=class=titlebox][L]Merge Metadata[/L]
|
};
}
return;
[/perl]
[menu
name=Top
superuser=super
inactive=inactive
localize=name,description
ui_security=depends_on
lr=1]
{IMG_ICON?}
{/IMG_ICON?}
|
{NAME}
|
{DESCRIPTION}
|
[/menu]