Création/réparation du forum

Da NobodX Forum v2
Aide, documentation


+---------------------------------------------------------------
+---                     Da NobodX Forum                        
+---------------------------------------------------------------
+- Auteur : NobodX
+-
+- Site officiel : Nowhere
+- URL : http://dnf.fr.fm
+-
+- v 2.2

+- License d'utilisation (A LIRE) -+

Vous pouvez utiliser ce script du moment ou vous ne MODIFIEZ AUCUN CREDIT ET QUE VOUS NE RECOPIEZ PAS UNE PARTIE DE SON CODE.
Vous assumez la totale responsabilité de ce qui sera écrit ou fait à l'aide de ce programme, l'auteur décline toute responsabilité en cas de problèmes, même au niveau sécurité, fichier ou matériel. L'utilisation de ce programme OBLIGE l'acceptation de ce qui est écrit ci-dessus et vous ne devrez poser absolument aucun problème (plaintes ou autres) à l'auteur ce programme.
Toutes les marques ou sites cités ou vues dans ce forum appartienent à leurs propriétarires respectifs (comme Google).
Si vous acceptez cette license d'utilisation dans son intégralité, changez la valeur de $license dans la config par 27 (à partir de la page d'installation ou manuellement dans dnf/f/config.php).



+- Installation -+

Configuration requise : Hébergeur supportant le PHP4 (FONCTIONNE SANS BASE DE DONNÉE). iFrance (en hébergement gratuit) ne semble  pas compatible.

[A. Depuis votre PC]
1. Dézippez tout les fichiers dans un nouveau répertoire sur votre disque, et gardez l'option "Utiliser le nom des répertoires".

[B. Depuis votre logiciel FTP]
2. Envoyez tous les fichiers et les répertoires sur votre site.
3. Appliquez si possible un CHMOD 660 sur les répertoires "dnf/f", "dnf/sfm" et "dnf/topics", voire 777 en cas de problèmes. Voir le paragraphe FAQ ci-dessous pour plus d'informations.

[C. Depuis votre site]
4. Installez le forum automatiquement: Ouvrez install.php depuis votre navigateur et suivez les insctructions (3 étapes).
5. Créez votre premier topic sur forum.php pour tester.


Ce paragraphe explique brièvement les étapes d'installation.
Vous pouvez retrouver un guide beaucoup plus simple à cette adresse:

http://icecube.ovh.org/nowhere/installer_dnf/


+- Note à l'attention des utilisateurs de DNF version 1.x -+

Le forum reste compatible avec la version 2. Vous devez installer le nouveau forum dans le même répertoire que l'ancien (vous pourrez déplacer le forum après). Pour récupérer les topics et membres existants utilisez l'option "Conversion: Récuprérer les topics de DNF v1.0" lors de l'installation. Attention: l'ancien forum ne marchera plus et devra être supprimé.







+---------------------------------------------------------------
+---               Guide complet d'utilisation                  
+---------------------------------------------------------------
Ce qui suit vous renseigne sur le fonctionnement du forum,
vous n'en aurez pas besoin dans l'immédiat ;)
<< Ce fichier est aussi dispo depuis la page d'install en version HTML (ou presque) >>


+- FAQ - Question Frequemment Posées -+

>> Message "License d'utilisation non accepté"
Lisez la license ci-dessus et configurez le code dans config.php comme c'est marqué.

>> Message "Multipass non configuré"
Ouvrez config.php et mettez quelque chose pour le $MULTIPASS.

>> A quoi servent les CHMODs ?
Un CHMOD permet de donner ou d'interdire l'accès à un fichier. Il empêche ansi les utilisateurs de lire certaines informations sensibles. Si vous n'arrivez pas à appliquer un chmod 600, CE N'EST PAS GRAVE. Mais les adresses IP des visiteurs, le contenu des topics "Admins Only", "Mbs++ Only" et les messages privés ne seront pas forcément protégés contre la lecture. A partir de la version 2.2 le fichier .htaccess présent dans certains repertoires joue le même rôle de protection que le CHMOD (renvoie une erreur 403 à l'ouverture des dossiers protégés) si il est supporté par l'hébergeur.

>> Message "Alerte: Vos fichiers ne semblent pas posséder les bons CHMODS"
>> ou Message "Could not ... Permission Denied ..."
Vous devez appliquer un CHMOD 660 sur les répertoires "dnf/f", "dnf/sfm" et "dnf/topics", voire 777 chez certains hébergeurs.
[Pour appliquer un CHMOD] Connectez vous à votre site via votre client FTP (ex: CuteFTP), faites un clic droit sur le dossier et choisissez l'option "chmod" ou "permissions".

>> Message "Parse error in config.php on line XX"
Vous avez mal configuré le fichier config.php, le numéro de la ligne indique là où se trouve l'erreur.

>> Message "Error parsing dnf/f/forums.txt"
Vous avez fait une erreur en configurant la liste des forums.
Rendez vous sur install.php > installation et suivez bien l'exemple.

>> Je suis très rapidement déconnecté, ou le message "Vous n'êtes pas admin" apparait souvent
N'utilisez pas de frames sur votre forum, y compris celle d'ulimit (.fr.st, ...).
Baissez la sécurité de vos cookies (Internet Explorer 6)
IE6 > Outils > Options internet > Confidentialité > Niveau "Bas" voire "Accepter tout les cookies"




+- Personnalisation -+

Elle se fait depuis install.php via un petit module. Tout est expliqué.

[!] Même si ça vous démange évitez ça:
- mettre le forum dans une frame, avec ce module vous ferez beaucoup mieux, sinon ça supportera très mal les cookies.
- include("forum.php") ou insérer le code du forum dans une autre page créera beaucoup de bugs: include invalides, stockage des cookies, headers annulés.

Vous pouvez aussi personnaliser les couleurs à l'aide des fichiers forum_b.css et forum_w.css (voir le paragraphe consacré + bas).



+- Fonctionnement des fichiers de base du forum -+

Ils sont stockés dans /dnf/f/ et permettent au forum de fonctionner correctement.
Ils sont créés AUTOMATIQUEMENT à l'installation.

--+ membres.php +-- [Section membre du forum > Gestion forum > Membres]
Sur chaque ligne on trouve un utilisateur (en minuscules), il sont tous configurés comme étant des variables PHP, ex:
$pseudo = array('password'=>'mon_password', 'mail'=>'mon_email', 'citation'=>'ma_citation', 'logo'=>'<img src=monlogo.gif>', 'perms'=>'1', 'nb'=>'1', 'size'=>'height=10 width=20', 'nomail'=>'1', 'team'=>'Nom_de_la_Team');

password: le password, il n'est PAS crypté, d'ailleurs ça sert à rien niveau sécurité
mail:     adresse e-mail utilisée en cas de perte du password (antispam)
nomail:   (configuré par l'admin) il désactive l'envoi du password pour un utilisateur
citation: (configuré par l'admin) citation perso sinon système de grades
logo:     image au format HTML qui s'affiche en dessous du pseudo
perms:    cf la FAQ. 1=membre normal, 2=membres privilégié, 9=modérateur, 10=admin
nb:       numéro de la ligne + 1, utile pour posts.txt
size:     taille limitée pour le logo miniature qui s'affiche dans la barre

Options supplémentaires:
team:     voir le paragraphe sur les teams
e:        'e'=>'e' : cette personne est une fille (change l'image par défaut et les citations)
create:   date de création du pseudo [YYYYzzz] Y=année z=jour de l'année sur 3 chiffres (empêche l'édition des posts d'un membre supprimé puis recréé)

--+ config.php +-- [Install.php > Editer la config]
Vous avez déjà dû le voir lors de votre première installation, il contient tout ce qui peut être configuré (grades, etc...).

--+ posts.txt +-- [Section membre du forum > Gestion forum > Membres]
Nombre de posts de chaque membre, chaque ligne correspond à un utilisteur de membres.php (numéro de ligne = [nb] de l'utilisateur)

--+ topics_X.txt +-- [Install.php > Réparer le forum]
Il contient tout les topics du forum numéro X, ex:
TC(numéro,nb_reponses,modéré,smiley_nb,"auteur","titre");
numéro: numéro du topic
nb_reponses: nombre de reponses
modéré: si un modérateur y a interdit l'accèss [0/texte]
smiley_nb: numéro du smiley

--+ log.txt +--
C'est le log de toutes les actions importantes sur le forum (nouveau post, envoi de mail, etc).
Il donne les IPs des utilisateurs, et parfois des infos supplémentaires (navigateur, OS).
Ces informations sont utilisées quand on appelle la blackliste.
Il peut prendre une taille assez importante mais vos pouvez le vider : [Install.php > Vider le log].

--+ info.php +--
Donne le nombre de membres, vital pour le forum.

--+ infos_X.php +--
Donne le nombre de posts et de topics pour le forum numéro X, vital pour le forum.
Ces numéros sont utilisés sur la page d'acceuil.
Attention: Ces numéros ne doivent jamais descendre (sous peine d'écraser des topics existants).
C'est pour cela que vous ne verrez jamais ce nombre changer même si vous supprimez ou déplacez un topic.

--+ mailspam.txt +--
Bloque tout envoi de mail pendant une heure pour éviter les problèmes.

--+ time1.txt +--
Contient les dates de connexions des membres, nombre de secondes écoulées depuis l'an zéro (numéro de ligne = [nb] de l'utilisateur)

--+ time2.txt +--
Chaque connexion d'un visiteur ou d'un membre est loggée sur 2 lignes. La première c'est son adresse IP et la seconde la date suivie de |1 si il est sur le chat. Ce fichier est rafraichi automatiquement.

--+ fast_topics.txt +--
Il contient les 5 derniers topics sur le forum. Vous pouvez l'insérez dans votre site avec ce code :
<? readfile("repertoire_vers_forum/dnf/f/fast_topics.txt"); ?>
Ces liens ont la classe CSS "fast" (pour les personnaliser, ex: <style> .fast {color:blue;}</style> <? ... ?>)

--+ mailme.php +--
Adresses à mailer si il y a une réponse à leur topic.

--+ blackliste.txt +--
Un mot de type regexp sur chaque ligne. Si il est contenu dans le pseudo, l'IP ou le proxy, l'utilisateur sera refusé d'accès.

--+ forums.txt +--
Contient la liste des rubriques/forums. cf. install.php > Installation.



+- Répertoires -+

--+ Répertoire /dnf/sfm +--
C'est là que sont contenus les messages personnels des utilisateurs (SFM).
all.php est le fichier contenant le message général.

--+ Répertoire /dnf/topics +--
Il contient tout les topics.



+- Scripts -+

--+ forum.js +--
Javascript génère automatiquement le code pour la fin de chaque post (icones), la présentation des topics (tableau, titre), les lignes pour chaque topic et les flêches de participation.

--+ forum_w.css / forum_b.css +--
Feuilles de style. Contient l'essentiel des couleurs pour le design blanc ou noir. On peut personnaliser la motié du forum dans ces fichiers.
Les définitions de chaque classes sont à la fin de cette doc.

--+ install.php +--
Permet l'installation, la mise à jour automatique vers la dernière version du forum, l'installation de mods supplémentaires.
Et au cas la réparation de certains fichiers du forum.



+- Fonctions spécifiques au forum -+

--+ Restrictions d'accès et forums distants +--
Allez sur install.php > Installer, pour créer une nouvelle liste des forums.
Voici quelques options supplémentaires pour la liste:

1perm = 2
> Cette commande restreint l'accès du forum n°1 aux membres ayant les permissions VIP minimum (cf le fonctionnement de membres.php)
> De la même façon vous pouvez restreindre l'accès aux modérateurs (1perm = 9) ou aux admins (1perm = 10).

1team = nom_de_la_team
> Cette fois il faut être membre de la team pour entrer dans le forum n°1.

1root = maurice, dede
> Les seuls modérateurs de ce forum sont uniquement maurice, dede et les admins.
1root = /no
> Seuls les admins peuvent modérer ce forum.
1root = /team
> Seuls les modérateurs de la team définie avec 1team sont autorisés à rentrer et à modérer.

1_url = http://www.autresite.com/repertoire/
> Si vous estimez qu'un forum prend trop de place, vous pouvez l'enregistrer sur un autre site.
> Il ne sera plus qu'accessible en lecture seule et sera moins rapide à la lecture.
> Dans votre répertoire dnf/f/ prenez  tout les topics qui commencent par "F1" (1 étant le n° du forum)
> et enregistrer les sur un autre site (ici chez "autresite.com/repertoire/").

1_url = /local
> Restreint un forum en lecture seule sauf pour les modérateurs et admins.

1_merge = 1000
> Applique une fusion sur le forum 1 avec le mode 1_url (lecture seule depuis un site distant)
> pour les topics inférieurs ou égal 1000.
> Pour les topics suivants et à venir, le forum fonctionne normalement (un forum local, avec accès
> écriture et lecture). Permet au final d'hébergeur un forum sur 2 sites, pour gagner de la place.


1nocount=1
> Désactive la comptabilisation des posts des utilisateurs dans le forum n°1.


--+ Les images persos +--
Les images persos sont proposées par les membres. Les modérateurs doivent se rendre quotidiennement dans la section membre pour accepter ou refuser les images en attente. Les membres VIP ('perms'=>'2') n'ont pas besoin de cette vérification.

--+ Multipass +--
Il donne accès à tout les pseudos. Prenez soin de le configurer avec un password suffisament compliqué.
Vous pourrez rentrer dans la section membre d'un utilisateur (ex: pour changer son password, mettre une image, etc) ou modifier un post sans qu'un message de modération n'apparaisse. Il agit exactement comme un deuxième password pour n'importe qui (admins compris).
Utilisez un password complètement différent de ceux que vous utilisez d'habitude.
Son importance est capitale pour la sécurité de votre site, au pire désactiver l'option $reconfig (dans config.php).

--+ Recherche avancée +--
Pour minimiser les risques de flood et minimiser les requetes, la recherche dans le contenu des topics est désactivée pour les membres normaux. Loggez-vous en tant que membre VIP, modérateur ou admin, faites une recherche et l'option apparaitra.

--+ Teams +--
Si un membre fait parti d'une team (Section membre > edition Membre > case Team > mettre le nom de la team), 2 logos s'afficheront alors pour lui :
Le premier à côté de chacun de ses posts (20x20 pixels conseillés), créez l'image: /dnf/i/nom_de_la_team.gif
Le second dans la section membre, créez l'image: /nom_de_la_team.gif

--+ Modération +--
Pour modérer un topic, cliquez sur l'icone de corbeille rouge sur le premier post du topic.
Les choix possibles:
Lock: Topic supprimé, un cadenas apparait et il n'est plus récupérable
Del:  Topic supprimé, n'apparait pas dans la liste
Admins Only: Reservé aux admins (perms='10' dans membres.php)
Mbs++ Only:  Reservé aux membres++ et aux admins (perms='2' dans membres.php)
Freeze!:   Accessible uniquement en lecture seule, sauf pour les admins
Restaurer: Remet le topic à l'état normal, sauf si il a été supprimé

--+ Blackliste +--
La blackliste empêche un utilisateur de revenir sur le forum.
Ce système n'est pas fiable à 100% (on ne peut pas savoir qui est derrière l'écran du PC) mais il est extrèmement complet.
Lorsque vous voulez blacklister un utilisateur, cliquez sur la corbeille verte à droite d'un de ses posts et suivez le lien en bas.
Quelques conseils:
- blacklister une première fois le pseudo
- si il persiste blackliste son adresse IP
- en dernier cas, blacklistez son groupe IP (ex: IP="11.22.33.44", vous blacklistez "11.22.33."), mais n'allez pas plus loin

--+ Edition des membres et des smileys +--
Elle se fait depuis la section membre, seul les admins y ont accès. Pour le faire manuellement, vous pouvez éditer les fichiers dnf/f/membres.php et dnf/f/smileys.php.

--+ Fast posts +--
Affiche les XX deniers posteurs de chaque forums sur votre site et sous cette forme : <Topic> Posteur, le date
Insérez simplement ce code sur une page de votre site: <script src="repertoire_vers_forum/forum.php?last=XX"></script>
Ces liens ont la classe CSS "fast" (pour les personnaliser: <style> .fast {color:blue;}</style><script ... /script>)
Vous pouvez paramétrer l'affichage en éditant le fichier last.js (notions en javascript requises).

--+ Dynamic Packs (Dpacks) +--
> Les DPacks sont des fichiers qui permettent de modifier n'importe quel fichier de votre forum, pour lui ajouter des nouvelles fonctionnalités de votre choix.
L'installation de Dpack est totalement automatisée, il suffit de vous rendre sur install.php et de suivre le lien vers les Dpacks. Vous pourrez ensuite installer ce que vous voulez.

> En revanche, certains hébérgeurs (comme multimania) ne permettent pas de se connecter à d'autres sites via php.
Dans ce cas vous devrez faire quelques étapes manuellement:
- Pour la mise à jour du forum, vous devrez télécharger le fichier ZIP du forum sur http://dnf.fr.fm/ et écraser sur votre serveur FTP les nouveaux fichiers, vous trouverez la liste de ces fichiers en utilisant ce script: http://icecube.ovh.org/nowhere/majs.php
- Pour les Dpacks: Télécharger les d-packs de votre choix sur http://icecube.ovh.org/nowhere/ldpacks.php
Envoyez les sur votre serveur FTP dans le répertorie dnf/dpacks (créez ce répertoire si nécessaire), et rendez vous dans votre section dpack (depuis install.php).

> Vous pouvez créer vos propres Dpacks avec http://icecube.ovh.org/nowhere/dpack-generator.php et les rendre dispo au public, ou bien les garder privés et les réutiliser après une mise à jour générale.




+- Autres infos -+

- Vous pouvez changer le nom de la page principale du forum (ex: index.php)
- Le forum contient une FAQ qui explique quelques autres options plus générales, suivez simplement le lien dans le menu.

||| Les MAJs étant très fréquentes: sécurité, nouvelles fonctions, débug, etc; il vous est fortement déconseillé de modifier le script (utilisez plutôt le mode de personnalisation, ou créez un dpack privé).
|| Pensez à passer de temps en temps sur le site officiel ;) ou inscrivez-vous à la mailing-list, elle n'informe que des très grosses mises à jour.
| DNF :: Powered by PHP

+- Special Thanks -+

Corwin pour le développement, et bien sûr tous les forumeurs de Nowhere ;)

+- Classes CSS -+

Définition des classes présentes dans forum_b.css et forum_w.css.
Vous pouvez éditer toutes ces propriétés pour personnaliser votre forum (couleurs, etc...).
NB: Le fond du forum correspond à l'image dnf/i/bk_b.gif ou dnf/i/bk_w.gif (image de 2x2 pixels) et non pas à une couleur.

case    : boites de textes (formulaire d'envoi des messages)
send    : bouton envoyer
prev    : bouton prévisuliser
bord    : bordures du tableau contenant les smileys (à droite de la boite de texte)
box     : bordures du tableau contenant le formulaire (déconseillé)
inside  : tableau intérieur contenant le formulaire
smils   : tableau intérieur contenant les smileys (choix de l'icone du topic)
smils2  : tableau intérieur contenant les smileys (à droite de la boite de texte)
bbc     : liens bbcode (en dessous de la boite de texte)
freeze  : texte indiquant que le topic est freezé
stitle  : message "Tout les forums"
msg     : couleur des messages (orange par défaut)

border  : toutes les bordures noires


topic1  : première couleur pour la liste des topics
topic2  : seconde  couleur pour la liste des topics
listing : couleur des topics quand la souris passe dessus
redlist : couleur des topics quand la souris passe sur la zone "dernière réponse"
d       : couleur utilisée pour tous les textes légèrement moins visibles
e       : couleur utilisée pour tous les textes moins visibles
rub     : nom de la rubrique (liste des forums)

tp      : tableau utilisé principalement pour la case contenant le pseudo
tm      : tableau utilisé principalement pour la case contenant le post
top_smils : Couleur de fond du premier smiley sélectionné
infos   : case contenant les infos du message (icones edition, suppretion, team)
invert  : texte du menu
red     : lien "aléatoire" (souris dessus)
def     : lien "aléatoire"
menubg  : fond du menu à gauche ou à droite

submit  : boutons d'envois (design blanc uniquement)


+- ASCII Art -+
_ /²\ \ / / \²²\_______ \ / / \ / _ / ²²²²²²²\ /\ ____\/_/\ /\________\/_______/ \ / __ \ /²²\ /²²²/ / ²²²²²²²/_/²²²²__ / \ / / \ \__/ \ / \/ ______ _ / / / \ / /___/ ²² /\ \ / / /__//____/ / / ____\/ /\ / \ \/ /\ /__ / / / /\______________/ /___/ \___ / / ___/ \ /\______/ / \ / /AAAAAAAAAAAAAAAA AAAA AAAAA / / ___\/___ ____/ \/____ / AAAAAAAAAAAAAAAA AAAA AAAAA/ / / \ \ /\ / AAAAAAAA AAAAAA AAAAAAAAA/_/A /AAA A\ \_____/ / AAAAAAA AAAAAA AAAAAAAAAAAAAAAAAAA/AAAAAAAAA\_______/ AAAAAAAAAAAAAAA AAAAAAAAAaAAAA AAAAAAAAAAAA -- return /\ _`\ /\ _`\ \ \ \/\ \ __ \ \ \_ ___ _ __ __ __ ___ ___ \ \ \ \ \ /'__`\ \ \ _\ / __`\ /\`'__\/\ \/\ \ /' __` __`\ \ \ \_\ \/\ \ \.\_ \ \ \ /\ \ \ \\ \ \/ \ \ \_\ \/\ \/\ \/\ \ \ \____/\ \__/.\_\ \ \_\ \ \____/ \ \_\ \ \____/\ \_\ \_\ \_\ \/___/ \/__/\/_/ \/_/ \/___/ \/_/ \/___/ \/_/\/_/\/_/ /\ \/\ \ /\ \ /\ \ /\ \ /\ \ \ \ `\\ \ ___ \ \ \____ ___ \_\ \ \ `\`\/'/' \ \ , ` \ / __`\ \ \ '__`\ / __`\ /'_` \ `\/ > < \ \ \`\ \ /\ \ \ \ \ \ \ \ \/\ \ \ \/\ \ \ \ \/'/\`\ \ \_\ \_\\ \____/ \ \_,__/\ \____/\ \___,_\ /\_\\ \_\ \/_/\/_/ \/___/ \/___/ \/___/ \/__,_ / \/_/ \/_/ -- cocoman