accueil
downloads
links
bugmanager
header
**

Par respect de la netiquette, tous les contributeurs s'engagent à ne tenir ni propos insultants ni propos infamants envers un tiers. Merci d'avance à tous et ... bonne pêche aux infos - (Les numéros IP sont conservés.)
XML/RSS 2.0  page_down
newtopiclink  replylink  Version imprimable 
Ascending order Descending order   » Sujet: Module ixp_news : bloc actu catégories
Auteur: Message:


 Posté le 2006/2/16 à 19:02
Le bloc actu:catégories permet d'afficher les différentes catégories des news mais sans afficher l'image associée à la catégorie.
Si vous souhaitez avoir l'image affichée il suffit d'une petite modif dans la fonction "MakeTextBoxStr" dans le fichier ixptopic.class.php contenu dans le repertoire class du mod ixp_news
Le code de la fonction modifiée :

CODE PHP:
function makeTextBoxStr($title, $order='', $puce='') {  //$this->id='topic_id' ; $this->pid='topic_pid';

                global $ixpdb;

                $tempStr = '';
                $myts =& MyTextSanitizer::getInstance();

                $sql = "SELECT topic_id, ".$title." FROM ".$this->table." WHERE topic_pid=0";
                if (!empty($order)) {
                        $sql .= " ORDER BY $order";
                }
                $result = $ixpdb->sql_query($sql); //echo $this->db->sql_numrows($result); // nombre de cat�ories sup�ieures
               
                while ( list($catid, $name, $imgurl) = $ixpdb->sql_fetchrow($result, MYSQL_NUM) ) { //fetchRow
               //modifié par coach pour affiché l'image de la catégorie
 
               $lienPrincipal = $puce.'<a class="admintext2" href="'.IXP_ROOT_WEB.'/news-cat.html'.$catid.'?phpMyAdmin=082df031b86b1c3d5caf207b118df034">'.$name.'<br/><img src="'.IXP_ROOT_WEB.'/images/categories/'.$imgurl.'" border="0"></a>';
               $tempImg = '<img src="'.IXP_ROOT_WEB_IMG.'/pixtr.gif" width="'.(($puce=='') ? '5' : '10').'" height="1" border="0" align="middle" alt="" />';
                       
                        $tempSousLien = '';
                        $cptnbnews = 0;  // compteur du nombre stories dans la categorie

                        $xt = new ixpTree($this->table, "topic_id", "topic_pid");
                        $arr = $xt->getChildTreeArray($catid);

                        foreach ( $arr as $option ) {

                                //Combien d'articles dans chaque topic 
                                $sql2 = "SELECT count(topicid) FROM ".$ixpdb->prefix('ixpnews_stories')." WHERE topicid=".$option['topic_id'];
                                $result2 = $ixpdb->sql_query($sql2);
                                list($nbnews) = $ixpdb->sql_fetchrow($result2);
                               
                                $option['prefix'] = str_replace('.', $tempImg, $option['prefix'] ); // $option['prefix'] contient des '.' qui donnent le d&#65533;alage
                                if(!empty($nbnews )) {  // pour ne pas afficher si 0 messages &#65533;l'int&#65533;ieur
                                        $catpath = $option['prefix'].'<a class="ptanoir"  href="'.IXP_ROOT_WEB.'/news-cat.html'.$option['topic_id'].'&phpMyAdmin=082df031b86b1c3d5caf207b118df034" >'.$myts->makeTboxData4Show($option['topic_title']).'</a><font size="1">&nbsp;('. $nbnews.')</font>
'
;
                                } else {
                                        $catpath = '';
                                }
                                $tempSousLien .= $catpath;
                                $cptnbnews += $nbnews;
                        }

                        // nombre de br&#65533;es dans la cat&#65533;orie parent uniquement
                        $sqlcount = "SELECT topicid FROM ".$ixpdb->prefix('ixpnews_stories')." WHERE topicid=".$catid;
                        $totalsql = $ixpdb->sql_query($sqlcount);
                        $nb = $ixpdb->sql_numrows($totalsql);
                       
                        $cptnbnews += $nb;
                       
                        if (!empty($nb)) $lienPrincipal = $lienPrincipal.'<font size="1">&nbsp;('. $nb.')</font>
'
;
                        if (!empty($cptnbnews)) $tempStr .= $lienPrincipal.$tempSousLien;
                }
                return $tempStr;
        }
Profile Message Privé Editer le message Voir le site de l'utilisateur Chercher tous les messages de cet utilisateur Signaler ce message aux Administrateurs top


   Posté le 2006/2/22 à 09:44
Merci à toi pour ce hack.
On peut aussi étendre la classe ixptopic.class.php: class a extend b. ce qui évite de toucher au noyau (bénéfice de la POO)
HQCH - Hope Que ça Helpe
Celui qui vise à la perfection sera au-dessus de la médiocrité, mais celui qui vise à la médiocrité tombera plus bas encore. "Proverbe chinois"
profilebutton Message Privé Editer le message Voir le site de l'utilisateur searchbutton  top
newtopiclink  replylink  Version imprimable 

page_up

 

Powered by XForum 3.5.1-ix by Trollix Software
0.2625270 - 35 queries