require_once dirname(__FILE__).'/../include/CLegacyWebTest.php';
require_once dirname(__FILE__).'/behaviors/CMessageBehavior.php';
class testPageActions extends CLegacyWebTest {
private $sqlHashAction = '';
private $oldHashAction = '';
private $sqlHashConditions = '';
private $oldHashConditions = '';
private $sqlHashOperations = '';
private $oldHashOperations = '';
private $sqlHashOpMessage = '';
private $oldHashOpMessage = '';
private $sqlHashOpMessageGrp = '';
private $oldHashOpMessageGrp = '';
private $sqlHashOpMessageUsr = '';
private $oldHashOpMessageUsr = '';
private $sqlHashOpCommand = '';
private $oldHashOpCommand = '';
private $sqlHashOpCommandHst = '';
private $oldHashOpCommandHst = '';
private $sqlHashOpCommandGrp = '';
private $oldHashOpCommandGrp = '';
private $sqlHashOpGroup = '';
private $oldHashOpGroup = '';
private $sqlHashOpTemplate = '';
private $oldHashOpTemplate = '';
private $sqlHashOpConditions = '';
private $oldHashOpConditions = '';
private $event_sources = [
EVENT_SOURCE_TRIGGERS => 'Trigger actions',
EVENT_SOURCE_DISCOVERY => 'Discovery actions',
EVENT_SOURCE_AUTOREGISTRATION => 'Autoregistration actions',
EVENT_SOURCE_INTERNAL => 'Internal actions'
public function getBehaviors() {
return [CMessageBehavior::class];
private function calculateHash($actionid) {
$this->sqlHashAction = 'SELECT actionid,name,eventsource,evaltype,status,formula,pause_suppressed FROM actions '
. 'WHERE actionid='.$actionid;
$this->oldHashAction = CDBHelper::getHash($this->sqlHashAction);
$this->sqlHashConditions = 'SELECT * FROM conditions WHERE actionid='.$actionid.' AND actionid>2 ORDER BY conditionid';
$this->oldHashConditions = CDBHelper::getHash($this->sqlHashConditions);
$this->sqlHashOperations = 'SELECT * FROM operations WHERE actionid='.$actionid.' ORDER BY operationid';
$this->oldHashOperations = CDBHelper::getHash($this->sqlHashOperations);
$this->sqlHashOpMessage =
'SELECT om.* FROM opmessage om,operations o'.
' WHERE om.operationid=o.operationid'.
' AND o.actionid='.$actionid.
' ORDER BY om.operationid';
$this->oldHashOpMessage = CDBHelper::getHash($this->sqlHashOpMessage);
$this->sqlHashOpMessageGrp =
'SELECT omg.* FROM opmessage_grp omg,operations o'.
' WHERE omg.operationid=o.operationid'.
' AND o.actionid='.$actionid.
' ORDER BY omg.opmessage_grpid';
$this->oldHashOpMessageGrp = CDBHelper::getHash($this->sqlHashOpMessageGrp);
$this->sqlHashOpMessageUsr =
'SELECT omu.* FROM opmessage_usr omu,operations o'.
' WHERE omu.operationid=o.operationid'.
' AND o.actionid='.$actionid.