Skip to topic | Skip to bottom
Home
Search:

Local
Local.ImcToscanaTecnicaOscailtNascostir1.4 - 01 Aug 2007 - 21:28 - CaSetopic end
You are here: Local > ImcToscana > ImcToscanaTecnica > ImcToscanaTecnicaOscailt > ImcToscanaTecnicaOscailtNascosti

Start of topic | Skip to actions

Oscailt: post nascosti

Oscailt non prevede nessuna maniera per visualizzare i post nascosti. Solo chi è editor li può vedere.

Come trucco è stata seguita questa strada:

  • modificato il file objects/indyruntime/articledisplay.inc
  • creato un documento statico contenente codice php (Static Document 2195)
  • creato un URL amichevole
  • creato un link a tale documento, e messo nella colonna destra in fondo
  • creato un nuovo oggetto per visualizzare l'articolo (Article View Module 2200)

objects/indyruntime/articledisplay.inc

Alla linea 344 (forse un'altra linea nel vostro caso, quindi cercate l'_originale_ di questo if) la condizione aggiuntiva $_REQUEST[a]==1, permette di visualizzare il post nascosto anche se non si è editor.

if($_REQUEST[a]==1 || $story->hidden==false || ($editor_session->isSessionOpen() && $editor_session->editor->allowedReadAccessTo("viewhiddencontent")))

In alternativa (stato attuale del sito toscano), al posto di if $_REQUEST[a]==1 ci si può mettere a esempio preg_match("/toscana\.indymedia\.org\/nascosti$/", $_SERVER['HTTP_REFERER']). Questo per limitare la possibilità di accedere agli articoli nascosti se e solo se si "proviene" dalla pagina che corrisponde (a una espressione regolare) a ciò che sta nella variabile HTTP_REFERER, ovvero dalla pagina (lo Static Document qui sotto) che contiene la lista degli articoli nascosti.

Static Document

Il campo File Contents di questo nuovo Documento contiene essenzialmente una query al database che succhia i post nascosti (select * from imc_toscana_stories where hidden = 1 ORDER BY story_id DESC) e ne fa una tabella HTML. Per ogni post crea un link con parametro ?a=1 (es. <a href="articolohiddato/185?a=1">Titolo</a> notare ?a=1).

TODO: qualcosa che tronchi la lista quando diventa troppo lunga, mettendo un link a "prossima pagina" o roba del genere.

Esempio di codice da sbattere nel campo apposito

<?php

include('config/dbconfig.php');

$dbi=@mysql_connect($dbhost, $dbuname, $dbpass);

mysql_select_db($dbname, $dbi) or print ("Errore nella selezione del database. Verificare i parametri");

$sql = "select * from imc_toscana_stories where hidden = 1 and type_id !=1 ORDER BY story_id DESC";

$result = mysql_query($sql, $dbi);

echo '<table class="object-views">';
echo '<tr><td>ID</td><td>TITOLO</td><td>AUTORE</td><td>DATA</td><tr>';
while ($row = mysql_fetch_array($result)) {

echo '<tr>';
printa($row);
echo '</tr>';
}

echo '<tr><td colspan=4></td></tr>';
echo '</table>';

mysql_close($dbi);

function printa($oggetto) {

echo '<td>'.$oggetto[story_id].'</td>';
echo '<td><a href="articolohiddato/'.$oggetto[story_id].'?a=1">'.$oggetto[story_title].'</a></td>';
echo '<td>'.$oggetto[author_name].'</td>';
echo '<td>'.$oggetto[time_posted].'</td>';

}

?>

URL amichevole & link

L'URL si crea agilmente dalla Pagina iniziale per l'amministrazione di Oscailt -> Modifica gli URL amichevoli. In fondo vveniva proposto di generarlo automaticamente.

Il link al documento si posiziona nella colonna di destra modificando il Vertical Menu 1982 e Add New Objects to this Vertical Menu dalla sezione Static Document e usando Long Title nella colonna Display.

Oggetto per visualizzare l'articolo

Creato un nuovo modulo (oggetto?) Article View Module 2200 per differenziare la visualizzazione del post nascosto da quello normale.
Tale differenziazione comprende: la possibilità di specificare un Header per specificare che il post è nascosto e perchè, la disabilitazione della possibilità ad aggiungere commenti, ed eventualmente altro.
to top


Local.ImcToscanaTecnicaOscailtNascosti moved from Local.ImcToscanaOscailtNascosti on 01 Aug 2007 - 21:34 by CaSe - put it back
You are here: Local > ImcToscana > ImcToscanaTecnica > ImcToscanaTecnicaOscailt > ImcToscanaTecnicaOscailtNascosti

to top

Copyright © 1999-2008 by the contributing authors.
All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding this tool? Send feedback (in English, Francais, Deutsch or Dutch).