III.2. Implémentation
Cette partie aborde l'installation du nouveau système.
Ce système est développé sous l'environnement LINUX, le
langage de programmation utilisé est PHP et les fichiers textes pour
stocker la base de données.
Malgré qu'il n'y ait pas eu de borne interactive avec
l'écran tactile, on installe ce logiciel pour les ordinateurs avec des
écrans normaux.
Le langage PHP est le langage de développement le plus
utilisé pour les applications chargées de gérer
dynamiquement des contenus sur Internet. De nombreuses applications, en Open
Source, peuvent servir de bases pour le
développement de votre système de gestion dynamique
de contenus. De plus, la WebCollection existant dans de
Cameleo est développée par le langage PHP.
La base de données Mysql est la base de données
la plus utilisée dans le monde pour les développements
basés sur les technologies Internet. Elle est bien adaptée avec
PHP pour la gestion de données dans les applications web.
Néanmoins, on utilise les fichiers textes pour la gestion de
données parce que les données utilisées dans
WebCollection sont stockées dans les fichiers textes. Il y a
des fonctions disponibles qui traitent les fichiers textes dans la
WebCollection. On peut les réutiliser. De plus, on n'a pas le
droit de changer la mode de stockage des données de WebCollection
existant.
On utilise les modèles graphiques pour créer les
interfaces du système cela permet aux utilisateurs de choisir plusieurs
langues pour l'affichage. Les modèles se trouvent dans le
répertoire /templates qui se trouve dans le répertoire
principal de la visionneuse. Chaque modèle(skin) est placé dans
un sous-répertoire de templates. Le nom de ce sous-répertoire est
le nom du skin. Placés dans ce répertoire, les skins seront
détectés par Collection et proposés dans la
fenêtre de WebCollection.
Les fichiers modèles sont des simples fichiers html et
peut être créés dans un logiciel d'édition de pages
web comme Front Page, Dreamweaver.
On utilise le fichier de description du langage, cela permet
d'afficher les interfaces sous plusieurs langages. Tous les textes
affichées par la visionneuse se trouvent dans un fichier
lang.XX dans le répertoire de la visionneuse (remplacer
<XX> par l'indicatif de la langue, par ex.
«fr» pour le français ou «en» pour l'anglais). Pour
ajouter une nouvelle langue, il suffit de créer un nouveau fichier de
langue qui est un fichier texte.
C'est la raison pour laquelle chaque modèle pour
visionner une page, il faut créer des pages
html qui correspondent aux langues utilisées.
Le nom des fichiers modèles est sous la forme :
nomfichiermodel_L.html (« L » est
à remplacer par l'indicatif d'une langue (« fr » ou « en
» ).
Pour chaque fonctionnalité, il utilise un fichier de
modèle
(nomfichiermodel_L.hmtl) et un fichier
functions_nomfichiermodel_L.inc qui lit le fichier modèle et
affiche l'interface de cette fonctionnalité.
Grâce à la conception des interfaces du
système par les templates, le système est flexible, on peut
changer les interfaces du système facilement sans modifier les codes qui
manipulent la base de données du système.
On présente des fichiers qui contiennent les fonctions de
base du système et leurs rôles:
- config.dat : contient la configuration du
système, le chemin d'accès aux fichiers d'images, de biographie,
de son et de vidéo. Il contient le modèle(skin) pour les
interfaces du système.
- language.inc : contient les fonctions pour traiter les
textes affichés.
- functions.inc : contient les fonctions pour lire des
fichiers du modèle
- entry_fields.inc : détermine les types des
données afin de valider les données entrées dans les
tables.
- base_globales.inc : contient les déclarations
des constants, la structure
des fichiers et les types des champs dans chaque fichier.
- base_read.inc : contient toutes les fonctions de
base pour manipuler les fichiers textes. Il appelle les fonctions dans les
fichiers: language.inc, functions.inc, base_globales.inc ci-dessus.
- docmd.php: contient les commandes qui manipulent des
images dans BDI (par ex. modifier, supprimer une image).
On présente ci-dessous un script qui charge le
modèle(skin) html pour l'interface du système
//charger le modele html
if(!isset($skin))
{
if(isset($source)) //dans la config de la base si accessible
{
if($source[strlen($source)-1]!='/')
$source .= '/';
$basename = explode('/',$source);
$basename = $basename[count($basename)-2];
$config = read_config_file($source.$basename);
if(!is_bool($config['SKIN'])) $skin = $config['SKIN']; unset($config);
}
if(!isset($skin)) //skin par defaut
{
$tmp = read_webconfig_file();
if(!is_bool($tmp['DEFSKIN'])) $skin = $tmp['DEFSKIN'];
else $skin = '___err';
}
}
if(!is_dir("templates/$skin")) $fatal=4;
else $template = html_model($page);
Ce script va chercher le modèle(skin) défini
dans le fichier de config.dat et récupère les pages html
correspondent à ce skin pour les interfaces du système. Si ce
skin n'existe pas, le système va afficher l'erreur de chargement du
skin.
|