Class: Install
Source Location: /lodeladmin/class.Install.php
Class Install
Class Overview
|
Fichier racine de lodeladmin
PHP versions 4 et 5 LODEL - Logiciel d'Edition ELectronique. Copyright (c) 2001-2002, Ghislain Picard, Marin Dacos Copyright (c) 2003, Ghislain Picard, Marin Dacos, Luc Santeramo, Nicolas Nutten, Anne Gentil-Beccot Copyright (c) 2004, Ghislain Picard, Marin Dacos, Luc Santeramo, Anne Gentil-Beccot, Bruno Cénou Copyright (c) 2005, Ghislain Picard, Marin Dacos, Luc Santeramo, Gautier Poupeau, Jean Lamy, Bruno Cénou Copyright (c) 2006, Marin Dacos, Luc Santeramo, Bruno Cénou, Jean Lamy, Mikaël Cixous, Sophie Malafosse Copyright (c) 2007, Marin Dacos, Bruno Cénou, Sophie Malafosse, Pierre-Alain Mignot Home page: http://www.lodel.org E-Mail: lodel@lodel.org All Rights Reserved This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
Located in /lodeladmin/class.Install.php [line 48]
Author(s):
- Pierre-Alain MIGNOT
- Jean Lamy
- Ghislain Picard
- Sophie Malafosse
Information Tags:
| Version: | CVS:$Id: |
| Copyright: | 2005, Ghislain Picard, Marin Dacos, Luc Santeramo, Gautier Poupeau, Jean Lamy, Bruno Cénou |
| Copyright: | 2006, Marin Dacos, Luc Santeramo, Bruno Cénou, Jean Lamy, Mikaël Cixous, Sophie Malafosse |
| Copyright: | 2007, Marin Dacos, Bruno Cénou, Sophie Malafosse, Pierre-Alain Mignot |
|
Properties
|
Methods
|
Property Summary
| string |
$protecteddir |
Tableau des répertoires à protéger avec un htaccess |
Method Summary
| void |
checkDB() |
Test accessibilité base de données |
| void |
checkFunc() |
Test inclusion du fichier func.php |
| void |
finish() |
Fin de l'installation |
| void |
majConfDB() |
Mise à jour configuration base de données |
| void |
maj_options() |
Mise à jour des informations du site |
| void |
manageDB() |
Installation base de données |
| void |
problem() |
Impression message d'erreur |
| void |
seekDB() |
Liste des base de données |
| void |
verifyAdmin() |
Vérification présence administrateur |
Properties
Fichier de configuration Lodel
Répertoire de la plateforme
Tableau des répertoires à protéger avec un htaccess
Suffixe de la version de Lodel
Methods
Install Install(
string
$lodelconfig,
$have_chmod,
$plateformdir, array
$context
)
|
|
Constructeur
Instancie un objet de la classe
Parameters:
|
string |
$lodelconfig: |
chemin vers fichier lodelconfig temporaire |
|
array |
$context: |
le contexte passé par référence |
|
|
$have_chmod: |
|
|
|
$plateformdir: |
|
void askOptions(
string
$importdir, string
$chooseoptions
)
|
|
Test répertoire d'import
Cette fonction vérifie que le serveur a la possibilité de lire dans le répertoire import
Parameters:
|
string |
$importdir: |
chemin absolu vers le répertoire d'import |
|
string |
$chooseoptions: |
|
Installation plateforme
Cette fonction vérifie qu'il existe un fichier de configuration. Si absent, on demande à installer la plateforme
void checkDB(
string
$dir, int
$mode, bool
$cheminAbsolu
)
|
|
Test accessibilité base de données
Cette fonction teste l'identifiant, mot de passe et url du serveur de base de données. Si ceux-ci sont absent on les demande
Parameters:
|
string |
$dir: |
répertoire à tester |
|
int |
$mode: |
droits à tester |
|
bool |
$cheminAbsolu: |
chemin absolu ? |
Test inclusion du fichier func.php
Cette fonction vérifie qu'il est possible d'accéder au fichier de fonctions func.php
Vérification présence htaccess
Cette fonction vérifie la présence des htaccess
void downloadlodelconfig(
$log_version, string
$logversion
)
|
|
Téléchargement de lodelconfig.php
Cette fonction lance le téléchargement du fichier de configuration du site
Parameters:
|
string |
$logversion: |
version navigateur |
|
|
$log_version: |
|
void find_mysql_db_charset(
string
$database
)
|
|
Connaitre le charset
Cette fonction retourne le charset de la base database
Parameters:
|
string |
$database: |
nom de la base de données |
Fin de l'installation
Cette fonction lance la fin de l'installation
Accesseur
Cette fonction renvoit la variable $var passée en paramètre
Parameters:
|
var |
$var: |
variable à renvoyer |
void guessfilemask(
string
$testfile
)
|
|
Filemask
Cette fonction permet de trouver le bon filemask à utiliser
Parameters:
|
string |
$testfile: |
fichier contenant la/les requêtes SQL |
void include_tpl(
string
$file
)
|
|
Inclusion du template
Cette fonction inclue dans la page le template $file
Parameters:
|
string |
$file: |
fichier template à inclure |
void installConf(
int
$installoptions, string
$testfile
)
|
|
Installation de la configuration
Cette fonction copie le fichier de configuration dans le CACHE, chmod et MAJ de celui-ci
Parameters:
|
int |
$installoptions: |
option d'installation (1 = monosite, 2 = multisite) |
|
string |
$testfile: |
fichier sur lequel deviner filemask |
void installDB(
string
$erasetables, string
$tache
)
|
|
Installation tables
Cette fonction installe les tables utilisées par Lodel
Parameters:
|
string |
$erasetables: |
on efface les tables si celles-ci sont existantes ? |
|
string |
$tache: |
tâche a accomplir |
void majConfDB(
string
$newdbusername, string
$newdbpasswd, string
$newdbhost
)
|
|
Mise à jour configuration base de données
Cette fonction met à jour les informations de connexion au serveur de base de données dans le fichier de configuration
Parameters:
|
string |
$newdbusername: |
identifiant |
|
string |
$newdbpasswd: |
mot de passe |
|
string |
$newdbhost: |
adresse du serveur |
void maj_lodelconfig(
array
$var, [string
$val = -1]
)
|
|
Mise à jour configuration
Cette fonction met à jour le fichier de configuration lodelconfig en appellant la fonction maj_lodelconfig_var
Parameters:
|
array |
$var: |
variable à modifier |
|
string |
$val: |
nouvelle valeur de la variable |
void maj_lodelconfig_var(
var
$var, string
$val,
&$text, string
$text
)
|
|
Mise à jour configuration
Cette fonction met à jour le fichier de configuration lodelconfig
Parameters:
|
var |
$var: |
variable à modifier |
|
string |
$val: |
nouvelle valeur de la variable |
|
string |
$text: |
contenu du fichier lodelconfig |
|
|
&$text: |
|
void maj_options(
string
$newurlroot, string
$permission, string
$pclzip, string
$newimportdir, string
$newextensionscripts, string
$newusesymlink, string
$newcontactbug, string
$newunzipcmd, string
$newzipcmd, string
$newuri
)
|
|
Mise à jour des informations du site
Cette fonction met à jour le fichier de configuration du site en cours d'installation
Parameters:
|
string |
$newurlroot: |
url vers répertoire racine de lodel |
|
string |
$permission: |
permissions |
|
string |
$pclzip: |
utilisation de pclzip ? |
|
string |
$newimportdir: |
chemin vers répertoire 'import' |
|
string |
$newextensionscripts: |
extension du script à afficher (.php ou .html ?) |
|
string |
$newusesymlink: |
utilisation des liens symboliques ? |
|
string |
$newcontactbug: |
adresse mail à contacter en cas de bug |
|
string |
$newunzipcmd: |
commande unzip spécifiée par l'utilisateur |
|
string |
$newzipcmd: |
commande zip spécifiée par l'utilisateur |
|
string |
$newuri: |
type d'url affichée |
void makeSelectLang(
string
$tpr
)
|
|
Affichage choix langue
Cette fonction affiche une liste déroulante permettant de choisir sa langue par défaut
Parameters:
|
string |
$tpr: |
préfixe des tables |
void manageAdmin(
string
$adminusername, string
$adminpasswd, string
$adminpasswd2, string
$lang, string
$site
)
|
|
Création administrateur
Cette fonction permet de créer le premier utilisateur (administrateur)
Parameters:
|
string |
$adminusername: |
login |
|
string |
$adminpasswd: |
mot de passe premier input du formulaire |
|
string |
$adminpasswd2: |
mot de passe deuxieme input du formulaire |
|
string |
$lang: |
langue par défaut pour l'utilisateur créé |
|
string |
$site: |
site lié à l'utilisation en cours de création |
void manageDB(
string
$erasetables, string
$singledatabase, string
$newdatabase, string
$newsingledatabase, string
$newtableprefix, string
$createdatabase, string
$existingdatabase
)
|
|
Installation base de données
Cette fonction s'occupe de l'installation de la base de données
Parameters:
|
string |
$erasetables: |
on efface les tables d'une base de données existante ? |
|
string |
$singledatabase: |
est-on en mode base de données unique ? |
|
string |
$newdatabase: |
nom de la base de données |
|
string |
$newsingledatabase: |
|
|
string |
$newtableprefix: |
prefixe des tables pour installation multi site |
|
string |
$createdatabase: |
on crée la base de données ou pas ? |
|
string |
$existingdatabase: |
on utilise une base existante ? |
void mysql_query_file(
string
$filename, [bool
$droptables = false], string
$database
)
|
|
Installation tables
Cette fonction execute les requêtes SQL contenues dans le fichier filename sur la base database
Parameters:
|
string |
$filename: |
fichier contenant la/les requêtes SQL |
|
bool |
$droptables: |
on efface les tables existantes ? |
|
string |
$database: |
nom de la base de données sur laquelle travailler |
void problem(
string
$msg
)
|
|
Impression message d'erreur
Cette fonction affiche un message d'erreur lorsqu'un problème survient
Parameters:
|
string |
$msg: |
message à afficher |
void probleme_droits(
$missing_dirs,
$not_writable_dirs,
$not_readable_dirs, string
$msg
)
|
|
Affichage des problèmes de droits
Cette fonction affiche un message d'erreur lorsqu'un problème de droits (lecture/écriture) survient sur un répertoire
Parameters:
|
string |
$msg: |
message à afficher |
|
|
$missing_dirs: |
|
|
|
$not_writable_dirs: |
|
|
|
$not_readable_dirs: |
|
void problem_include(
$filename, string
$file
)
|
|
Inclusion du template
Cette fonction inclue dans la page le template $file
Parameters:
|
string |
$file: |
fichier template à inclure |
|
|
$filename: |
|
Liste des base de données
Cette fonction retourne la liste des base de données existante sur le serveur
void set(
var
$var, var
$valeur
)
|
|
Accesseur
Cette fonction alloue la valeur $valeur à la variable $var
Parameters:
|
var |
$var: |
variable à modifier |
|
var |
$valeur: |
valeur à allouer |
void set_htaccess(
string
$verify, string
$write, string
$nohtaccess
)
|
|
Installation htaccess
Cette fonction installe les .htaccess dans les répertoires contenus dans la variable privée protecteddir
Parameters:
|
string |
$verify: |
|
|
string |
$write: |
Lodel installe lui même les htaccess ? |
|
string |
$nohtaccess: |
pas de htaccess ? |
void set_mysql_charset(
)
|
|
Configuration charset
Cette fonction configure le charset de la base
Affichage de la config
Cette fonction affiche le contenu du fichier de configuration
Test installation en cours
Cette fonction teste si une installation a déjà été commencée
void testdirmode(
string
$dir, int
$mode, [bool
$cheminAbsolu = false]
)
|
|
Test droits répertoire donné
Cette fonction teste les droits (lecture/écriture) du répertoire dir
Parameters:
|
string |
$dir: |
répertoire à tester |
|
int |
$mode: |
droits à tester |
|
bool |
$cheminAbsolu: |
chemin absolu ? |
Test connexion à la base de données
Cette fonction tente de se connecter à la base de données, met le charset par defaut et identifie l'utilisateur comme administrateur si jamais il existe un enregistrement dans la table username
Test droits répertoires
Cette fonction teste les droits (lecture/écriture) des répertoires lodel
Vérification présence administrateur
Cette fonction vérifie qu'un administrateur a été créé
void verifyLodelConfig(
)
|
|
Vérification lodelconfig
Cette fonction vérifie que le lodelconfig créé et celui placé dans le site sont identiques
|
|