[! use strict; use PVE::pvecfg; use PVE::I18N; use PVE::ConfigServer; use PVE::HTMLDropDown; use PVE::HTMLTable; use PVE::HTMLControls; use PVE::HTMLUtils; use PVE::APLInfo; !] [- use strict; my $cinfo = $fdat{__cinfo}; my $out = ''; my $pkglist = PVE::APLInfo::load_data(); if ($udat{action}) { eval { check_write_mode ($udat{AM}); my $conn = PVE::ConfigClient::connect (); $udat{apldl_track_id} = $conn->apl_start_download ($udat{auth_username}, $fdat{aa})->result; }; $udat{popup_error} = $@ if $@; return; } if ($udat{apldl_track_id}) { $out .= PVE::HTMLUtils::create_apldownload_frame ($udat{auth_username}, $udat{apldl_track_id}); $out .= "
\n"; } if ($fdat{showinfo} && (my $d = $pkglist->{'all'}->{$fdat{showinfo}})) { print OUT PVE::HTMLUtils::create_pkginfo_frame ($d, 1); return; } my @header = ('1', '20px', ' ', '1', '10px', ' ', '1', '300px', __('Description'), '1', '100px', __('Version'), '1', '100px', __('Type'), '1', '200px', __('Package name'), ); my $ddown = PVE::HTMLDropDown->new (); $ddown->add_item ("menu0", "?action=download", __('Download')); $out .= $ddown->out_dropdown_menu("menu0"); my $table = PVE::HTMLTable->new ([]); $table->add_headline (\@header); my $found = 0; foreach my $k (sort keys %{$pkglist->{all}}) { my $d = $pkglist->{all}->{$k}; next if !$d->{certified}; my $menu = $ddown->out_symbol ('menu0', '', "&aa=$k"); $found = 1; $table->set_row_link ("?showinfo=$k"); $table->add_row ('', $menu, '', $d->{headline}, $d->{version}, $d->{type}, $d->{package}); } if ($found) { my $html = $table->out_table (); $out .= PVE::HTMLUtils::create_statusframe ('', "Certified Appliances", '', $html); $out .= "
\n"; } foreach my $sec (sort keys %$pkglist) { next if $sec eq 'all'; my $table = PVE::HTMLTable->new ([]); $table->add_headline (\@header); $found = 0; foreach my $k (sort keys %{$pkglist->{$sec}}) { my $d = $pkglist->{$sec}->{$k}; next if $d->{certified}; my $menu = $ddown->out_symbol ('menu0', '', "&aa=$k"); $found = 1; $table->set_row_link ("?showinfo=$k"); $table->add_row ('', $menu, '', $d->{headline}, $d->{version}, $d->{type}, $d->{package}); } if ($found) { my $html = $table->out_table (); $out .= PVE::HTMLUtils::create_statusframe ('', "Section '$sec'", '', $html); $out .= "
\n"; } } print OUT $out; -]