public function test_getSiteIdsHavingAlerts() { $siteIds = $this->plugin->getSiteIdsHavingAlerts(); $this->assertEquals(array(), $siteIds); $this->createAlert('Initial1', array(), array(1)); $siteIds = $this->plugin->getSiteIdsHavingAlerts(); $this->assertEquals(array(1), $siteIds); $this->createAlert('Initial2', array(), array(1, 3)); $siteIds = $this->plugin->getSiteIdsHavingAlerts(); $this->assertEquals(array(1, 3), $siteIds); $this->createAlert('Initial3', array(), array(2)); $siteIds = $this->plugin->getSiteIdsHavingAlerts(); $this->assertEquals(array(1, 3, 2), $siteIds); }
public function schedule() { $alerts = new CustomAlerts(); $siteIds = $alerts->getSiteIdsHavingAlerts(); foreach ($siteIds as $idSite) { $timezoneForSite = Site::getTimezoneFor($idSite); $scheduledTime = $this->daily('runAlertsDaily', $idSite); $scheduledTime->setTimezone($timezoneForSite); $scheduledTime = $this->weekly('runAlertsWeekly', $idSite); $scheduledTime->setTimezone($timezoneForSite); $scheduledTime = $this->monthly('runAlertsMonthly', $idSite); $scheduledTime->setTimezone($timezoneForSite); } }