$page["title"] = "High-level representation of monitored data";
$page["file"] = "services.php";
include "include/config.inc.php";
show_header($page["title"],0,0);
?>
if(isset($register))
{
if($register=="update")
{
$result=@update_service($serviceid,$name,$triggerid,$linktrigger,$algorithm);
show_messages($result,"Service updated","Cannot update service");
}
if($register=="add")
{
$result=@add_service($name,$triggerid,$linktrigger,$algorithm);
show_messages($result,"Service added","Cannot add service");
}
if($register=="add server")
{
$result=add_host_to_services($hostid,$serviceid);
show_messages($result,"Host trigger added","Cannot add host triggers");
}
if($register=="add link")
{
if(!isset($softlink))
{
$softlink=0;
}
else
{
$softlink=1;
}
$result=add_service_link($servicedownid,$serviceupid,$softlink);
show_messages($result,"Service link added","Cannot add service link");
}
if($register=="delete")
{
$result=delete_service($serviceid);
show_messages($result,"Service deleted","Cannot delete service");
unset($serviceid);
}
}
?>
show_table_header("IT SERVICES");
$now=time();
$result=DBselect("select serviceid,name,algorithm from services order by name");
echo "
";
echo "";
echo "Service | ";
echo "Status calculation | ";
echo "Actions | ";
echo "
";
$col=0;
if(isset($serviceid))
{
echo "";
$service=get_service_by_serviceid($serviceid);
echo "".$service["name"]." | ";
if($service["algorithm"] == SERVICE_ALGORITHM_NONE)
{
echo "none | ";
}
else if($service["algorithm"] == SERVICE_ALGORITHM_MAX)
{
echo "MAX of childs | ";
}
else
{
echo "unknown | ";
}
echo "Delete | ";
echo "
";
$col++;
}
while($row=DBfetch($result))
{
if(!isset($serviceid) && service_has_parent($row["serviceid"]))
{
continue;
}
if(isset($serviceid) && service_has_no_this_parent($serviceid,$row["serviceid"]))
{
continue;
}
if(isset($serviceid)&&($serviceid==$row["serviceid"]))
{
echo "";
}
else
{
if($col++%2==0) { echo "
"; }
else { echo "
"; }
}
$childs=get_num_of_service_childs($row["serviceid"]);
if(isset($serviceid))
{
echo " - ".$row["name"]." [$childs] | ";
}
else
{
echo "".$row["name"]." [$childs] | ";
}
if($row["algorithm"] == SERVICE_ALGORITHM_NONE)
{
echo "none | ";
}
else if($row["algorithm"] == SERVICE_ALGORITHM_MAX)
{
echo "MAX of childs | ";
}
else
{
echo "unknown | ";
}
echo "Delete | ";
echo "
";
}
echo "
";
?>
if(isset($serviceid))
{
show_table_header("LINKS");
echo "";
echo "";
echo "Service 1 | ";
echo "Service 2 | ";
echo "Soft/hard link | ";
echo "Actions | ";
echo "
";
$sql="select servicedownid,serviceupid,soft from services_links where serviceupid=$serviceid or servicedownid=$serviceid";
$result=DBselect($sql);
$col=0;
while($row=DBfetch($result))
{
if($col++%2==0) { echo ""; }
else { echo "
"; }
$service=get_service_by_serviceid($row["serviceupid"]);
echo "".$service["name"]." | ";
$service=get_service_by_serviceid($row["servicedownid"]);
echo "".$service["name"]." | ";
if($row["soft"] == 0)
{
echo "Hard | ";
}
else
{
echo "Soft | ";
}
echo "".$service["name"]." | ";
echo "
";
}
echo "
";
}
?>
if(isset($serviceid))
{
$result=DBselect("select serviceid,triggerid,name,algorithm from services where serviceid=$serviceid");
$triggerid=DBget_field($result,0,1);
$name=DBget_field($result,0,2);
$algorithm=DBget_field($result,0,3);
}
else
{
$name="";
unset($triggerid);
}
echo "
";
echo "";
show_table2_header_begin();
echo "New service";
show_table2_v_delimiter();
echo "