Ignore:
Timestamp:
Sep 15, 2006, 3:50:35 PM (15 years ago)
Author:
cedric@…
Message:

gestion des envois de messages internes et mail lors de la creation/modif d'un rendez vous

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_branche_stable_/_spip_1_9_0_/pim_agenda/balise/formulaire_agenda.php

    r3923 r5395  
    8585                $retour_agenda = parametre_url($retour_agenda,'id_invites','');
    8686                $retour_agenda = str_replace("&","&",$retour_agenda);
     87        }
     88        $script = self();
     89        $script = parametre_url($script,'neweven','');
     90        $script = parametre_url($script,'edit','');
     91        $script = parametre_url($script,'date','');
     92        $script = str_replace("&","&",$script);
     93       
     94        // sauf si on a passe un parametre en argument (exemple : {#SELF})
     95        if ($url_param_retour) {
     96                        $script = $url_param_retour;
    8797        }
    8898
     
    193203                        $date_fin=format_mysql_date(date("Y",$st_date_fin),date("m",$st_date_fin),date("d",$st_date_fin),date("H",$st_date_fin),date("i",$st_date_fin), $s=0);
    194204
     205                        $row_anc = spip_fetch_array(spip_query("SELECT * FROM spip_pim_agenda WHERE id_agenda=$id_agenda"));
    195206                        // mettre a jour l'evenement
    196207                        $query="UPDATE spip_pim_agenda SET `type`='$type', `titre`='$titre',`descriptif`='$descriptif',`lieu`='$lieu',`date_debut`='$date_deb',`date_fin`='$date_fin',`prive`='$prive',`crayon`='$crayon', `idx`='1' WHERE `id_agenda` = '$id_agenda';";
     
    239250                                }
    240251                        $evenement_action = 'evenement_modif';
     252
     253                       
     254                        // Envoi des messages d'invitation par messagerie interne et mail
     255                        $envoi=false;
     256                        $message_titre=_T('pimagenda:texte_agenda');
     257                        $message_auteur=$id_organisateur;
     258                        $message_date_heure=date("Y-m-d H:i:s");
     259                        $redirect_url = parametre_url($script,'id_agenda',$id_agenda);
     260                        $message_texte="Vous &ecirc;tes invit&eacute;s le <a href='$redirect_url'>".date("d-m-Y",$st_date_deb)." &agrave; ".date("H:i",$st_date_deb)."</a> (dur&eacute;e ".date("H:i",$st_date_fin-$st_date_deb).")";
     261                        if ($modif){
     262                                if ($st_date_deb!=($st_last=strtotime($row_anc['date_debut']))){
     263                                        $envoi=true;
     264                                        $message_texte="L'invitation du ".date("d-m-Y",$st_last)." &agrave; ".date("H:i",$st_last)." a &eacute;t&eacute; deplac&eacute;e le <a href='$redirect_url'>".date("d-m-Y",$st_date_deb)." &agrave; ".date("H:i",$st_date_deb)."</a> (dur&eacute;e ".date("H:i",$st_date_fin-$st_date_deb).")";
     265                                }
     266                                else if ($st_date_fin!=($st_last=strtotime($row_anc['date_fin']))){
     267                                        $envoi=true;
     268                                        $message_texte="La dur&eacute;e de l'invitation du <a href='$redirect_url'>".date("d-m-Y",$st_date_deb)." &agrave; ".date("H:i",$st_date_deb)."</a> a &eacute;t&eacute; modifi&eacute;e (nouvelle dur&eacute;e ".date("H:i",$st_date_fin-$st_date_deb).")";
     269                                }
     270                        }
     271                        if ( ($modif && $envoi) || ($insert)){
     272                                $id_message = spip_abstract_insert("spip_messages",
     273                                                "(titre,texte,type,date_heure,date_fin,rv,statut,id_auteur,maj)",
     274                                                "(".spip_abstract_quote($message_titre).",".spip_abstract_quote($message_texte).",'normal','$message_date_heure','$message_date_heure','non','publie',$message_auteur,NOW())");
     275
     276                                $head="From: agenda@".$_SERVER["HTTP_HOST"]."\n";
     277                                $message_texte = supprimer_tags($message_texte) . "\n$redirect_url";
     278                                include_spip('inc/charset');
     279                                $trans_tbl = get_html_translation_table (HTML_ENTITIES);
     280                                $trans_tbl = array_flip ($trans_tbl);
     281                                // mettre le texte dans un charset acceptable
     282                                $mess_iso = unicode2charset(charset2unicode($message_texte),'iso-8859-1');
     283                                // regler les entites si il en reste
     284                                $mess_iso = strtr($mess_iso, $trans_tbl);
     285                               
     286                                if ($id_message!=0){
     287                                        foreach($id_invites as $value){
     288                                                $id_dest=spip_abstract_quote($value);
     289                                                spip_query("INSERT INTO spip_auteurs_messages (id_message, id_auteur, vu) VALUES ($id_message, $id_dest,'non');");
     290                                                if ($row=spip_fetch_array(spip_query("SELECT email FROM spip_auteurs WHERE id_auteur=$id_dest")) && isset($row['email'])){
     291                                                        mail($row['email'],$message_titre,$message_texte,$head);
     292                                                }
     293                                        }
     294                                }
     295                        }
     296
     297
     298                       
    241299                       
    242300                        // relecture de la base
     
    266324                }
    267325               
    268         }
    269 
    270         $script = self();
    271         $script = parametre_url($script,'neweven','');
    272         $script = parametre_url($script,'edit','');
    273         $script = parametre_url($script,'date','');
    274         $script = str_replace("&amp;","&",$script);
    275        
    276         // sauf si on a passe un parametre en argument (exemple : {#SELF})
    277         if ($url_param_retour) {
    278                         $script = $url_param_retour;
    279326        }
    280327
Note: See TracChangeset for help on using the changeset viewer.