//Autres auteurs : *@author Aucun *@copyright Tela-Botanica 2000-2004 *@version $Revision: 1.1 $ // +------------------------------------------------------------------------------------------------------+ */ // +------------------------------------------------------------------------------------------------------+ // | ENTETE du PROGRAMME | // +------------------------------------------------------------------------------------------------------+ include_once 'configuration/projet.config.inc.php' ; include_once PROJET_CHEMIN_API_ARBRE.'arbre.class.php' ; // Inclusion des styles selon papyrus if (function_exists("GEN_stockerStyleExterne")) { GEN_stockerStyleExterne('projet','client/projet/arbre.css') ; } function afficherContenuNavigation() { $sortie = ''; if (isset($_GET['forum']) || isset($GLOBALS['_GEN_commun']['info_application']->aide)) { if (!isset($_GET['forum'])) { $_GET['forum'] = '[exemple]' ; $_GET['aide'] = 1 ; } $sortie .= ''; } return $sortie; } function afficherContenuCorps () { if (isset ($_GET['forum']) && !isset($_GET['aide']) /*&& isset($GLOBALS['_GEN_commun']['info_application']->aide)*/) { include_once PROJET_CHEMIN_APPLI.'forums-lst.php' ; return putFrame() ; } if (isset ($_GET['aide']) ||isset($GLOBALS['_GEN_commun']['info_application']->aide)) { if (!isset($_GET['forum'])) $_GET['forum'] = '[exemple]' ; if (!isset($_GET['aide'])) $_GET['aide'] = 1 ; include_once PROJET_CHEMIN_APPLI.'forums-hlp.php' ; return putFrame() ; } // Récupération des arguments de papyrus $thema = $GLOBALS['_GEN_commun']['info_appli']->theme ; global $num_sem; // le numero de la semaine // requete sur le sommet de l'arbre $requete = "SELECT NB_ABONNES,NUM_SEM FROM agora_stats WHERE FORUM=\"tela-botanicae\" ORDER BY NUM_SEM DESC" ; $resultat =$GLOBALS['projet_db']->query($requete) ; if (DB::isError ($resultat)) { die ("Echec de la requete : $requete
".$resultat->getMessage()) ; } $ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT); // le numero de la semaine if (empty($num_sem)) $num_sem = $ligne->NUM_SEM ; // requete sur le sommet de l'arbre avec le bon numero de semaine $resultat_sommet = $GLOBALS['projet_db']->query("SELECT NB_ABONNES,NB_MESSAGES FROM agora_stats WHERE FORUM=\"tela-botanicae\" AND NUM_SEM=\"$num_sem\""); $ligne_sommet = $resultat_sommet->fetchRow(DB_FETCHMODE_OBJECT) ; $nb_total_mess = $ligne_sommet->NB_MESSAGES; $nb_total_abon = $ligne_sommet->NB_ABONNES; $requete_donnee_sommet = "SELECT AGO_A_LIEN_PUCE,AGO_A_LIEN_FEUILLE,AGO_A_LIEN_BRANCHE FROM agora WHERE AGO_A_NOMGRP=\"tela-botanicae\"" ; $resultat_donnee_sommet = $GLOBALS['projet_db']->query($requete_donnee_sommet) or die ("Echec de la requête sur les forums2"); $ligne_donnee_sommet = $resultat_donnee_sommet->fetchRow(DB_FETCHMODE_OBJECT) ; // creation de l'arbre $arbreforum = new arbre("Botanique générale",$ligne_donnee_sommet->AGO_A_LIEN_BRANCHE,$nb_total_abon, $ligne_donnee_sommet->AGO_A_LIEN_FEUILLE, "http://fr.groups.yahoo.com/group/tela-botanicae/messages") ; $res = "

L'arbre des forums de Tela Botanica

\n" ; $res .= '' ; $GLOBALS['url']->addQueryString ('forum', 'tela-botanicae') ; $ligne_donnee_sommet->AGO_A_LIEN_BRANCHE = $GLOBALS['url']->getURL() ; $res .= $arbreforum->cime("Botanique générale",$ligne_donnee_sommet->AGO_A_LIEN_BRANCHE,$nb_total_abon, $ligne_donnee_sommet->AGO_A_LIEN_FEUILLE, "http://fr.groups.yahoo.com/group/tela-botanicae/messages") ; // requete sur les branches // d'abord les nom des groupes $requete_branche = "SELECT agora.AGO_A_NOMGRP FROM agora" ; if (!empty($thema)) $requete_branche.= ",agora_join" ; $requete_branche .= " WHERE agora.AGO_A_NOMGRP<>\"tela-botanicae\" AND agora.AGO_A_VISIBLE=1 and AGO_A_GRP_TB=0" ; // On ne garde que les projets hors Tela if (!empty($thema)) $requete_branche .= " AND agora.AGO_A_ID=agora_join.AGO_J_IDFORUM and AGO_J_IDCATEG=\"$thema\"" ; $requete_branche .= " ORDER BY AGO_A_ALIAS ASC" ; $resultat_branche = $GLOBALS['projet_db']->query($requete_branche) ; //tableau stockant la différence du nbre de messages entre la semaine en cours dans la page et la semaine précédente $diff_message = array(); while ($ligne_branche = $resultat_branche->fetchRow(DB_FETCHMODE_OBJECT)) { $query_nb_message_1 = "SELECT NB_MESSAGES FROM agora_stats WHERE FORUM=\"$ligne_branche->AGO_A_NOMGRP\" AND NUM_SEM=\"$num_sem\""; $result_nb_message_1 = mysql_query($query_nb_message_1) or die ("Echec sur la requête _nb_message_1") ; $row_nb_message_1 = mysql_fetch_object($result_nb_message_1) ; $query_nb_message_2 = "SELECT NB_MESSAGES FROM agora_stats WHERE FORUM=\"$ligne_branche->AGO_A_NOMGRP\" AND NUM_SEM= ".($num_sem -1).""; $result_nb_message_2 = mysql_query($query_nb_message_2) or die ("Echec sur la requête _nb_message_2") ; $row_nb_message_2 = mysql_fetch_object($result_nb_message_2) ; $diff_message[$row_message->AGO_A_NOMGRP] = $row_nb_message_1->NB_MESSAGES - $row_nb_message_2->NB_MESSAGES; } $result1 = mysql_query($requete_branche) or die ("Echec de la requête sur les forums"); while ($row1 = mysql_fetch_object($result1)) { // pour chaque groupe, le nbre de messages et le nbre d'abonnes $query2 = "SELECT NB_MESSAGES,NB_ABONNES FROM agora_stats WHERE FORUM=\"$row1->AGO_A_NOMGRP\" AND NUM_SEM=\"$num_sem\"" ; $result2 = mysql_query($query2) or die ("Echec de la requête sur agora_stats"); $row2 = mysql_fetch_object($result2) ; // et le reste des informations pour chaque groupe $query3 = "SELECT AGO_A_ALIAS,AGO_A_LIEN_BRANCHE,AGO_A_LIEN_FEUILLE,AGO_A_LIEN_PUCE,AGO_A_COULEUR,AGO_A_TAILLE_B,AGO_A_NOMGRP FROM agora WHERE AGO_A_NOMGRP=\"$row1->AGO_A_NOMGRP\""; $result3 = mysql_query($query3) or die ("Echec sur la requête 3") ; $row3 = mysql_fetch_object($result3) ; $lien_feuille = "http://fr.groups.yahoo.com/group/$row1->AGO_A_NOMGRP/messages" ; $lien_nombre = "http://fr.groups.yahoo.com/group/$row1->AGO_A_NOMGRP/members" ; // On cherche à obtenir une valeur entre 0 et 100 pour déterminer la couleur de la feuille de l'arbre $maxi_message = max($diff_message); if ($maxi_message == 0){$maxi_message = 0.01;} $calcul_couleur = ($diff_message[$row1->AGO_A_NOMGRP])/$maxi_message*100; //Fin. La valeur de la couleur pour le groupe en cours est stocké dans $calcul_couleur if ($row2->NB_ABONNES != 0) {//pour ne pas afficher les branches n'existant pas encore à la semaine donnée $GLOBALS['url']->addQueryString('forum', $row3->AGO_A_NOMGRP) ; $row3->AGO_A_LIEN_BRANCHE = $GLOBALS['url']->getURL() ; $arbreforum->addBranche($row3->AGO_A_ALIAS,$row3->AGO_A_LIEN_BRANCHE,$row2->NB_ABONNES,$lien_nombre,$lien_feuille,$calcul_couleur,$row3->AGO_A_TAILLE_B); // info pour le cartouche $nb_total_mess += $row2->NB_MESSAGES; $nb_total_abon += $row2->NB_ABONNES; } } $res .= $arbreforum->affBranche() ; $res .= $arbreforum->affRacine() ; $res .= '
' ; include_once PROJET_CHEMIN_APPLI.'cartouche.php' ; return $res ; } //-- End of source ------------------------------------------------------------ ?>