felhasználó maga állíthassa be a csoportját

d.pryke képe

Első ránézésre furcsának tűnhet, de azt szeretném, hogy mondjuk ha a Drupal alapú oldalamon van 4 felhasználói csoport (jogosultság csoportra gondolok) amiből kettő "publikus" azaz nem az oldal szerkesztőinek hanem a látogatóknak fenntartott, akkor e-közül a kettő közül a regisztráló userek a regisztráció során maguk választhassák ki, hogy melyikbe akarnak tartozni.
Pl: egy oldal amit ügyvédek és orvosok használnak, regisztrációkor meg kell adni, hogy a regisztráló személy épp melyik és ettől függően más dolgokhoz lesz jogosultsága az oldalon, más menüpontok jönnek elő neki.

Drupal verzió: 
Fórum: 
Nagy Gusztáv képe

Ha sikerül is megoldani, mi akadályozza meg a usert, hogy másnak adja ki magát, mint aki, hogy hozzáférhessen neki nem engedélyezett oldalakhoz? Főleg, ha menet közben is válthat!

Szóval én - ha kezelhető a mennyiség - a profil modullal kérdezném: egy moző, hogy minek vallja magát, de kézzel venném fel a tényleges csoportba.

0
0

Nagy Gusztáv

eMeLA képe

Rövid időn belül te vagy a második, aki a felhasználókra bízná a csoportba sorolását.
A csoportok kifejezetten arra lettek kitalálva (ha jól gondolom), hogy az adminisztrátor határozza meg ki milyen csoportba tartozzon, és milyen jogosultságokat kapjon. A csoporthoz köthető jogosultságok adminisztratív szintűek, vagyis beküldés, törlés, javítás. Ne a felhasználó dötnse már el, hogy törölhet-e vagy nem....

Magyarán a felhasználó max. javasolhatja, hogy milyen csoportba szeretne tartozni, és az adminisztrátornak kell ezek után a csoportba sorolnia.

Ha a felhasználó szeretné meghatározni, hogy a tartalmak közül melyeket szeretné látni, akkor azt másként kellene megoldani. Bizonyára készült erre is modul, vagy ha a view-t használod a tatalamak megjelenítésére, bizonyára van olyan szűrő, ahol a profile mező alapján lehet szűrni. Ugyebár ebben az esetben már a láthatóságról van szó !

Nem gondolom, hogy olyan jogosultságot akarsz adni a felhasználóknak ami adminisztráció szintű, vagyis a csoportjogusultsághoz köthető. Ha igen akkor át kellene gondolni a rendszered.

0
0

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

d.pryke képe

Köszönöm mindkettőtök hozzászólását!!

Egyik részről nem probléma, ha a felhasználó másnak adja ki magát mint aki (másik csoportba sorolja magát), ezt ellenőrizni nem szeretném.
Ha nem abba a csoportba sorolja be magát, az egyedül őt érinti, mert ezt arra szeretném használni, hogy mindenki azt a tartalmat kapja ami az ő besorolása szerint neki szánunk, ha mást jelöl akkor a más érdeklődési körűeknek szánt tartalmakat, funkciókat fogja látni. Ő dolga.

De mondok egy példát:
Egy blokk megjelenését lehet path szerint korlátozni és user group szerint. Más szerint (pl profile mező értéke) nem.
Pedig elképzelésem szerint lennének olyan blokkok amit az egyik csoportnak szeretnék megjeleníteni mert őket érdekli, más blokkokat pedig a másik csoportnak.

Vagy képzeljük el: vannak eladók és vevők. Mindkettő regisztrálhat - ő tudja, hogy eladni szeretne vagy venni. Nem jellemző, hogy valaki mindkettőt.
Egy eladónak mondjuk kell egy "hirdetés feladása" menüpont (node beküldéshez kap jogot) aki venni akar annak ez nem kell, sőt zavaró lehet, neki viszont vásárlási tippeket lehet kitenni ami az eladónak nem fontos. Mert neki meg eladási tipppek kellenek ami viszont a vásárlónak nem fontos.
És szerintem természetesebb megközelítése a kérdésnek group mint egy profile mező, nem??

0
0
eMeLA képe

És szerintem természetesebb megközelítése a kérdésnek group mint egy profile mező, nem??

Szerintem nem, mert te a megjelenítés miatt akarod adminisztrációs csoportba sorolni a tagokat. Ez pl. jó arra, hogy az egyik TinyMCE a másik FCKeditort használjon, vagy az egyik törölhet a másik nem.

Mivel te a tartalmat akarod szétválasztani, ezért szerintem a profile jobb erre.

-----------------------------------------------------------------------------------

Több helyen, így a blokkok beállításánál is van olyan mező ahol egy php script lefutása szabályozza, hogy megjelenjen-e a blokk, vagy nem:

Csak abban az esetben jelenik meg, ha a következő PHP kód TRUE értékkel tér vissza (PHP-módban, csak tapasztaltaknak ajánlott).

Ha itt vizsgálod az $user változóban a profil-nál megadott értéket, akkor tudod szűrni, hogy a tag éppen mit jelölt be. Vagyis valami ilyen dolgot kell beírnod ide:

<?PHP
global $user;
if ($user->xy == "én eladni akarok") then return TRUE;
else return FALSE;
?>

Ha mégszebben akarod, akkor akkor a template.php-ban csinálsz egy függvényet, aminek a tartalma a fenti kódrészlet akkor a megfelelő helyen/helyeken csak a függvényed kell meghívni:

<?PHP return naenmitisakarok(); ?>
0
0

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

york képe

Szerintem nem, mert te a megjelenítés miatt akarod adminisztrációs csoportba sorolni a tagokat. Ez pl. jó arra, hogy az egyik TinyMCE a másik FCKeditort használjon, vagy az egyik törölhet a másik nem.
Nem volt szo adminisztracios csoportrol, szerintem teljesen jo a megkozelites es nem latom benne a biztonsagi problemat sem.
Ha maganak a csoportnak nincs semmivel se nagyobb jogkore mint a bejelentkezett felhasznalonak akkor nem lehet semmi gond, sot a csoportnak nem is kell, hogy extra jogosultsagai legyenek eleg ha letezik, es maris lehet szurni a tagjaira.
En annyi trukkot csinalnek, hogy a profil modulban letrehoznek 2 valasztasi lehetoseget, es egy kis modullal a valasznak megfelelo csoporthoz hozza adnam.

0
0
aboros képe

En annyi trukkot csinalnek, hogy a profil modulban letrehoznek 2 valasztasi lehetoseget, es egy kis modullal a valasznak megfelelo csoporthoz hozza adnam.

pont így próbálnám. ki mondta, hogy nem lehet 42 csoportod tökegyforma jogkörrel?

0
0

-
clear: both;

Pasqualle képe

a csoport helyett a role angol kifejezest irom, mert a csoport nem eleg kifejezo itt..

nem keszitenek ket role-t azonos jogkorrel, mert a role arra szolgal, hogy a felhasznalokat jogosultsag szerint ossza szet. Ha a csoportositas nem jogosultsag szerinti csoportositas akkor role nelkul probalnam megoldani a dolgot..
Minden profile mezore kulon role-t letrehozni szinte lehetetlenseg, es sok role-t admisztralni meg kesz orulet a Drupalban.

0
0
aboros képe

akkor e-közül a kettő közül a regisztráló userek a regisztráció során maguk választhassák ki

nem kell minden profile mezőre külön role, egy profile mező van, ami vagy A vagy B és attól függően az egyik role vagy a másik. tiszta sor.

vagy nem role-okkal oldja meg (kettőt!) hanem profil mező.. akkor viszont gigamacera (klikkelős módszerrel) a blokkoknál és a nézeteknél, hogy profil mező alapján kell szűrni, megjeleníteni/rejteni.

kettőnél még inkább a role-t használnám. (de ez megint ízlés kérdése, szerencsére a drupalban általában egy feladatnak 42 különböző megoldása lehetséges) más kérdés, ha holnap kitalálják, hogy nem kettő kéne hanem négy... vagy tizennégy, akkor a role már lehet nyalóka :)

0
0

-
clear: both;

pp képe

Mint ahogyan Pasqualle is írta rossz a kiindulás, rossz a szemlélet. Nem azt mondja, hogy ne lehetne megoldani így. Meglehet. Gyorsan és akkor műxik. Sajnos a tapasztalatom az, hogy egy weboldalt nem elkészít az ember, hanem működtet. Egy-egy ilyen rossz szemlélet tovább gondolásából olyan összegányolt hasznavehetetlen oldalakat lehet kialakítani, ami nehezen kezelhetővé teszi a rendszert. Ha csak ez a feladat akkor ok, de ha nem - márpedig hosszú távon kizárt - akkor már problémákat fog szülni.

Felhasználó mint ember, mint jogkör szétválasztására/csoportosítására a role/csoport való. Felhasználó mint adat szerkesztésére a profil való. Mint kiderült nem arról van szó, hogy nem érhet el egy adott funkciót a júzer, hanem arról, hogy milyen adatokat jelenítsünk meg számára a típusától függően. Szóval jó ez a megoldás csak tudni kell, hogy nem a legjobb. ;)

pp

0
0
zeodin képe

Kipróbáltam a Drupal 7-ben az autoassignrole modult és az a része megy, hogy automatikusan hozzárendeli a felhasználót egy csoporthoz. A másik része, hogy a regisztráló felhasználó tudja beállítani a csoportját az nem működik ill. vannak beállítási lehetőségek, hogy mik közül választhat a regisztráló de ez nem jelenik a regisztráció során sehol.

0
0