Saját modul fejlesztése - tartalom típus, komplex validálás, CCK nélkül

szbalazsb képe

Szevasztok!

Fél éve kezdtem az ismerkedést a D6-tal. Tetszik. 2. projectembe vágtam most bele. Lehetőségeimhez mérten már átnyálaztam a fórumokat (hu és org). Modult még nem fejesztettem D-hez. A problémám a következő, és ehhez kérek segítséget TŐLETEK!

  • Modult szeretnék fejleszteni egy speciális igény kielégítésére.
  • Modul saját tartalom típust menedzsel. Nem kimondottan CCK-ra épülve, viszont addicionálisan tartalmazhat majd CCK-s dolgokat (contemplate, megosztott mezők stb.)
  • Gyorsan, elegánsan szeretném lefejleszteni a modult, mellőzve barbárságot
  • Validációhoz jQuery ugyebár csak hab a tortán
  • Fontos számomra kód újrahasznosítás, biztonság (más modulokból)
  • Többnyelvűség támogatása
  • Más modulokkal való igazi kompatibilitás
  • Optimalizált sebesség, több száz felhasználó, mezei hosting szerver
  • Fősulis nonprofit project
  • Példákon keresztül tanulási segédletre (útvonalra, D5 is sokat segít) lenne szükségem (konkrétum)
  • Példákon keresztül kódra van szükségem (konkrétum, azaz eleje és vége van)

Modul terve (nem teljesen az, szóval csak szösszenet):

Node-okat hozhatnak létre a felhasználók, stb...

Konvertálható: Azaz állapotból állaptba lehet átvarázsolni a node-okat (ez már egy tulajdonság, ami 3 elemű lehet, állapotnak hívom: boldog, szomorú, talon, törölt) Ezekhez az állapotokhoz összetett validáció tartozik. (tax kilőve) A validáció több mező együttes állapotát, értékeiket vizsgálja. Sajnos 3 fajta tartalomtípussal szerintem nem szerencsés dolgozni, mert akkor valószínű több dolgom lenne.

Jogolsultásg 1.: Saját magam (mr. mezei user) is rendelkezhetek ezen tartalom típus node-jai felett. Létrehozom, Szerkesztem, Törlöm, Talonba teszem
Mások node-jai-val (boldog, szomorú) is tudok műveletet végezni, konkrétan talon-ba tenni. Azaz klónozom a node-t (nem dinamikus hivatkozást vagy bookmark-ot készítek róla), és új állapotot adok neki, a talon-t. Saját node-ommal és Más node-jával is megtehetem.

Jogolsultásg 2.: Talon állapotnak speckója, hogy csakis "Nem publikus" lehet. Azaz még opciója sem lehet a publikusnak ebben az esetben.

Törölt? Törölt állapotú node-ot csak jogrendszerben definált usergroup láthatja (def.: uid1), alias "History"...

UI, Gyors gombok (akciók), minimális komfirmációval (pl.: jQuery-vel, "biztos, hogy ezt akarod tenni?"): Teaser-ben sorakoztatva (views-on keresztül listázva a nod-okat) is tartoznának akciógombok, mint pl.: töröl, boldoggá tesz, szomorúvá tesz, talon-ba tesz

UI, Generális gombok (akciók), komfirmációval (pl.: jQuery-vel): Nem teaser-ben, hanem node alatt: Szerkesztem, Törlöm

UI extra: Boldog és Szomorú állapotban fürdő node-okat publikusságtól függően más-más névvel illetne a rendszer. (publikus boldog = társaság tagja, nem publikus boldog = boldog) Ezeket az elnevezésket több helyen is használnám.

Adatlap: Adatlapból jQuery váltógombocskával lenne "egyszerű" és "összetett", jQuery validációval vizsgálva mi leht már "összetett". Lenne sok field és kevés field, felhasználó kedvétől függően töltené ki őket.

Validáció: "Egyszerű" és "Összetett" adatlaptól függően lenne egy komplexebb validáció. Pl.: csak úgy lehet boldog állapotú node-t létrehozni, hogy bizonyos-os field és választók értekei párosítottak vagy konkrétumok.

Igazán konkrétumba nem merek még gondolkodni, nem tudom mit lehet belátható időn belül gyorsan és biztonságosan megvalósítani. Remélem eleget írtam, hogy elkezdhessük róla a párbeszédet.

Kérlek reagáljatok, kérdezzetek, akciózzatok! Hogyan kezdjek neki?

Drupal verzió: 
Pasqualle képe

Remelem a programozas jobban megy mint a projekt kovetelmenyek leirasa..

node_example
ha ezt a modult megerted akkor ez alapjan mar tudsz sajat tartalom tipust letrehozni..

0
0