Fork me on GitHub


 Bas   Précédent   Suivant

« 1 2 (3) 4 5 6 ... 24 »


Re: Utilisation de Xoops Tag avec le module News
Régulier
Inscrit: 26/01/2004 16:16
De seraing
Messages: 253
vu que je ne suis pas "programmeur" j'ai peut-être travaillé dans une méthode non reconnue en Xoops supérieur à celle que j'ai (la 13 ou 14).

un coup de débug PHP ca donne quoi comme msg ?

Posté le : 12/12/2007 20:50
Transférer la contribution vers d'autres applications Transférer


Re: Utilisation de Xoops Tag avec le module News
Régulier
Inscrit: 26/01/2004 16:16
De seraing
Messages: 253
Perso, je trouve que cela ressemble bcp à un message d'erreur lié au module Protector.. (dernière version), qui est mnt intégré dans Xoops 2.0.17

Ton site fonctionnait-il correctement jusqu'à l'installation du plugin ?

peut-être compare ta version de Xoops et de News avec celle que j'ai utilisé ?

Peut-être une erreur avec les modification à faire dans le module news ?

Posté le : 12/12/2007 19:02
Transférer la contribution vers d'autres applications Transférer


Re: Utilisation de Xoops Tag avec le module News
Régulier
Inscrit: 26/01/2004 16:16
De seraing
Messages: 253
c'est un message plus en relation avec Protector ca non ?

Posté le : 12/12/2007 14:59
Transférer la contribution vers d'autres applications Transférer


Re: Site A en Francais, site B en Néerlandais - Même base de données
Régulier
Inscrit: 26/01/2004 16:16
De seraing
Messages: 253
Sinon, au besoin, moi j'utilise Xlanguage dans mon site http://www.labset.net

J'ai eu tout de même quelques soucis avec, mais plutot du fait de la mémoire que mon hébergeur attribuait au script PHP (et pourtant je suis chez Infomaniak)

Depuis qu'il ont augementé la mémoire c'est nettement mieux

Ceci dit, je travaillais parfois avec des pages entière en HTML entre mes balises [FR][/FR], puis en [EN][/EN]

Sinon, c'est génial, tu peux vraiment utiliser ces codes à tous niveaux : thèmes, templates, blocs,...

Posté le : 07/12/2007 09:02
Transférer la contribution vers d'autres applications Transférer


Re: [Astuce] Intégrer un player Flash MP3 automatique dans MyDownload
Régulier
Inscrit: 26/01/2004 16:16
De seraing
Messages: 253
merci Christian,.. j'espère qu'il pourra inspirer bon nombre d'utilisateur ;)

Je dois mnt m'attaquer à faire qqch de similaire pour le module News, et surtout trouver une astuce qui permettrait au module RSSFit d'interpréter cet ajout de fichier MP3 et l'intégrer dans le Flux RSS en structurant le fichier "XML" généré comme Podcast...

Cela permettra alors à Xoops d'avoir une réél solution de podcasting !! ;)

Posté le : 30/11/2007 19:52
Transférer la contribution vers d'autres applications Transférer


Re: [Astuce] Intégrer un player Flash MP3 automatique dans MyDownload
Régulier
Inscrit: 26/01/2004 16:16
De seraing
Messages: 253
je constate qu'il y a un petit oubli pour le fonctionnement sour FF, il faut également modifier un 2° endroit dans la balise <object> pour appeler le fichier flash et MP3,.. je corrige donc le code de mon post plus haut !

Posté le : 30/11/2007 11:39
Transférer la contribution vers d'autres applications Transférer


[Astuce] Intégrer un player Flash MP3 automatique dans MyDownload
Régulier
Inscrit: 26/01/2004 16:16
De seraing
Messages: 253
Depuis longtemps j'avais rêvé dans mon site Xoops cyborgjeff.com pouvoir proposer un player MP3 en streaming... Il y a peu, j'avais trouvé la possibilité de pouvoir intégrer DewPlayer (un mini player flash) dans le contenu de chaque items "musique", mais il fallait faire cela de manière manuel en insérant le code HTML... Ce qui n'aide pas vraiment à faire avancer le chmilblick, ni a rendre autonome mon site.

Mais début de semaine, la question d'un autre utilisateur de Xoops qui tentait de faire pareil m'a incité à me lancer dans le projet de rendre automatique cet ajout,.. et avec toutes les "nouvelles connaissances" acquises sur le tripatouillage de code PHP Xoops... je me sentais en forme ;)

Objectif : Automatiser l'affichage d'un player MP3 flash dans la page de descriptions du module Mydownload de mon site.

1. Détecter si l'URL du lien est une extension .MP3 ou .mp3, si oui alors afficher le player cilbant vers cet URL

2. Si ce n'est pas le cas, détecter si l'URL du champs "Homepage" (que je renomerais streaming) est un fichier .MP3 ou .mp3, si oui alors afficher le player ciblant vers cet URL

3. si aucun des 2 cas n'est remplis, alors ne rien afficher

Tout d'abord, il faut bien sur copier le fichier .SWF du player dans le répertoire modules/mydownload, et vous pouvez le créer depuis le site Alsacreations.

Le premier point pose déjà un soucis important, en effet, Dewplayer doit absolument recevoir un paramètre cilbant une adresse .MP3, hors le module de Xoops ne renvoit hors de ses variables pré-définies (smarty) qu'une URL en fichier .PHP?argument=x&argument2=y qui traitera ensuite la requête. Par facilité donc, j'avais pensé à récupérer la valeur du champs "homepage", lui défini correctement, mais cela demandait quand même de ré-éditer mes 500 items ;(

Donc, il me fallait tout d'abord créer une nouvelle variable Smarty qui correspondrait à l'URL du téléchargement encodé dans la DB, pour ce faire, il m'a fallu éditer le fichier Singlefile.php

J'y trouve une ligne qui commence par :
$xoopsTpl->assign('file', array('id' => $lid, ...
Cela m'inspirerait donc bien l'instantiation de la variable smarty <{$files}>... de part le xoopsTpl qui pourrait faire référence au Template dans lequel ces variables seront utilisées... J'ai donc ajouté à la liste des élements du tableau de cette variable un :
'url' => $url


Bingo, le débuggeur m'affiche bien le contenu de cette variable correspondant à mon URL exacte !

Je peux donc appeler mon fichier MP3 en lui passant comme variable soit la variable <{$files.url}> soit <{$down.homepage}> en ajoutant le code d'appel du player Flash dans mon le fichier de template mydownloads_download.html.

<object type="application/x-shockwave-flash" data="dewplayer.swf?mp3=<{$down.homepage}>" width="200" height="20"> <param name="movie" value="dewplayer.swf?mp3=<{$down.homepage}>" /> <param name="wmode" value="transparent"> </object>


Voilà.. déjà comme cela, on peut avoir un player automatique qui jouera le fichier ciblé par la variable choisie,... et qui ne jouera rien du tout si l'URL ne renvoit pas de fichier MP3.

Mais bon,.. moi tant qu'à faire, j'aurais préféré pousser un peu plus et pouvoir prendre le "Homepage" si URL n'était pas intéressant (vu que je cible aussi des fichiers de type soundtracker .IT, .XM, .S3M,...) afin d'avoir une alternative pour un preview,.. et tant qu'à faire, qu'il n'affiche rien s'il n'y pas de raison de jouer qqch...

Là.. il va falloir jouer avec du code Javascript pour traiter les chaines de caractères, d'une part car je ne sais pas le faire en PHP et de toute manière, pas de PHP dans les templates... donc, je vais devoir préparer quelques lignes de codes en début de page (!! pas de déclaration de fonctions dans les templates !!)

<script language="JavaScript">
var 
chaineurl="<{$file.url}>";
long=chaineurl.length;
slong=parseInt(long);
slong=slong-3;
result=chaineurl.substring(slong,long);
var 
chainestream="<{$down.homepage}>";
long=chainestream.length;
slong=parseInt(long);
slong=slong-3;
result2=chainestream.substring(slong,long);
</script>


En gros je récupère la variable en Javascript, je calcule la longueur de celle-ci, je formate le résultat en valeur numérique, je fais une soustraction pour connaitre la longeur totale -3 et je récupère les 3 dernières lettres de mon URL (MP3 en théorie), je fais ensuite pareil pour la 2° variable à traiter.

Ensuite, il faut utiliser un petit script d'affichage conditionnel du player à insérer à l'endroit voulu dans le template,.. vu que l'on va utiliser la fonction document.write, il faut évidemment jouer avec les \ devant les ""

<script>
if (
result=="mp3"||result=="MP3"){
document.write('<object type="application/x-shockwave-flash" data="dewplayer.swf?mp3=<{$file.url}>" width="200" height="20"><param name="movie" value="dewplayer.swf?mp3=<{$file.url}>"/><param name="wmode" value="transparent"></object>');
}
else {
if (
result2=="mp3"||result=="MP3"){
document.write('<object type="application/x-shockwave-flash" data="dewplayer.swf?mp3=<{$down.homepage}>" width="200" height="20"><param name="movie" value="dewplayer.swf?mp3=<{$down.homepage}>"/><param name="wmode" value="transparent"></object>');
}
else {}
}
</script>

Eh voilà ;)Alors Pype,.. ca t'en bouche un coin que ton grand frangin face lui ausis de la programmation hein ;)

Posté le : 29/11/2007 12:09
Transférer la contribution vers d'autres applications Transférer


Re: Dewplayer dans -->WF-Download
Régulier
Inscrit: 26/01/2004 16:16
De seraing
Messages: 253
Merci ;)
Et je vous rassure.. j'ai moi aussi encore bcp à apprendre !! Je n'ai jamais programmé en PHP et c'est un réél handicap pour combler mes envies profondes de développement en Xoops ;)

Mais à force d'audace et de volonté, mon implication dans l'outil commence à porter ces fruits ! cela fait bientot 5 ans que je me suis lancé dedans... J'ai commencé par faire des thèmes, puis à comprendre les templates, à mettre les doigts dans les Smartys... mais depuis peu ce n'est plus assez, on l'a vu ici, il y avait besoin de créer un balise Smarty supplémentaire... Et longtemps mes collègues programmeur m'ont dit que c'était "galère"... on voit au bout du compte que non ! Bien que je ne "parle" pas PHP, j'arrive à le comprendre ;)

Pour le Javascript, j'ai du prendre mon bouquin et faire du surf en live pour trouver les fonctions dont j'avais besoin.. enfin bref, si tu ne te décourages pas,.. Tu pourras progresser dans les étapes de maniement de Xoops !

Posté le : 29/11/2007 08:26
Transférer la contribution vers d'autres applications Transférer


Re: Dewplayer dans -->WF-Download
Régulier
Inscrit: 26/01/2004 16:16
De seraing
Messages: 253
pour la condition dans le IF on pourrait avoir

(result=="mp3"||result=="MP3"), je constate que ca pourrait arriver...

Posté le : 28/11/2007 15:21
Transférer la contribution vers d'autres applications Transférer


Re: Dewplayer dans -->WF-Download
Régulier
Inscrit: 26/01/2004 16:16
De seraing
Messages: 253
voici la préparation du javascript pour la détection des URLS (à placer dans le début du template)

<script language="JavaScript">
var chaineurl="<{$file.url}>";
long=chaineurl.length;
slong=parseInt(long);
slong=slong-3;
result=chaineurl.substring(slong,long);
var chainestream="<{$down.homepage}>";
long=chainestream.length;
slong=parseInt(long);
slong=slong-3;
result2=chainestream.substring(slong,long);
</script>

puis à l'endroit ou vous voulez placer le player

<script>
if (result=="mp3"){
document.write('<object type=\"application/x-shockwave-flash\" data=\"dewplayer.swf?mp3=votre_son.mp3\" width=\"200\" height=\"20\"><param name=\"movie\" value=\"dewplayer.swf?mp3=<{$file.url}>\"/><param name=\"wmode\" value=\"transparent\"></object>');
}
else {
if (result2=="mp3"){
document.write('<object type=\"application/x-shockwave-flash\" data=\"dewplayer.swf?mp3=votre_son.mp3\" width=\"200\" height=\"20\"><param name=\"movie\" value=\"dewplayer.swf?mp3=<{$down.homepage}>\"/><param name=\"wmode\" value=\"transparent\"></object>');
}
else {

}
}

</script>

alors évidemment dans mon exemple le fichier dewplayer.swf est dans le répertoire modules/mydownloads/, cela a évidemment son influence... je conseil à qui voudrait faire pareil, de d'abord faire tourner un dewplayer avec un fichier cilber.. histoire de s'assurer que tout es bien ok !

Merci pour vos pistes de départ qui m'on permis au fond de résoudre cela plutot que prévu (et plus vite), et j'espère avoir pu aider les autres utilisateurs ;)

Posté le : 28/11/2007 14:59
Transférer la contribution vers d'autres applications Transférer



 Haut
« 1 2 (3) 4 5 6 ... 24 »




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

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