function get_destinataires() { $courriel_destinataires = CTableGroupe::get_array_email($this->email['destinataire']); $destinataires = array(); foreach($courriel_destinataires as $courriel_destinataire) { array_push($destinataires, $this->get_adress($courriel_destinataire)); } return $destinataires; }
} if (isset($_POST['argEnvoiSelected']) && $_POST['argEnvoiSelected'] != '') { $zEnvoiSelected = $_POST['argEnvoiSelected']; $zEmailError = ''; $zEmailNonReceptionne = ''; $zEmailRecu = ''; $zEmailClickLien = ''; $toEnvoiSelected = explode('|',$zEnvoiSelected); foreach($toEnvoiSelected as $zEnvoi) { if ($zEnvoi != '') { $zSql = "SELECT id_groupe, type_envoi FROM email WHERE id ='".$zEnvoi."'"; $tzGroupeInfo = mysql_fetch_assoc (mysql_query ($zSql)); if ($tzGroupeInfo['type_envoi'] == TYPE_ENVOI_GROUPE || $tzGroupeInfo['type_envoi'] == TYPE_ENVOI_USER) { $zColIdUser = "******"; $toUsers = CTableGroupe::get_array_id_user($tzGroupeInfo['id_groupe']); } else { $zColIdUser = "******"; $toUsers = CTableGrGroupe::get_array_id_user($tzGroupeInfo['id_groupe']); } foreach ($toUsers as $zUser) { //0 : non valide, 1 : non réceptionné, 2 : ouvert $zSql2 = "SELECT retour_email_statut,retour_email_lien FROM retour_email WHERE retour_email_id_email = '".$zEnvoi."' AND " . $zColIdUser . " = '".$zUser."'"; $resResultat = $bdd->select($zSql2); $toResultat = @mysql_fetch_assoc($resResultat); switch($toResultat['retour_email_statut']) { case '0'://E-mail non valide $zEmailError = $zEmailError.$zUser.'|';
<th align="left"><a href="?order=nom">Sujet</a></th> <th><a href="?order=pj">Pj</a></th> <th style="width: 68px">Campagnes</th> <th nowrap="nowrap"><a href="?order=date">Date d'envoi</a></th> <th width="40px"><a href="?order=etat">Etat</a></th> <th>Envoyer</th> <th title="suppr">Publipostage</th> <th title="suppr"> Suppr </th> </tr> <?php $i = 0; while ($email = @mysql_fetch_array($r_email)) { ?> <tr> <td><a href="show_envoi.php?id=<?php echo $email['id'] ?>" target="popup" onclick="popup(this.href, this.target, '800', '600');"> <?php echo $email['id'] ?> </a></td> <td><?php echo CTableGroupe::get_href($email['destinataire']) ?></td> <td><?php echo CFunction::cut_string($email['nom'], 20); ?></td> <td align="center"><?php echo basename($email['pj']); ?></td> <td> <?php if($email['id_campagne'] > 0) { $obj = new CTableCampagne(array('id'=>$id)); $campagne = $obj->select_row(); ?> <a href="campagne.php?a=5&id=<?php echo $email['id_campagne']; ?>"><?php echo $email['id_campagne']; ?></a> <?php } ?> </td> <td align="center"><?php echo CDate::date_switch(CDate::formate_date($email['date'])) ?></td>
$id_groupe = $_GET['filtre_id_groupe']; } if(isset($_POST['tab_user'])) $tab_user = $_POST['tab_user']; if (empty($id_groupe)) { $error_type = 1; } if ($error_type > 0) { //erreur de type champ non valide $msginfo = "Veuillez spécifier le groupe"; break; } $tab_user_old = CTableGroupe::get_array_id_user($id_groupe); $tab_user_new = array_unique(array_merge($tab_user_old, $tab_user)); $liste_user_new = implode("|", $tab_user_new); $groupe = new CTableGroupe(array('id' => $id_groupe, 'text' => $liste_user_new)); $groupe->update(); $msginfo = "Enregistrement bien effectué"; break; case 8 : // Modifier etat contact if(!empty($_GET['id'])) $id = $_GET['id']; $use = new CTableUser(array('id' => $id)); $use->reverse_etat_contact(); break; case 9 : // Modifier opportunité if(!empty($_GET['id'])) $id = $_GET['id']; if(!empty($_GET['idopportunite'])) $idopportunite = $_GET['idopportunite']; $use = new CTableUser(array('id' => $id, 'idopportunite' => $idopportunite)); $use->update();
<?php include("../inc/init.php"); if(!empty($_GET['message_number'])) $message_number = $_GET['message_number']; if(!empty($_GET['passe'])) $passe = $_GET['passe']; $imap = new CImap(CTableConfiguration::get_value_by_element('POP_SERVER'), CTableUser::get_email_admin(), $passe); if(@$imap->connect()) { $info = @$imap->get_info($message_number); $email_id = $imap->load($message_number); echo "Sauvegarde du message " . $message_number; ?> <script type="text/javascript"> $('first').insert({after:'<tr><td><a href="show_reception.php?id=<?php echo $email_id ?>" target="popup" onclick="popup(this.href, this.target, 800, 600);"><?php echo $email_id ?></a></td><td><?php echo CTableGroupe::get_href($info['from']) ?></td><td><?php echo utf8_encode($info['subject']) ?></td><td><?php echo CDate::date_switch(CDate::formate_date($info['date'])) ?></td><td align="center" class="info etat <?php echo 'etat_0'?>"><div class="bulle"><img src="../img/publish_x.png" alt="Non lu" /> Non lu<br /><a href="reception.php?a=2&id=<?php echo $email_id ?>&etat=1"><img src="../img/publish_g.png" alt="Lu" /> Lu</a><br /><a href="reception.php?a=2&id=<?php echo $email_id ?>&etat=2"><img src="../img/publish_u.png" alt="Archivé" /> Archivé</a></div></td></tr>'}); </script> <?php } else { echo "Echec de chargement du message " . $message_number; } ?> <a href="show_reception.php?id=<?php echo stripslashes($email['id']) ?>" target="popup" onclick="popup(this.href, this.target, '800', '600');"> <?php echo $email['id'] ?> </a>
<td align="center"><?php echo CDate::date_switch (CDate::formate_date($email['date'])) ?></td> <!-- Nombre //--> <?php //-- Si non envoyé, nombre d'utilisateurs avec email if ($filtre_etat == -1 || $filtre_etat == 0 || $filtre_etat == 1) { ?> <td style="text-align: right"> <?php if ($email['etat'] == 0) { if (CMail::is_email ($email['destinataire'])) { $liste_email = $email['destinataire']; } else { if ( $email['type_envoi'] == 0 ){ $liste_email = CTableGroupe::get_liste_email($email['destinataire']); } elseif ( $email['type_envoi'] == 1 ){ $liste_email = CTableGrGroupe::get_liste_email($email['destinataire']); } } print (CMail::is_email ($liste_email)) ? count(explode(',',$liste_email)) : 0; } // Si envoyé : afficher le nombre d'emails validés (ou envoyés car c'est la même chose) elseif ($email['etat'] == 1) { $zQuery = "SELECT COUNT(*) AS 'iCount' FROM retour_email WHERE retour_email_id_email = ".$email['id'] ." AND retour_email_statut != 0 "; $tiCount = mysql_fetch_array (mysql_query ($zQuery)); if ($tiCount['iCount'] > 0) { ?> <a href="<?php if ($email['type_envoi'] == 1) print "gr_"; ?>user.php?filtre_id_groupe=<?php print (!empty ($email['id_groupe'])) ? $email['id_groupe'] : 0; ?>&filtre_email=1&filtre_etat_contact=%%" title="Aller vers les contacts"><?=$tiCount['iCount'] ;?></a><?php } else { print '0'; } } ?>
$msginfo = "Champ non valide"; $a = 5; break; } $tart= new CTableGroupe(array('id'=>$id, 'nom'=>CFunction::addslashes($nom), 'etat'=>$etat)); $tart->update(); CBdd::update("UPDATE email SET destinataire = '".$nom."' WHERE destinataire = '".$old_nom."'"); $msginfo = "groupe bien modifié"; $a = 0; break; case 555 : // Vider if(!empty($_GET['id'])) $id = $_GET['id']; $tgroupe= new CTableGroupe(array('id'=>$id, 'text'=>'')); $_group = $tgroupe->select_row(); $nom = $_group['nom']; $etat = $_group ['etat']; $tgroupe->update(); $msginfo = "groupe bien vidé"; $a = 5; break; case 5555: break; case 6 : // Filtrer if(!empty($_GET['idcat'])) $idcat = $_GET['idcat']; $_SESSION['idcat'] = $idcat; break;
$filtre_email = CSession::get('filtre_email', "%%"); $filtre_nom = CSession::get('filtre_nom'); $filtre_prenom = CSession::get('filtre_prenom'); $filtre_id_groupe = $_SESSION['id_groupe']; if(isset($_REQUEST['id_groupe']) && $_REQUEST['id_groupe']==0) { $liste_user_all_groupe = trim(implode(',',CTableGroupe::get_array_id_user_all_groupe()), ','); if(empty($liste_user_all_groupe)) { $filtre_groupe = ''; } else { $filtre_groupe = " AND id NOT IN (" . $liste_user_all_groupe . ")"; } } else { $filtre_groupe = " AND id IN (" . implode(',',CTableGroupe::get_array_id_user($filtre_id_groupe)) . ")"; } $filtre = " 1 " . $filtre_groupe; $r_user = CTableUser::select("*", $filtre, $order); ?> <body> <div id="main"> <?php if(($a != 4) && ($a != 5) ) { ?> <?php //---------------------------------------------------------------------------------------------- // LISTE //---------------------------------------------------------------------------------------------- ?>
case 44: $valid = 0; $zSql = " "; $zSql .= " SELECT date FROM email WHERE id_campagne = " . $id_campagne ; $oDates = CBdd::select($zSql); if($zDateNow < substr($date,0,4).substr($date,5,2).substr($date,8,2)) $valid = 1; while($tzDates = mysql_fetch_array($oDates)){ if(substr($tzDates[0],0,10) == $date) $valid = 0; } if($valid == 1) { if ($bIsGrGrp == 0){ $obj = new CTableGroupe(array('id'=>$destinataire)); $groupe = $obj->select_row(); } else{ $obj = new CTableGrGroupe(array('id'=>$destinataire)); $groupe = $obj->select_row(); } $zSql = " "; $zSql .= " INSERT INTO email (id,nom,id_groupe,type_envoi,destinataire,expediteur,id_text,id_campagne,text,pj,imap,type,periode,date) " ; $zSql .= " VALUES ('',\"".CFunction::addslashes($texte['nom'])."\",\"".$destinataire."\",\"".$bIsGrGrp."\",\"".$groupe['nom']."\",\"".$expediteur."\"" ; $zSql .= " ,".$texte['id'].",".$id_campagne.",\"".CFunction::addslashes($texte['text'])."\",'','','campagne',0,'".$date."')"; $result = CBdd::insert($zSql); if(!$result) { echo 'INSERT_ERROR, 0';
static function un_group($id) { $sql = "SELECT id FROM groupe WHERE FIND_IN_SET(".$id.", REPLACE(`text`, '|', ',')) > 0"; $ids = CBdd::select($sql); while($g = mysql_fetch_array($ids)) { $group = new CTableGroupe(array('id'=>$g['id'])); $group->delete_user($id); } }
$text = $email['text']; $pj = $email['pj']; $date = $email['date']; break; case 55 : // Envoyer 2 if(!empty($_POST['id'])) $id = $_POST['id']; if(!empty($_POST['expediteur'])) $expediteur = trim($_POST['expediteur']); if(!empty($_POST['destinataire'])) $destinataire = trim($_POST['destinataire']); if(!empty($_POST['nom'])) $nom = trim($_POST['nom']); if(!empty($_POST['pj'])) $pj = trim($_POST['pj']); if(!empty($_POST['text'])) $text = trim($_POST['text']); if(!empty($_POST['date'])) $date = $_POST['date']; if(!empty($_POST['go'])) $go = $_POST['go']; $liste_email = CTableGroupe::get_liste_email($destinataire); if (!CMail::is_email($liste_email)) { $error_type = 1; $error_signe['destinataire'] = "*"; } if ($nom=="") { $error_type = 2; $error_signe['nom'] = "*"; } if ($text=="") { $error_type = 3; $error_signe['text'] = "*"; }
$liste_user_all_groupe = '(' . trim (implode (',', CTableGroupe::get_array_id_user_all_groupe ()), ',') . ')'; $listeGroupe__ = str_replace (array ('(,', ',)', ',,'), array ('(', ')', ''), ($liste_user_all_groupe)); $Test = str_replace (array ('(', ',', ')'), array ('', '', ''), $listeGroupe__); if ($Test) { $filtre_groupe = " AND id NOT IN " . $listeGroupe__; } else { $filtre_groupe = " AND id LIKE '0'"; } break; case '%%': $filtre_groupe = " "; break; default: $liste_user_groupe = trim (implode (',', CTableGroupe::get_array_id_user ($filtre_id_groupe)), ','); if ($liste_user_groupe) { $listeGroupe = '(' . implode (',', CTableGroupe::get_array_id_user ($filtre_id_groupe)) . ')'; $listeGroupe__ = str_replace (array ('(,', ',)', ',,'), array ('(', ')', ''), ($listeGroupe)); $filtre_groupe = $liste_user_groupe ? " AND id IN ".$listeGroupe__ : " "; } // else { // $filtre_groupe = " AND id like '0'"; // } } $filtre_opportunite = ""; $i = 0; if(count($filtre_idopportunite)) { $filtre_opportunite = "AND idopportunite IN ("; $list_id = array(); foreach($filtre_idopportunite as $id_opportunite) {
<?php include("../inc/init.php") ; $id_groupe = !empty($_REQUEST['id_groupe']) ? $_REQUEST['id_groupe'] : 0; $separator = $_REQUEST['separateur']== 'PNT' ? ';' : ','; $groupe = new CTableGroupe(array('id'=>$id_groupe)); $groupe->export($separator); ?>
<?php include("../inc/init.php"); //boucler pour voir tous les emails non envoyés $sql = "SELECT * FROM email WHERE etat = 3 AND DATE_FORMAT(date, '%Y-%m-%d') <= DATE_FORMAT(date, '%Y-%m-%d') LIMIT " . CTableConfiguration::get_value_by_element('MAIL_MAX_SEND'); $res = CBdd::select($sql); while($email = mysql_fetch_array($res)) { //à chaque résultat, envoyer l'email $liste_email = CTableGroupe::get_liste_email($email['destinataire']); $tdes = new CTableTexte(array('id'=>$email['id_text'])); $texte = $tdes->select_row(); $body = CNmail::build_html_body($texte['style'], CFunction::stripslashes($text)); $arr_pj = explode("|", @$email['pj']); if(CMail::send_mail($email['expediteur'], stripslashes($email['nom']), $body, $email['expediteur'], $arr_pj, 'Bcc: ' . $liste_email)) { //save $obj = new CTableEmail(array('id'=>$email['id'], 'expediteur'=>$email['expediteur'], 'destinataire'=>$email['destinataire'], 'nom'=>addslashes($email['nom']), 'text'=>addslashes($email['text']), 'pj'=>$email['pj'], 'etat'=>1, 'date'=>date("Y-m-d H:i:s"))); $obj->update(); } CFunction::print_r($email['destinataire']); } ?>