From 28a09ed13e41ddbe5e30d63e92a1f5fb3395ef89 Mon Sep 17 00:00:00 2001 From: osmiy Date: Mon, 23 Oct 2006 07:34:27 +0000 Subject: - developed group permission system (Eugene) git-svn-id: svn://svn.zabbix.com/trunk@3371 97f52cf1-0a1b-0410-bd0e-c28be96e8082 --- frontends/php/include/services.inc.php | 51 +++++++++++++--------------------- 1 file changed, 19 insertions(+), 32 deletions(-) (limited to 'frontends/php/include/services.inc.php') diff --git a/frontends/php/include/services.inc.php b/frontends/php/include/services.inc.php index 9be53611..11dbd31b 100644 --- a/frontends/php/include/services.inc.php +++ b/frontends/php/include/services.inc.php @@ -21,10 +21,7 @@ 0) { return TRUE; @@ -103,8 +102,6 @@ var_dump($service_times); { return $result; } - // delete service permisions - DBexecute('delete from rights where name=\'Service\' and id='.$serviceid); $sql="delete from services where serviceid=$serviceid"; return DBexecute($sql); @@ -114,9 +111,7 @@ var_dump($service_times); # Warning: recursive function function does_service_depend_on_the_service($serviceid,$serviceid2) { -# echo "Serviceid:$serviceid Triggerid:$serviceid2
"; $service=get_service_by_serviceid($serviceid); -# echo "Service status:".$service["status"]."
"; if($service["status"]==0) { return FALSE; @@ -130,9 +125,7 @@ var_dump($service_times); } - $sql="select serviceupid from services_links where servicedownid=$serviceid2 and soft=0"; -# echo $sql."
"; - $result=DBselect($sql); + $result=DBselect("select serviceupid from services_links where servicedownid=$serviceid2 and soft=0"); while($row=DBfetch($result)) { if(does_service_depend_on_the_service($serviceid,$row["serviceupid"]) == TRUE) @@ -145,9 +138,7 @@ var_dump($service_times); function service_has_parent($serviceid) { - $sql="select count(*) as cnt from services_links where servicedownid=$serviceid"; - $result=DBselect($sql); - $row=DBfetch($result); + $row = DBfetch(DBselect("select count(*) as cnt from services_links where servicedownid=$serviceid")); if($row["cnt"]>0) { return TRUE; @@ -157,9 +148,7 @@ var_dump($service_times); function service_has_no_this_parent($parentid,$serviceid) { - $sql="select count(*) as cnt from services_links where serviceupid=$parentid and servicedownid=$serviceid"; - $result=DBselect($sql); - $row=DBfetch($result); + $row = DBfetch(DBselect("select count(*) as cnt from services_links where serviceupid=$parentid and servicedownid=$serviceid")); if($row["cnt"]>0) { return FALSE; @@ -171,6 +160,7 @@ var_dump($service_times); { if( ($softlink==0) && (is_service_hardlinked($servicedownid)==true) ) { + error("cannot link hardlinked service."); return false; } @@ -485,20 +475,17 @@ SDI( function get_num_of_service_childs($serviceid) { - $sql="select count(*) as cnt from services_links where serviceupid=$serviceid"; - $result=DBselect($sql); - $row=DBfetch($result); + $row = DBfetch(DBselect("select count(distinct servicedownid) as cnt from services_links ". + " where serviceupid=".$serviceid)); return $row["cnt"]; } function get_service_by_serviceid($serviceid) { - $sql="select * from services where serviceid=$serviceid"; - $result=DBselect($sql); - $res = DBfetch($result); + $res = DBfetch(DBselect("select * from services where serviceid=".$serviceid)); if(!$res) { - error("No service with serviceid=[$serviceid]"); + error("No service with serviceid=[".$serviceid."]"); return FALSE; } return $res; -- cgit