%PDF- %PDF- 403WebShell
403Webshell
Server IP : 37.220.80.31  /  Your IP : 18.226.98.181
Web Server : Apache/2.4.52 (Ubuntu)
System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64
User : www-root ( 1010)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/sender/lib/trigger/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/sender/lib/trigger/settings.php
<?php
/**
 * Bitrix Framework
 * @package bitrix
 * @subpackage sender
 * @copyright 2001-2012 Bitrix
 */

namespace Bitrix\Sender\Trigger;


class Settings
{
	protected $endpoint = array('MODULE_ID' => '', 'CODE' => '');
	protected $fields = array();
	protected $eventOccur = true;
	protected $preventEmail = false;
	protected $intervalValue = 0;
	protected $intervalType = 'M';
	protected $typeStart = true;
	protected $isClosedTrigger = false;
	protected $runForOldData = false;
	protected $wasRunForOldData = false;
	protected $closedTriggerTime = '';
	protected $closedTriggerInterval = 0;
	protected $eventModuleId = '';
	protected $eventType = '';

	/*
		array(
			'MODULE_ID' => '',
			'CODE' => 'order_cancel',
			'FIELDS' => array(
				'BASKET_PRODUCT_ID' => 99
			),
			'IS_TYPE_START' => true,
			'IS_PREVENT_EMAIL' => true,
			'IS_EVENT_OCCUR' => true,
			'SEND_INTERVAL_UNIT' => 'M',
			'SEND_INTERVAL' => 0,
			'IS_CLOSED_TRIGGER' => false,
			'CLOSED_TRIGGER_INTERVAL' => 0,
			'CLOSED_TRIGGER_TIME' => '',
			'RUN_FOR_OLD_DATA' => '',
			'WAS_RUN_FOR_OLD_DATA' => '',
		)
	 */

	public function __construct(array $settings = null)
	{
		if(empty($settings))
			return;

		$this->setEndpoint($settings['CODE'], $settings['MODULE_ID']);
		$this->setFields($settings['FIELDS']);

		$this->setTypeStart($settings['IS_TYPE_START']);
		$this->setPreventEmail($settings['IS_PREVENT_EMAIL']);
		$this->setEventOccur($settings['IS_EVENT_OCCUR']);
		$this->setInterval($settings['SEND_INTERVAL'], $settings['SEND_INTERVAL_UNIT']);

		$this->setClosedTrigger($settings['IS_CLOSED_TRIGGER']);
		$this->setClosedTriggerInterval($settings['CLOSED_TRIGGER_INTERVAL']);
		$this->setClosedTriggerTime($settings['CLOSED_TRIGGER_TIME']);

		$this->setEventModuleId($settings['EVENT_MODULE_ID']);
		$this->setEventType($settings['EVENT_TYPE']);

		$this->setRunForOldData($settings['RUN_FOR_OLD_DATA']);
		$this->setWasRunForOldData($settings['WAS_RUN_FOR_OLD_DATA']);
	}

	public static function getArrayFromTrigger(Base $trigger)
	{
		return array(
			'MODULE_ID' => $trigger->getModuleId(),
			'CODE' => $trigger->getCode(),
			'NAME' => $trigger->getName(),
			'IS_CLOSED_TRIGGER' => ($trigger->isClosed() ? 'Y' : 'N'),
			'CAN_RUN_FOR_OLD_DATA' => ($trigger->canRunForOldData() ? 'Y' : 'N'),
			'CLOSED_TRIGGER_INTERVAL' => '1440',
			'CLOSED_TRIGGER_TIME' => '00:00',
			'EVENT_MODULE_ID' => $trigger->getEventModuleId(),
			'EVENT_TYPE' => $trigger->getEventType(),
		);
	}

	public function getArray()
	{
		return array(
			'MODULE_ID' => $this->getEndpoint('MODULE_ID'),
			'CODE' => $this->getEndpoint('CODE'),
			'FIELDS' => $this->getFields(),
			'IS_TYPE_START' => $this->isTypeStart(),
			'IS_PREVENT_EMAIL' => $this->isPreventEmail(),
			'IS_EVENT_OCCUR' => $this->isEventOccur(),
			'SEND_INTERVAL_UNIT' => $this->getIntervalType(),
			'SEND_INTERVAL' => $this->getIntervalValue(),
			'IS_CLOSED_TRIGGER' => $this->isClosedTrigger(),
			'CLOSED_TRIGGER_INTERVAL' => $this->getClosedTriggerInterval(),
			'CLOSED_TRIGGER_TIME' => $this->getClosedTriggerTime(),
			'RUN_FOR_OLD_DATA' => $this->canRunForOldData(),
			'WAS_RUN_FOR_OLD_DATA' => $this->wasRunForOldData(),
			'EVENT_MODULE_ID' => $this->getEventModuleId(),
			'EVENT_TYPE' => $this->getEventType(),
		);
	}

	/**
	 * @return string
	 */
	public function getTriggerId()
	{
		$endpoint = $this->getEndpoint();
		if(!empty($endpoint['CODE']))
			$triggerId = $endpoint['MODULE_ID'] . '_' . $endpoint['CODE'];
		else
			$triggerId = '';

		return $triggerId;
	}

	/**
	 * @param mixed $key
	 * @return mixed
	 */
	public function getEndpoint($key = null)
	{
		if($key)
		{
			return (isset($this->endpoint[$key]) ? $this->endpoint[$key] : '');
		}
		else
			return $this->endpoint;
	}

	/**
	 * @param string $code
	 * @param string $moduleId
	 */
	public function setEndpoint($code, $moduleId)
	{
		if(!empty($code))
		{
			$this->endpoint['CODE'] = $code;
			if(!empty($moduleId))
				$this->endpoint['MODULE_ID'] = $moduleId;
		}
	}

	/**
	 * @return array
	 */
	public function getFields()
	{
		return $this->fields;
	}

	/**
	 * @param array $fields
	 */
	public function setFields($fields)
	{
		$this->fields = $fields;
	}

	/**
	 * @param bool $state
	 * @return void
	 */
	public function setTypeStart($state)
	{
		if(is_string($state))
		{
			$state = ($state == 'Y' ? true : false);
		}

		$this->typeStart = (bool) $state;
	}

	/**
	 * @return bool
	 */
	public function isTypeStart()
	{
		return $this->typeStart;
	}

	/**
	 * @param bool $state
	 * @return void
	 */
	public function setEventOccur($state)
	{
		if(is_string($state))
		{
			$state = ($state == 'Y' ? true : false);
		}

		$this->eventOccur = (bool) $state;
	}

	/**
	 * @return bool
	 */
	public function isEventOccur()
	{
		return $this->eventOccur;
	}

	/**
	 * @return bool
	 */
	public function isPreventEmail()
	{
		return $this->preventEmail;
	}

	/**
	 * @param boolean $state
	 * @return void
	 */
	public function setPreventEmail($state)
	{
		if(is_string($state))
		{
			$state = ($state == 'Y' ? true : false);
		}


		$this->preventEmail = (bool) $state;
	}

	/**
	 * @return bool
	 */
	public function isClosedTrigger()
	{
		return $this->isClosedTrigger;
	}

	/**
	 * @param boolean $state
	 * @return void
	 */
	public function setClosedTrigger($state)
	{
		if(is_string($state))
		{
			$state = ($state == 'Y' ? true : false);
		}

		$this->isClosedTrigger = (bool) $state;
	}

	/**
	 * @return bool
	 */
	public function getClosedTriggerTime()
	{
		if($this->isClosedTrigger())
		{
			return $this->closedTriggerTime;
		}
		else
		{
			return '';
		}
	}

	/**
	 * @param string $time
	 */
	public function setClosedTriggerTime($time)
	{
		$this->closedTriggerTime = (string) $time;
	}

	/**
	 * @return bool
	 */
	public function getClosedTriggerInterval()
	{
		if($this->isClosedTrigger())
			return (int) $this->closedTriggerInterval;
		else
			return 0;
	}

	/**
	 * @param int $interval Interval.
	 */
	public function setClosedTriggerInterval($interval)
	{
		$this->closedTriggerInterval = (int) $interval;
	}

	/**
	 * @param bool $state
	 * @return void
	 */
	public function setRunForOldData($state)
	{
		if(is_string($state))
		{
			$state = ($state == 'Y' ? true : false);
		}

		$this->runForOldData = (bool) $state;
	}

	/**
	 * @return bool
	 */
	public function canRunForOldData()
	{
		return $this->runForOldData;
	}

	/**
	 * @param bool $state
	 * @return void
	 */
	public function setWasRunForOldData($state)
	{
		if(is_string($state))
		{
			$state = ($state == 'Y' ? true : false);
		}

		$this->wasRunForOldData = (bool) $state;
	}

	/**
	 * @return bool
	 */
	public function wasRunForOldData()
	{
		return $this->wasRunForOldData;
	}

	/**
	 * @param string $moduleId Module ID.
	 * @return void
	 */
	public function setEventModuleId($moduleId)
	{
		$this->eventModuleId = $moduleId;
	}

	/**
	 * @return string
	 */
	public function getEventModuleId()
	{
		return $this->eventModuleId;
	}

	/**
	 * @param string $eventType Event type.
	 * @return void
	 */
	public function setEventType($eventType)
	{
		$this->eventType = $eventType;
	}

	/**
	 * @return string
	 */
	public function getEventType()
	{
		return $this->eventType;
	}

	/**
	 * @return string
	 */
	public function getFullEventType()
	{
		if(!empty($this->eventModuleId) && !empty($this->eventType))
			return $this->eventModuleId . '_' . $this->eventType;
		else
			return '';
	}

	/**
	 * @param int $value
	 * @param string $type
	 */
	public function setInterval($value = 0, $type = 'H')
	{
		$this->setIntervalValue($value);
		$this->setIntervalType($type);
	}

	/**
	 * @return int
	 */
	public function getInterval()
	{
		$value = $this->getIntervalValue();
		if($value <= 0) return 0;

		$type = $this->getIntervalType();
		switch($type)
		{
			case 'H': // hours
				$koeff = 60;
				break;
			case 'D': // days
				$koeff = 60*24;
				break;
			case 'M': // minutes
			default:
				$koeff = 1;
		}

		return $value * $koeff;
	}

	/**
	 * @return mixed
	 */
	public function getIntervalValue()
	{
		return $this->intervalValue;
	}

	/**
	 * @return mixed
	 */
	public function getIntervalType()
	{
		return $this->intervalType;
	}

	/**
	 * @param int $intervalValue
	 */
	public function setIntervalValue($intervalValue)
	{
		$this->intervalValue = (int) $intervalValue;
	}

	/**
	 * @param string $intervalType
	 */
	public function setIntervalType($intervalType)
	{
		$this->intervalType = $intervalType;
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit