GDRCD 5.4 - Schede modali
GDRCD 5.4 - Schede modali postato il 25/09/2016 17:21:29 nel forum programmazione, open source e hosting
Ciao a tutti. Premetto che non ho trovato alcuna soluzione per le difficoltà che sto riscontrando.
Vorrei che le schede dei personaggi si aprissero come schede modali. Ho attivato il link alle modali dal file config e commentato l'altro.
Di base funziona, ma solo se apro la scheda del mio personaggio dal link "scheda" presente nel menu.
Se provo ad aprirla dalla lista dei presenti, sia quella in luogo che estesa, si aprono nel main. Stessa cosa se tento di aprire la scheda di altri personaggi.
Sostituendo main.php con popup.php ottengo solo l'apertura in una nuova finestra, quando vorrei l'apertura in una finestra popup di 600x600.
Ho anche provato a modificare le sezioni relative a "Nome pg e link alla sua scheda" nella pagina presenti.inc.php, ma qualsiasi cosa io faccia mi restituisce errore di sintassi.
Pagine → 1
25/09/2016 17:26:23 e modificato da sadly-noob il 25/09/2016 18:14:08
EDIT: Soluzione parzialmente trovata.
<isteria>Bene, mi son strappata le budella fin'ora per una cosa che ci volevano due minuti. </isteria>
Ho trovato una soluzione al problema e sono riuscita a far aprire la scheda pg dalla lista presenti del main, entrati e usciti.
C'è da capire come risolvere questo problema in tutti gli ambienti (aprire anche la forum, dai presenti in chat, insomma ovunque c'è da aprire la scheda del pg), vorrei farne un tutorial per i disperati che verranno dopo di noi.
Ti do le indicazioni per fare i primi passaggi nel frattempo, spero ti siano utili:
Nella pagina presenti.inc.php cerca le parti di codice (sono tre, mi sembra) in cui viene ripetuto il comando per aprire la scheda del personaggio. La parte di codice che devi cercare, quella default, è questa:
//Nome pg e link alla sua scheda
echo ' <a href="../main.php?page=scheda&pg='.$record['nome'].'" class="link_sheet" target="_top">'.gdrcd_filter('out',$record['nome']);
if (empty($record['cognome'])===FALSE AND 0){echo ' '.gdrcd_filter('out',$record['cognome']);}
echo '</a> ';
Devi sostituirle TUTTE con questa:
//Nome pg e link alla sua scheda
?> <a href="javascript:parent.modalWindow('scheda', 'Scheda di <?php echo gdrcd_filter('out',$record['nome'])?>', 'popup.php?page=scheda&pg=<?php echo gdrcd_filter('out',$record['nome'])?>');"><?php echo gdrcd_filter('out',$record['nome'])?> <?
if (empty($record['cognome'])===FALSE AND 0){echo ' '.gdrcd_filter('out',$record['cognome']);}
echo '</a> ';
Per sicurezza seguendo i suggerimenti presenti in altri topic, nel file footer.inc.php sposta il codice per le modali ..
<script type="text/javascript">
function modalWindow(name, title, url, width, height) {
// per width ed height imposto dei valori di default così non occorre specificarli in ogni occasione
width = typeof width === 'undefined'? 800 : width;
height = typeof height === 'undefined'? 600 : height;
// verifichiamo se nel body non esiste il sorgente per la dialog
if ($('#dialog-'+name).length == 0) {
// in questo caso lo creiamo:
$('body').append('<div id="dialog-'+name+'" title="'+title+'" style="padding:0;"><iframe src="'+ url +'" frameborder="no" style="position:absolute;width:100%;height:100%;" scrolling="yes"></div>');
} else {
// se il sorgente invece esiste già assegnamo la nuova url all'iframe:
$('#dialog-'+name).attr('title', title);
$('#dialog-'+name+' iframe').attr('src', url);
}
// Ok, adesso siamo pronti per lanciare la modale!
$('#dialog-'+name).dialog({width: width, height: height});
}
</script>
All'inizio in alto, proprio sotto:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js"></script>
<script type="text/javascript" src="/includes/corefunctions.js"></script>
RICORDATI CHE IL FORUM DI GDR ONLINE FA STRANI SCHERZI CON GLI APOSTROFI, SOSTITUENDOLI IN AUTOMATICO O NON SO CHE COSA, QUINDI CURATI DI EFFETTUARE LA SOSTITUZIONE CON UN PROGRAMMINO - SOSTITUISCI CON UN APOSTROFO IL SIMBOLO: ' (che non so come si chiamino ufficialmente). OVUNQUE APPAIA.
Per me questa combinazione di cose ha funzionato/sta funzionando, spero che venga bene anche per te.
25/09/2016 19:02:39
Funziona! Le schede si aprono in modale da qualsiasi punto.
Grazie mille! *_*
25/09/2016 19:15:04
Figurati!
Manca però di combinare la stessa cosa dal forum (ergo: aprire la scheda in modale cliccando sull'autore del thread eccetera) e dai presenti estesi.
Insomma la lista delle parti in cui compare l'apertura della scheda del pg come funzionalità è più o meno lunga, mi vengono in mente anche l'anagrafe, i post all'interno dei thread ..
Un discorso ancora diverso è per esempio aprire la scheda pg in modale dall'interno di un'altra modale. Io vorrei tanto aprire i presenti estesi in modale, per esempio, e da lì far aprire le schede dei pg in un'altra modale ancora ..
Ce n'è da fare ancora un po' per coprire i casi più comuni in cui potrebbe servire questa funzione.
.. Ehmn, non so se questa roba ti interessa comunque, pardon.
Alla prossima postata!
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
Project Entropy ↗
State of Survival ↗
Enlisted ↗