Subversion Repositories Applications.bazar

Compare Revisions

Ignore whitespace Rev 82 → Rev 83

/trunk/bibliotheque/bazar.fonct.rss.php
146,7 → 146,7
$res .=genere_fiche($ligne);
}
//on affiche ligne par ligne sinon
else {
else {
//cas d'une image personalisée
if (isset($ligne['bf_url_image'])) {
$res .= '<div id="fiche_image">'."\n";
165,8 → 165,9
for ($i=0; $i<count($tableau); $i++) {
if (isset($ligne[$tableau[$i]['nom_bdd']])) {
$val=$ligne[$tableau[$i]['nom_bdd']];
if (($tableau[$i]['nom_bdd']!='bf_titre')and($tableau[$i]['nom_bdd']!='bf_description')and($tableau[$i]['nom_bdd']!='bf_date_debut_validite_fiche')and($tableau[$i]['nom_bdd']!='bf_date_fin_validite_fiche')) {
if (($val!='')and($val!=BAZ_CHOISIR)and($val!=BAZ_NON_PRECISE)) {
if (!in_array($val, array ('bf_titre', 'bf_description', 'bf_date_debut_validite_fiche',
'bf_date_fin_validite_fiche'))) {
if ($val != '' and $val != BAZ_CHOISIR and $val != BAZ_NON_PRECISE) {
$res .= '<span class="rubrique">'.constant($tableau[$i]['label']).':</span>'."\n";
$res .= '<span class="description"> '.$val.'</span>'."\n".'<br />'."\n";
}
387,7 → 388,7
$res='';
if( eregi('<item>(.*)</item>', $rss, $rawitems ) ) {
$items = explode('<item>', $rawitems[0]);
$res.='<ul>'."\n";
$res.='<ul id="BAZ_liste_fiche">'."\n";
for( $i = 0; $i < count($items)-1; $i++ ) {
eregi('<title>(.*)</title>',$items[$i+1], $title );
eregi('<link>(.*)</link>',$items[$i+1], $url );
433,7 → 434,7
return $res;
}
 
/** gen_RSS() - générer un fichier de flux RSS par type d'annonce
/** gen_RSS() - generer un fichier de flux RSS par type d'annonce
*
* @param string Le type de l'annonce (laisser vide pour tout type d'annonce)
* @param integer Le nombre d'annonces a regrouper dans le fichier XML (laisser vide pour toutes)
446,7 → 447,8
function gen_RSS($typeannonce='', $nbitem='', $emetteur='', $valide=1, $requeteSQL='') {
// generation de la requete MySQL personnalisee
$req_where=0;
$requete = 'SELECT DISTINCT bf_id_fiche, bf_titre, bf_date_debut_validite_fiche FROM bazar_fiche, bazar_nature WHERE ';
$requete = 'SELECT DISTINCT bf_id_fiche, bf_titre, bf_date_debut_validite_fiche '.
'FROM bazar_fiche, bazar_nature WHERE ';
if ($valide!=2) {
$requete .= 'bf_statut_fiche='.$valide;
$req_where=1;
461,9 → 463,14
}
if ($valide!=0) {
if ($req_where==1) {$requete .= ' AND ';}
$requete .= '(bf_date_debut_validite_fiche<=NOW() or bf_date_debut_validite_fiche="0000-00-00")'.
' AND (bf_date_fin_validite_fiche>=NOW() or bf_date_fin_validite_fiche="0000-00-00") AND bn_id_nature=bf_ce_nature';
$req_where=1;
if ($GLOBALS['AUTH']->getAuth() && niveau_droit(0,$GLOBALS['AUTH']->getAuthData(BAZ_CHAMPS_ID))!='superadministrateur') {
$req_where=1;$requete .= '1' ;
} else {
$requete .= '(bf_date_debut_validite_fiche<=NOW() or bf_date_debut_validite_fiche="0000-00-00")'.
' AND (bf_date_fin_validite_fiche>=NOW() or bf_date_fin_validite_fiche="0000-00-00") AND bn_id_nature=bf_ce_nature';
}
}
else $nomflux .= BAZ_A_MODERER;
if ($emetteur!='' && $emetteur!='tous') {
489,7 → 496,7
if ($nbitem!='') {$requete .= ' LIMIT 0,'.$nbitem;}
$resultat = $GLOBALS['_BAZAR_']['db']->query($requete) ;
if (DB::isError($resultat)) {
die ($GLOBALS['_BAZAR_']['db']->getMessage().$GLOBALS["db"]->getDebugInfo()) ;
die ($resultat->getMessage().$resultat->getDebugInfo()) ;
}
// En-tete du flux RSS version 2.0
$xml = '<?xml version="1.0" encoding="ISO-8859-1"?>'."\n".'<rss version="2.0">'."\n";
565,11 → 572,15
else {
$res = '<h2>'.BAZ_TOUTES_LES_ANNONCES_DE_TYPE.' '.constant($GLOBALS['_BAZAR_']['typeannonce']).'</h2>'."\n";
}
 
//requete pour obtenir l'id, le nom et prenom de toutes les personnes ayant depose une fiche
$requete = 'SELECT '.BAZ_CHAMPS_ID.', '.BAZ_CHAMPS_NOM.', '.BAZ_CHAMPS_PRENOM.' '.
'FROM bazar_fiche,'.BAZ_ANNUAIRE.' '.
'WHERE bf_date_debut_validite_fiche<=NOW() AND bf_date_fin_validite_fiche>=NOW() AND bf_ce_utilisateur='.BAZ_CHAMPS_ID.' ';
'FROM bazar_fiche,'.BAZ_ANNUAIRE.' where' ;
 
$requete .= ' bf_date_debut_validite_fiche<=NOW() AND bf_date_fin_validite_fiche>=NOW() and';
 
$requete .= ' bf_ce_utilisateur='.BAZ_CHAMPS_ID.' ';
if (!isset($_REQUEST['nature'])) {
if (isset($GLOBALS['_BAZAR_']['id_typeannonce'])) {
$requete .= 'AND bf_ce_nature='.$GLOBALS['_BAZAR_']['id_typeannonce'].' ';
592,8 → 603,7
}
$option=array('style'=>'border:1px solid #000;width: 140px;font:12px Myriad, Arial, sans-serif;');
$formtemplate->addElement ('select', 'personnes', BAZ_EMETTEUR, $personnes_select, $option) ;
//pour les super-administrateurs, on peut voir les annonces non validées
//pour les super-administrateurs, on peut voir les annonces non validées
//on verifie si l'utilisateur est administrateur
$est_admin=0;
if ($GLOBALS['AUTH']->getAuth()) {
602,6 → 612,7
$est_admin=1;
}
}
 
if ($est_admin==1) {
$option=array('style'=>'border:1px solid #000;width: 60px;font:12px Myriad, Arial, sans-serif;');
$valide_select[0] = BAZ_FICHES_PAS_VALIDEES;