Quelqu'un a-t'il le code de l'editeur de texte phpBB

WRInaute impliqué
Bonjour,

Je suis une tâche en javascript, et en plus j'aime pas ce langage. Ceci explique sans-doute cela.
Manque de pot là j'ai besoin d'un éditeur de texte pour le forum que je termine.

Comme celui de phpBB me semble convenable je voudrais le récupérer.

Mais là par exemple, si j'affiche le code source de cette page (celle où j'ai écrit cela), je vois du javascript partout et j'ai des gros boutons qui apparaissent sur les mains.


Auriez-vous l'amabilité de me filer le code net et clair qui permette d'un coup d'un seul d'avoir un bel éditeur de texte sur mon forum ?




Nan c'est pas de la fainéantise.
 
WRInaute discret
psychoreflex a dit:
Bonjour,

Je suis une tâche en javascript, et en plus j'aime pas ce langage. Ceci explique sans-doute cela.
Manque de pot là j'ai besoin d'un éditeur de texte pour le forum que je termine.

Comme celui de phpBB me semble convenable je voudrais le récupérer.

Mais là par exemple, si j'affiche le code source de cette page (celle où j'ai écrit cela), je vois du javascript partout et j'ai des gros boutons qui apparaissent sur les mains.


Auriez-vous l'amabilité de me filer le code net et clair qui permette d'un coup d'un seul d'avoir un bel éditeur de texte sur mon forum ?




Nan c'est pas de la fainéantise.


FCK-EDITOR ??????
 
WRInaute impliqué
Nan je veux pas un éditeur wysiwig comme FUCK-EDITOR, je veux un truc moche et qui pue comme sur les forums phpBB.

Un gars sympa, intellectuel de la tête, m'a filé le code en dessous :

Code:
function BBcode(balise,form,textarea)
{
    switch (navigator.appName)   
    { 
        case "Microsoft Internet Explorer": 
            var haha=document.selection.createRange().text;    
            
            switch(balise)
            {
                case 'color':
                    liste = document.getElementById('color');
                    A = liste.options[liste.selectedIndex].style.color;
                    liste.options[0].selected = true;
                    if(A=='')
                    {
                        insertion="";
                    }
                    else
                    {
                        insertion="["+balise+"="+A+"]"+haha+"[/"+balise+"]";
                    }
                break;
                case 'taille':
                    liste = document.getElementById('taille');
                    A = liste.options[liste.selectedIndex].firstChild.nodeValue;
                    liste.options[0].selected = true;
                    
                    if(A=='Taille')
                    {
                        insertion="";                
                    }
                    else
                    {                
                        switch(A)
                        {            
                            case 'Petit':
                            A='x-small';
                            break;
                            case 'Gros':
                            A='x-large';
                            break;
                        }
                        insertion="["+balise+"="+A+"]"+haha+"[/"+balise+"]";            
                    }
                break;
                case 'IMG':
                    var haha=prompt("IMG=","http://");
                break;
                case 'URL':
                    var URL=prompt("Adresse du lien:","http://");
                    var Titre=prompt("Titre du lien:","");
                    var insertion="["+balise+"=\""+URL+"\"]"+Titre+"[/"+balise+"]";
                break;
                case 'b':
                    var insertion="["+balise+"]"+haha+"[/"+balise+"]";
                break;
                case 'i':
                    var insertion="["+balise+"]"+haha+"[/"+balise+"]";
                break;
                case 'u':
                    var insertion="["+balise+"]"+haha+"[/"+balise+"]";
                break;
                case 'li':
                    var insertion="["+balise+"]"+haha+"[/"+balise+"]";
                break;
                default:
                    var insertion=balise;
                break;
            }
            
            with(document.forms[form].elements[textarea]) 
            {
                focus();
            }
            var sel=document.selection.createRange();
            sel.text=insertion;        
        break;
        case  "Netscape": 
            with(document.forms[form].elements[textarea]) 
            {
                var AvantB = value.substring( 0, selectionStart );
                var B = value.substring( selectionStart, selectionEnd );
                var ApresB = value.substring( selectionEnd, selectionEnd +100000);
            } 
            switch(balise)
            {
                case 'color':
                    A=document.forms[form].color.value;
                    if(A=='Noir')
                    {
                        B="";            
                    }
                    else
                    {                
                        switch(A)
                        {
                            case 'Rouge':
                            A='red';
                            break;
                            case 'Bleu':
                            A='blue';
                            break;
                            case 'Vert':
                            A='green';
                            break;                
                        }
                        B="["+balise+"="+A+"]"+B+"[/"+balise+"]";
                        liste = document.getElementById('color');
                        liste.options[0].selected = true;
                    }
                break;
                case 'taille':
                    A=document.forms[form].taille.value;
                    if(A=='Taille')
                    {
                        B="";
                    }
                    else
                    {
                        switch(A)
                        {
                            case 'Petit':
                            A='x-small';
                            break;
                                        
                            case 'Gros':
                            A='x-large';
                            break;
                        }
                        B="["+balise+"="+A+"]"+B+"[/"+balise+"]";
                        liste = document.getElementById('taille');
                        liste.options[0].selected = true;
                    }
                break;
                case 'IMG':
                    var B=prompt("IMG=","http://");        
                    B="["+balise+"\]"+B+"[/"+balise+"]";    
                break;
                case 'URL':
                    var URL=prompt("Adresse du lien:","http://");
                    var Titre=prompt("Titre du lien:","");
                    B="["+balise+"=\""+URL+"\"]"+Titre+"[/"+balise+"]";
                break;
                case 'u':
                    B="["+balise+"]"+B+"[/"+balise+"]";
                break;
                case 'i':
                    B="["+balise+"]"+B+"[/"+balise+"]";
                break;
                case 'b':
                    B="["+balise+"]"+B+"[/"+balise+"]";
                break;
                case 'li':
                    B="["+balise+"]"+B+"[/"+balise+"]";
                break;
                default:
                    B=balise;
                break;
            }            

            with(document.forms[form].elements[textarea]) 
            {
                focus();
                value= AvantB +""+ B +""+ApresB;
            }
        break;
    }
}

Mais :
Je sais même pas comment utiliser cette fonction, vu qu'il manque la partie html et comme il n'y a pas de commentaire dedans j'ai des gros boutons horribles qui poussent partout.

Quelqu'un peut me gratt... peut inventer la partie html qui vient avec ? Voir placer des commentaires dans le code si il s'en sent le courage ?
 
WRInaute accro
Comme je te l'avais déjà dis pour ce genre de projet, il vaut mieux être super calé un peu en tout, surtout si l'on veut quelque chose de fiable, stable et performant.

En assemblant quelques petits morceaux par ci par là tu n'aura absolument rien de...comment dire "potable".
Le mieux pour apprendre est de télécharger les versions gratuites des forums, et fouiller dedans...

Tu ne trouvera jamais (ou que très rarement) un script qui te convienne à 100% et qui réponde à tes exigences. Et crois moi, ce n'est pas faute de chercher, mais je me suis rendu compte qu'en faisant ces propres scripts on gagne énormément en perfomence/rapidité du fait qu'ils sont adapté à la situation/au besoin.

Pour faire des scripts sérieux, c'est long de ça demande beaucoup d'énergie.
(encore que ça dépend de ce que l'on veut faire et comment..)

C'est un travail long et fastidieux..surtout lorsque l'on n'a pas encore un bon équilibre en programmation.


Bonne chance. :wink:
 
WRInaute impliqué
Bah de toute façon je vais le faire en php : la seule chose que je veux c'est la fonction "citer". Et ça je peux le faire en php, en faisant apparaître les balises au chargement de la page du textarea.

Et je répète que mon forum est mieux que phpBB, même si j'y connais rien en javascript, rien que du coté de la sécurité, aucune comparaison possible.
Et y' a plus de fonctions. Et mon admin perso est en béton, je peux tout faire.


Donc pas besoin de javascript. J'aime pas ce langage de toute façon. C'est de la merde c'est pas compatible pour tout le monde.
 
WRInaute impliqué
Pour le long et fastidieux, je suis dessus depuis le mois de novembre, donc j'en sais quelque chose, merci Thierry8 ;-)
 
WRInaute occasionnel
pour appeler les fonction que tu as il faut que tu ajoutes de évènements sur tes boutons, en passant en premier élément de ta fonction le nom de la balise BB que tu souhaites intégrer dans ton textearea (3e element de la fonction) de ton formulaire (2e element)
 
WRInaute discret
psychoreflex a dit:
Bah de toute façon je vais le faire en php : la seule chose que je veux c'est la fonction "citer". Et ça je peux le faire en php, en faisant apparaître les balises au chargement de la page du textarea.

Et je répète que mon forum est mieux que phpBB, même si j'y connais rien en javascript, rien que du coté de la sécurité, aucune comparaison possible.
Et y' a plus de fonctions. Et mon admin perso est en béton, je peux tout faire.


Donc pas besoin de javascript. J'aime pas ce langage de toute façon. C'est de la merde c'est pas compatible pour tout le monde.

:lol: :lol: :lol:
heu... non rien....
 
WRInaute impliqué
yann214 a dit:
pour appeler les fonction que tu as il faut que tu ajoutes de évènements sur tes boutons, en passant en premier élément de ta fonction le nom de la balise BB que tu souhaites intégrer dans ton textearea (3e element de la fonction) de ton formulaire (2e element)

Quelqu'un a un exemple qui fonctionne avec la fonction du dessus ?

Histoire de finir le post.
 
WRInaute accro
Je pense qu'il rigole parce que tu dis que javascript c'est de la m***, mais que tu demande quand même comment faire...
 
WRInaute impliqué
Ouais c'est ce que je me suis dit aussi, c'est pas congruent.

Mais bon comme j'ai dit aussi, tant qu'à faire autant finir le post, suffit de donner un exemple, ça peut toujours servir.
 
WRInaute accro
.
Ben comme je l'ai dis avant suffit de regarder les sources des forums gratuits, et celui-ci (phpbb) en fait partie. Regarde donc la source de cette page, tu y trouvera je pense ton bonheur ;)
 
WRInaute impliqué
Retour à la case départ.

Bon si je me décide je ferais comme ça.

Mais à mon avis je vais me contenter d'une fonction "citer" en PHP. Simple et solide et puis c'est tout.


Merci à tous, [edit e-kiwi : tu as déjà été prévenu de rester poli. au prochain, c'est compte désactivé temporairement]
 
WRInaute accro

Bon psyhoreflex, je pense qu'une mise au point s'impose ...

Cela fait plusieurs semaines que l'ensemble des modérateurs observent tes interventions ... et quand on observe ainsi c'ets pas forcément en bien !

Plusieurs de tes messages ou les insultes le disputent aux gros mots ont déjà été poubellisés et je pense qu'il serait peut-être temps (non pas peut-être ... assurément temps) que tu reviennes à un langage (cela c'est pour la forme) et des propos (ca c'est sur le fond) plus respectueux de l'ensemble des intervenants du forum.

Dans le cas contraire, je crains fort qu'un modo excédé active son index droit sur le bouton désactivé le compte. Il t'appartiendra alors d'aller demander ta réactivation en direct auprès d'olivier avec les bons arguments pour le convaincre qu'il doit te reactiver.

Plus clair "être je ne peux" !
 
WRInaute impliqué
Fort bien, inutile de vous énerver en gras. Un simple message en privé aurait suffit, j'ai d'ailleur corrigé mon vocabulaire sur les derniers posts, car il était certe un peu excessif (noté que je suis loin d'être le seul, mais c'était peu être un peu trop fréquent, mes excuses).

Quand à aller quémander une réouverture de compte, sans vouloir polémiquer, c'est une prétention qui se retrouve quelques fois chez certains modérateurs...
Il est plus simple de rouvrir un compte ou de changer de forum...
En demandant la suppression des posts, dont on reste propriétaire ;-)


Bon bref, je ne vais pas en faire trois tonnes, mais un petit message en privé c'est plus sympa quand même.
Désolé pour les quelques excès, c'est vrai que ça ne vous facilite pas le travail.
 
WRInaute accro
>> Fort bien, inutile de vous énerver en gras. Un simple message en privé aurait suffit

NB : je te l'ai envoyé le message en privé
 
WRInaute accro
psychoreflex a dit:
Bon bref, je ne vais pas en faire trois tonnes, mais un petit message en privé c'est plus sympa quand même.
Oui et ne pas tenter de donner à croire que tu n'a pas été prévenu préalablement par MP eut aussi été plus sympa ... ce n'est que parce que tu n'as pas tenu compte du MP que l'on a activé le bouton "mise en gras" ! je dit "on" parce que même si c'est moi qui ai posté, on en a discuté préalablement dans notre forum des modos ...

psychoreflex a dit:
Désolé pour les quelques excès, c'est vrai que ça ne vous facilite pas le travail.
C'est bien de le reconnaitre...

Bon le message est passé. Dossier clos.
 
WRInaute impliqué
Pas tout à fait clos : Je ne tente pas de donner à croire que...

J'ai reçu le message d' E-kiwi, ce matin à 8h11.
J'ai posté ensuite, en prenant compte de sa remarque : vocabulaire normal.
Puis tu as posté ton message en gras à 10:48, alors que j'étais déjà prévenu.
Donc toi tu ne le sais pas, mais moi quand j'ai lu ton message, ça a fait double emploi, alors que le problème était déjà réglé.


Bon bref, passons à la suite, c'est vrai que c'est lourd d'être modérateur, désolé. :wink:


(d'ailleur je vais de ce pas ouvrir un post sur ce thème, j'ai besoin d'en savoir plus sur l'administration des forums : vous allez pouvoir vous extérioriser :wink: )


**edit**

Ici pour le post sur l'administration de forum :
https://www.webrankinfo.com/forum/t/administration-dun-forum-contraintes-et-heures-de-travail.50628/
 
WRInaute passionné
Tu as oublié aussi les posts déja modéré au sujet de ton voisin ;-)

On discute beaucoup entre modos, c'est intéressant et souvent nécessaire d'avoir un avis exterieur. Je m'en vais de ce pas sur ton post pour expliquer mon point de vue

Et on savait trés bien que tu avais reçu un message ce matin; ;-)

[/Sujet Clos]
 
Discussions similaires
Haut