Example #1
0
function add_trigger_dependency($triggerid, $depid)
{
    $result = false;
    if (check_dependency_by_triggerid($triggerid, $depid)) {
        $result = insert_dependency($triggerid, $depid);
    }
    //add_additional_dependencies($triggerid,$depid);
    return $result;
}
Example #2
0
 /**
  * Add dependency for trigger
  *
  * {@source}
  * @access public
  * @static
  * @since 1.8
  * @version 1
  *
  * @param _array $triggers_data
  * @param array $triggers_data['triggerid]
  * @param array $triggers_data['depends_on_triggerid']
  * @return boolean
  */
 public static function addDependency($triggers_data)
 {
     $result = insert_dependency($triggers_data['triggerid'], $triggers_data['depends_on_triggerid']);
     if ($result) {
         return $groupids;
     } else {
         self::$error[] = array('error' => ZBX_API_ERROR_INTERNAL, 'data' => 'Internal zabbix error');
         return false;
     }
 }
 /**
  * Add dependency for trigger
  *
  * @param _array $triggersData
  * @param array $triggers_data['triggerid]
  * @param array $triggers_data['dependsOnTriggerid']
  * @return boolean
  */
 public static function addDependencies($triggersData)
 {
     $triggersData = zbx_toArray($triggersData);
     $triggerids = array();
     try {
         self::BeginTransaction(__METHOD__);
         foreach ($triggersData as $num => $dep) {
             $triggerids[$dep['triggerid']] = $dep['triggerid'];
             $result = (bool) insert_dependency($dep['triggerid'], $dep['dependsOnTriggerid']);
             if (!$result) {
                 self::exception(ZBX_API_ERROR_PARAMETERS, 'Cannot create dependency');
             }
         }
         self::EndTransaction(true, __METHOD__);
         return array('triggerids' => $triggerids);
     } catch (APIException $e) {
         self::EndTransaction(false, __METHOD__);
         $error = $e->getErrors();
         $error = reset($error);
         self::setError(__METHOD__, $e->getCode(), $error);
         return false;
     }
 }
Example #4
0
function replace_triggers_depenedencies($new_triggerids)
{
    $old_triggerids = array_keys($new_triggerids);
    $deps = array();
    $res = DBselect('SELECT * FROM trigger_depends WHERE ' . DBcondition('triggerid_up', $old_triggerids));
    while ($db_dep = DBfetch($res)) {
        $deps[$db_dep['triggerid_up']] = $db_dep['triggerid_down'];
    }
    delete_dependencies_by_triggerid($deps);
    foreach ($new_triggerids as $old_triggerid => $newtriggerid) {
        if (isset($deps[$old_triggerid])) {
            insert_dependency($deps[$old_triggerid], $newtriggerid);
        }
    }
}