Script AutoAbilitazione v2.3

« Older   Newer »
 
  Share  
.
  1. x.forzact™
        Like  
     
    .

    User deleted


    Script di Auto-Abilitazione V2.3



    Come promesso è arrivata finalmente l'ora di presentare il nuovo Script di Auto-Abilitazione, che al contrario di quel che molti credono è stato ideato e realizzato, ai tempi, completamente da me.
    Ma, molti si chiederanno "Bene. Ma cos'è questo fantastico lo script di Auto-Abilitazione?". La risposta è semplice: Niente di che.
    E' un semplice trucchetto che unisce le potenzialità di due codici pre-esistenti, cioè il "Bottone per votare il forum" e il "Bottone per iscrizione ad un gruppo", per fare in modo che gli utenti per accedere ed iscriversi ad un gruppo aperto a cui sono stati dati particolari permessi/privilegi d'accesso è necessario votare preventivamente il forum/blog in top.
    Questo script venne creato, ai tempi, per il forum Hentai Fantasy ma in seguito, a causa dell'inarrestabile copiaggio (Un ottimo articolo a riguardo, vari esempi e script per arginare il copiaggio) si diffuse in tutti i circuiti.
    Non voglio dilungarmi più di tanto, quindi mi limiterò a segnalarvi questo messaggio contenente varie informazioni storiche a riguardo e critiche ad un forum che, senza diritto, ha preteso che molti forum inserissero dei crediti per uno script tanto semplice e non di loro proprietà.

    Caratteristiche e Limiti Versione 1
    Quando realizzai la prima versione dello script, non pensai di includere funzioni e caratteristiche troppo complesse. Lo script doveva solo nascondere il secondo pulsante e visualizzarlo al click sul primo, oltre a garantire un minimo di sicurezza nascondendo il pulsante nella pagina relativa al gruppo aperto. Di per sè, esso ha fatto un ottimo lavoro ed è stato apprezzato da molti amministratori dei forum in top200 sui vari circuiti che attualmente lo utilizzano per concedere solo agli utenti che supportano il forum particolari privilegi e permessi. Tuttavia alcuni problemi sono, con il tempo, venuti a galla; ad esempio un utente disonesto riusciva ad abilitarsi anche senza aver votato il forum, avendone già votato in precedenza un altro oppure riusciva, disabilitando JavaScript, a visualizzare il pulsante nella pagina relativa al gruppo in modo da non dover votare il forum associato.
    Questo fenomeno, purtroppo, è andato via via allargandosi e ciò, insieme ad altri motivi mi ha spinto a realizzare una nuova e più funzionale versione.
    Potete comunque trovare di seguito se siete interessati la prima versione dello script, che a parte qualche leggera ottimizzazione, è rimasta tale dalla sua creazione, con una breve guida al suo inserimento.

    SPOILER (click to view)
    Inserite in Amministrazione > Gestione Codice HTML > In cima al forum

    CODICE
    <script type="text/javascript">if( location.search.indexOf('&g=IDGRUPPO')!=-1 ) document.write("<style>form input {display: none;}</style>");</script>


    Sostituendo IDGRUPPO con l'ID del gruppo di utenti privilegiati.
    Questa prima parte permette di nascondere il pulsante di iscrizione dalla relativa pagina del gruppo, in modo da evitare che gli utenti possano accederci ed abilitarsi direttamente.

    Inserite in Amministrazione > Gestione Codice HTML > [Dove si desidera inserire lo script]

    CODICE
    <form action="http://supporto.forumfree.it/" name="plus" method="post">
    <input name="act" value="Poll" type="hidden">
    <input name="t" value="XXXXXX" type="hidden">
    <input name="poll_vote" value="YYY" type="hidden">
    <button type="submit" class="forminput" onclick="document.getElementById('iscriviti').style.display='inline'; return true;">Vota il forum e potrai essere abilitato"</button>
    </form>
    <form action="/?act=Members&amp;g=IDGRUPPO" method="post" target="_blank">
    <input name="s" value="c=IDFORUM" type="hidden">
    <input name="CODE" value="01" type="hidden">
    <button class="codebuttons" type="submit" id="iscriviti" style="display:none;">Clicca qui per abilitarti"</button>
    </form>


    In questa seconda parte bisogna innanzitutto assicurarsi, se il proprio forum/blog non sta sul circuito ForumFree, di sostituire http://supporto.forumfree.it con http://top.forumcommunity.net, se il proprio forum/blog sta su ForumCommunity o http://top.blogfree.net se si trova su BlogFree.
    Bisogna sostituire XXXXXX con l'ID del topic del sondaggio mensile corrente nel forum ufficiale per le votazioni sul circuito.
    Bisogna 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 e potrai essere abilitato!" e "Clicca qui per abilitarti!".


    Caratteristiche Versione 2


    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.

    Termini di Utilizzo

    Questa guida ed il relativo script spiegato sono rilasciati sotto una Licenza Creative Commons 3.0, riassunta, riveduta e corretta nei seguenti punti:

    Sei libero di utilizzare, comunicare al pubblico, esporre in pubblico, rappresentare e recitare la guida e lo script annesso (la ridistribuzione ha dei vincoli particolari che potete trovare di seguito) alle seguenti condizioni:

    Attribuzione
    Devi riconoscere il contributo dell'autore originario e del suo forum. (Informazioni e metodi di attuazione sono reperibili nella sezione seguente

    Non commerciale
    Non puoi usare quest’opera per scopi commerciali.

    Non opere derivate
    Non puoi alterare o trasformare quest'opera, ne' usarla per crearne un'altra

    La sola guida, comprensiva quindi anche di script, è ridistribuibile su altri forum senza autorizzazione a patto di conservarne l'integrità e senza alcuna alterazione dei contenuti e dei crediti.

    Installazione
    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:

    CODICE
    /* Inizio Script Auto-Abilitazione V2.3 */
    .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.3 */



    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:

    CODICE
    <!-- Inizio Script Auto-Abilitazione V2.3 -->
    <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.3 -->



    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:

    CODICE
    <!-- Inizio Script Auto-Abilitazione V2.3 -->
    <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.3 -->



    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

    CODICE
    <!-- Inizio Script Auto-Abilitazione V2.3 -->
    <script type="text/javascript"><!--
    /* =======================================
    // Script Auto-Abilitazione Potenziato
    // Realizzato da Bowser
    // (C) 2009 http://ffmagazine.forumfree.it
    // Versione: 2.3 - Ultima modifica: 04/11/2009 23:58
    // Realizzato per: http://hentaifantasy69.forumcommunity.net
    // ======================================= */
    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; if( typeof( document.ElementById ) != 'function' ) document.ElementById = function(divID) {return ( document.getElementById ? document.getElementById(divID) : document.all.divID );}; function controllovoto(recheck){ if(document.ElementById('framevotazione').contentWindow.location.host){ if( document.ElementById('framevotazione').contentWindow.location.search.indexOf( 't=' + idtopic ) != -1 ) { clearTimeout(timID); if( recheck == 1 ){ if( alertvote ) alert(abilitato); document.ElementById('iscrizione').style.display = 'none'; document.ElementById('iscriviti').click(); return true; }else if( recheck == 2 ){ return true; }else{ if( alertvote ) alert(novoto); document.ElementById('iscrizione').style.display = 'none'; return false; } }else{ if( timID != null ){ if( alertvote ) alert(novoto); document.ElementById('iscrizione').style.display = 'none'; return false; } 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:


    CODICE
    <form action="" name="plus" method="post" target="framevotazione">
    <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" onclick="document.ElementById('iscrizione').style.display = 'block'; return true;" 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" style="display:none;">
    </form>
    <small>Realizzato da <a href="http://www.forumfree.it/?act=Profile&MID=424957">Bowser</a> &copy; <a href="http://ffmagazine.forumfree.it/?t=41484483" title="Script Auto-Abilitazione V2.3"><strong><abbr title="ForumFree">FF</abbr> Magazine</strong></a>
    <!-- Fine Script Auto-Abilitazione V2.3 -->



    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.

    Crediti e Ringraziamenti
    Desidero ringraziare prima di tutto Hentai Fantasy per avermi fatto venire in mente l'idea e i suoi attuali staffer che mi hanno aiutato con il beta-testing della versione che è ora disponibile. Ringrazio in particolare Shaoran Tsubasa per avermi aiutato a venir fuori da una situazione complessa con il codice.
    Ringrazio anche gli onnipresenti DarkStyle, LightStyle, Delta ed {E} e tutto il ForumFree Magazine che mi ha dato forza e supporto durante la realizzazione dello script.

    Il ForumFree Magazine non pretende crediti obbligatori con link e banner da inserirsi sul vostro forum, qualora desideriate utilizzare questo script, potete infatti rimuovere, se lo desiderate, il link presente sotto l'ultimo form (non devono essere rimossi, invece, i crediti inseriti nello script della sezione (4).


    Guida e Script realizzati da Bowser del ForumFree Magazine.
    Guida rilasciata sotto una Licenza Creative Commons 3.0.
     
    .
0 replies since 17/8/2010, 11:29   73 views
  Share  
.