Időben változó jogosultságok

James53 képe

Sziasztok!

A következő dologban akadtam el. Egy online magazin publikálási rendszerét bűvölöm, aminek úgy kéne működni, hogy egy "magazinszám" tartalomtípus felvitelekor egy adott aloldalon listázódnának, az aktuális "magazinszám" típusú tartalmak. A dolog ott bonyolódik, hogy a beküldést után 2 hét elteltével a "magazinszámok" egy másik "achív" menüponttal ellátott aloldalon kellene listázódni, ÉS 2 hét után csak a regisztrált felhasználok belépve olvashassák az achív magazinszámokat. (Nyilván a bonyodalmat nem a listázás, hanem az automatizált jogosultságváltás okozza.)

Ergó 2 hét elteltével egy "magazinszám" típusú node olvashatósági jogosultságának "szűkülnie" kéne.

Első körbe arra gondoltam, hogy mondjuk létrehozok a tartalomtípushoz egy kétértékű mezőt, és akcióval átbillentem az értéket, majd az átbillentett értékre már tudok majd más jogosultságot megfeleltetni. Sajnos az általam talál Field Action modul nem tudja ezt meglépni illetve, ha megtudná sem tudom, hogy hogyan tudnék egy adott mezőértékhez jogosultságot meghatározni. Nem találtam Field Access modult :) Taxonomy Access már van, de ott meg nincs Taxonomy Action.

Egy szóval sokismeretlenes egyenlet. Tudtok esetleg segíteni, hogy milyen logika mellett esetleg milyen modulokat használva érhetek révbe? :)

u.i.: Bocs, ha fapados ötlet volt. De még sosem használtam akciót sem.

Drupal verzió: 
satya képe

Valamivel jelezned kell, hogy az adott tartalom archiv. Pl. egy taxonomy cimke jó lehet rá és ha jól tudom van taxonomy access modul is, így megoldhatod a jogosultsági kérdést is. (van)

Aztán futass meghatározott időközönként cront, (mondjuk minden éjszaka) és vizsgáld meg a tartalmaidat, hogy mikori a create date. Ha nagyobb, mint 2 hét, akkor add hozzá az archiv cimkét a tartalomhoz.

Én kb. így kezdenék neki, de gondolom van még sok (jobb) megoldás.

0
0
James53 képe

gyakorlatilag ugyan az az eszmefuttatásunk. Taxonomy Access valóban van, azt még nem néztem meg, mert ha van is, akkor sem tudtam volna mivel cimkét hozzárendeltetni automatizáltan.

A lenti cron függvényes megoldás jó lehet, csak bíztam benne, hogy van ennél elegánsabb modulos, "kattintós" (nem kódolós) trükk arra, hogy egy taxonomy cimkét, vagy mezőértéket, vagy bármit változtathassak.

Ha nem érkezik erre valami szimpatikus megoldás, akkor nekiugrok megfejteni, hogy hogyan tudom egy adott tartalomtípust taxonomy cimkéjét befolyásolni valami függvénnyel. (Olyan hihetetlennek tűnik számomra, hogy ezért kódolni kell, bízom benne, hogy csak a moduláris ismereteim hiányosak)

Köszi még egyszer

0
0

- Szabó Gábor -

"Előre minden élharcos, akinek a jelmondata az, hogy - amég élsz, alkoss"

satya képe

Itt egy példa modul is, ami a cron futásakor lefuttatja a kódodat.

micron.info

; $Id$
name = Micron
description = Additional cron tasks.
core = 6.x
package = "Cron"
php = 5.1

micron.module

<?php
// $Id$
/**
* @file
* Defines additional cron jobs.
*
*/
 
/**
* Implementation of hook_cron().
*/
function micron_cron() {
  // ide jön az algoritmusod
}
0
0
drifter képe

Vagy itt az előrecsomagolt megoldás, ez is időzíthető:

http://drupal.org/project/premium

0
0
James53 képe

ez nem pont azt csinálja, amit akartam, ugyanis egy node-t "nyes ketté", de jelen feladat igényeit még jobban ki is elégíti, mint az eredeti megoldás.

Szóval köszönöm szépen! Király vagy!

0
0

- Szabó Gábor -

"Előre minden élharcos, akinek a jelmondata az, hogy - amég élsz, alkoss"