Browse the code

 

Differences between 0 and 1 on /.
Number of edited files: 5 (0 added, 0 deleted and 5 modified)
Revision 1

About 1 month and 0 day ago.

premi?re version du formulaire d'adh?sion
Added file(s) Deleted file(s) Modified file(s)

 

Old New Code
 
1
<?php
 
2
// Génération du captcha
 
3
$captcha = array(0 => array('Combien font deux + 3 ?', '5'),
 
4
                 1 => array('Quelle est la première lettre de cette phrase ?', 'Q'),
 
5
                 2 => array('Quelle est la couleur du cheval blanc d\'Henri IV ?', 'blanc'),
 
6
                 3 => array('Qui a écrit Le Capital ?', 'Karl Marx'),
 
7
                 4 => array('Quelle est la troisième lettre de XMPP ?', 'P'),
 
8
                 5 => array('Quelle est la quatrième lettre de Jabber ?', 'b'),
 
9
                 6 => array('Quelle est la dernière lettre de JabberFR ?', 'R'),
 
10
                 7 => array('Combien font trois retranchés de 3 ?', '0'),
 
11
                 8 => array('Quelle est la hauteur d\'un immeuble de 120 mètres ?', '120'),
 
12
                 9 => array('Combien y a-t-il de croisants dans un sachet de sept ?', '7'),
 
13
                 10 => array('Qui est l\'homme le plus classe du monde ?', 'George Abitbol'),
 
14
                 11 => array('À combien, en euros, s\'élève la cotisation d\'un membre actif ?', '5'),
 
15
                 12 => array('À combien, en euros, s\'élève la cotisation d\'un membre bienfaiteur ?', '15'),
 
16
                 13 => array('Quelle est la dernière lettre de notre code IBAN ?', 'H'));
 
17

                                    
 
18
$question = array_rand($captcha, 1);
 
19

                                    
 
20
// Formulaire d'envoi du mail
 
21
if (isset($_POST))
 
22
{
 
23
    $surname = $_POST['surname'];
 
24
    $name = $_POST['name'];
 
25
    $email = $_POST['email'];
 
26
    $jid = $_POST['jid'];
 
27
    $captcha_answer = $_POST['captcha_answer'];
 
28
    $captcha_id = (int)$_POST['captcha_id'];
 
29

                                    
 
30
    if (empty($captcha_answer) || $captcha_answer != $captcha[$captcha_id][1])
 
31
        $error = 'Hmm… Ne seriez-vous pas un robot ?';
 
32

                                    
 
33
    if (empty($surname) || empty($name) || empty($email) || empty($jid))
 
34
        $error = 'Aucun champs ne peut être laissé vide.';
 
35

                                    
 
36
    if (!isset($error))
 
37
    {
 
38
        $mailfrom = 'no-reply@jabberfr.org';
 
39
        $to = 'Trésorier de JabberFR <tresorier@jabberfr.org>';
 
40
        $subject = 'Nouvelle adhésion à l\'association';
 
41

                                    
 
42
        $text = "Nouvelle adhésion à l'association :\n\n".
 
43
                "Nom : ".$surname."\nPrénom : ".$name."\n".
 
44
                "Email : ".$email."\nJID : ".$jid."\n".
 
45
                "----";
 
46

                                    
 
47
        $text_ = wordwrap($text, 70);
 
48
        $headers = 'From: '.$mailfrom."\r\n".
 
49
        'Reply-To: '.$mailfrom."\r\n".
 
50
        'X-Mailer: PHP/'.phpversion()."\r\n".
 
51
        'MIME-Version: 1.0'."\r\n".
 
52
        'Content-type: text/plain; charset=utf-8'."\r\n";
 
53

                                    
 
54
        mail($to, $subject, $text_, $headers);
 
55
        $info = 'Votre adhésion a été enregistrée. N\'oubliez pas de payer votre cotisation !';
 
56
    }
 
57
}
 
58
?>
 
59
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 
60
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr_FR" xml:lang="fr_FR">
 
61
  <head>
 
62
    <title>JabberFR : informations et entraide francophone sur Jabber</title>
 
63
    <!-- Titre alternatif : « JabberFR, même Cédric a compris comment faire ! » -->
 
64
    <meta name="keywords" content="jabber, xmpp, aide, francais, france, francophone"/>
 
65
    <meta name="description" content="JabberFR : informations et entraide francophone sur Jabber"/>
 
66
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
 
67

                                    
 
68
    <link href="default.css" rel="stylesheet" type="text/css" />
 
69
    <link href="favicon.ico" rel="shortcut icon" />
 
70
  </head>
 
71
  <body>
 
72

                                    
 
73
    <div id="header">
 
74
      <a href="https://jabberfr.org"><img src="logo.png" alt="JabberFR"/></a>
 
75

                                    
 
76
      <!--
 
77
      <ul>
 
78
        <li>Adhérez à l'association</li>
 
79
      </ul>
 
80
      -->
 
81

                                    
 
82
      <h1>Information et entraide francophone sur Jabber/XMPP</h1>
 
83
    </div>
 
84

                                    
 
85
    <div id="leftcontent">
 
86
      <ul>
 
87
        <li><a href="https://news.jabberfr.org/">Actualités</a></li>
 
88
        <li><a href="https://planet.jabberfr.org">Agrégateur de blogs</a></li>
 
89
      </ul>
 
90
      <ul>
 
91
        <li><a href="https://wiki.jabberfr.org/">Documentation</a></li>
 
92
        <li><a href="https://forum.jabberfr.org/">Forum</a></li>
 
93
        <li><a href="https://chat.jabberfr.org/">Salons de discussion</a></li>
 
94
        <!-- <li><a href="">Annuaire</a></li> -->
 
95
      </ul>
 
96
      <ul>
 
97
        <li><a href="https://adhesion.jabberfr.org/">Adhérez</a></li>
 
98
      </ul>
 
99
    </div>
 
100

                                    
 
101
    <div id="content">
 
102
      <!--
 
103
      <div class="palette" style="background-color: #696969;"></div>
 
104
      <div class="palette" style="background-color: #B00000;"></div>
 
105
      <div class="palette" style="background-color: #C26A00;"></div>
 
106
      <div class="palette" style="background-color: #E07F0B;"></div>
 
107
      <div class="palette" style="background-color: #FFB015;"></div>
 
108
      <div class="palette" style="background-color: #F0F0F0;"></div>
 
109
      <div class="palette" style="background-color: #FBFBFB;"></div>
 
110
      -->
 
111

                                    
 
112
      <div id="page">
 
113
        <h1>Adhérez à l'association</h1>
 
114

                                    
 
115
        <p>
 
116
Si vous décidez de soutenir l'association JabberFR afin de l'aider à mener ses objectifs à bien, vous pouvez adhérer ! Le but de notre association est de <strong>mettre à disposition des services de messagerie instantanée libres</strong> à travers les serveurs gérés par l'association, de <strong>promouvoir les applications et services qui y sont liés</strong>, notamment grâce au wiki, ou par la présence de ses membres à des évènements publics, et enfin, d'améliorer l'existant en <strong>développant des logiciels ou composants lorsque le besoin est ressenti</strong>.
 
117
        </p>
 
118

                                    
 
119
        <p>
 
120
L'adhésion à notre association suppose que vous ayez lu les <a href="http://wiki.jabberfr.org/JabberFR:Statuts">statuts de l'association</a> et que vous soyez en accord avec notre <a href="http://wiki.jabberfr.org/JabberFR:Règlement_Intérieur">règlement intérieur</a>.
 
121
        </p>
 
122

                                    
 
123
        <h2>Formulaire d'adhésion</h2>
 
124

                                    
 
125
        <form action="" method="post">
 
126

                                    
 
127
        <?php if (!isset($info)) { ?>
 
128
        <p>
 
129
          <label for="surname">Nom de famille :</label>
 
130
          <input type="text" name="surname" id="surname" value="<?php echo ((isset($surname)) ? $surname : ''); ?>" />
 
131
        </p>
 
132

                                    
 
133
        <p>
 
134
          <label for="name">Prénom :</label>
 
135
          <input type="text" name="name" id="name" value="<?php echo ((isset($name)) ? $name : ''); ?>" />
 
136
        </p>
 
137

                                    
 
138
        <p>
 
139
          <label for="email">Adresse email :</label>
 
140
          <input type="text" name="email" id="email" value="<?php echo ((isset($email)) ? $email : ''); ?>" />
 
141
        </p>
 
142

                                    
 
143
        <p>
 
144
          <label for="jid">Identifiant XMPP (JID) :</label>
 
145
          <input type="text" name="jid" id="jid" value="<?php echo ((isset($jid)) ? $jid : ''); ?>" />
 
146
        </p>
 
147

                                    
 
148
        <p>
 
149
          <label for="captcha">Captcha :</label>
 
150
          <input type="hidden" name="captcha_id" value="<?php echo $question; ?>" />
 
151
          <input type="text" name="captcha_answer" id="captcha" /><br />
 
152
          Répondez à cette question : <em><?php echo $captcha[$question][0]; ?></em>
 
153
        </p>
 
154

                                    
 
155
        <p>
 
156
          <input type="submit" value="J'adhère." />
 
157
        </p>
 
158

                                    
 
159
        <?php } ?>
 
160

                                    
 
161
        <?php
 
162
            if (isset($error) || isset($info))
 
163
            {
 
164
        ?>
 
165
          <p class="error">
 
166
<strong><?php echo ((isset($error)) ? $error : $info); ?></strong>
 
167
          </p>
 
168
        <?php
 
169
            }
 
170
        ?>
 
171

                                    
 
172
        </form>
 
173

                                    
 
174
        <h2>Paiement de la cotisation</h2>
 
175

                                    
 
176
        <p>
 
177
<strong>Attention :</strong> pour finaliser votre adhésion et être considéré comme membre à part entière et à jour de sa cotisation, vous devez vous acquiter de la cotisation annuelle : <strong>5€</strong> pour devenir un membre actif, ou <strong>15€</strong> pour devenir un membre bienfaiteur.
 
178
        </p>
 
179

                                    
 
180
        <p>
 
181
Merci de faire parvenir vos cotisations par virement bancaire à notre compte :
 
182
        </p>
 
183
        <p>
 
184
Titulaire du compte : <strong>JabberFR</strong><br />
 
185
BIC : <strong>PSSTFRPPLYO</strong><br />
 
186
IBAN : <strong>FR69 2004 1010 0715 9356 4H03 818</strong><br />
 
187
        </p>
 
188

                                    
 
189
        <p style="font-size: 0.8em;">
 
190
          <em>
 
191
Nous vous rappelons que vous disposez d'un droit d'accès, de modification, de rectification et de suppression des données qui vous concernent (art. 34 de la loi « Informatique et Libertés » du 6 janvier 1978).
 
192
          </em>
 
193
        </p>
 
194

                                    
 
195
      </div>
 
196
    </div>
 
197

                                    
 
198
<!--
 
199
    <div id="footer">
 
200
      <a href="http://apinc.org"><img src="apinc.png" alt="Hébergé par l'APINC" /></a>
 
201

                                    
 
202
      <h1>JabberFR</h1>
 
203

                                    
 
204
      <ul>
 
205
        <li><a href="">Mentions légales</a></li>
 
206
        <li><a href="">Contact</a></li>
 
207
        <li><a href="">Statistiques</a></li>
 
208
      </ul>
 
209
    </div>
 
210
-->
 
211

                                    
 
212
  </body>
 
213
</html>
0
214

                                        

 

Old New Code
 
1
* {
 
2
  border: 0;
 
3
  margin: 0;
 
4
  padding: 0;
 
5
  font-family: "DejaVu sans", Verdana, sans-serif;
 
6
  font-size: 1.0em;
 
7
  background: transparent;
 
8
}
 
9

                                    
 
10
@font-face {
 
11
  font-family: CantaReg;
 
12
  src: url('Cantarell-Regular.otf');
 
13
}
 
14

                                    
 
15
body {
 
16
  background: #fbfbfb;
 
17
  color: #000;
 
18
}
 
19

                                    
 
20
a:link, a:visited {
 
21
  color: #C26A00;
 
22
  background: transparent;
 
23
  text-decoration: none;
 
24
}	
 
25

                                    
 
26
a:hover {
 
27
  color: #E07F0B;
 
28
  background: transparent;
 
29
  text-decoration: none;
 
30
}
 
31

                                    
 
32
#header {
 
33
  padding-right: 10px;
 
34
  background-color: #f0f0f0;
 
35
  border-bottom: 1px #CCCCCC solid;
 
36
  height: 50px;
 
37
}
 
38

                                    
 
39
#header img {
 
40
  position: absolute;
 
41
  width: 120px;
 
42
  margin-left: 30px;
 
43
  margin-top: 10px;
 
44
  margin-bottom: 5px;
 
45
}
 
46

                                    
 
47
#header h1 {
 
48
  position: relative;
 
49
  margin-left: 200px;
 
50
  padding-top: 12px;/*15*/
 
51
  color: #C26A00;
 
52
  font-family: "CantaReg", "Cantarell";
 
53
  font-size: 1.3em;
 
54
}
 
55

                                    
 
56
#header ul {
 
57
  float: right;
 
58
  list-style-image: none;
 
59
  list-style-type: none;
 
60
  margin-right: 30px;
 
61
}
 
62

                                    
 
63
#header ul li {
 
64
  float: left;
 
65
  line-height: 47px; 
 
66
  font-size: 0.88em;
 
67
  font-weight: bold;
 
68
  letter-spacing: -1px;
 
69
  text-decoration: none;
 
70
  color: #C26A00;
 
71
  text-shadow: #f0f0f0 0px 0px 10px;
 
72
  -moz-transition: color 250ms ease-out;
 
73
  transition: color 250ms ease-out;
 
74
  padding-left: 20px;
 
75
}
 
76

                                    
 
77
#header h1 {
 
78
  /*width: 500px;*/
 
79
}
 
80

                                    
 
81
#leftcontent {
 
82
  position: absolute;
 
83
  width: 200px;
 
84
  padding-top: 20px;
 
85
}
 
86

                                    
 
87
#leftcontent ul {
 
88
  padding-bottom: 20px;
 
89
  list-style-image: none;
 
90
  list-style-type: none;
 
91
  margin-left: 25px;
 
92
}
 
93

                                    
 
94
#leftcontent ul li a {
 
95
  display: block;
 
96
  padding-top: 7px;
 
97
  padding-bottom: 7px;
 
98
  padding-left: 7px;
 
99
  color: #696969;
 
100
  font-size: 0.9em;
 
101
}
 
102

                                    
 
103
#leftcontent ul li a:hover {
 
104
  color: #FFFFFF;
 
105
  background-color: #696969;
 
106
}
 
107

                                    
 
108
#content {
 
109
  border-left: 1px #CCCCCC solid;
 
110
  border-bottom: 1px #CCCCCC solid;
 
111
  position: relative;
 
112
  margin-left: 200px;
 
113
  min-height: 400px;
 
114
  background-color: #fff;
 
115
}
 
116

                                    
 
117
#content .palette {
 
118
  height: 1px;
 
119
  width: auto;
 
120
}
 
121

                                    
 
122
#content #page {
 
123
  /*margin-top: 10px;*/
 
124
  padding-top: 20px;
 
125
  margin-left: 15px;
 
126
  margin-right: 15px;
 
127
  padding-bottom: 30px;
 
128
  font-size: 0.95em;
 
129
}
 
130

                                    
 
131
h1 {
 
132
  color: #B00000;
 
133
  margin-left: 10px;
 
134
  font-weight: bold;
 
135
  margin-bottom: 10px;
 
136
  font-size: 1.2em;
 
137
}
 
138

                                    
 
139
h2 {
 
140
  color: #C26A00;
 
141
  margin-left: 5px;
 
142
  font-weight: bold;
 
143
  margin: 15px;
 
144
  font-size: 1.05em;
 
145
}
 
146

                                    
 
147
p {
 
148
  margin-top: 10px;
 
149
  text-align: justify;
 
150
}
 
151

                                    
 
152
p.error {
 
153
  border: 2px #C26A00 solid;
 
154
  margin-top: 20px;
 
155
  margin-bottom: 20px;
 
156
  width: 500px;
 
157
  display: block;
 
158
  margin-left: auto;
 
159
  margin-right: auto;
 
160
  text-align: center;
 
161
  padding: 20px;
 
162
}
 
163

                                    
 
164
label {
 
165
  width: 14em;
 
166
  display: inline-block;
 
167
  font-weight: bold;
 
168
}
 
169

                                    
 
170
input {
 
171
  border: 1px #C26A00 solid;
 
172
  padding: 5px;
 
173
  color: #B00000;
 
174
}
 
175

                                    
 
176
input[type="submit"] {
 
177
  background-color: #C26A00;
 
178
  color: #fff;
 
179
}
 
180

                                    
 
181
#footer {
 
182
  position: absolute;
 
183
  bottom: 0;
 
184
  width: 100%;
 
185
  height: 60px;
 
186
  margin-top: 50px;
 
187
  border-top: 1px #CCCCCC solid;
 
188
  background-color: #F0F0F0;
 
189
  padding-top: 10px;
 
190
}
 
191

                                    
 
192
#footer h1 {
 
193
  font-size: 1.2em;
 
194
  color: #363636;
 
195
}
 
196

                                    
 
197
#footer ul {
 
198
  list-style-image: none;
 
199
  list-style-type: none;
 
200
  padding-left: 30px;
 
201
}
 
202

                                    
 
203
#footer ul li {
 
204
  float: left;
 
205
}
 
206

                                    
 
207
#footer ul li a {
 
208
  font-size: 0.88em;
 
209
  letter-spacing: -1px;
 
210
  text-decoration: none;
 
211
  color: #8e8e8e;
 
212
  margin-right: 20px;
 
213
}
 
214

                                    
 
215
#footer ul li a:hover {
 
216
  color: #696969;
 
217
}
 
218

                                    
 
219
#footer img {
 
220
  float: right;
 
221
  padding-right: 10px;
 
222
}
0
223