Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Nascondere testo finché non si risponde in un forum

    Posto qui visto che di solito è in JavaScript che trovo dei codici per personalizzare le funzioni di un forum...

    In sostanza sto cercando un codice che, inserito nell'opportuno campo dell'area amministrativa di un forum, possa inserire del testo nascosto che appare solo agli utenti che lasciano un messaggio nel topic.

    Ci sarebbe già questo:
    codice:
    <script type='text/javascript'> //Hidden Content Script By Beta var _msg = " [You Should Reply To View the Content] "; if(location.href.match(/showtopic=(\d+)($|#|&)/i)){ var _loc = RegExp.$1; _div = document.getElementsByTagName('DIV'); for(e=0;e<_div.length;e++){ if(_div[e].className == 'postcolor' && _div[e].innerHTML.match(/\[hide\](.*?)\[\/hide\]/gim)){ _div[e].innerHTML = _div[e].innerHTML.replace(/\[hide\](.*?)\[\/hide\]/gim,"<span class='message'>" + _msg + "</span><span class='hidden' style='display:none'>$1</span>"); document.write("<iframe src='" + location.href.split('index.php')[0] + "index.php?s=&act=Stats&CODE=who&t=" + _loc + "' width='0px' height='0px' id='dataCheck' onload='javascript:checkData();' name='dataCheck'></iframe>"); } } } if(location.href.match(/Post&CODE=02&f=\d+&t=(\d+)($|#|&)/i)){ var _loc = RegExp.$1; _spn = document.getElementsByTagName('SPAN'); for(e=0;e<_spn.length;e++){ if(_spn[e].className == 'postcolor' && _spn[e].innerHTML.match(/\[hide\](.*?)\[\/hide\]/gim)){ _spn[e].innerHTML = _spn[e].innerHTML.replace(/\[hide\](.*?)\[\/hide\]/gim,"<span class='message'>" + _msg + "</span><span class='hidden' style='display:none'>$1</span>"); document.write("<iframe src='" + location.href.split('index.php')[0] + "index.php?s=&act=Stats&CODE=who&t=" + _loc + "' width='0px' height='0px' id='dataCheck' onload='javascript:checkData();' name='dataCheck'></iframe>"); }}} function checkData(){ if(window.frames['dataCheck']){ checkAll = window.frames['dataCheck']; var _lks = checkAll.document.getElementsByTagName('A'); var _usr = document.getElementById('userlinks').rows[0].cells[0].getElementsByTagName('A')[0]; for(i=0;i<_lks.length;i++){ if(_lks[i].href.match(/showuser=\d+$/i) && _lks[i].href == _usr.href){ _spn = document.getElementsByTagName('SPAN'); for(a=0;a<_spn.length;a++){ if(_spn[a].className == 'hidden'){ _spn[a].style.display = 'block'; _spn[a-1].style.display = 'none'; } } } } } }  </script>
    che però falla terribilmente aprendo il sorgente della pagina, oltre al fatto che se si blocca il caricamento della pagina, il testo nascosto appare poiché l'applet non è ancora stato caricato. :master:

    Il codice dovrebbe funzionare su piattaforma Invisionfree.

  2. #2
    Ciao, scusa, ma non capisco di cosa hai bisogno.

    Ho bisogno di qualche detaglio prima:
    1- Puoi modificare il codice del Forum?
    2- Se si, non è più comodo modificare le pagine del forum che inserirci uno Script JS?
    3- Se non puoi modificarlo, allora non ho capito dove inserisci il codice, e dove viene visualizzato dagli utenti?

    Un altra cosa: quando posto del codice, puoi evitare di mandarlo tutto sulla stessa riga? Metti gli a capo, con degli spazi prima del codice per renderlo più leggibile.

  3. #3
    1- Puoi modificare il codice del Forum?
    Nel pannello amministrativo ci sono alcune textarea dov'è possibile inserire dei codici (essenzialmente JavaScript, ma anche codice html per realizzare ad es. una tabella per bacheca annunci) per aggiungere funzioni a quelle offerte dalla piattaforma. Tali codici inseriti nelle textarea, finiscono poi nel <body> delle singole pagine del forum.
    2- Se si, non è più comodo modificare le pagine del forum che inserirci uno Script JS?
    No, è solo possibile inserire codici importati, non modificare nè rimuovere quelli esistenti. Al massimo si può disabilitare qualche funzione, tipo il box di risposta sotto al topic, o impedire i messaggi privati, ecc...
    3- Se non puoi modificarlo, allora non ho capito dove inserisci il codice, e dove viene visualizzato dagli utenti?
    Il codice non dev'essere visualizzato dagli utenti, l'utente deve avere, in sostanza, un bottone in più nella toolbar di risposta, tipo il comando Quote che c'è qui, solo che invece di quotare un testo, deve nasconderlo come già fa lo JavaScript postato, che però è imperfetto.
    Un altra cosa: quando posto del codice, puoi evitare di mandarlo tutto sulla stessa riga? Metti gli a capo, con degli spazi prima del codice per renderlo più leggibile.
    Il codice l'ho incollato com'era, cioè che andava a capo come ogni codice ben scritto... L'invio me l'ha messo tutto su una riga.
    Provo a correggere...

    Non me lo fa modificare essendo trascorsi oltre 60 minuti. :master:
    Cmq eccolo qua:
    codice:
    <script type='text/javascript'>
    //Hidden Content Script By Beta
    var _msg = " [You Should Reply To View the Content] ";
    if(location.href.match(/showtopic=(\d+)($|#|&)/i)){
    var _loc = RegExp.$1;
    _div = document.getElementsByTagName('DIV');
    for(e=0;e<_div.length;e++){
    if(_div[e].className == 'postcolor' && _div[e].innerHTML.match(/\[hide\](.*?)\[\/hide\]/gim)){
    _div[e].innerHTML = _div[e].innerHTML.replace(/\[hide\](.*?)\[\/hide\]/gim,"<span class='message'>" + _msg + "</span><span class='hidden' style='display:none'>$1</span>");
    document.write("<iframe src='" + location.href.split('index.php')[0] + "index.php?s=&act=Stats&CODE=who&t=" + _loc + "' width='0px' height='0px' id='dataCheck' onload='javascript:checkData();' name='dataCheck'></iframe>");
    }
    }
    }
    if(location.href.match(/Post&CODE=02&f=\d+&t=(\d+)($|#|&)/i)){
    var _loc = RegExp.$1;
    _spn = document.getElementsByTagName('SPAN');
    for(e=0;e<_spn.length;e++){
    if(_spn[e].className == 'postcolor' && _spn[e].innerHTML.match(/\[hide\](.*?)\[\/hide\]/gim)){
    _spn[e].innerHTML = _spn[e].innerHTML.replace(/\[hide\](.*?)\[\/hide\]/gim,"<span class='message'>" + _msg + "</span><span class='hidden' style='display:none'>$1</span>");
    document.write("<iframe src='" + location.href.split('index.php')[0] + "index.php?s=&act=Stats&CODE=who&t=" + _loc + "' width='0px' height='0px' id='dataCheck' onload='javascript:checkData();' name='dataCheck'></iframe>");
    }}}
    function checkData(){
    if(window.frames['dataCheck']){
    checkAll = window.frames['dataCheck'];
    var _lks = checkAll.document.getElementsByTagName('A');
    var _usr = document.getElementById('userlinks').rows[0].cells[0].getElementsByTagName('A')[0];
    for(i=0;i<_lks.length;i++){
    if(_lks[i].href.match(/showuser=\d+$/i) && _lks[i].href == _usr.href){
    _spn = document.getElementsByTagName('SPAN');
    for(a=0;a<_spn.length;a++){
    if(_spn[a].className == 'hidden'){
    _spn[a].style.display = 'block';
    _spn[a-1].style.display = 'none';
    }
    }
    }
    }
    }
    }
    
    </script>

  4. #4
    Ma che errore ti da esattamente?
    Comunque, non ho ancora capito cosa dovrebbe fare, una specie di pulsante che nasconda i post dei topic?

  5. #5
    L'errore è che il testo nascosto con quel codice è visibile aprendo il sorgente della pagina web che lo contiene, mentre ci dovrebbe essere una sorta di criptaggio del testo, che diventa leggibile solo per gli utenti che rispondono.

    Faccio un esempio.
    Voglio condividere un file gratuitamente, ma voglio almeno sapere chi lo scarica, quindi con questo script dovrei almeno avere il numero delle persone che scaricano, in base alle risposte ricevute nel topic.

    Il testo nascosto dovrebbe essere il link al file da scaricare.

  6. #6

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.