Changeset 1810

Show
Ignore:
Timestamp:
05/03/07 15:17:05 (1 year ago)
Author:
franck
Message:

Ajout d'une confirmation lors de la suppression de listes mailman

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • alternc-mailman/trunk/bureau/admin/mman_del.php

    r1151 r1810  
    3333 
    3434$error=""; 
    35 // On parcours les POST_VARS et on repere les del_. 
    36 reset($_POST); 
    37 while (list($key,$val)=each($_POST)) { 
    38         if (substr($key,0,4)=="del_") { 
    39                 // Effacement de la ml $val 
    40                 $r=$mailman->delete_lst($val); 
    41                 if (!$r) { 
    42                         $error.=$err->errstr()."<br>"; 
    43                 } else { 
    44                         $error.=sprintf(_("The list %s has been successfully deleted."),$r)."<br>"; 
    45                 } 
    46         } 
     35 
     36if (empty($d)) 
     37
     38        include ("mman_list.php"); 
     39        exit(); 
    4740} 
    48 include("mman_list.php"); 
    49 exit(); 
     41 
     42if (!is_array($d)) 
     43
     44        $tmp = array($d); 
     45        $d = $tmp; 
     46
     47reset($d); 
     48 
     49include("head.php"); 
     50 
    5051?> 
     52</head> 
     53<body> 
     54<h3><?php __("Deleting mailman lists"); ?></h3> 
     55<p><?php __("Please confirm the deletion of the following mailman lists:"); ?></p> 
     56<form action="mman_dodel.php" method="post"> 
     57<?php 
     58 
     59foreach ($d as $id) 
     60{ 
     61        echo "<input type=\"hidden\" name=\"d[]\" value=\"" . $id . "\" />"; 
     62        echo $mailman->get_lst($id) . "<br />"; 
     63} 
     64 
     65?> 
     66<p><input type="submit" class="inb" name="confirm" value="<?php __("Delete the selected mailman lists"); ?>" /> - <input type="submit" name="cancel" id="cancel" class="inb" value="<?php __("Don't delete lists and go back to the mailman list"); ?>" /> 
     67</p> 
     68</form> 
     69</body> 
     70</html> 
  • alternc-mailman/trunk/bureau/admin/mman_list.php

    r1244 r1810  
    7676                ?> 
    7777                <tr class="lst<?php echo $col; ?>"> 
    78                         <td align="center"><input type="checkbox" class="inc" name="del_<?php echo $val["id"]; ?>" value="<?php echo $val["id"]; ?>"></td> 
     78                        <td align="center"><input type="checkbox" class="inc" name="d[]" value="<?php echo $val["id"]; ?>"></td> 
    7979                        <td><?php echo $val["list"]."@".$val["domain"] ?></td> 
    8080                        <td>&nbsp;<a href="https://<?php echo $val["domain"]; ?>/cgi-bin/mailman/listinfo/<?php echo $val["name"] ?>"><?php __("Public page"); ?></a>&nbsp;</td> 
     
    9393} 
    9494 
    95 if ($quota->cancreate("mailman")) {  
     95if ($quota->cancreate("mailman")) { 
    9696?> 
    9797        <a href="mman_add.php"><?php __("Create a list"); ?></a><br> 
  • alternc-mailman/trunk/bureau/class/m_mailman.php

    r1733 r1810  
    2929*/ 
    3030class m_mailman { 
    31    
     31 
    3232  /* ----------------------------------------------------------------- */ 
    3333  function m_mailman() { 
    3434  } 
    35    
     35 
    3636  /* ----------------------------------------------------------------- */ 
    3737  /** 
     
    6363    return $mls; 
    6464  } 
    65    
     65 
    6666  /*****************************************************************************/ 
    6767  function prefix_list() { 
     
    8585    return true; 
    8686  } 
    87    
     87 
     88  /*****************************************************************************/ 
     89        /** Get list informations */ 
     90        function get_lst($id) 
     91        { 
     92                global $db, $err, $cuid; 
     93                $err->log("mailman","get_list", $cuid); 
     94 
     95                $q = "SELECT * FROM mailman WHERE uid = '" . $cuid . "' && id = '" . $id . "'"; 
     96                $db->query($q); 
     97                $db->next_record(); 
     98                if (!$db->f("id")) 
     99                { 
     100                        $err->raise("mailman",9); 
     101                        return false; 
     102                } 
     103                $login = $db->f("list"); 
     104                $domain = $db->f("domain"); 
     105                return $login . "@" . $domain; 
     106        } 
     107 
    88108  /*****************************************************************************/ 
    89109  /** Create a new list for this member : */ 
     
    91111    global $db,$err,$quota,$mail,$cuid; 
    92112    $err->log("mailman","add_lst",$login."@".$domain." - ".$owner); 
    93     $login = strtolower($login); 
    94      
     113 
    95114    if ($login=="") { 
    96115      $err->raise("mailman",2); 
     
    117136    } 
    118137    // Prefixe OK, on verifie la non-existence des mails que l'on va créer... 
    119     if (!$mail->available($login."@".$domain) ||  
    120         !$mail->available($login."-request@".$domain) ||  
    121         !$mail->available($login."-owner@".$domain) ||  
    122         !$mail->available($login."-admin@".$domain) ||  
    123         !$mail->available($login."-bounces@".$domain) ||  
    124         !$mail->available($login."-confirm@".$domain) ||  
    125         !$mail->available($login."-join@".$domain) ||  
    126         !$mail->available($login."-leave@".$domain) ||  
    127         !$mail->available($login."-subscribe@".$domain) ||  
     138    if (!$mail->available($login."@".$domain) || 
     139        !$mail->available($login."-request@".$domain) || 
     140        !$mail->available($login."-owner@".$domain) || 
     141        !$mail->available($login."-admin@".$domain) || 
     142        !$mail->available($login."-bounces@".$domain) || 
     143        !$mail->available($login."-confirm@".$domain) || 
     144        !$mail->available($login."-join@".$domain) || 
     145        !$mail->available($login."-leave@".$domain) || 
     146        !$mail->available($login."-subscribe@".$domain) || 
    128147        !$mail->available($login."-unsubscribe@".$domain)) { 
    129148      // This is a mail account already !!! 
     
    133152    // Le compte n'existe pas, on vérifie le quota et on le créé. 
    134153    if ($quota->cancreate("mailman")) { 
    135       // Creation de la liste : 1. recherche du nom de la liste  
     154      // Creation de la liste : 1. recherche du nom de la liste 
    136155      // CA NE MARCHE PAS ! 
    137       $name=$login;  
     156      $name=$login; 
    138157      $db->query("INSERT INTO mailman (uid,list,domain,name) VALUES ('$cuid','$login','$domain','$name');"); 
    139       if (!$mail->add_wrapper($login,$domain,"/var/lib/mailman/mail/mailman post $name","mailman") ||  
    140           !$mail->add_wrapper($login."-request",$domain,"/var/lib/mailman/mail/mailman request $name","mailman") ||  
    141           !$mail->add_wrapper($login."-owner",$domain,"/var/lib/mailman/mail/mailman owner $name","mailman") ||  
    142           !$mail->add_wrapper($login."-admin",$domain,"/var/lib/mailman/mail/mailman admin $name","mailman") ||  
    143           !$mail->add_wrapper($login."-bounces",$domain,"/var/lib/mailman/mail/mailman bounces $name","mailman") ||  
    144           !$mail->add_wrapper($login."-confirm",$domain,"/var/lib/mailman/mail/mailman confirm $name","mailman") ||  
     158      if (!$mail->add_wrapper($login,$domain,"/var/lib/mailman/mail/mailman post $name","mailman") || 
     159          !$mail->add_wrapper($login."-request",$domain,"/var/lib/mailman/mail/mailman request $name","mailman") || 
     160          !$mail->add_wrapper($login."-owner",$domain,"/var/lib/mailman/mail/mailman owner $name","mailman") || 
     161          !$mail->add_wrapper($login."-admin",$domain,"/var/lib/mailman/mail/mailman admin $name","mailman") || 
     162          !$mail->add_wrapper($login."-bounces",$domain,"/var/lib/mailman/mail/mailman bounces $name","mailman") || 
     163          !$mail->add_wrapper($login."-confirm",$domain,"/var/lib/mailman/mail/mailman confirm $name","mailman") || 
    145164          !$mail->add_wrapper($login."-join",$domain,"/var/lib/mailman/mail/mailman join $name","mailman") || 
    146           !$mail->add_wrapper($login."-leave",$domain,"/var/lib/mailman/mail/mailman leave $name","mailman") ||  
    147           !$mail->add_wrapper($login."-subscribe",$domain,"/var/lib/mailman/mail/mailman subscribe $name","mailman") ||  
     165          !$mail->add_wrapper($login."-leave",$domain,"/var/lib/mailman/mail/mailman leave $name","mailman") || 
     166          !$mail->add_wrapper($login."-subscribe",$domain,"/var/lib/mailman/mail/mailman subscribe $name","mailman") || 
    148167          !$mail->add_wrapper($login."-unsubscribe",$domain,"/var/lib/mailman/mail/mailman unsubscribe $name","mailman") 
    149168          ) { 
    150169        $mail->del_wrapper($login,$domain);             $mail->del_wrapper($login."-request",$domain); 
    151170        $mail->del_wrapper($login."-owner",$domain);    $mail->del_wrapper($login."-admin",$domain); 
    152         $mail->del_wrapper($login."-bounces",$domain);  $mail->del_wrapper($login."-confirm",$domain);  
     171        $mail->del_wrapper($login."-bounces",$domain);  $mail->del_wrapper($login."-confirm",$domain); 
    153172        $mail->del_wrapper($login."-join",$domain);     $mail->del_wrapper($login."-leave",$domain); 
    154173        $mail->del_wrapper($login."-subscribe",$domain);        $mail->del_wrapper($login."-unsubscribe",$domain); 
     
    164183    } 
    165184  } 
    166    
     185 
    167186  /*****************************************************************************/ 
    168187  function delete_lst($id) { 
    169188    global $db,$err,$mail,$cuid; 
    170189    $err->log("mailman","delete_lst",$id); 
    171      
     190 
    172191    $db->query("SELECT * FROM mailman WHERE id=$id and uid='$cuid';"); 
    173192    $db->next_record(); 
     
    182201    $mail->del_wrapper($login,$domain);         $mail->del_wrapper($login."-request",$domain); 
    183202    $mail->del_wrapper($login."-owner",$domain);        $mail->del_wrapper($login."-admin",$domain); 
    184     $mail->del_wrapper($login."-bounces",$domain);      $mail->del_wrapper($login."-confirm",$domain);  
     203    $mail->del_wrapper($login."-bounces",$domain);      $mail->del_wrapper($login."-confirm",$domain); 
    185204    $mail->del_wrapper($login."-join",$domain); $mail->del_wrapper($login."-leave",$domain); 
    186205    $mail->del_wrapper($login."-subscribe",$domain);    $mail->del_wrapper($login."-unsubscribe",$domain); 
     
    189208 
    190209  /* ----------------------------------------------------------------- */ 
    191   /** Returns the list's members as a text file, one subscriber per  
    192    *   line.  
     210  /** Returns the list's members as a text file, one subscriber per 
     211   *   line. 
    193212   */ 
    194213 function members($id) {