#!/usr/bin/perl

use CGI;
use DBI;
use strict;
unshift (@INC, '.');
use ipac_cfg;

my @pr_types = ('free',	'per byte', '2', '3', '4', '5', '6', '7', '8', '9',
		'10', '11', '12', '13', '14', 'per month');
my @yes_no = ('no', 'yes');

my $q = new CGI;
my $path="https://" . $q->server_name();
my $cgi=$path . "/cgi-bin";

my $user = $ENV{REMOTE_USER};

if ($ENV{HTTPS} ne "on" || $user ne "admin") {
    print $q->header(-type=>"text/html;", -status=>'403 Forbidden'),
	    $q->start_html('Forbidden'),
	    $q->h1('You dont have permission to access this script'),
	    $q->end_html;
    exit;
}

print  $q->header,
       $q->start_html(-title=>'Browse services');

print "<STYLE type=\"text/css\"><!-- a.noneline {text-decoration: none;} --></style>";

print "<table><tr><td>".
	"<IMG BORDER=0 ALT=\"ipac-ng logo\"".
	"SRC=\"$path/poweredby.png\"></td><td>".
	"<center><font color=\"#ff0000\" size=6>ipac-ng browse services</font></center>".
	"</td></tr></table><A HREF=\"http://sf.net/projects/ipac-ng\">".
    	"ipac-ng home page</A>&nbsp;&nbsp;";
print "<A HREF=\"$path/stat\">Go to main page</A>&nbsp;&nbsp;";
print $ipac_cfg::menu;

my $dbh = DBI->connect("dbi:Pg:dbname=$ipac_cfg::pg_dbname",       
                        $ipac_cfg::pg_login, $ipac_cfg::pg_pwd,        
                                 { RaiseError => 1, AutoCommit => 0 });

my $sth = $dbh->prepare("SELECT services.serv_id,dest,proto,services.tariff_id,".
		    "services.net_id,agent,".
		    "sport,dport,iface,serv_name,tariff_name,net_name ".
		    "from services,tariffs_names,nets_names,services_names where ".
		    "services.tariff_id=tariffs_names.tariff_id and ".
		    "services.net_id=nets_names.net_id and ".
		    "services.serv_id=services_names.serv_id ".
		    "order by tariff_name");
$sth->execute() or die $sth->errstr;
my @row;
print "<table align=center CELLPADDING=2 CELLSPACING=1 BORDER=1>";
print "<tr>", $q->td([
	'Service', 'Dest', 'Proto', 'Tariff', 'Net', 'Agent', 'Sport', 'Dport',
	'iface']),
	"<td colspan=2>&nbsp;</td></tr>";

while (@row = $sth->fetchrow_array) {
	print "<tr>";
	print $q->td([
		"<A HREF=\"$cgi/edit_serv_name?ser=$row[0]\" onMouseOver=\"window.status=\'Edit service name\';return true;\" onMouseOut=\"window.status=\'\';return true;\" CLASS=\"noneline\">&nbsp;$row[9]</A>",
		"&nbsp;$row[1]",
		"&nbsp;$row[2]",
		"&nbsp;$row[10]",
		"&nbsp;$row[11]",
		"&nbsp;$row[5]",
		"&nbsp;$row[6]",
		"&nbsp;$row[7]",
		"&nbsp;$row[8]",
		"<A HREF=\"$cgi/edit_service?ser_id=$row[0]&tar_id=$row[3]&net_id=$row[4]\" onMouseOver=\"window.status=\'Edit service\';return true;\" onMouseOut=\"window.status=\'\';return true;\" CLASS=\"noneline\">edit</A>",
		"<A HREF=\"$cgi/dele_service?ser_id=$row[0]&tar_id=$row[3]&net_id=$row[4]\" onMouseOver=\"window.status=\'Delete service\';return true;\" onMouseOut=\"window.status=\'\';return true;\" CLASS=\"noneline\">delete</A>"
		]);
	print "</tr>";
}
print "</table>";

$dbh->disconnect  or warn $dbh->errstr;
print $q->end_html;
