GDRCD 5.6.0.5 - Anonimo in Bacheca
Pacchetto: GDRCD 5.6.0.5 - Anonimo in Bacheca
Descrizione: Il pacchetto è conforme alla struttura della 5.6.0.5 ma può essere adattato alle release precedenti, ma non è stato testato.
Con questo pacchetto si aggiunge la possibilità di inserire post/messaggi anonimi in bacheca, con supervisione per chi ha almeno i permessi di moderatore.
Introduco anche una modifica sull'avviso di come viene indicato che un post è stato modificato. Nella versione vanilla del gdrcd, viene aggiunta una stringa in fase di modifica con il nome di chi modifica e la data.
Ho eliminato questa parte per inserire due nuovi campi sul DB dove vengono salvati data-ora e autore della modifica. Questi verranno mostrati al di sotto della sezione data creazione (poco sotto l'avatar per intenderci). Anche in questo caso, l'autore della modifica è visualizzato solo da chi ha almeno i permessi di moderatore.
Autore: anneth
Data: 22/02/2023
Dimensione: 12,04 Kb
Commenti degli Utenti
22/02/2023 - Ciao Anneth , Devo segnalarti un piccolo "possibile" BUG. Al punto 7 della guida quando scrivi:
7) modifica su pages/forum/visit.inc.php- cercare <div class="elementi_elenco"><!-- Autore --> e sostituire questo pezzo <a href="main.php?page=scheda&pg=<?php echo gdrcd_filter('out', $row['autore']); ?>"> <?php echo gdrcd_filter('out', $row['autore']); ?></a>
con<?phpif(ANONIMO){ echo "Anonimo";}else{ ?><a href="main.php?page=scheda&pg=<?php echo gdrcd_filter('out', $row['autore']); ?>"> <?php echo gdrcd_filter('out', $row['autore']); ?></a><?php}?>
Con la tua sostituzione, tutti i Thread saranno visualizzati con autore "Anonimo" indipendentemente se essi sono Anonimi o meno ed indipendentemente dai permessi di chi sta leggendo. Io l'ho applicato ad una land ma ho fatto questa modifica<div class="elementi_elenco_forum autor"><!-- Autore --> <?php if(ANONIMO && $row['anonimo'] == 1){ if($_SESSION['permessi'] >= MODERATOR){ ?> <a href="main.php?page=scheda&pg=<?php echo gdrcd_filter('out', $row['autore']); ?>"> <?php echo gdrcd_filter('out', $row['autore']); ?> </a> <?php }else { echo "<span>Anonimo</span>"; } }else{ ?> <a href="main.php?page=scheda&pg=<?php echo gdrcd_filter('out', $row['autore']); ?>"> <?php echo gdrcd_filter('out', $row['autore']); ?> </a> <?php } ?></div>
Poi devo segnalarti che nella query sempre nel file visit.php manca nella select LISTMA.anonimo
ma credo sia perché di base, non ti servisse.Spero possa esserti utile.22/02/2023 - Si, in effetti su quell'if faccio solo un controllo se il pacchetto è attivo, mi sono dimenticata di verificare se il thread è anonimo. Nel fare le prove avevo solo post anonimo XDGrazie per la segnalazione e si, in quel select non serviva ed ho evitato di estrarre un dato che non avrei poi riustilizzato
23/02/2023 - Ciao, Con la modifica che ho segnalato io , in base a come è stato aperto quel post, dovresti vedere Anonimo o il nome dell'utente. prova ad andare sul DB e andare a impostare, per quel record, a 1 il campo anonimo, dove il id_messaggio_padre = -1 (che sarebbe il post principale) Questo, unito alla modifica da me segnalata, dovrebbe far variare il fatto che tu veda "Anonimo" o il nome dell'autore
23/02/2023 - @darkmirrorok, sulla base di quanto segnalato anche in precedenza, ho fatto un pò di test massivi.nel file visit.inc.php va cercato questo /*Carico l'elenco dei forum*/ e nella query successiva va aggiunto MA.anonimo (come diceva in effetti crb, pensavo di averlo fatto su quella query in realtà XD)
$result = gdrcd_query("SELECT MA.anonimo, MA.id_messaggio, MA.titolo, MA.autore, MA.data_messaggio, MA.data_ultimo_messaggio, MA.importante, MA.chiuso, AL.id AS new_msg FROM messaggioaraldo AS MA LEFT JOIN araldo_letto AS AL ON MA.id_messaggio=AL.thread_id AND AL.nome='".$_SESSION['login']."' WHERE MA.id_messaggio_padre = -1 AND MA.id_araldo = ".gdrcd_filter('num', $_REQUEST['what'])." ORDER BY MA.importante DESC, MA.data_ultimo_messaggio DESC LIMIT ".$pagebegin.", ".$PARAMETERS['settings']['posts_per_page']."", 'result');
Con questo, e la modifica sistemata del punto 7 da cbr89 dovresti risolvereArticoli, Interviste e altre Risorse!