phpBB Italia chiude!
phpBB Italia ringrazia tutti gli utenti che hanno dato fiducia al nostro progetto per ben 9 anni, e che, grazie al grande lavoro fatto da tutto lo Staff (rigorosamente a titolo gratuito), hanno portato il portale a diventare il principale punto di riferimento italiano alla piattaforma phpBB.

Purtroppo, causa motivi personali, non ho più modo di gestirlo e portarlo avanti. Il forum viene ora posto in uno stato di sola lettura, nonché un archivio storico per permettere a chiunque di fruire di tutte le discussioni trattate.

Il nuovo portale di assistenza per l'Italia di phpBB diventa phpBB-Store.it, cui ringrazio per aver deciso di portare avanti questo grande progetto.

Grazie ancora,
Carlo - Amministratore di phpBB Italia

MOD Lista Topic

Cerchi una MOD? Chiedi in questo forum.
Questa sezione è supportata dagli utenti del forum, pertanto lo Staff potrebbe non eseguire tali richieste.
Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: MOD Lista Topic

Messaggio da Micogian » 14/01/2010, 13:45

Ora bisogna risolvere dove e come inserire il "genere".

Avrei un'altra soluzione: ci sono sempre allegati nei Topic ?, che ne so, l'immagine, ad esempio.
Se ci fossero ci sarebbe la possibilità di utilizzare il campo "commenti file" che è associato all'allegato.
Se nel campo "commento" ci scrivi il "genere" poi si può estrarre i Topics che hanno questa indicazione e separarli in base al "genere".
Altrimenti resta la vecchia soluzione di inserirlo nel campo "motivo della modifica".

Diciamo che la parte più difficile è trovare una soluzione pratica e facile per inserire il "genere". Si può fare usando una tabella ma forse non ne vale lapena, altrimenti un menu con un modulo "select".

Avatar utente
gennyna
Utente
Utente
Messaggi: 1017
Iscritto il: 11/07/2009, 18:31
Versione: 3.0.10
Server: UNIX/Linux
Contatta:

Re: MOD Lista Topic

Messaggio da gennyna » 14/01/2010, 14:30

beh io opterei per un menù select.. pratico ed intuitivo..
Da trovarsi prefereribilmente sotto allo spazio dell inseriemno del titolo topic

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: MOD Lista Topic

Messaggio da Micogian » 14/01/2010, 15:53

gennyna ha scritto:beh io opterei per un menù select.. pratico ed intuitivo..
Da trovarsi prefereribilmente sotto allo spazio dell inseriemno del titolo topic
Questo è il come, resta il dove.... e per dove non intendo dove metto il menu ma dove metto il testo.

In pratica una cosa è il sistema di scelta, nel senso che se devo inserire un testo, lo posso aggiungere a manina o attraverso un menu, ma alla fine però bisogna decidere dove va memorizzato questo testo perchè altrimenti come lo cerco ?
Le soluzioni sono:
1) in un campo già esistente del database. Quale ? sta a voi decidere.
2) in un campo nuovo che devo creare.

Tieni presente che la query deve fare questa operazione:
cerca nella tabella "XXX" i Topics del Forum "YYY" che hanno questa caratteristica: ZZZZ

Ci manca il ZZZZ e lo dobbiamo creare.

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: MOD Lista Topic

Messaggio da Micogian » 14/01/2010, 17:50

Mi è venuta un'altra idea. :idea:
Voi utilizzate le icone?
Se si usano le icone, considerando che i generi sono nove, si potrebbero creare 9 icone ognuna corrispondente a un genere della lista.
Le icone sono già disponibili in sede di creazione-modifica dei Topics e quindi facilmente inseribili.
Si avrebbe già nell'indice una visualizzazione del'icona che indica la "categoria" l'icona stessa, con il suo numero ID diventa lo strumento per dividere i gruppi.

Avatar utente
gennyna
Utente
Utente
Messaggi: 1017
Iscritto il: 11/07/2009, 18:31
Versione: 3.0.10
Server: UNIX/Linux
Contatta:

Re: MOD Lista Topic

Messaggio da gennyna » 14/01/2010, 23:38

quindi dovrei realizzare 9 icone mmmm dimmi le dimensioni che da domani mi metto a lavoro:)

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: MOD Lista Topic

Messaggio da Micogian » 15/01/2010, 8:05

gennyna ha scritto:quindi dovrei realizzare 9 icone mmmm dimmi le dimensioni che da domani mi metto a lavoro:)
Come quelle che ci sono nella cartella "forum/images/icons/misc", sono gif 16x16.
Anzi, io sostituirei parte di quelle che ci sono, se non addirittura tutte, altrimenti ti ritrovi con un elenco troppo lungo e difficile da gestire perchè misto.
Le chiamerei direttamente azione.gif, avventura.gif, ecc..
Potresti fare delle icone con le iniziali, ma devi mettere 2 o 3 caratteri (Av, Az, ecc.) perchè solo l'iniziale non basta, ma questo sta a te deciderlo.
Puoi sempre fare 9 icone provvisorie che poi cambierai, lasciando però il numero ID di quelle originali.
In pratica quando crei o modifichi un Topic hai la serie di icone disponibili, ne scegli una e sei a posto. La Lista andrà a cercare i Topics che hanno una icona e li divide per gruppi.
I Topics che non hanno l'icona verranno atiomaticamente esclusi.
Il tutto senza stravolgere il sistema ma utilizzando quello che c'è già.
Solo una cosa: sei sicuro che la lista dei generi sia completa? (es.: storico, guerra, bibliografia, musica, .....)
Pensaci bene che inserirli dopo è più complicato.

Ricapitolando:
1) se hai deciso per l'utilizzo delle icone per me sta bene, da un lato la soluzione è abbastanza semplice, l'unico problema è che sei condizionato a dover scegliere un solo "genere" per ogni Film, mentre con il sistema che usa il campo "motivo della modifica" potevi inserire uno steso Titolo su categorie diverse.
2) delle icone abbiamo detto, devi crearle GIF e 16x16. Se quelle di default non ti servono sarebbe il caso di eliminarle o sostituirle in modo che quando apri il Topic hai la lista solamente di quelle relative alle categorie che ti interessa.
3) altra cosa che non abbiamo ancora definito è l'elenco dei campi che intendi visualizzare. Ovvio il Titolo ma ci sarebbero anche altri campi nella tabella "topics" che potrebbero entrare nella Lista. Considerando che devi fare una Lista, visto che non costa molto, è preferibile farla anche graficamente piacevole. Una Lista con solamente il Titolo mi sembra riduttiva.
I possibili campi da inserire nelal Lista, oltre al "title" potrebbero essere:topic_poster (chi ha postato), topic_time (la data di creazione del topic), topic_vievs (il numero delle visite), topic_replies (il numero delle risposte al topic), vedi tu se ritieni che valga la pena di inserire alcuni di questi campi, per farlo non costa niente.

Avatar utente
gennyna
Utente
Utente
Messaggi: 1017
Iscritto il: 11/07/2009, 18:31
Versione: 3.0.10
Server: UNIX/Linux
Contatta:

Re: MOD Lista Topic

Messaggio da gennyna » 15/01/2010, 13:07

Mi sembrerebbere quasi impossibile realizzare immagini 16x16 con le iniziali delle categoria.. verrebbe troppo piccolo e difficile da fr capire agli utenti...

E se ritornamissimo all'ipotesi delle opzioni di scelta? in stile menù? dove si puo scegliere una Opzione?..
PEr l'abbellimento della lista ci metterei dentro un motore di ricerca che appunto ricerca in quella "lista"
Un unltima cosa.. Sarebbe importante che il topic che si crea non si sposti solo nel forum di catgoria ma che vada anche nella sezione dove vi sono tutti i film.. Esempio:

Un utene si accine a creare una release.. compilta il tutto.. e sceglie il genere (esempio HORROR).. Dopo questa release deve comparire sia nel forum: "horror" e sia nel forum " tutti i film"

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: MOD Lista Topic

Messaggio da Micogian » 15/01/2010, 14:17

Credo che qui si continui a fare un pò di confusione tra come inserire e come memorizzare.
Quello che a me interessa è che a prescindere dal modo nel quale verrà scelta la Categoria, la Categoria stessa deve finire da qualche parte, sotto forma di icona, di ID, di testo o che cavolo ci pare.
Fatto questo stabiliremo che nome associare a quella icona, a quell' ID , a quel codice che abbiamo scelto.
Che poi la Categoria venga scelta attrraverso una lista di icone o un menù poco importa, è un problema successivo, ora mi interessa sapere dove memorizzo il dato e di conseguenza dove lo vado a trovare.
Soluzioni ce ne sono tante, cerchiamo di farlo in maniera meno invasiva possibile.
Si potrebbe aggiungere un campo "descrizione" alla tabella "icons" ma preferirei non modificare il Database.
Non mi sono mai interessato ma credo si possa anche associare all'icona un eventuale testo, da programma, il che renderebbe semplice la scelta, solo che se si scelgono le "icons" sarebbe il caso di sfoltire quelle che ci sono in maniera che alla fine si visualizzino solo quelle relative alle Categorie, almeno questo sarebbe l'ideale.
Se poi vogliamo usare quelle che già ci sono associando a ciascuna un Genere per me fa lo stesso, solo che le icone attuali sono bruttine, almeno per me. Si possono sempre mantenere gli attuali ID e sostituirle, l'importante è che le icone non siano normalmente usate in altre occasioni. Parlo di "icons" non di "smiles" che è un'altra cosa.
Puoi anche creare icone con un numero, 1, 2, 3, ecc. ma a questo punto è ovvio che ci vuole un menù o una descrizione da associare alle icone, altrimenti chi si ricorda il significato.
Diciamo che la scelta è un aspetto puramente personale, ognuno ha i propri gusti, io ti posso dare delle indicazioni di massima, la scelta poi la devi fare tu tenendo presente tutte le cose che ho evidenziato.
A me interessa, sempre che la scelta delle "icons" sia valida, assegnare il numero ID di ogni icona a un Genere.

Non capisco poi questo fatto che il Topic debba andare qui o là. Il topic è uno solo e si trova nel Forum dove viene creato.
La Lista o "le Liste" sono un'altra cosa, sono degli elenchi di Topics che per comodità vengono inseriti o meno in un determinato elenco.

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: MOD Lista Topic

Messaggio da Micogian » 16/01/2010, 10:40

Le MODifiche sono quasi pronte, si tratta di stabilire l'elenco delle Categorie ed associare il numero "icon_id" alla "Categoria".
Poi bisogna vedere quali sono i campi da riportare nella Lista.
Io ho provato e funziona, ecco il codice.
Copiare il codice seguente nel file "mod_catlist.php"

Codice: Seleziona tutto

<?php
/**
*
* @package phpBB3
* @version $Id: mod_catlist.php 2010 01 16 Bingo $
* @copyright (c) 2005 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
* Crea Liste personalizzate: Topics divisi per Categoria (icon_id)
*/

/**
* @ignore
*/
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
global $icons;

// Start session
$user->session_begin();
$auth->acl($user->data);

$user->setup('viewforum', $forum_data['forum_style']);


// Start initial var setup

$forum_id   = request_var('f', 0);

if (!$forum_id)
{
   trigger_error('NO_FORUM');
}
// Redirect to login upon emailed notification links
if (isset($_GET['e']) && !$user->data['is_registered'])
{
   login_box('', $user->lang['LOGIN_NOTIFY_FORUM']);
}

$sql = "SELECT f.*
   FROM ".FORUMS_TABLE." f
   WHERE f.forum_id = $forum_id";
$result = $db->sql_query($sql);
$forum_data = $db->sql_fetchrow($result);
$db->sql_freeresult($result);

if (!$forum_data)
{
   trigger_error('NO_FORUM');
}

// Permissions check
if (!$auth->acl_gets('f_list', 'f_read', $forum_id) || ($forum_data['forum_type'] == FORUM_LINK && $forum_data['forum_link'] && !$auth->acl_get('f_read', $forum_id)))
{
   if ($user->data['user_id'] != ANONYMOUS)
   {
      trigger_error('SORRY_AUTH_READ');
   }

   login_box('', $user->lang['LOGIN_VIEWFORUM']);
}

// Forum is passworded ... check whether access has been granted to this
// user this session, if not show login box
if ($forum_data['forum_password'])
{
   login_forum_box($forum_data);
}

// Stabilisce i valori assegnati alle icons_id
$categorie = array(
	'1' => "Avventura", 
	'2' => "Azione", 
	'3' => "Comico", 
	'4' => "Commedia", 
	'5' => "Drammatico", 
	'6' => "Fantascienza", 
	'7' => "Fantasy", 
	'8' => "Horror", 
	'9' => "Thriller"
);

//Nome del Forum selezionato
$forum_name = $forum_data['forum_name'];   //
$template->assign_var('FORUM_NAME', $forum_name);   
$template->assign_var('U_VIEWFORUM',append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $forum_id));

//$icons = $cache->obtain_icons();

//query: estrae i dati relativi ai Topics ai quali è associato un determinato icon_id
$sql = "SELECT
pt.topic_id, pt.icon_id, pt.topic_title, pt.topic_views, pt.topic_first_poster_name AS poster, pt.topic_time, pt.topic_first_poster_colour, pt.topic_poster,
pt.topic_replies, pt.topic_last_poster_name, pt.topic_last_post_time, pi.icons_id, pi.icons_url
FROM ". TOPICS_TABLE." pt,". ICONS_TABLE. " pi
WHERE pt.forum_id = $forum_id
AND pt.icon_id <> 0
AND pt.icon_id = pi.icons_id
ORDER BY pi.icons_url,pt.topic_title";

$db->sql_query($sql);
$result = $db->sql_query($sql);

$icon_cor = '';  // crea la variabile iniziale $icon_cor "vuota". Il ciclo while funziona in questo modo: se $icon_cor è diversa
                       // dalla precedente viene assegnato il valore "vuoto" e ad esso viene associato il nome della Categoria 
                       // corrispondente a icon_id, quindi a $icon_cor vengono associati i valori di $row della Categoria stessa.

while ($row = $db->sql_fetchrow($result))
{
if ($row['icons_id'] != $icon_cor){
   $icon_cor = $row['icons_id'];
   $template->assign_block_vars('topic_list', array(
      'TOPIC_ICON_IMG'      => '' ,
      'TOPIC_CATEGORY'      => $row['icons_id'],
      'TOPIC_CATEGORY_NAME' => $categorie[$row['icons_id']],
      'TOPIC_ICON_URL'	    => $row['icons_url']
      ));
   }   
   $template->assign_block_vars('topic_list', array(
      'TOPIC_ICON_IMG'      => (!empty($icons[$row['icon_id']])) ? $icons[$row['icon_id']]['img'] : 'misc/empty.gif',
      'TOPIC_ICON_URL'      => $row['icons_url'],
      'TOPIC_CATEGORY'      => $row['icons_id'],
      'TOPIC_CATEGORY_NAME' => $categorie[$row['icons_id']],
      'TOPIC_TITLE'         => $row['topic_title'],
      'TOPIC_LINK'          => append_sid("{$phpbb_root_path}viewtopic.$phpEx", 't='.$row['topic_id']),
      'FORUM_NAME_COR'      => $row['forum_name_cor'],
      'REPLIES'             => $row['topic_replies'],
      'VIEWS'               => $row['topic_views'],
      'TOPIC_AUTHOR'        => $row['poster'],
      'FIRST_POST_TIME'     => date("d.m.Y",$row['topic_time']), //$user->format_date($row['topic_time'],
      'LAST_POST_TIME'      => date("d.m.Y",$row['topic_last_post_time'])
   ));
}
// Titolo della pagina e nome del file HTML collegato
page_header($user->lang['VIEW_FORUM'] . $forum_name);

$template->set_filenames(array(
   'body' => 'mod_catlist_body.html')
);
// piede della pagina
page_footer();
?>
Il relativo file template si chiama mod_catlist_body.html ed è il seguente.
Riguarda lo stile "Avalon" e ci sono ancora delle cose da sistemare, ma dipendono dalla scelta dei campi da visualizzare.

Codice: Seleziona tutto

<!-- INCLUDE overall_header.html -->

<!-- IF U_MCP --><p>[&nbsp;<a href="{U_MCP}">{L_MCP}</a>&nbsp;]yyy</p><!-- ENDIF -->
<h2><a href="{U_VIEWFORUM}">{FORUM_NAME}</a></h2>

<br />	<form method="post" name="charsearch" action="./memberlist.php?mode=">
		<table width="100%" cellspacing="1">
		<tr>
			<td align="left"><span class="genmed">Vai alla Categoria: </span><select name="first_char" onchange="this.form.submit();"><option value="" selected="selected">&nbsp; &nbsp;</option><option value="1">Avventura</option><option value="2">Azione</option><option value="3">Comico</option><option value="4">Commedia</option><option value="5">Drammatico</option><option value="6">Fantascienza</option><option value="7">Fantasy</option><option value="8">Horror</option><option value="9">Thriller</option></select>&nbsp;<input type="submit" name="char" value="Visualizza" class="btnlite" /></td>

				<td class="genmed" align="right"><a href="./memberlist.php?mode=searchuser">Trova utente</a></td>
			</tr>
		</table>
			</form>
<span>

<!-- BEGIN topic_list -->
	
	<!-- IF  topic_list.TOPIC_ICON_IMG == '' -->
		<br>
	<div class="block-start">
	<table class="tablebg" width="100%" cellspacing="0">
		<caption><div class="cap-left"><div class="cap-right"><div><table width="100%"><tr><td width="90%"><a name="{topic_list.TOPIC_CATEGORY}">&nbsp;</a>&nbsp;&nbsp;<h3>{topic_list.TOPIC_CATEGORY_NAME}</h3></td><td align="center"><a href="#top">top</a></td></tr></table></div>&nbsp;</div></div></caption>								
		<tr>
		<th width="50%">&nbsp;Titolo del Topic&nbsp;</th>
		<th width="15%">&nbsp;Categoria&nbsp;</th>
		<th width="7%">Risposte</th>
		<th width="7%">&nbsp;{L_VIEWS}&nbsp;</th>
		<th width="8%">&nbsp;Data&nbsp;</th>
		</tr>
	</table>
	</div>
		<!-- ELSE -->
	<div class="block-start">
	<table class="tablebg" width="100%" cellspacing="0">

		<!-- IF topic_list.S_ROW_COUNT is even --><tr class="row2"><!-- ELSE -->	<tr class="row1"><!-- ENDIF -->
			<td class="row1" width="3%"><img src="{T_ICONS_PATH}{topic_list.TOPIC_ICON_URL}" alt="" /> </td>
			<td class="row1" align="left" width="47%"><a href="{topic_list.TOPIC_LINK}"><b>{topic_list.TOPIC_TITLE}</b></a>{topic_list.I_VALUE}</td>
			<td class="row1" align="left" width="15%">{topic_list.TOPIC_CATEGORY_NAME}</td>			
			<td class="row1" align="center" width="7%">{topic_list.REPLIES}</td>
			<td class="row1" align="center" width="7%">{topic_list.VIEWS}</td>
			<td class="row1" align="center" width="8%" >{topic_list.FIRST_POST_TIME}</td>
		</tr>
	</table>
	</div>
		<!-- ENDIF -->
<!-- END topic_list-->

</span>
	<span class="corners-bottom"></span></div>
<!-- INCLUDE overall_footer.html -->
La MOD consente di creare una Lista dei Topics di un determinato Forum (inserito nell'URL) che abbiano nel campo "icon_id" una determinata icona associata a una Categoria dei Topics.
Il risultato è una Lista suddivisa per Categorie.

Adesso aspettiamo di sapere con esattezza le Categorie da inserire e i numeri icon_id ad esse associate.
Per stili diversi da Avalon bisogna creare il relativo template.

Avatar utente
gennyna
Utente
Utente
Messaggi: 1017
Iscritto il: 11/07/2009, 18:31
Versione: 3.0.10
Server: UNIX/Linux
Contatta:

Re: MOD Lista Topic

Messaggio da gennyna » 17/01/2010, 9:20

LE Icone ancora non le ho Pronte; Perà posso metterne una giusto per provare poi dopo con calma la rifaccio:

UNa icone 16x16 eccola:

e si trova IN: http://www.clonedb.altervista.org/forum ... isc/12.png

LE categorie sono come già detto prima:

1- horror
2- avventura
3- Thriller
4-azione
5-fantasy
6-commedia
7-drammatico
8-fantascienza
9-comico

SE mi dici come fare con prosilvere ci posso pensare io :mrgreen:

Rispondi

Torna a “Richiesta MOD”

Chi c’è in linea

Visitano il forum: Nessuno e 44 ospiti