Egymásra épülő fejezetek

Karesz képe

Sziasztok!

Arra keresem a választ, hogy hogyan lehet egymásra épülő tartalmakhoz modult létrehozni a legkönnyebben, esetleg van-e olyan modul ami tudja azt ami nekem kell. Az elképzelés valami ilyesmi lenne: az osztályok adottak, az osztályvezetők létrehoznak fejezeteket, ehhez csop.vezetőt rendelnek, akik szintén létre tudnak hozni alfejezeteket és így tovább. minden csak helyi szinten játszódhat, beleértve a jogokat is.

új fejezet létrhozása (oldal tartalomtipus)

osztály kiválasztása (lista)
felh. csoportjának ellenőrzése (melyik osztály)
ha nincs benne amit kiválasztott akkor hibaüzanet

ciklus{ ellenőrizni hogy vannak e fejezetek
ha vannak akkor lista
fejezet kiválasztása vagy új fejezet}
ha új fejezet akkor:

felhasználót ellenőrizni hogy osztályvezető vagy a szülő fejezetben csoportvezető-e
ha nincs benne akkor hibaüzanet (függvény)
tábla létrehozása ehhez a tartalomhoz: admin, osztályvez., létrehozó, csopvez, tagok

keresés a tagozat tagjai között
kiválasztás csoportvezetőnek
csoportvezető hozzáférési jogot az adatbázisban létrehozni ehhez a tartalomhoz
értesítés a csoportvezetőnek
menüpont létrehozása a csoportvezetőnek az új fejezethez

kiválasztás tagnak
tag hozzáférési jogot az adatbázisban létrehozni ehhez a tartalomhoz
értesítés a csoportvezetőnek
menüpont létrehozása a csoportvezetőnek az új fejezethez

tartalom létrehozása
az oldalt menüpontként beilleszteni a helyére

Drupal verzió: 
eMeLA képe

Lehet, hogy van ilyen modul, de gondolatkísérletnek én így indulnék neki:

  1. Létrehoznám a jogosultságokat:

    osztaly
    osztaly_csoport
    csoport_alcsoport

  2. A tagokat besorolnám a csoportokba.
  3. Létrehoznám a FEJEZET tartalomtípust, amiben van egy user_reference mező (pl. ENGEDELY névvel), amibe az osztaly, osztaly_csoport, csoport_alcsoport jogosultsággal rendelkező felhasználók vannak.
  4. Készítenék egy modult, ahol a hook_form_alter()-ben megváltoztatnám az ENGEDÉLY listát, úgy hogy a beküldő felhasználónak, csak azok a felhasználók jelenjenek meg, akik a csoportbeosztásban egy szinttel lejjebb vannak, vagyis a többi felhasználót törölni kell a listából. Így megszabható, ki az aki jogosult az adott fejezethez, további alfejezetet "csatolni".
  5. Készítenék egy node_reference mezőt, amiben a FEJEZET tartalomtípusú node-ok vannak.
  6. A modulom hook_form_alter()-ben vizsgálnám, hogy a beküldő felhasználótól egyel feljebb lévő csoportból mely node-ok vannak számomra "engedélyezve". Itt az user_reference field tartalmát kell vizsgálni. A többi node-ot törölni kell a listából

Elvben jól hangzik, biztos vannak buktatói, de egy kiindulási pontnak biztos jó lehet.

A beküldés visszaellenőrzésére figyelmet kell fordítani, mert ha ezt elmulasztod, akkor egy preparált form-mal lehet jogosulatlanul csatolni olyan helyre tartalmat, ahova egyébként nincs "jogosultsága", hogy küldjön az illető !

0
0

...mit tudok: http://web.termuves.hu

aboros képe

tanulmányozzad azt!

0
0

-
clear: both;

Karesz képe

Köszönöm a választ. Most néztem meg egy bemutatóvideót, szerintem ez az ami kell nekem.

0
0
aboros képe

menjél rá az interneteddel! ;)

0
0

-
clear: both;