Changeset 947
- Timestamp:
- 03/31/06 22:29:25 (3 years ago)
- Files:
-
- trunk/bureau/admin/mail_list.php (modified) (3 diffs)
- trunk/bureau/class/m_mail.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/bureau/admin/mail_list.php
r603 r947 35 35 include("head.php"); 36 36 37 if(!$res=$mail->enum_doms_mails($domain,1 )) {37 if(!$res=$mail->enum_doms_mails($domain,1,$letter)) { 38 38 $error=$err->errstr(); 39 40 39 ?> 41 40 </head> … … 46 45 echo "<p class=\"error\">$error</p>"; 47 46 } 48 echo "<p><a href=\"mail_add.php?domain=$domain\">".sprintf(_("Add a mailbox on <b>%s</b>"),$domain)."</a><br / ";47 echo "<p><a href=\"mail_add.php?domain=$domain\">".sprintf(_("Add a mailbox on <b>%s</b>"),$domain)."</a><br />"; 49 48 echo " <a href=\"mail_add.php?many=1&domain=$domain\">".sprintf(_("Add many mailboxes on <b>%s</b>"),$domain)."</a></p>"; 50 49 ?> … … 65 64 } 66 65 67 echo "<p><a href=\"mail_add.php?domain=$domain\">".sprintf(_("Add a mailbox on <b>%s</b>"),$domain)."</a><br / ";66 echo "<p><a href=\"mail_add.php?domain=$domain\">".sprintf(_("Add a mailbox on <b>%s</b>"),$domain)."</a><br />"; 68 67 echo " <a href=\"mail_add.php?many=1&domain=$domain\">".sprintf(_("Add many mailboxes on <b>%s</b>"),$domain)."</a></p>"; 68 69 if(!$letters=$mail->enum_doms_mails_letters($domain)) 70 $error=$err->errstr(); 71 else{ 72 for($i=0;$i<count($letters);$i++){ 73 $val=$letters[$i]; 74 echo " <a href=\"mail_list.php?domain=$domain&letter=$val\">$val </a></p>"; 75 } 76 echo " <a href=\"mail_list.php?domain=$domain\">".sprintf(_("All"))."</a></p>"; 77 } 78 79 69 80 ?> 81 70 82 71 83 <form method="post" action="mail_dodel.php" id="main"> trunk/bureau/class/m_mail.php
r913 r947 74 74 75 75 /* ----------------------------------------------------------------- */ 76 /** Retourne la liste des mails du domaine $dom 76 /** Retourne la liste des lettres pour lesquelles un domaine $dom a 77 * des e-mails 78 * Retourne un tableau indexé où se trouvent les lettres 79 * @param string $dom Domaine dont on veut les premières lettres des mails 80 * @return array Tableau de lettres ou FALSE si erreur 81 */ 82 function enum_doms_mails_letters($dom) { 83 global $err,$cuid,$db; 84 $err->log("mail","enum_doms_mails_letters",$dom); 85 $db->query("SELECT LEFT(mail,1) as letter FROM mail_domain where uid='$cuid' AND type=0 and mail like '%@".addslashes($dom)."' GROUP BY letter ORDER BY letter;"); 86 $res=array(); 87 while($db->next_record()) { 88 $res[]=$db->f("letter"); 89 } 90 return $res; 91 } 92 93 /* ----------------------------------------------------------------- */ 94 /** Retourne la liste des mails du domaine $dom et si une lettre est 95 * définie, cela retourne les mail qui commencent par celle ci 77 96 * Retourne un tableau indexé de tableaux associatifs sous la forme : 78 97 * $a["mail"]=Adresse email … … 84 103 * s'est produite 85 104 */ 86 function enum_doms_mails($dom,$sort=0 ) {105 function enum_doms_mails($dom,$sort=0,$letter="") { 87 106 global $err,$cuid,$db; 88 107 $err->log("mail","enum_doms_mails",$dom); 89 $db->query("SELECT mail,pop,alias FROM mail_domain WHERE mail LIKE ' %@$dom' AND uid='$cuid' AND type=0;");108 $db->query("SELECT mail,pop,alias FROM mail_domain WHERE mail LIKE '".addslashes($letter)."%@".addslashes($dom)."' AND uid='$cuid' AND type=0;"); 90 109 $res=array(); $i=0; 91 110 while ($db->next_record()) {
