function member_form($m, $errors, $mtype, $is_admin_context = false) { if ($errors) { ?> <div class="error"> <p>Votre formulaire comporte une ou plusieurs erreurs:</p> <ul class="errorlist"> <?php foreach ($errors as $e) { ?> <li><?php echo $e; ?> </li> <?php } ?> </ul> </div> <?php } ?> <p>Les champs en <b>gras</b> sont obligatoires.</p> <form method="post"> <?php if (isset($m['id'])) { ?> <input type="hidden" name="m" value="<?php echo $m['id']; ?> "> <?php } ?> <input type="hidden" name="member_type" value="<?php echo $mtype; ?> "> <?php $membership_type = isset($m['type']) ? $m['type'] : ''; if ($membership_type != '') { $membership_assoc = get_membership_info($membership_type); echo '<input type="hidden" name="membership_type_id" value="' . htmlspecialchars($membership_assoc['id']) . '">'; echo '<p><label>Type d\'abonnement: </label> '; echo htmlspecialchars($membership_assoc['title']) . ' à ' . my_currency_format($membership_assoc['amount']) . '</p>'; } else { echo '<p><label for="typeID">Type d\'abonnement: </label> '; echo '<select name="membership_type_id" id="typeID">'; $alltype = get_all_membership_info($mtype); foreach ($alltype as $type) { if ($type['amount'] != 0 || $type['id'] == $m['membership_type_id'] || $is_admin_context) { echo '<option '; if ($type['id'] == $m['membership_type_id']) { echo ' selected="selected"'; } echo ' value="' . htmlspecialchars($type['id']) . '">' . $type['title'] . ' (' . my_currency_format($type['amount']) . ')</option>' . "\n"; } } echo '</select>'; } ?> <table> <?php if ($mtype == 'individual') { ?> <tr> <td><b>Prénom</b>:</td> <td><input type="text" name="first_name" size="30" value="<?php echo $m['first_name']; ?> "></td> </tr> <tr> <td><b>Nom</b>:</td> <td><input type="text" name="last_name" size="30" value="<?php echo $m['last_name']; ?> "></td> </tr> <?php } else { ?> <tr> <td><b>Nom de l'organisation:</b></td> <td><input type="text" name="name" size="30" value="<?php echo $m['name']; ?> "></td> </tr> <?php } ?> <tr> <td><b>Courriel:</b></td> <td><input type="text" name="email" size="30" value="<?php echo $m['email']; ?> "></td> <td><div class="hint">Ce courriel sera ajouté automatiquement à une liste de diffusion (faible débit).</div></td> </tr> <tr> <td><b>Ville:</b></td> <td><input type="text" name="city" size="30" value="<?php echo $m['city']; ?> "></td> </tr> <tr> <td><b>Province:</b></td> <td> <select name="province"> <option value=""></option> <?php if (!isset($m['province'])) { $m['province'] = 'QC'; } // default province foreach (get_provinces() as $abb => $name) { ?> <option value="<?php echo $abb; ?> "<?php if ($abb == $m['province']) { ?> selected=""<?php } ?> ><?php echo $name; ?> </option> <?php } ?> </select> </td> </tr> <tr> <td>Adresse:</td> <td><input type="text" name="address" size="52" value="<?php echo $m['address']; ?> "></td> </tr> <tr> <td>Code postal:</td> <td><input type="text" name="postal_code" value="<?php echo $m['postal_code']; ?> "></td> </tr> <tr> <td>Téléphone:</td> <td><input type="text" name="phone" value="<?php echo $m['phone']; ?> "></td> <td></td> </tr> <tr> <td>Empreinte OpenPGP:</td> <td><input type="text" name="fingerprint" size="52" value="<?php echo $m['fingerprint']; ?> "></td> <td><div class="hint">Permettra de voter virtuellement.</div></td> </tr> <tr> <td><b>Mot de passe:</b></td> <td><input type="password" name="password"></td> <td><div class="hint">Vous permettra d'accéder ultérieurement à votre dossier.</div></td> </tr> <tr> <td><b>Répéter mot de passe:</b></td> <td><input type="password" name="password_repeat"></td> </tr> <?php if ($mtype == 'individual') { ?> <tr> <td>Appartenance:</td> <td> <select name="organization_id"> <option value="">Aucune</option> <?php $asso_result = get_organizations(); $org = mysql_fetch_assoc($asso_result); while ($org) { ?> <option value="<?php echo $org['member_id']; ?> "<?php if ($m['organization_id'] == $org['member_id']) { ?> selected=""<?php } ?> ><?php echo $org['organization_name']; ?> </option><?php $org = mysql_fetch_assoc($asso_result); } ?> </select> </td> <td><div class="hint">Ceci est à titre d'information seulement.</div></td> </tr> <?php } ?> <tr> <td></td><td><input type="submit" value="Procéder"></td> </tr> </table> </form> <?php }
/** * Display member information with his id * @param id member id * we quit fast if the member id is 0 or not found (return immediatly) */ function showMemberInfo($id) { if ($id === 0) { return; } $member = get_member($id); if (!$member) { return; } echo '<form method="post" action="index.php" accept-charset="iso8859-1" id="memberForm" onsubmit="return (this.email.value.length != 0); "><div class="formbox">'; if ($member['first_name'] != null) { $member['first_name'] = stripslashes($member['first_name']); $member['last_name'] = stripslashes($member['last_name']); $wikiname = $member['first_name'] . $member['last_name']; $wikiname = str_replace(array('-', ' ', '\'', '.'), '', $wikiname); $url = config('wiki_member_url') . rawurlencode(utf8_encode($wikiname)); // html escaped $html_first_name = htmlspecialchars($member['first_name']); $html_last_name = htmlspecialchars($member['last_name']); $html_wiki_url = $url; // already rawurlencode() + utf8 $html_wiki_name = htmlspecialchars($wikiname); ?> <p><label class="oblig">Prénom: </label> <?php echo $html_first_name; ?> </p> <p><label class="oblig">Nom: </label> <?php echo $html_last_name; ?> </p> <?php } elseif ($member['organization_name'] != null) { $member['organization_name'] = stripslashes($member['organization_name']); $wikiname = $member['organization_name']; $wikiname = str_replace(array('-', ' ', '\'', '.'), '', $wikiname); $url = config('wiki_member_url') . rawurlencode(utf8_encode($wikiname)); // to html $html_organization_name = htmlspecialchars($member['organization_name']); $html_wiki_url = $url; $html_wiki_name = htmlspecialchars($wikiname); ?> <p><label class="oblig">Nom: </label> <?php echo $html_organization_name; } $membership_type = isset($member['type']) ? $member['type'] : ''; $membership_assoc = get_membership_info($membership_type); if ($membership_type != '') { $html_membership_type = htmlspecialchars($membership_assoc['title']) . ' à ' . my_currency_format($membership_assoc['amount']); } else { $html_membership_type = ' - '; } // echo status ( flags & 1 == desactive ) $html_status = $member['flags'] & 1 ? 'Compte inactif' : 'Compte actif'; $html_email = htmlspecialchars(stripslashes($member['email'])); $html_city = htmlspecialchars(stripslashes($member['city'])); $html_address = htmlspecialchars(stripslashes($member['address'])); $html_postal_code = htmlspecialchars(stripslashes($member['postal_code'])); $html_phone = htmlspecialchars(stripslashes($member['phone'])); $html_fingerprint = htmlspecialchars(stripslashes($member['fingerprint'])); $html_id = htmlspecialchars(stripslashes($member['id'])); $html_affiliation_name = htmlspecialchars(stripslashes($member['affiliation_name'])); // date created $html_date_created = htmlspecialchars(format_date($member['date_created'])); // special case: province are a select list $optionsProvince = ''; foreach (get_provinces() as $abb => $name) { $optionsProvince .= '<option value="' . $abb . '"'; // selected or not? $optionsProvince .= $abb == $member['province'] ? 'selected="selected"' : ''; $optionsProvince .= '>' . htmlspecialchars($name) . '</option>' . "\n"; } ?> <p><label>Page wiki: </label><a href="<?php echo $html_wiki_url; ?> "><?php echo $html_wiki_name; ?> </a></p> <?php $enabled = ($member['flags'] & 1) == 0; $class = !$enabled ? 'disabled' : 'membre'; if ($member['expiry_date'] == 0) { $class = 'en attente de paiement'; } elseif (time() > $member['expiry_date']) { $class = 'expiré'; } $btnRenew = !$enabled && count(get_unpaid_invoices($member['id'])) == 0; ?> </p> <p><label>État: </label><?php echo $html_status; ?> (<?php echo $class; ?> ) <?php if ($btnRenew) { ?> <input type="button" value="Renouveler" onclick="window.location='../renouveler'"/><?php } ?> <p><label>Type d'abonnement: </label><?php echo $html_membership_type; ?> </a></p> <p><label class="oblig">Courriel: </label> <input type="text" name="email" size="30" value="<?php echo $html_email; ?> "></p> <p><label class="oblig">Ville: </label> <input type="text" name="city" size="30" value="<?php echo $html_city; ?> "></p> <p><label class="oblig">Province: </label> <select name="province"><option value=""></option><?php echo $optionsProvince; ?> </select></p> <p><label>Adresse: </label> <input type="text" name="address" size="52" value="<?php echo $html_address; ?> "></p> <p><label>Code postal: </label> <input type="text" name="postal_code" size="7" value="<?php echo $html_postal_code; ?> "></p> <p><label>Téléphone: </label> <input type="text" name="phone" size="12" value="<?php echo $html_phone; ?> "></p> <p><label>Empreinte OpenPGP: </label> <input type="text" name="fingerprint" size="52" value="<?php echo $html_fingerprint; ?> "></p> <p><label>Demande d'adhésion: </label> <span><?php echo $html_date_created; ?> </span></p> <p><label>ID: </label> <span><?php echo $html_id; ?> </span></p> <p><label>Appartenance: </label> <span><?php if ($html_affiliation_name == '') { echo "Aucune"; } else { echo $html_affiliation_name; } ?> </span></p> <p class="command"> <input type="submit" name="cmdSave" value="Modifier"> </p> </div></form> <?php }