Aggiunti warning mail per commenti

Aggiunte nuove mail al mail helper
Correzioni grafiche alle pagine di cancellazione in amministrazione
Modificata pagina di validazione commento
This commit is contained in:
Riccardo Di Dato
2016-03-17 23:00:26 +01:00
parent aa0e3c364f
commit b015b44ec7
18 changed files with 243 additions and 68 deletions
+1 -1
View File
@@ -2,7 +2,7 @@
<?php
require_once(dirname(__FILE__). "/../load.php");
$tasks = array("NewsletterCheckTask","DeleteOldPasswordResetRequestsTask", "UpdateMeteoCacheTask");
$tasks = array("NewsletterCheckTask","DeleteOldPasswordResetRequestsTask", "UpdateMeteoCacheTask", "GenerateCommentiWarningMailTask");
if (sizeof($tasks)>0){
foreach ($tasks as $taskName){
+18
View File
@@ -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.<br/><br/>";
$tmp->body.= "Verifica i contenuti del commento utilizzando il link di seguito.<br/><br/>";
$tmp->body.='<a href="'.$confirmLink.'">'.$confirmLink.'</a>';
return new MailModel($tmp);
}
}
?>
+4
View File
@@ -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();
}
@@ -0,0 +1,36 @@
<?php
/*
Author: Riccardo Di Dato
Creation Date: 17/mar/2016
*/
class GenerateCommentiWarningMailTask extends Task {
public static function getName(){
return "generateCommentiWarning";
}
public static function getLabel(){
return "Genera email su ricezione commenti";
}
public static function execute(){
$admins = GlobalVariables::get("dao")->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);
}
}
}
}
}
}
?>
+2
View File
@@ -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");
?>
+6 -1
View File
@@ -59,7 +59,8 @@ try {
?>
<div class="formBtns" style="text-align:center;">
<a href="#" id="mailForm_confirm" >Conferma</a>
<a href="#" id="mailForm_annulla">Annulla</a>
<a href="#" id="mailForm_annulla">Indietro</a>
<a href="#" id="mailForm_elimina">Elimina</a>
</div>
<div><span class="label"><b>Oggetto</b></span><?php echo $mail->subject; ?> </div>
<div><span class="label"><b>Giorno</b></span><?php echo date("d-m-Y",$mail->date->sec); ?> </div>
@@ -77,6 +78,10 @@ try {
$("form#mailForm input[type=hidden][name=action]").val("cancel");
$("form#mailForm").submit();
});
$("#mailForm_elimina").click(function(event){
openPagePost("deleteNewsletter.php", [{name:"id",value:"<?php echo $id; ?>"}]);
});
});
</script>
<form id="mailForm" method="POST" action="">
+12 -10
View File
@@ -38,16 +38,18 @@ if (!is_null($confirm) && strcmp("", $confirm)!=0){
}
?>
<div>
<?php
echo "Sei sicuro di voler eliminare l'amministratore ".$giornalista->nome." ".$giornalista->cognome."?";
?>
<form id="giornalistaDeletionForm" method="POST" action="">
<input type="hidden" name="confirm" value="" />
<input type="hidden" name="id" value="<?php echo $id;?>" />
</form>
<a href="#" id="giornalistaDeletionForm_confirm" >Conferma</a>
<a href="#" id="giornalistaDeletionForm_cancel" >Annulla</a>
<div class="deletionConfirm">
<div>
<?php
echo "Sei sicuro di voler eliminare l'amministratore ".$giornalista->nome." ".$giornalista->cognome."?";
?>
<form id="giornalistaDeletionForm" method="POST" action="">
<input type="hidden" name="confirm" value="" />
<input type="hidden" name="id" value="<?php echo $id;?>" />
</form>
<a href="#" id="giornalistaDeletionForm_confirm" >Conferma</a>
<a href="#" id="giornalistaDeletionForm_cancel" >Annulla</a>
</div>
</div>
<script type="text/javascript">
$(document).ready(function(event){
+12 -10
View File
@@ -40,16 +40,18 @@ if (!is_null($confirm) && strcmp("", $confirm)!=0){
}
?>
<div>
<?php
echo "Sei sicuro di voler eliminare questo banner <span style='color:blue;'>".$banner->customer."</span> ?";
?>
<form id="notiziaDeletionForm" method="POST" action="">
<input type="hidden" name="confirm" value="" />
<input type="hidden" name="id" value="<?php echo $id;?>" />
</form>
<a href="#" id="notiziaDeletionForm_confirm" >Conferma</a>
<a href="#" id="notiziaDeletionForm_cancel" >Annulla</a>
<div class="deletionConfirm">
<div>
<?php
echo "Sei sicuro di voler eliminare questo banner <span style='color:blue;'>".$banner->customer."</span> ?";
?>
<form id="notiziaDeletionForm" method="POST" action="">
<input type="hidden" name="confirm" value="" />
<input type="hidden" name="id" value="<?php echo $id;?>" />
</form>
<a href="#" id="notiziaDeletionForm_confirm" >Conferma</a>
<a href="#" id="notiziaDeletionForm_cancel" >Annulla</a>
</div>
</div>
<script type="text/javascript">
$(document).ready(function(event){
+12 -10
View File
@@ -44,16 +44,18 @@ if (!is_null($confirm) && strcmp("", $confirm)!=0){
}
?>
<div>
<?php
echo "Sei sicuro di voler eliminare il giornalista ".$giornalista->nome." ".$giornalista->cognome."?";
?>
<form id="giornalistaDeletionForm" method="POST" action="">
<input type="hidden" name="confirm" value="" />
<input type="hidden" name="id" value="<?php echo $id;?>" />
</form>
<a href="#" id="giornalistaDeletionForm_confirm" >Conferma</a>
<a href="#" id="giornalistaDeletionForm_cancel" >Annulla</a>
<div class="deletionConfirm">
<div>
<?php
echo "Sei sicuro di voler eliminare il giornalista ".$giornalista->nome." ".$giornalista->cognome."?";
?>
<form id="giornalistaDeletionForm" method="POST" action="">
<input type="hidden" name="confirm" value="" />
<input type="hidden" name="id" value="<?php echo $id;?>" />
</form>
<a href="#" id="giornalistaDeletionForm_confirm" >Conferma</a>
<a href="#" id="giornalistaDeletionForm_cancel" >Annulla</a>
</div>
</div>
<script type="text/javascript">
$(document).ready(function(event){
+12 -10
View File
@@ -39,16 +39,18 @@ if (!is_null($confirm) && strcmp("", $confirm)!=0){
}
?>
<div>
<?php
echo "Sei sicuro di voler eliminare questa email <span style='color:blue;'>".$mail->titolo."</span> ?";
?>
<form id="notiziaDeletionForm" method="POST" action="">
<input type="hidden" name="confirm" value="" />
<input type="hidden" name="id" value="<?php echo $id;?>" />
</form>
<a href="#" id="notiziaDeletionForm_confirm" >Conferma</a>
<a href="#" id="notiziaDeletionForm_cancel" >Annulla</a>
<div class="deletionConfirm">
<div>
<?php
echo "Sei sicuro di voler eliminare questa email <span style='color:blue;'>".$mail->titolo."</span> ?";
?>
<form id="notiziaDeletionForm" method="POST" action="">
<input type="hidden" name="confirm" value="" />
<input type="hidden" name="id" value="<?php echo $id;?>" />
</form>
<a href="#" id="notiziaDeletionForm_confirm" >Conferma</a>
<a href="#" id="notiziaDeletionForm_cancel" >Annulla</a>
</div>
</div>
<script type="text/javascript">
$(document).ready(function(event){
+66
View File
@@ -0,0 +1,66 @@
<?php
/*
Author: Riccardo Di Dato
Creation Date: 17/mar/2016
*/
require_once(dirname(__FILE__)."/../load.php");
GUIHandler::generateHtmlHeaders(array(),true);
if (!AdminLoginManager::isLogged()){
GUIHandler::redirect("admin/login.php");
}
else if (!AdminLoginManager::getLogged()->hasRole(AdminModel::ADMIN_TYPE_NEWSLETTER)){
GUIHandler::redirect("admin/index.php");
}
MenuGenerator::generateMenu();
HTMLHelper::generateAdminHead();
$id = PostHandler::get("id");
if (is_null($id) || strcmp("", $id)==0){
GUIHandler::redirect("admin/pendingNewsletters.php");
}
$mail = GlobalVariables::get("dao")->getFirst("MailTemplateModel",array("id"=>$id));
if (is_null($mail)){
GUIHandler::redirect("admin/pendingNewsletters.php");
}
$confirm = PostHandler::get("confirm");
if (!is_null($confirm) && strcmp("", $confirm)!=0){
if (strcmp("true", $confirm)==0){
GlobalVariables::get("dao")->delete($mail);
}
GUIHandler::redirect("admin/pendingNewsletters.php");
}
?>
<div class="deletionConfirm">
<div>
<?php
echo "Sei sicuro di voler eliminare la newsletter <span style='color:blue;'>".$mail->titolo."</span> ?";
?>
<form id="notiziaDeletionForm" method="POST" action="">
<input type="hidden" name="confirm" value="" />
<input type="hidden" name="id" value="<?php echo $id;?>" />
</form>
<a href="#" id="notiziaDeletionForm_confirm" >Conferma</a>
<a href="#" id="notiziaDeletionForm_cancel" >Annulla</a>
</div>
</div>
<script type="text/javascript">
$(document).ready(function(event){
$("#notiziaDeletionForm_confirm").click(function(event){
$("form#notiziaDeletionForm input[type=hidden][name=confirm]").val("true");
$("form#notiziaDeletionForm").submit();
});
$("#notiziaDeletionForm_cancel").click(function(event){
$("form#notiziaDeletionForm input[type=hidden][name=confirm]").val("false");
$("form#notiziaDeletionForm").submit();
});
});
</script>
+12 -10
View File
@@ -38,16 +38,18 @@ if (!is_null($confirm) && strcmp("", $confirm)!=0){
}
?>
<div>
<?php
echo "Sei sicuro di voler eliminare questa notizia <span style='color:blue;'>".$notizia->titolo."</span> ?";
?>
<form id="notiziaDeletionForm" method="POST" action="">
<input type="hidden" name="confirm" value="" />
<input type="hidden" name="id" value="<?php echo $id;?>" />
</form>
<a href="#" id="notiziaDeletionForm_confirm" >Conferma</a>
<a href="#" id="notiziaDeletionForm_cancel" >Annulla</a>
<div class="deletionConfirm">
<div>
<?php
echo "Sei sicuro di voler eliminare questa notizia <span style='color:blue;'>".$notizia->titolo."</span> ?";
?>
<form id="notiziaDeletionForm" method="POST" action="">
<input type="hidden" name="confirm" value="" />
<input type="hidden" name="id" value="<?php echo $id;?>" />
</form>
<a href="#" id="notiziaDeletionForm_confirm" >Conferma</a>
<a href="#" id="notiziaDeletionForm_cancel" >Annulla</a>
</div>
</div>
<script type="text/javascript">
$(document).ready(function(event){
+12 -10
View File
@@ -39,16 +39,18 @@ if (!is_null($confirm) && strcmp("", $confirm)!=0){
}
?>
<div>
<?php
echo "Sei sicuro di voler eliminare l'utente ".$giornalista->nome." ".$giornalista->cognome."?";
?>
<form id="utenteDeletionForm" method="POST" action="">
<input type="hidden" name="confirm" value="" />
<input type="hidden" name="id" value="<?php echo $id;?>" />
</form>
<a href="#" id="utenteDeletionForm_confirm" >Conferma</a>
<a href="#" id="utenteDeletionForm_cancel" >Annulla</a>
<div class="deletionConfirm">
<div>
<?php
echo "Sei sicuro di voler eliminare l'utente ".$giornalista->nome." ".$giornalista->cognome."?";
?>
<form id="utenteDeletionForm" method="POST" action="">
<input type="hidden" name="confirm" value="" />
<input type="hidden" name="id" value="<?php echo $id;?>" />
</form>
<a href="#" id="utenteDeletionForm_confirm" >Conferma</a>
<a href="#" id="utenteDeletionForm_cancel" >Annulla</a>
</div>
</div>
<script type="text/javascript">
$(document).ready(function(event){
+2 -1
View File
@@ -29,7 +29,8 @@ $taskList = array(
"GenerateAdminPasswordRecoveryMailTask",
"DeleteOldPasswordResetRequestsTask",
"GenerateUserActivationMailTask",
"UpdateMeteoCacheTask"
"UpdateMeteoCacheTask",
"GenerateCommentiWarningMailTask"
);
$saved = false;
+4 -1
View File
@@ -82,7 +82,10 @@ if (!is_null($action) && strcmp("", $action)!=0){
</div>
<script type="text/javascript">
$(document).ready(function(event){
CKEDITOR.replace('body_editor');
CKEDITOR.disableAutoInline = true;
CKEDITOR.config.allowedContent = true;
CKEDITOR.inline('body_editor');
$("#mailForm_salva").click(function(event){
$("form#mailForm input[type=hidden][name=action]").val("save");
$("form#mailForm").submit();
+21 -3
View File
@@ -68,6 +68,20 @@ try {
$error = "Si è verificato un errore inaspettato durante l'esecuzione della pagina. Se l'errore persiste contattare il supporto tecnico.";
}
$mailBody = $mail->body;
if (strcmp($mailBody, "")==0){
$mailBody = '<div style="margin:auto;width:1024px;"><div style="text-align:center;"><img src="http://www.ifattidinapoli.com/images/logo_uff.png"></div><div >Testo di prova</div><div></div>'.
'<div style="background-color:#14477c;margin-top:10px;">
<div style="text-align:center;color:#2e91d4;padding:10px;">
<a style="color:#2e91d4;margin:10px;" href="http://www.ifattidinapoli.com/index.php">Home</a> | <a style="color:#2e91d4;margin:10px;" href="http://www.ifattidinapoli.com/categorySummary.php?category=1">Politica</a> | <a style="color:#2e91d4;margin:10px;" href="http://www.ifattidinapoli.com/categorySummary.php?category=2">Cronaca</a> | <a style="color:#2e91d4;margin:10px;" href="http://www.ifattidinapoli.com/categorySummary.php?category=3">Sport</a> | <a style="color:#2e91d4;margin:10px;" href="http://www.ifattidinapoli.com/categorySummary.php?category=4">Cultura&amp;Spettacolo</a>
</div>
<div style="text-align:center;color:white;margin-top:25px;">TESTATA REGISTRATA PRESSO IL TRIBUNALE DI NAPOLI AUT. NR. 8 DEL 27 GENNAIO 2006</div>
<div style="text-align:center;color:white;margin-top:20px;">COPYRIGHT © 2016 <a href="http://www.ifattidinapoli.it" style="color:white;">www.ifattidinapoli.it</a> - Giornale della Terza Metropoli Italiana</div>
<div style="text-align:center;color:white;margin-top:20px;">
<a href="http://www.ifattidinapoli.com/redazione.php" style="color:white;">REDAZIONE</a> | <a href="http://www.ifattidinapoli.com/archivio.php" style="color:white;">ARCHIVIO STORICO</a>
</div>
</div></div>';
}
?>
<div>
<?php
@@ -91,8 +105,9 @@ try {
<input type="text" id="timepicker" name="time" value="<?php echo ($edit)? date("H:i",$mail->date->sec):date("H:i");?>">
</div>
<div>
<span class="label">Corpo</span>
<textarea name="body" id="body_editor" rows="10" cols="80"><?php echo $mail->body;?></textarea>
<!-- <div style="margin:auto;width:1024px;" contenteditable="true"><?php echo $mailBody;?></div>-->
<!-- <span class="label">Corpo</span> -->
<textarea id="body_editor" name="body" rows="10" cols="80"><?php echo $mailBody;?></textarea>
</div>
</form>
<div class="formBtns">
@@ -102,7 +117,10 @@ try {
</div>
<script type="text/javascript">
$(document).ready(function(event){
CKEDITOR.replace('body_editor');
CKEDITOR.disableAutoInline = true;
CKEDITOR.config.allowedContent = true;
CKEDITOR.inline('body_editor');
$("#datepicker").datepicker({dateFormat:"dd-mm-yy"});
$("#timepicker").datetimepicker({datepicker:false,format:'H:i'});
+6 -1
View File
@@ -21,7 +21,12 @@ HTMLHelper::generateAdminHead();
try{
$commentoId = PostHandler::get("id");
if (is_null($commentoId)){
GUIHandler::redirect("admin/unacceptedCommenti.php");
if (array_key_exists("i", $_GET) && strcmp("", $_GET["i"])!=0){
$commentoId = $_GET["i"];
}
else {
GUIHandler::redirect("admin/unacceptedCommenti.php");
}
}
$commento = GlobalVariables::get("dao")->getFirst("CommentoModel",array("id"=>$commentoId));
+5
View File
@@ -23,6 +23,9 @@ table.dataTable tr.even td{background-color:rgba(126, 151, 214, 0.4); }
.dataTables_wrapper .toolbar{float:right;}
.dataTables_wrapper .toolbar > *{vertical-align:middle;}
.deletionConfirm > div{text-align: center;background-color: #FF7E7E;display: block;width: 60%;margin: auto;padding: 20px 10px;border: 3px solid #B64141;border-radius: 10px;}
.deletionConfirm a {text-decoration: none;color: #36F;font-weight: bold;margin-right: 5px;padding: 5px;display: inline-block;}
.deletionConfirm a:hover{background-color: #FFABAB;}
/*
_ _ ____
@@ -116,6 +119,8 @@ div.commentoAcceptance > .buttons a.green:hover{background-color:#7EFF83;}
div.commentoAcceptance > .buttons a.red:hover{background-color:#FF8DA6;}
div.commentoAcceptance > .buttons a.yellow:hover{background-color:#FF8DA6;}
div.commentoBlock{border: 4px solid #CFCFCF;border-radius: 15px;padding: 12px 5px 5px 20px;margin: 5px 0px;background-color: #E6E6E6;}
/*
____ _ _ _ _ _ _____ ____
| __ ) / \ | \ | | \ | | ____| _ \