Script di Auto-Abilitazione V2.4

« Older   Newer »
 
  Share  
.
  1. Noobody
        +1   -1
     
    .

    User deleted




    CITAZIONE (Shik@93 @ 9/1/2010, 00:11)
    Guida e Script realizzati da Bowser del ForumFree Magazine.
    Guida rilasciata sotto una Licenza Creative Commons 3.0.


    Siete pregati di non eliminare i crediti.

    Ecco il codice perfetto.

    La nuova versione dello Script di Auto-Abilitazione presenta diverse innovazioni esclusive realizzate per migliorare la qualità e la sicurezza dello script:

    -Controllo del voto New!: la principale novità di questo script, il voto dell'utente viene controllato e solo se valido (cioè solo se non ha già votato un altro forum) ottiene l'abilitazione
    -Click Unico New!: Altra importante novità, gli utenti dovranno cliccare su un unico pulsante e non più su due per votare il forum ed iscriversi al gruppo privilegiato
    -Intuitivi messaggi che informano l'utente se il suo voto è andato a buon fine o meno
    -Cross-Browser: Lo script è compatibile con tutti i browser maggiori in circolazione
    -Bugfix: Sistemati alcuni bug che permettevano a chi aveva JavaScript disattivato di visualizzare il bottone ed iscriversi anche senza aver votato
    -Usabilità: Codice pulito, semplice, personalizzabile ed intuitivo.

    Installazione

    Preparazione

    Per iniziare ad utilizzare lo script sul vostro forum dovrete inizialmente recarvi in Amministrazione > Gestione Gruppi e creare un gruppo aperto (cioè con auto-iscrizione abilitata) non escluso dalla legenda. Questo gruppo andrà azzerato all'inizio di ogni mese, andranno cioè rimossi tutti gli utenti e bisognerà aggiornare il pulsante con le informazioni del nuovo sondaggio top forum mensile.

    Assegnate poi a tale gruppo particolari privilegi (come, per esempio, accedere a particolari sezioni del vostro forum) in modo che soltanto gli utenti che votano e quindi contribuiscono al vostro forum, possano accedere ai suoi migliori contenuti. Per fare ciò è sufficiente andare in Amministrazione > Restrizioni Accesso e inserire il numero (o ID) del gruppo nella lista di utenti abilitati.

    N.B. Abbiate cura di abilitare inoltre tutti i restanti gruppi dello staff del vostro forum, in modo da non escludergli l'accesso a queste sezioni.

    Lo script si suddivide principalmente in quattro parti distinte, ognuna con un compito ed un ruolo specifico.

    1) Nascondiamo il bottone di auto-iscrizione di default in tutto il forum

    Per la prima parte si tratta di Stili CSS da inserire semplicemente il seguente codice in Amministrazione > Modifica Colori e Stili:

    HTML
    /* Inizio Script Auto-Abilitazione V2.4 */
    .aa form input.codebuttons {display: none}
    .tag .aa form input.codebuttons {display: inline} /* Fix Tagboard View in Blog (no JS) */
    div#iscrizione { display: none; font-weight: bold; color: #FF0000; }
    /* Fine Script Auto-Abilitazione V2.4 */


    Essa si occupa di nascondere, via CSS (!), tutti gli input visibili nel forum (inseriti all'interno della cella di una tabella con classe aa). Essi verranno poi resi nuovamente visibili, tranne che nella pagina relativa al gruppo, attraverso un codice JavaScript.
    La seconda parte si tratta invece del testo che appare subito sotto al primo form, una volta premuto il pulsante, che invita l'utente ad aspettare qualche istante nell'attesa che la procedura di voto/abilitazione venga completata.
    Potete personalizzarne colore e stile, non rimuovete però l'attributo display: none per evitare uno spiacevole effetto grafico.

    2) Visualizziamo il bottone nelle pagine del forum esclusa la pagina specifica del gruppo

    Inserite questo script in Amministrazione > Gestione Codice HTML > In cima al sito:

    HTML
    <!-- Inizio Script Auto-Abilitazione V2.4 -->
    <script type="text/javascript"><!--
    if(location.search.indexOf('&g=IDGRUPPO')==-1) document.write("<style>.aa form input.codebuttons {display: inline; }</style>");
    //-->
    </script>
    <!-- Fine Script Auto-Abilitazione V2.4 -->


    Esso si occupa, come annunciato nel punto (1), di rendere nuovamente visibile gli input del forum, tranne ovviamente nel caso in cui si stia visualizzando la pagina relativa al gruppo privilegiato.
    Proprio per questo motivo dovrete anche sostituire IDGRUPPO con l'ID del gruppo di utenti interessato.

    3) Rimuoviamo il form di iscrizione dalla pagina del gruppo (controllo aggiuntivo da v2.3) e visualizziamo il bottone di voto

    Inserite questo script in Amministrazione > Gestione Codice HTML > In fondo al sito:

    HTML
    <!-- Inizio Script Auto-Abilitazione V2.4 -->
    <script type="text/javascript"><!--
    if(location.search.indexOf('&g=IDGRUPPO')!=-1 && document.getElementsByName("CODE").length > 1){
    CODEform = document.getElementsByName("CODE").item( document.getElementsByName("CODE").length == 2 ? 1 : document.getElementsByName("CODE").length-1 ).parentNode.parentNode;
    CODEform.parentNode.parentNode.removeChild( CODEform.parentNode );}
    if( document.getElementById('AA-voto-submit') ) document.getElementById('AA-voto-submit').style.display='inline';
    //-->
    </script>
    <!-- Fine Script Auto-Abilitazione V2.4 -->


    Anche in questo caso inserito al posto di IDGRUPPO nella prima parte l'ID del gruppo aperto.

    4) Script Principale e Moduli di Voto/Iscrizione

    Inserite i seguenti codici in Amministrazione > Gestione Codice HTML > [Dove desiderate inserire il pulsante, di norma si tratta dell'Homepage del forum]

    HTML
    <!-- Inizio Script Auto-Abilitazione V2.4 -->
    <script type="text/javascript"><!--
    /* =======================================
    // Script Auto-Abilitazione Potenziato
    // Realizzato da Bowser
    // (C) 2009 http://ffmagazine.forumfree.it
    // Versione: 2.4 - Ultima modifica: 14/12/2009 16:04
    // ======================================= */
    var abilitato = "Voto confermato, verrai ora abilitato"; //-- Messaggio alert
    var novoto = "Hai già votato questo mese in top forum!"; //-- Messaggio alert
    var alertvote = 1; //-- Valori: 1 (abilitato), 0 (disabilitato)
    var idtopic = ''; //-- Se specificato, controllo più restrittivo sull'url

    //-- Non modificare oltre questo punto
    timID = null; stop = 0; if( typeof( document.ElementById ) != 'function' ) document.ElementById = function(divID) {return ( document.getElementById ? document.getElementById(divID) : document.all.divID );}; function urlfrm ( obj ) { return ( obj.contentDocument ? obj.contentDocument.location : obj.contentWindow.location );}function controllovoto(recheck){if(urlfrm(document.ElementById('framevotazione')).host){if( urlfrm(document.ElementById('framevotazione')).search.indexOf( 't=' + idtopic ) != -1 ){if( recheck == 1 && stop == 0){stop = 1;if( alertvote ) alert(abilitato);document.ElementById('iscrizione').style.display = 'none';document.ElementById('iscriviti').disabled = false;document.ElementById('iscriviti').click(); return true;}else if( recheck == 2 ){return true;}else{return false;}}else{if( timID != null ){if( alertvote ) alert(novoto);document.ElementById('iscrizione').style.display = 'none';return false;}else{timID = setTimeout("controllovoto(1)", 5000);return false;}}}}
    //-->
    </script>
    <noscript><strong>ATTENZIONE: E' necessario abilitare JavaScript per effettuare correttamente la procedura di auto-abilitazione</strong><br></noscript>


    Di per se non bisogna modificare nulla per rendere lo script funzionante, le opzioni di default lo rendono già attivo. Potete però nel caso modificare il testo Voto confermato, verrai ora abilitato con quello che desiderate mostrare nel messaggio di avviso che apparirà all'utente durante la procedura di voto, se andato a buon fine; viceversa modificare il testo Hai già votato questo mese in top forum! se desiderate modificare il messaggio che viene mostrato agli utenti nel caso abbiano già votato altri forum New!. Altrimenti se desiderate disabilitare i messaggi di avviso basta sostituire alertvote = 1; con alertvote = 0;
    Infine potete, se lo desiderate, inserire l'ID del topic con il sondaggio mensile corrente della top tra gli apici singoli ' in idtopic = ''; (questo garantisce un controllo più restrittivo e quindi sicuro sul voto, consigliato)
    Esempio:
    CODICE
    var idtopic = '123456'; //-- Se specificato, controllo più restrittivo sull'url


    Infine dovete inserire subito sotto allo script (4) il seguente codice per inserire i due bottoni:

    HTML
    <form action="" method="post" target="framevotazione" onsubmit="document.ElementById('iscrizione').style.display = 'block'; return true;">
    <input name="act" value="Poll" type="hidden">
    <input name="t" value="XXXXXX" type="hidden">
    <input name="poll_vote" value="YYYYYY" type="hidden">
    <input type="submit" value="Vota e potrai entrare nel gruppo" class="forminput" id="AA-voto-submit" style="display: none">
    </form>
    <div id="iscrizione"><iframe id="framevotazione" frameborder="0" name="framevotazione" onload="controllovoto(1); return true;" style="display: none; overflow: hidden;"></iframe>Votazione in corso, attendi qualche istante...</div>

    <form action="/?act=Members&amp;g=IDGRUPPO" method="post" onsubmit="return controllovoto(2);">
    <input name="s" value="c=IDFORUM" type="hidden">
    <input name="CODE" value="01" type="hidden">
    <input value="Iscriviti al gruppo!" class="codebuttons" type="submit" name="submit" id="iscriviti" disabled="disabled" style="display:none;">
    </form>
    <small>Realizzato da <a rel="nofollow" href="http://www.forumfree.it/?act=Profile&amp;MID=424957">Bowser</a> &copy; <a href="http://ffmagazine.forumfree.it/?t=41484483" title="Script Auto-Abilitazione V2.4"><strong><abbr title="ForumFree">FF</abbr> Magazine</strong></a>
    <!-- Fine Script Auto-Abilitazione V2.4 -->


    Come per lo script vecchio in questa parte bisogna:
    -Sostituire XXXXXX con l'ID del topic del sondaggio mensile corrente nel forum ufficiale per le votazioni sul circuito
    -Sostituire YYY con la posizione (da 0 a 199) nel sondaggio mensile, indicata accanto al nome/link del forum (ricordatevi che il conteggio parte da 0, se volete fare il conteggio manualmente).

    Le ultime due cose da modificare sono IDGRUPPO e IDFORUM in cui bisogna specificare, come prima, l'ID del gruppo privilegiato e quello del forum in cui esso si trova.

    Potete infine personalizzare i testi dei bottoni modificando a piacere le scritte "Vota il forum per essere abilitato al gruppo Utenti +!" e "Iscriviti al gruppo!" (anche se quest'ultimo non verrà mai visualizzato dagli utenti.

    Esempio:
    Potete vedere un esempio di questo script in azione visitando il forum: http://auto-abilitazione.forumfree.it
    Non utilizzate però tale forum per richieste di supporto perché esse verranno ignorate, utilizzate l'apposita sezione Supporto ForumFree presente sul ForumFree Magazine.




    Seguono le possibili cause di malfunzionamento dello Script di Auto-Abilitazione:

    -L'utente ha disattivato JavaScript nel suo browser o ne utilizza uno che non ne effettua il parsing (Dalla 2.3 il pulsante in questo caso non viene più mostrato). Guida esterna su come attivarli
    -L'utente ha impostato opzioni particolari nel suo browser quali: Disattivazione degli iframe, Disattivazione dei forms
    -Lo script non è stato installato correttamente: non sono state effettuate tutte le modifiche o sono stati rimossi/alterati alcuni pezzi
    -Il forum presenta errori JavaScript, molte volte questi problemi possono interferire o bloccare del tutto l'esecuzione degli script nella pagina.
    -Alcune volte un'eccessiva quantità di errori HTML/CSS nella pagina possono alterare il funzionamento dello script.

    Lo script è stato testato con successo con i seguenti browser:
    Internet Explorer, Mozilla Firefox, Safari, Opera, Chrome.

    [Non dovrebbero presentarsi sostanziali differenze con i browser che utilizzano gli stessi motori di rendering dei precedenti browser]
    I metodi e le funzioni utilizzate nello script sono standard compatibili al 100% con i precedenti browser, motivo per cui in assenza dei problemi elencati lo script funziona correttamente.

    Si ricorda infine che gli utenti appena registrati al circuito pare non abbiano la possibilità di votare in top forum, motivo per cui ovviamente lo script non accetterà il loro voto, perché non valido.

    Ecco il topic di supporto: http://ffmagazine.forumfree.it/?t=44396447

     
    Top
    .
  2. ~Ax£l™
        +1   -1
     
    .

    User deleted


    Il Forum deve essere in Top 200?
     
    Top
    .
  3.     +1   -1
     
    .
    Avatar

    Millenium Member

    Group
    Administrator
    Posts
    10,718

    Status
    Offline
    Per utilizzare questo tipo di codice si,
    ma se vuoi posso procurarti anche altri codici per l'autoabilitazione per i forum non in top 200
     
    Top
    .
  4.     +1   -1
     
    .
    Avatar

    Millenium Member

    Group
    Administrator
    Posts
    10,718

    Status
    Offline
    Ho messo qui il codice ... se aspetti domani dovrei finire la discussione.
     
    Top
    .
3 replies since 9/4/2010, 16:42   587 views
  Share  
.