diff --git a/private/crontab/core.hourly.php b/private/crontab/core.hourly.php
index 8c259c5..cb0c65e 100644
--- a/private/crontab/core.hourly.php
+++ b/private/crontab/core.hourly.php
@@ -2,7 +2,7 @@
0){
foreach ($tasks as $taskName){
diff --git a/private/lib/FDN_MailHelper.php b/private/lib/FDN_MailHelper.php
index 7bf777c..96bfcf0 100644
--- a/private/lib/FDN_MailHelper.php
+++ b/private/lib/FDN_MailHelper.php
@@ -81,6 +81,24 @@ class FDN_MailHelper {
return new MailModel($tmp);
}
+
+ public static function getNewCommentoMail(CommentoModel $commento, AdminModel $admin){
+ $config = GlobalVariables::get("config");
+
+ $tmp = new stdClass();
+ $tmp->from = $config->emails->postmaster;
+ $tmp->fromName = "I Fatti di Napoli - Automailer";
+ $tmp->recipient = $admin->email;
+ $tmp->subject = "I Fatti di Napoli - Nuovo commento";
+
+ $confirmLink = GUIHandler::getBaseUrl()."/admin/validateCommento.php?i=".$commento->id;
+
+ $tmp->body = "Un nuovo commento è stato inserito su I Fatti di Napoli ed è in attesa di essere accettato.
";
+ $tmp->body.= "Verifica i contenuti del commento utilizzando il link di seguito.
";
+ $tmp->body.=''.$confirmLink.'';
+
+ return new MailModel($tmp);
+ }
}
?>
\ No newline at end of file
diff --git a/private/lib/dao/models/CommentoModel.php b/private/lib/dao/models/CommentoModel.php
index a3c120a..b35fef1 100644
--- a/private/lib/dao/models/CommentoModel.php
+++ b/private/lib/dao/models/CommentoModel.php
@@ -32,6 +32,10 @@ class CommentoModel extends Model{
$this->status = self::STATUS_PENDING;
}
+ if (!$this->hasProperty("mailSent")){
+ $this->mailSent = false;
+ }
+
if (!$this->hasProperty("date")){
$this->date = new MongoDate();
}
diff --git a/private/lib/task/GenerateCommentiWarningMailTask.php b/private/lib/task/GenerateCommentiWarningMailTask.php
new file mode 100644
index 0000000..4365bb3
--- /dev/null
+++ b/private/lib/task/GenerateCommentiWarningMailTask.php
@@ -0,0 +1,36 @@
+query("AdminModel",array("active"=>true));
+
+ $commenti = GlobalVariables::get("dao")->query("CommentoModel",array("mailSent"=>false),array("limit"=>10));
+
+ if(sizeof($commenti)>0 && sizeof($admins)>0){
+ foreach ($admins as $admin){
+ if ($admin->hasRole(AdminModel::ADMIN_TYPE_COMMENTI_SUPERVISOR) && !$admin->hasRole(AdminModel::ADMIN_TYPE_SUPERADMIN)){
+ foreach ($commenti as $commento){
+ $mail = FDN_MailHelper::getNewCommentoMail($commento,$admin);
+ GlobalVariables::get("dao")->save($mail);
+ $commento->mailSent = true;
+ GlobalVariables::get("dao")->save($commento);
+ }
+ }
+ }
+ }
+ }
+}
+
+?>
\ No newline at end of file
diff --git a/private/lib/task/lib.inclusion.php b/private/lib/task/lib.inclusion.php
index d2862ae..97699c1 100644
--- a/private/lib/task/lib.inclusion.php
+++ b/private/lib/task/lib.inclusion.php
@@ -21,4 +21,6 @@ require_once(dirname(__FILE__)."/DeleteOldPasswordResetRequestsTask.php");
require_once(dirname(__FILE__)."/GenerateUserActivationMailTask.php");
require_once(dirname(__FILE__)."/UpdateMeteoCacheTask.php");
+
+require_once(dirname(__FILE__)."/GenerateCommentiWarningMailTask.php");
?>
\ No newline at end of file
diff --git a/public/admin/confirmNewsletter.php b/public/admin/confirmNewsletter.php
index cae1ff8..271cc6b 100644
--- a/public/admin/confirmNewsletter.php
+++ b/public/admin/confirmNewsletter.php
@@ -59,7 +59,8 @@ try {
?>