""
Documentation daCode : Guide du webmestre de daCode
Chapitre 3. Référence des directives de configuration

 

Configuration du site.

Les valeurs par défaut devraient être convenables pour une expérimentation de daCode

 

logo

Chaîne de caractères. Nom du logo à utiliser, sans l'extension. Le logo doit être au format PNG, avec une extension .png.

 

aboutlogo

Chaîne de caractères. Légende du logo. Soyez « bref et concis ». Ce texte apparaîtra sur chaque page, en dessous du logo.

 

minilogo

Chaîne de caractères. Nom du petit logo utilisé dans la version PDA et pour la barre latérale Mozilla. Ce nom doit être sans l'extension. JPG uniquement.

 

defaultlang

Chaîne de caractères. Identifiant de la langue par défaut. Deux langages sont actuellement disponibles:

  • en :anglais (valeur par défaut);

  • fr : français.



 

visiblenewsfile

Booléen. Détermine si le nom du script doit apparaître dans l'URL. Mettez-le à 0 si vous ne voulez pas le voir dans l'URL.

 

anonymous_comments

Booléen. Si il vaut 1, autorise les commentaires d'anonymes, les interdit sinon.

 

restricted_registration

Chaîne de caractères. Détermine si n'importe qui peut créer un compte, ou si seul l'admin du site peut les créer. Laissez-le vide pour autoriser tout le monde à s'inscrire.

 

valid_tags

Liste de chaînes de caractères. La liste des balises HTML valides dans les commentaires. Essentiellement, il faut interdire toute possibilité de DHTML. Vous trouverez un exemple ci-dessous:


    $this->valid_tags = array (
      'b','i','s','u',
      'em','tt','strong','blockquote',
      'ol','ul','li',
      'p'
      );
      
   


 

valid_tags_board

Liste de chaînes de caractères. La liste des balises HTML valides dans la tribune. Essentiellement, il faut interdire toute possibilité de DHTML. La déclaration est la même que celle de valid_tags.

 

no_access_msg

Chaîne de caractères. Le message qui est affiché lorsqu'un utilisateur essaye d'accéder à une page qu'il n'a pas le droit de voir (cela se produit surtout quand quelqu'un tente d'accéder aux fonctions d'administration sans être admin). Utilisez \n pour indiquer un retour à la ligne.

 

supp_fields

Liste dse champs supplémentaires pour les informations utilisateurs.

  • length: largeur et hauteur (optionnelles), séparées par une virgule;

  • max_length: longueur maximale;

  • type: type d'entrée, voir supp_fields_types ci-dessous;

  • public:

    • 1 : les données sont visibles par tous;

    • 0 : seuls les utilisateurs authentifiés peuvent les voir.



Vous trouverez un exemple ci-dessous :

    
      $this->supp_fields = array (
      'photo'       => array(
      'length'  => '30',
      'max_length'  => '255',
      'type'        => 'url',
      'public'  => '1'
      ),
      'icq' =>   array(
      'length'  => '9',
      'max_length'  => '10',
      'type'        => 'icq',
      'public'  => '1'
      ),
      'pgp' =>   array(
      'length'  => '8',
      'max_length'  => '8',
      'type'        => 'pgp',
      'public'  => '1'
      )
      );
      
   
Attention : tous les types utilisés dans supp_fields doivent être déclarés dans supp_fields_types.

 

supp_fields_types

Ce paramètre vous permet de définir les types utilisés dans supp_fields. Pour chacun d'eux, vous avez une valeur method, qui est associée à l'usage de ce type dans la page de préférences utilisateur. Voir l'exemple.


    
      $this->supp_fields_types = array(
      'text'    =>   array(
      'method'  =>   'htmlentities($val);'
      ),
      'textarea'    =>   array(
      'method'  =>   'htmlentities($val);'
      ),
      'url' =>   array(
      'method'  =>   '"".'.
      'htmlentities($val)."";'
      ),
      'icq' =>   array(
      'method'  =>   '""'.
      '.htmlentities($val)."";'
      ),
      'pgp' =>   array(
      'method'  =>   '""'.
      '.htmlentities($val)."";'
      )
      );
      
   
TODO: add a bit of explanations about supp_fields_types.

 

user_boxes

Tableau associatif de tableaux associatifs. Liste des boîtes utilisateur. Ce sont les boîtes parmi lesquelles les utilisateurs peuvent choisir celles qu'ils veulent voir dans leur page de préférences. Voir l'exemple ci-dessous.

Format :


    
      'nom' => tableau 
      avec dans tableau (toutes les boites n'utilisent pas tous les paramètres):
      'function' => chaîne de caractères : la méthode à utiliser,
      'info' => chaîne de caractères : description de la boîte,
      'force' => 1 ou 0 : 1 pour que la boîte s'affiche toujours,
      'url' => chaîne de caractères : l'URL du site d'où viennent les dépêches. 
      
   
Par exemple :

    $this->user_boxes = array (
      
      //Valeurs internes (modules internes à daCode). Ceci 
      //n'est qu'une sélection. 
      'loginbox'=>array(
      'function'  => '$user->loginbox()',
      'info'      => 'Login Box',
      'force'       => '1'
      ),
      'edito'=>array(
      'function'  => '$sidebox->edito()',
      'info'      => 'Edito'
      ),
      'board'=>array(
      'function'  => '$board->print_message()',
      'info'      => 'Board'
      ),
      'calendar'=>array(
      'function'  => '$cal->calbox($pageday, $pagemonth, $pageyear)',
      'info'      => 'Calendar'
      ),
      'tips'=>array(
      'function'  => '$tips->get_random()',
      'info'      => 'Tips'
      ),
      'archive'=>array(
      'function'  => '$news->show_archive(10,$section,$topic,1,1)',
      'info'      => 'Archive'
      ),
      'admin'=>array(
      'function'  => '$admin->adminbox()',
      'info'      => 'Admin'
      ),
      
      
      //Boîtes qui vont chercher de l'info ailleurs (en général, 
      //elles vont chercher les derniers titres des sites).
      //Elles sont appellées backends, en jargon daCode. 
      'kernel'=>array(
      'function'  => '$backends->kernel()',
      'info'      => 'Kernel',
      'url'     => 'http://www.kernel.org/'
      ),
      'rfc'=>array(
      'function'  => '$backends->rfc()',
      'info'      => 'RFCs'
      ),
      );
      
   
Pour les backends, reportez-vous au fichier phplib/backends.php3 pour savoir lesquels sont disponibles. Vous trouverez ci-dessous une brève description des boîtes utilisateurs disponibles dans daCode.
loginbox

Le formulaire d'authentification, ou les infos persos de l'utilisateur. Ses paramètres sont:

  • function : $user->loginbox()

  • info : ce que vous voulez

  • force : '1' Doit être à 1, car les utilisateurs doivent pouvoir s'authentifier ou accéder à leur page de préférences.



messages

La boîte « Messagerie privée ». Ses paramètres sont :

  • function : $message->show_new_title()

  • info : ce que vous voulez

  • force : '1'. Doit être à 1 ; les utilisateurs doivent toujours avoir accès à la messagerie, sauf si vous voulez désactiver le module.



edito

La boîte Édito. C'est un espace de libre expression pour le webmestre. Le texte est défini par le paramètre 'edito' ci-dessus. Ses paramètres sont :

  • function : $sidebox->edito()

  • info : ce que vous voulez



board

La boîte de la tribune libre, un système simple de clavardage (« chat »), dispo en boîte. Attention toutefois aux invasions de palmipèdes ! <<  Je voudrais bien m'en aller / mais j'ai trop fumé... (Brank Shme Bleu) >>

  • function : $board->print_message()

  • info : ce que vous voulez



calendar

Le calendrier. Il permet aux utilisateur de voir les dépêches du jour qu'ils ont choisies sur un petit calendrier. Dispo uniquement en boîte. Ses paramètres sont :

  • function : $cal->calbox($pageday, $pagemonth, $pageyear))

  • info : ce que vous voulez



webcam

La boîte « webcam ». Elle permet d'afficher une image aléatoire sur la page principale. Ses paramètres sont :

  • function : $webcam->get_random()

  • info : ce que vous voulez



tips

La boîte « astuces ». Elle affiche une astuce choisie aléatoirement. Ses paramètres sont :

  • function : $tips->get_random()

  • info : ce que vous voulez



archive

  • function : $news->show_archive(10,$section,$topic,1,1,-1)

  • info : ce que vous voulez



others

Boîte qui contient les dépêches qui n'ont été publiées sur la page principale. Ses paramètres sont :

  • function : $news->show_archive(10,"","",1,2,0,"Others")

  • info : ce que vous voulez



admin

La boite d'administration. C'est le seul moyen d'accéder aux fonctions d'administration. Ses paramètres sont :

  • function : $admin->adminbox()

  • info : ce que vous voulez



poll

La boîte de sondages. Affiche la question et les choix possibles pour le sondage en cours. Ses paramètres sont :

  • function : $poll->show_poll()

  • info : ce que vous voulez





 

default_user_boxes

Liste. Liste des boîtes affichées par défaut. C'est une liste de noms de boîtes, ou, pour PHP, une liste de clefs du tableau user_boxes_array. Voir l'exemple ci-dessous.


    $this->default_user_boxes = array ('edito',
      'loginbox',
      'admin',
      'archive',
      'tips',
      'agenda',
      'kernel'
      );
      
   


 

topfrep

Entier. Temps en secondes entre deux mises à jour du classement par XP (valable seulement si moderation_type = 2). 1800 (30 min.) par défaut.

 

pollvote

Entier. Temps minimal entre deux votes pour la même personne (adresse IP en fait) sur le même sondage.

 

cachedir

Chaîne de caractères. Répertoire où seront stockés les fragments d'HTML (i. e. les boîtes) du cache. N'oubliez pas le « / » à la fin ! Une chaîne vide désactive le cache des boîtes.

 

htmldir

Chaîne de caractères. htdocs/ où les fichiers HTML (pages entières) en cache sont stockés. Une chaîne vide désactive le cache.

 

mark_outdated

Booléen. Marquer les fichier du cache qui ne sont plus à jour au lieu de les effacer. Cela peut poser des problèmes avec la tribune libre.

 

sql_persistant

Booléen. Autorise les connexions persistentes à la base de données lorsqu'il vaut 1.

 

sql_logfile

Chaîne de caractères. Enregistre les requêtes SQL dans ce fichier ; n'enregistre rien si la chaîne est vide.

 

fortunefile

Chaîne de caractères. Fichier de « fortunes » (phrases sélectionnées aléatoirement, généralement des citations). La chaîne vide désactive les fortunes. Dans le fichier, les fortunes doivent être séparées par un « % » et un saut de ligne Unix ("\n"). Faites bien attention à ne pas utiliser de saut de ligne ("\r\n") ou Mac ("\r") !

 

create_tar_dir

Chaîne de caractères. Répertoire dans lequel les archives tar créées par daCode sont placées. /tmp/ est en général un bon choix. Ceci est utilisé pour archiver les habillages.

 

upload_tar_dir

Chaîne de caractères. Répertoire dans lequel les archives tar que vous placez sur le serveur daCode sont mises pour être désarchivées. sont placées. /tmp/ est en général un bon choix.

 

theme_subdir

Chaîne de caractères. Lorsque les habillages externes peuvent être installés, il est conseillé de les mettre dans un répertoire à part. Par exemple, en écrivant $this->theme_subdir = "contrib/";, tous les habillages externes seront mis dans phplib/themes/contrib.

 

debug

Chaîne de caractères. Le mode de débogage :

  • "none" si vous ne voulez aucune info de débogage ;

  • "stdout" si vous voulez envoyer voir les infos de débogage sur les pages générées par daCode ;

  • "file" pour envoyer les infos de débogage dans un fichier, voyez aussi debugFile ci-dessous ;

  • "socket" pour envoyer les infos de débogage sur une socket, voyez aussi debugFile ci-dessous.



 

debugFile

Le fichier ou l'hôte recevant les infos de débogage. Si vous avez debug = "file", c'est le chemin absolu du fichier de log. Si vous avez choisi "socket", debugFile contient le nom d'hôte et le port, selon la syntaxe habituelle : "hote:port". Si vous avez choisi "none" ou "stdout", ce paramètre est sans effet.

 

disable_view_comments

Booléen. Cette option permet de désactiver la possibilité de voir la liste des commentaires postés par un autre utilisateur, lorsqu'elle vaut 1.