function cmp_triggers($triggerid1, $triggerid2) { // compare EXPRESSION !!! $trig1 = get_trigger_by_triggerid($triggerid1); $trig2 = get_trigger_by_triggerid($triggerid2); $trig_fnc1 = get_functions_by_triggerid($triggerid1); $expr1 = $trig1["expression"]; while ($fnc1 = DBfetch($trig_fnc1)) { $trig_fnc2 = get_functions_by_triggerid($triggerid2); while ($fnc2 = DBfetch($trig_fnc2)) { if (strcmp($fnc1["function"], $fnc2["function"])) { continue; } if ($fnc1["parameter"] != $fnc2["parameter"]) { continue; } $item1 = get_item_by_itemid($fnc1["itemid"]); $item2 = get_item_by_itemid($fnc2["itemid"]); if (strcmp($item1["key_"], $item2["key_"])) { continue; } $expr1 = str_replace("{" . $fnc1["functionid"] . "}", "{" . $fnc2["functionid"] . "}", $expr1); break; } } return strcmp($expr1, $trig2["expression"]); }
function cmp_triggers($triggerid1, $triggerid2) { // compare EXPRESSION !!! $trig1 = get_trigger_by_triggerid($triggerid1); $trig2 = get_trigger_by_triggerid($triggerid2); $trig_fnc1 = get_functions_by_triggerid($triggerid1); $expr1 = $trig1['expression']; while ($fnc1 = DBfetch($trig_fnc1)) { $trig_fnc2 = get_functions_by_triggerid($triggerid2); while ($fnc2 = DBfetch($trig_fnc2)) { if (strcmp($fnc1['function'], $fnc2['function'])) { continue; } if ($fnc1['parameter'] != $fnc2['parameter']) { continue; } $item1 = get_item_by_itemid($fnc1['itemid']); $item2 = get_item_by_itemid($fnc2['itemid']); if (strcmp($item1['key_'], $item2['key_'])) { continue; } $expr1 = str_replace('{' . $fnc1['functionid'] . '}', '{' . $fnc2['functionid'] . '}', $expr1); break; } } return strcmp($expr1, $trig2['expression']); }