fray...@adullact.net
unread,Oct 21, 2016, 7:09:43 AM10/21/16Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Sign in to report message
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to openmairie-...@googlegroups.com
Author: fraynaud
Date: 2016-10-21 13:09:00 +0200 (Fri, 21 Oct 2016)
New Revision: 812
Modified:
branches/test_5.0.0-a1/obj/diffusion.class.php
Log:
mise au point des methodes d envoi de mail
Modified: branches/test_5.0.0-a1/obj/diffusion.class.php
===================================================================
--- branches/test_5.0.0-a1/obj/diffusion.class.php 2016-10-20 16:10:16 UTC (rev 811)
+++ branches/test_5.0.0-a1/obj/diffusion.class.php 2016-10-21 11:09:00 UTC (rev 812)
@@ -352,53 +352,24 @@
$this->setValFFromVal();
$this->checkAccessibility();
//if($this->f->getParameter("dematerialisation") == 'true')
- $this->addToMessage(_("parametre dematerialisation ".$this->f->getParameter("dematerialisation")." "));
-
- // cas mail pj
- If($this->valF["typediffusion"]=='mail_pj'){;
- $titre = $this->valF['typetraitement']." "._("du")." "._("courrier");
- //$message = $this->valF['message'];
-
- $message = "**";
- if(!empty($this->valF['dossier'])){
- $filename = $this->f->retrieveDirectoryFilename($this->valF['dossier']); // retourne le fichier associé à ce courrier
- $file = array();
- $file[$filename] = array(
- 'content' => '',
- 'title' => 'Diffusion',
- 'url' => $this->f->storage->getPath($filename),
- 'name' => $this->f->storage->getFilename($filename));
- $message .= "<br>"._("Le courrier est en piece jointe");
- $sended = $this->f->sendMail($titre, $message,$this->valF['email'],$file);
- }else{
- $sended = $this->f->sendMail($titre, $message,$this->valF['email']);
- }
- if ($sended){
- $this->addToMessage(_("L'element ".$this->valF['diffusion']." a été envoyé."));
- $correct = true;
- }else{
- $this->addToMessage(_("L'element ".$this->valF['diffusion']." n a pas été envoyé."));
- $correct=false;
- }
- }
+ //$this->addToMessage(_("parametre dematerialisation ".$this->f->getParameter("dematerialisation")." "));
If($this->valF["typediffusion"]=='opencourrier'){
$this->addToMessage(_("autorisation de lecture dans opencourrier"));
-
$correct=true;
}
If($this->valF["typediffusion"]=='path_ftp'){
+ //Alfresco/Sites/openmairie//documentLibrary/action_eco/
if(!empty($this->valF['dossier'])){
- $filename = $this->f->retrieveDirectoryFilename($this->valF['dossier'][$i]); // retourne le fichier associé à ce courrier
+ $filename = $this->f->retrieveDirectoryFilename($this->valF['dossier']); // retourne le fichier associé à ce courrier
$file = array();
$file[$filename] = array(
'content' => '',
- 'title' => $this->valF['typetraitement'][$i],
+ 'title' => $this->valF['typetraitement'],
'url' => $this->f->storage->getPath($filename),
'name' => $this->f->storage->getFilename($filename));
}
-
if(!empty($filename)){
// en FTP_BINARY cela fonctionne alors que pb en FTP_ASCII
$sended = ftp_put($conn_ftp, $this->valF['adresse'].
@@ -406,7 +377,6 @@
$sended = ftp_put($conn_ftp, $this->valF['adresse'].$file[$filename]['name'] ,
$file[$filename]['url']."", FTP_BINARY);
}
-
if ($sended){
$this->addToMessage( "<b>"._("Le document ".$file[$filename]['name']." a ete depose dans : ")."</b> ");
$this->addToMessage( "<b>"._($this->valF['adresse'])."</b><br>");
@@ -417,63 +387,119 @@
}
If($this->valF["typediffusion"]=='mail_chemin'){;
-
- $titre = $this->valF['typetraitement']." "._("du")." "._("courrier");
- //$message = $this->valF['message'];
- //$message= "***";
+ $titre = " "._("Diffusion")." "._("courrier");
+ $message= "";
if(!empty($this->valF['dossier'])){
- // creation du chemin acces file system
-
- $serveur_lien=$_SERVER['SERVER_NAME'];
- $chemin_php = explode("/app/", $_SERVER['PHP_SELF']);
- // revoir le lien
- $chemin= "http://".$serveur_lien.$chemin_php[0]."/app/";
- $message .= "\n<a href='".$chemin.
- "file.php?obj=dossier&champ=fichier&key=".$this->valF['dossier']."&collectivite=".$_SESSION['collectivite']."' >"
- .$chemin."file.php?obj=dossier&champ=fichier&key=".$this->valF['dossier']."</a>";
-
- //$sended = $this->f->sendMail($titre, $message,$this->valF['email']);
+ // recherche du registre courrier
+ $courrier = $this->get_registre_courrier($val=array());
+ $corps = $courrier." - "._("pour")." ".$this->valF['typetraitement'];
+ $chemin=$this->get_chemin_dossier($val = array());
+ $message = $chemin.$corps."</a>";
+ // a voir diffusion groupée
$sended=$this->f->sendMail($titre, $message, $this->valF['adresse']);
}
if ($sended){
+ $this->addToMessage(_("L'element ".$courrier." a été envoyé."));
+ $correct = true;
+ }else{
+ $this->addToMessage(_("L'element ".$courrier." n a pas été envoyé."));
+ $correct = false;
+ }
+ }
+
+ // cas mail pj
+ if($this->valF["typediffusion"]=='mail_pj'){;
+ $titre = $this->valF['typetraitement']." "._("du")." "._("courrier");
+ //$message = $this->valF['message'];
+ $message = "***";
+ //$message = "veuillez trouver le courrier ".$this->get_registre_courrier($val=array());
+ if(!empty($this->valF['dossier'])){
+ // retourne le fichier associé à ce courrier
+ $filename = $this->f->retrieveDirectoryFilename($this->valF['dossier']);
+ $file = array();
+ $file[$filename] = array(
+ 'content' => '',
+ 'title' => 'Diffusion',
+ 'url' => $this->f->storage->getPath($filename),
+ 'name' => $this->f->storage->getFilename($filename));
+ $message .= "<br>"._("Le courrier est en piece jointe");
+ $sended = $this->f->sendMail($titre, $message,$this->valF['adresse'],$file);
+ }else{
+ $sended = $this->f->sendMail($titre, $message ,$this->valF['adresse']);
+ }
+ if ($sended){
$this->addToMessage(_("L'element ".$this->valF['diffusion']." a été envoyé."));
$correct = true;
}else{
- $this->addToMessage(_("L'element ".$this->valF['diffusion']." n a pas été envoyé."));
+ $this->addToMessage(_("L'element ".$this->valF['diffusion']." n a pas été envoyé."));
$correct=false;
}
- /*
- if ($sended){
- echo "<b>"._("Le courrier ".$this->valF['registre']." a été envoyé à : ")."</b> ";
- echo "<b>"._($this->valF['email'])."</b><br>";
- //$f->modifier_envoi__date_diffusion($_POST['diffusion'][$i],$db);
- }else{
- echo "<b>"._("Le courrier ").$this->valF['registre']._(" n a pas été envoyé à : ")."</b>";
- echo "<b>"._($this->valF['email'])."</b><br>";
- }
- */
}
-
+
if($correct){
- //envoi
- $this->begin_treatment(__METHOD__);
- $this->correct = true;
- $this->valF['envoi'] = "t";
- $this->valF['datediffusion']= date('Y-m-d');
- $modifier = $this->modifier($this->valF);
- // traitement erreur
- if ($modifier != true) {
- $this->addToMessage(_("L'element ".$this->valF['diffusion']." envoi est non mis a jour."));
- $this->addToMessage($this->f->isDatabaseError($modifier)."");
- return $this->end_treatment(__METHOD__, false);
- }else{
- return $this->end_treatment(__METHOD__, true);
- }
+ $valider=$this->valider_envoi($val = array());
}else{
$this->addToMessage(_("L'element ".$this->valF['diffusion']." envoi est non mis a jour car non envoyé."));
}
+
}
+ function get_key_dossier($val = array()) {
+ $sql= "select key from ".DB_PREFIXE."dossier where dossier=".$this->valF['dossier'];
+ $res=$this->f->db->getOne($sql);
+ // Si une erreur survient
+ if (database::isError($res, true)) {
+ // Appel de la methode de recuperation des erreurs
+ $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');
+ $this->correct = false;
+ return false;
+ }else
+ return $res;
+ }
+
+ function get_registre_courrier($val = array()) {
+ $sql= "select registre from ".DB_PREFIXE."courrier where courrier=".$this->valF['courrier'];
+ $res=$this->f->db->getOne($sql);
+ // Si une erreur survient
+ if (database::isError($res, true)) {
+ // Appel de la methode de recuperation des erreurs
+ $this->erreur_db($res->getDebugInfo(), $res->getMessage(), '');
+ $this->correct = false;
+ return false;
+ }else
+ return $res;
+ }
+
+ function get_chemin_dossier($val = array()) {
+ // recherche de la clé du dossier
+ $key=$this->get_key_dossier($val=array());
+ // creation du chemin acces file system
+ $serveur_lien=$_SERVER['SERVER_NAME'];
+ $chemin_php = explode("/scr/", $_SERVER['PHP_SELF']);
+ $chemin= "http://".$serveur_lien.$chemin_php[0]."/app/";
+ $chemin= "\n<a href='".$chemin."file.php?obj=dossier&champ=fichier&key=".
+ $key."&collectivite=".$_SESSION['collectivite']."' >";
+ return $chemin;
+ }
+
+ function valider_envoi($val = array()) {
+ //envoi
+ $this->begin_treatment(__METHOD__);
+ $this->correct = true;
+ $this->valF['envoi'] = "t";
+ $this->valF['datediffusion']= date('Y-m-d');
+ $modifier = $this->modifier($this->valF);
+ // traitement erreur
+ if ($modifier != true) {
+ $this->addToMessage(_("L'element ".$this->valF['diffusion']." envoi est non mis a jour."));
+ $this->addToMessage($this->f->isDatabaseError($modifier)."");
+ return $this->end_treatment(__METHOD__, false);
+ }else{
+ return $this->end_treatment(__METHOD__, true);
+ }
+ }
+
+
function cloturer($val = array()) {
// Begin
$this->begin_treatment(__METHOD__);