|
|
(35 versions intermédiaires par 10 utilisateurs non affichées) |
Ligne 1 : |
Ligne 1 : |
| == Structure du site == | | {{Archive|KrankizIII est opérationnel. (janvier 2013)}} |
| | {{menu Frankiz}} |
| | = Projet = |
| | Frankiz 3 est la nouvelle version de Frankiz (actuellement en version 2) qui est en développement depuis le 29 septembre 2007, à 13:02:41. Il s'agit d'un refonte complète du site basée sur le core du site polytechnique.org, plat/al. |
|
| |
|
| On travaille avec platal, ce qui a imposé une certaine modification de la structure de dossiers.
| | Cette nouvelle version introduira de nombreuses fonctionnalités comme : |
| | * la gestion de groupes (binets, cellule dans un binet, cours, PC/TD, section, compagnie, promo, école, etc.) et des outils basés sur cette architecture (annonces/activités/sondage/... au sein d'un groupe), |
| | * un calendrier personnel affichant toutes les activités des différents groupe auquel appartient l'utilisateur, |
| | * et bien d'autres choses encore... |
|
| |
|
| * '''bin''' : contient les scripts utilisés par frankiz
| | Il est à noter que Frankiz 3 sera fait pour accueillir des utilisateurs de différentes formations : X, doctorants, masters, PEI mais aussi des autres écoles du plateau comme Supop, l'ENSTA, etc. |
|
| |
|
| * '''classes''' : contient les classes spécifiques à frankiz, ainsi que la classe platalglobals.php (dérivée à partir de platalglobals.php.in), qui contient une partie de la conf
| | = Développement et documentation = |
|
| |
|
| * '''core''' : contient le core de plat/al, voir ci-après la partie 'git-submodule'
| | Le site du développement est sous Trac : http://trac.binets.frankiz.net/frankiz |
|
| |
|
| * '''configs''' : contient les fichiers de config ; générer les versions utilisées à l'aide du Makefile [non encore implémenté]
| | == Historique == |
| | Premier commit, par {{u|Elscouta}} : {{c|cbc2dba1 (Elscouta), Sat Sep 29 13:02:41 2007 : premier commit sur fkz3}} |
|
| |
|
| * '''htdocs''' : les fichiers 'initiaux' et statiques :
| | [[Catégorie:Frankiz]] |
| ** frankiz.php, qui initie le site
| |
| ** .htaccess, qui contient les règles de réécriture (mettre à jour à partir de .htaccess.in quand on checkout sa version)
| |
| ** les skins, les images fixes, le fkz.opensearch.xml pour la barre de recherche, les CSS
| |
| | |
| * '''include''' : les fichiers à inclure (fonctions, ...)
| |
| | |
| * '''modules''' : les modules, i.e les différentes pages (profil, annonces, activités, ...)
| |
| | |
| * '''old''' : contient les fichiers de frankiz 2.x (0<x<5), à terme devra être vide.
| |
| | |
| * '''platal''' : un checkout de platal, au début pour avoir le core, à terme pour pouvoir y piquer des fonctions et des includes (avec du ln -s)
| |
| | |
| * '''plugins''' : contient les plugins smarty, à savoir les instructions de mise en forme des variables en sortie
| |
| | |
| * '''spool''' : le cache des templates, les données, ...
| |
| | |
| * '''templates''' : les templates, i.e la mise en forme des variables fournies par les fichiers dans les modules
| |
| | |
| * '''upgrades''' : contient les scripts d'upgrade de la bdd, des dossiers, ... pour passer d'une version à une autre
| |
| | |
| == Configuration ==
| |
| | |
| Pour fonctionner correctement, il faut :
| |
| * Récupérer le ''core'' de plat/al :
| |
| git submodule init
| |
| git submodule update
| |
| * mettre à jour les fichiers de '''configs''' (mettre les mots de passe pour les bdds, actualiser les adresses mail, ...)
| |
| * mettre en place classes/platalglobals.php à partir de platalglobals.php.in
| |
| * configurer le ''.htaccess'' dans '''htdocs'''
| |
| * s'assurer que le vhost est bien configuré :
| |
| ** Faire du rewrite de ''?vars'' vers ''frankiz.php?vars'' (sinon, le mettre dans le .htaccess)
| |
| ** ''include_path'' dans le ''php.ini'' contenant :
| |
| .:./include:../include:../../include
| |
| | |
| == Remarques ==
| |
| | |
| Cette partie sert à lister les remarques venant au cours de l'analyse du code de plat/al
| |
| | |
| === Généralités ===
| |
| | |
| === include/security.inc.php ===
| |
| * fonctions ''check_ip'' et ''check_email'' : décider si on la veut, et créer la BDD qui va bien
| |
| * fonctions ''check_account'' et ''check_redirect'' : les comprendre, et voir si on en veut
| |
| * fonction ''send_warning_mail'' : corriger les trucs nécessaire ; j'aime assez l'idée ([[User:Xelnor|Xelnor]])
| |
| * fonction ''kill_session'' : créer le script adéquat
| |
| * fonctions ''udate_NbValid'' et ''update_NbNotifs'' : adapter à notre structure (requêtes et notifications en attente)
| |
| | |
| === include/xorg.misc.inc.php ===
| |
| lien vers ''frankiz.misc.inc.php'' ; hack moche en attendant que ''classes/session.php'' n'y fasse plus référence
| |
| | |
| | |
| == Fonctionnement du site ==
| |
| Liste des fichiers appelés, dans l'ordre :
| |
| # '''htdocs/frankiz.php'''
| |
| ## appelle ''include/frankiz.inc.php''
| |
| ## Lance Plat/al (''platal->run()'')
| |
| ## Charge le wiki : ''include/wiki/engine.php''
| |
| # '''include/frankiz.inc.php''' :
| |
| ## Appelle ''include/platal.inc.php''
| |
| ## Appelle ''include/globals.inc.php''
| |
| ## Appelle ''include/frankiz/session.inc.php''
| |
| ## Définit la session
| |
| ## Initialise la page
| |
| ## Initialise la session
| |
| # '''include/platal.inc.php''' :
| |
| ## Définit l'autochargement de classes
| |
| ## Définit un certain nombre de fonctions (erreurs, encodage, redirection de page)
| |
| # '''include/globals.inc.php''' : définit la classe ''PlatalGlobals''
| |
| ## Contient la connexion à la bdd
| |
| ## Contient des fonctions de gestion de la configuration
| |
| # '''include/frankiz/session.inc.php''' :
| |
| ## Charge ''include/frankiz.misc.inc.php''
| |
| ## Définit les cookies, voir à remplacer par les fonctions de plat/al
| |
| ## Définit la classe FrankizSession, qui contient quelques anciennes fonctions, à réécrire.
| |
| # '''include/frankiz.misc.inc.php''' :
| |
| ## Définit des fonctions de gestion de caractères, de proximité sonore, de sécurité
| |