color: inherit;
border: 1px solid #336699;
border-collapse: collapse;
+ width: 98%;
}
table.bicol tr.impair {}
table.bicol tr.pair {
border-right: 1px solid gray;
text-align: center;
font-family: "MS Sans Serif", sans-serif;
+ padding-top: 4px;
}
#body-top {
#content {
width: 600px;
- padding: 4px 10px 4px 10px;
+ padding: 4px 0px 4px 16px;
font-size: 95%;
}
<?php
require("auto.prepend.inc.php");
+if(logged())
+ header("Location: login.php");
new_skinned_page('index.tpl', AUTH_PUBLIC);
$page->display();
<?php
require("auto.prepend.inc.php");
-new_skinned_page('index.tpl', AUTH_COOKIE);
+new_skinned_page('login.tpl', AUTH_COOKIE, 'login.head.tpl');
+$param=mysql_query("SELECT date,naissance FROM auth_user_md5 WHERE user_id={$_SESSION['uid']};");
+list($date,$naissance) = mysql_fetch_row($param);
+mysql_free_result($param);
+
+if ($date=="1999-12-31") {
+ $page->assign('date', $date);
+ $page->display('non-inscrit');
+ exit;
+}
+
+if ($naissance==0) {
+ $page->assign('ask_naissance', true);
+ $page->display('ask-naissance');
+ exit;
+}
+
+// incitation à mettre à jour la fiche
+
+$res = mysql_query("SELECT date FROM auth_user_md5 WHERE user_id=".$_SESSION["uid"]);
+list($d) = mysql_fetch_row($res);
+$date_maj = mktime(0, 0, 0, substr($d, 5, 2), substr($d, 8, 2), substr($d, 0, 4));
+if(( (time() - $date_maj) > 60 * 60 * 24 * 400)) { // si fiche date de + de 400j;
+ $page->assign('fiche_incitation', $d);
+}
+
+// incitation à mettre une photo
+
+$res = mysql_query("SELECT 1 FROM photo WHERE uid=".$_SESSION["uid"]);
+if (mysql_num_rows($res) == 0)
+ $page->assign('photo_incitation', true);
+mysql_free_result($res);
+
+// affichage de la boîte avec quelques liens
+$res = mysql_query("SELECT id FROM newsletter ORDER BY date DESC");
+list($nb) = mysql_fetch_row($res);
+mysql_free_result($res);
+
+$publicite = Array(Array(), Array());
+$publicite[0]["motdepassemd5.php"] = "Changer mon mot de passe";
+$i = rand(0, 1);
+switch ($i) {
+ case 0 :
+ $publicite[0]["newsletter.php?nl_id=$nb"]="Afficher la dernière newsletter"; break;
+ case 1 :
+ $publicite[0]["http://asso.polytechnique.org\" target=\"new"]="Vers les autres sites polytechniciens"; break;
+}
+$i = rand(0, 1);
+switch ($i) {
+ case 0 :
+ $publicite[1]["trombipromo.php?xpromo={$_SESSION["promo"]}"]="Voir le trombi de ma promo"; break;
+ case 1 :
+ $publicite[1]["banana/"]="Un petit tour du côté des forums !!"; break;
+}
+$publicite[1]["dons.php"] = "Faire un don à l'association Polytechnique.org";
+$page->assign_by_ref('publicite', $publicite);
+
+
+//affichage des evenements
+// annonces promos triées par présence d'une limite sur les promos
+// puis par dates croissantes d'expiration
+$res = mysql_query(
+ "SELECT e.id,e.titre,e.texte,a.username,a.nom,a.prenom,a.promo
+ FROM evenements AS e INNER JOIN auth_user_md5 AS a
+ ON e.user_id=a.user_id
+ WHERE FIND_IN_SET(flags, 'valide') AND peremption >= NOW()
+ AND (e.promo_min = 0 || e.promo_min <= {$_SESSION['promo']})
+ AND (e.promo_max = 0 || e.promo_max >= {$_SESSION['promo']})
+ ORDER BY (e.promo_min != 0 AND e.promo_max != 0) DESC, e.peremption");
+$evenement = Array();
+while($evenement[] = mysql_fetch_assoc($res));
+@array_pop($evenement);
+mysql_free_result($res);
+$page->assign_by_ref('evenement', $evenement);
+
+setlocale(LC_TIME, "fr_FR");
$page->display();
?>
break;
case AUTH_COOKIE:
$page = new XorgCookie($tpl_name, $type);
+ break;
case AUTH_MDP:
$page = new XorgAuth($tpl_name, $type);
}
<?php
require("diogenes.core.page.inc.php");
-function dynamic($param, $content, &$smarty) {
- return $content;
-}
+function block_dynamic($param, $content, &$smarty) { return $content; }
+
+function function_dyn($params) { return implode(' ',$params); }
class XorgPage extends DiogenesCorePage {
var $_page_type;
$this->_tpl = $tpl;
$this->DiogenesCorePage();
- $this->register_block('dynamic', 'dynamic', false);
+ $this->register_block('dynamic', 'block_dynamic', false);
+ $this->register_function('dyn', 'function_dyn', false);
// if necessary, construct new session
if (!session_is_registered('session')) {
$this->set_skin();
}
- function display() {
+ function display($append_to_id="") {
+ $id = $this->make_id() . ($append_to_id ? "-$append_to_id" : "");
if($this->_page_type == POPUP)
- parent::display('skin/'.$_SESSION['skin_popup'], $this->make_id());
+ parent::display('skin/'.$_SESSION['skin_popup'], $id);
else
- parent::display('skin/'.$_SESSION['skin'], $this->make_id());
+ parent::display('skin/'.$_SESSION['skin'], $id);
}
function make_id() {
global $failed_ORGaccess,$site_dev;
if(isset($_COOKIE['ORGaccess']) and isset($_COOKIE['ORGlogin']) and !isset($failed_ORGaccess)) {
+ $page->_tpl = "password_prompt_logged.tpl";
$page->assign("xorg_head", "password_prompt_logged.head.tpl");
$page->assign("xorg_tpl", "password_prompt_logged.tpl");
$page->display();
} else {
- if (isset($_COOKIE['ORGlogin'])) {
- $pre = strtok($_COOKIE['ORGlogin'],".");
- $pre1=strtok($pre,"-");
- $pre2=strtok(" ");
- $pre1=ucfirst($pre1);
- $pre2=ucfirst($pre2);
- if ($pre2) {
- $prenom = $pre1."-".$pre2;
- } else {
- $prenom = $pre1;
- }
- $page->assign('prenom',$prenom);
- }
+ $page->_tpl = "password_prompt.tpl";
$page->assign("xorg_head", "password_prompt.head.tpl");
$page->assign("xorg_tpl", "password_prompt.tpl");
$page->display();
+{* $Id: deconnexion.tpl,v 1.2 2004-01-26 12:36:32 x2000habouzit Exp $ *}
+
<div class="rubrique">
Déconnexion effectuée
</div>
<p class="normal">
<b>Merci et à bientôt !</b>
</p>
+
+{* vim:set et sw=2 sts=2 sws=2: *}
--- /dev/null
+{* $Id: form_naissance.tpl,v 1.1 2004-01-26 12:36:32 x2000habouzit Exp $ *}
+<div class="rubrique">
+ Date de naissance
+</div>
+
+<form action="profil2.php" method="post">
+ <p class="normal">
+ Avant d'accéder à ton profil pour la première fois, tu dois donner
+ ta date de naissance au format JJMMAAAA. Elle ne sera plus demandée
+ par la suite et ne pourra être changée. Elle servira en cas de
+ perte du mot de passe comme sécurité supplémentaire, et uniquement
+ à cela. Elle n'est jamais visible ou lisible.
+ </p>
+ <br />
+ <div align="center">
+ <table class="bicol" border="0" cellpadding="4" cellspacing="0"
+ summary="Formulaire de naissance" width="60%">
+ <tr>
+ <th colspan="2">
+ Date de naissance
+ </th>
+ </tr>
+ <tr>
+ <td>
+ <b>Date</b> (JJMMAAAA)
+ </td>
+ <td>
+ <input type="text" size="8" maxlength="8" name="birth">
+ </td>
+ </tr>
+ <tr>
+ <td align="center" colspan="2">
+ <input type="submit" value="Enregistrer" name="submit">
+ </td>
+ </tr>
+ </table>
+ </div>
+</form>
+
+{* vim:set et sw=2 sts=2 sws=2: *}
-{* index.head.tpl *}
+{* $Id: index.head.tpl,v 1.2 2004-01-26 12:36:32 x2000habouzit Exp $ *}
{literal}
<style type="text/css" media="screen,print">
<!--
</style>
{/literal}
{* vim:set et sw=2 sts=2 sws=2: *}
-{* $Id: index.head.tpl,v 1.1 2004-01-25 17:19:21 x2000habouzit Exp $ *}
-{* index.tpl *}
+{* $Id: index.tpl,v 1.2 2004-01-26 12:36:32 x2000habouzit Exp $ *}
+
<div class="rubrique">
Bienvenue sur le portail des élèves et anciens élèves de l'X !
</div>
<strong>Bonne visite !</strong>
<br /><cite>L'équipe Polytechnique.org</cite>
</p>
+
{* vim:set et sw=2 sts=2 sws=2: *}
-{* $Id: index.tpl,v 1.1 2004-01-25 17:19:21 x2000habouzit Exp $ *}
--- /dev/null
+{* $Id: login.head.tpl,v 1.1 2004-01-26 12:36:32 x2000habouzit Exp $ *}
+
+{literal}
+ <style type="text/css" media="screen">
+ <!--
+ div.dernierlogin {font-size: smaller;}
+ p.loinenbas {margin-top: 3em;}
+ p.warning { font-size: 80%; font-style: italic; }
+ table.bicol td.info { padding: 0.5em 0.5em 0.5em 0.5em; width: 50%; }
+ -->
+ </style>
+{/literal}
+
+{* vim:set et sw=2 sts=2 sws=2: *}
--- /dev/null
+{* $Id: login.tpl,v 1.1 2004-01-26 12:36:32 x2000habouzit Exp $ *}
+
+{if $date}
+ <div class="rubrique">
+ Assistant première connexion
+ </div>
+ <p class="normal">
+ Le programme a détecté que tu te connectes pour la première fois
+ sur ce site. Un certain nombre de paramètres ne sont donc pas à
+ jour pour fonctionner correctement. La plupart se mettront eux-mêmes
+ à jour sans que tu t'en aperçoives, mais d'autres nécessitent
+ ton intervention.
+ </p>
+ <p class="loinenbas">
+ <a href="profil.php">Clique ici pour continuer.</a>
+ </p>
+{elseif $naissance}
+{include file=form_naissance.tpl}
+{else}
+
+<div class="rubrique">Bienvenue {dyn s=$smarty.session.prenom} :o)
+ </div>
+ <div class="dernierlogin">
+ Ta connexion précédente date du
+ <strong>{dyn s=$smarty.session.lastlogin|date_format:"%x, %T"}</strong>
+ depuis la machine <strong>{dyn s=$smarty.session.host}</strong>
+ </div>
+
+{if $fiche_incitation}
+{dynamic}
+ <p class="normal">La dernière mise à jour de ta
+ <a href="javascript:x()" onclick="popWin('x.php?x={$smarty.session.username}">fiche</a>
+ date du {$fiche_incitation|date_format:"%x"}.
+ Il est possible qu'elle ne soit pas à jour.
+ Si tu souhaites la modifier, <a href=\"profil.php\">clique ici !</a>
+ </p>
+{/dynamic}
+{/if}
+
+{if $photo_incitation}
+{dynamic}
+ <p class="normal">
+ Tu n'as pas mis de photo de toi sur ta fiche, c'est dommage.
+ Clique <a href="javascript:x()" onclick="popWin('trombino.php','trmb','toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=1,width=750,height=480')">ici</a>
+ si tu souhaites en ajouter une.
+ </p>
+{/dynamic}
+{/if}
+
+<br />
+
+{dynamic}
+ <table class="bicol">
+ <tr class="pair">
+{foreach item=links from=$publicite}
+ <td class="info">
+{foreach key=url item=text from=$links}
+ <a href="{$url}">{$text}</a><br />
+{/foreach}
+ </td>
+{/foreach}
+ </tr>
+ </table>
+
+ {foreach item=ev from=$evenement}
+ <br />
+
+ <table class="bicol">
+ <tr>
+ <th><a name="newsid{$ev.id}">{$ev.titre|nl2br}</a></th>
+ </tr>
+ <tr class="{cycle values="impair,pair"}">
+ <td class="info">
+ {$ev.texte|nl2br}
+ <br />
+ <p class="warning">Annonce proposée par
+ <a href="javascript:x()" onclick="popWin('x.php?x={$ev.username}')">
+ {$ev.prenom} {$ev.nom} X{$ev.promo}
+ </a>
+ </p>
+ </td>
+ </tr>
+ </table>
+ {/foreach}
+{/dynamic}
+
+ <p class="warning">
+ Nota Bene : les informations présentées ici n'engagent que leurs auteurs
+ respectifs et sont publiées à leur initiative. L'association Polytechnique.org
+ ne pourrait en aucun cas être tenue responsable de la nature des propos relatés
+ sur cet espace d'expression et d'information. Elle se réserve le droit de
+ refuser ou de retirer toute information de nature diffamante ou pouvant être
+ interprétée comme polémique par un membre de la communauté polytechnicienne.
+ <p>
+
+ <p class="normal">
+ <a href="evenements.php">Proposer une information événementielle</a>
+ </p>
+{/if}
+
+{* vim:set et sw=2 sts=2 sws=2: *}
+{* $Id: password_prompt.head.tpl,v 1.2 2004-01-26 12:36:32 x2000habouzit Exp $ *}
+
{literal}
<style type="text/css" media="screen">
<!--
{/literal}
<script language="javascript" src="{"javascript/md5.js"|url}" type="text/javascript"></script>
<script language="javascript" src="{"javascript/do_challenge_response.js"|url}" type="text/javascript"></script>
+
+{* vim:set et sw=2 sts=2 sws=2: *}
+{* $Id: password_prompt.tpl,v 1.3 2004-01-26 12:36:32 x2000habouzit Exp $ *}
<noscript>
<span class="erreur">
Ton navigateur n'accepte pas le javaScript !!
// -->
</script>
{/literal}
+
+{* vim:set et sw=2 sts=2 sws=2: *}
+{* $Id: password_prompt_logged.head.tpl,v 1.2 2004-01-26 12:36:32 x2000habouzit Exp $ *}
+
{literal}
<style type="text/css" media="screen">
<!--
{/literal}
<script language="javascript" src="{"javascript/md5.js"|url}" type="text/javascript"></script>
<script language="javascript" src="{"javascript/do_challenge_response.js"|url}" type="text/javascript"></script>
+
+{* vim:set et sw=2 sts=2 sws=2: *}
+{* $Id: password_prompt_logged.tpl,v 1.2 2004-01-26 12:36:32 x2000habouzit Exp $ *}
+
<div style="text-align:center">
<table width="90%" summary="Accès sécurisé">
<tr>
</table>
</div>
<br /><br />
-<form action="{$smarty.server.REQUEST_URI}" method="post" name="login" onSubmit='doChallengeResponse(); return false;'>
+<form action="{$smarty.server.REQUEST_URI}" method="post" id="login" name="login" onSubmit='doChallengeResponse(); return false;'>
<table class="bicol" align="center" cellpadding="4" summary="Formulaire de login">
<tr>
<td>
<!-- Set up the form with the challenge value and an empty reply value -->
<form action="{$smarty.server.REQUEST_URI}" method=post name="loginsub">
<input type="hidden" name="challenge" value="{$smarty.session.challenge}">
- <input type="hidden" name="username" value="{$smarty.cookie.ORGlogin}">
+ <input type="hidden" name="username" value="{$smarty.cookies.ORGlogin}">
<input type="hidden" name="response" value="">
</form>
-{/dynamic}
{literal}
<script language="JavaScript" type="text/javascript">
// -->
</script>
{/literal}
+{/dynamic}
+
+{* vim:set et sw=2 sts=2 sws=2: *}
-{* Bandeau fédérateur : style *}
+{* $Id: common.bandeau.head.tpl,v 1.3 2004-01-26 12:36:32 x2000habouzit Exp $ *}
+
{literal}
<!-- BANDEAU DEBUT -->
<style type="text/css">
<meta name="MSSmartTagsPreventParsing" content="true">
<!-- BANDEAU FIN -->
{/literal}
+
{* vim:set et sw=2 sts=2 sws=2: *}
-{* $Id: common.bandeau.head.tpl,v 1.2 2004-01-25 20:42:46 x2000habouzit Exp $ *}
-{* Bandeau : body *}
+{* $Id: common.bandeau.tpl,v 1.3 2004-01-26 12:36:32 x2000habouzit Exp $ *}
+
<!-- BANDEAU DEBUT -->
<!-- ligne grise de 1px -->
<table class="ligne" cellspacing="0" cellpadding="0" width="100%" border="0" summary=""><tr><td class="ligne"></td></tr></table>
<!-- BANDEAU FIN -->
+
{* vim:set et sw=2 sts=2 sws=2: *}
-{* $Id: common.bandeau.tpl,v 1.2 2004-01-25 20:42:46 x2000habouzit Exp $ *}
-{* foot par defaut *}
+{* $Id: common.footer.tpl,v 1.2 2004-01-26 12:36:32 x2000habouzit Exp $ *}
+
<p>
Copyright © 1999-2003 Association <a href="http://x-org.polytechnique.org/">Polytechnique.org</a>
-
</p>
{* vim:set et sw=2 sts=2 sws=2: *}
-{* $Id: common.footer.tpl,v 1.1 2004-01-25 17:19:21 x2000habouzit Exp $ *}
-{* head par defaut *}
+{* $Id: common.header.tpl,v 1.2 2004-01-26 12:36:32 x2000habouzit Exp $ *}
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta name="description" content="Le Portail des Polytechniciens" />
<meta name="keywords" content="Ecole polytechnique, anciens eleves, portail, alumni, AX, X, routage, reroutage, e-mail, email, mail" />
Anciens eleves Polytechnique, annuaire email, Alumni
</title>
<script language="JavaScript" type="text/javascript" src="javascript/getnow.js"></script>
+
{* vim:set et sw=2 sts=2 sws=2: *}
-{* $Id: common.header.tpl,v 1.1 2004-01-25 17:19:21 x2000habouzit Exp $ *}
-{* Skin par défaut *}
+{* $Id: default.tpl,v 1.3 2004-01-26 12:36:32 x2000habouzit Exp $ *}
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<div class="menu_item"><a href="{$menu_url|url}">{$menu_item}</a></div>
{/foreach}
{/foreach}
-{min_perms level=admin}{insert name="mkStats"}{/min_perms}
+{perms level=admin}{insert name="mkStats"}{/perms}
</td>
<td id="body-top">
<img src="images/sk_default_ban.jpg" alt="[ Polytechnique.org ]" />
</body>
</html>
{* vim:set et sw=2 sts=2 sws=2: *}
-{* $Id: default.tpl,v 1.2 2004-01-25 20:35:46 x2000habouzit Exp $ *}