summaryrefslogtreecommitdiffstats
path: root/frontends/php/include
diff options
context:
space:
mode:
authoralex <alex@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2006-09-14 11:06:27 +0000
committeralex <alex@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2006-09-14 11:06:27 +0000
commit8755f9643aba3cffc5320321618fbe8e7b78b73b (patch)
tree61f79790fee2222b1d3c5c3cd3faf09c9de8f168 /frontends/php/include
parent220a18752f8fefdd0af90ccd17cc045c2e6ae1a6 (diff)
Initial integration of distributed monitoring.
Changes 3196:HEAD of branches/distributed git-svn-id: svn://svn.zabbix.com/trunk@3306 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'frontends/php/include')
-rw-r--r--frontends/php/include/acknow.inc.php11
-rw-r--r--frontends/php/include/actions.inc.php17
-rw-r--r--frontends/php/include/audit.inc.php8
-rw-r--r--frontends/php/include/autoregistration.inc.php6
-rw-r--r--frontends/php/include/bulkloader.inc.php15
-rw-r--r--frontends/php/include/config.inc.php40
-rw-r--r--frontends/php/include/db.inc.php5
-rw-r--r--frontends/php/include/forms.inc.php5
-rw-r--r--frontends/php/include/graphs.inc.php16
-rw-r--r--frontends/php/include/hosts.inc.php27
-rw-r--r--frontends/php/include/items.inc.php15
-rw-r--r--frontends/php/include/maps.inc.php33
-rw-r--r--frontends/php/include/perm.inc.php6
-rw-r--r--frontends/php/include/screens.inc.php18
-rw-r--r--frontends/php/include/services.inc.php19
-rw-r--r--frontends/php/include/triggers.inc.php22
-rw-r--r--frontends/php/include/users.inc.php12
17 files changed, 196 insertions, 79 deletions
diff --git a/frontends/php/include/acknow.inc.php b/frontends/php/include/acknow.inc.php
index 3271394e..943d376f 100644
--- a/frontends/php/include/acknow.inc.php
+++ b/frontends/php/include/acknow.inc.php
@@ -39,8 +39,15 @@
if(!$result)
return $result;
- return DBexecute("insert into acknowledges (userid,alarmid,clock,message)".
- " values ($userid,$alarmid,".time().",".zbx_dbstr($message).")");
+ $acknowledgeid = get_dbid("acknowledges","acknowledgeid");
+
+ $result = DBexecute("insert into acknowledges (acknowledgeid,userid,alarmid,clock,message)".
+ " values ($acknowledgeid,$userid,$alarmid,".time().",".zbx_dbstr($message).")");
+
+ if(!$result)
+ return $result;
+
+ return $acknowledgeid;
}
function set_alarm_acnowledged($alarmid)
diff --git a/frontends/php/include/actions.inc.php b/frontends/php/include/actions.inc.php
index f5324558..272235a1 100644
--- a/frontends/php/include/actions.inc.php
+++ b/frontends/php/include/actions.inc.php
@@ -56,11 +56,14 @@
$recipient = 0;
if(!check_commands($scripts)) return FALSE;
}
- $sql="insert into actions (actiontype,userid,subject,message,recipient,".
- "maxrepeats,repeatdelay,status,scripts) values ($actiontype,$userid,".zbx_dbstr($subject).",".
+ $actionid=get_dbid("actions","actionid");
+ $sql="insert into actions (actionid,actiontype,userid,subject,message,recipient,".
+ "maxrepeats,repeatdelay,status,scripts) values ($actionid,$actiontype,$userid,".zbx_dbstr($subject).",".
zbx_dbstr($message).",$recipient,$maxrepeats,$repeatdelay,$status,".zbx_dbstr($scripts).")";
$result=DBexecute($sql);
- return DBinsert_id($result,"actions","actionid");
+ if(!$result)
+ return $result;
+ return $actionid;
}
# Update Action
@@ -358,9 +361,13 @@
function add_action_condition($actionid, $conditiontype, $operator, $value)
{
- $sql="insert into conditions (actionid,conditiontype,operator,value) values ($actionid,$conditiontype,$operator,".zbx_dbstr($value).")";
+ $conditionid=get_dbid("conditions","conditionid");
+ $sql="insert into conditions (conditionid,actionid,conditiontype,operator,value)".
+ " values ($conditionid,$actionid,$conditiontype,$operator,".zbx_dbstr($value).")";
$result=DBexecute($sql);
- return DBinsert_id($result,"conditions","conditionid");
+ if(!$result)
+ return $result;
+ return $conditionid;
}
function update_action_status($actionid, $status)
diff --git a/frontends/php/include/audit.inc.php b/frontends/php/include/audit.inc.php
index b23d0fa3..b36b56de 100644
--- a/frontends/php/include/audit.inc.php
+++ b/frontends/php/include/audit.inc.php
@@ -25,7 +25,11 @@
$userid=$USER_DETAILS["userid"];
$clock=time();
- $sql="insert into auditlog (userid,clock,action,resourcetype,details) values ($userid,$clock,$action,$resourcetype,".zbx_dbstr($details).")";
- return DBexecute($sql);
+ $auditlogid = get_dbid("auditlog","auditlogid");
+ $sql="insert into auditlog (auditlogid,userid,clock,action,resourcetype,details) values ($auditlogid,$userid,$clock,$action,$resourcetype,".zbx_dbstr($details).")";
+ $result = DBexecute($sql);
+ if(!$result)
+ return $result;
+ return $auditlogid;
}
?>
diff --git a/frontends/php/include/autoregistration.inc.php b/frontends/php/include/autoregistration.inc.php
index 5e5019b1..1e1b87f0 100644
--- a/frontends/php/include/autoregistration.inc.php
+++ b/frontends/php/include/autoregistration.inc.php
@@ -28,15 +28,17 @@
error("Insufficient permissions");
return 0;
}
+ $autoregid = get_dbid("autoreg","autoregid");
- $sql="insert into autoreg (pattern,priority,hostid) values (".zbx_dbstr($pattern).",$priority,$hostid)";
+ $sql="insert into autoreg (autoregid,pattern,priority,hostid) values ($autoregid,".zbx_dbstr($pattern).",$priority,$hostid)";
$result=DBexecute($sql);
if($result)
{
$host=get_host_by_hostid($hostid);
info("Added new autoregistration rule for $pattern");
}
- return DBinsert_id($result,"autoreg","id");
+ else return $result;
+ return $autoregid;
}
# Update Autoregistration rule
diff --git a/frontends/php/include/bulkloader.inc.php b/frontends/php/include/bulkloader.inc.php
index 0175c167..1ab5abae 100644
--- a/frontends/php/include/bulkloader.inc.php
+++ b/frontends/php/include/bulkloader.inc.php
@@ -34,11 +34,12 @@ include_once "include/config.inc.php";
{
return $row["groupid"];
}
+ $groupid = get_dbid("groups","groupid");
- $result=DBexecute("insert into groups (name) values (".zbx_dbstr($group).")");
+ $result=DBexecute("insert into groups (groupid,name) values ($groupid,".zbx_dbstr($group).")");
if($result)
{
- return DBinsert_id($result,"groups","name");
+ return $groupid;
}
else
{
@@ -57,10 +58,11 @@ include_once "include/config.inc.php";
return $row["usrgrpid"];
}
- $result=DBexecute("insert into usrgrp (name) values ('$group')");
+ $usrgrpid=get_dbid("usrgrp","usrgrpid");
+ $result=DBexecute("insert into usrgrp (usrgrpid,name) values ($usrgrpid,'$group')");
if($result)
{
- return DBinsert_id($result,"usrgrp","name");
+ return $usrgrpid;
}
else
{
@@ -76,10 +78,11 @@ include_once "include/config.inc.php";
{
return 0;
}
- $result=DBexecute("insert into users_groups (usrgrpid,userid) values ($groupid,$userid)");
+ $id=get_dbid("users_groups","id");
+ $result=DBexecute("insert into users_groups (id,usrgrpid,userid) values ($id,$groupid,$userid)");
if($result)
{
- return 1;
+ return $id;
}
return 0;
}
diff --git a/frontends/php/include/config.inc.php b/frontends/php/include/config.inc.php
index 12b99f7b..6b4fd6d9 100644
--- a/frontends/php/include/config.inc.php
+++ b/frontends/php/include/config.inc.php
@@ -395,6 +395,23 @@ document.writeln(snd_tag);
return "$priorities,$md5sum";
}
+ function get_dbid($table,$field)
+ {
+ global $ZBX_CURNODEID;
+
+ $sql="select max($field) as id from $table where mod($field,100)=$ZBX_CURNODEID";
+ $result=DBselect($sql);
+ $row=DBfetch($result);
+ if($row && !is_null($row["id"]))
+ {
+ return $row["id"]+100;
+ }
+ else
+ {
+ return 100+$ZBX_CURNODEID;
+ }
+ }
+
function get_function_by_functionid($functionid)
{
$sql="select * from functions where functionid=$functionid";
@@ -1234,8 +1251,10 @@ COpt::profiling_start("page");
{
$lobimage = OCINewDescriptor($DB, OCI_D_LOB);
- $sql = "insert into images (name,imagetype,image)".
- " values (".zbx_dbstr($name).",".$imagetype.",EMPTY_BLOB())".
+ $imageid=get_dbid("images","imageid");
+
+ $sql = "insert into images (imageid,name,imagetype,image)".
+ " values ($imageid,".zbx_dbstr($name).",".$imagetype.",EMPTY_BLOB())".
" return image into :image";
$stid = OCIParse($DB, $sql);
if(!$stid)
@@ -1537,8 +1556,10 @@ COpt::profiling_start("page");
}
else
{
- $sql="insert into media_type (type,description,smtp_server,smtp_helo,smtp_email,exec_path,gsm_modem) values ($type,".zbx_dbstr($description).",".zbx_dbstr($smtp_server).",".zbx_dbstr($smtp_helo).",".zbx_dbstr($smtp_email).",".zbx_dbstr($exec_path).",".zbx_dbstr($gsm_modem).")";
+ $mediatypeid=get_dbid("media_type","mediatypeid");
+ $sql="insert into media_type (mediatypeid,type,description,smtp_server,smtp_helo,smtp_email,exec_path,gsm_modem) values ($mediatypeid,$type,".zbx_dbstr($description).",".zbx_dbstr($smtp_server).",".zbx_dbstr($smtp_helo).",".zbx_dbstr($smtp_email).",".zbx_dbstr($exec_path).",".zbx_dbstr($gsm_modem).")";
$ret = DBexecute($sql);
+ if($ret) $ret = $mediatypeid;
}
return $ret;
}
@@ -1559,8 +1580,11 @@ COpt::profiling_start("page");
{
$s=$s|pow(2,(int)$severity[$i]);
}
- $sql="insert into media (userid,mediatypeid,sendto,active,severity,period) values ($userid,".zbx_dbstr($mediatypeid).",".zbx_dbstr($sendto).",$active,$s,".zbx_dbstr($period).")";
- return DBexecute($sql);
+ $mediaid=get_dbid("media","mediaid");
+ $sql="insert into media (mediaid,userid,mediatypeid,sendto,active,severity,period) values ($mediaid,$userid,".zbx_dbstr($mediatypeid).",".zbx_dbstr($sendto).",$active,$s,".zbx_dbstr($period).")";
+ $ret = DBexecute($sql);
+ if($ret) $ret = $mediaid;
+ return $ret;
}
# Update Media definition
@@ -2656,13 +2680,13 @@ COpt::profiling_stop("script");
function add_valuemap($name, $mappings)
{
if(!is_array($mappings)) return FALSE;
+
+ $valuemapid = get_dbid("valuemaps","valuemapid");
- $result = DBexecute("insert into valuemaps (name) values (".zbx_dbstr($name).")");
+ $result = DBexecute("insert into valuemaps (valuemapid,name) values ($valuemapid,".zbx_dbstr($name).")");
if(!$result)
return $result;
- $valuemapid = DBinsert_id($result,"valuemaps","valuemapid");
-
$result = add_mapping_to_valuemap($valuemapid, $mappings);
if(!$result){
delete_valuemap($valuemapid);
diff --git a/frontends/php/include/db.inc.php b/frontends/php/include/db.inc.php
index 65f4ef58..bf8c7364 100644
--- a/frontends/php/include/db.inc.php
+++ b/frontends/php/include/db.inc.php
@@ -26,13 +26,16 @@
// $DB_TYPE ="POSTGRESQL";
$DB_TYPE ="MYSQL";
$DB_SERVER ="localhost";
- $DB_DATABASE ="osmiy";
+ $DB_DATABASE ="node4";
$DB_USER ="root";
$DB_PASSWORD ="";
// END OF DATABASE CONFIGURATION
global $USER_DETAILS;
+ $ZBX_CURNODEID = 4; // Selected node
+ $ZBX_LOCALNODEID = 4; // Local node
+
if($DB_TYPE == "MYSQL")
{
$DB=mysql_pconnect($DB_SERVER,$DB_USER,$DB_PASSWORD);
diff --git a/frontends/php/include/forms.inc.php b/frontends/php/include/forms.inc.php
index 441b04ea..a5a82dad 100644
--- a/frontends/php/include/forms.inc.php
+++ b/frontends/php/include/forms.inc.php
@@ -192,6 +192,7 @@
function insert_usergroups_form($usrgrpid)
{
global $_REQUEST;
+ global $ZBX_CURNODEID;
$frm_title = S_USER_GROUP;
if(isset($usrgrpid))
@@ -229,7 +230,9 @@
$frmUserG->AddRow(S_GROUP_NAME,new CTextBox("gname",$name,30));
$form_row = array();
- $db_users=DBselect("select distinct userid,alias from users order by alias");
+ $db_users=DBselect("select distinct userid,alias from users".
+ " where mod(userid,100)=".$ZBX_CURNODEID.
+ " order by alias");
while($db_user=DBfetch($db_users))
{
array_push($form_row,
diff --git a/frontends/php/include/graphs.inc.php b/frontends/php/include/graphs.inc.php
index df0ed17e..32803367 100644
--- a/frontends/php/include/graphs.inc.php
+++ b/frontends/php/include/graphs.inc.php
@@ -105,12 +105,13 @@
return 0;
}
+ $graphid=get_dbid("graphs","graphid");
+
$result=DBexecute("insert into graphs".
- " (name,width,height,yaxistype,yaxismin,yaxismax,templateid,show_work_period,show_triggers,graphtype,templateid)".
- " values (".zbx_dbstr($name).",$width,$height,$yaxistype,$yaxismin,".
+ " (graphid,name,width,height,yaxistype,yaxismin,yaxismax,templateid,show_work_period,show_triggers,graphtype,templateid)".
+ " values ($graphid,".zbx_dbstr($name).",$width,$height,$yaxistype,$yaxismin,".
" $yaxismax,$templateid,$showworkperiod,$showtriggers,$graphtype,$templateid)");
- $graphid = DBinsert_id($result,"graphs","graphid");
- if($graphid)
+ if($result)
{
info("Graph '$name' added");
}
@@ -208,11 +209,10 @@
function add_item_to_graph($graphid,$itemid,$color,$drawtype,$sortorder,$yaxisside,$calc_fnc,$type,$periods_cnt)
{
+ $gitemid=get_dbid("graphs_items","gitemid");
$result = DBexecute("insert into graphs_items".
- " (graphid,itemid,color,drawtype,sortorder,yaxisside,calc_fnc,type,periods_cnt)".
- " values ($graphid,$itemid,".zbx_dbstr($color).",$drawtype,$sortorder,$yaxisside,$calc_fnc,$type,$periods_cnt)");
-
- $gitemid = DBinsert_id($result,"graphs_items","gitemid");
+ " (gitemid,graphid,itemid,color,drawtype,sortorder,yaxisside,calc_fnc,type,periods_cnt)".
+ " values ($gitemid,$graphid,$itemid,".zbx_dbstr($color).",$drawtype,$sortorder,$yaxisside,$calc_fnc,$type,$periods_cnt)");
$item = get_item_by_itemid($itemid);
$graph = get_graph_by_graphid($graphid);
diff --git a/frontends/php/include/hosts.inc.php b/frontends/php/include/hosts.inc.php
index afb23fbd..de8de4e4 100644
--- a/frontends/php/include/hosts.inc.php
+++ b/frontends/php/include/hosts.inc.php
@@ -27,7 +27,11 @@
error("incorrect parameters for 'add_host_to_group'");
return FALSE;
}
- return DBexecute("insert into hosts_groups (hostid,groupid) values ($hostid,$groupid)");
+ $hostgroupid=get_dbid("hosts_groups","hostgroupid");
+ $result=DBexecute("insert into hosts_groups (hostgroupid,hostid,groupid) values ($hostgroupid,$hostid,$groupid)");
+ if(!$result)
+ return $result;
+ return $hostgroupid;
}
function db_save_group($name,$groupid=NULL)
@@ -49,7 +53,13 @@
return FALSE;
}
if($groupid==NULL)
- return DBexecute("insert into groups (name) values (".zbx_dbstr($name).")");
+ {
+ $groupid=get_dbid("groups","groupid");
+ if(!DBexecute("insert into groups (name) values (".zbx_dbstr($name).")"))
+ return FALSE;
+ return $groupid;
+
+ }
else
return DBexecute("update groups set name=".zbx_dbstr($name)." where groupid=$groupid");
}
@@ -162,10 +172,12 @@
if($hostid==NULL)
{
+ $hostid = get_dbid("hosts","hostid");
$result = DBexecute("insert into hosts".
- " (host,port,status,useip,ip,disable_until,available,templateid)".
- " values (".zbx_dbstr($host).",$port,$status,$useip,".zbx_dbstr($ip).",0,"
+ " (hostid,host,port,status,useip,ip,disable_until,available,templateid)".
+ " values ($hostid,".zbx_dbstr($host).",$port,$status,$useip,".zbx_dbstr($ip).",0,"
.HOST_AVAILABLE_UNKNOWN.",$templateid)");
+ if($result) $result = $hostid;
}
else
{
@@ -597,8 +609,9 @@
if($applicationid==NULL)
{
- if($result = DBexecute("insert into applications (name,hostid,templateid)".
- " values (".zbx_dbstr($name).",$hostid,$templateid)"))
+ $applicationid_new = get_dbid("applications","applicationid");
+ if($result = DBexecute("insert into applications (applicationid,name,hostid,templateid)".
+ " values ($applicationid_new,".zbx_dbstr($name).",$hostid,$templateid)"))
info("Added new application ".$host["host"].":$name");
}
else
@@ -613,7 +626,7 @@
if($applicationid==NULL)
{
- $applicationid = DBinsert_id($result,"applications","applicationid");
+ $applicationid = $applicationid_new;
$db_childs = get_hosts_by_templateid($hostid);
while($db_child = DBfetch($db_childs))
diff --git a/frontends/php/include/items.inc.php b/frontends/php/include/items.inc.php
index a62e78c1..9acdeb93 100644
--- a/frontends/php/include/items.inc.php
+++ b/frontends/php/include/items.inc.php
@@ -168,12 +168,13 @@
}
// first add mother item
+ $itemid=get_dbid("items","itemid");
$result=DBexecute("insert into items".
- " (description,key_,hostid,delay,history,nextcheck,status,type,".
+ " (itemid,description,key_,hostid,delay,history,nextcheck,status,type,".
"snmp_community,snmp_oid,value_type,trapper_hosts,snmp_port,units,multiplier,".
"delta,snmpv3_securityname,snmpv3_securitylevel,snmpv3_authpassphrase,".
"snmpv3_privpassphrase,formula,trends,logtimefmt,valuemapid,templateid)".
- " values (".zbx_dbstr($description).",".zbx_dbstr($key).",$hostid,$delay,$history,0,
+ " values ($itemid,".zbx_dbstr($description).",".zbx_dbstr($key).",$hostid,$delay,$history,0,
$status,$type,".zbx_dbstr($snmp_community).",".zbx_dbstr($snmp_oid).",$value_type,".
zbx_dbstr($trapper_hosts).",$snmp_port,".zbx_dbstr($units).",$multiplier,$delta,".
zbx_dbstr($snmpv3_securityname).",$snmpv3_securitylevel,".
@@ -184,11 +185,10 @@
if(!$result)
return $result;
- $itemid = DBinsert_id($result,"items","itemid");
-
foreach($applications as $appid)
{
- DBexecute("insert into items_applications (itemid,applicationid) values(".$itemid.",".$appid.")");
+ $itemappid=get_dbid("items_applications","itemappid");
+ DBexecute("insert into items_applications (itemappid,itemid,applicationid) values($itemappid,".$itemid.",".$appid.")");
}
info("Added new item ".$host["host"].":$key");
@@ -321,7 +321,10 @@
$result = DBexecute("delete from items_applications where itemid=$itemid");
foreach($applications as $appid)
- DBexecute("insert into items_applications (itemid,applicationid) values(".$itemid.",".$appid.")");
+ {
+ $itemappid=get_dbid("items_applications","itemappid");
+ DBexecute("insert into items_applications (itemappid,itemid,applicationid) values($itemappid,".$itemid.",".$appid.")");
+ }
$result=DBexecute(
"update items set description=".zbx_dbstr($description).",key_=".zbx_dbstr($key).",".
diff --git a/frontends/php/include/maps.inc.php b/frontends/php/include/maps.inc.php
index 361824a4..42ffdd24 100644
--- a/frontends/php/include/maps.inc.php
+++ b/frontends/php/include/maps.inc.php
@@ -92,20 +92,34 @@
return 0;
}
- return DBexecute("insert into sysmaps (name,width,height,background,label_type,label_location)".
- " values (".zbx_dbstr($name).",$width,$height,".zbx_dbstr($background).",$label_type,
+ $sysmapid=get_dbid("sysmaps","sysmapid");
+
+ $result=DBexecute("insert into sysmaps (sysmapid,name,width,height,background,label_type,label_location)".
+ " values ($sysmapid,".zbx_dbstr($name).",$width,$height,".zbx_dbstr($background).",$label_type,
$label_location)");
+
+ if(!$result)
+ return $result;
+
+ return $sysmapid;
}
function add_link($sysmapid,$selementid1,$selementid2,$triggerid,$drawtype_off,$color_off,$drawtype_on,$color_on)
{
if($triggerid == 0) $triggerid = 'NULL';
- return DBexecute("insert into sysmaps_links".
- " (sysmapid,selementid1,selementid2,triggerid,drawtype_off,".
+ $linkid=get_dbid("sysmaps_links","linkid");
+
+ $result=DBexecute("insert into sysmaps_links".
+ " (linkid,sysmapid,selementid1,selementid2,triggerid,drawtype_off,".
"color_off,drawtype_on,color_on)".
- " values ($sysmapid,$selementid1,$selementid2,$triggerid,$drawtype_off,".
+ " values ($linkid,$sysmapid,$selementid1,$selementid2,$triggerid,$drawtype_off,".
zbx_dbstr($color_off).",$drawtype_on,".zbx_dbstr($color_on).")");
+
+ if(!$result)
+ return $result;
+
+ return $linkid;
}
function update_link($linkid,$sysmapid,$selementid1,$selementid2,$triggerid,$drawtype_off,$color_off,$drawtype_on,$color_on)
@@ -153,11 +167,18 @@
return FALSE;
}
- return DBexecute("insert into sysmaps_elements".
+ $selementid = get_dbid("sysmaps_elements","selementid");
+
+ $result=DBexecute("insert into sysmaps_elements".
" (sysmapid,elementid,elementtype,label,x,y,icon,url,icon_on,label_location)".
" values ($sysmapid,$elementid,$elementtype,".zbx_dbstr($label).",
$x,$y,".zbx_dbstr($icon).",".zbx_dbstr($url).",".zbx_dbstr($icon_on).",".
"$label_location)");
+
+ if(!$result)
+ return $result;
+
+ return $selementid;
}
# Update Element from system map
diff --git a/frontends/php/include/perm.inc.php b/frontends/php/include/perm.inc.php
index 38106733..0d09f82a 100644
--- a/frontends/php/include/perm.inc.php
+++ b/frontends/php/include/perm.inc.php
@@ -32,6 +32,7 @@ define("GROUP_RIGHT", 0);
global $USER_RIGHTS;
global $_COOKIE;
global $_REQUEST;
+ global $ZBX_CURNODEID;
$USER_DETAILS = NULL;
$USER_RIGHTS = array();
@@ -41,7 +42,8 @@ define("GROUP_RIGHT", 0);
$sessionid = $_COOKIE["sessionid"];
$USER_DETAILS = DBfetch(DBselect("select u.*,s.* from sessions s,users u".
" where s.sessionid=".zbx_dbstr($sessionid)." and s.userid=u.userid".
- " and ((s.lastaccess+u.autologout>".time().") or (u.autologout=0))"));
+ " and ((s.lastaccess+u.autologout>".time().") or (u.autologout=0))".
+ " and mod(u.userid,100) = ".$ZBX_CURNODEID));
if(!$USER_DETAILS)
{
@@ -57,7 +59,7 @@ define("GROUP_RIGHT", 0);
exit;
}
} else {
- $USER_DETAILS = DBfetch(DBselect("select u.* from users u where u.alias='guest'"));
+ $USER_DETAILS = DBfetch(DBselect("select u.* from users u where u.alias='guest' and mod(u.userid,100)=$ZBX_CURNODEID"));
}
if($USER_DETAILS)
diff --git a/frontends/php/include/screens.inc.php b/frontends/php/include/screens.inc.php
index fd6a9b30..d3f62644 100644
--- a/frontends/php/include/screens.inc.php
+++ b/frontends/php/include/screens.inc.php
@@ -27,8 +27,14 @@
return 0;
}
- $sql="insert into screens (name,hsize,vsize) values (".zbx_dbstr($name).",$hsize,$vsize)";
- return DBexecute($sql);
+ $screenid=get_dbid("screens","screenid");
+ $sql="insert into screens (screenid,name,hsize,vsize) values ($screenid,".zbx_dbstr($name).",$hsize,$vsize)";
+ $result=DBexecute($sql);
+
+ if(!$result)
+ return $result;
+
+ return $screenid;
}
function update_screen($screenid,$name,$hsize,$vsize)
@@ -61,10 +67,16 @@
{
$sql="delete from screens_items where screenid=$screenid and x=$x and y=$y";
DBexecute($sql);
+ $screenitemid=get_dbid("screens_items","screenitemid");
$sql="insert into screens_items (resourcetype,screenid,x,y,resourceid,width,height,colspan,rowspan,elements,valign,halign,style,url)".
" values ($resourcetype,$screenid,$x,$y,$resourceid,$width,$height,$colspan,$rowspan,$elements,$valign,$halign,$style,".
zbx_dbstr($url).")";
- return DBexecute($sql);
+ $result=DBexecute($sql);
+
+ if(!$result)
+ return $result;
+
+ return $screenitemid;
}
function update_screen_item($screenitemid,$resourcetype,$resourceid,$width,$height,$colspan,$rowspan,$elements,$valign,$halign,$style,$url)
diff --git a/frontends/php/include/services.inc.php b/frontends/php/include/services.inc.php
index 80dbe883..96f35f2f 100644
--- a/frontends/php/include/services.inc.php
+++ b/frontends/php/include/services.inc.php
@@ -23,14 +23,16 @@
{
if(is_null($triggerid)) $triggerid = 'NULL';
- $sql="insert into services (name,status,triggerid,algorithm,showsla,goodsla,sortorder)".
- " values (".zbx_dbstr($name).",0,$triggerid,".zbx_dbstr($algorithm).",$showsla,".zbx_dbstr($goodsla).",$sortorder)";
+ $serviceid=get_dbid("services","serviceid");
+
+ $sql="insert into services (serviceid,name,status,triggerid,algorithm,showsla,goodsla,sortorder)".
+ " values ($serviceid,".zbx_dbstr($name).",0,$triggerid,".zbx_dbstr($algorithm).",$showsla,".zbx_dbstr($goodsla).",$sortorder)";
$result=DBexecute($sql);
if(!$result)
{
return FALSE;
}
- return DBinsert_id($result,"services","serviceid");
+ return $serviceid;
}
function update_service($serviceid,$name,$triggerid,$algorithm,$showsla,$goodsla,$sortorder)
@@ -156,8 +158,15 @@
return false;
}
- $sql="insert into services_links (servicedownid,serviceupid,soft) values ($servicedownid,$serviceupid,$softlink)";
- return dbexecute($sql);
+ $linkid=get_dbid("services_links","linkid");
+
+ $sql="insert into services_links (linkid,servicedownid,serviceupid,soft) values ($linkid,$servicedownid,$serviceupid,$softlink)";
+ $result=DBexecute($sql);
+
+ if(!$result)
+ return $result;
+
+ return $linkid;
}
function update_service_link($linkid,$servicedownid,$serviceupid,$softlink)
{
diff --git a/frontends/php/include/triggers.inc.php b/frontends/php/include/triggers.inc.php
index 1fc8154b..7526b851 100644
--- a/frontends/php/include/triggers.inc.php
+++ b/frontends/php/include/triggers.inc.php
@@ -295,16 +295,17 @@
// }
if(!is_null($expression)) if(validate_expression($expression)) return FALSE;
+ $triggerid=get_dbid("triggers","triggerid");
+
$result=DBexecute("insert into triggers".
- " (description,priority,status,comments,url,value,error,templateid)".
- " values (".zbx_dbstr($description).",$priority,$status,".zbx_dbstr($comments).",".
+ " (triggerid,description,priority,status,comments,url,value,error,templateid)".
+ " values ($triggerid,".zbx_dbstr($description).",$priority,$status,".zbx_dbstr($comments).",".
"".zbx_dbstr($url).",2,'Trigger just added. No status update so far.',$templateid)");
if(!$result)
{
return $result;
}
- $triggerid = DBinsert_id($result,"triggers","triggerid");
add_alarm($triggerid,TRIGGER_VALUE_UNKNOWN);
$expression = implode_exp($expression,$triggerid);
@@ -377,9 +378,11 @@
$copy_mode ? 0 : $triggerid);
}
+ $newtriggerid=dn_getid("triggers","triggerid");
+
$result = DBexecute("insert into triggers".
- " (description,priority,status,comments,url,value,expression,templateid)".
- " values (".zbx_dbstr($trigger["description"]).",".$trigger["priority"].",".
+ " (triggerid,description,priority,status,comments,url,value,expression,templateid)".
+ " values ($newtriggerid,".zbx_dbstr($trigger["description"]).",".$trigger["priority"].",".
$trigger["status"].",".zbx_dbstr($trigger["comments"]).",".
zbx_dbstr($trigger["url"]).",2,'{???:???}',".
($copy_mode ? 0 : $triggerid).")");
@@ -387,8 +390,6 @@
if(!$result)
return $result;
- $newtriggerid = DBinsert_id($result,"triggers","triggerid");
-
$host = get_host_by_hostid($hostid);
$newexpression = $trigger["expression"];
@@ -408,10 +409,11 @@
return FALSE;
}
- $result = DBexecute("insert into functions (itemid,triggerid,function,parameter)".
- " values (".$host_item["itemid"].",$newtriggerid,".
+ $newfunctionid=get_dbid("functions","functionid");
+
+ $result = DBexecute("insert into functions (functionid,itemid,triggerid,function,parameter)".
+ " values ($newfunctionid,".$host_item["itemid"].",$newtriggerid,".
zbx_dbstr($function["function"]).",".zbx_dbstr($function["parameter"]).")");
- $newfunctionid = DBinsert_id($result,"functions","functionid");
$newexpression = str_replace(
"{".$function["functionid"]."}",
diff --git a/frontends/php/include/users.inc.php b/frontends/php/include/users.inc.php
index 19ea4281..0bdb19a6 100644
--- a/frontends/php/include/users.inc.php
+++ b/frontends/php/include/users.inc.php
@@ -43,8 +43,10 @@
}
$passwd=md5($passwd);
- $sql="insert into users (name,surname,alias,passwd,url,autologout,lang,refresh) values (".zbx_dbstr($name).",".zbx_dbstr($surname).",".zbx_dbstr($alias).",".zbx_dbstr($passwd).",".zbx_dbstr($url).",$autologout,".zbx_dbstr($lang).",$refresh)";
- return DBexecute($sql);
+ $userid = get_dbid("users","userid");
+ $sql="insert into users (userid,name,surname,alias,passwd,url,autologout,lang,refresh) values ($userid,".zbx_dbstr($name).",".zbx_dbstr($surname).",".zbx_dbstr($alias).",".zbx_dbstr($passwd).",".zbx_dbstr($url).",$autologout,".zbx_dbstr($lang).",$refresh)";
+ DBexecute($sql);
+ return $userid;
}
# Update User definition
@@ -160,15 +162,15 @@
return 0;
}
- $sql="insert into usrgrp (name) values (".zbx_dbstr($name).")";
+ $usrgrpid=get_dbid("usrgrp","usrgrpid");
+
+ $sql="insert into usrgrp (usrgrpid,name) values ($usrgrpid,".zbx_dbstr($name).")";
$result=DBexecute($sql);
if(!$result)
{
return $result;
}
- $usrgrpid=DBinsert_id($result,"usrgrp","usrgrpid");
-
update_user_groups($usrgrpid,$users);
return $result;