diff options
| author | osmiy <osmiy@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2006-01-19 13:17:16 +0000 |
|---|---|---|
| committer | osmiy <osmiy@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2006-01-19 13:17:16 +0000 |
| commit | 57c41aefe08e7a3c0356b1f30cb19cbe429ca2b8 (patch) | |
| tree | 8b5442c16a7edb578b00a1df7a5a28f794274f88 /frontends/php/include | |
| parent | 197bc5cadd3d2fc8826a5519248a6d8ebd0c60d9 (diff) | |
| download | zabbix-57c41aefe08e7a3c0356b1f30cb19cbe429ca2b8.tar.gz zabbix-57c41aefe08e7a3c0356b1f30cb19cbe429ca2b8.tar.xz zabbix-57c41aefe08e7a3c0356b1f30cb19cbe429ca2b8.zip | |
- Frontend improvements (Eugene)
git-svn-id: svn://svn.zabbix.com/trunk@2544 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'frontends/php/include')
| -rw-r--r-- | frontends/php/include/classes/ccheckbox.inc.php | 1 | ||||
| -rw-r--r-- | frontends/php/include/db.inc.php | 4 | ||||
| -rw-r--r-- | frontends/php/include/forms.inc.php | 142 | ||||
| -rw-r--r-- | frontends/php/include/hosts.inc.php | 11 | ||||
| -rw-r--r-- | frontends/php/include/html.inc.php | 2 | ||||
| -rw-r--r-- | frontends/php/include/locales/en_gb.inc.php | 6 |
6 files changed, 119 insertions, 47 deletions
diff --git a/frontends/php/include/classes/ccheckbox.inc.php b/frontends/php/include/classes/ccheckbox.inc.php index ebe43d93..36fe3962 100644 --- a/frontends/php/include/classes/ccheckbox.inc.php +++ b/frontends/php/include/classes/ccheckbox.inc.php @@ -27,6 +27,7 @@ parent::CTag("input","no"); $this->tag_body_start = ""; $this->AddOption('type','checkbox'); + $this->AddOption('value','yes'); $this->SetName($name); $this->SetCaption($caption); $this->SetChecked($value); diff --git a/frontends/php/include/db.inc.php b/frontends/php/include/db.inc.php index ef5d5ddc..4daada8f 100644 --- a/frontends/php/include/db.inc.php +++ b/frontends/php/include/db.inc.php @@ -75,7 +75,7 @@ } } - function DBexecute($query) + function DBexecute($query, $skip_error_messages=0) { global $DB,$DB_TYPE; @@ -85,7 +85,7 @@ { $result=mysql_query($query,$DB); - if(!$result) + if(!$result && $skip_error_messages==0) { error("SQL error: ".mysql_error()); error("Query: $query"); diff --git a/frontends/php/include/forms.inc.php b/frontends/php/include/forms.inc.php index 046db8dd..812c3af5 100644 --- a/frontends/php/include/forms.inc.php +++ b/frontends/php/include/forms.inc.php @@ -468,6 +468,8 @@ { $frmHostG->AddVar("groupid",$_REQUEST["groupid"]); } + $frmHostG->AddVar("config",get_request("config",1)); + $frmHostG->AddRow(S_GROUP_NAME,new CTextBox("name",$name,30)); $cmbHosts = new CListBox("hosts[]",5); @@ -489,20 +491,15 @@ } $frmHostG->AddRow(S_HOSTS,$cmbHosts); - $frmHostG->AddItemToBottomRow(new CButton("register","add group")); + $frmHostG->AddItemToBottomRow(new CButton("save",S_SAVE)); if(isset($_REQUEST["groupid"])) { $frmHostG->AddItemToBottomRow(SPACE); - $frmHostG->AddItemToBottomRow(new CButton("register","add group")); - $frmHostG->AddItemToBottomRow(SPACE); - $frmHostG->AddItemToBottomRow(new CButton("register","update group")); - $frmHostG->AddItemToBottomRow(SPACE); - $frmHostG->AddItemToBottomRow(new CButton("register","delete group","return Confirm('Delete selected group?');")); - $frmHostG->AddItemToBottomRow(SPACE); - $frmHostG->AddItemToBottomRow(new CButton("register","start monitoring")); - $frmHostG->AddItemToBottomRow(SPACE); - $frmHostG->AddItemToBottomRow(new CButton("register","stop monitoring")); + $frmHostG->AddItemToBottomRow(new CButton("delete",S_DELETE, + "return Confirm('Delete selected group?');")); } + $frmHostG->AddItemToBottomRow(SPACE); + $frmHostG->AddItemToBottomRow(new CButton("cancel",S_CANCEL)); $frmHostG->Show(); } @@ -1495,48 +1492,85 @@ function insert_image_form() global $_REQUEST; - $frmHost = new CFormTable(S_HOST,"hosts.php#form"); - $frmHost->SetHelp("web.hosts.host.php"); - $newgroup = get_request("newgroup",""); $host_templateid= get_request("host_templateid",""); + $host = get_request("host", ""); + $port = get_request("port", get_profile("HOST_PORT",10050)); + $status = get_request("status", HOST_STATUS_MONITORED); + $useip = get_request("useip", "no"); + $ip = get_request("ip", ""); + + $useprofile = get_request("useprofile","no"); + + $devicetype = get_request("devicetype",""); + $name = get_request("name",""); + $os = get_request("os",""); + $serialno = get_request("serialno",""); + $tag = get_request("tag",""); + $macaddress = get_request("macaddress",""); + $hardware = get_request("hardware",""); + $software = get_request("software",""); + $contact = get_request("contact",""); + $location = get_request("location",""); + $notes = get_request("notes",""); + $frm_title = S_HOST; + + if(isset($_REQUEST["hostid"])){ + $db_host=get_host_by_hostid($_REQUEST["hostid"]); + $frm_title = S_HOST.SPACE."\"".$db_host["host"]."\""; + } + if(isset($_REQUEST["hostid"]) && $_REQUEST["form"]!=1) { - $db_host=get_host_by_hostid($_REQUEST["hostid"]); $host = $db_host["host"]; $port = $db_host["port"]; $status = $db_host["status"]; - $useip = $db_host["useip"]==1 ? 'on' : 'off'; + $useip = $db_host["useip"]==1 ? 'yes' : 'no'; $ip = $db_host["ip"]; - } else { - $host = get_request("host", ""); - $port = get_request("port", get_profile("HOST_PORT",10050)); - $status = get_request("status", HOST_STATUS_MONITORED); - $useip = get_request("useip", "off"); - $ip = get_request("ip", ""); +// add groups + $db_groups=DBselect("select groupid from hosts_groups where hostid=".$_REQUEST["hostid"]); + while($db_group=DBfetch($db_groups)) $_REQUEST[$db_group["groupid"]]="yes"; +// read profile + $db_profiles = DBselect("select * from hosts_profiles where hostid=".$_REQUEST["hostid"]); + + $useprofile = "no"; + if(DBnum_rows($db_profiles)==1) + { + $useprofile = "yes"; + + $db_profile = DBfetch($db_profiles); + + $devicetype = $db_profile["devicetype"]; + $name = $db_profile["name"]; + $os = $db_profile["os"]; + $serialno = $db_profile["serialno"]; + $tag = $db_profile["tag"]; + $macaddress = $db_profile["macaddress"]; + $hardware = $db_profile["hardware"]; + $software = $db_profile["software"]; + $contact = $db_profile["contact"]; + $location = $db_profile["location"]; + $notes = $db_profile["notes"]; + } } + $frmHost = new CFormTable($frm_title,"hosts.php#form"); + $frmHost->SetHelp("web.hosts.host.php"); + if(isset($_REQUEST["hostid"])) $frmHost->AddVar("hostid",$_REQUEST["hostid"]); if(isset($_REQUEST["groupid"])) $frmHost->AddVar("groupid",$_REQUEST["groupid"]); + $frmHost->AddVar("config",get_request("config",0)); $frmHost->AddRow(S_HOST,new CTextBox("host",$host,20)); $frm_row = array(); - $groups=DBselect("select distinct groupid,name from groups order by name"); - while($group=DBfetch($groups)) + $db_groups=DBselect("select distinct groupid,name from groups order by name"); + while($db_group=DBfetch($db_groups)) { - $selected='no'; - if(isset($_REQUEST["hostid"])) - { - $result=DBselect("select count(*) as count from hosts_groups ". - "where hostid=".$_REQUEST["hostid"]." and groupid=".$group["groupid"]); - $res_row=DBfetch($result); - if($res_row["count"]==1) - $selected = 'yes'; - } - array_push($frm_row,new CCheckBox($group["groupid"],$selected, $group["name"]),BR); + $selected = isset($_REQUEST[$db_group["groupid"]]) ? 'yes' : 'no'; + array_push($frm_row,new CCheckBox($db_group["groupid"],$selected, $db_group["name"]),BR); } $frmHost->AddRow(S_GROUPS,$frm_row); @@ -1544,7 +1578,7 @@ function insert_image_form() // onChange does not work on some browsers: MacOS, KDE browser $frmHost->AddRow(S_USE_IP_ADDRESS,new CCheckBox("useip",$useip,NULL,"submit()")); - if($useip=="on") + if($useip=="yes") { $frmHost->AddRow(S_IP_ADDRESS,new CTextBox("ip",$ip,"15")); } @@ -1567,13 +1601,43 @@ function insert_image_form() { $cmbHosts->AddItem($host["hostid"],$host["host"]); } - $frmHost->AddRow(S_USE_TEMPLATES_OF_THIS_HOST,$cmbHosts); + $frmHost->AddRow(S_LINK_WITH_HOST,$cmbHosts); + $frmHost->AddRow(S_USE_PROFILE,new CCheckBox("useprofile",$useprofile,NULL,"submit()")); + if($useprofile=="yes") + { + $frmHost->AddRow(S_DEVICE_TYPE,new CTextBox("devicetype",$devicetype,61)); + $frmHost->AddRow(S_NAME,new CTextBox("name",$name,61)); + $frmHost->AddRow(S_OS,new CTextBox("os",$os,61)); + $frmHost->AddRow(S_SERIALNO,new CTextBox("serialno",$serialno,61)); + $frmHost->AddRow(S_TAG,new CTextBox("tag",$tag,61)); + $frmHost->AddRow(S_MACADDRESS,new CTextBox("macaddress",$macaddress,61)); + $frmHost->AddRow(S_HARDWARE,new CTextArea("hardware",$hardware,60,4)); + $frmHost->AddRow(S_SOFTWARE,new CTextArea("software",$software,60,4)); + $frmHost->AddRow(S_CONTACT,new CTextArea("contact",$contact,60,4)); + $frmHost->AddRow(S_LOCATION,new CTextArea("location",$location,60,4)); + $frmHost->AddRow(S_NOTES,new CTextArea("notes",$notes,60,4)); + } + else + { + $frmHost->AddVar("devicetype", $devicetype); + $frmHost->AddVar("name", $name); + $frmHost->AddVar("os", $os); + $frmHost->AddVar("serialno", $serialno); + $frmHost->AddVar("tag", $tag); + $frmHost->AddVar("macaddress", $macaddress); + $frmHost->AddVar("hardware", $hardware); + $frmHost->AddVar("software", $software); + $frmHost->AddVar("contact", $contact); + $frmHost->AddVar("location", $location); + $frmHost->AddVar("notes ", $notes); + } + $frmHost->AddItemToBottomRow(new CButton("save",S_SAVE)); if(isset($_REQUEST["hostid"])) { - $frmHost->AddItemToBottomRow(SPACE); - $frmHost->AddItemToBottomRow(new CButton("register","add items from template")); +// $frmHost->AddItemToBottomRow(SPACE); +// $frmHost->AddItemToBottomRow(new CButton("register","add items from template")); $frmHost->AddItemToBottomRow(SPACE); $frmHost->AddItemToBottomRow(new CButton("delete",S_DELETE,"return Confirm('".S_DELETE_SELECTED_HOST_Q."');")); } @@ -1581,7 +1645,7 @@ function insert_image_form() $frmHost->AddItemToBottomRow(new CButton("cancel",S_CANCEL)); $frmHost->Show(); } - +/* # Insert host profile form function insert_host_profile_form($hostid,$readonly=0) { @@ -1663,5 +1727,5 @@ function insert_image_form() } $frmHostP->Show(); } - +*/ ?> diff --git a/frontends/php/include/hosts.inc.php b/frontends/php/include/hosts.inc.php index 3907dc74..147f7f94 100644 --- a/frontends/php/include/hosts.inc.php +++ b/frontends/php/include/hosts.inc.php @@ -43,7 +43,7 @@ return 0; } - if( isset($useip) && ($useip=="on") ) + if($useip=="on" || $useip=="yes" || $useip==1) { $useip=1; } @@ -52,7 +52,6 @@ $useip=0; } - $sql="insert into hosts (host,port,status,useip,ip,disable_until,available) values ('$host',$port,$status,$useip,'$ip',0,".HOST_AVAILABLE_UNKNOWN.")"; $result=DBexecute($sql); if(!$result) @@ -104,7 +103,7 @@ } - if($useip=="on") + if($useip=="on" || $useip=="yes" || $useip==1) { $useip=1; } @@ -112,6 +111,7 @@ { $useip=0; } + $sql="update hosts set host='$host',port=$port,useip=$useip,ip='$ip' where hostid=$hostid"; $result=DBexecute($sql); @@ -175,7 +175,10 @@ { $sql="update hosts set status=".HOST_STATUS_DELETED.",host=host||' [DEL$i]' where hostid=$hostid"; } - if($ret = DBexecute($sql)) break; + if($ret = DBexecute($sql,1)) break; + } + if($ret){ + delete_host_profile($hostid); } return $ret; } diff --git a/frontends/php/include/html.inc.php b/frontends/php/include/html.inc.php index 65d9337b..19751f62 100644 --- a/frontends/php/include/html.inc.php +++ b/frontends/php/include/html.inc.php @@ -84,7 +84,7 @@ if(isset($_REQUEST[$parameter])) { - return "&$parameter=".$_REQUEST[$parameter]; + return "&$parameter=".$_REQUEST[$parameter]; } else { diff --git a/frontends/php/include/locales/en_gb.inc.php b/frontends/php/include/locales/en_gb.inc.php index 4a98a76e..ae36200b 100644 --- a/frontends/php/include/locales/en_gb.inc.php +++ b/frontends/php/include/locales/en_gb.inc.php @@ -321,6 +321,8 @@ "S_CANNOT_DELETE_TEMPLATE_LINKAGE"=> "Cannot delete template linkage", "S_CONFIGURATION_OF_HOSTS_AND_HOST_GROUPS"=>"CONFIGURATION OF HOSTS AND HOST GROUPS", "S_HOST_GROUPS_BIG"=> "HOST GROUPS", + "S_START"=> "Start", + "S_STOP"=> "Stop", "S_NO_HOST_GROUPS_DEFINED"=> "No host groups defined", "S_NO_LINKAGES_DEFINED"=> "No linkages defined", "S_NO_HOSTS_DEFINED"=> "No hosts defined", @@ -339,7 +341,9 @@ "S_USE_IP_ADDRESS"=> "Use IP address", "S_IP_ADDRESS"=> "IP address", // "S_USE_THE_HOST_AS_A_TEMPLATE"=> "Use the host as a template", - "S_USE_TEMPLATES_OF_THIS_HOST"=> "Use templates of this host", +// "S_USE_TEMPLATES_OF_THIS_HOST"=> "Use templates of this host", + "S_LINK_WITH_HOST"=> "Link with host", + "S_USE_PROFILE"=> "Use profile", "S_DELETE_SELECTED_HOST_Q"=> "Delete selected host?", "S_GROUP_NAME"=> "Group name", "S_HOST_GROUP"=> "Host group", |
