diff options
| author | osmiy <osmiy@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2006-10-31 08:05:54 +0000 |
|---|---|---|
| committer | osmiy <osmiy@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2006-10-31 08:05:54 +0000 |
| commit | 3eea91a6fdd3ae1c667e25de6ffdf5546774f915 (patch) | |
| tree | 9b531ac2bb71cff205afd097e92bc91eba589404 /frontends/php/include/forms.inc.php | |
| parent | cf058c2ec2bff2902940ebcb7b753267ac7bea98 (diff) | |
| download | zabbix-3eea91a6fdd3ae1c667e25de6ffdf5546774f915.tar.gz zabbix-3eea91a6fdd3ae1c667e25de6ffdf5546774f915.tar.xz zabbix-3eea91a6fdd3ae1c667e25de6ffdf5546774f915.zip | |
recommited revisions r3410 and r3411
git-svn-id: svn://svn.zabbix.com/trunk@3416 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'frontends/php/include/forms.inc.php')
| -rw-r--r-- | frontends/php/include/forms.inc.php | 280 |
1 files changed, 171 insertions, 109 deletions
diff --git a/frontends/php/include/forms.inc.php b/frontends/php/include/forms.inc.php index 32a3e9f5..e3ce16d4 100644 --- a/frontends/php/include/forms.inc.php +++ b/frontends/php/include/forms.inc.php @@ -694,6 +694,7 @@ $add_groupid = get_request("add_groupid" ,get_request("groupid",0)); + $limited = null; if(is_null($host)){ $host_info = get_host_by_hostid($_REQUEST["hostid"]); @@ -704,58 +705,63 @@ { $frmItem->AddVar("itemid",$_REQUEST["itemid"]); - $result=DBselect("select i.*, h.host, h.hostid". + $item_data = DBfetch(DBselect("select i.*, h.host, h.hostid". " from items i,hosts h where i.itemid=".$_REQUEST["itemid"]. - " and h.hostid=i.hostid"); - $row=DBfetch($result); - } - - if(isset($_REQUEST["itemid"]) && !isset($_REQUEST["form_refresh"])) - { - $description = $row["description"]; - $key = $row["key_"]; - $host = $row["host"]; - $delay = $row["delay"]; - $history = $row["history"]; - $status = $row["status"]; - $type = $row["type"]; - $snmp_community = $row["snmp_community"]; - $snmp_oid = $row["snmp_oid"]; - $snmp_port = $row["snmp_port"]; - $value_type = $row["value_type"]; - $trapper_hosts = $row["trapper_hosts"]; - $units = $row["units"]; - $valuemapid = $row["valuemapid"]; - $multiplier = $row["multiplier"]; - $hostid = $row["hostid"]; - $delta = $row["delta"]; - $trends = $row["trends"]; - $db_delay_flex = $row["delay_flex"]; - - $snmpv3_securityname = $row["snmpv3_securityname"]; - $snmpv3_securitylevel = $row["snmpv3_securitylevel"]; - $snmpv3_authpassphrase = $row["snmpv3_authpassphrase"]; - $snmpv3_privpassphrase = $row["snmpv3_privpassphrase"]; - - $formula = $row["formula"]; - $logtimefmt = $row["logtimefmt"]; + " and h.hostid=i.hostid")); + + $limited = $item_data['templateid'] == 0 ? null : 'yes'; + } + + if((isset($_REQUEST["itemid"]) && !isset($_REQUEST["form_refresh"])) || isset($limited)) + { + $description = $item_data["description"]; + $key = $item_data["key_"]; + $host = $item_data["host"]; + $type = $item_data["type"]; + $snmp_community = $item_data["snmp_community"]; + $snmp_oid = $item_data["snmp_oid"]; + $snmp_port = $item_data["snmp_port"]; + $value_type = $item_data["value_type"]; + $trapper_hosts = $item_data["trapper_hosts"]; + $units = $item_data["units"]; + $valuemapid = $item_data["valuemapid"]; + $multiplier = $item_data["multiplier"]; + $hostid = $item_data["hostid"]; + + $snmpv3_securityname = $item_data["snmpv3_securityname"]; + $snmpv3_securitylevel = $item_data["snmpv3_securitylevel"]; + $snmpv3_authpassphrase = $item_data["snmpv3_authpassphrase"]; + $snmpv3_privpassphrase = $item_data["snmpv3_privpassphrase"]; - $db_applications = get_applications_by_itemid($_REQUEST["itemid"]); - while($db_app = DBfetch($db_applications)) - { - if(in_array($db_app["applicationid"],$applications)) continue; - array_push($applications,$db_app["applicationid"]); - } + $formula = $item_data["formula"]; + $logtimefmt = $item_data["logtimefmt"]; - if(isset($db_delay_flex)) + if(!isset($limited) || !isset($_REQUEST["form_refresh"])) { - $arr_of_dellays = explode(";",$db_delay_flex); - foreach($arr_of_dellays as $one_db_delay) + $delay = $item_data["delay"]; + $history = $item_data["history"]; + $status = $item_data["status"]; + $delta = $item_data["delta"]; + $trends = $item_data["trends"]; + $db_delay_flex = $item_data["delay_flex"]; + + if(isset($db_delay_flex)) { - @list($one_delay,$one_time_period) = explode("/",$one_db_delay); - if(!isset($one_delay) || !isset($one_time_period)) continue; + $arr_of_dellays = explode(";",$db_delay_flex); + foreach($arr_of_dellays as $one_db_delay) + { + @list($one_delay,$one_time_period) = explode("/",$one_db_delay); + if(!isset($one_delay) || !isset($one_time_period)) continue; - array_push($delay_flex,array("delay"=>$one_delay,"period"=>$one_time_period)); + array_push($delay_flex,array("delay"=>$one_delay,"period"=>$one_time_period)); + } + } + + $db_applications = get_applications_by_itemid($_REQUEST["itemid"]); + while($db_app = DBfetch($db_applications)) + { + if(in_array($db_app["applicationid"],$applications)) continue; + array_push($applications,$db_app["applicationid"]); } } } @@ -791,26 +797,32 @@ if(count($applications)==0) array_push($applications,0); if(isset($_REQUEST["itemid"])) { - $frmItem->SetTitle(S_ITEM." '$host:".$row["description"]."'"); + $frmItem->SetTitle(S_ITEM." '$host:".$item_data["description"]."'"); } else { $frmItem->SetTitle(S_ITEM." '$host:$description'"); } - $frmItem->AddRow(S_DESCRIPTION, new CTextBox("description",$description,40)); - - - $cmbType = new CComboBox("type",$type,"submit()"); - $cmbType->AddItem(ITEM_TYPE_ZABBIX,S_ZABBIX_AGENT); - $cmbType->AddItem(ITEM_TYPE_ZABBIX_ACTIVE,S_ZABBIX_AGENT_ACTIVE); - $cmbType->AddItem(ITEM_TYPE_SIMPLE,S_SIMPLE_CHECK); - $cmbType->AddItem(ITEM_TYPE_SNMPV1,S_SNMPV1_AGENT); - $cmbType->AddItem(ITEM_TYPE_SNMPV2C,S_SNMPV2_AGENT); - $cmbType->AddItem(ITEM_TYPE_SNMPV3,S_SNMPV3_AGENT); - $cmbType->AddItem(ITEM_TYPE_TRAPPER,S_ZABBIX_TRAPPER); - $cmbType->AddItem(ITEM_TYPE_INTERNAL,S_ZABBIX_INTERNAL); - $cmbType->AddItem(ITEM_TYPE_AGGREGATE,S_ZABBIX_AGGREGATE); - $frmItem->AddRow(S_TYPE, $cmbType); + $frmItem->AddRow(S_DESCRIPTION, new CTextBox("description",$description,40, $limited)); + if(isset($limited)) + { + $frmItem->AddRow(S_TYPE, new CTextBox("typename", item_type2str($type), 40, 'yes')); + $frmItem->AddVar('type', $type); + } + else + { + $cmbType = new CComboBox("type",$type,"submit()"); + $cmbType->AddItem(ITEM_TYPE_ZABBIX,S_ZABBIX_AGENT); + $cmbType->AddItem(ITEM_TYPE_ZABBIX_ACTIVE,S_ZABBIX_AGENT_ACTIVE); + $cmbType->AddItem(ITEM_TYPE_SIMPLE,S_SIMPLE_CHECK); + $cmbType->AddItem(ITEM_TYPE_SNMPV1,S_SNMPV1_AGENT); + $cmbType->AddItem(ITEM_TYPE_SNMPV2C,S_SNMPV2_AGENT); + $cmbType->AddItem(ITEM_TYPE_SNMPV3,S_SNMPV3_AGENT); + $cmbType->AddItem(ITEM_TYPE_TRAPPER,S_ZABBIX_TRAPPER); + $cmbType->AddItem(ITEM_TYPE_INTERNAL,S_ZABBIX_INTERNAL); + $cmbType->AddItem(ITEM_TYPE_AGGREGATE,S_ZABBIX_AGGREGATE); + $frmItem->AddRow(S_TYPE, $cmbType); + } if(($type==ITEM_TYPE_SNMPV1)||($type==ITEM_TYPE_SNMPV2C)) { @@ -819,32 +831,46 @@ $frmItem->AddVar("snmpv3_authpassphrase",$snmpv3_authpassphrase); $frmItem->AddVar("snmpv3_privpassphrase",$snmpv3_privpassphrase); - $frmItem->AddRow(S_SNMP_COMMUNITY, new CTextBox("snmp_community",$snmp_community,16)); - $frmItem->AddRow(S_SNMP_OID, new CTextBox("snmp_oid",$snmp_oid,40)); - $frmItem->AddRow(S_SNMP_PORT, new CTextBox("snmp_port",$snmp_port,5)); + $frmItem->AddRow(S_SNMP_COMMUNITY, new CTextBox("snmp_community",$snmp_community,16,$limited)); + $frmItem->AddRow(S_SNMP_OID, new CTextBox("snmp_oid",$snmp_oid,40,$limited)); + $frmItem->AddRow(S_SNMP_PORT, new CNumericBox("snmp_port",$snmp_port,5,$limited)); } else if($type==ITEM_TYPE_SNMPV3) { $frmItem->AddVar("snmp_community",$snmp_community); - $frmItem->AddRow(S_SNMP_OID, new CTextBox("snmp_oid",$snmp_oid,40)); + $frmItem->AddRow(S_SNMP_OID, new CTextBox("snmp_oid",$snmp_oid,40,$limited)); $frmItem->AddRow(S_SNMPV3_SECURITY_NAME, - new CTextBox("snmpv3_securityname",$snmpv3_securityname,64)); - - $cmbSecLevel = new CComboBox("snmpv3_securitylevel",$snmpv3_securitylevel); - $cmbSecLevel->AddItem(ITEM_SNMPV3_SECURITYLEVEL_NOAUTHNOPRIV,"NoAuthPriv"); - $cmbSecLevel->AddItem(ITEM_SNMPV3_SECURITYLEVEL_AUTHNOPRIV,"AuthNoPriv"); - $cmbSecLevel->AddItem(ITEM_SNMPV3_SECURITYLEVEL_AUTHPRIV,"AuthPriv"); - $frmItem->AddRow(S_SNMPV3_SECURITY_LEVEL, $cmbSecLevel); + new CTextBox("snmpv3_securityname",$snmpv3_securityname,64,$limited)); + if(isset($limited)) + { + $frmItem->AddVar("snmpv3_securitylevel", $snmpv3_securitylevel); + switch($snmpv3_securitylevel) + { + case ITEM_SNMPV3_SECURITYLEVEL_NOAUTHNOPRIV: $snmpv3_securitylevel="NoAuthPriv"; break; + case ITEM_SNMPV3_SECURITYLEVEL_AUTHNOPRIV: $snmpv3_securitylevel = "AuthNoPriv"; break; + case ITEM_SNMPV3_SECURITYLEVEL_AUTHPRIV: $snmpv3_securitylevel = "AuthPriv"; break; + } + $frmItem->AddRow(S_SNMPV3_SECURITY_LEVEL, new CTextBox("snmpv3_securitylevel_desc", + $snmpv3_securitylevel, $limited)); + } + else + { + $cmbSecLevel = new CComboBox("snmpv3_securitylevel",$snmpv3_securitylevel); + $cmbSecLevel->AddItem(ITEM_SNMPV3_SECURITYLEVEL_NOAUTHNOPRIV,"NoAuthPriv"); + $cmbSecLevel->AddItem(ITEM_SNMPV3_SECURITYLEVEL_AUTHNOPRIV,"AuthNoPriv"); + $cmbSecLevel->AddItem(ITEM_SNMPV3_SECURITYLEVEL_AUTHPRIV,"AuthPriv"); + $frmItem->AddRow(S_SNMPV3_SECURITY_LEVEL, $cmbSecLevel); + } $frmItem->AddRow(S_SNMPV3_AUTH_PASSPHRASE, - new CTextBox("snmpv3_authpassphrase",$snmpv3_authpassphrase,64)); + new CTextBox("snmpv3_authpassphrase",$snmpv3_authpassphrase,64,$limited)); $frmItem->AddRow(S_SNMPV3_PRIV_PASSPHRASE, - new CTextBox("snmpv3_privpassphrase",$snmpv3_privpassphrase,64)); + new CTextBox("snmpv3_privpassphrase",$snmpv3_privpassphrase,64,$limited)); - $frmItem->AddRow(S_SNMP_PORT, new CTextBox("snmp_port",$snmp_port,5)); + $frmItem->AddRow(S_SNMP_PORT, new CNumericBox("snmp_port",$snmp_port,5,$limited)); } else { @@ -857,30 +883,54 @@ $frmItem->AddVar("snmpv3_privpassphrase",$snmpv3_privpassphrase); } - $btnSelect = new CButton('btn1',S_SELECT, - "return PopUp('popup.php?dstfrm=".$frmItem->GetName(). - "&dstfld1=key&srctbl=help_items&srcfld1=key_','new_win',". - "'width=650,height=450,resizable=1,scrollbars=1');"); - $btnSelect->SetAccessKey('T'); - - $frmItem->AddRow(S_KEY, array(new CTextBox("key",$key,40), $btnSelect)); + if(isset($limited)) + { + $btnSelect = null; + } + else + { + $btnSelect = new CButton('btn1',S_SELECT, + "return PopUp('popup.php?dstfrm=".$frmItem->GetName(). + "&dstfld1=key&srctbl=help_items&srcfld1=key_','new_win',". + "'width=650,height=450,resizable=1,scrollbars=1');"); + $btnSelect->SetAccessKey('T'); + } + + $frmItem->AddRow(S_KEY, array(new CTextBox("key",$key,40,$limited), $btnSelect)); - $cmbValType = new CComboBox("value_type",$value_type,"submit()"); - $cmbValType->AddItem(ITEM_VALUE_TYPE_UINT64, S_NUMERIC_UINT64); - $cmbValType->AddItem(ITEM_VALUE_TYPE_FLOAT, S_NUMERIC_FLOAT); - $cmbValType->AddItem(ITEM_VALUE_TYPE_STR, S_CHARACTER); - $cmbValType->AddItem(ITEM_VALUE_TYPE_LOG, S_LOG); - $cmbValType->AddItem(ITEM_VALUE_TYPE_TEXT, S_TEXT); + if(isset($limited)) + { + $frmItem->AddVar("value_type", $value_type); + $cmbValType = new CTextBox('value_type_name', item_value_type2str($value_type), 40, 'yes'); + } + else + { + $cmbValType = new CComboBox("value_type",$value_type,"submit()"); + $cmbValType->AddItem(ITEM_VALUE_TYPE_UINT64, S_NUMERIC_UINT64); + $cmbValType->AddItem(ITEM_VALUE_TYPE_FLOAT, S_NUMERIC_FLOAT); + $cmbValType->AddItem(ITEM_VALUE_TYPE_STR, S_CHARACTER); + $cmbValType->AddItem(ITEM_VALUE_TYPE_LOG, S_LOG); + $cmbValType->AddItem(ITEM_VALUE_TYPE_TEXT, S_TEXT); + } $frmItem->AddRow(S_TYPE_OF_INFORMATION,$cmbValType); - + if( ($value_type==ITEM_VALUE_TYPE_FLOAT) || ($value_type==ITEM_VALUE_TYPE_UINT64)) { - $frmItem->AddRow(S_UNITS, new CTextBox("units",$units,40)); + $frmItem->AddRow(S_UNITS, new CTextBox("units",$units,40, $limited)); - $cmbMultipler = new CComboBox("multiplier",$multiplier,"submit()"); - $cmbMultipler->AddItem(0,S_DO_NOT_USE); - $cmbMultipler->AddItem(1,S_CUSTOM_MULTIPLIER); + if(isset($limited)) + { + $frmItem->AddVar("multiplier", $multiplier); + $cmbMultipler = new CTextBox('multiplier_name', $multiplier ? S_CUSTOM_MULTIPLIER : S_DO_NOT_USE, 20, 'yes'); + } + else + { + $cmbMultipler = new CComboBox("multiplier",$multiplier,"submit()"); + $cmbMultipler->AddItem(0,S_DO_NOT_USE); + $cmbMultipler->AddItem(1,S_CUSTOM_MULTIPLIER); + } $frmItem->AddRow(S_USE_MULTIPLIER, $cmbMultipler); + } else { @@ -890,7 +940,7 @@ if($multiplier == 1) { - $frmItem->AddRow(S_CUSTOM_MULTIPLIER, new CTextBox("formula",$formula,40)); + $frmItem->AddRow(S_CUSTOM_MULTIPLIER, new CTextBox("formula",$formula,40,$limited)); } else { @@ -898,12 +948,12 @@ } if($type != ITEM_TYPE_TRAPPER) { - $frmItem->AddRow(S_UPDATE_INTERVAL_IN_SEC, new CTextBox("delay",$delay,5)); + $frmItem->AddRow(S_UPDATE_INTERVAL_IN_SEC, new CNumericBox("delay",$delay,5)); $frmItem->AddRow("Flexible intervals (sec)", $delay_flex_el); $frmItem->AddRow("New flexible interval", array( S_DELAY, SPACE, - new CTextBox("new_delay_flex[delay]","50",5), + new CNumericBox("new_delay_flex[delay]","50",5), S_PERIOD, SPACE, new CTextBox("new_delay_flex[period]","1-7,00:00-23:59",27), BR, new CButton("add_delay_flex",S_ADD) @@ -916,24 +966,23 @@ } $frmItem->AddRow(S_KEEP_HISTORY_IN_DAYS, array( - new CTextBox("history",$history,8), + new CNumericBox("history",$history,8), (!isset($_REQUEST["itemid"])) ? null : new CButton("del_history", "Clean history", "return Confirm('History cleaning can take a long time. Continue?');") )); - $frmItem->AddRow(S_KEEP_TRENDS_IN_DAYS, new CTextBox("trends",$trends,8)); + $frmItem->AddRow(S_KEEP_TRENDS_IN_DAYS, new CNumericBox("trends",$trends,8)); $cmbStatus = new CComboBox("status",$status); $cmbStatus->AddItem(ITEM_STATUS_ACTIVE,S_MONITORED); $cmbStatus->AddItem(ITEM_STATUS_DISABLED,S_DISABLED); -# $cmbStatus->AddItem(2,"Trapper"); $cmbStatus->AddItem(ITEM_STATUS_NOTSUPPORTED,S_NOT_SUPPORTED); $frmItem->AddRow(S_STATUS,$cmbStatus); if($value_type==ITEM_VALUE_TYPE_LOG) { - $frmItem->AddRow(S_LOG_TIME_FORMAT, new CTextBox("logtimefmt",$logtimefmt,16)); + $frmItem->AddRow(S_LOG_TIME_FORMAT, new CTextBox("logtimefmt",$logtimefmt,16,$limited)); } else { @@ -955,12 +1004,25 @@ if(($value_type==ITEM_VALUE_TYPE_UINT64) || ($value_type == ITEM_VALUE_TYPE_STR)) { - $cmbMap = new CComboBox("valuemapid",$valuemapid); - $cmbMap->AddItem(0,S_AS_IS); - $db_valuemaps = DBselect("select * from valuemaps where ".DBid2nodeid("valuemapid")."=".$ZBX_CURNODEID); - while($db_valuemap = DBfetch($db_valuemaps)) - $cmbMap->AddItem($db_valuemap["valuemapid"],$db_valuemap["name"]); - + if(isset($limited)) + { + $frmItem->AddVar("valuemapid", $valuemapid); + $map_name = S_AS_IS; + if($map_data = DBfetch(DBselect('select name from valuemaps where valuemapid='.$valuemapid))) + { + $map_name = $map_data['name']; + } + $cmbMap = new CTextBox("valuemap_name", $map_name, 20, 'yes'); + } + else + { + $cmbMap = new CComboBox("valuemapid",$valuemapid); + $cmbMap->AddItem(0,S_AS_IS); + $db_valuemaps = DBselect("select * from valuemaps where ".DBid2nodeid("valuemapid")."=".$ZBX_CURNODEID); + while($db_valuemap = DBfetch($db_valuemaps)) + $cmbMap->AddItem($db_valuemap["valuemapid"],$db_valuemap["name"]); + } + $link = new CLink("throw map","config.php?config=6","action"); $link->AddOption("target","_blank"); $frmItem->AddRow(array(S_SHOW_VALUE.SPACE,$link),$cmbMap); @@ -971,9 +1033,9 @@ $frmItem->AddVar("valuemapid",0); } - if($type==2) + if($type==ITEM_TYPE_TRAPPER) { - $frmItem->AddRow(S_ALLOWED_HOSTS, new CTextBox("trapper_hosts",$trapper_hosts,40)); + $frmItem->AddRow(S_ALLOWED_HOSTS, new CTextBox("trapper_hosts",$trapper_hosts,40,$limited)); } else { @@ -991,7 +1053,7 @@ $frmItem->AddRow(S_APPLICATIONS,$cmbApps); $frmRow = array(new CButton("save",S_SAVE)); - if(isset($_REQUEST["itemid"])) + if(isset($_REQUEST["itemid"]) && !isset($limited)) { array_push($frmRow, SPACE, |
