From d76992f73658df06227395e4a79c4366294efebe Mon Sep 17 00:00:00 2001 From: osmiy Date: Thu, 16 Mar 2006 15:26:21 +0000 Subject: - 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 --- frontends/php/include/actions.inc.php | 3 +- frontends/php/include/classes/cform.inc.php | 8 ++ frontends/php/include/classes/clink.inc.php | 12 +++ frontends/php/include/classes/ctag.inc.php | 2 +- frontends/php/include/forms.inc.php | 63 +++++++------- frontends/php/include/locales/en_gb.inc.php | 5 ++ frontends/php/include/services.inc.php | 124 ++++++++++++++-------------- 7 files changed, 126 insertions(+), 91 deletions(-) (limited to 'frontends/php/include') diff --git a/frontends/php/include/actions.inc.php b/frontends/php/include/actions.inc.php index 3993d2a7..25a64cb0 100644 --- a/frontends/php/include/actions.inc.php +++ b/frontends/php/include/actions.inc.php @@ -298,8 +298,7 @@ } if($conditiontype==CONDITION_TYPE_TRIGGER) { - $trigger=get_trigger_by_triggerid($value); - if($trigger) $desc=S_TRIGGER." $op "."\"".$trigger["description"]."\""; + $desc=S_TRIGGER." $op "."\"".expand_trigger_description($value)."\""; } else if($conditiontype==CONDITION_TYPE_HOST) { diff --git a/frontends/php/include/classes/cform.inc.php b/frontends/php/include/classes/cform.inc.php index 3dee3109..ace2a10b 100644 --- a/frontends/php/include/classes/cform.inc.php +++ b/frontends/php/include/classes/cform.inc.php @@ -39,8 +39,16 @@ } function SetAction($value=NULL) { + global $page; + if(is_null($value)) + { + if(isset($page["file"])) + { + return $this->AddOption("action",$page["file"]); + } return 1; + } elseif(!is_string($value)) { return $this->error("Incorrect value for SetAction [$value]"); diff --git a/frontends/php/include/classes/clink.inc.php b/frontends/php/include/classes/clink.inc.php index dd32db42..354b7579 100644 --- a/frontends/php/include/classes/clink.inc.php +++ b/frontends/php/include/classes/clink.inc.php @@ -35,6 +35,18 @@ $this->AddItem($item); $this->SetUrl($url); } + function SetAction($value=NULL) + { + if(is_null($value)) + { + return $this->AddOption("action",$page["file"]); + } + elseif(!is_string($value)) + { + return $this->error("Incorrect value for SetAction [$value]"); + } + return $this->AddOption("onClick",$value); + } function SetUrl($value) { if(is_null($value)) diff --git a/frontends/php/include/classes/ctag.inc.php b/frontends/php/include/classes/ctag.inc.php index 8a115bde..563ad4eb 100644 --- a/frontends/php/include/classes/ctag.inc.php +++ b/frontends/php/include/classes/ctag.inc.php @@ -119,7 +119,7 @@ } if(!is_string($value) && !is_int($value) && !is_float($value)) { - return $this->error("Incorrect value for AddOption [$value]"); + return $this->error("Incorrect value for AddOption [$name] [$value]"); } $this->options[$name] = htmlspecialchars(strval($value)); diff --git a/frontends/php/include/forms.inc.php b/frontends/php/include/forms.inc.php index e73db8d7..0e4aa9b3 100644 --- a/frontends/php/include/forms.inc.php +++ b/frontends/php/include/forms.inc.php @@ -1036,9 +1036,9 @@ $frmAutoReg->AddRow(S_PRIORITY,new CTextBox("priority",$priority,4)); $frmAutoReg->AddRow(S_HOST,array( new CTextBox("host",$host,32,NULL,'yes'), - new CButton("btn1","Select", - "return PopUp('popup.php?form=".$frmAutoReg->GetName(). - "&field1=hostid&field2=host','new_win',". + new CButton("btn1",S_SELECT, + "return PopUp('popup.php?dstfrm=".$frmAutoReg->GetName(). + "&dstfld1=hostid&dstfld2=host&srctbl=hosts&srcfld1=hostid&srcfld2=host','new_win',". "'width=450,height=450,resizable=1,scrollbars=1');", 'T') )); @@ -1315,9 +1315,9 @@ $txtCondVal = new CTextBox('host','',20); $txtCondVal->SetReadonly('yes'); - $btnSelect = new CButton('btn1','Select', - "return PopUp('popup.php?form=".$frmAction->GetName(). - "&field1=new_condition_value&field2=host','new_win',". + $btnSelect = new CButton('btn1',S_SELECT, + "return PopUp('popup.php?dstfrm=".$frmAction->GetName(). + "&dstfld1=new_condition_value&dstfld2=host&srctbl=hosts&srcfld1=hostid&srcfld2=host','new_win',". "'width=450,height=450,resizable=1,scrollbars=1');"); $btnSelect->SetAccessKey('T'); @@ -1325,17 +1325,17 @@ } else if($new_condition_type == CONDITION_TYPE_TRIGGER) { - $cmbCondVal = new CComboBox('new_condition_value'); - $triggers = DBselect("select distinct h.host,t.triggerid,t.description". - " from triggers t, functions f,items i, hosts h". - " where t.triggerid=f.triggerid and f.itemid=i.itemid". - " and h.hostid=i.hostid order by h.host"); - while($trigger = DBfetch($triggers)) - { - $cmbCondVal->AddItem($trigger["triggerid"], - $trigger["host"].":".SPACE.$trigger["description"]); - } - array_push($rowCondition,$cmbCondVal); + $frmAction->AddVar('new_condition_value','0'); + + $txtCondVal = new CTextBox('trigger','',20); + $txtCondVal->SetReadonly('yes'); + + $btnSelect = new CButton('btn1',S_SELECT, + "return PopUp('popup.php?dstfrm=".$frmAction->GetName(). + "&dstfld1=new_condition_value&dstfld2=trigger&srctbl=triggers&srcfld1=triggerid&srcfld2=description','new_win',". + "'width=600,height=450,resizable=1,scrollbars=1');"); + $btnSelect->SetAccessKey('T'); + array_push($rowCondition, $txtCondVal, $btnSelect); } else if($new_condition_type == CONDITION_TYPE_TRIGGER_NAME) { @@ -2469,8 +2469,8 @@ $frmEl->AddVar("elementid",$elementid); $frmEl->AddRow(S_HOST, array( new CTextBox("host",$host,32,NULL,'yes'), - new CButton("btn1","Select","return PopUp('popup.php?form=".$frmEl->GetName(). - "&field1=elementid&field2=host','new_win',". + new CButton("btn1",S_SELECT,"return PopUp('popup.php?dstfrm=".$frmEl->GetName(). + "&dstfld1=elementid&dstfld2=host&srctbl=hosts&srcfld1=hostid&srcfld2=host','new_win',". "'width=450,height=450,resizable=1,scrollbars=1');","T") )); } @@ -2588,14 +2588,6 @@ $cmbElements->AddItem($db_selement["selementid"],$label); } - $cmbIndic = new CComboBox("triggerid",$triggerid); - $cmbIndic->AddItem(0,"-"); - $result=DBselect("select triggerid from triggers order by description"); - while($row=DBfetch($result)) - { - $cmbIndic->AddItem($row["triggerid"],expand_trigger_description($row["triggerid"])); - } - $cmbType = new CComboBox("drawtype_off",$drawtype_off); $cmbType->AddItem(0,get_drawtype_description(0)); $cmbType->AddItem(1,get_drawtype_description(1)); @@ -2623,7 +2615,22 @@ $cmbElements->SetValue($selementid2); // rename without recreation $frmCnct->AddRow("Element 2",$cmbElements); - $frmCnct->AddRow("Link status indicator",$cmbIndic); + $frmCnct->AddVar('triggerid',$triggerid); + + if($triggerid > 0) + $trigger = expand_trigger_description($triggerid); + else + $trigger = ""; + + $txtTrigger = new CTextBox('trigger',$trigger,60); + $txtTrigger->SetReadonly('yes'); + + $btnSelect = new CButton('btn1',S_SELECT, + "return PopUp('popup.php?dstfrm=".$frmCnct->GetName(). + "&dstfld1=triggerid&dstfld2=trigger&srctbl=triggers&srcfld1=triggerid&srcfld2=description','new_win',". + "'width=600,height=450,resizable=1,scrollbars=1');"); + $btnSelect->SetAccessKey('T'); + $frmCnct->AddRow("Link status indicator",array($txtTrigger, $btnSelect)); $frmCnct->AddRow("Type (OFF)",$cmbType); $frmCnct->AddRow("Color (OFF)",$cmbColor); diff --git a/frontends/php/include/locales/en_gb.inc.php b/frontends/php/include/locales/en_gb.inc.php index fe7d6406..1c59a4c6 100644 --- a/frontends/php/include/locales/en_gb.inc.php +++ b/frontends/php/include/locales/en_gb.inc.php @@ -749,6 +749,7 @@ "S_SERVER"=> "Server", "S_DELETE"=> "Delete", "S_DELETE_SELECTED_SERVICES"=> "Delete selected services?", + "S_DELETE_SELECTED_LINKS"=> "Delete selected links?", "S_SERVICES_DELETED"=> "Services deleted", "S_CANNOT_DELETE_SERVICES"=> "Cannot delete services", @@ -761,6 +762,7 @@ "S_TRIGGER_BIG"=> "TRIGGER", // triggers.php + "S_NO_TRIGGERS_DEFINED"=> "No triggers defined", "S_CONFIGURATION_OF_TRIGGERS"=> "Configuration of triggers", "S_CONFIGURATION_OF_TRIGGERS_BIG"=> "CONFIGURATION OF TRIGGERS", "S_DEPENDENCY_ADDED"=> "Dependency added", @@ -918,6 +920,9 @@ "S_BULKLOADER_IMPORT_ACTIONS"=> "Import Actions", "S_BULKLOADER_IMPORT_ITSERVICES"=> "Import IT Services", +// popup.php + "S_EMPTY"=> "Empty", + // Menu "S_HELP"=> "Help", diff --git a/frontends/php/include/services.inc.php b/frontends/php/include/services.inc.php index c5a36eed..5a830e16 100644 --- a/frontends/php/include/services.inc.php +++ b/frontends/php/include/services.inc.php @@ -19,46 +19,26 @@ **/ ?> -- cgit