private function createAlert($name, $period, $idSites, $metric, $report, $login = false)
 {
     if (false === $login) {
         $login = Piwik::getCurrentUserLogin();
     }
     $emails = array('*****@*****.**', '*****@*****.**');
     $phoneNumbers = array('0123456789');
     $reportMatched = '';
     if ('VisitsSummary_get' != $report) {
         $reportMatched = 'Piwik';
     }
     $model = new Model();
     $model->createAlert($name, $idSites, $login, $period, 0, $emails, $phoneNumbers, $metric, 'less_than', 5, $comparedTo = 1, $report, 'matches_exactly', $reportMatched);
 }
 public function test_uninstall_ShouldNotFailAndRemovesAllAlertTables()
 {
     Model::uninstall();
     $this->assertNotContainTables(array('alert', 'alert_site', 'alert_triggered'));
     Model::install();
 }
 public function getSiteIdsHavingAlerts()
 {
     $siteIds = SitesManagerApi::getInstance()->getAllSitesId();
     $model = new Model();
     $alerts = $model->getAlerts($siteIds);
     $siteIdsHavingAlerts = array();
     foreach ($alerts as $alert) {
         $siteIdsHavingAlerts = array_merge($siteIdsHavingAlerts, $alert['id_sites']);
     }
     return array_values(array_unique($siteIdsHavingAlerts));
 }
예제 #4
0
 protected function markAlertAsSent($triggeredAlert)
 {
     $timestamp = Date::now()->getDatetime();
     $model = new Model();
     $model->markTriggeredAlertAsSent($triggeredAlert['idtriggered'], $timestamp);
 }