Egy felhasználó csak egyet választhat és nem vonhatja vissza

szigetibalazs képe

Sziasztok!

Szerintetek melyik modullal(modulokkal) kellene nekiállnom az alábbi funkciót megoldanom:
Van egy csomó tartalmam amiből a felhasználóknak kellene választaniuk egyet és ne legyen visszavonásra lehetőségük.

Jelenleg egy views-t hoztam létre ezeknek a node-oknak a kilistázására és csináltam egy flag oszlopot is ahol be tudják jelölni a userek, hogy melyik tetszik nekik.
Namármost, még azt kellene megoldanom, hogy
• egy user csak egy node-ot jelölhessen meg(választhasson ki) és
• ne tudja visszavonni a bejelölését(kiválasztását.)

A flag modullal nem tudtam megoldani, hogy csak egy node-ot flag-elhessen a user, meg azt se, hogy ne tudja "unflag"-elni.

Van erre valami kézenfekvőbb megoldásotok?

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Drupal verzió: 
szantog képe

Kér flag, az egyik publikus, a másik nem.
Rules:
Ha bejelöli a publikus flaget, és nincs bejelelölve a privát, akkor privát flag bejelöl.
Ha bejelöli a publikus flaget és be van jelölve a privát: ejnyebejnye, már egyszer bejelölted.
Mivel a privát flaget nem tudja módosítani, így így azt csak egyszer leheet bejelölni.

0
0

----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.

szigetibalazs képe

És az egy user, egy node-ot, azt ezzel hogyan oldanád meg?
Mert így még azért többet is tud flag-elni, nem?

0
0
szigetibalazs képe

Asszem meg fogom tudni oldani.

Szóval készítettem egy "flag" nevű csoportot, melybe minden felhasználót beletettem.
A publikus flaget csak a "flag" nevű csoportban lévő felhasználók láthatják/jelölhetik.
Rules:
Ha bejelöli a publikus flag-et, és privát flag nincs bejelölve, akkor privát flag bejelöl és a flag csoportból törlöm.
Ha bejelöli a publikus flag-et, és privát flag be van jelölve, akkor hibaüzenet és publikus flag visszaállítása.

Szóval annyival egészítettem ki a megoldásodat, hogy létrehoztam egy jogosultsági csoportot.

0
0
szigetibalazs képe

Sajnos nem működik.

Két userrel teszteltem.
Mindkét usernek megnyitottam külön böngészőben a views táblázatot.
User1 bejelöli első node-ot, majd másik böngészőben User2 bejelöli ugyanazt a node-ot.
Hiába csinálok rules-szal szabályokat, hogy ha privát flag bejelölve, akkor más már ne tudja bejelölni.
Próbáltam úgy is, hogy ha elsőként bejelöli valaki adott node-ot, akkor utána Rules-szal legyen rejtett. Ezután ha más is be akarja jelölni, akkor előtte Rules-szal megnézem, hogy tartalom rejtett-e. Ha igen, akkor hibaüzenet.
De így is kiírja, hogy jelölve(flag-elve).

Ha User2 választása előtt frissítettem volna a böngészőben, akkor természetesen már nem látszódna (views szűrő) a listában.

Persze ez az egész csak akkor probléma, ha többen is egy időben nyitják meg a views-t és utána ugyanazt a node-ot választják.

0
0