File "ActionScheduler_Abstract_RecurringSchedule.php"
Full path: /home/kosmetik/public_html/wp-content/plugins/woocommerce/packages/action-scheduler/classes/abstracts/ActionScheduler_Abstract_RecurringSchedule.php
File
size: 1.16 B
MIME-type: text/x-php
Charset: utf-8
Download Open Edit Advanced Editor Back
<?php
abstract class ActionScheduler_Abstract_RecurringSchedule extends ActionScheduler_Abstract_Schedule
{
private $first_date = NULL;
protected $first_timestamp = NULL;
protected $recurrence;
public function __construct(DateTime $date, $recurrence, DateTime $first = null)
{
parent::__construct($date);
$this->first_date = empty($first) ? $date : $first;
$this->recurrence = $recurrence;
}
public function is_recurring()
{
return true;
}
public function get_first_date()
{
return clone $this->first_date;
}
public function get_recurrence()
{
return $this->recurrence;
}
public function __sleep()
{
$sleep_params = parent::__sleep();
$this->first_timestamp = $this->first_date->getTimestamp();
return array_merge($sleep_params, array('first_timestamp', 'recurrence'));
}
public function __wakeup()
{
parent::__wakeup();
if ($this->first_timestamp > 0) {
$this->first_date = as_get_datetime_object($this->first_timestamp);
} else {
$this->first_date = $this->get_date();
}
}
}