newaccount.php 10.4 KB
Newer Older
Ayolo's avatar
Ayolo committed
1 2 3 4 5 6 7 8 9
<?php

/* Copyright 2007
 * - Julien Etelain <julien POINT etelain CHEZ gmail POINT com>
 *
 * Ce fichier fait partie du site de l'Association des Étudiants de
 * l'UTBM, http://ae.utbm.fr.
 *
 * This program is free software; you can redistribute it and/or
Ayolo's avatar
Ayolo committed
10
 * modify it under the terms of the GNU General Public License a
Ayolo's avatar
Ayolo committed
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
 * published by the Free Software Foundation; either version 2 of the
 * License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Sofware
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
 * 02111-1307, USA.
 */

$topdir = "./";
require_once($topdir. "include/site.inc.php");

$site = new site ();

$user = new utilisateur($site->db,$site->dbrw);


if ( isset($_REQUEST["mode"]) )
{
  $mode = $_REQUEST["mode"];

  if ( !$_REQUEST["agree"] )
    $Erreur = "Veuillez accepter le réglement informatique.";
  elseif ( !$_REQUEST["nom"] )
    $Erreur = "Veuillez préciser votre nom";
  elseif ( !$_REQUEST["prenom"] )
    $Erreur = "Veuillez préciser votre prenom";
  elseif ( !$_REQUEST["email"] )
    $Erreur = "Veuillez ppréciser votre adresse e-mail";
  elseif ( !ereg("^([A-Za-z0-9\._-]+)@([A-Za-z0-9_-]+)\.([A-Za-z0-9\._-]*)$", $_REQUEST["email"] ) )
    $Erreur="Adresse e-mail non valide";
  elseif ( $user->load_by_email($_REQUEST["email"]) )
    $Erreur = "Votre adresse e-mail est déjà utilisée pour un autre compte";
  elseif ( $mode == "utbm" && !ereg("^([a-zA-Z0-9\.\-]+)@(utbm\.fr|assidu-utbm\.fr)$",$_REQUEST["email"]) )
50
    $Erreur = "Adresse e-mail non utbm";
Ayolo's avatar
Ayolo committed
51 52 53 54 55
  else
  {
    if ( $_REQUEST["action"] == "create" )
    {
      $user->id=null;
56

Ayolo's avatar
Ayolo committed
57 58 59 60 61
      if ( !$GLOBALS["svalid_call"] )
        $Erreur = "Votre demande à déjà été traitée. Si le prolème persiste contactez nous.";
      elseif ( !$_REQUEST["password"] )
        $Erreur = "Veuillez préciser un mot de passe";
      elseif ( $_REQUEST["password"] != $_REQUEST["password_repeat"] )
62
        $Erreur = "Les deux saisies du mot de passe ne dont pas identiques";
Ayolo's avatar
Ayolo committed
63 64 65 66
      else
      {
        /** @todo créer le compte avec les informations élémentaires */
        if ( $mode == "utbm" )
slopez's avatar
slopez committed
67
          $ret = $user->create_utbm_user ( $_REQUEST["nom"], $_REQUEST["prenom"], $_REQUEST["email"], $_REQUEST["password"], $_REQUEST["droitimage"], $_REQUEST["naissance"], $_REQUEST["sexe"], $_REQUEST["role"], $_REQUEST["dep"] );
Ayolo's avatar
Ayolo committed
68
        elseif ( $mode == "etu" )
slopez's avatar
slopez committed
69
          $ret = $user->create_etudiant_user ( $_REQUEST["nom"], $_REQUEST["prenom"], $_REQUEST["email"], $_REQUEST["password"], $_REQUEST["droitimage"], $_REQUEST["naissance"], $_REQUEST["sexe"], $_REQUEST["ecole"] );
Ayolo's avatar
Ayolo committed
70
        else
slopez's avatar
slopez committed
71
          $ret = $user->create_user ( $_REQUEST["nom"], $_REQUEST["prenom"], $_REQUEST["email"], $_REQUEST["password"], $_REQUEST["droitimage"], $_REQUEST["naissance"], $_REQUEST["sexe"] );
72

Ayolo's avatar
Ayolo committed
73
        $site->start_page("services","Inscription");
74
        $cts = new contents("Inscription : Etape 3/3");
slopez's avatar
slopez committed
75 76 77 78 79 80
        if($ret) {
          $cts->add_paragraph("Votre compte vient d'être crée, il faut maintenant l'activer. Pour cela vous devez cliquer le lien qui vous a été envoyé par email à l'adresse ".htmlentities($_REQUEST["email"]).". Votre compte ne sera utilisable que dès lors que cette opération sera terminée.");
          $cts->add_paragraph("Votre compte sera soumis à vérification (modération), vous ne pourrez accéder à toutes les fonctions dès que votre compte sera vérifié.");
        } else {
          $cts->add_paragraph("Une erreur s'est produite, veuillez contacter l'équipe informatique de l'association des étudiants à l'adresse suivante : ae.info @ utbm.fr (sans les espaces).");
        }
81
        $site->add_contents($cts);
Ayolo's avatar
Ayolo committed
82
        $site->end_page();
83
        exit();
Ayolo's avatar
Ayolo committed
84 85
      }
    }
86 87


Ayolo's avatar
Ayolo committed
88
    $site->start_page("services","Inscription");
89 90
    $cts = new contents("Inscription : Etape 2/3");

Ayolo's avatar
Ayolo committed
91 92 93
    $frm = new form("createaccount","newaccount.php?mode=$mode",true);
    $frm->allow_only_one_usage();
    $frm->add_hidden("action","create");
94

Ayolo's avatar
Ayolo committed
95 96
    if ( isset($Erreur) )
      $frm->error($Erreur);
97

Ayolo's avatar
Ayolo committed
98 99 100
    $frm->add_select_field("sexe","Je suis",array(1=>"un homme",2=>"une femme"));
    $frm->add_text_field("nom","Votre nom",$_REQUEST["nom"],true);
    $frm->add_text_field("prenom","Votre prenom",$_REQUEST["prenom"],true);
101

Ayolo's avatar
Ayolo committed
102 103
    if ( $mode == "utbm" )
    {
Feu's avatar
Feu committed
104
      $frm->add_text_field("email","Votre adresse email utbm",$_REQUEST["email"],true);
Ayolo's avatar
Ayolo committed
105 106 107 108 109
      $frm->add_select_field("role","Votre fonction",$GLOBALS["utbm_roles"],$_REQUEST["role"]);
      $frm->add_select_field("dep","Votre departement",$GLOBALS["utbm_departements"]);
    }
    elseif ( $mode == "etu" )
    {
Feu's avatar
Feu committed
110
      $frm->add_text_field("email","Votre adresse email (pas utbm.fr)",$_REQUEST["email"],true);
Ayolo's avatar
Ayolo committed
111 112
      $frm->add_select_field("ecole","Votre ecole",array("utt","utc","iut"),$_REQUEST["role"]);
    }
Feu's avatar
Feu committed
113
    else
Feu's avatar
Feu committed
114
      $frm->add_text_field("email","Votre adresse email (pas utbm.fr)",$_REQUEST["email"],true);
115

Ayolo's avatar
Ayolo committed
116 117 118 119
    $frm->add_password_field("password","Mot de passe","",true);
    $frm->add_password_field("password_repeat","Mot de passe (pour vérification)","",true);

    $frm->add_date_field("naissance","Date de naissance");
120

Ayolo's avatar
Ayolo committed
121 122
    $frm->add_checkbox("droitimage","J'accorde mon droit à l'image");

123

124
    $frm->add_checkbox("agree","J'ai lu et j'accepte le <a href=\"article.php?name=legals:rinfo\">réglement informatique</a>",true);
Ayolo's avatar
Ayolo committed
125 126 127
    $frm->add_submit("next","Etape suivante");

    $cts->add($frm);
128

Feu's avatar
Feu committed
129
    $cts->add_paragraph("Les informations recueillies font l'objet d'un traitement informatique. Conformément à la loi « informatique et libertés » du 6 janvier 1978, vous bénéficiez d'un droit d'accès et de rectification aux informations qui vous concernent. Si vous souhaitez exercer ce droit et obtenir communication des informations vous concernant, veuillez vous adresser par courrier éléctronique à ae arroba utbm point fr ou par courrier postal à ae utbm, 6 Boulevard Anatole France, 90000 Belfort.");
130

Feu's avatar
Feu committed
131 132 133 134
    $list = new itemlist("Voir aussi");
    $list->add("<a href=\"article.php?name=docs:inscription\">Documentation : Inscription</a>");
    $list->add("<a href=\"article.php?name=docs:inscription\">Documentation : Inscription : Questions et problèmes fréquents</a>");
    $list->add("<a href=\"article.php?name=docs:index\">Documentation</a>");
135 136 137 138
    $cts->add($list,true);


    $site->add_contents($cts);
Ayolo's avatar
Ayolo committed
139 140 141 142 143
    $site->end_page();
    exit();
  }
}

Feu's avatar
Feu committed
144 145 146 147 148 149 150 151 152
$only_mode=null;
if ( isset($_REQUEST["only_mode"]) )
{
  $only_mode = $_REQUEST["only_mode"];
  if ( $only_mode == "futurutbm" )
    $only_mode = "nonutbm";
  $mode = $only_mode;
}

Ayolo's avatar
Ayolo committed
153 154 155 156 157 158
$site->start_page("services","Inscription");

$cts = new contents("Inscription : Etape 1/3");

$cts->add_paragraph("Vous êtes sur le point d'ouvrir un compte sur le site de l'association des etudiants de l'utbm.");

Feu's avatar
fix  
Feu committed
159
if ( is_null($only_mode) || $only_mode == "utbm" )
Feu's avatar
Feu committed
160 161 162 163 164 165 166 167 168 169
{
  $ctsutbm = new contents("Etudiant à l'utbm ou membre du personnel de l'utbm");
  $ctsutbm->add_paragraph("Pour pouvoir procéder à votre inscription vous devez posséder une adresse e-mail personnelle utbm.fr et y avoir accès. Votre inscription sera soumise à modération.");
  $frm = new form("utbm","newaccount.php?mode=utbm",true);
  if ( isset($Erreur) && $mode == "utbm" )
    $frm->error($Erreur);
  $frm->add_text_field("nom","Votre nom","",true);
  $frm->add_text_field("prenom","Votre prenom","",true);
  $frm->add_text_field("email","Votre adresse email utbm","@utbm.fr",true);
  $frm->add_select_field("role","Votre fonction",$GLOBALS["utbm_roles"]);
170
  $frm->add_checkbox("agree","J'ai lu et j'accepte le <a href=\"article.php?name=legals:rinfo\">réglement informatique</a>",false);
Feu's avatar
Feu committed
171 172 173 174 175
  $frm->add_submit("next","Etape suivante");
  $ctsutbm->add($frm);
  $cts->add($ctsutbm,true,true, "secutbm", false, true, $mode == "utbm", false);
}

Feu's avatar
fix  
Feu committed
176
if ( is_null($only_mode) || $only_mode == "etu" )
Feu's avatar
Feu committed
177 178 179 180 181 182 183 184
{
  $ctsetu = new contents("Etudiant dans l'aire urbaine, ou dans une université de technologie");
  $ctsetu->add_paragraph("Pour pouvoir procéder à votre inscription vous devez posséder une adresse e-mail personnelle valide, votre inscription sera soumise à modération, vous pourrez cependant accèder à quelques services en attendant.");
  $frm = new form("etu","newaccount.php?mode=etu",true);
  if ( isset($Erreur) && $mode == "etu" )
    $frm->error($Erreur);
  $frm->add_text_field("nom","Votre nom","",true);
  $frm->add_text_field("prenom","Votre prenom","",true);
Feu's avatar
Feu committed
185
  $frm->add_text_field("email","Votre adresse email (pas utbm.fr)","",true);
Feu's avatar
Feu committed
186
  $frm->add_select_field("ecole","Votre ecole",array("utt","utc","iut"));
187
  $frm->add_checkbox("agree","J'ai lu et j'accepte le <a href=\"article.php?name=legals:rinfo\">réglement informatique</a>",false);
Feu's avatar
Feu committed
188 189 190 191
  $frm->add_submit("next","Etape suivante");
  $ctsetu->add($frm);
  $cts->add($ctsetu,true,true, "secetu", false, true, $mode == "etu", false);
}
Feu's avatar
Feu committed
192

Feu's avatar
fix  
Feu committed
193
if ( is_null($only_mode) || $only_mode == "nonutbm" )
Feu's avatar
Feu committed
194 195 196 197 198 199 200 201
{
  $ctsnonutbm = new contents("Personnes tierces ou futur étudiant");
  $ctsnonutbm->add_paragraph("Pour pouvoir procéder à votre inscription vous devez posséder une adresse e-mail personnelle valide, votre inscription sera soumise à modération. Vous pourrez accéder au forum, à l'e-boutic et à jobétu.");
  $frm = new form("nonutbm","newaccount.php?mode=nonutbm",true);
  if ( isset($Erreur) && $mode == "nonutbm" )
    $frm->error($Erreur);
  $frm->add_text_field("nom","Votre nom","",true);
  $frm->add_text_field("prenom","Votre prenom","",true);
Feu's avatar
Feu committed
202
  $frm->add_text_field("email","Votre adresse email (pas utbm.fr)","",true);
203
  $frm->add_checkbox("agree","J'ai lu et j'accepte le <a href=\"article.php?name=legals:rinfo\">réglement informatique</a>",false);
Feu's avatar
Feu committed
204 205 206 207
  $frm->add_submit("next","Etape suivante");
  $ctsnonutbm->add($frm);
  $cts->add($ctsnonutbm,true,true, "secnonutbm", false, true, $mode == "nonutbm", false);
}
Feu's avatar
Feu committed
208 209 210 211 212 213 214 215

$list = new itemlist("Voir aussi");
$list->add("<a href=\"article.php?name=docs:inscription\">Documentation : Inscription</a>");
$list->add("<a href=\"article.php?name=docs:inscription\">Documentation : Inscription : Questions et problèmes fréquents</a>");
$list->add("<a href=\"article.php?name=docs:index\">Documentation</a>");
$cts->add($list,true);


Ayolo's avatar
Ayolo committed
216 217 218 219
$site->add_contents($cts);

$site->end_page();

Ayolo's avatar
Ayolo committed
220
?>