Fork me on GitHub






Nouvelle fonctionnalité xoopstube:Voir les autres épisodes d'une catégorie
Régulier
Inscrit: 10/09/2007 11:51
Messages: 476
Salut

Je voulais me débrouiller tout seul, mais ça va pas être possible tout de suite, donc nouvelle fonctionnalité qui incroyablement, j'ai réussi à implémenter sauf que comme d'habitude y'a un léger dysfonctionnement et ça touche au systéme utilisateur que je connait pas vraiment.

Voila ce que j'ai fait (trop fort déja pour mon niveau car ça a fonctionné au quart de tour cette fois, ça m'a étonné)

Dans singlevidéo.php

// Voir les autres vidéos dispo dans la même categorie
global $xoopsModuleConfig;
$start xtube_cleanRequestVars($_REQUEST'start'0);
$start intval($start);
$time time();

$sql        $xoopsDB->query('SELECT lastvideosyn, lastvideostotal FROM ' $xoopsDB->prefix('xoopstube_indexpage'));
$lastvideos $xoopsDB->fetchArray($sql);

if (
$lastvideos['lastvideosyn'] == && $lastvideos['lastvideostotal'] > 0) {

$result $xoopsDB->query(
        
'SELECT COUNT(*) FROM ' $xoopsDB->prefix('xoopstube_videos') . ' WHERE cid=' $video_arr['cid'] . '
        AND cid > 10
        AND lid <> ' 
$video_arr['lid'] . '
        AND published > 0 AND published <= ' 
time() . ' AND (expired = 0 OR expired > ' time() . ')  
        AND offline = 0 ORDER by title ASC'
    
);
    list(
$count) = $xoopsDB->fetchRow($result);

    
$count = (($count $lastvideos['lastvideostotal'])
        && (
$lastvideos['lastvideostotal'] != 0)) ? $lastvideos['lastvideostotal'] : $count;
    
$limit = (($start $xoopsModuleConfig['perpage']) > $count) ? ($count $start) : $xoopsModuleConfig['perpage'];
    
    
$result $xoopsDB->query(
       
'SELECT lid, cid, title, vidsource, published FROM ' $xoopsDB->prefix('xoopstube_videos') . '
        WHERE cid=' 
$video_arr['cid'] . '
        AND cid > 10
        AND lid <> ' 
$video_arr['lid'] . '
        AND published > 0 AND published <= ' 
time() . ' AND (expired = 0 OR expired > ' time() . ')  
        AND offline = 0 
        ORDER by title ASC '
$limit$start
    
);

while (
$arrc $xoopsDB->fetchArray($result)) {
    if (
xtube_checkgroups($arrc['cid']) == true) {
    
$videocuid['title']     = $xtubemyts->htmlSpecialCharsStrip($arrc['title']);
    
$videocuid['lid']       = $arrc['lid'];
    
$videocuid['cid']       = $arrc['cid'];
    
$videocuid['vidsource'] = $arrc['vidsource'];
    
$videocuid['published'] = xoopstube_time(formatTimestamp($arrc['published'], $xoopsModuleConfig['dateformat']));
    
$xoopsTpl->append('videoc_uid'$videocuid);
    }
}
    
$pagenav = new XoopsPageNav($count$xoopsModuleConfig['perpage'], $start'start');
    
$xoopsTpl->assign('pagenav'$pagenav->renderNav());
    
$xoopsTpl->assign('showlatest'$lastvideos['lastvideosyn']);
}


Au début j'ai fait sans pagination, mais avec des séries d'animes comme naruto ou il y a presque 400 épisodes, ça posait problème, j'ai dons ajouté la pagination et mis ça dans un bloc callé a côté des autres vidéos de l'utilisateur.

Le résultat donne bien ce que je voulais faire (pour une fois):
Open in new window


MAIS J'ai se message quand je pagine:

Citation :
Désolé, vous n'avez pas l'autorisation d'effectuer cette action.
Veuillez vous inscrire ou vous connecter avant !


mais je suis connecté et en administrateur, cette fois je ne trouverais pas tout seul, c'est spécifique à xoops et je connais pas.

Pourquoi ai je ce message selon vous?

2°)
Il y a un défaut quand à ma méthode:
J'aurais peut être du faire autrement car la pagination fait recharger la page à chaque fois, c'est pas idéal.

Peut être avec une liste déroulante mais ça sera moin jolie.

Des idées?

Posté le : 13/12/2014 09:36
Partager Twitter Partagez cette article sur GG+
Re: Nouvelle fonctionnalité xoopstube:Voir les autres épisodes d'une catégorie
Admin Frxoops
Inscrit: 04/03/2011 09:10
De Lot
Messages: 2837
en 1 : pour limiter la consommation ressource, je me contenterai des x dernières vidéos, pas toute.

en 2 : Pour que le système de pagination fonctionne, il faut aussi insérer un morceau de code en début de fichier pour récupérer les paramètres passés en GET par la "barenav". Singlevideo.php n'est pas conçu à l'origine pour utiliser le système de pagination (regarde le fichier chargé de d'afficher les vidéos par catégorie par exemple)


Posté le : 13/12/2014 10:32
Partager Twitter Partagez cette article sur GG+
Re: Nouvelle fonctionnalité xoopstube:Voir les autres épisodes d'une catégorie
Régulier
Inscrit: 10/09/2007 11:51
Messages: 476
La je me suis inspiré du fichier index.php, je vais aller voir dans viewcat.php

J'aurais pu essayé de mettre le résultat dans un bloc fixe avec barre de défilement, mais je sais pas encore comment on fait ça, je vais continuer à chercher.

Posté le : 13/12/2014 10:55
Partager Twitter Partagez cette article sur GG+
Re: Nouvelle fonctionnalité xoopstube:Voir les autres épisodes d'une catégorie
Régulier
Inscrit: 10/09/2007 11:51
Messages: 476
Re

C'est tout bon j'ai réussi c'etaot tout simple en fait, un peu de css et op:

Open in new window

Posté le : 13/12/2014 14:14
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

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