Symfony2,Tinymce & BBCodes

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Ijstheefles
  • Registratie: December 2011
  • Laatst online: 18:57
Hoi tweakers,

Een wat apart probleem met ongetwijfeld een vrij elementaire oplossing;

Ik heb het volgende werkend:

Een tinymce instantie, die correct codes als
code:
1
[b]tekst hier[/b]
neerzet, wegschrijft in db en deze ook prachtig weer ophaalt.

Waar het fout gaat is dat als de opgehaalde bbcodes terug moeten in de tinymce instantie, dat tiny deze meteen format. Dus ik krijg geen
code:
1
[b]tekst hier[/b]
maar tekst hier. geformat dus.

Ik heb de
code:
1
[b]tekst hier[/b]
knoppen simpelweg gemaakt door de functies te overriden bij het init'en van tinymce:

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    function tinymce_button_quote(ed){
        ed.selection.setContent('[quote]' + ed.selection.getContent() + '[/quote]');
    }

    function tinymce_button_bold(ed){
        ed.selection.setContent('[b]' + ed.selection.getContent() + '[/b]');
    }

    function tinymce_button_italic(ed){
        ed.selection.setContent('[i]' + ed.selection.getContent() + '[/i]');
    }

    function tinymce_button_underline(ed){
        ed.selection.setContent('[u]' + ed.selection.getContent() + '[/u]');
    }

//init tinymce hier


config.yml vanuit symfony2:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
stfalcon_tinymce:
        tinymce_buttons:
          quote:
            title: "Quote"
            image: "asset[images/forum/quote.png]"
          bold:
            title: "bold"
            image: "asset[images/forum/quote.png]"
          italic:
            title: "italic"
            image: "asset[images/forum/quote.png]"
          underline:
            title: "underline"
            image: "asset[images/forum/quote.png]"
        include_jquery: false
        tinymce_jquery: true
        textarea_class: "tinymce"
        language: %locale%
        theme:
            simple:
                mode: "textareas"
                theme: "advanced"
                theme_advanced_buttons1 : "quote,bold,italic,underline,undo,redo,link,unlink,image,forecolor,styleselect,removeformat,cleanup"
                theme_advanced_toolbar_location : "bottom"
                theme_advanced_toolbar_align : "center"
                theme_advanced_statusbar_location : "bottom"
                theme_advanced_styles : "Code=codeStyle;Quote=quoteStyle"
                content_css : "bbcode.css"
                entity_encoding : "raw"
                add_unload_trigger : false
                plugins : "bbcode,wordcount"
                inline_styles: false
                convert_fonts_to_spans: false
                remove_linebreaks : false
                apply_source_formatting : false
                forced_root_block : false
                force_br_newlines : true
                force_p_newlines : false
                convert_newlines_to_brs : true
                remove_redundant_brs : false

[/code]

Welke stap mis ik? Het gegeven van bbcodes en markup is namelijk niet moeilijk, maar ik mis echt iets elementairs geloof ik >.<

Denk dat het in mijn custom overrides zit, maar dat is slechts een vermoeden.

Acties:
  • 0 Henk 'm!

  • naam
  • Registratie: Oktober 2007
  • Laatst online: 20:10
Niet gehinderd door enige kennis van tinyMCE binnen sf2, maar moet config.yml: 35 (apply_source_formatting : false) niet true zijn?

[ Voor 20% gewijzigd door naam op 06-12-2012 19:09 ]


Acties:
  • 0 Henk 'm!

  • Ijstheefles
  • Registratie: December 2011
  • Laatst online: 18:57
naam schreef op donderdag 06 december 2012 @ 19:07:
Niet gehinderd door enige kennis van tinyMCE binnen sf2, maar moet config.yml: 35 (apply_source_formatting : false) niet true zijn?
Maakt in deze geen verschil, althans, in de source van het iframe-pje van tiny is er geen wezenlijk verschil te ontdekken =P

Waar ik wel achter ben is dat in de database mooi de tekst met bbcodes staan, dat deze ook goed wordt opgehaald, maar dat ergens tussen het createForm() en het displayen van de tekst (dus tiny) het weer terug wordt gezet naar gewone html code >.<

[edit]
Ik zit net te denken; als ik de entity_encoding nou is op named zet, en ik verwijder alle bb-code gerelateerde dingen, dan zou het ook al veilig zijn + is het makkelijker voor de gemiddelde gebruiker om wat basic markup toe te voegen. Voor b.v. quotes zou ik dan een link per post maken die de het te quoten bericht instelt. (en vervolgens via een parent-child relatie werken nested quotes dan ook )

Maar dat is even als fall-back, ik wil dit eigenlijk stiekem best gewoon werkend hebben.

Lijkt erop dat er een tinymce instelling niet goed staat.. nu nog uitvinden welke >.<

Ideeen zijn welkom =P

[edit2]: O god.. ik ben ook zo lekker aan t opletten eh; [url="http://www.tinymce.com/wiki.php/Plugin:bbcode"]
This plugin makes it possible for TinyMCE to edit BBCode in WYSIWYG way by converting tags like [b] into <strong> and then <strong> back to [b] when the user submits the content
Leren lezen >.< Is het niet handiger als ik naar mijn wysiwyg oplossing ga? Heb het idee dat die plugin van tinymce een beetje om het probleem heen werkt >.>

[ Voor 50% gewijzigd door Ijstheefles op 06-12-2012 19:50 ]