Subversion Repositories Applications.papyrus

Compare Revisions

Ignore whitespace Rev 1032 → Rev 1033

/trunk/papyrus/applications/afficheur/afficheur.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: afficheur.php,v 1.10 2006-06-29 15:12:26 ddelon Exp $
// CVS : $Id: afficheur.php,v 1.11 2006-10-16 15:49:07 ddelon Exp $
/**
* Application réalisant l'affichage du contenu stocké dans Papyrus.
*
31,7 → 31,7
//Autres auteurs :
*@author Alexandre GRANIER <alexandrel@tela-botanica.org>
*@copyright Tela-Botanica 2000-2004
*@version $Revision: 1.10 $ $Date: 2006-06-29 15:12:26 $
*@version $Revision: 1.11 $ $Date: 2006-10-16 15:49:07 $
// +------------------------------------------------------------------------------------------------------+
*/
 
56,6 → 56,48
return '';
}
 
function afficherContenuCorps() {
 
 
$retour = '';
$db=$GLOBALS['_AFFICHEUR']['objet_pear_db'];
 
$id_or=GEN_rechercheMenuCode($db,GEN_rechercheMenuIdentifiant($db,$GLOBALS['_AFFICHEUR']['menu_courant_id']));
 
$ligne_contenu=GEN_rechercheContenu($db,$id_or);
$contenu = $ligne_contenu->gmc_contenu;
// Inclusion de la bibliothèque Text_Wiki_Papyrus effectuées par Papyrus précédement
// Les actions Text_Wiki_Papyrus sont gérées par Papyrus
// Nous regardons si nous avons à faire à un texte sous format Wikini ou XHTML
if (($ligne_contenu->gmc_ce_type_contenu == 1)||(substr($ligne_contenu->gmc_ce_type_contenu,-1)== 1)) {
$retour = $contenu;
} elseif (($ligne_contenu->gmc_ce_type_contenu == 2) || (substr($ligne_contenu->gmc_ce_type_contenu,-1)== 2)){
include_once AFFI_CHEMIN_BIBLIOTHEQUE_API.'text/wiki_wikini/Wikini.class.php';
// Création d'un objet Text_Wikini :
$wikini =& new Text_Wikini();
// Pour éviter de remplacer les caractères spéciaux du XHTML:
$wikini->setFormatConf('Xhtml', 'translate', false);
// Configuration de la règle Freelink :
$wikini->setRenderConf('Xhtml', 'freelink', 'pages', null);
$wikini->setRenderConf('Xhtml', 'freelink', 'view_url', AFFI_URL_PAPYRUS);
// Configuration de la règle Interwiki :
$wikini->setRenderConf('Xhtml', 'interwiki', 'sites', $GLOBALS['_AFFICHEUR']['interwiki_sites']);
// Application des règles de Wikini :
$retour = $wikini->transform($contenu, 'Xhtml');
}
 
//----------------------------------------------------------------------------
// Renvoie du contenu de la page
return $retour;
}
 
 
/** Fonction afficherContenuCorps() - Fonction appelé par le gestionnaire Papyrus.
*
* Elle retourne le contenu stocké dans Papyrus pour le menu courant demandé.
62,7 → 104,7
*
* @return string du code XHTML correspondant au contenu du menu demandé.
*/
function afficherContenuCorps()
function afficherContenuCorpsOld()
{
//----------------------------------------------------------------------------
// Initialisation des variable
105,7 → 147,6
$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete);
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
 
if ( $resultat->numRows() > 0 ) {
$ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT);
113,7 → 154,7
else {
// Recherche defaut :
 
$requete = 'SELECT gm_id_menu, gm_code_num '.
'FROM gen_menu '.
'WHERE gm_code_num = '.$ligne_menu['gm_code_num'].' ';
140,7 → 181,7
}
}
 
// Cas historique :
// Cas historique : ce menu n'a jamais été traduit.
$requete = 'SELECT gmc_contenu , gmc_ce_type_contenu '.
'FROM gen_menu_contenu '.
'WHERE gmc_ce_menu = '.$ligne->gm_id_menu.' '.
156,7 → 197,7
if ( $resultat->numRows() == 0 ) {
// Multilinguisme :
// Migration multilinguisme
$requete = 'SELECT gmc_contenu , gmc_ce_type_contenu '.
'FROM gen_menu_contenu '.
167,20 → 208,48
$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete);
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
// Pas de contenu, tentative de recuperation contenu initial
// Pas de contenu, tentative de recuperation du contenu se
if ( $resultat->numRows() == 0 ) {
$requete = 'SELECT gmr_id_menu_02 as gm_id_menu , ' . $ligne->gm_code_num . ' as gm_code_num '.
'FROM gen_menu_relation '.
'WHERE '.$ligne->gm_id_menu. ' = gmr_id_menu_01 ' .
'AND gmr_id_valeur = 105 ';// 105 Traduction par defaut
$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete);
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete))
: '';
 
$requete = 'SELECT gmc_contenu , gmc_ce_type_contenu '.
'FROM gen_menu_contenu, gen_menu_relation '.
'WHERE truncate((gmc_ce_type_contenu/10),0) = gmr_id_menu_01 '.
'AND '.$ligne->gm_id_menu.' = gmr_id_menu_02 '.
'AND gmr_id_valeur = 2 '.
'AND gmc_bool_dernier = 1';
'FROM gen_menu_contenu, gen_menu_relation '.
'WHERE truncate((gmc_ce_type_contenu/10),0) = gmr_id_menu_01 '.
'AND '.$ligne->gm_id_menu.' = gmr_id_menu_02 '.
'AND gmr_id_valeur = 2 '.
'AND gmc_bool_dernier = 1';
 
$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete);
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete)) : '';
 
/*
$requete = 'SELECT gmr_id_menu_02 as gm_id_menu , ' . $ligne->gm_code_num . ' as gm_code_num '.
'FROM gen_menu_relation '.
'WHERE '.$ligne->gm_id_menu. ' = gmr_id_menu_01 ' .
'AND gmr_id_valeur = 105 ';// 105 Traduction par defaut
$resultat = $GLOBALS['_AFFICHEUR']['objet_pear_db']->query($requete);
print_r ($requete);
(DB::isError($resultat)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $resultat->getMessage(), $requete))
: '';
*/
}
// Toujours rien ?
248,6 → 317,9
/* +--Fin du code ----------------------------------------------------------------------------------------+
*
* $Log: not supported by cvs2svn $
* Revision 1.10 2006/06/29 15:12:26 ddelon
* Multilinguisme : contenu par defaut
*
* Revision 1.9 2006/03/27 10:50:24 ddelon
* Still some pb
*
/trunk/papyrus/applications/afficheur/afficheur.admin.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: afficheur.admin.php,v 1.18 2006-04-28 12:41:49 florian Exp $
// CVS : $Id: afficheur.admin.php,v 1.19 2006-10-16 15:49:07 ddelon Exp $
/**
* Gestion de la rédaction du contenu pour Papyrus.
*
32,7 → 32,7
//Autres auteurs :
*@author Aucun
*@copyright Tela-Botanica 2000-2004
*@version $Revision: 1.18 $ $Date: 2006-04-28 12:41:49 $
*@version $Revision: 1.19 $ $Date: 2006-10-16 15:49:07 $
// +------------------------------------------------------------------------------------------------------+
*/
 
91,12 → 91,121
return $this->sortie_xhtml;
}
function _redigerContenu($db, $url, $adme_site_id, $adme_menu_id, $adme_action) {
$contenu='';
//-------------------------------------------------------------------------------------------------------------------
// Initialisation de variable
$url->addQueryString('adme_site_id', $adme_site_id);
$url->addQueryString('adme_menu_id', $adme_menu_id);
$url->addQueryString('adme_action', $adme_action);
$ligne_dernier_contenu=GEN_rechercheContenu($db,$adme_menu_id,DB_FETCHMODE_ASSOC);
// Hack :
$retour = '<h1>'.'Rédaction'.'</h1>'."\n";
//-------------------------------------------------------------------------------------------------------------------
// Création du formulaire
$form =& new HTML_QuickForm('form_modifier_contenu', 'post', str_replace('&amp;', '&', $url->getUrl()));
$tab_index = 1000;
$squelette =& $form->defaultRenderer();
$squelette->setFormTemplate("\n".'<form{attributes}>'."\n".'<ul>'."\n".'{content}'."\n".'</ul>'."\n".'</form>'."\n");
$squelette->setElementTemplate( '<li>'."\n".
'{label}'."\n".
'{element}'."\n".
'<!-- BEGIN required --><span class="symbole_obligatoire">*</span><!-- END required -->'."\n".
'<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n".
'</li>'."\n");
//$squelette->setHeaderTemplate('<p>{header}</p>');
//$form->addElement('header', 'Entete', 'REDACTION');
$aso_options = array();
$aso_options[1] = 'XHTML';
$aso_options[2] = 'WIKINI';
$id = 'gmc_ce_type_contenu';
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++);
$label = '<label for="'.$id.'">'.'Type de contenu : '.'</label>';
$form->addElement('select', $id, $label, $aso_options, $aso_attributs);
if ($GLOBALS['_AFFI_']['fckeditor']['utilisation']) {
/** Inclusion du fichier de FCKeditor*/
require_once AFFI_CHEMIN_FCKEDITOR.'fckeditor.php';
$fckeditor = new FCKeditor('gmc_contenu');
if ($ligne_dernier_contenu['gmc_contenu']) {
$fckeditor->Value = $ligne_dernier_contenu['gmc_contenu'];
}
else {
if ($contenu) {
$fckeditor->Value = $contenu;
}
else {
$fckeditor->Value = '';
}
}
$fckeditor->Height = $GLOBALS['_AFFI_']['fckeditor']['hauteur'];
$fckeditor->ToolbarSet = $GLOBALS['_AFFI_']['fckeditor']['barre'];
$fckeditor->Config['CustomConfigurationsPath']=$GLOBALS['_AFFI_']['fckeditor']['CustomConfigurationsPath'];
$fckeditor->Config['AutoDetectLanguage'] = false;
$fckeditor->Config['DefaultLanguage'] = $GLOBALS['_AFFI_']['fckeditor']['langue'];
$fckeditor->BasePath = AFFI_CHEMIN_FCKEDITOR;
if ($fckeditor->IsCompatible()) {
$form->addElement('html', '<li>'.$fckeditor->CreateHtml().'</li>');
} else {
$GLOBALS['_AFFI_']['fckeditor']['utilisation'] = false;
}
}
if (!$GLOBALS['_AFFI_']['fckeditor']['utilisation']) {
$id = 'gmc_contenu';
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'rows' => 20, 'cols' => 100);
$label = '<label for="'.$id.'">'.'Contenu : '.'</label>';
$form->addElement('textarea', $id, $label, $aso_attributs);
}
$aso_options = array();
$aso_options[1] = 'Mineure';
$aso_options[2] = 'Majeure';
$id = 'gmc_ce_type_modification';
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++);
$label = '<label for="'.$id.'">'.'Type de modification : '.'</label>';
$form->addElement('select', $id, $label, $aso_options, $aso_attributs);
$id = 'gmc_resume_modification';
$aso_attributs = array('id'=> $id, 'tabindex' => $tab_index++, 'size' => 45, 'maxlength' => 255);
$label = '<label for="'.$id.'">'.'Resumé modification : '.'</label>';
$form->addElement('text', $id, $label, $aso_attributs);
$form->addElement('hidden','gmc_ce_menu',$ligne_dernier_contenu['gmc_ce_menu']);
$form->addElement('hidden','gmc_ce_type_contenu_table',$ligne_dernier_contenu['gmc_ce_type_contenu']);
$liste_bouton_debut = '<ul class="liste_bouton">'."\n";
$form->addElement('html', $liste_bouton_debut);
$form->addElement('submit', 'afficheur_enregistrer_quitter', 'Enregistrer et quitter');
$form->addElement('submit', 'afficheur_enregistrer_rester', 'Enregistrer et rester en édition');
$form->addElement('submit', 'afficheur_enregistrer_ss_entite', 'Remplacer les entités xhtml');
$form->addElement('submit', 'afficheur_annuler', 'Annuler');
$liste_bouton_fin = '</ul>'."\n";
$form->addElement('html', $liste_bouton_fin);
$form->setDefaults($ligne_dernier_contenu);
$retour .= $form->toHTML()."\n";
return $retour;
}
/** Méthode redigerContenu() - Enregistre les infos du formulaire de saisie d'un menu
*
*
* @return void les données sont enregistrées dans la base de données.
*/
function _redigerContenu($db, $url, $adme_site_id, $adme_menu_id, $adme_action)
function _redigerContenuOld($db, $url, $adme_site_id, $adme_menu_id, $adme_action)
{
$contenu='';
391,6 → 500,8
return $retour;
}
/** Méthode ajouterContenu() - Enregistre les infos du formulaire de saisie d'un menu
*
*
403,17 → 514,6
$ligne_menu = GEN_lireInfoMenu($db, $adme_menu_id, DB_FETCHMODE_ASSOC);
$id_langue = $GLOBALS['_GEN_commun']['i18n'];
if (isset($id_langue) && ($id_langue!='')) {
$langue_test=$id_langue;
} else {
$langue_test=GEN_I18N_ID_DEFAUT;
}
if ($ligne_menu == false) {
die('ERREUR Papyrus Administrateur de Menus: impossible de lire les infos du menu.<br />'.
'Idenitifiant du menu n° : '. $adme_menu_id .'<br />'.
442,11 → 542,10
//-------------------------------------------------------------------------------------------------------------------
// Ajout du nouveau contenu pour ce menu
$tab_valeur['gmc_ce_type_contenu']=$tab_valeur['gmc_ce_type_contenu']+(10*$adme_menu_id);
$requete = 'INSERT INTO gen_menu_contenu SET '.
'gmc_id_contenu = '.$nouveau_id_contenu.', '.
'gmc_ce_admin = '.$auth->getAuthData('ga_id_administrateur').', '.
'gmc_ce_menu = '.$ligne_menu['gm_code_num'].', '.
'gmc_ce_menu = '.$adme_menu_id.', '.
'gmc_ce_type_contenu = '.$tab_valeur['gmc_ce_type_contenu'].', '.
'gmc_contenu = "'.$tab_valeur['gmc_contenu'].'", '.
'gmc_ce_type_modification = '.$tab_valeur['gmc_ce_type_modification'].', '.
453,7 → 552,6
'gmc_resume_modification = "'.$tab_valeur['gmc_resume_modification'].'", '.
'gmc_date_modification = "'.date('Y-m-d H:i:s').'", '.
'gmc_bool_dernier = 1';
$result = $db->query($requete);
(DB::isError($result)) ? die(BOG_afficherErreurSql(__FILE__, __LINE__, $result->getMessage(), $requete)) : '';
}
467,6 → 565,9
/* +--Fin du code ----------------------------------------------------------------------------------------+
*
* $Log: not supported by cvs2svn $
* Revision 1.18 2006/04/28 12:41:49 florian
* corrections erreurs chemin
*
* Revision 1.17 2006/03/27 13:42:32 ddelon
* the last but not the least
*