| Changed: | ||||||||
| < < |
| |||||||
| > > |
| |||||||
Sezione selezionatiNOTA non ricordo bene cosa ho fatto. | ||||||||
| Line: 91 to 91 | ||||||||
|---|---|---|---|---|---|---|---|---|
| Ripeto che non so se ho scritto tutto, non ricordo i problemi e le soluzioni. | ||||||||
| Added: | ||||||||
| > > |
| |||||||
| Line: 1 to 1 | ||||||||
|---|---|---|---|---|---|---|---|---|
| Added: | ||||||||
| > > |
Sezione selezionatiNOTA non ricordo bene cosa ho fatto.1. Creazione Tipo SelezioneAndare nel menù Modifica Tipi dalla Pagina iniziale per l'amministrazione. Qui creare un nuovo tipo "In evidenza" o "Selezionati" o quel che ti pare. E impostarlo come Protected. Active: Deactivating a type will prevent new stories from being published using this type. It will still be available for filtering and searching existing stories.Protected: Protecting a type will make stories published with this type invisible to everybody who doesn't have the correct permissions. Molto male, malissimo. 2. Creazione Modulo selezionatiCreare un nuovo "Newswire Module", creando un template partendo da un "Newswire Module" già esistente (esempio: Newswire Module 1977) pigiando sul link Save Template e dandogli un nome tipo "Cazzo". Tornare alla pagina "Newswire Module Listing" e lì, quasi in alto a destra nel riqadro azzurro troverai la voce "Use Template" ecc. ecc. e pigia su Create New Newswire Module ecc. ecc. Modificare poi tale modulo in modo che filtri solo i post di Tipo "Selezionati".3. Cazzi variStando al punto 1, allora, non c'è quel che si vuole fare, ovvero: non è possibile fare in modo che il tipo resti disponibile per essere selezionato durante la pubblicazione solo dagli editor/admin e resti in lettura a tutti quanti. Perciò va modificatoobjects/indyruntime/articledisplay.inc e alla riga 457 circa
//if(!($editor_session->isSessionOpen() and $editor_session->editor->allowedReadAccessTo("viewprotectedcategories"))and ($pageTopic->excluded or $pageRegion->excluded or $pageLanguage->excluded or $pageType->excluded))
if(!($editor_session->isSessionOpen() and $editor_session->editor->allowedReadAccessTo("viewprotectedcategories"))and ($pageTopic->excluded or $pageRegion->excluded or $pageLanguage->excluded))
Questo per visualizzare comunque i Tipi "protected" da parte degli admin/editor. (Fottersene se un type e' protected, va visualizzato lo stesso).
Altri cazziComunque sembra poi che l'arrayexcluded rimanga sempre vuoto (bug di Oscailt?). Questo comportava il fatto che il Tipo, anche se protected restava disponibile per la pubblicazione anche agli anonimi (???).
Perciò va modificato il file objects/story.inc alla riga 139 circa mettere
if ($t->excluded == 1 ) {
// logMessage($t->excluded." .. ".$t->type_name,"sitelog.txt");
$this->excluded2[] = $t->type_id;
}
e aggiungere da qualche parte la funzione
function getfTypes2()
{
global $editor_session;
if($editor_session->isSessionOpen() && $editor_session->editor->allowedReadAccessTo("viewprotectedcategories")) return $this->getTypes(
);
return $this->getNonExcludedTypes2();
}
a cui farà riferimento il file objects/indyruntime/publishdisplay.inc e aggiungere anche questa funzione
function getNonExcludedTypes2()
{
if($this->types==NULL) $this->load();
$non_excluded = array();
foreach(array_keys($this->types) as $t_id)
{
//logMessage("aaaaaa ".$t_id,"sitelog.txt");
if(!in_array($t_id, $this->excluded2))
{
$non_excluded[] = $this->types[$t_id];
}
}
return $non_excluded;
}
a cui fa riferimento la funzione precedente getfTypes2.
La funzione getTypeSelectCome detto prima, nel fileobjects/indyruntime/publishdisplay.inc alla riga 2130 circa va messo (commentando $all_types = $typeList->getfTypes();):
//$all_types = $typeList->getfTypes(); $all_types = $typeList->getfTypes2(); NotaRipeto che non so se ho scritto tutto, non ricordo i problemi e le soluzioni. | |||||||