Subversion Repositories Applications.papyrus

Compare Revisions

Ignore whitespace Rev 92 → Rev 93

/trunk/papyrus/pap_verification.inc.php
19,7 → 19,7
// | License along with this library; if not, write to the Free Software |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
// +------------------------------------------------------------------------------------------------------+
// CVS : $Id: pap_verification.inc.php,v 1.2 2004-10-15 18:29:19 jpm Exp $
// CVS : $Id: pap_verification.inc.php,v 1.3 2004-10-22 17:23:59 jpm Exp $
/**
* Réalisation de la vérification des besoins de Papyrus.
*
31,7 → 31,7
//Autres auteurs :
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org>
*@copyright Tela-Botanica 2000-2004
*@version $Revision: 1.2 $ $Date: 2004-10-15 18:29:19 $
*@version $Revision: 1.3 $ $Date: 2004-10-22 17:23:59 $
// +------------------------------------------------------------------------------------------------------+
*/
 
39,9 → 39,6
// | ENTÊTE du PROGRAMME |
// +------------------------------------------------------------------------------------------------------+
 
/** <br> Inclusion de la bibliotheque de fonctions d'installation et de gestion des erreurs.*/
require_once GEN_CHEMIN_PAP.'bibliotheque/fonctions/pap_verification.fonct.php';
 
// +------------------------------------------------------------------------------------------------------+
// | CORPS du PROGRAMME |
// +------------------------------------------------------------------------------------------------------+
51,30 → 48,9
$_GEN_commun['erreur_instal_afaire'] = false;
 
// +------------------------------------------------------------------------------------------------------+
// Vérification des variables d'environnement de PHP.
 
// Cette section devrait migré dans l'application Installateur à terme.
 
// Nous avons besoins des "Magic quotes". A VERIFIER!!!
if (get_magic_quotes_gpc() == 0) {
GEN_envoyerMessageErreur('Besoin de la configuration PHP : magic_quotes_gpc = 1');
}
// Nous avons besoin de quelques extensions
if (! extension_loaded('mysql')) {
GEN_envoyerMessageErreur('Besoin de l\'extension : MYSQL');
}
if (! extension_loaded('ftp')) {
GEN_envoyerMessageErreur('Besoin de l\'extension : FTP');
}
if (! extension_loaded('gd')) {
GEN_envoyerMessageErreur('Besoin de l\'extension : GD');
}
 
// +------------------------------------------------------------------------------------------------------+
// Gestion des fichiers de configuration et de l'installation
 
$chemin_fichier_config_defaut = GEN_CHEMIN_PAP.'configuration/pap_config.inc.php';
 
$chemin_fichier_config_defaut = 'papyrus/configuration/pap_config.inc.php';
// Gestion du fichier de config par défaut permettant de savoir si l'installation a été faite ou pas
if (file_exists($chemin_fichier_config_defaut)) {
/** Inclusion du fichier de configuration de base contenant la connexion à la base de donnée de Papyrus.*/
82,6 → 58,10
} else {
$_GEN_commun['erreur_instal_afaire'] = true;
}
 
/** Inclusion du fichier de configuration avancée
* Ajout du fichier de configuration avancée de de Papyrus contenant les chemins des fichiers.*/
include_once 'papyrus/configuration/pap_config_avancee.inc.php';
 
// Niveau d'erreur pour le code PHP de Papyrus
error_reporting(GEN_DEBOGAGE_NIVEAU);
89,6 → 69,9
/* +--Fin du code ----------------------------------------------------------------------------------------+
*
* $Log: not supported by cvs2svn $
* Revision 1.2 2004/10/15 18:29:19 jpm
* Modif pour gérer l'appli installateur de Papyrus.
*
* Revision 1.1 2004/06/16 08:14:23 jpm
* Changement de nom de Génésia en Papyrus.
* Changement de l'arborescence.
/trunk/papyrus/pap_initialise_info.inc.php
22,7 → 22,7
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
// | |
// +------------------------------------------------------------------------------------------------------+
// CVS : $Id: pap_initialise_info.inc.php,v 1.9 2004-10-15 18:29:19 jpm Exp $
// CVS : $Id: pap_initialise_info.inc.php,v 1.10 2004-10-22 17:23:59 jpm Exp $
/**
*Initialisation de Papyrus : vérification et récupération de paramètres généraux.
*
42,7 → 42,7
*@author Alexandre GRANIER <alex@tela-botanica.org>
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org>
*@copyright Tela-Botanica 2000-2004
*@version $Revision: 1.9 $ $Date: 2004-10-15 18:29:19 $
*@version $Revision: 1.10 $ $Date: 2004-10-22 17:23:59 $
// +------------------------------------------------------------------------------------------------------+
*/
 
91,9 → 91,14
// Aucun site trouvé
if ($resultat->numRows() == 0) {
die( 'ERREUR Génésia : impossible de trouver de sites.<br />'.
'Ligne n° : '. __LINE__ .'<br />'.
'Fichier n° : '. __FILE__ .'<br />');
// Appel à l'application Installateur si nécessaire
/** <br> Inclusion du programme Installateur de Papyrus.
* L'abscence de site oblige à relancer l'installation et le script sql qui regénèrera la base de données.*/
include_once GEN_CHEMIN_APPLICATION.'installateur/installateur.php';
$_GEN_commun['sortie'] = afficherContenuCorps();
include_once GEN_CHEMIN_PAP.'pap_envoi.inc.php';
// Fin du programme Papyrus.
exit(0);
}
// Nous avons trouvé un site.
$_GEN_commun['info_site'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
126,10 → 131,14
 
//Gestion de l'erreur aucun site trouvable.
if (! isset($_GEN_commun['info_site'])) {
die('ERREUR Génésia : impossible de trouver les informations du site.<br />'.
'Site : '.$_GEN_commun['url_site'].'<br />'.
'Ligne n° : '. __LINE__ .'<br />'.
'Fichier n° : '. __FILE__ .'<br />');
// Appel à l'application Installateur si nécessaire
/** <br> Inclusion du programme Installateur de Papyrus.
* L'abscence de site oblige à relancer l'installation et le script sql qui regénèrera la base de données.*/
include_once GEN_CHEMIN_APPLICATION.'installateur/installateur.php';
$_GEN_commun['sortie'] .= afficherContenuCorps();
include_once GEN_CHEMIN_PAP.'pap_envoi.inc.php';
// Fin du programme Papyrus.
exit(0);
}
 
// +------------------------------------------------------------------------------------------------------+
330,9 → 339,7
}
 
if (empty($_GEN_commun['url_menu'])) {
die('ERREUR Génésia : identifiant de menu introuvable. <br />'.
'Ligne n° : '. __LINE__ .'<br />'.
'Fichier : '. __FILE__ );
trigger_error ('identifiant de menu introuvable', E_USER_NOTICE);
}
 
// +------------------------------------------------------------------------------------------------------+
382,67 → 389,69
// Gestion de l'application du menu demandé.
 
// Recherche de la première application liée
$info_appli_menu = GEN_donnerIdPremiereApplicationLiee($_GEN_commun['info_menu']->gm_id_menu);
$id_application = $info_appli_menu['gm_ce_application'];
$id_menu_actif = $info_appli_menu['gm_id_menu'];
 
// Si le menu n'a pas d'application lié, on recalcule l'objet $_GEN_commun['info_menu']
if ($id_menu_actif != $_GEN_commun['info_menu']->gm_id_menu) {
$requete = 'SELECT gen_menu.* '.
'FROM gen_menu '.
'WHERE gm_id_menu = '.$id_menu_actif;
$resultat = $db->query($requete);
(DB::isError($resultat))
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete))
: '';
// Nous avons trouvé un menu "défaut" pour le site courant.
$_GEN_commun['info_menu'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
$resultat->free();
if (isset($_GEN_commun['info_menu']->gm_id_menu)) {
$info_appli_menu = GEN_donnerIdPremiereApplicationLiee($_GEN_commun['info_menu']->gm_id_menu);
if (is_array($info_appli_menu)) {
$id_application = $info_appli_menu['gm_ce_application'];
$id_menu_actif = $info_appli_menu['gm_id_menu'];
// Si le menu n'a pas d'application lié, on recalcule l'objet $_GEN_commun['info_menu']
if ($id_menu_actif != $_GEN_commun['info_menu']->gm_id_menu) {
$requete = 'SELECT gen_menu.* '.
'FROM gen_menu '.
'WHERE gm_id_menu = '.$id_menu_actif;
$resultat = $db->query($requete);
(DB::isError($resultat))
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete))
: '';
// Nous avons trouvé un menu "défaut" pour le site courant.
$_GEN_commun['info_menu'] = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
$resultat->free();
}
// Recherche des informations sur l'application liée
$requete_applicaton = 'SELECT * '.
'FROM gen_application '.
'WHERE gap_id_application = '.$id_application;
$resultat_applicaton = $db->query($requete_applicaton);
(DB::isError($resultat_applicaton))
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_applicaton->getMessage(), $requete_applicaton))
: '';
$_GEN_commun['info_application'] = $resultat_applicaton->fetchRow(DB_FETCHMODE_OBJECT) ;
$resultat_applicaton->free();
}
// Gestion des erreurs sur la recherche de l'application liée.
trigger_error ('application du menu demandée introuvable', E_USER_NOTICE);
} else if ( empty($_GEN_commun['info_application']) ) {
// Gestion des erreurs sur la recherche de l'application liée.
trigger_error ('application du menu demandée introuvable', E_USER_NOTICE);
}
 
 
// Recherche des informations sur l'application liée
$requete_applicaton = 'SELECT * '.
'FROM gen_application '.
'WHERE gap_id_application = '.$id_application;
 
$resultat_applicaton = $db->query($requete_applicaton);
(DB::isError($resultat_applicaton))
? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat_applicaton->getMessage(), $requete_applicaton))
: '';
 
$_GEN_commun['info_application'] = $resultat_applicaton->fetchRow(DB_FETCHMODE_OBJECT) ;
 
$resultat_applicaton->free() ;
 
// Gestion des erreurs sur la recherche de l'application liée.
if ( empty($_GEN_commun['info_application']) ) {
die('ERREUR Génésia : application de la page demandée introuvable. <br />'.
'Page : '.$page_id.'<br />'.
'Ligne n° : '. __LINE__ . '<br />'.
'Fichier : '. __FILE__ . '<br />');
}
 
// +------------------------------------------------------------------------------------------------------+
// Gestion des arguments de l'application
 
$arguments = explode(' ', $_GEN_commun['info_menu']->gm_application_arguments);
 
// Initialisaton de la variable globale $GS_ARGUMENTS
$_GEN_commun['info_application']->cache = false;
$_GEN_commun['info_application']->cache_duree = 0;
 
for ($i = 0; $i < count($arguments); $i++) {
$attr = explode('=', $arguments[$i]);
if (isset($_GEN_commun['info_menu']->gm_application_arguments)) {
$arguments = explode(' ', $_GEN_commun['info_menu']->gm_application_arguments);
if ($attr[0] == 'cache_duree') {
$_GEN_commun['info_application']->cache_duree = $attr[1];
if ($_GEN_commun['info_application']->cache_duree > 0) {
$_GEN_commun['info_application']->cache = true;
// Initialisaton de la variable globale $GS_ARGUMENTS
$_GEN_commun['info_application']->cache = false;
$_GEN_commun['info_application']->cache_duree = 0;
for ($i = 0; $i < count($arguments); $i++) {
$attr = explode('=', $arguments[$i]);
if ($attr[0] == 'cache_duree') {
$_GEN_commun['info_application']->cache_duree = $attr[1];
if ($_GEN_commun['info_application']->cache_duree > 0) {
$_GEN_commun['info_application']->cache = true;
}
} else if ($attr[0] != '') {
$_GEN_commun['info_application']->$attr[0] = (isset($attr[1]) ? $attr[1] : '');
}
} else if ($attr[0] != '') {
$_GEN_commun['info_application']->$attr[0] = (isset($attr[1]) ? $attr[1] : '');
}
}
 
467,9 → 476,15
// Gestion de l'objet URL
 
$_GEN_commun['url'] = & new Net_URL('http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']);
$_GEN_commun['url']->addQueryString(GEN_URL_CLE_SITE, $_GEN_commun['url_site']);
$_GEN_commun['url']->addQueryString(GEN_URL_CLE_MENU, $_GEN_commun['url_menu']);
 
if ( (isset($_GEN_commun['url_site'])) && (!empty($_GEN_commun['url_site'])) ) {
$_GEN_commun['url']->addQueryString(GEN_URL_CLE_SITE, $_GEN_commun['url_site']);
}
 
if ( (isset($_GEN_commun['url_menu'])) && (!empty($_GEN_commun['url_menu'])) ) {
$_GEN_commun['url']->addQueryString(GEN_URL_CLE_MENU, $_GEN_commun['url_menu']);
}
 
if ( (isset($_GEN_commun['url_i18n'])) && (!empty($_GEN_commun['url_i18n'])) ) {
$_GEN_commun['url']->addQueryString(GEN_URL_CLE_I18N, $_GEN_commun['url_i18n']);
}
486,6 → 501,9
 
/* +--Fin du code ---------------------------------------------------------------------------------------+
* $Log: not supported by cvs2svn $
* Revision 1.9 2004/10/15 18:29:19 jpm
* Modif pour gérer l'appli installateur de Papyrus.
*
* Revision 1.8 2004/09/23 14:30:53 jpm
* Correction bogue sur les menus.
*