Fork me on GitHub






textsanitizer & youtube
Aspirant
Inscrit: 05/06/2003 23:06
De Colmar
Messages: 24
Bonjour,

De plus en plus de postes sont fait à partir de copier/coller (par exemple pour de la promo musique) et les posteurs n'utilisent pas les boutons du DHTML
Pour Youtube les balisent sont chez eux :

[youtube]{lien}[/youtube]

Il manque dans ce cas les valeurs width & height et le code ne fonctionne pas.

Peut on contourner ce manque sans devoir éditer les postes concernés pour rajouter null,null ou mettre les valeurs par défaut :

[youtube=null,null]{lien}[/youtube]


?

D'avance merci si quelqu'un à une idée.
Cdlt.

Posté le : 28/04/2011 21:34
Partager Twitter Partagez cette article sur GG+
Re: textsanitizer & youtube
Supporter Xoops
Inscrit: 09/01/2005 13:37
De Breizh
Messages: 16972
Bonjour,

Modification à faire dans ce fichier rootsite\class\textsanitizer\youtube\youtube.php

Posté le : 28/04/2011 21:40

La connaissance s'accroît quand on la partage ...
Partager Twitter Partagez cette article sur GG+
Re: textsanitizer & youtube
Aspirant
Inscrit: 05/06/2003 23:06
De Colmar
Messages: 24
Merci Kris mais je n'y parviens pas d'où cette demande.
Mes modifications aboutissent soit sur une page blanche soit sur aucun changement.


Posté le : 28/04/2011 22:07
Partager Twitter Partagez cette article sur GG+
Re: textsanitizer & youtube
Aspirant
Inscrit: 05/06/2003 23:06
De Colmar
Messages: 24
Bonjour,

Finalement, n'arrivant pas à faire coïncider les 2 possibilités, variables de tailles ou non dans le pattern, je les ai supprimées :)

Si qqn a besoin du même bout de code peut être à optimiser selon vos besoins ou si il y a une erreur qq part.
Pour moi ca fonctionne

<?php
/**
 * TextSanitizer extension
 *
 * You may not change or alter any portion of this comment or credits
 * of supporting developers from this source code or any supporting source code
 * which is considered copyrighted (c) material of the original comment or credit authors.
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 *
 * @copyright       The XOOPS Project http://sourceforge.net/projects/xoops/
 * @license         http://www.fsf.org/copyleft/gpl.html& ...  public license
 * @package         class
 * @subpackage      textsanitizer
 * @since           2.3.0
 * @author          bfanack
 * @version         youtube.php v1 2011-04-28 08:48 
 */

class MytsYoutube extends MyTextSanitizerExtension
{
    
// The encode function for dhtml editor
    
function encode($textarea_id)
    {
        
// If the extension has config data, load it
        
$config parent::loadConfig(dirname(__FILE__));
        
// Make sure that the icon is available /images/form/youtube.gif
        
$code "<img src='{$this->image_path}/youtube.gif' alt='" _XOOPS_FORM_ALTYOUTUBE "' onclick='xoopsCodeYoutube("{$textarea_id}","" . htmlspecialchars(_XOOPS_FORM_ENTERYOUTUBEURL, ENT_QUOTES) . "");'  onmouseover='style.cursor="hand"'/>&nbsp;";
        
$javascript = <<<EOH
            function xoopsCodeYoutube(id, enterYoutubePhrase){
                if (enterYoutubePhrase == null) {
                    enterYoutubePhrase = "";
                }
                var selection = xoopsGetSelect(id);
                if (selection.length > 0) {
                    var text = selection;
                }else {
                    var text = prompt(enterYoutubePhrase, "");
                }
                var domobj = xoopsGetElementById(id);
                if ( text != null && text != "" ) {
                    var result = "[youtube]" + text + "[/youtube]";
                    xoopsInsertText(domobj, result);
                }
                domobj.focus();
            }
EOH;

        return array(
$code$javascript);
    }
    

    function 
load(&$ts
    {
        
$ts->patterns[] = "/[youtube]([^]]*)[/youtube]/esUi";
        
$ts->replacements[] = __CLASS__."::decode( '\1' )"
    }
    
    function 
decode($url)
    {
        if (!
preg_match("/^http://(www.)?youtube.com/watch?v=(.*)/i"$url$matches)) {
            
trigger_error("Not matched: {$url}"E_USER_WARNING);
            return 
"";
        }
        
$src "http://www.youtube.com/v/" $matches[2];
        
        
$rp =     "<object width='425' height='350'><param name='movie' value='{$src}'></param>" .
                
"<embed src='{$src}' type='application/x-shockwave-flash' width='425' height='350' wmode='transparent'></embed>" .
                
"</object>" ;

                
        return 
$rp;
    }
}
?>


Merci pour tout

Posté le : 29/04/2011 10:42
Partager Twitter Partagez cette article sur GG+
Re: textsanitizer & youtube
Supporter Xoops
Inscrit: 09/01/2005 13:37
De Breizh
Messages: 16972
Merci pour le partage

Posté le : 30/04/2011 07:35

La connaissance s'accroît quand on la partage ...
Partager Twitter Partagez cette article sur GG+
Re: textsanitizer & youtube
Aspirant
Inscrit: 05/06/2003 23:06
De Colmar
Messages: 24
Citation :
Kris a écrit :
Merci pour le partage


service

Posté le : 25/05/2011 09:03
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

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