summaryrefslogtreecommitdiffstats
path: root/frontends/php/services.php
diff options
context:
space:
mode:
authorosmiy <osmiy@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2006-03-16 15:26:21 +0000
committerosmiy <osmiy@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2006-03-16 15:26:21 +0000
commitd76992f73658df06227395e4a79c4366294efebe (patch)
tree20acf2af5d2155e07401c4903b9bb4cddfb4fec2 /frontends/php/services.php
parentf9fade8feec4ed06a5f433f87d09adc4098bb51e (diff)
downloadzabbix-d76992f73658df06227395e4a79c4366294efebe.tar.gz
zabbix-d76992f73658df06227395e4a79c4366294efebe.tar.xz
zabbix-d76992f73658df06227395e4a79c4366294efebe.zip
- added trigger selecton from popup (Eugene)
- improved popup selection (Eugene) - improved "IT services" configuration (Eugene) git-svn-id: svn://svn.zabbix.com/trunk@2702 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'frontends/php/services.php')
-rw-r--r--frontends/php/services.php679
1 files changed, 280 insertions, 399 deletions
diff --git a/frontends/php/services.php b/frontends/php/services.php
index 35168d54..28ab683e 100644
--- a/frontends/php/services.php
+++ b/frontends/php/services.php
@@ -35,508 +35,389 @@
show_page_footer();
exit;
}
+
+ $_REQUEST["serviceid"] = get_request("serviceid",0);
+ if($_REQUEST["serviceid"] == 0) unset($_REQUEST["serviceid"]);
+
+ $_REQUEST["parentid"] = get_request("parentid", 0);
+
update_profile("web.menu.config.last",$page["file"]);
?>
<?php
- if(isset($_REQUEST["register"]))
+
+ if(isset($_REQUEST["delete"]))
{
- if($_REQUEST["register"]=="update")
- {
- $result=@update_service($_REQUEST["serviceid"],$_REQUEST["name"],$_REQUEST["triggerid"],$_REQUEST["linktrigger"],$_REQUEST["algorithm"],$_REQUEST["showsla"],$_REQUEST["goodsla"],$_REQUEST["sortorder"]);
- show_messages($result, S_SERVICE_UPDATED, S_CANNOT_UPDATE_SERVICE);
- }
- if($_REQUEST["register"]=="add")
- {
- $result=@add_service($_REQUEST["serviceid"],$_REQUEST["name"],$_REQUEST["triggerid"],$_REQUEST["linktrigger"],$_REQUEST["algorithm"],$_REQUEST["showsla"],$_REQUEST["goodsla"],$_REQUEST["goodsla"]);
- show_messages($result, S_SERVICE_ADDED, S_CANNOT_ADD_SERVICE);
- }
- if($_REQUEST["register"]=="add server")
+ if(isset($_REQUEST["group_serviceid"]))
{
- $result=add_host_to_services($_REQUEST["serverid"],$_REQUEST["serviceid"]);
- show_messages($result, S_TRIGGER_ADDED, S_CANNOT_ADD_TRIGGER);
+ foreach($_REQUEST["group_serviceid"] as $serviceid)
+ delete_service($serviceid);
+ show_messages(TRUE, S_SERVICE_DELETED, S_CANNOT_DELETE_SERVICE);
}
- if($_REQUEST["register"]=="add link")
+ elseif(isset($_REQUEST["group_linkid"]))
{
- if(!isset($_REQUEST["softlink"]))
- {
- $_REQUEST["softlink"]=0;
- }
- else
- {
- $_REQUEST["softlink"]=1;
- }
- $result=add_service_link($_REQUEST["servicedownid"],$_REQUEST["serviceupid"],$_REQUEST["softlink"]);
- show_messages($result, S_LINK_ADDED, S_CANNOT_ADD_LINK);
+ foreach($_REQUEST["group_linkid"] as $linkid)
+ delete_service_link($linkid);
+ show_messages(TRUE, S_LINK_DELETED, S_CANNOT_DELETE_LINK);
}
- if($_REQUEST["register"]=="delete")
+ elseif(isset($_REQUEST["delete_service"]))
{
$result=delete_service($_REQUEST["serviceid"]);
show_messages($result, S_SERVICE_DELETED, S_CANNOT_DELETE_SERVICE);
unset($_REQUEST["serviceid"]);
}
- if($_REQUEST["register"]=="delete_link")
+ elseif(isset($_REQUEST["delete_link"]))
{
$result=delete_service_link($_REQUEST["linkid"]);
show_messages($result, S_LINK_DELETED, S_CANNOT_DELETE_LINK);
+ unset($_REQUEST["linkid"]);
+ }
+ }
+ elseif(isset($_REQUEST["save_service"]))
+ {
+ $showsla = isset($_REQUEST["showsla"]) ? 1 : 0;
+ $triggerid = isset($_REQUEST["linktrigger"]) ? $_REQUEST["triggerid"] : NULL;
+ if(isset($_REQUEST["serviceid"]))
+ {
+ $result = update_service($_REQUEST["serviceid"],
+ $_REQUEST["name"],$triggerid,$_REQUEST["algorithm"],
+ $showsla,$_REQUEST["goodsla"],$_REQUEST["sortorder"]);
+ show_messages($result, S_SERVICE_UPDATED, S_CANNOT_UPDATE_SERVICE);
}
- if($_REQUEST["register"]=="Delete selected")
+ else
+ {
+ $result = add_service(
+ $_REQUEST["name"],$triggerid,$_REQUEST["algorithm"],
+ $showsla,$_REQUEST["goodsla"],$_REQUEST["sortorder"]);
+ show_messages($result, S_SERVICE_ADDED, S_CANNOT_ADD_SERVICE);
+ }
+ }
+ elseif(isset($_REQUEST["save_link"]))
+ {
+ $_REQUEST["soft"] = isset($_REQUEST["soft"]) ? 1 : 0;
+ if(isset($_REQUEST["linkid"]))
{
- $result=DBselect("select serviceid from services");
- while($row=DBfetch($result))
- {
-// $$ is correct here
- if(isset($_REQUEST[$row["serviceid"]]))
- {
- delete_service($row["serviceid"]);
- if(isset($_REQUEST["serviceid"]))
- {
- if($row["serviceid"]==$_REQUEST["serviceid"])
- unset($_REQUEST["serviceid"]);
- }
- }
- }
- show_messages(TRUE, S_SERVICES_DELETED, S_CANNOT_DELETE_SERVICES);
+ $result = update_service_link($_REQUEST["linkid"],
+ $_REQUEST["servicedownid"],$_REQUEST["serviceupid"],$_REQUEST["soft"]);
+ show_messages($result, S_LINK_ADDED, S_CANNOT_ADD_LINK);
}
+ else
+ {
+ $result = add_service_link($_REQUEST["servicedownid"],$_REQUEST["serviceupid"],$_REQUEST["soft"]);
+ show_messages($result, S_LINK_ADDED, S_CANNOT_ADD_LINK);
+ }
+ }
+ elseif(isset($_REQUEST["add_server"]))
+ {
+ $result=add_host_to_services($_REQUEST["serverid"],$_REQUEST["serviceid"]);
+ show_messages($result, S_TRIGGER_ADDED, S_CANNOT_ADD_TRIGGER);
}
?>
<?php
show_table_header(S_IT_SERVICES_BIG);
- $now=time();
- $result=DBselect("select serviceid,name,algorithm from services order by sortorder,name");
- echo "<table border=0 width=100% bgcolor='#AAAAAA' cellspacing=1 cellpadding=3>";
- echo "<tr bgcolor='#CCCCCC'>";
- echo "<td><b>".S_ID."</b></td>";
- echo "<td><b>".S_SERVICE."</b></td>";
- echo "<td width=20%><b>".S_STATUS_CALCULATION."</b></td>";
- echo "</tr>";
+ $form = new CForm();
+ $form->SetName("services");
- echo "<form method=\"get\" action=\"services.php\">";
- if(isset($_REQUEST["serviceid"]))
- {
- echo "<input class=\"biginput\" name=\"serviceid\" type=hidden value=".$_REQUEST["serviceid"]." size=8>";
- }
+ $table = new CTableInfo();
+ $table->SetHeader(array(
+ array(new CCheckBox("all_services",NULL,NULL,
+ "CheckAll('".$form->GetName()."','all_services');"),
+ S_ID),
+ S_SERVICE,
+ S_STATUS_CALCULATION,
+ S_TRIGGER
+ ));
- $col=0;
+ $sql = "select serviceid,name,algorithm,triggerid from services order by sortorder,name";
if(isset($_REQUEST["serviceid"]))
{
- echo "<tr bgcolor=#EEEEEE>";
+ $form->AddVar("serviceid",$_REQUEST["serviceid"]);
- $service=get_service_by_serviceid($_REQUEST["serviceid"]);
-
- $input="<INPUT TYPE=\"CHECKBOX\" class=\"biginput\" NAME=\"".$service["serviceid"]."\"> ".$service["serviceid"];
- echo "<td>$input</td>";
-
- echo "<td><b><a href=\"services.php?serviceid=".$service["serviceid"]."#form\">".$service["name"]."</a></b></td>";
- if($service["algorithm"] == SERVICE_ALGORITHM_NONE)
- {
- echo "<td>".S_NONE."</td>";
- }
- else if($service["algorithm"] == SERVICE_ALGORITHM_MAX)
- {
- echo "<td>".S_MAX_OF_CHILDS."</td>";
- }
- else if($service["algorithm"] == SERVICE_ALGORITHM_MIN)
+ $service = get_service_by_serviceid($_REQUEST["serviceid"]);
+ if($service)
{
- echo "<td>".S_MIN_OF_CHILDS."</td>";
+ $childs=get_num_of_service_childs($service["serviceid"]);
+
+ if(isset($service["triggerid"]))
+ $trigger = expand_trigger_description($service["triggerid"]);
+ else
+ $trigger = "-";
+
+ $table->AddRow(array(
+ array(
+ new CCheckBox("group_serviceid[]",NULL,NULL,NULL,$_REQUEST["serviceid"]),
+ $_REQUEST["serviceid"]
+ ),
+ new CLink(new CSpan($service["name"]." [$childs]","bold"),"services.php?serviceid=".$_REQUEST["parentid"]."#form"),
+ algorithm2str($service["algorithm"]),
+ $trigger
+ ));
+ $sql = "select s.serviceid,s.name,s.algorithm,triggerid from services s, services_links sl".
+ " where s.serviceid=sl.servicedownid and sl.serviceupid=".$_REQUEST["serviceid"].
+ " order by s.sortorder,s.name";
}
else
{
- echo "<td>".S_UNKNOWN."</td>";
+ unset($_REQUEST["serviceid"]);
}
- echo "</tr>";
- $col++;
}
- while($row=DBfetch($result))
+ $db_services = DBselect($sql);
+ while($service = DBfetch($db_services))
{
- if(!isset($_REQUEST["serviceid"]) && service_has_parent($row["serviceid"]))
- {
- continue;
- }
- if(isset($_REQUEST["serviceid"]) && service_has_no_this_parent($_REQUEST["serviceid"],$row["serviceid"]))
- {
- continue;
- }
- if(isset($_REQUEST["serviceid"])&&($_REQUEST["serviceid"]==$row["serviceid"]))
+ $prefix = NULL;
+ if(!isset($_REQUEST["serviceid"]))
{
- echo "<tr bgcolor=#99AABB>";
+ if(service_has_parent($service["serviceid"]))
+ continue;
}
else
{
- if($col++%2==0) { echo "<tr bgcolor=#EEEEEE>"; }
- else { echo "<tr bgcolor=#DDDDDD>"; }
+ $prefix = " - ";
}
+ $childs=get_num_of_service_childs($service["serviceid"]);
- $input="<INPUT TYPE=\"CHECKBOX\" class=\"biginput\" NAME=\"".$row["serviceid"]."\"> ".$row["serviceid"];
-
- echo "<td>$input</td>";
-
- $childs=get_num_of_service_childs($row["serviceid"]);
- if(isset($_REQUEST["serviceid"]))
- {
- echo "<td> - <a href=\"services.php?serviceid=".$row["serviceid"]."#form\">".$row["name"]." [$childs]</a></td>";
- }
- else
- {
- echo "<td><a href=\"services.php?serviceid=".$row["serviceid"]."#form\">".$row["name"]." [$childs]</a></td>";
- }
- if($row["algorithm"] == SERVICE_ALGORITHM_NONE)
- {
- echo "<td>".S_NONE."</td>";
- }
- else if($row["algorithm"] == SERVICE_ALGORITHM_MAX)
- {
- echo "<td>".S_MAX_OF_CHILDS."</td>";
- }
- else if($row["algorithm"] == SERVICE_ALGORITHM_MIN)
- {
- echo "<td>".S_MIN_OF_CHILDS."</td>";
- }
+ if(isset($service["triggerid"]))
+ $trigger = expand_trigger_description($service["triggerid"]);
else
- {
- echo "<td>".S_UNKNOWN."</td>";
- }
- echo "</tr>";
+ $trigger = "-";
+
+ $parrent = get_request("serviceid",0);
+ $table->AddRow(array(
+ array(new CCheckBox("group_serviceid[]",NULL,NULL,NULL,$service["serviceid"]),$service["serviceid"]),
+ array($prefix, new CLink($service["name"]." [$childs]",
+ "services.php?serviceid=".$service["serviceid"]."&parentid=$parrent#form")),
+ algorithm2str($service["algorithm"]),
+ $trigger
+ ));
}
- echo "</table>";
-?>
-<?php
- show_form_begin();
- echo "<input class=\"button\" type=\"submit\" name=\"register\" value=\"Delete selected\" onClick=\"return Confirm('".S_DELETE_SELECTED_SERVICES."');\">";
- show_table2_header_end();
- echo "</form>";
+ $table->SetFooter(new CCol(new CButton("delete","Delete selected","return Confirm('".S_DELETE_SELECTED_SERVICES."');")));
+ $form->AddItem($table);
+ $form->Show();
?>
-
<?php
if(isset($_REQUEST["serviceid"]))
{
+ echo BR;
+
show_table_header("LINKS");
- echo "<table border=0 width=100% bgcolor='#AAAAAA' cellspacing=1 cellpadding=3>";
- echo "<tr bgcolor='#CCCCCC'>";
- echo "<td><b>".S_SERVICE_1."</b></td>";
- echo "<td><b>".S_SERVICE_2."</b></td>";
- echo "<td><b>".S_SOFT_HARD_LINK."</b></td>";
- echo "<td><b>".S_ACTIONS."</b></td>";
- echo "</tr>";
- $sql="select linkid,servicedownid,serviceupid,soft from services_links where serviceupid=".$_REQUEST["serviceid"]." or servicedownid=".$_REQUEST["serviceid"];
- $result=DBselect($sql);
- $col=0;
+
+ $form = new CForm();
+ $form->SetName("Links");
+ $form->AddVar("serviceid",$_REQUEST["serviceid"]);
+ $form->AddVar("parentid",$_REQUEST["parentid"]);
+
+ $table = new CTableInfo();
+ $table->SetHeader(array(
+ array(new CCheckBox("all_services",NULL,NULL,
+ "CheckAll('".$form->GetName()."','all_services');"),
+ S_LINK),
+ S_SERVICE_1,
+ S_SERVICE_2,
+ S_SOFT_HARD_LINK
+ ));
+
+ $result=DBselect("select sl.linkid, sl.soft, sl.serviceupid, sl.servicedownid,".
+ " s1.name as serviceupname, s2.name as servicedownname".
+ " from services s1, services s2, services_links sl".
+ " where sl.serviceupid=s1.serviceid and sl.servicedownid=s2.serviceid".
+ " and (sl.serviceupid=".$_REQUEST["serviceid"]." or sl.servicedownid=".$_REQUEST["serviceid"].")");
+ $i = 1;
while($row=DBfetch($result))
{
- if($col++%2==0) { echo "<tr bgcolor=#EEEEEE>"; }
- else { echo "<tr bgcolor=#DDDDDD>"; }
- $service=get_service_by_serviceid($row["serviceupid"]);
- echo "<td>".$service["name"]."</td>";
- $service=get_service_by_serviceid($row["servicedownid"]);
- echo "<td>".$service["name"]."</td>";
- if($row["soft"] == 0)
- {
- echo "<td>".S_HARD."</td>";
- }
- else
- {
- echo "<td>".S_SOFT."</td>";
- }
- echo "<td><a href=\"services.php?register=delete_link&serviceid=".$_REQUEST["serviceid"]."&linkid=".$row["linkid"]."\">".S_DELETE."</a></td>";
- echo "</tr>";
+ $table->AddRow(array(
+ array(
+ new CCheckBox("group_linkid[]",NULL,NULL,NULL,$row["linkid"]),
+ new CLink(S_LINK.SPACE.$i++,
+ "services.php?form=update&linkid=".$row["linkid"].url_param("serviceid"),
+ "action"),
+ ),
+ new CLink($row["serviceupname"],"services.php?serviceid=".$row["serviceupid"]),
+ new CLink($row["servicedownname"],"services.php?serviceid=".$row["servicedownid"]),
+ $row["soft"] == 0 ? S_HARD : S_SOFT
+ ));
}
- echo "</table>";
+ $table->SetFooter(new CCol(new CButton("delete","Delete selected","return Confirm('".S_DELETE_SELECTED_LINKS."');")));
+ $form->AddItem($table);
+ $form->Show();
}
?>
<?php
+ echo BR;
+
+ $frmService = new CFormTable(S_SERVICE);
+ $frmService->SetHelp("web.services.service.php");
+ $frmService->AddVar("parentid",$_REQUEST["parentid"]);
+
if(isset($_REQUEST["serviceid"]))
{
- $service=get_service_by_serviceid($_REQUEST["serviceid"]);
- $triggerid=$service["triggerid"];
- $name=$service["name"];
- $algorithm=$service["algorithm"];
- $showsla=$service["showsla"];
- $goodsla=$service["goodsla"];
- $sortorder=$service["sortorder"];
- }
- else
- {
- $name="";
- $showsla=0;
- $goodsla=99.05;
- $sortorder=0;
- $algorithm=0;
- unset($triggerid);
- }
+ $frmService->AddVar("serviceid",$_REQUEST["serviceid"]);
- echo "<a name=\"form\"></a>";
- show_form_begin("services.service");
- echo S_SERVICE;
- $col=0;
-
- if(isset($_REQUEST["groupid"])&&($_REQUEST["groupid"]==0))
- {
- unset($_REQUEST["groupid"]);
- }
+ $service=get_service_by_serviceid($_REQUEST["serviceid"]);
- show_table2_v_delimiter($col++);
- echo "<form method=\"get\" action=\"services.php\">";
- if(isset($_REQUEST["serviceid"]))
- {
- echo "<input class=\"biginput\" name=\"serviceid\" type=\"hidden\" value=".$_REQUEST["serviceid"].">";
- }
- echo S_NAME;
- show_table2_h_delimiter();
- echo "<input class=\"biginput\" name=\"name\" value=\"$name\" size=32>";
-
- show_table2_v_delimiter($col++);
- echo nbsp(S_STATUS_CALCULATION_ALGORITHM);
- show_table2_h_delimiter();
- echo "<select class=\"biginput\" name=\"algorithm\" size=1>";
-// if(isset($_REQUEST["algorithm"]))
- if(isset($algorithm))
- {
-// if($_REQUEST["algorithm"] == SERVICE_ALGORITHM_NONE)
- if($algorithm == SERVICE_ALGORITHM_NONE)
- {
- echo "<OPTION VALUE='0' SELECTED>".S_DO_NOT_CALCULATE;
- echo "<OPTION VALUE='1'>".S_MAX_BIG;
- echo "<OPTION VALUE='2'>".S_MIN_BIG;
- }
-// else if($_REQUEST["algorithm"] == SERVICE_ALGORITHM_MAX)
- else if($algorithm == SERVICE_ALGORITHM_MAX)
- {
- echo "<OPTION VALUE='0'>".S_DO_NOT_CALCULATE;
- echo "<OPTION VALUE='1' SELECTED>".S_MAX_BIG;
- echo "<OPTION VALUE='2'>".S_MIN_BIG;
- }
- else if($algorithm == SERVICE_ALGORITHM_MIN)
- {
- echo "<OPTION VALUE='0'>".S_DO_NOT_CALCULATE;
- echo "<OPTION VALUE='1'>".S_MAX_BIG;
- echo "<OPTION VALUE='2' SELECTED>".S_MIN_BIG;
- }
- }
- else
- {
- echo "<OPTION VALUE='0'>".S_DO_NOT_CALCULATE;
- echo "<OPTION VALUE='1' SELECTED>".S_MAX_BIG;
- echo "<OPTION VALUE='2'>".S_MIN_BIG;
+ $frmService->SetTitle(S_SERVICE." \"".$service["name"]."\"");
}
- echo "</SELECT>";
- show_table2_v_delimiter($col++);
- echo nbsp(S_SHOW_SLA);
- show_table2_h_delimiter();
- if($showsla==1)
+ if(isset($_REQUEST["serviceid"]) && !isset($_REQUEST["form_refresh"]))
{
- // echo "<INPUT class=\"biginput\" TYPE=\"CHECKBOX\" NAME=\"showsla\" VALUE=\"true\" CHECKED>";
- echo "<INPUT class=\"biginput\" TYPE=\"CHECKBOX\" NAME=\"showsla\" VALUE=\"on\" CHECKED>";
+ $name =$service["name"];
+ $algorithm =$service["algorithm"];
+ $showsla =$service["showsla"];
+ $goodsla =$service["goodsla"];
+ $sortorder =$service["sortorder"];
+ $triggerid =$service["triggerid"];
+ $linktrigger = isset($triggerid) ? 'yes' : 'no';
+ if(!isset($triggerid)) $triggerid = 0;
}
else
{
- echo "<INPUT class=\"biginput\" TYPE=\"CHECKBOX\" NAME=\"showsla\">";
+ $name = get_request("name","");
+ $showsla = get_request("showsla",0);
+ $goodsla = get_request("goodsla",99.05);
+ $sortorder = get_request("sortorder",0);
+ $algorithm = get_request("algorithm",0);
+ $triggerid = get_request("triggerid",0);
+ $linktrigger = isset($_REQUEST["linktrigger"]) ? 'yes' : 'no';
}
- show_table2_v_delimiter($col++);
- echo nbsp(S_ACCEPTABLE_SLA_IN_PERCENT);
- show_table2_h_delimiter();
- echo "<input class=\"biginput\" name=\"goodsla\" value=\"$goodsla\" size=6>";
-
- show_table2_v_delimiter($col++);
- echo nbsp(S_LINK_TO_TRIGGER_Q);
- show_table2_h_delimiter();
- if(isset($triggerid)&&($triggerid!=""))
- {
- echo "<INPUT class=\"biginput\" TYPE=\"CHECKBOX\" NAME=\"linktrigger\" VALUE=\"on\" CHECKED>";
- }
- else
+ if(isset($_REQUEST["serviceid"]))
{
- echo "<INPUT class=\"biginput\" TYPE=\"CHECKBOX\" NAME=\"linktrigger\">";
+ $frmService->AddVar("serviceid",$_REQUEST["serviceid"]);
}
+ $frmService->AddRow(S_NAME,new CTextBox("name",$name));
- show_table2_v_delimiter($col++);
- echo S_TRIGGER;
- show_table2_h_delimiter();
- $h2="<select class=\"biginput\" name=\"groupid\" onChange=\"submit()\">";
- $h2=$h2.form_select("groupid",0,S_ALL_SMALL);
- $result=DBselect("select groupid,name from groups order by name");
- while($row=DBfetch($result))
- {
-// Check if at least one host with read permission exists for this group
- $result2=DBselect("select h.hostid,h.host from hosts h,items i,hosts_groups hg where h.status=".HOST_STATUS_MONITORED." and h.hostid=i.hostid and hg.groupid=".$row["groupid"]." and hg.hostid=h.hostid group by h.hostid,h.host order by h.host");
- $cnt=0;
- while($row2=DBfetch($result2))
- {
- if(!check_right("Host","R",$row2["hostid"]))
- {
- continue;
- }
- $cnt=1; break;
- }
- if($cnt!=0)
- {
- $h2=$h2.form_select("groupid",$row["groupid"],$row["name"]);
- }
- }
- $h2=$h2."</select>".SPACE;
+ $cmbAlg = new CComboBox("algorithm",$algorithm);
+ $cmbAlg->AddItem(0,S_DO_NOT_CALCULATE);
+ $cmbAlg->AddItem(1,S_MAX_BIG);
+ $cmbAlg->AddItem(2,S_MIN_BIG);
+ $frmService->AddRow(S_STATUS_CALCULATION_ALGORITHM, $cmbAlg);
- $h2=$h2."<select class=\"biginput\" name=\"hostid\" onChange=\"submit()\">";
- $h2=$h2.form_select("hostid",0,S_SELECT_HOST_DOT_DOT_DOT);
+ $frmService->AddRow(S_SHOW_SLA, new CCheckBox("showsla",$showsla,NULL,'submit();'));
- if(isset($_REQUEST["groupid"]))
- {
- $sql="select h.hostid,h.host from hosts h,items i,hosts_groups hg where h.status=".HOST_STATUS_MONITORED." and h.hostid=i.hostid and hg.groupid=".$_REQUEST["groupid"]." and hg.hostid=h.hostid group by h.hostid,h.host order by h.host";
- }
+ if($showsla)
+ $frmService->AddRow(S_ACCEPTABLE_SLA_IN_PERCENT,new CTextBox("goodsla",$goodsla,6));
else
- {
- $sql="select h.hostid,h.host from hosts h,items i where h.status=".HOST_STATUS_MONITORED." and h.hostid=i.hostid group by h.hostid,h.host order by h.host";
- }
+ $frmService->AddVar("goodsla",$goodsla);
- $result=DBselect($sql);
- while($row=DBfetch($result))
- {
- if(!check_right("Host","R",$row["hostid"]))
- {
- continue;
- }
- $h2=$h2.form_select("hostid",$row["hostid"],$row["host"]);
- }
- $h2=$h2."</select>".SPACE;
- echo $h2;
+ $frmService->AddRow(S_LINK_TO_TRIGGER_Q, new CCheckBox("linktrigger",$linktrigger,NULL,"submit();"));
- if(isset($_REQUEST["hostid"]))
+ if($linktrigger == 'yes')
{
- show_table2_v_delimiter($col++);
- echo SPACE;
- show_table2_h_delimiter();
- $result=DBselect("select t.triggerid,t.description from triggers t,functions f, hosts h, items i where h.hostid=i.hostid and f.itemid=i.itemid and t.triggerid=f.triggerid and h.hostid=".$_REQUEST["hostid"]." order by t.description");
- echo "<select class=\"biginput\" name=\"triggerid\" size=1>";
- while($row=DBfetch($result))
- {
- $triggerid_=$row["triggerid"];
- $description_=expand_trigger_description($triggerid_);
- if(isset($triggerid) && ($triggerid==$triggerid_))
- {
- echo "<OPTION VALUE='$triggerid_' SELECTED>$description_";
- }
- else
- {
- echo "<OPTION VALUE='$triggerid_'>$description_";
- }
- }
- echo "</SELECT>";
+ if($triggerid > 0)
+ $trigger = expand_trigger_description($triggerid);
+ else
+ $trigger = "";
+
+ $frmService->AddRow(S_TRIGGER,array(
+ new CTextBox("trigger",$trigger,32,NULL,'yes'),
+ new CButton("btn1",S_SELECT,
+ "return PopUp('popup.php?".
+ "dstfrm=".$frmService->GetName()."&dstfld1=triggerid&dstfld2=trigger".
+ "&srctbl=triggers&srcfld1=triggerid&&srcfld2=description','new_win',".
+ "'width=600,height=450,resizable=1,scrollbars=1');",
+ 'T')
+ ));
+ $frmService->AddVar("triggerid",$triggerid);
}
- show_table2_v_delimiter($col++);
- echo nbsp(S_SORT_ORDER_0_999);
- show_table2_h_delimiter();
- echo "<input class=\"biginput\" name=\"sortorder\" value=\"$sortorder\" size=3>";
-
+ $frmService->AddRow(S_SORT_ORDER_0_999, new CTextBox("sortorder",$sortorder,3));
- show_table2_v_delimiter2();
- if(!isset($triggerid)||($triggerid==""))
- {
- echo "<input class=\"button\" type=\"submit\" name=\"register\" value=\"add\">";
- }
+ $frmService->AddItemToBottomRow(new CButton("save_service",S_SAVE));
if(isset($_REQUEST["serviceid"]))
{
- echo "<input class=\"button\" type=\"submit\" name=\"register\" value=\"update\">";
- echo "<input class=\"button\" type=\"submit\" name=\"register\" value=\"delete\" onClick=\"return Confirm('".S_DELETE_SERVICE_Q."');\">";
+ $frmService->AddItemToBottomRow(SPACE);
+ $frmService->AddItemToBottomRow(new CButtonDelete(
+ "Delete selected service?",
+ url_param("form").url_param("serviceid")."&delete_service=1"
+ ));
}
-
- show_table2_header_end();
+ $frmService->AddItemToBottomRow(SPACE);
+ $frmService->AddItemToBottomRow(new CButtonCancel("&serviceid=".get_request("parentid",0)));
+ $frmService->Show();
?>
<?php
if(isset($_REQUEST["serviceid"]))
{
- $service=get_service_by_serviceid($_REQUEST["serviceid"]);
- $triggerid=$service["triggerid"];
- $name=$service["name"];
- }
- else
- {
- $name="";
- unset($_REQUEST["triggerid"]);
- }
+ echo BR;
+
+ $frmLink = new CFormTable(S_LINK_TO);
+ $frmLink->SetHelp("web.services.link.php");
+ $frmLink->AddVar("serviceid",$_REQUEST["serviceid"]);
+ $frmLink->AddVar("parentid",$_REQUEST["parentid"]);
+
+ if(isset($_REQUEST["linkid"]))
+ {
+ $frmLink->AddVar("linkid",$_REQUEST["linkid"]);
- show_form_begin("services.link");
- echo nbsp(S_LINK_TO);
- $col=0;
+ $link = get_services_links_by_linkid($_REQUEST["linkid"]);
+ $serviceupid = $link["serviceupid"];
+ $servicedownid = $link["servicedownid"];
+ $soft = $link["soft"];
+ }
+ else
+ {
+ $serviceupid = get_request("serviceupid",$_REQUEST["serviceid"]);
+ $servicedownid = get_request("servicedownid",0);
+ $soft = get_request("soft",1);
+ }
- show_table2_v_delimiter($col++);
- echo "<form method=\"post\" action=\"services.php\">";
- if(isset($_REQUEST["serviceid"]))
- {
- echo "<input name=\"serviceid\" type=\"hidden\" value=".$_REQUEST["serviceid"].">";
- echo "<input name=\"serviceupid\" type=\"hidden\" value=".$_REQUEST["serviceid"].">";
- }
- echo S_NAME;
- show_table2_h_delimiter();
- $result=DBselect("select serviceid,triggerid,name from services order by name");
- echo "<select class=\"biginput\" name=\"servicedownid\" size=1>";
- while($row=Dbfetch($result))
- {
- $servicedownid_=$row["serviceid"];
- if($row["triggerid"]>0)
+ $cmbServices = new CComboBox("serviceupid",$serviceupid);
+ $result=DBselect("select serviceid,triggerid,name from services order by name");
+ while($row=Dbfetch($result))
{
- $name_=expand_trigger_description($row["triggerid"]);
+ $name = $row["name"];
+ if(isset($row["triggerid"]))
+ $name .= ": ".expand_trigger_description($row["triggerid"]);
+
+ $cmbServices->AddItem($row["serviceid"],$name);
}
- else
+ $frmLink->AddRow(S_SERVICE_1, $cmbServices);
+
+ $cmbServices->SetName("servicedownid");
+ $cmbServices->SetValue($servicedownid);
+ $frmLink->AddRow(S_SERVICE_2, $cmbServices);
+
+ $frmLink->AddRow(S_SOFT_LINK_Q, new CCheckBox("soft",$soft));
+
+ $frmLink->AddItemToBottomRow(new CButton("save_link",S_SAVE));
+ if(isset($_REQUEST["linkid"]))
{
- $name_=$row["name"];
+ $frmLink->AddItemToBottomRow(SPACE);
+ $frmLink->AddItemToBottomRow(new CButtonDelete(
+ "Delete selected services linkage?",
+ url_param("form").url_param("linkid")."&delete_link=1".url_param("serviceid")
+ ));
}
- echo "<OPTION VALUE='$servicedownid_'>$name_";
- }
- echo "</SELECT>";
-
- show_table2_v_delimiter($col++);
- echo nbsp(S_SOFT_LINK_Q);
- show_table2_h_delimiter();
-// if(isset($_REQUEST["softlink"])&&($_REQUEST["triggerid"]!=""))
-// {
-// echo "<INPUT TYPE=\"CHECKBOX\" NAME=\"softlink\" VALUE=\"true\">";
-// }
-// else
-// {
-// echo "<INPUT TYPE=\"CHECKBOX\" NAME=\"softlink\">";
-// }
- echo "<INPUT class=\"biginput\" TYPE=\"CHECKBOX\" NAME=\"softlink\" VALUE=\"true\" checked>";
-
- show_table2_v_delimiter2();
- echo "<input class=\"button\" type=\"submit\" name=\"register\" value=\"add link\">";
-
- show_table2_header_end();
+ $frmLink->AddItemToBottomRow(SPACE);
+ $frmLink->AddItemToBottomRow(new CButtonCancel(url_param("serviceid")));
+ $frmLink->Show();
+ }
?>
<?php
if(isset($_REQUEST["serviceid"]))
{
+ echo BR;
+
+ $frmDetails = new CFormTable(S_ADD_SERVER_DETAILS);
+ $frmDetails->SetHelp("web.services.server.php");
+ $frmDetails->AddVar("serviceid",$_REQUEST["serviceid"]);
+ $frmDetails->AddVar("parentid",$_REQUEST["parentid"]);
+
+ $cmbServers = new CComboBox("serverid");
+ $result=DBselect("select hostid,host from hosts order by host");
+ while($row=DBfetch($result))
+ {
+ $cmbServers->AddItem($row["hostid"],$row["host"]);
+ }
+ $frmDetails->AddRow(S_SERVER,$cmbServers);
- show_form_begin("services.server");
- echo nbsp(S_ADD_SERVER_DETAILS);
- $col=0;
-
- show_table2_v_delimiter($col++);
- echo "<form method=\"post\" action=\"services.php\">";
- if(isset($_REQUEST["serviceid"]))
- {
- echo "<input name=\"serviceid\" type=\"hidden\" value=".$_REQUEST["serviceid"].">";
- }
- echo S_SERVER;
- show_table2_h_delimiter();
- $result=DBselect("select hostid,host from hosts order by host");
- echo "<select class=\"biginput\" name=\"serverid\" size=1>";
- while($row=DBfetch($result))
- {
- echo "<OPTION VALUE='".$row["hostid"]."'>".$row["host"];
- }
- echo "</SELECT>";
-
- show_table2_v_delimiter2();
- echo "<input class=\"button\" type=\"submit\" name=\"register\" value=\"add server\">";
-
- show_table2_header_end();
+ $frmDetails->AddItemToBottomRow(new CButton("add_server","Add server"));
+ $frmDetails->Show();
}
?>