Beviteli forma, tartalom típusonként

attb2 képe

A beviteli forma alapban a felhasználói csoportok szerint állítható. Lehetséges-e úgy beállítani, hogy bizonyos tartalom típusoknál csak egyféle beviteli forma legyen?

A probléma úgy merült fel, hogy Apróhirdetéseknél csak Filtered HTML formában lehet a hirdetés szövegét bevinni. (Még az 1-es usernek is, különben a design pillanatok alatt szétesik.)

pp képe

Még elég dev állapotban van.
http://drupal.org/project/filterbynodetype

javasolt még:
http://drupal.org/project/htmlcorrector

milyen 1-es user az aki csak full html-ben hajlandó bevinni a tartalmat? ;))

pp
(kis modul fejlesztéssel ki lehet dobni a nem kellő beállításokat node típusonként, ami mondjuk minimális védelem, de pont az ilyen véletlen hibák ellen véd.)

0
0
attb2 képe

A filterbynodetype a leírás alapján megfelelő, köszönöm a választ.
Természetesen megoldás az is, ha az adott modul beviteli eljárásában kiadok egy strip_tags() hívást. :-)

0
0
attb2 képe

Felmerült egy újabb probléma: a story tartalom típusnál van lehetőség comment írására.
Azt szeretném, hogy a commentnél csak egyféle input format legyen. Mivel a comment nem külön tartalomtípus ezért ez nem tudom megoldani a filterbynodetype modullal.

Erre van valami megoldás? Akár PHP programozással is.

0
0
pp képe

Fogod és kiszeded ezt a lehetőséget a comment form beviteli mezőjéből. Példát találsz a feltett modulodban, csak a form_id lesz más, de kb ugyan az.

pp

0
0
attb2 képe

És ezt a form_alter() függvényt hol valósítsam meg? A comment modulban, a filterbynodetype modulban, vagy esetleg írjak egy saját modult és abban?

0
0
crt képe

Saját modulban. Nem célszerű belenyúlkálni a rendszer moduljaiba, mert frissítéskor kellemetlen következményei lehetnek.
Ha még nem készítettél modult, innen kiindulva találsz több információt a fejlesztéssel kapcsolatban: http://drupal.org/node/83055

Üdv: Zoli

0
0
pp képe

kell egy info fájl

name = sajatmodul
description = sajatmodul
version = 5.x-1.dev

és egy modul benne a hook-kal és már kész is vagy van saját modulod.

Persze beleokádva szétgányolhatod a már létező modulokat is ;))

pp

0
0
attb2 képe

Megcsináltam a saját modult. Működik is szépen.
Persze, mint általában előjött újabb gond, de ezt megoldottam saját erőből. :-)
Ugyanis a tinyMCE továbbra is betöltődik a textarea-hoz, mivel a tinyMCE-t csak bekapcsolni lehet, de nem lehet szabályozni, hogy melyik beviteli formánál jelenjen meg.
Úgyhogy "belegányoltam" a tinyMCE kódjába, hogy a sima szövegs bevitelnél (amit én csináltam) ne jelenjen meg. Drupal.org-n láttam, hogy ezt mások is csak így tudták megoldani...

0
0
attb2 képe

Megtaláltam a szép megoldást:

function theme_tinymce_theme($init, $textarea_name, $theme_name, $is_running) {
  switch ($textarea_name) {
    case 'comment':
      unset($init);
      break;
  }
}

És ez rögtön kikapcsolja a tinyMCE-t minden formnál aminek comment a neve. A név itt trükkös, mert az edit-comment és add-comment formoknak is comment a neve.

0
0