X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=Notify.php;h=15bbc7a28980e0d5c8d64f43183c38b9b8e42350;hb=7e9cdd246cc8bba1ce46a4db263a0f49b7cbc5a0;hp=4e592f9f3f97d23c23217161956cd01b8d992cd1;hpb=bc6c05086356b9e2a4762e8ddaaf420c5d27bf6f;p=Pman.Core diff --git a/Notify.php b/Notify.php index 4e592f9f..15bbc7a2 100644 --- a/Notify.php +++ b/Notify.php @@ -16,7 +16,13 @@ require_once 'Pman.php'; class Pman_Core_Notify extends Pman { - static $cli_desc = "Send out notification emails (usually from cron)"; + static $cli_desc = "Runs the notification queue (usually from cron) + Normally used to sends out emails to anyone in the notification list. + + /etc/cron.d/pman-core-notify + * * * * * www-data /usr/bin/php /home/gitlive/web.mtrack/admin.php Core/Notify > /dev/null + +"; static $cli_opts = array( 'debug' => array( @@ -50,6 +56,13 @@ class Pman_Core_Notify extends Pman 'min' => 0, 'max' => 0, ), + 'generate' => array( + 'desc' => 'Generate notifications for a table, eg. cash_invoice', + 'default' => '', + 'short' => 'g', + 'min' => 0, + 'max' => 1, + ), ); @@ -58,7 +71,7 @@ class Pman_Core_Notify extends Pman var $target = 'Core/NotifySend'; var $evtype = ''; // any notification... // this script should only handle EMAIL notifications.. - + var $force = false; function getAuth() { $ff = HTML_FlexyFramework::get(); @@ -96,14 +109,25 @@ class Pman_Core_Notify extends Pman if (is_a($w, 'DB_DataObject')) { $w->generateNotifications(); } - + if (!empty($opts['generate'])) { + $w = DB_DataObject::factory($opts['generate']); + if (is_a($w, 'DB_DataObject')) { + $w->generateNotifications(); + } + exit; + + + } //DB_DataObject::debugLevel(1); $w = DB_DataObject::factory($this->table); if (!$showold) { - $w->whereAdd('act_when > sent'); // eg.. sent is not valid.. + // standard + + $w->whereAdd('act_when > sent'); // eg.. sent is not valid.. + $w->whereAdd('act_start > NOW() - INTERVAL 14 DAY'); // ignore the ones stuck in the queue if (!$this->force) { $w->whereAdd('act_when < NOW()'); // eg.. not if future.. } @@ -307,14 +331,6 @@ class Pman_Core_Notify extends Pman } - function setCompany() { - $co = DB_DataObject::Factory('Companies'); - if(!$co->get('code', 'MediaWatchMe')) $this->errors[] = 'Invalid Supplier Code: MediaWatchMe'; - - $this->company = $co->id; - return true; - } - function output() { die("Done\n");