diff options
author | hugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2005-09-08 12:18:01 +0000 |
---|---|---|
committer | hugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2005-09-08 12:18:01 +0000 |
commit | 4dfbff1dbb579d8566018b724fbf2d3e0a27fc19 (patch) | |
tree | 811cfd0263328b67f33a373e741aaf0a0cea8511 /frontends/php/hostprofiles.php | |
parent | 3ac4929cfcb64264f1a39518e1c0be933f958a17 (diff) | |
download | zabbix-4dfbff1dbb579d8566018b724fbf2d3e0a27fc19.tar.gz zabbix-4dfbff1dbb579d8566018b724fbf2d3e0a27fc19.tar.xz zabbix-4dfbff1dbb579d8566018b724fbf2d3e0a27fc19.zip |
- added screen Host Profiles (Alexei)
git-svn-id: svn://svn.zabbix.com/trunk@2055 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'frontends/php/hostprofiles.php')
-rw-r--r-- | frontends/php/hostprofiles.php | 159 |
1 files changed, 159 insertions, 0 deletions
diff --git a/frontends/php/hostprofiles.php b/frontends/php/hostprofiles.php new file mode 100644 index 00000000..7467acb6 --- /dev/null +++ b/frontends/php/hostprofiles.php @@ -0,0 +1,159 @@ +<?php +/* +** ZABBIX +** Copyright (C) 2000-2005 SIA Zabbix +** +** This program is free software; you can redistribute it and/or modify +** it under the terms of the GNU General Public License as published by +** the Free Software Foundation; either version 2 of the License, or +** (at your option) any later version. +** +** This program is distributed in the hope that it will be useful, +** but WITHOUT ANY WARRANTY; without even the implied warranty of +** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +** GNU General Public License for more details. +** +** You should have received a copy of the GNU General Public License +** along with this program; if not, write to the Free Software +** Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +**/ +?> +<?php + include "include/config.inc.php"; + $page["title"] = "S_HOST_PROFILES"; + $page["file"] = "hostprofiles.php"; + show_header($page["title"],0,0); +?> + +<?php + if(!check_anyright("Host","R")) + { + show_table_header("<font color=\"AA0000\">".S_NO_PERMISSIONS."</font>"); + show_footer(); + exit; + } + if(isset($_GET["select"])&&($_GET["select"]!="")) + { + unset($_GET["groupid"]); + unset($_GET["hostid"]); + } + + if(isset($_GET["hostid"])&&!check_right("Host","R",$_GET["hostid"])) + { + show_table_header("<font color=\"AA0000\">".S_NO_PERMISSIONS."</font>"); + show_footer(); + exit; + } +?> + +<?php + if(isset($_GET["groupid"])&&($_GET["groupid"]==0)) + { + unset($_GET["groupid"]); + } +?> + +<?php + $_GET["hostid"]=@iif(isset($_GET["hostid"]),$_GET["hostid"],get_profile("web.latest.hostid",0)); + update_profile("web.latest.hostid",$_GET["hostid"]); + update_profile("web.menu.view.last",$page["file"]); +?> + +<?php + $h1=" ".S_HOST_PROFILES_BIG; + + $h2=S_GROUP." "; + $h2=$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>"; + + $h2=$h2." ".S_HOST." "; + $h2=$h2."<select class=\"biginput\" name=\"hostid\" onChange=\"submit()\">"; + $h2=$h2.form_select("hostid",0,S_SELECT_HOST_DOT_DOT_DOT); + + if(isset($_GET["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=".$_GET["groupid"]." and hg.hostid=h.hostid group by h.hostid,h.host order by h.host"; + } + 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"; + } + + $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>"; + + show_header2($h1, $h2, "<form name=\"form2\" method=\"get\" action=\"hostprofiles.php\">", "</form>"); +?> + +<?php + if(isset($_GET["hostid"])||isset($_GET["select"])) + { + table_begin(); + $header=array(); + $header=array_merge($header,array(S_HOST,S_NAME,S_OS,S_SERIALNO,S_TAG,S_MACADDRESS)); + + table_header($header); + + $col=0; + $sql="select h.hostid,h.host,p.name,p.os,p.serialno,p.tag,p.macaddress from hosts h,hosts_profiles p where h.hostid=p.hostid and h.hostid=".$_GET["hostid"]; + + $result=DBselect($sql); + while($row=DBfetch($result)) + { + if(!check_right("Host","R",$row["hostid"])) + { + continue; + } + + table_row(array( + $row["host"], + $row["name"], + $row["os"], + $row["serialno"], + $row["tag"], + $row["macaddress"] + ), + $col++); + } + + + table_end(); + show_table_header_end(); + } + else + { + table_nodata(); + } +?> + +<?php + show_footer(); +?> |