Cool Forum

 
 
Cool Forum » Hacks et modifications » Demande de mods et support programmation » [TUTORIAL] Variables globales du forum
Connexions
1 connecté(s) sur le forum actuellement: 0 membre(s) | 1 invité(s)
 
 
 
<<Sujet précédent     Sujet suivant>>


 
 
Auteur Imprimer le topic Message

 
 
TiGeR

Pilier

Roarr!!!

Enregistré le 16/01/2003
Messages: 3794
Non connecté

Sujet : [TUTORIAL] Variables globales du forum
Ajouté le : 11/03/2004 19:18
Message :

Tutorial sur les variables globales du forum

(première partie)

Les variables globales du forum sont les variables assignées lors de l’initialisation du forum. Elles peuvent être réutilisée à n’importe quel moment dans le script du forum.

Les variables globales les plus courantes pour un développeur de mods sont $_FORUMCFG, $_SKIN et $_USER. Nous allons donc les aborder dans ce tutorial.

Commençons par le cas de $_FORUMCFG. Cette variable globale se présente sous la forme d’un tableau contenant la configuration du forum, c'est-à-dire le contenu de la table CF_config. Elle est assignée par la fonction getconfig() à la fin du fichier functions.php

Dans la table CF_config, vous pouvez observer qu’il y a deux champs : un contenant le nom de l’élément de configuration (appelé ‘options’), et le second contenant la valeur associée à cet élément de configuration (appelé ‘valeur’). Lorsque vous souhaitez appeler la valeur de configuration associée à l’élément ‘xxxxx’, il vous suffit tout simplement d’appeler la variable comme suit : $_FORUMCFG[‘xxxxx’]

Prenons un exemple. Supposons que vous souhaitez créer une modif affichant le record de connectés sur le forum sur la page d’index. Il vous faudra faire appel à la valeur associée à ‘topmembers’, et bien cette valeur est tout simplement stockée dans $_FORUMCFG[‘topmembers’], c’est aussi simple que ça. (Une petite remarque au passage : vous ne pouvez pas utiliser directement la syntaxe PHP dans les templates, il vous faudra utiliser {% ::_FORUMCFG[topmembers]%}. Mais nous évoquerons cela dans un autre tutorial dédié à l’utilisation des templates.)

A partir de ce moment, vous pouvez vous poser cette question : mais à quoi correspondent les différentes valeurs de configuration ? Je vais donc vous donner ici la liste des différents éléments de configuration que vous pouvez appeler avec $_FORUMCFG :

[quote1]- openforum : indique si le forum est ouvert ou fermé (respectivement Y ou N)
- closeforummsg : contient le message qui est affiché lorsque le forum est fermé
- forumname : contient le nom du forum
- sitename : contient le nom du site
- siteurl : contient l’url du site
- contactmail : l’email de l’administrateur
- topicparpage : le nombre de topics affichés sur une page list.php
- msgparpage : le nombre de messages affichés sur une page detail.php
- confirmparmail : indique si la confirmation par mail est activée (respectivement Y ou N)
- cookiedomain : le domaine pour les cookies
- cookierep : le répertoire de limitation pour les cookies
- limitmsglength : la limite de caractères dans un message
- limittopiclength : la limite de caractères dans le titre d’un message
- limitusercitlength : la limite de caractères dans la citation d’un membre
- limitusersignlength : la limite de caractères dans la signature d’un membre
- limittimepost : le temps en seconde pour l’anti-flood
- forumjump : indique si le forumjump est activé ou non (respectivement Y ou N)
- chainecodage : la chaîne de codage du forum, utilisée pour crypter les mots de passe, ne la modifiez en aucun cas !!
- ajouthtml : le code HTML qui est affiché en haut du forum
- htmlbas : le code HTML qui est affiché en bas du forum
- initialise : le timestamp UNIX de la dernière réinitialisation des cookies
- indexnews : contient les news qui défilent sur la page d’index
- limitpmlength : la limite de caractères dans les messages privés
- timezone : le fuseau horaire dans laquelle est situé le serveur de votre forum (-12 à +12)
- mailnotify : indique si la notification par mail est activée ou non (respectivement Y ou N)
- limitloginlength : la limite de caractères dans le pseudo d’un membre
- canpostmsgcache : indique si les membres peuvent poster des messages cachés dans leur topic ou non (respectivement Y ou N)
- openinscriptions : indique si les inscriptions sont ouvertes ou non sur le forum (respectivement Y ou N)
- viewmsgedit : indique s’il faut rajouter « Editer par XXX le XXX » ou non lors de l’édition d’un message (respectivement Y ou N)
- urlforum : l’url du forum
- defaulttimezone : le fuseau horaire qui est assigné par défaut à un nouveau membre et qui est utilisé par les visiteurs (-12 à +12)
- bbcodeinsign : indique si les BBCodes sont autorisés ou non dans les signatures (respectivement Y ou N)
- smileinsign : indique si les smileys sont autorisés ou non dans les signatures (respectivement Y ou N)
- topmembers : contient le nombre record de membres connectés au même moment
- timetopmembers : contient le timestamp UNIX de la date à laquelle le nombre record de membres connectés au même moment a été atteint
- catseparate : contient le caractère de séparation utilisé dans l’arborescence du forum
- limitpoll : contient le nombre maximum de choix autorisés lors de la création d’un sondage
- ForumDBVersion : numéro de version de votre DB. Ne modifiez cette valeur sous aucun prétexte !!
- activePersoLogo : indique si les membres peuvent uploader leur propre avatar ou non (respectivement Y ou N)
- activeDefaultLogo : indique si la galerie d’avatars du forum est accessible aux membres
- closeregmsg : contient le message qui est affiché lorsque les inscriptions sont closes
- defaultlangage : contient le code langage utilisé par défaut sur le forum
- emailmask : contient le masque email qui remplace le @ dans les mails
- statnbtopics : contient le nombre de topics du forum
- statnbposts : contient le nombre de réponses du forum
- statnbuser : contient le nombre de membres inscrits sur le forum
- statlastmember : contient le pseudo du dernier membre inscrit
- defaultskin : contient l’id du skin par défaut du forum
- statsconfig : configuration de l’accès aux statistiques du forum ; les 6 chiffres correspondent respectivement à : stats activées, stats accessibles aux invités, aux membres, aux modérateurs, aux administrateurs, aux super-administrateurs (1 pour oui, 0 pour non)
- logosparams : contient les paramètres pour l’upload d’avatars : la largeur, la hauteur, et le poids
- activateLogos : définit si l’usage d’avatars est autorisé ou non sur le forum (respectivement Y ou N)
- mustbeidentify : définit si le login est obligatoire ou optionnel pour accéder au forum (respectivement Y ou N)
- mailfunction : contient le type à utiliser pour l’envoi d’email : normal, online, nexen
- censuredwords : contient la liste des mots censurés
- usepub : définit si le forum utilise le système de pub ou d’insertion HTML du forum (respectivement Y ou N)
- usemails : définit si l’envoi d’email est autorisé ou non sur le forum (respectivement Y ou N)
- editionlibre : définit si les membres peuvent éditer librement leurs messages ou non (respectivement Y ou N)[/quote1]

Comme vous le voyez, il y a pas mal d’options de configurations. Je pense que vous saurez rapidement savoir à quoi elles correspondent ;)

Bien entendu, vous pouvez rajouter vous-même des options de configuration dans la table CF_config si vous en avez besoin lors d’un hack.


Passons maintenant à la variable globale $_SKIN. La variable $_SKIN est associée à la table CF_skins, mais vous constaterez que cette table contient 3 champs : id, propriete, valeur. Le champ ‘id’ est utilisé uniquement pour sélectionner les valeurs associées au skin de l’utilisateur, il n’intervient pas directement dans la variable $_SKIN. Par exemple, si un membre utilise le skin numéro 2, la variable $_SKIN contiendra les valeurs du skin numéro 2.

La variable $_SKIN est assignée par la fonction getskin() au début du fichier entete.php.

Le fonctionnement de $_SKIN est similaire à celui de $_FORUMCFG c'est-à-dire : $_SKIN[‘propriete’] = ‘valeur’

Il est rare que la variable $_SKIN soit directement utilisée dans le code PHP. En règle générale, elle est utilisée dans les templates sous cette forum : {% ::_SKIN[xxxxxxxx]%}

Les différentes propriétés de la variable $_SKIN sont les suivantes :

[quote2]- bg1 : couleur de fond 1
- bg2 : couleur de fond 2
- bordercolor : couleur de bordure
- bgtable1 : couleur de fond de tableau 1
- bgtable2 : couleur de fond de tableau 2
- bgtable3 : couleur de fond de tableau 3
- colsupadm : couleur de pseudo super admin
- coladm : couleur de pseudo admin
- colmodo : couleur de pseudo modérateur
- colmb : couleur de pseudo membre
- colinvit : couleur de pseudo invité
- colban : couleur de pseudo banni
- lien1col : couleur de lien 1
- lien1visit : couleur de lien visité 1
- lien1hov : couleur de survol de lien 1
- lien2col : couleur de lien 2
- lien2visit : couleur de lien visité 2
- lien2hov : couleur de survol de lien 2
- textcol1 : couleur de texte 1
- textcol2 : couleur de texte 2
- smallfont : taille de fond petite
- middlefont : taille de fond moyenne
- bigfont : taille de fond grande
- repimg : répertoire des images (dans le dossier skins)
- reptpl : répertoire de templates (dans le dossier templates)
- skinname : nom du skin
- font : police de caractères
- affdegrad : définit si les dégradés sont affichés ou non (Y ou N)[/quote2]

A vous de les utiliser dans les templates si nécessaire. Vous pouvez bien entendu rajouter vos propres propriétés si cela est nécessaire ;)

(fin de la première partie)

*** Message édité par TiGeR le 11/03/2004 19:42 ***


CFP : Portail Web basé sur CF
CF Last Posts 0.8 : Derniers messages de votre CF sur votre site
Mods : Générateur de fichiers hackés pour CF

Recharger l'url avec lien direct vers ce message Imprimer le message Aller en bas de page Aller en haut de page Editez ce post (réservé aux modérateurs) Avertissez l'administrateur si le post est non conventionnel Visitez le site de TiGeR!! Envoyer un Message Privé à TiGeR Citer ce post dans votre réponse

 
 


<<Sujet précédent     Sujet suivant>>

 
[Contacter l'administrateur] | [Aller sur CoolForum.net]

 
[12 requêtes] - [Page générée en 0.0284 secondes]
 

Powered by CoolForum v.0.8.5 beta
Copyright ©2001-2014 CoolForum.net