Amministrazione contenuti in base a un termine di tassonomia

19 contenuti / 0 new
Ultimo contenuto
Amministrazione contenuti in base a un termine di tassonomia

Buongiorno a tutti,
ho un problema che sto cercando di risolvere con il modulo tassonomia ma non riesco a fare esattamente quello che voglio ...
Ho due utenti abilitati alla gestione dei contenuti, nello specifico "Storie". Questi utenti si chiamano AdminA e AdminB.
AdminA inserisce le storie settandole con il termine A da un vocabolario generico.
AdminB inserisce le storie settandole con il termine B dallo stesso vocabolario generico.
Ho poi UtenteA che deve vedere solo storie settate con A.
Ho poi UtenteB che deve vedere solo storie settate con B.
UtenteA e UtenteB sono "logicamente" a un livello appena appena più alto degli anonimi e funzionano correttamente: ognuno vede solo le storie di propria competenza.
Il problema nasce con AdminA e AdminB: entrambi possono gestire TUTTE le storie, sia quelle settate con A che qjuelle settate con B.
Esiste un modo (un approccio, un'idea ...) per fare in modo che, a livello di amministrazione dei contenuti, AdminA veda solo quelli settati con A e AdminB solo quelli settati con B?
Pensavo che la soluzione fosse banale, cioè mi bastasse settare nei propri ruoli (AdminA appartiene al ruolo AdminA, AdminB appartiene al ruolo AdminB) il permesso "edit own story content" ..., ma in realtà ogni utente vede tutto.
Cosa sto sbagliando? Avete qualche consiglio?
Tenete presente che ho fatto l'esempio con 2 utenti/ruoli, ma in realtà dovrebbero essere centinaia.
Grazie a chiunque vorrà darmi una mano.

Maurizio

Il permesso "edit own story content" non c'entra con le tassonomie e con la visibilità.
Hai provato il modulo Taxonomy Access Control?

Sì, ho provato il modulo Taxonomy Access Control, e per esempio ho settato, per AdminA, un "default" D-D-D per quel vocabolario con A-A-A sul termine "A". Ho anche provato a dirgli persino D-D-D sul termine "B", ma niente da fare: lui continua comunque a vedere tutto.
TAC sembra funzionare bene per gli utenti (anonimi o no) totalmente privi di QUALUNQUE possibilità di amministrare i contenuti, ma una volta che un utente ha la possibilità di gestione di un contenuto, sembra che il modulo TAC venga semplicemente ignorato.
Ma vedendo la cosa da un altro punto di vista, dimenticandoci per un attimo il modulo TAC, perche se un ruolo ha flaggato "edit own story content" può editare anche i contenuti non suoi?

Perchè se hai il ruolo admin può vedere/editare tutti i contenuti :)

Ciao
Marco
--
My blog
Working at @agavee

Non riesco bene a capire ...

AdminA ha i ruoli "AdminA" e "utente autenticato". Non ha ruolo admin. Oppure ce l'ha per default? Se sì, come glielo posso togliere?

Scusa se le domande sono forse da profano, ho già creato alcuni siti in Drupal senza problemi perchè la loro filosofia era molto semplice (UN amministratore che fa tutto e il pubblico anonimo che vede tutto); ora non riesco a fare questa cosa un pò più complessa (tanti amministratori che possono fare tutto sul "pezzetto" di loro proprietà e tanti "gruppi di utenti" che possono vedere e solo vedere il pezzetto fatto dal loro amministratore).

Ciao,
Maurizio

Io procederei cosi:

Con CCK creo due contenuti identici:
CCK A - e lo assegno al vocabolario A
CCK B - e lo assegno al vocabolario B

Poi creo due nuovi tipi di utenza:
Admin A - e gli assegno il Scrive/Modifica/Cancella CCK A
Admin B - e gli assegno il Scrive/Modifica/Cancella CCK B

Creo gli altri tipi di utenza:
User A - e gli assegno i permessi di visualizzazione CCK A
User B - e gli assegno i permessi di visualizzazione CCK B

Poi con Menu per Role,o con i blocchi visualizzo il
Crea contenuto CCK A - CCK B solo sui ruoli che voglio

:)

Il problema qui sembra molto più semplice ...

In sostanza i vari permessi "edit own ... " pare non funzionino.
Se setto solo loro, AdminA non può modificare NULLA.
Se setto anche "administer nodes", AdminA può modificare TUTTO, anche quello che non ha creato lui.

Il mio unico problema sembra questo, perchè per il resto la tassonomia sembra funzionare bene.

Ciao,
Maurizio

maskeret, il fatto che TAC dia risultati inaspettati mi fa pensare che tu stia usando contemporaneamente (o abbia usato in tempi diversi) diversi moduli per il controllo di accesso (per esempio robe come Content Access). Il problema di pasticciare per un po' con i moduli che gestiscono i permessi è che a volte anche disabilitando il modulo, restano tracce dei permessi, che andrebbero cancellate prima di disabilitare i moduli (Content Access, per esempio, ha una funzione del genere per resettare i permessi prima di disattivarlo).
Fossi in te proverei a resettare tutte le impostazioni dei moduli di controllo permessi che hai e a disattivarli, per verificare che i permessi del core funzionino a dovere.
Poi riprova con TAC. E ricorda di non dare ai ruoli che vuoi limitare il permesso "Amministra nodi"!

Non ho usato "Content Access".
L'installazione che sto facendo è freschissima, praticamente non ho fatto nulla se non installare la TAC per creare questo scenario, ma non mi aspettavo che gli "edit own" non funzionassero ... :-)
Il problema sembra non interessare TAC, ma solo le permissions del "core".
Non sono il solo, pare, ad avere questo problema; per esempio guarda questo breve thread: http://www.drupalitalia.org/node/5855

Ciao,
Maurizio

@ maskeret: mi sa che abbiamo lo stesso problema... a naso.

risolto!
io nella sezione "argomenti" di viste ho inserito testo:field_autore e in php handling code questo:
global $user; return array(0 => array('value' => $user->name));
ossia, ho creato una vista, che solo autore a o autore b vede i propri contenuti... questo perchè ne contenuto ho aggiunto un campo (scrivi il nome dell'autore) che come predefinito ha lo stesso codice:
global $user; return array(0 => array('value' => $user->name));
quindi nella vista applico l'argomento "voglio vedere solo i nodi dove il campo field_autore è uguale a $user corrente"

spero ti serva

Grazie linnox, può servire tutto, ovviamente :-)
Quello che vorrei evitare è installare altri moduli (suppongo tu abbia installato View, io invece no) ... e/o "aggirare"il problema in qualche modo.
Sto cercando di creare un sito enormemente complesso, e l'idea originaria era di farmelo da solo (ho una certa esperienza in questo tipo di cose), ma, dato che la cosa non è urgente, volevo capire se Drupal potesse gestirlo (dato che poi avrei una serie di benefit già pronti, come gallerie fotografiche, calendari, forum, ecc ...), e questa cosa che gli "edit own ..." non funzionano (apparentemente) non riesco proprio a capirla, visto che mi sembra una cosa basilare.
Probabilmente sbaglio a settare qualcosa, ma non capisco cosa.

Ciao,
Maurizio

Aggiornamento ...

Ho installato un nuovo Drupal 6.9.
Non ho installato nulla di aggiuntivo, nè la TAC, nè Content Access, neanche la lingua italiana, niente-di-niente.
Ho creato 2 utenti, ognuno legato al suo ruolo.
Ogni utente può sempre editare qualunque contenuto, sia dell'altro utente, sia addirittura dell'amministratore principale.
Come ho già detto, se per ogni utente setto SOLO gli "edit own ...", lui non vede/edita nulla di nulla.
Se invece gli setto anche "Administer nodes" e poi gli "edit own ...", lui vede/edita tutto di tutto.

Se non c'è un modo "normale" per fare questa cosa, e bisogna invece ricorrere a qualche workaround, allora credo siamo di fronte a un buco bello grosso, a mio parere.
Ma probabilmente sto sbagliando qualcosa, ma di nuovo non capisco cosa.

Ciao,
Maurizio

Se vuoi distribuire i permessi tra gli utenti, non puoi assegnare loro "Administer nodes", se no sono (indovina...) "Amministratori dei nodi", quindi ovviamente possono gestire tutti i contenuti.
Quello che a te manca è un punto di accesso di ognuno ai propri contenuti, che non sono visibili fino a che non sono pubblicati (tranne agli amministratori di nodi).
Questa cosa te la può fornire il modulo Workspace, credo: http://drupal.org/project/workspace

Ho ben compreso che non posso assegnare "Administer nodes" ai miei utenti.

Ma allora mi chiedo a cosa servono i permessi "edit own ..." se, di fatto, sono inutilizzabili in quanto:
1) se non li setto, non funzionano, e questo è ovvio :-)
2) se li setto, non funzionano, e questo è molto meno ovvio :-(

Posso installare tutti i moduli del mondo e probabilmente aggirare il mio problema e risolverlo in un altro modo,
ma mi chiedo come mai questa cosa non funziona. Mi sembra veramente una follia :-)

Ciao,
Maurizio

Quello che non hai capito è che la cosa non funziona perché tu non fai in modo che i tuoi utenti vedano i contenuti che hanno creato. Per farlo, o fai in modo che i contenuti siano elencati in una pagina con una View, oppure usi Workspace. L'elenco generale dei contenuti, invece, è a disposizione solo di chi ha il permesso "Amministra nodi". Al contrario di Wordpress, Drupal non ha un "Dashboard" per i contenuti, non per tutti gli utenti, almeno. Il sistema per accedere alla modifica dei nodi per i non amministratori (di nodi) è navigare fino ad essi e da qui modificarli. Se non dai un accesso ai nodi, ovviamente non puoi permettere di modificarli, anche se il permesso funziona.

OK, proverò con qualche modulo.
Però mi sembra veramente strano, anche se ho capito che mi devo rassegnare :-(, che questa cosa non sia implementata a livello "nativo": la possibilità di definire sin da subito utenti che possano inserire/modificare solo i propri contenuti, accedendoci direttamente dai pannelli di amministrazione.

Ciao,
Maurizio

Turna... ;)
Non c'è un pannello di amministrazione per gli utenti che non sono amministratori e in Drupal gli amministratori amministrano tutto (in realtà sono abbastanza separati l'amministrazione dei contenuti e la configurazione del sito); questo è il concetto. Si può discutere se sia giusto o no e la definizione di quello che sta o non sta nel core è qualcosa che cambia nel tempo con l'esperienza, il feedback degli utenti, test di usabilità e in relazione alle risorse disponibili agli sviluppatori per gestire la complessità del codice.
Personalmente anch'io ho incontrato qualche difficoltà con questo approccio, ma mi sono anche trovato a lavorare con piattaforme che cercavano di definire figure ambigue come i "sottoamministratori", ma alla fine ci si trovava con compartimentazioni troppo rigide.

Siccome quel pannello non c'è, qualche anima pia ha creato Workspace, nello pieno spirito modulare di Drupal. I moduli contrib non sono moduli di seconda scelta o per funzioni inutili e marginali (pensa a Views): permettono, con uno sforzo distribuito (e magari a volte con qualche difficoltà di coordinamento, ma anche con un miglioramento costante dell'integrazione - avresti dovuto provare a installare i moduli di Drupal 4!) di aggiungere funzioni che possono essere utili a tutti o a una nicchia di utenti.

Grazie Pinolo per la spiegazione e la pazienza.
Proverò Workspace (che mi sembra funzionare correttamente) e altri moduli.
Mi farò vivo con altri thread se dovessi avere di nuovo problemi. E' una minaccia :-)

Grazie ancora e ciao!
Maurizio