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: bazar.fonct.rss.php,v 1.78 2007-04-11 08:30:12 neiluj Exp $ |
// CVS : $Id: bazar.fonct.rss.php,v 1.79 2007-04-19 14:57:41 alexandre_tb Exp $ |
/** |
* |
*@package bazar |
28,7 → 28,7 |
*@author Florian Schmitt <florian@ecole-et-nature.org> |
//Autres auteurs : |
*@copyright Tela-Botanica 2000-2006 |
*@version $Revision: 1.78 $ |
*@version $Revision: 1.79 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
|
123,7 → 123,7 |
$url->addQueryString('id_fiche', $GLOBALS['_BAZAR_']['id_fiche']); |
$url = preg_replace ('/&/', '&', $url->getURL()) ; |
|
//cas ou la fiche a été validee |
//cas ou la fiche a ete validee |
if (isset($_GET['publiee'])) { |
publier_fiche($_GET['publiee']); |
} |
140,7 → 140,7 |
} |
} |
|
//cas ou un commentaire a été entre |
//cas ou un commentaire a ete entre |
if (isset($_POST['Nom'])) { |
$requete = 'INSERT INTO bazar_commentaires VALUES ('. |
baz_nextid('bazar_commentaires', 'bc_id_commentaire', $GLOBALS['_BAZAR_']['db']). |
170,11 → 170,10 |
|
$ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC) ; |
if (!isset($GLOBALS['_BAZAR_']['typeannonce'])) $GLOBALS['_BAZAR_']['typeannonce'] = $ligne['bf_ce_nature']; |
|
if (!isset($GLOBALS['_BAZAR_']['fiche_valide'])) $GLOBALS['_BAZAR_']['fiche_valide'] = $ligne['bf_statut_fiche']; |
//on verifie si l'utilisateur est administrateur |
$est_admin=0; |
$requete='SELECT bn_id_nature, bn_template, bn_commentaire FROM bazar_nature WHERE bn_id_nature="'.$GLOBALS['_BAZAR_']['typeannonce'].'"'; |
|
$requete='SELECT bn_id_nature, bn_template, bn_commentaire, bn_label_class FROM bazar_nature WHERE bn_id_nature='.$GLOBALS['_BAZAR_']['id_typeannonce']; |
$resultat = $GLOBALS['_BAZAR_']['db']->query($requete) ; |
if (DB::isError($resultat)) { |
die ($resultat->getMessage().$resultat->getDebugInfo()) ; |
183,6 → 182,7 |
$id_nature = $result['bn_id_nature']; |
if (!isset($GLOBALS['_BAZAR_']['template'])) $GLOBALS['_BAZAR_']['template'] = $result['bn_template']; |
if (!isset($GLOBALS['_BAZAR_']['commentaire'])) $GLOBALS['_BAZAR_']['commentaire'] = $result['bn_commentaire']; |
if (!isset($GLOBALS['_BAZAR_']['class'])) $GLOBALS['_BAZAR_']['class'] = $result['bn_label_class']; |
if ($GLOBALS['AUTH']->getAuth()) { |
if ((niveau_droit($result['bn_id_nature'],$GLOBALS['AUTH']->getAuthData(BAZ_CHAMPS_ID))=='administrateur') |
or(niveau_droit('0',$GLOBALS['AUTH']->getAuthData(BAZ_CHAMPS_ID))=='superadministrateur')) |
190,16 → 190,16 |
$est_admin=1; |
} |
} |
//debut de la fiche |
$res .= '<div class="BAZ_cadre_fiche BAZ_cadre_fiche_'.$GLOBALS['_BAZAR_']['class'].'">'."\n"; |
//affiche le titre sous forme d'image |
if (isset ($GLOBALS['_BAZAR_']['image_titre']) && $GLOBALS['_BAZAR_']['image_titre']!='') { |
$res .= '<img id="BAZ_img_titre" src="client/bazar/images/'.$GLOBALS['_BAZAR_']['image_titre'].'" alt="'.$result['bn_label_nature'].'" />'.'<br />'."\n"; |
$res .= '<img class="BAZ_img_titre" src="client/bazar/images/'.$GLOBALS['_BAZAR_']['image_titre'].'" alt="'.$result['bn_label_nature'].'" />'.'<br />'."\n"; |
} |
//affiche le texte sinon |
else { |
//$res .= '<h2 class="BAZ_titre">'.$GLOBALS['_BAZAR_']['typeannonce'].'</h2>'."\n"; |
$res .= '<h2 class="BAZ_titre BAZ_titre_'.$GLOBALS['_BAZAR_']['class'].'">'.$GLOBALS['_BAZAR_']['typeannonce'].'</h2>'."\n"; |
} |
$res .= '<div class="BAZ_cadre_fiche">'."\n"; |
|
$GLOBALS['_BAZAR_']['annonceur'] = $ligne['bf_ce_utilisateur'] ; |
//si le template existe, on genere le template |
if ((file_exists(BAZ_CHEMIN_APPLI.'templates/'.$GLOBALS['_BAZAR_']['typeannonce'].'-fiche.php'))) { |
208,20 → 208,20 |
} |
//on affiche ligne par ligne sinon |
else { |
//cas d'une image personalisée |
//cas d'une image personalisee |
if (isset($ligne['bf_url_image'])) { |
$res .= '<div id="fiche_image">'."\n"; |
$res .= '<img src="client/bazar/upload/'.$ligne['bf_url_image'].'" border=0 alt="'.BAZ_TEXTE_IMG_ALTERNATIF.'" />'."\n"; |
$res .= '<div class="BAZ_fiche_image BAZ_fiche_image_'.$GLOBALS['_BAZAR_']['class'].'">'."\n"; |
$res .= '<img class="BAZ_image" src="client/bazar/upload/'.$ligne['bf_url_image'].'" border=0 alt="'.BAZ_TEXTE_IMG_ALTERNATIF.'" />'."\n"; |
$res .= '</div>'."\n"; |
} |
//cas d'une image par défaut |
//cas d'une image par defaut |
elseif (isset ($GLOBALS['_BAZAR_']['image_logo']) && $GLOBALS['_BAZAR_']['image_logo']!='') { |
$res .= '<div id="fiche_image">'."\n"; |
$res .= '<img src="client/bazar/images/'.$GLOBALS['_BAZAR_']['image_logo'].'" border=0 alt="'.BAZ_TEXTE_IMG_ALTERNATIF.'" width="130" height="130" />'."\n"; |
$res .= '<div class="BAZ_fiche_image BAZ_fiche_image_'.$GLOBALS['_BAZAR_']['class'].'">'."\n"; |
$res .= '<img class="BAZ_image" src="client/bazar/images/'.$GLOBALS['_BAZAR_']['image_logo'].'" border=0 alt="'.BAZ_TEXTE_IMG_ALTERNATIF.'" width="130" height="130" />'."\n"; |
$res .= '</div>'."\n"; |
} |
$res .= '<h1 id="fiche_titre">'.$ligne['bf_titre'].'</h1>'."\n"; |
$res .= '<div id="BAZ_description">'.nl2br($ligne['bf_description']).'</div>'."\n"; |
$res .= '<h1 class="BAZ_fiche_titre BAZ_fiche_titre_'.$GLOBALS['_BAZAR_']['class'].'">'.$ligne['bf_titre'].'</h1>'."\n"; |
$res .= '<div class="BAZ_description BAZ_description_'.$GLOBALS['_BAZAR_']['class'].'">'.nl2br($ligne['bf_description']).'</div>'."\n"; |
$tableau=baz_valeurs_template($GLOBALS['_BAZAR_']['template']); |
for ($i=0; $i<count($tableau); $i++) { |
if (isset($ligne[$tableau[$i]['nom_bdd']]) && ( $tableau[$i]['type']=='texte' || $tableau[$i]['type']=='textelong' ) ) { |
228,8 → 228,8 |
$val=$tableau[$i]['nom_bdd']; |
if (!in_array($val, array ('bf_titre', 'bf_description'))) { |
if ($ligne[$val] != '' and $ligne[$val] != BAZ_CHOISIR and $ligne[$val] != BAZ_NON_PRECISE) { |
$res .= '<span class="rubrique" id="'.$tableau[$i]['nom_bdd'].'_rubrique">'.$tableau[$i]['label'].':</span>'."\n"; |
$res .= '<span class="description" id="'.$tableau[$i]['nom_bdd'].'_description"> '.nl2br($ligne[$val]).'</span>'."\n".'<br />'."\n"; |
$res .= '<div class="BAZ_rubrique BAZ_rubrique_'.$GLOBALS['_BAZAR_']['class'].'">'."\n".'<span class="BAZ_label" id="'.$tableau[$i]['nom_bdd'].'_rubrique">'.$tableau[$i]['label'].':</span>'."\n"; |
$res .= '<span class="BAZ_texte BAZ_texte_'.$GLOBALS['_BAZAR_']['class'].'" id="'.$tableau[$i]['nom_bdd'].'_description"> '.nl2br($ligne[$val]).'</span>'."\n".'</div>'."\n"; |
} |
} |
} |
248,8 → 248,8 |
$nb++; |
} |
if ($val != '' and $val != BAZ_CHOISIR and $val != BAZ_NON_PRECISE) { |
$res .= '<span class="rubrique" id="rubrique_'.$tableau[$i]['nom_bdd'].'">'.$tableau[$i]['label'].':</span>'."\n"; |
$res .= '<span class="description" id="description_'.$tableau[$i]['nom_bdd'].'"> '.$val.'</span>'."\n".'<br />'."\n"; |
$res .= '<div class="BAZ_rubrique BAZ_rubrique_'.$GLOBALS['_BAZAR_']['class'].'">'."\n".'<span class="BAZ_label" id="rubrique_'.$tableau[$i]['nom_bdd'].'">'.$tableau[$i]['label'].':</span>'."\n"; |
$res .= '<span class="BAZ_texte BAZ_texte_'.$GLOBALS['_BAZAR_']['class'].'" id="description_'.$tableau[$i]['nom_bdd'].'"> '.$val.'</span>'."\n".'</div>'."\n"; |
} |
} |
elseif ( $tableau[$i]['type']=='listedatedeb' || $tableau[$i]['type']=='listedatefin' ) { |
256,13 → 256,13 |
$val=$tableau[$i]['nom_bdd']; |
if (!in_array($val, array ('bf_date_debut_validite_fiche', 'bf_date_fin_validite_fiche'))) { |
if ($ligne[$val] != '' && $ligne[$val] != '0000-00-00') { |
$res .= '<span class="rubrique" id="'.$tableau[$i]['nom_bdd'].'_rubrique">'.$tableau[$i]['label'].':</span>'."\n"; |
$res .= '<span class="description" id="'.$tableau[$i]['nom_bdd'].'_description"> '.strftime('%d.%m.%Y',strtotime($ligne[$val])).'</span>'."\n".'<br />'."\n"; |
$res .= '<div class="BAZ_rubrique BAZ_rubrique_'.$GLOBALS['_BAZAR_']['class'].'">'."\n".'<span class="BAZ_label" id="'.$tableau[$i]['nom_bdd'].'_rubrique">'.$tableau[$i]['label'].':</span>'."\n"; |
$res .= '<span class="BAZ_texte BAZ_texte_'.$GLOBALS['_BAZAR_']['class'].'" id="'.$tableau[$i]['nom_bdd'].'_description"> '.strftime('%d.%m.%Y',strtotime($ligne[$val])).'</span>'."\n".'</div>'."\n"; |
} |
} |
} |
elseif ( $tableau[$i]['type']=='wikini' ) { |
$res .= '<div class="lien_wikini"><a href="wikini/'.baz_titre_wiki($ligne["bf_titre"]).'">'.BAZ_ENTRER_PROJET.'</a></div>'."\n"; |
$res .= '<div class="BAZ_lien_wikini BAZ_lien_wikini_'.$GLOBALS['_BAZAR_']['class'].'"><a href="wikini/'.genere_nom_wiki2($ligne["bf_titre"], TRUE).'">'.BAZ_ENTRER_PROJET.'</a></div>'."\n"; |
} |
} |
//afficher les liens pour l'annonce |
272,11 → 272,11 |
die ($resultat->getMessage().$resultat->getDebugInfo()) ; |
} |
if ($resultat->numRows()>0) { |
$res .= '<span class="rubrique">'.BAZ_LIEN_INTERNET.':</span>'."\n"; |
$res .= '<span class="description">'."\n"; |
$res .= '<ul>'."\n"; |
$res .= '<span class="BAZ_label BAZ_label_'.$GLOBALS['_BAZAR_']['class'].'">'.BAZ_LIEN_INTERNET.':</span>'."\n"; |
$res .= '<span class="BAZ_description BAZ_description_'.$GLOBALS['_BAZAR_']['class'].'">'."\n"; |
$res .= '<ul class="BAZ_liste BAZ_liste_'.$GLOBALS['_BAZAR_']['class'].'">'."\n"; |
while ($ligne1 = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$res .= '<li><a href="'.$ligne1['bu_url'].'" target="_blank">'.$ligne1['bu_descriptif_url'].'</a></li>'."\n"; |
$res .= '<li class="BAZ_liste_lien BAZ_liste_lien_'.$GLOBALS['_BAZAR_']['class'].'"><a href="'.$ligne1['bu_url'].'" class="BAZ_lien" target="_blank">'.$ligne1['bu_descriptif_url'].'</a></li>'."\n"; |
} |
$res .= '</ul></span>'."\n"; |
} |
288,17 → 288,17 |
die ($resultat->getMessage().$resultat->getDebugInfo()) ; |
} |
if ($resultat->numRows()>0) { |
$res .= '<span class="rubrique">'.BAZ_LISTE_FICHIERS_JOINTS.':</span>'."\n"; |
$res .= '<span class="description">'."\n"; |
$res .= '<ul>'."\n"; |
$res .= '<span class="BAZ_label BAZ_label_'.$GLOBALS['_BAZAR_']['class'].'">'.BAZ_LISTE_FICHIERS_JOINTS.':</span>'."\n"; |
$res .= '<span class="BAZ_description BAZ_description_'.$GLOBALS['_BAZAR_']['class'].'">'."\n"; |
$res .= '<ul class="BAZ_liste BAZ_liste_'.$GLOBALS['_BAZAR_']['class'].'">'."\n"; |
while ($ligne2 = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$res .= '<li><a href="client/bazar/upload/'.$ligne2['bfj_fichier'].'">'.$ligne2['bfj_description'].'</a></li>'."\n"; |
$res .= '<li class="BAZ_liste_fichier BAZ_liste_fichier_'.$GLOBALS['_BAZAR_']['class'].'"><a href="client/bazar/upload/'.$ligne2['bfj_fichier'].'">'.$ligne2['bfj_description'].'</a></li>'."\n"; |
} |
$res .= '</ul></span>'."\n"; |
} |
$res .= '<div class="bulle_haut"> </div>'."\n"; |
$res .= '<div class="bulle_corps">'."\n"; |
|
$res .= '<div class="BAZ_bulle_corps BAZ_bulle_corps_'.$GLOBALS['_BAZAR_']['class'].'">'."\n"; |
$res .= '<div class="BAZ_infos_fiche BAZ_infos_fiche_'.$GLOBALS['_BAZAR_']['class'].'">'."\n"; |
$res .= '<span class="BAZ_nb_vues BAZ_nb_vues_'.$GLOBALS['_BAZAR_']['class'].'">'.BAZ_NB_VUS.$ligne['bf_nb_consultations'].BAZ_FOIS.'</span><br />'."\n"; |
//affichage du redacteur de la fiche |
$requete = 'SELECT '.BAZ_CHAMPS_NOM.', '.BAZ_CHAMPS_PRENOM.', '.BAZ_CHAMPS_EMAIL. |
' FROM '.BAZ_ANNUAIRE.' WHERE '.BAZ_CHAMPS_ID.'='.$ligne['bf_ce_utilisateur']; |
307,62 → 307,70 |
die ($resultat->getMessage().$resultat->getDebugInfo()) ; |
} |
while ($redacteur = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$res .= BAZ_FICHE_ECRITE.'<a href="mailto:'.$redacteur[BAZ_CHAMPS_EMAIL].'">'.$redacteur[BAZ_CHAMPS_PRENOM].' '.$redacteur[BAZ_CHAMPS_NOM].'</a><br />'."\n"; |
$res .= BAZ_FICHE_NUMERO.$GLOBALS['_BAZAR_']['id_fiche'].BAZ_ECRITE.'<a href="mailto:'.$redacteur[BAZ_CHAMPS_EMAIL].'">'.$redacteur[BAZ_CHAMPS_PRENOM].' '.$redacteur[BAZ_CHAMPS_NOM].'</a><br />'."\n"; |
} |
$res .= BAZ_NB_VUS.'<strong>'.$ligne['bf_nb_consultations'].'</strong>'.BAZ_FOIS.'<br />'."\n"; |
$res .= '</div>'."\n"; |
$res .= '<div class="bulle_bas"> </div>'."\n"; |
$res .= '<div id="BAZ_bas_page">'; |
} |
|
//informations complementaires (id fiche, etat publication,... ) |
if ($danslappli==1) { |
if ($ligne['bf_statut_fiche']==1 && $GLOBALS['_BAZAR_']['appropriation']!=1) { |
if ($GLOBALS['_BAZAR_']['fiche_valide']==1 && $GLOBALS['_BAZAR_']['appropriation']!=1) { |
if ($ligne['bf_date_debut_validite_fiche'] != '0000-00-00' && $ligne['bf_date_fin_validite_fiche'] != '0000-00-00') { |
$res .= '<span class="rubrique">'.BAZ_PUBLIEE.':</span> '.BAZ_DU. |
$res .= '<span class="BAZ_rubrique BAZ_rubrique_'.$GLOBALS['_BAZAR_']['class'].'">'.BAZ_PUBLIEE.':</span> '.BAZ_DU. |
' '.strftime('%d.%m.%Y',strtotime($ligne['bf_date_debut_validite_fiche'])).' '. |
BAZ_AU.' '.strftime('%d.%m.%Y',strtotime($ligne['bf_date_fin_validite_fiche'])).'<br />'."\n"; |
} |
} |
elseif ($GLOBALS['_BAZAR_']['appropriation']!=1 || $ligne['bf_statut_fiche']!=1) { |
$res .= '<span class="rubrique">'.BAZ_PUBLIEE.':</span> '.BAZ_NON; |
elseif ($GLOBALS['_BAZAR_']['appropriation']!=1 || $GLOBALS['_BAZAR_']['fiche_valide']!=1) { |
$res .= '<span class="BAZ_rubrique BAZ_rubrique_'.$GLOBALS['_BAZAR_']['class'].'">'.BAZ_PUBLIEE.':</span> '.BAZ_NON.'<br />'."\n"; |
} |
//affichage des infos et du lien pour la mise a jour de la fiche |
if ( $est_admin || $GLOBALS['_BAZAR_']['annonceur']==$GLOBALS['AUTH']->getAuthData(BAZ_CHAMPS_ID) ) { |
$res .= '<span class="BAZ_rubrique BAZ_rubrique_'.$GLOBALS['_BAZAR_']['class'].'" id="date_creation">'.BAZ_DATE_CREATION.'</span> '.strftime('%d.%m.%Y %H:%M',strtotime($ligne['bf_date_creation_fiche']))."\n"; |
$res .= '<span class="BAZ_rubrique BAZ_rubrique_'.$GLOBALS['_BAZAR_']['class'].'" id="date_mise_a_jour">'.BAZ_DATE_MAJ.'</span> '.strftime('%d.%m.%Y %H:%M',strtotime($ligne['bf_date_maj_fiche']))."\n"; |
} |
$res .= '</div>'."\n"; |
if ( $est_admin || $GLOBALS['_BAZAR_']['annonceur']==$GLOBALS['AUTH']->getAuthData(BAZ_CHAMPS_ID) ) { |
$res .='<div class="BAZ_actions_fiche BAZ_actions_fiche_'.$GLOBALS['_BAZAR_']['class'].'">'."\n"; |
if ( $est_admin ) { |
$res .= ' <strong>'.BAZ_VALIDER_PUBLICATION.' : </strong>'."\n"; |
$res .= '<ul>'."\n"; |
$lien_publie = &$GLOBALS['_BAZAR_']['url']; |
$lien_publie->addQueryString('action', BAZ_VOIR_FICHE); |
$lien_publie->addQueryString('id_fiche', $GLOBALS['_BAZAR_']['id_fiche']); |
$lien_publie->addQueryString('typeannonce', $ligne['bf_ce_nature']); |
if ($GLOBALS['_BAZAR_']['fiche_valide']==0||$GLOBALS['_BAZAR_']['fiche_valide']==2) { |
$lien_publie->addQueryString('publiee', 1); |
$res .= '<a href="'.$lien_publie->getURL().'">'.BAZ_OUI.'</a> / '; |
$lien_publie->removeQueryString('publiee'); |
$label_publie=BAZ_VALIDER_LA_FICHE; |
$class_publie='_valider'; |
} elseif ($GLOBALS['_BAZAR_']['fiche_valide']==1) { |
$lien_publie->addQueryString('publiee', 0); |
$res .='<a href="'.$lien_publie->getURL().'">'.BAZ_NON.'</a>'."\n"; |
$label_publie=BAZ_INVALIDER_LA_FICHE; |
$class_publie='_invalider'; |
} |
$res .= '<li class="BAZ_liste'.$class_publie.'"><a href="'.$lien_publie->getURL().'">'.$label_publie.'</a></li>'."\n"; |
$lien_publie->removeQueryString('publiee'); |
} |
$res .= '<br />'."\n"; |
} |
//affichage des infos pouvant interesser les admins |
if ( $est_admin ) { |
$res .= '<span class="rubrique" id="numero_fiche">'.BAZ_NUM_FICHE.':</span> '.$GLOBALS['_BAZAR_']['id_fiche'].'<br />'."\n"; |
$res .= '<span class="rubrique" id="date_creation">'.BAZ_DATE_CREATION.' :</span> '.strftime('%d.%m.%Y à %H:%M',strtotime($ligne['bf_date_creation_fiche'])).'<br />'."\n"; |
} |
//affichage des infos et du lien pour la mise a jour de la fiche |
if ( $est_admin || $GLOBALS['_BAZAR_']['annonceur']==$GLOBALS['AUTH']->getAuthData(BAZ_CHAMPS_ID) ) { |
$res .= '<span class="rubrique" id="date_mise_a_jour">'.BAZ_DATE_MAJ.' :</span> '.strftime('%d.%m.%Y à %H:%M',strtotime($ligne['bf_date_maj_fiche']))."\n"; |
$lien_modifier=$GLOBALS['_BAZAR_']['url']; |
$lien_modifier->addQueryString('action', BAZ_ACTION_MODIFIER); |
$lien_modifier->addQueryString('id_fiche', $GLOBALS['_BAZAR_']['id_fiche']); |
$lien_modifier->addQueryString('typeannonce', $ligne['bf_ce_nature']); |
$res .= ' <a href="'.$lien_modifier->getURL().'" id="modifier_fiche">'.BAZ_MODIFIER_LA_FICHE.'</a>'."\n"; |
$res .= '<li class="BAZ_liste_modifier"><a href="'.$lien_modifier->getURL().'" id="modifier_fiche">'.BAZ_MODIFIER_LA_FICHE.'</a></li>'."\n"; |
$lien_supprimer=$GLOBALS['_BAZAR_']['url']; |
$lien_supprimer->addQueryString('action', BAZ_ACTION_SUPPRESSION); |
$lien_supprimer->addQueryString('id_fiche', $GLOBALS['_BAZAR_']['id_fiche']); |
$lien_supprimer->addQueryString('typeannonce', $ligne['bf_ce_nature']); |
$res .= '<li class="BAZ_liste_supprimer"><a href="'.$lien_supprimer->getURL().'" id="supprimer_fiche">'.BAZ_SUPPRIMER_LA_FICHE.'</a></li>'."\n"; |
$res .= '</ul>'."\n"; |
$res .= '</div>'."\n"; |
} |
} |
|
$res .= '</div>'."\n"; |
} |
$res .= '</div>'."\n"; |
|
//on ajoute les appropriations, s'il le faut |
if (($danslappli==1)and($GLOBALS['_BAZAR_']['appropriation']==1)) { |
$res .= '<br />'."\n".'<div class="BAZ_cadre_fiche">'."\n"; |
$res .= '<h3>'.BAZ_LES_STRUCTURES_POSSEDANT_UNE_RESSOURCE.'</h3>'."\n"; |
$res .= '<br />'."\n".'<div class="BAZ_cadre_fiche BAZ_cadre_fiche_'.$GLOBALS['_BAZAR_']['class'].'">'."\n"; |
$res .= '<h2 class="BAZ_titre BAZ_titre_'.$GLOBALS['_BAZAR_']['class'].'">'.BAZ_LES_STRUCTURES_POSSEDANT_UNE_RESSOURCE.'</h2>'."\n"; |
$requete = 'SELECT '.BAZ_CHAMPS_ID.', '.BAZ_CHAMPS_NOM.' FROM bazar_appropriation,'.BAZ_ANNUAIRE.' WHERE ba_ce_id_fiche='.$GLOBALS['_BAZAR_']['id_fiche'].' AND ba_ce_id_structure='.BAZ_CHAMPS_ID.' ORDER BY '.BAZ_CHAMPS_NOM.' ASC'; |
$resultat = $GLOBALS['_BAZAR_']['db']->query($requete) ; |
if (DB::isError ($resultat)) { |
381,7 → 389,7 |
$res .= '</ul><br />'."\n"; |
} |
else $res .= BAZ_PAS_D_APPROPRIATION.'<br /><br />'."\n"; |
$res .='<p class="bulle_corps">'."\n"; |
$res .='<p class="BAZ_bulle_corps BAZ_bulle_corps_'.$GLOBALS['_BAZAR_']['class'].'">'."\n"; |
$lien_appropriation = $GLOBALS['_BAZAR_']['url']; |
$lien_appropriation->addQueryString('action', BAZ_VOIR_FICHE); |
$lien_appropriation->addQueryString('id_fiche', $GLOBALS['_BAZAR_']['id_fiche']); |
407,8 → 415,8 |
|
//on ajoute les commentaires, s'il le faut |
if (($danslappli==1)and($GLOBALS['_BAZAR_']['commentaire']==1)) { |
$res .= '<br />'."\n".'<div class="BAZ_cadre_fiche">'."\n"; |
$res .= '<h3>'.BAZ_LES_COMMENTAIRES.'</h3>'."\n"; |
$res .= '<br />'."\n".'<div class="BAZ_cadre_fiche BAZ_cadre_fiche_'.$GLOBALS['_BAZAR_']['class'].'">'."\n"; |
$res .= '<h2 class="BAZ_titre BAZ_titre_'.$GLOBALS['_BAZAR_']['class'].'">'.BAZ_LES_COMMENTAIRES.'</h2>'."\n"; |
$requete = 'SELECT * FROM bazar_commentaires WHERE bc_ce_id_fiche='.$GLOBALS['_BAZAR_']['id_fiche'].' ORDER BY bc_date ASC'; |
$resultat = $GLOBALS['_BAZAR_']['db']->query($requete) ; |
if (DB::isError ($resultat)) { |
419,13 → 427,10 |
if ($resultat->numRows()==1) $res .= BAZ_COMMENTAIRE.'<br />'."\n"; |
else $res .= BAZ_COMMENTAIRES.'<br />'."\n"; |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$res .= '<div class="bulle_haut"> </div>'."\n"; |
$res .= '<div class="bulle_corps">'."\n"; |
$res .= '<div class="BAZ_bulle_corps BAZ_bulle_corps_'.$GLOBALS['_BAZAR_']['class'].'">'."\n"; |
//affichage du commentaire |
$res .= $ligne['bc_commentaire'].'<br />'."\n"; |
$res .= '</div>'."\n"; |
$res .= '<div class="bulle_bas">'."\n"; |
$res .= '<div style="font-size:9px;margin-left:10px;">'.BAZ_PAR.' : <strong>'.$ligne['bc_nom'].'</strong>'.BAZ_ECRIT_LE.$ligne['bc_date'].'</div>'."\n"; |
$res .= '<div class="BAZ_commentaire_admin">'.BAZ_PAR.' : <strong>'.$ligne['bc_nom'].'</strong>'.BAZ_ECRIT_LE.strftime('%d.%m.%Y %H:%M',strtotime($ligne['bc_date'])); |
//pour les identifies seulement, administrateurs de la rubrique ou superadmins |
if ($est_admin==1) { |
$url_comment= $GLOBALS['_BAZAR_']['url']; |
432,9 → 437,10 |
$url_comment->addQueryString('action', BAZ_VOIR_FICHE); |
$url_comment->addQueryString('id_fiche', $GLOBALS['_BAZAR_']['id_fiche']); |
$url_comment->addQueryString('id_commentaire', $ligne['bc_id_commentaire']); |
$res .= '<a href="'.$url_comment->getURL().'" style="font-size:9px;float:right;">'.BAZ_SUPPRIMER.'</a>'."\n"; |
$res .= ' <a href="'.$url_comment->getURL().'">'.BAZ_SUPPRIMER.'</a>'."\n"; |
} |
$res .= '</div>'."\n"; |
$res .= '</div>'."\n"; |
} |
} |
else $res .= BAZ_PAS_DE_COMMENTAIRES.'<br /><br />'."\n"; |
470,7 → 476,54 |
return $res ; |
} |
|
// merci PHP 5 ... |
function mb_str_split2($str, $length = 1) { |
|
if ($length < 1) return FALSE; |
|
$result = array(); |
|
for ($i = 0; $i < strlen($str); $i += $length) { |
$result[] = substr($str, $i, $length); |
} |
|
return $result; |
} |
|
function remove_accents2( $string ) |
{ |
$string = htmlentities($string); |
return preg_replace("/&([a-z])[a-z]+;/i","$1",$string); |
} |
|
function genere_nom_wiki2($nom, $spaces = FALSE) |
{ |
// traitement des accents |
$nom = remove_accents2($nom); |
|
$temp = mb_str_split2($nom); |
|
$count = 0; |
$final = NULL; |
foreach($temp as $letter) |
{ |
if(preg_match('/([[:space:]]|[[:punct:]])/', $letter)) |
{ |
$final .= ($spaces ? '_' : ''); |
} elseif(preg_match ('/[a-zA-Z0-9]/', $letter)) { |
$final .= (($count == 0 || $count == (strlen($nom) - 1)) ? strtoupper($letter) : strtolower($letter)); |
} |
$count++; |
} |
|
// vérifions que le retour n'est pas uniquement un underscore |
if(preg_match('/^[[:punct:]]+$/', $final)) return FALSE; |
|
// sinon retour du nom formaté |
return($final); |
} |
|
|
/** RSSversHTML () transforme un flux RSS (en XML) en page HTML |
* |
* On passe en paramètre le contenu du flux RSS, on affiche ou non la description, |
557,7 → 610,7 |
$requete .= 'bf_statut_fiche='.$valide; |
$req_where=1; |
} |
$nomflux=BAZ_DERNIERE_ACTU; |
$nomflux=html_entity_decode(BAZ_DERNIERE_ACTU); |
if (!is_array ($typeannonce) && $typeannonce!='' and $typeannonce!='toutes') { |
if ($req_where==1) {$requete .= ' AND ';} |
$requete .= 'bf_ce_nature='.$typeannonce.' and bf_ce_nature=bn_id_nature ';; |
621,78 → 674,102 |
die ($resultat->getMessage().$resultat->getDebugInfo()) ; |
} |
|
function xmlEntities($s){ |
//build first an assoc. array with the entities we want to match |
$table1 = get_html_translation_table(HTML_ENTITIES, ENT_QUOTES); |
include_once PAP_CHEMIN_API_PEAR . 'XML/Util.php' ; |
|
//now build another assoc. array with the entities we want to replace (numeric entities) |
foreach ($table1 as $k=>$v){ |
$table1[$k] = "/$v/"; |
$c = htmlentities($k,ENT_QUOTES,"UTF-8"); |
$table2[$c] = "&#".ord($k).";"; |
} |
// passage en utf-8 --julien |
// -- |
|
//now perform a replacement using preg_replace |
//each matched value in array 1 will be replaced with the corresponding value in array 2 |
$s = preg_replace($table1,$table2,$s); |
return $s; |
} |
// setlocale() pour avoir les formats de date valides (w3c) --julien |
setlocale(LC_TIME, "C"); |
|
include_once 'XML/Util.php' ; |
|
$xml = XML_Util::getXMLDeclaration('1.0', 'ISO-8859-1', 'no') ; |
$xml = XML_Util::getXMLDeclaration('1.0', 'UTF-8', 'yes') ; |
$xml .= "\r\n "; |
$xml .= XML_Util::createStartElement ('rss', array('version' => '2.0')) ; |
$xml .= "\r\n "; |
$xml .= XML_Util::createStartElement ('channel'); |
$xml .= XML_Util::createTag ('title', null, $nomflux, null, false); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('title', null, utf8_encode(html_entity_decode($nomflux))); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('link', null, BAZ_RSS_ADRESSESITE); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('description', null, BAZ_RSS_DESCRIPTIONSITE); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('language', null, 'fr-FR'); |
$xml .= XML_Util::createTag ('copyright', null, 'Copyright 2005 '.BAZ_RSS_NOMSITE); |
$xml .= XML_Util::createTag ('lastBuildDate', null, strftime('%d %b %Y %H:%M:%S GMT')); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('copyright', null, 'Copyright (c) '. date('Y') .' '. BAZ_RSS_NOMSITE); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('lastBuildDate', null, strftime('%a, %d %b %Y %H:%M:%S GMT')); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('docs', null, 'http://www.stervinou.com/projets/rss/'); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('category', null, BAZ_RSS_CATEGORIE); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('managingEditor', null, BAZ_RSS_MANAGINGEDITOR); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('webMaster', null, BAZ_RSS_WEBMASTER); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('ttl', null, '60'); |
$xml .= "\r\n "; |
$xml .= XML_Util::createStartElement ('image'); |
$xml .= XML_Util::createTag ('title', null, BAZ_RSS_NOMSITE); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('title', null, utf8_encode(html_entity_decode(BAZ_RSS_NOMSITE))); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('url', null, BAZ_RSS_LOGOSITE); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('link', null, BAZ_RSS_ADRESSESITE); |
$xml .= "\r\n "; |
$xml .= XML_Util::createEndElement ('image'); |
if ($resultat->numRows()>0) { |
// Creation des items : titre + lien + description + date de publication |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$xml .= "\r\n "; |
$xml .= XML_Util::createStartElement ('item'); |
$caractere = array('/\x92/', '/\x85/', '/\x80/', '/\x97/', '/\x96/'); |
$caractere_remplacement = array ('’', '…', '€', '—', '–'); |
$xml .= XML_Util::createTag ('title', null, preg_replace ($caractere, $caractere_remplacement, |
XML_Util::replaceEntities($ligne['bf_titre']))); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('title', null, utf8_encode(html_entity_decode(($ligne['bf_titre'])))); |
$xml .= "\r\n "; |
$lien=$GLOBALS['_BAZAR_']['url']; |
$lien->addQueryString('action', BAZ_VOIR_FICHE); |
$lien->addQueryString('id_fiche', $ligne['bf_id_fiche']); |
$xml .= XML_Util::createTag ('link', null, $lien->getURL()); |
$xml .= XML_Util::createTag ('guid', null, $lien->getURL()); |
$xml .= XML_Util::createTag ('link', null, utf8_encode(html_entity_decode($lien->getURL()))); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('guid', null, utf8_encode(html_entity_decode($lien->getURL()))); |
$xml .= "\r\n "; |
$xml .= XML_Util::createStartElement ('description'); |
$xml .= "\r\n "; |
if ($_GET['action'] != BAZ_VOIR_TOUTES_ANNONCES) { |
$xml .= XML_Util::createCDataSection (preg_replace ($caractere, $caractere_remplacement, $ligne['bf_description'])); |
$xml .= XML_Util::createCDataSection ( utf8_encode(html_entity_decode(($ligne['bf_description'])))); |
} |
$xml .= "\r\n "; |
$xml .= XML_Util::createEndElement ('description'); |
if ($ligne['bf_date_debut_validite_fiche'] == '0000-00-00') $date_pub = $ligne[' bf_date_creation_fiche'] ; else |
$xml .= "\r\n "; |
if ($ligne['bf_date_debut_validite_fiche'] != '0000-00-00' && |
$ligne['bf_date_debut_validite_fiche']>$ligne['bf_date_creation_fiche']) { |
$date_pub = $ligne['bf_date_debut_validite_fiche']; |
$xml .= XML_Util::createTag ('pubDate', null, strftime('%d %b %Y %H:%M:%S GMT',strtotime($date_pub))); |
} else $date_pub = $ligne['bf_date_creation_fiche'] ; |
$xml .= XML_Util::createTag ('pubDate', null, strftime('%a, %d %b %Y %H:%M:%S GMT',strtotime($date_pub))); |
$xml .= "\r\n "; |
$xml .= XML_Util::createEndElement ('item'); |
} |
} |
else {//pas d'annonces |
$xml .= "\r\n "; |
$xml .= XML_Util::createStartElement ('item'); |
$xml .= XML_Util::createTag ('title', null, BAZ_PAS_D_ANNONCES); |
$xml .= XML_Util::createTag ('link', null, '#'); |
$xml .= XML_Util::createTag ('description', null, BAZ_PAS_D_ANNONCES); |
$xml .= XML_Util::createTag ('pubDate', null, strftime('%d %b %Y %H:%M:%S GMT',strtotime('12/12/2004'))); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('title', null, utf8_encode(html_entity_decode(BAZ_PAS_D_ANNONCES))); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('link', null, utf8_encode(html_entity_decode($GLOBALS['_BAZAR_']['url']->getUrl()))); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('guid', null, utf8_encode(html_entity_decode($GLOBALS['_BAZAR_']['url']->getUrl()))); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('description', null, utf8_encode(html_entity_decode(BAZ_PAS_D_ANNONCES))); |
$xml .= "\r\n "; |
$xml .= XML_Util::createTag ('pubDate', null, strftime('%a, %d %b %Y %H:%M:%S GMT',strtotime("01/01/%Y"))); |
$xml .= "\r\n "; |
$xml .= XML_Util::createEndElement ('item'); |
|
} |
$xml .= "\r\n "; |
$xml .= XML_Util::createEndElement ('channel'); |
$xml .= "\r\n "; |
$xml .= XML_Util::createEndElement('rss') ; |
|
// Nettoyage de l'url |
739,7 → 816,7 |
if (DB::isError($resultat)) { |
die ($resultat->getMessage().$resultat->getDebugInfo()) ; |
} |
//on récupère le nb de types de fiches, pour plus tard |
//on recupere le nb de types de fiches, pour plus tard |
$nb_type_de_fiches=$resultat->numRows(); |
$type_annonce_select['toutes']=BAZ_TOUS_TYPES_FICHES; |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
756,7 → 833,7 |
$formtemplate->setDefaults($defauts); |
} |
} |
//cas du type d'annonces prédéfini |
//cas du type d'annonces predefini |
else { |
if ($nb_type_de_fiches==1) { |
$GLOBALS['_BAZAR_']['typeannonce']=end($type_annonce_select); |
766,9 → 843,9 |
} |
|
//requete pour obtenir l'id, le nom et prenom de toutes les personnes ayant depose une fiche |
// dans le but de construire l'élément de formulaire select avec les noms des émetteurs de fiche |
// dans le but de construire l'element de formulaire select avec les noms des emetteurs de fiche |
if (BAZ_RECHERCHE_PAR_EMETTEUR) { |
$requete = 'SELECT '.BAZ_CHAMPS_ID.', '.BAZ_CHAMPS_NOM.', '.BAZ_CHAMPS_PRENOM.' '. |
$requete = 'SELECT DISTINCT '.BAZ_CHAMPS_ID.', '.BAZ_CHAMPS_NOM.', '.BAZ_CHAMPS_PRENOM.' '. |
'FROM bazar_fiche,'.BAZ_ANNUAIRE.' WHERE ' ; |
|
$requete .= ' bf_date_debut_validite_fiche<=NOW() AND bf_date_fin_validite_fiche>=NOW() and'; |
800,7 → 877,7 |
$formtemplate->addElement ('hidden', 'personnes', 'tous') ; |
} |
|
//pour les super-administrateurs, on peut voir les annonces non validées |
//pour les super-administrateurs, on peut voir les annonces non validees |
//on verifie si l'utilisateur est administrateur |
$utilisateur = new Administrateur_bazar($GLOBALS['AUTH']) ; |
|
830,7 → 907,7 |
$_REQUEST['nature'] = $tableau_typeannonces[0]; |
} |
} |
// Récupération du template |
// Recuperation du template |
$requete = 'SELECT bn_template FROM bazar_nature WHERE bn_id_nature = '.$_REQUEST['nature']; |
$resultat = $GLOBALS['_BAZAR_']['db']->getOne($requete) ; |
if (DB::isError($resultat)) { |
841,7 → 918,6 |
foreach(array_merge($_POST, $_GET) as $cle => $valeur) $GLOBALS['_BAZAR_']['url']->addQueryString($cle, $valeur); |
$GLOBALS['_BAZAR_']['url']->addQueryString('recherche_avancee', '0'); |
$lien_recherche_de_base = '<a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.BAZ_RECHERCHE_DE_BASE.'</a><br />'; |
foreach(array_merge($_POST, $_GET) as $cle => $valeur) $GLOBALS['_BAZAR_']['url']->removeQueryString($cle); |
//lien recherche de base |
labelhtml($formtemplate,'',$lien_recherche_de_base,'','','','',''); |
} |
873,7 → 949,7 |
$formtemplate->addElement('submit', 'rechercher', BAZ_RECHERCHER, $option); |
|
//affichage du formulaire |
$res.=$formtemplate->toHTML()."\n"; |
//$res.=$formtemplate->toHTML()."\n"; |
|
|
// Ajout de la table bazar_fiche_liste_valeur dans le from de la requete |
880,7 → 956,7 |
$case_coche = false ; |
$nb_jointures=0; |
$requeteFrom = '' ; |
$requeteWhere = ' bn_ce_id_menu IN ('.$GLOBALS['_BAZAR_']['categorie_nature'].') AND bn_id_nature=bf_ce_nature AND ' ; |
$requeteWhere = ' bn_ce_id_menu IN ('.$GLOBALS['_BAZAR_']['categorie_nature'].') AND bn_id_nature='.$GLOBALS['_BAZAR_']['id_typeannonce'].' AND bn_id_nature=bf_ce_nature AND ' ; |
$requeteWhereListe = '' ; |
|
if ( isset($tableau) ) { |
890,7 → 966,9 |
$nom_liste = $tableau[$i]['type'].$tableau[$i]['nom_bdd'] ; |
if (isset($_REQUEST[$nom_liste]) && is_array($_REQUEST[$nom_liste])) { |
$case_coche = true; |
$requeteFrom .= ', bazar_fiche_valeur_liste as bfvl'.($nb_jointures) ; |
$requeteWhereListe .= ' bfvl'.$nb_jointures.'.bfvl_ce_liste='.$tableau[$i]['nom_bdd'].' AND ' ; // Numéro de la liste |
$requeteWhere .= ' bfvl'.($nb_jointures).'.bfvl_ce_fiche=bf_id_fiche AND '; |
$requeteWhereListe .= ' bfvl'.$nb_jointures.'.bfvl_valeur IN (' ; |
$chaine = ''; |
//var_dump($_REQUEST[$nom_liste]); |
903,8 → 981,10 |
$requeteWhereListe .= ') AND '; |
} else { |
if (isset ($_REQUEST[$nom_liste]) && $_REQUEST[$nom_liste]!=0) { |
$requeteFrom .= ', bazar_fiche_valeur_liste as bfvl'.($nb_jointures) ; |
$requeteWhereListe .= ' bfvl'.$nb_jointures.'.bfvl_ce_liste='.$tableau[$i]['nom_bdd'].' AND ' ; // Numéro de la liste |
$requeteWhereListe .= ' bfvl'.$nb_jointures.'.bfvl_valeur='.$_REQUEST[$nom_liste].' AND '; |
$requeteWhere .= ' bfvl'.($nb_jointures).'.bfvl_ce_fiche=bf_id_fiche AND '; |
$case_coche = true; |
} |
} |
912,10 → 992,6 |
} |
} |
if ($case_coche) { |
for ($i = 0; $i < $nb_jointures ; $i++) { |
$requeteFrom .= ', bazar_fiche_valeur_liste as bfvl'.($i+1) ; |
$requeteWhere .= ' bfvl'.($i+1).'.bfvl_ce_fiche=bf_id_fiche AND '; |
} |
$requeteWhere .= $requeteWhereListe; |
} |
if (isset($_REQUEST['nature']) && $_REQUEST['nature']!='' && $_REQUEST['nature']!='toutes') { |
922,6 → 998,30 |
$requeteWhere = 'bf_ce_nature="'.$_REQUEST['nature'].'" AND '.$requeteWhere; |
} |
|
if (BAZ_UTILISE_TEMPLATE) { |
// Appel du template n 1 |
include_once BAZ_CHEMIN_APPLI.'bibliotheque/bazarTemplate.class.php' ; |
|
$template = new bazarTemplate ($GLOBALS['_BAZAR_']['db']) ; |
$chaine = $template->getTemplate(1, $GLOBALS['_BAZAR_']['langue'], $GLOBALS['_BAZAR_']['categorie_nature']); |
if (bazarTemplate::isError ($chaine)) return $chaine->getMessage() ; |
ob_start(); |
eval ($chaine) ; |
$res .= ob_get_contents(); |
ob_end_clean() ; |
} else { |
$res .= $formtemplate->toHTML(); |
if (!isset($_REQUEST['recherche_effectuee'])) { |
$res .= '<p class="zone_info">'.BAZ_ENTRER_VOS_CRITERES_DE_RECHERCHE.'</p>'."\n"; |
$GLOBALS['_BAZAR_']['url']->addQueryString('action',BAZ_VOIR_FLUX_RSS); |
$GLOBALS['_BAZAR_']['url']->addQueryString('annonce',$GLOBALS['_BAZAR_']['id_typeannonce']); |
if ($GLOBALS['_BAZAR_']['categorie_nature']!=0) $GLOBALS['_BAZAR_']['url']->addQueryString('categorie_nature',$GLOBALS['_BAZAR_']['categorie_nature']); |
$res .= '{{Syndication titre="Dernières actualités" url="'.$GLOBALS['_BAZAR_']['url']->getURL().'" nb=10 nouvellefenetre=0 formatdate="'.BAZ_FORMAT_DATE_DEFAUT.'"}}'; |
} |
} |
|
|
|
//affichage des resultats de la recherche si le formulaire a ete envoye |
$requeteSQL=''; |
if (isset($_REQUEST['recherche_effectuee'])) { |
947,19 → 1047,9 |
if (isset($_REQUEST['valides'])) {$valides=$_REQUEST['valides'];} |
else {$valides=1;} |
//generation de la liste de flux a afficher |
if (!isset($_REQUEST['personne'])) $_REQUEST['personne']='tous'; |
$res .= baz_liste_pagine_HTML($typedefiches, '', $_REQUEST['personne'], $valides, $requeteSQL, $requeteFrom, $requeteWhere); |
if (!isset($_REQUEST['personnes'])) $_REQUEST['personnes']='tous'; |
$res .= baz_liste_pagine_HTML($typedefiches, '', $_REQUEST['personnes'], $valides, $requeteSQL, $requeteFrom, $requeteWhere); |
} |
else { |
//on affiche toutes les annonces |
$res .= '<br /><p class="zone_info">'."\n".BAZ_ENTRER_VOS_CRITERES_DE_RECHERCHE.'</p>'."\n"; |
$GLOBALS['_BAZAR_']['url']->removeQueryString('action'); |
$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_VOIR_FLUX_RSS); |
$GLOBALS['_BAZAR_']['url']->addQueryString('annonce', $typeannonce); |
$GLOBALS['_BAZAR_']['url']->addQueryString('categorie_nature', $GLOBALS['_BAZAR_']['categorie_nature']); |
$res .= '{{Syndication titre="'.BAZ_DERNIERES_FICHES.'" url="'.preg_replace ('/&/', '&', $GLOBALS['_BAZAR_']['url']->getURL()). |
'" nb=10 nouvellefenetre=0 formatdate="'.BAZ_TYPE_AFFICHAGE_LISTE.'"}}'; |
} |
|
// Nettoyage de l'url |
$GLOBALS['_BAZAR_']['url']->removeQueryString('action'); |
976,7 → 1066,7 |
function baz_liste_pagine_HTML($typeannonce, $nbitem, $emetteur, $valide, $requeteSQL = '', $requeteFrom = '', $requeteWhere = '') { |
// generation de la requete MySQL personnalisee |
$req_where=0; |
$requete = 'SELECT DISTINCT bf_id_fiche, bf_titre, bf_ce_utilisateur, bf_date_debut_validite_fiche '. |
$requete = 'SELECT * '. |
'FROM bazar_fiche, bazar_nature '.$requeteFrom.' WHERE '.$requeteWhere; |
if ($valide!=2) { |
if ($req_where==1) {$requete .= ' AND ';} |
1001,16 → 1091,7 |
if ($req_where==1) {$requete .= ' AND ';} |
$requete .= 'bf_ce_utilisateur='.$emetteur; |
$req_where=1; |
//requete pour afficher le nom de la structure |
$requetenom = 'SELECT '.BAZ_CHAMPS_NOM.', '.BAZ_CHAMPS_PRENOM.' FROM '. |
BAZ_ANNUAIRE.' WHERE '.BAZ_CHAMPS_ID.'='.$emetteur; |
$resultat = $GLOBALS['_BAZAR_']['db']->query($requetenom) ; |
if (DB::isError($resultat)) { |
die ($resultat->getMessage().$resultat->getDebugInfo()) ; |
} |
$ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC); |
$nomflux .= ' ('.$ligne[BAZ_CHAMPS_NOM].' '.$ligne[BAZ_CHAMPS_PRENOM].')'; |
} |
if ($requeteSQL!='') { |
if ($req_where==1) {$requete .= ' AND ';} |
$requete .= '('.$requeteSQL.')'; |
1018,19 → 1099,19 |
} |
$requete .= ' ORDER BY bf_date_debut_validite_fiche DESC, bf_date_fin_validite_fiche DESC, bf_date_maj_fiche DESC'; |
if ($nbitem!='') {$requete .= ' LIMIT 0,'.$nbitem;} |
|
$resultat = $GLOBALS['_BAZAR_']['db']->query($requete) ; |
if (DB::isError($resultat)) { |
die ($resultat->getMessage().$resultat->getDebugInfo()) ; |
return $resultat->getMessage().'<br /><br />'.$resultat->getDebugInfo() ; |
} |
$res = '<br /><h4>'.BAZ_IL_Y_A.($resultat->numRows()).' '.BAZ_FICHES_CORRESPONDANTES.'</h4><br />'."\n"; |
//$res .= 'requete: '. $requete. '<br />'; |
$res .= '<ul>' ; |
$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_VOIR_FICHE); |
|
$donnees = array(); |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
$GLOBALS['_BAZAR_']['url']->addQueryString('id_fiche', $ligne->bf_id_fiche) ; |
array_push ($donnees, array ($ligne->bf_id_fiche,$ligne->bf_titre,$ligne->bf_ce_utilisateur)); |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$GLOBALS['_BAZAR_']['url']->addQueryString('id_fiche', $ligne['bf_id_fiche']) ; |
array_push ($donnees, $ligne); |
} |
// Mise en place du Pager |
include_once PAP_CHEMIN_API_PEAR.'Pager/Pager.php'; |
1049,27 → 1130,41 |
$pager = & Pager::factory($params); |
$data = $pager->getPageData(); |
$links = $pager->getLinks(); |
|
if (BAZ_UTILISE_TEMPLATE) { |
//Appel du template n 2 |
include_once BAZ_CHEMIN_APPLI.'bibliotheque/bazarTemplate.class.php' ; |
$template = new bazarTemplate ($GLOBALS['_BAZAR_']['db']) ; |
$chaine = $template->getTemplate(2, $GLOBALS['_BAZAR_']['langue'], $GLOBALS['_BAZAR_']['categorie_nature']); |
if (bazarTemplate::isError ($chaine)) return $chaine->getMessage() ; |
ob_start(); |
eval ($chaine) ; |
$res .= ob_get_contents(); |
ob_end_clean() ; |
} else { |
$res .= '<div class="bazar_numero">'.$pager->links.'</div>'."\n"; |
foreach ($data as $valeur) { |
$GLOBALS['_BAZAR_']['url']->addQueryString('id_fiche', $valeur[0]) ; |
$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_VOIR_FICHE) ; |
$res .= '<li><a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.$valeur[1].'</a>'."\n" ; |
if ($utilisateur->isSuperAdmin() || $GLOBALS['id_user']==$valeur[2]) { |
$res .='<li class="BAZ_'.$valeur['bn_label_class'].'">'."\n"; |
$GLOBALS['_BAZAR_']['url']->addQueryString('id_fiche', $valeur['bf_id_fiche']) ; |
if ($utilisateur->isSuperAdmin() || $GLOBALS['id_user']==$valeur['bf_ce_utilisateur']) { |
$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_ACTION_MODIFIER); |
$GLOBALS['_BAZAR_']['url']->addQueryString('typeannonce', $GLOBALS['_BAZAR_']['id_typeannonce']); |
$GLOBALS['_BAZAR_']['url']->removeQueryString('personnes'); |
$GLOBALS['_BAZAR_']['url']->removeQueryString('recherche_effectuee'); |
$res .= '<a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">('.BAZ_MODIFIER.')</a> ' ; |
$res .= '<a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">('.BAZ_MODIFIER.')</a> '."\n"; |
$GLOBALS['_BAZAR_']['url']->removeQueryString('action'); |
$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_ACTION_SUPPRESSION); |
$res .= '<a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'" onclick="javascript:return confirm(\''.BAZ_SUPPRIMER.'\');">('.BAZ_SUPPRIMER.')</a>' ; |
$res .='<a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'" onclick="javascript:return confirm(\''.BAZ_SUPPRIMER.'\');">('.BAZ_SUPPRIMER.')</a> '."\n"; |
$GLOBALS['_BAZAR_']['url']->removeQueryString('action'); |
} |
$res .= '</li>'; |
$GLOBALS['_BAZAR_']['url']->addQueryString('action', BAZ_VOIR_FICHE) ; |
$res .= '<a href="'.$GLOBALS['_BAZAR_']['url']->getURL().'">'.$valeur['bf_titre'].'</a>'."\n"; |
$res .='</li>'."\n"; |
} |
$res .= '</ul>'; |
$res .= '<div class="bazar_numero">'.$pager->links.'</div>'."\n"; |
$res .= '</ul>'."\n".'<div class="bazar_numero">'.$pager->links.'</div>'."\n"; |
} |
|
|
// Nettoyage de l'url |
$GLOBALS['_BAZAR_']['url']->removeQueryString('action'); |
$GLOBALS['_BAZAR_']['url']->removeQueryString('id_fiche'); |
1082,6 → 1177,32 |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.77 2007/04/04 15:15:22 neiluj |
* débug pour nom wiki |
* |
* Revision 1.76 2007/04/04 15:09:59 florian |
* modif class fichiers |
* |
* Revision 1.75 2007/04/04 08:51:01 florian |
* gestion des classes spécifiques pour habiller par CSS les fiches bazar |
* |
* Revision 1.74 2007/03/28 15:54:32 florian |
* correction de bugs |
* |
* Revision 1.73 2007/03/28 10:01:47 florian |
* ajout de la constante BAZ_UTILISE_TEMPLATE, pour utiliser ou non les templates pour l'affichage du moteur de recherche |
* |
* Revision 1.72 2007/03/28 08:51:22 neiluj |
* passage des flux RSS en UTF-8 |
* ajout de l'indentation du code |
* Vérification validation w3c = OK |
* |
* Revision 1.71 2007/03/19 15:17:37 alexandre_tb |
* correction de la requete de recherche |
* |
* Revision 1.70 2007/03/08 15:12:13 jp_milcent |
* Fusion avec la livraison Menes : 08 mars 2007 |
* |
* Revision 1.60.2.11 2007/03/07 17:20:19 jp_milcent |
* Ajout du nettoyage systématique des URLs. |
* |
1088,6 → 1209,17 |
* Revision 1.60.2.10 2007/03/06 09:41:15 alexandre_tb |
* backport de corrections de bugs de la branche principale |
* |
* Revision 1.69 2007/03/06 09:39:00 alexandre_tb |
* correction de bug sur les jointures et sur les flux rss |
* |
* Revision 1.68 2007/03/05 10:27:06 alexandre_tb |
* ajout d identifiant dans les span qui affiche le detail d une fiche. |
* ajout d un modele pour les fiches -> du code a ete deplace dans |
* bazar_template |
* |
* Revision 1.67 2007/02/28 10:18:56 alexandre_tb |
* backport de bug depuis la 1.60 de menes |
* |
* Revision 1.60.2.9 2007/02/27 15:32:40 alexandre_tb |
* utilisation de la fonction xmlEntities pour transformer les & en &#...; |
* fixe les plantages des flux rss lorsque des guillemets ou des esperluettes étaient présents |
1104,6 → 1236,9 |
* Utilisation de IN à la place du = dans les requêtes traitant les catégories de fiches. |
* Permet d'utiliser la syntaxe 1,2,3 dans la configuration de categorie_nature. |
* |
* Revision 1.64 2007/02/02 14:00:41 alexandre_tb |
* mise en place d'un template pour l'affichage du moteur de recherche |
* |
* Revision 1.60.2.5 2007/02/02 13:46:54 alexandre_tb |
* correction bug sur une date |
* |
1113,6 → 1248,11 |
* Revision 1.60.2.3 2007/01/29 10:53:46 alexandre_tb |
* Mise en place de la constante BAZ_DERNIERES_FICHES pour remplacer le label en francais dans baz_liste |
* |
* Revision 1.63 2007/01/18 14:37:34 alexandre_tb |
* backport |
* les dates ne s'affichent pas si elles sont vides. |
* les champs dates propose 4 années avant l'année actuelle |
* |
* Revision 1.60.2.2 2007/01/17 16:01:27 alexandre_tb |
* les dates ne s'affichent pas si elles sont vides. |
* les champs dates propose 4 années avant l'année actuelle |