• Welcome to Simple Machines Community Forum. Please login or sign up.

Reindirizzamento di una sezione su popup e/o nuova scheda

Started by pauless, October 27, 2013, 09:29:12 AM

Previous topic - Next topic

pauless

Chiedo scusa per aver creato un pò di confusione in un altro topic
che credevo fosse pertinente con la mia richiesta, ma per motivi
tecnici (allegati, temi diversi etc etc) mi hanno spiegato che è sempre meglio
aprirne uno tutto mio che è più comodo..

Riassunto della mia richiesta:

  • sul mio forum ho creato una sezione e l'ho reindirizzata link esterno,
    che vorrei si aprisse su popup. (è il regolamento del forum)
  • poi ne ho creata un'altra, che vorrei si aprisse su nuova scheda.
    in realtà vorrei che tutte le future sezioni reindirizzate si aprissero su nuova scheda,
    tranne quell'unica sezione del regolamento che vorrei invece su popup.

in allegato ho inserito BoardIndex.template.php e MessageIndex.template.php
della cartella del tema che sto usando (theme/flux)

inoltre in fondo a script.js attualmente ho copiato:
// Quando la pagina è caricata esegue attach_popup
window.addEventListener("load", attach_popup, false);

// Entry point, da qui vengono scelte le board a cui "attaccare" un popup
function attach_popup()
{
// 3 è l'id del redirect con il regolamento
attachBoardPopup(3);
}

function attachBoardPopup(board_id)
{
var elem = document.getElementById('idboard_' + board_id);

// Fa in modo che quando il link viene cliccato la funzione popitup venga eseguita
if (elem != null)
elem.addEventListener("click", popitup, false);
}

function popitup(event) {
// Evita che il browser segua il link
event.preventDefault();

// Crea il popup usando this.href (cioè l'url del link appena premuto) come url
newwindow=window.open(this.href,'name','height=200,width=150');

// Fa in modo che il popup sia in primo piano
if (window.focus) {newwindow.focus()}
return false;
}


che emanuele gentilmente mi ha dato sul topic precedente.

grazie!!

emanuele

Ok...era colpa mia, ti ho indirizzato al pezzo di codice sbagliato...( a mia discolpa tutte quelle righe si assomigliano troppo!!! xD)

Prova gli allegati.


Take a peek at what I'm doing! ;D




Hai bisogno di supporto in Italiano?

Aiutateci ad aiutarvi: spiegate bene il vostro problema: no, "non funziona" non è una spiegazione!!
1) Cosa fai,
2) cosa ti aspetti,
3) cosa ottieni.

pauless

Errore nella scansione del template!
Sembra che qualcosa si sia bloccato nel sistema di gestione dei modelli del forum. Il problema dovrebbe essere temporaneo: riprovare in un secondo momento. Se questo messaggio non scompare contattare un amministratore.

è anche possibile provare a ricaricare la pagina.


non carica proprio il forum!

da pannello altervista a visualizzazione singole pagine:

Parse error: syntax error, unexpected ',' in /membri/birraepatatine/Themes/flux/MessageIndex.template.php on line 107


Parse error: syntax error, unexpected ',' in /membri/birraepatatine/Themes/flux/BoardIndex.template.php on line 212[

ma tutto quel codice che ho messo su script.js devo cancellarlo?

emanuele

Yups...errore mio.
Sorry.

Questi dovrebbero funzionare...almeno non hanno errori di sintassi.


Take a peek at what I'm doing! ;D




Hai bisogno di supporto in Italiano?

Aiutateci ad aiutarvi: spiegate bene il vostro problema: no, "non funziona" non è una spiegazione!!
1) Cosa fai,
2) cosa ti aspetti,
3) cosa ottieni.

pauless

yeeeeeaaah!! il popup funziona, devo solo modificare le dimensioni..
si potrebbe eliminare anche la barra degli indirizzi?
http://birraepatatine.altervista.org/index.php?board=1.0

ora rimane soltanto da realizzare il secondo punto:

  • tutte le rimanenti sezioni reindirizzate invece vorrei si aprissero su nuova scheda..
http://birraepatatine.altervista.org/index.php?board=6.0

;D

emanuele

Non son sicuro di aver capito, quali rimanenti sezioni? (Tra parentesi, se devo essere sincero, odio sia i popup sia quei siti che aprono una nuova finestra (o scheda dato che l'una o l'altra sono le impostazioni del browser a definirlo) ad ogni click...)


Take a peek at what I'm doing! ;D




Hai bisogno di supporto in Italiano?

Aiutateci ad aiutarvi: spiegate bene il vostro problema: no, "non funziona" non è una spiegazione!!
1) Cosa fai,
2) cosa ti aspetti,
3) cosa ottieni.

pauless

ne ho fatta un'altra di sezione con redirect,
che rimanda a un altro forum che frequentiamo..
attualmente se lo clicco mi cambia pagina, abbandonando il mio forum
per passare all'altro.. questo non va bene, mi piacerebbe che
il link del redirect di quest'altra sezione si aprisse su nuova scheda,
così lascia aperta la pagina del forum mio..

Quote from: emanuele on October 28, 2013, 05:09:11 PM
(Tra parentesi, se devo essere sincero, odio sia i popup sia quei siti che aprono una nuova finestra (o scheda dato che l'una o l'altra sono le impostazioni del browser a definirlo) ad ogni click...)

de gustibus!  :P
neanche io sono molto per i popup, ma nel caso del regolamento mi piace..
perchè il mio regolamento non è molto lungo, giusto 2 parole e un richiamo alla netiquette,
perciò essendo che occupa poco spazio, mi piace l'idea di lasciare l'indice del forum
a disposizione non appena si chiude la finestrella del regolamento..

per il resto, come detto più sopra, un redirect che porta fuori dal forum
non deve chiuderti il forum, perciò deve aprirsi su nuova scheda,
come se fosse un link in un post..

ecco la pagina dove si trova l'altra sezione con redirect,
che attualmente se clicchi ti fa lasciare il mio forum per entrare nell'altro..

http://birraepatatine.altervista.org/index.php?board=6.0


(da che parte si cambiano i parametri del popup? vorrei ingrandirlo e mettere lo scorrimento laterale)

pauless

ho risolto in parte la questione dello scroll..
come dici tu emanuele la cosa varia a seconda dei browser,
così ho usato un div per fornire uno scroll alla tabella che contiene il regolamento..
quindi in realtà adesso quello che mi serve è di eliminare lo scroll
sul browser
, per non incappare nell'errore di avere 2 scroll..

per quanto riguarda le dimensioni del popup ho capito da solo
che devo modificare i parametri su script.js, quindi tutto ok..

mi rimane solo da apportare una modifica che mi permetta
di aprire gli altri redirect su nuova scheda anzichè su popup..


pauless

Quote from: pauless on October 29, 2013, 05:14:29 PM
quindi in realtà adesso quello che mi serve è di eliminare lo scroll
sul browser
, per non incappare nell'errore di avere 2 scroll..

penso di averlo risolto con un overflow:hidden nel foglio di stile..
da vedere se funziona con tutti i browser..



(ps. le cose che mi risolvo da solo le scrivo perchè credo sia sempre di interesse comune)

emanuele

Beh, il principio può essere lo stesso, solo c'è da cambiare un po' il codice:
// Entry point, da qui vengono scelte le board a cui "attaccare" un popup
function attach_popup()
{
// 3 è l'id del redirect con il regolamento
attachBoardPopup(3, true);
}

function attachBoardPopup(board_id, real_popup)
{
var elem = document.getElementById('idboard_' + board_id);

// Fa in modo che quando il link viene cliccato la funzione popitup venga eseguita
if (elem != null)
{
if (real_popup)
elem.addEventListener("click", popitup, false);
else
elem.addEventListener("click", newwin, false);
}

function popitup(event) {
// Evita che il browser segua il link
event.preventDefault();

// Crea il popup usando this.href (cioè l'url del link appena premuto) come url
newwindow=window.open(this.href,'name','height=315,width=737,location=no,resizable=no');

// Fa in modo che il popup sia in primo piano
if (window.focus) {newwindow.focus()}
return false;
}

function newwin(event) {
// Evita che il browser segua il link
event.preventDefault();

// Crea il popup usando this.href (cioè l'url del link appena premuto) come url
newwindow=window.open(this.href);

// Fa in modo che il popup sia in primo piano
if (window.focus) {newwindow.focus()}
return false;
}

Assolutamente non testato, quindi potrebbe anche non funzionare. :P


Take a peek at what I'm doing! ;D




Hai bisogno di supporto in Italiano?

Aiutateci ad aiutarvi: spiegate bene il vostro problema: no, "non funziona" non è una spiegazione!!
1) Cosa fai,
2) cosa ti aspetti,
3) cosa ottieni.

pauless

nein, non funziona..
in realtà non è cambiato nulla, il popup si apre come prima
mentre il secondo redirect si apre ancora sulla stessa pagina..

mi sono permesso di aggiungere una parentesi graffa in più
a quest'ultimo codice che mi hai dato, saprai già dove..

emanuele

Beh, certo quello che ti ho scritto è quello di "base", se tu vuoi aggiungere altre finestre che si aprono devi fare come ho scritto prima, qui:
http://www.simplemachines.org/community/index.php?topic=456041.msg3627762#msg3627762
Metti "true" se vuoi che sia un popup, altrimenti metti "false".


Take a peek at what I'm doing! ;D




Hai bisogno di supporto in Italiano?

Aiutateci ad aiutarvi: spiegate bene il vostro problema: no, "non funziona" non è una spiegazione!!
1) Cosa fai,
2) cosa ti aspetti,
3) cosa ottieni.

Advertisement: