* Foundation, Inc., *
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
***************************************************************************
- $Id: alias.php,v 1.6 2004-09-02 20:11:22 x2000habouzit Exp $
+ $Id: alias.php,v 1.7 2004-11-07 18:19:02 x2000habouzit Exp $
***************************************************************************/
require("auto.prepend.inc.php");
$page->assign('demande', AliasReq::get_unique_request($_SESSION['uid']));
//Récupération des alias éventuellement existants
-$sql = "SELECT domain from groupex.aliases WHERE id=12 AND email='{$_SESSION['forlife']}'";
+$sql = "SELECT alias
+ FROM virtual
+ INNER JOIN virtual_redirect USING(vid)
+ WHERE redirect='{$_SESSION['forlife']}@m4x.org'";
if($result = $globals->db->query($sql)) {
list($aliases) = mysql_fetch_row($result);
mysql_free_result($result);
$page->run('error');
} else {
//vérifier que l'alias n'est pas déja pris
- $result = $globals->db->query("SELECT 1 FROM groupex.aliases WHERE id=12 AND domain LIKE '$alias@melix.net'");
+ $result = $globals->db->query("SELECT 1 FROM virtual WHERE alias='$alias@melix.net'");
if (mysql_num_rows($result)>0) {
$page->assign('error', "L'alias $alias@melix.net a déja été attribué.
Tu ne peux donc pas l'obtenir.");
* Foundation, Inc., *
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
***************************************************************************
- $Id: emails.php,v 1.8 2004-10-10 09:35:56 x2000chevalier Exp $
+ $Id: emails.php,v 1.9 2004-11-07 18:19:02 x2000habouzit Exp $
***************************************************************************/
require("auto.prepend.inc.php");
// on regarde si l'utilisateur a un alias et si oui on l'affiche !
-$sql = "SELECT domain FROM groupex.aliases WHERE id=12 AND email like '".$_SESSION['forlife']."'";
+$sql = "SELECT alias
+ FROM virtual AS v
+ INNER JOIN virtual_redirect AS vr USING(vid)
+ WHERE redirect='{$_SESSION['forlife']}@m4x.org'";
$result = $globals->db->query($sql);
if ($result && list($aliases) = mysql_fetch_row($result))
$page->assign('melix', substr($aliases,0,-3));
* Foundation, Inc., *
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
***************************************************************************
- $Id: routage-mail.php,v 1.8 2004-10-10 09:51:30 x2000chevalier Exp $
+ $Id: routage-mail.php,v 1.9 2004-11-07 18:19:02 x2000habouzit Exp $
***************************************************************************/
require("auto.prepend.inc.php");
$page->assign('retour', $redirect->modify_email($_REQUEST['emails_actifs'],$_REQUEST['emails_rewrite']));
}
}
-$sql = "SELECT domain FROM groupex.aliases WHERE id=12 AND email like'".$_SESSION['forlife']."'";
+$sql = "SELECT alias
+ FROM virtual
+ INNER JOIN virtual_redirect USING(vid)
+ WHERE redirect='{$_SESSION['forlife']}@m4x.org'";
$res = $globals->db->query($sql);
list($grx) = mysql_fetch_row($res);
$page->assign('grx',$grx);
* Foundation, Inc., *
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA *
***************************************************************************
- $Id: valid_aliases.inc.php,v 1.16 2004-09-05 12:24:41 x2000habouzit Exp $
+ $Id: valid_aliases.inc.php,v 1.17 2004-11-07 18:19:03 x2000habouzit Exp $
***************************************************************************/
class AliasReq extends Validate {
$this->raison = $_raison;
$sql = $globals->db->query("
- SELECT l.alias,prenom,nom,domain
- FROM auth_user_md5 AS u
- INNER JOIN aliases AS l ON (u.user_id=l.id AND type='a_vie')
- LEFT JOIN groupex.aliases AS a ON (a.email = l.alias and a.id = 12)
+ SELECT l.alias,prenom,nom,v.alias
+ FROM auth_user_md5 AS u
+ INNER JOIN aliases AS l ON (u.user_id=l.id AND l.type='a_vie')
+ LEFT JOIN virtual_redirect AS vr ON (CONCAT(l.alias,'@m4x.org') = vr.redirect)
+ LEFT JOIN virtual AS v USING(vid)
WHERE user_id='".$this->uid."'");
list($this->forlife,$this->prenom,$this->nom,$this->old) = mysql_fetch_row($sql);
mysql_free_result($sql);
function commit () {
global $globals;
- $domain=$this->alias.'@melix.net';
- $globals->db->query("DELETE FROM groupex.aliases WHERE id=12 AND email='{$this->forlife}'");
- $globals->db->query("INSERT INTO groupex.aliases SET email='{$this->forlife}',domain='$domain',id=12");
+ if($this->old) {
+ $globals->db->query("UPDATE virtual SET alias='{$this->alias}@melix.net' WHERE alias='{$this->old}'");
+
+ } else {
+ $globals->db->query("INSERT INTO virtual SET alias='{$this->alias}@melix.net',type='user'");
+ $vid = mysql_insert_id();
+ $globals->db->query("INSERT INTO virtual_redirect (vid,redirect) VALUES ($vid,'{$this->forlife}@m4x.org')");
+ }
}
}
--- /dev/null
+alter table virtual change column vid vid int not null auto_increment;
+alter table virtual change column alias alias varchar(255) not null;
+alter table virtual add unique (alias) ;
+alter table virtual_redirect change column vid vid int not null auto_increment;
+alter table virtual_redirect add index (redirect);