[! use strict; use Proxmox::Utils; use Proxmox::ConfigServer; use Proxmox::HTMLTable; use Proxmox::HTMLDropDown; !] [- my $out = ""; my @cellwidth = ( '20px', '10px', '100px', '100px', '100px', '400px'); my @header = ( '1', '20px', ' ', '1', '10px', ' ', '1', '100px', __('Service'), '1', '100px', __('State'), '1', '100px', __('Autostart'), '1', '400px', __('Description') ); my $table = Proxmox::HTMLTable->new (\@cellwidth); $table->add_headline (\@header); my $url = $req_rec->uri; my $ddown = Proxmox::HTMLDropDown->new (); $ddown->add_item("item","$url?action=startservice", __("Start") ); $ddown->add_item("item","$url?action=stopservice", __("Stop") ); $ddown->add_item("item","$url?action=restartservice", __("Restart") ); $ddown->add_item("apache","$url?action=restartservice", __("Restart") ); my $conn = Proxmox::ConfigClient::connect (); if ($udat{action}) { if ($udat{AM} eq 'w') { if ($udat{action} eq 'restartservice') { if ($fdat{service} eq 'apache') { eval { $conn->service_cmd ($fdat{service}, 'restart'); }; } else { $conn->service_cmd ($fdat{service}, 'restart'); } } elsif ($udat{action} eq 'startservice') { $conn->service_cmd ($fdat{service}, 'start'); } elsif ($udat{action} eq 'stopservice') { $conn->service_cmd ($fdat{service}, 'stop'); } } else { $udat{popup_error} = Proxmox::Utils::msg ('nowr'); } } my $apache_state = $conn->service_state ('apache')->result; my $postfix_state = $conn->service_state ('postfix')->result; my $fetchmail_state = $conn->service_state ('fetchmail')->result; my $clamd_state = $conn->service_state ('clamd')->result; my $aveserver_state = $conn->service_state ('aveserver')->result; my $freshclam_state = $conn->service_state ('freshclam')->result; my $ntpd_state = $conn->service_state ('ntpd')->result; my $sshd_state = $conn->service_state ('sshd')->result; my $proxprox_state = $conn->service_state ('proxprox')->result; my $proxpolicy_state = $conn->service_state ('proxpolicy')->result; my $proxtunnel_state = $conn->service_state ('proxtunnel')->result; my $proxmirror_state = $conn->service_state ('proxmirror')->result; my $postgres_state = $conn->service_state ('postgres')->result; $out .= "
"; $table->add_row ('',$ddown->out_symbol ("apache","","&service=apache"), '', "WWW", $apache_state, "", "Web Server"); $table->add_row ('',$ddown->out_symbol ("item","","&service=proxprox"), '', "Filter", $proxprox_state, "", "Proxmox Mail Filter Daemon"); $table->add_row ('',$ddown->out_symbol ("item","","&service=proxpolicy"), '', "Policy", $proxpolicy_state, "", "Proxmox Policy Daemon"); $table->add_row ('',$ddown->out_symbol ("item","","&service=proxtunnel"), '', "ClusterTunnel", $proxtunnel_state, "", "Proxmox Cluster Tunnel Daemon"); $table->add_row ('',$ddown->out_symbol ("item","","&service=proxmirror"), '', "ClusterSync", $proxmirror_state, "", "Proxmox Cluster Synchronization Daemon"); $table->add_row ('',$ddown->out_symbol ("item","","&service=postfix"), '', "SMTP", $postfix_state, "", "Simple Mail Tranfer Protocol"); $table->add_row ('',$ddown->out_symbol ("item","","&service=clamd"), '', "ClamAV", $clamd_state, "", "Clam Antivirus Daemon"); $table->add_row ('',$ddown->out_symbol ("item","","&service=aveserver"), '', "AVEServer", $aveserver_state, "", "Kaspersky Antivirus Daemon"); $table->add_row ('',$ddown->out_symbol ("item","","&service=freshclam"), '', "FreshClam", $freshclam_state, "", "Clam Antivirus Database Update Service"); $table->add_row ('',$ddown->out_symbol ("item","","&service=ntpd"), '', "NTP", $ntpd_state, "", "Network Time Protocol"); $table->add_row ('',$ddown->out_symbol ("item","","&service=sshd"), '', "SSH", $sshd_state, "", "Secure Shell Daemon"); $table->add_row ('',$ddown->out_symbol ("item","","&service=postgres"), '', "SQL", $postgres_state, "", "SQL Database Server"); $table->add_row ('',$ddown->out_symbol ("item","","&service=fetchmail"), '', "FETCHMAIL", $fetchmail_state, "", "Fetch mail from a POP servers"); $out .= $ddown->out_dropdown_menu("item"); $out .= $ddown->out_dropdown_menu("apache"); $out .= $table->out_table(); $out .= "
"; $out .= "

"; $out .= " " . __("Restart Server") . "
"; $out .= " " . __("Shutdown Server") . ""; $out .= "

"; print OUT $out; -]