Fork me on GitHub

Rapport de message :*
 

Re: xoopstube: index : liste alphabetique qui commence par les nombres :0123...

Titre du sujet : Re: xoopstube: index : liste alphabetique qui commence par les nombres :0123...
par blueteen sur 22/06/2013 20:35:20

Salut Grom !

Celinefnac, c'est vrai que les indications sur xoops.org sont un peu légères.
Je viens de tester, tu peux faire comme ça, ça marche bien.

Pour xoopstube 1.06 :

Editer le fichier /modules/xoopstube/includes/functions.php
Vers la ligne 494, trouver la fonction xoopstube_letters()
Et la remplacer intégralement par ceci :
function xoopstube_letters() {
    global 
$xoopsModule$xoopsDB;

    
$distinctDbLetters_arr = array();
    
$sql 'SELECT DISTINCT (UPPER(LEFT(title, 1))) AS letter FROM ' $xoopsDB->prefix('xoopstube_videos') ;
    if (
$result $xoopsDB->query($sql)) {
        while (
$row $xoopsDB->fetchArray($result)) {
            
$distinctDbLetters_arr[] = $row['letter'];
        }
    }
    unset(
$sql);

    
$letterchoice '<div>' _MD_XTUBE_BROWSETOTOPIC '</div>';
    
$alphabet     xoopstube_alfabet();
    
$num          count($alphabet) - 1;
    
$counter      0;
    while (list(, 
$ltr) = each($alphabet)) {

    if (
in_array($ltr$distinctDbLetters_arr)) {
            
$letterchoice
            
.= '<a class="xoopstube_letters xoopstube_letters_green" href="' XOOPS_URL '/modules/' $xoopsModule->getVar('dirname')
            . 
'/viewcat.php?list=' $ltr '">' $ltr '</a>';
        } else {
            
$letterchoice
            
.= '<a class="xoopstube_letters" href="' XOOPS_URL '/modules/' $xoopsModule->getVar('dirname')
            . 
'/viewcat.php?list=' $ltr '">' $ltr '</a>';        }

        if (
$counter == round($num 2)) {
            
$letterchoice .= '<br />';
        } elseif (
$counter != $num) {
            
$letterchoice .= '&nbsp;';
        }
        
$counter++;
    }

    return 
$letterchoice;
}


Editer ensuite le fichier /modules/xoopstube/xtubestyle.css :

Et ajouter tout en bas du fichier :
.xoopstube_letters_green {
    
background-imageurl(images/icon/film_on.png);
    
color:#fff;
}


J'ai notamment ajouté $xoopsDB, sans quoi nous avions immanquablement une page blanche.
Idem avec la 2ème partie du code, créant les liens, ils n'étaient pas complets sur xoops.org

J'ai utilisé l'image film_on.png (à la place de backgnd_green.png que nous n'avons pas), mais tu pourras mettre celle que tu veux en mettant à jour le fichier css.

Si ça marche pour toi, j'irai poster ça sur xoops.org
Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

71 Personne(s) en ligne (64 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 71 | Plus ...