".S_NO_PERMISSIONS.""); // show_page_footer(); // exit; // } ?> array(T_ZBX_INT, O_OPT, NULL, IN("0,1"), NULL), "actionid"=> array(T_ZBX_INT, O_OPT, P_SYS, DB_ID, NULL), "source"=> array(T_ZBX_INT, O_OPT, NULL, IN("0"), 'isset({save})'), "recipient"=> array(T_ZBX_INT, O_OPT, NULL, IN("0,1"), 'isset({save})'), "userid"=> array(T_ZBX_INT, O_OPT, NULL, DB_ID, 'isset({save})'), "delay"=> array(T_ZBX_INT, O_OPT, NULL, BETWEEN(0,65535),'isset({save})'), "subject"=> array(T_ZBX_STR, O_OPT, NULL, NOT_EMPTY, 'isset({save})'), "message"=> array(T_ZBX_STR, O_OPT, NULL, NOT_EMPTY, 'isset({save})'), "repeat"=> array(T_ZBX_INT, O_OPT, NULL, IN("0,1"), 'isset({save})'), "maxrepeats"=> array(T_ZBX_INT, O_OPT, NULL, BETWEEN(0,65535),'{repeat}==1&&isset({save})'), "repeatdelay"=> array(T_ZBX_INT, O_OPT, NULL, BETWEEN(0,65535),'{repeat}==1&&isset({save})'), "conditions"=> array(NULL, O_OPT, NULL, NULL, NULL), // "conditions[i][type]"=> array(T_ZBX_INT, O_OPT, NULL, NULL, NULL), // "conditions[i][operator]"=> array(T_ZBX_INT, O_OPT, NULL, NULL, NULL), // "conditions[i][value]"=> array(NULL, O_OPT, NULL, NULL, NULL), "rem_condition"=> array(NULL, O_OPT, NULL, NULL, NULL), // "rem_condition[i][type]"=> array(T_ZBX_INT, O_OPT, NULL, NULL, NULL); // "rem_condition[i][operator]"=> array(T_ZBX_INT, O_OPT, NULL, NULL, NULL); // "rem_condition[i][value]"=> array(NULL, O_OPT, NULL, NULL, NULL); "new_condition_type"=> array(T_ZBX_INT, O_OPT, NULL, NULL, 'isset({add_condition})'), "new_condition_operator"=> array(T_ZBX_INT, O_OPT, NULL, NULL, 'isset({add_condition})'), "new_condition_value"=> array(NULL, O_OPT, NULL, NULL, 'isset({add_condition})'), /* actions */ "add_condition"=> array(T_ZBX_STR, O_OPT, P_SYS|P_ACT, NULL, NULL), "del_condition"=> array(T_ZBX_STR, O_OPT, P_SYS|P_ACT, NULL, NULL), "save"=> array(T_ZBX_STR, O_OPT, P_SYS|P_ACT, NULL, NULL), "delete"=> array(T_ZBX_STR, O_OPT, P_SYS|P_ACT, NULL, NULL), "cancel"=> array(T_ZBX_STR, O_OPT, P_SYS, NULL, NULL), /* other */ "form"=> array(T_ZBX_STR, O_OPT, P_SYS, NULL, NULL), "form_refresh"=> array(T_ZBX_INT, O_OPT, NULL, NULL, NULL) ); check_fields($fields); ?> $_REQUEST["new_condition_type"], "operator"=> $_REQUEST["new_condition_operator"], "value"=> $_REQUEST["new_condition_value"]); $_REQUEST["conditions"] = get_request("conditions",array()); if(!in_array($new_condition,$_REQUEST["conditions"])) array_push($_REQUEST["conditions"],$new_condition); } elseif(isset($_REQUEST["del_condition"])&&isset($_REQUEST["rem_condition"])) { $_REQUEST["conditions"] = get_request("conditions",array()); foreach($_REQUEST["rem_condition"] as $val){ unset($_REQUEST["conditions"][$val]); } } ?> AddItem(0,S_SEND_MESSAGE); $cmbType->AddItem(1,S_REMOTE_COMMAND,NULL,'no'); $form->AddItem($cmbType); $form->AddItem(" | "); $form->AddItem(new CButton("form",S_CREATE_ACTION)); show_header2(S_ACTIONS, $form); /* table */ $tblActions = new CTableInfo(S_NO_ACTIONS_DEFINED); $tblActions->SetHeader(array(S_SOURCE,S_CONDITIONS,S_SEND_MESSAGE_TO, S_DELAY,S_SUBJECT,S_REPEATS)); if(isset($_REQUEST["actiontype"])&&($_REQUEST["actiontype"]==1)) { $sql="select * from actions where actiontype=1 order by actiontype, source"; } else { $sql="select * from actions where actiontype=0 order by actiontype, source"; } $result=DBselect($sql); while($row=DBfetch($result)) { $conditions=""; $result2=DBselect("select * from conditions where actionid=".$row["actionid"]. " order by conditiontype"); while($condition=DBfetch($result2)) { $conditions=$conditions.get_condition_desc($condition["conditiontype"], $condition["operator"],$condition["value"]).BR; } if($row["recipient"] == RECIPIENT_TYPE_USER) { $user=get_user_by_userid($row["userid"]); $recipient=$user["alias"]; } else { $groupd=get_usergroup_by_usrgrpid($row["userid"]); $recipient=$groupd["name"]; } $tblActions->AddRow(array( new CLink( get_source_description($row["source"]), "actionconf.php?form=update&actionid=".$row['actionid'],'action'), $conditions, $recipient, htmlspecialchars($row["delay"]), htmlspecialchars($row["subject"]), $row["maxrepeats"] == 0 ? S_NO_REPEATS : $row["maxrepeats"] )); } $tblActions->Show(); } show_page_footer(); ?>