Jump to content

Messaggi iniziali differenziati


najaru

Recommended Posts

Inserendo il seguente codice nel global template, è possibile visualizzare un messaggio di avviso a tutti gli utenti, oppure ai visitatori, oppure a chi ha meno di un post

I div del codice vanno personalizzati con le classi volute

<if test="memberbox:|:$this->memberData['member_id']"><if test="memberbox:|:$this->memberData['posts'] < 1">	<div>		<div>			<!-- Messaggio per chi ha meno di un post -->			<h2>Grazie per esserti registrato, {$this->memberData['members_display_name']}</h2>			<p>Ora sei un nostro utente. Cosa fare? Puoi iniziare creare discussioni, magari presentandoti, rispondere a quelle esistenti, dare punti di reputazione agli utenti, usare le conversazioni privater, e altro altro ancora. Interagisci e rendi piacevole la tua permanenza! Questo messaggio scomparirà appena avrai inviato il tuo primo messaggio.</p>		</div>	</div><else />	<!-- <div>		<div>			<h2>Benvenuto, {$this->memberData['members_display_name']}</h2>			<p>Messaggio personalizzato per tutti gli utenti. Di default è disattivato. Rimuovere i codici di commento per attivarlo</p>		</div>	</div> --></if><else />	<div>		<div>			<h2>Benvenuto su {$this->settings['board_name']}</h2>			<p>Registrati per avere accesso a tutte le funzionalità. Solo registrandoti e connettendoti, potrai creare discussioni, rispondere a quelle esistenti, dare punti di reputazione agli utenti, usare le conversazioni privater, e altro altro ancora. In più è completamente gratuito, quindi cosa stai aspettando?</p>				</div></if>
  • Like 3
Link to post
Share on other sites
  • 2 years later...

scusami ancora e possibile aggiungere nel proprio profilo sotto al avatar immagine online o offline secondo se utente e connesso oppure no .

Link to post
Share on other sites
scusami ancora e possibile aggiungere nel proprio profilo sotto al avatar immagine online o offline secondo se utente e connesso oppure no .

puoi usare User Online Status in Topics 1.0.0 per farlo ... e se vuoi farlo tu manualmente

Oppure se vuoi un'ulteriore lista degli amici online

Rispondi alla discussione e cancello questi messaggi visto che siamo offtopic!

Link to post
Share on other sites
  • 2 weeks later...

Inserendo il seguente codice nel global template, è possibile visualizzare un messaggio di avviso a tutti gli utenti, oppure ai visitatori, oppure a chi ha meno di un post

Sai invece come disabilitare queste condizioni per un determinato forum/sezione? Grazie.

Edited by Caffpow
Link to post
Share on other sites
<if test="!in_array( $this->request['f'], array( 'xx', 'yy', 'zz' ) )">contenuto visibile in tutti i forum tranne che quelli con id xx o yy o zz</if>

oppure se vuoi la scelta di inserirci un messaggio di "errore"

<if test="!in_array( $this->request['f'], array( 'xx', 'yy', 'zz' ) )"> contenuto visibile in tutti i forum tranne che quelli con id xx o yy o zz<else /> messaggio visibile ai forum xx yy zz</if>
  • Like 1
Link to post
Share on other sites

ok, proverò. :D

 

Questa regola deve racchiudere tutte le altre?

 

Grazie :)

 

EDIT

OK funziona :)

Edited by Caffpow
  • Like 1
Link to post
Share on other sites

salve e grazie per la dritta ma non riesco ha capire cosa devo cercare qui manualmente

 

Wchodzimy do:Wygląd -> Style i szablony -> [Nasz Styl], następnie wybieramy bit post w Widok tematu, gdzie odnajdujemy kod:
Link to post
Share on other sites
<if test="!in_array( $this->request['f'], array( xx, yy, zz ) )"> contenuto visibile in tutti i forum tranne che quelli con id xx o yy o zz</if> 

Ho un problemino... se inserisco più id, per esempio : ( 10, 2, 7 )  la regola funziona solo con il primo forum e negli altri la regola non ha effetto.

Poi vorrei sapere, è possibile applicare la stessa eccezione non per un intera sezione ma per un unico topic?

 

grazie ;)

Edited by Caffpow
Link to post
Share on other sites
Umberto Castagna

dipende dove vuoi fare apparire il codice......

 

nella Home, ai membri appena iscritti con 0 messaggi attivi

Link to post
Share on other sites

e' steano che non funzioni, controlla bene la sintassi che sia corretta

 

La sintassi è sbagliata, si devono mettere degli apici per ogni id. :)

 

<if test="!in_array( $this->request['f'], array( 'xx', 'yy', 'zz' ) )"> contenuto visibile in tutti i forum tranne che quelli con id xx o yy o zz</if>

Così funziona. :)

Edited by Caffpow
  • Like 2
Link to post
Share on other sites
Umberto Castagna

ok... della serie "i problemi me li creo da solo".... teoricamente, sarebbe possibile inserire un'immagine al posto del testo??

Link to post
Share on other sites

ok... della serie "i problemi me li creo da solo".... teoricamente, sarebbe possibile inserire un'immagine al posto del testo??

puoi inserire tutto quello che vuoi. Basta che usi l'htmal, javascript, php. ;)

<img src='link immagine' alt='testo sostitutivo' title='titolo immagine' />
Edited by Caffpow
Link to post
Share on other sites
Umberto Castagna

puoi inserire tutto quello che vuoi. Basta che usi l'htmal, javascript, php. ;)

<img src='link immagine' alt='testo sostitutivo' title='titolo immagine' />

Grandioso....  ho creato direttamente un immagine con fondo chiaro in modo che il testo fosse piu visibile... grazie mille per l'aiuto

Link to post
Share on other sites
  • 4 months later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • BomAle
      By BomAle
      Ogni sviluppatore di Invision Power Board per sfruttare il sistema di aggiornamento interno della piattaforma deve realizzare uno script per permettere ai clienti di controllare nuove versioni del plugin.
       
      Per permettere allo sviluppatore ciò il team IPS ha predisposto, dalla 3.1.x, il metodo $_GET.
       
      Il codice
      /* PATH (IPS_ROOT_PATH, DOC_IPS_ROOT_PATH) */define('MY_IPB_LOCATION', '/home/****/public_html/forum/');require_once( MY_IPB_LOCATION . '/initdata.php' );require_once( MY_IPB_LOCATION . CP_DIRECTORY . '/sources/base/ipsRegistry.php' );$registry = ipsRegistry::instance();$registry->init();/******* INIZIO CLASSE *******//** * Class versionCheck for IPB Hooks & Apps * @version 1.0.0 * @author Amged Osman * @link http://amgedosman.com/ * @date 11:19 PM Friday, December 6, 2013 */ class versionCheck{ private $ipb30x = array ( '30001', '30003','30004', '30005', '30008', '30009', '30010', '30011', '30012'); private $ipb31x = array ( '31000','31003', '31004', '31005', '31006','31007'); private $ipb32x = array ( '32000', '32001', '32002', '32003', '32004', '32005', '32006', '32007'); private $ipb33x = array ( '33000','33007', '33009', '33010', '33012', '33013', '33014', '33015', '33016'); private $ipb34x = array ( '34000', '34005', '34007', '34008', '34009', '34010', '34011', '34012' ); public $TRUEorFALSE = array (true => 1, false => 0); public $theReturn = true; public $debug = 0; public $TRUEorFALSE_debug = array (true => 'Update Available', false => "You're up-to-date"); /** * @access public * autoRun for the class & switch */ public function autoRun(){ $this->boardVersion = isset($_GET['boardVersion']) ? $_GET['boardVersion'] : 00000; $this->version = isset($_GET['version']) ? $_GET['version'] : 00000; $this->fileId = isset($_GET['fileid']) ? $_GET['fileid'] : 000; switch ($this->fileId){ case '000': default: $this->showNone(); break; case '6766': $this->pmod_all(); break; } return $this->results; $this->_returnResults(); exit(); } /** * @access protected * later on this will return the public functions return to the index.php */ protected function _returnResults(){ return $this->results; } /** * @return (advanced) HTML & the update status * @access public */ public function showNone(){ $this->theReturn = false; $html = "No Id Passed"; $this->results = array ('html' => $html, 'return' => $this->theReturn ); } /** * @return (advanced) HTML & the update status * @access public */ public function pmod_all(){ $latestFileVersion = 20001; if (in_array($this->boardVersion , $this->ipb30x) ){ $latestFileVersion = 10000; } if (in_array($this->boardVersion , $this->ipb31x) ){ $latestFileVersion = 10000; } if ($latestFileVersion <= $this->version ){ $this->theReturn = false; } $html = $this->TRUEorFALSE[$this->theReturn]; if ($this->debug === 1){ $html = "Latest File: {$latestFileVersion}<br />Current Version: {$this->version}<br />{$this->TRUEorFALSE_debug[$this->theReturn]}"; } $this->results = array ('html' => $html, 'return' => $this->theReturn ); } }/******* FINE CLASSE *******/$versionCheckClass = new versionCheck();$versionCheckClass->debug = 0;$results = $versionCheckClass->autoRun();echo $results['html'];return $results['return']; Funzionamento
      La richiesta passa nello script chiamando la classe versionCheck e stampa a video 1 se c'è un aggiornamento e 0 se non presente.
       
      Configurazione
      Per inserire un nuovo elemento nel processo bisogna creare un "case" nella funzione autoRun esempio
      case '6766': $this->pmod_all(); break; quindi bisogna creare un metodo/funzione esempio
      public function pmod_all(){ $latestFileVersion = 20001; if (in_array($this->boardVersion , $this->ipb30x) ){ $latestFileVersion = 10000; } if (in_array($this->boardVersion , $this->ipb31x) ){ $latestFileVersion = 10000; } if ($latestFileVersion <= $this->version ){ $this->theReturn = false; } $html = $this->TRUEorFALSE[$this->theReturn]; if ($this->debug === 1){ $html = "Latest File: {$latestFileVersion}<br />Current Version: {$this->version}<br />{$this->TRUEorFALSE_debug[$this->theReturn]}"; } $this->results = array ('html' => $html, 'return' => $this->theReturn ); } È possibile effettuare un debug (controllo delle variabili passate dall'url) cambiando il valore a 1, abilitatelo per un analisi e reimpostate 0 quanto possibile...
      $versionCheckClass->debug = 1;  e ricordatevi di specificare i parametri di get boardVersion e version esempio
      http://vostrosito.it/check.php?&boardVersion=34000&version=20000&fileid=6766 Utilizzo
      Salvate il codice in una pagina di ip.content o creando un file nell'ftp, nel mio caso check.php, in una directory a piacere...
      Recatevi presso le impostazioni della hook creata e aggiungete in "Update URL" la pagina web esempio
      http://www.invisionita.it/bomale/hook/check.php?&fileid=6766 ricordandovi di specificare il "fileid" passato nello switch di autoRun()
      infine per controllare gli aggiornamenti delle hook seguite il link di seguito...
      http://vostrosito.it/admin/index.php?&app=core&module=applications&section=hooks&do=hooks_overview&checkUpdates=1 Ringrazio amgedosman per l'articolo originale in inglese, e per le istruzioni passo passo di Michael (2011)
    • BomAle
      By BomAle
      Alcuni sono sicuro troveranno utile questa guida, praticamente sfrutteremo le risorse di invisionpower per costruire la nostra "lista rapida" dei forum.
       
      Quindi il necessario è:
      <php>//se non funziona provate a sostituire "class_forums" con "getClass('class_forums')"$this->forum_lista = $this->registry->class_forums->forumsForumJump( 1, 0, 1, $current, true );</php>{$this->registry->output->getTemplate('global')->forum_jump($this->forum_lista)}forumsForumJump costituisce una funzione che andrà ad inserire in $this->forum_lista una stringa di voci che corrispondono ai forum presenti, escludendo in questo caso quelli di tipo "redirect".
       
      in seguito, all'interno del template, possiamo utilizzare la stringa per costruire il nostro menù rapido utilizzando il forum_jump presente nel gruppo globale.
       
      il risultato:
       
      ATTENZIONE: La classe richiesta "class_forums" deve essere inizializzata quindi se non funziona bisogna aggiungere un ulteriore passaggio in cima del codice < php >, ma come detto qui non occorre...
      if ( ! $this->registry->isClassLoaded('class_forums' ) ){ $classToLoad = IPSLib::loadLibrary( IPSLib::getAppDir( 'forums' ) . "/sources/classes/forums/class_forums.php", 'class_forums', 'forums' ); $this->registry->setClass( 'class_forums', new $classToLoad( $this->registry ) ); $this->registry->getClass('class_forums')->strip_invisible = 1; $this->registry->getClass('class_forums')->forumsInit();}
    • BomAle
      By BomAle
      Questo codice può essere usato per inserire delle bandiere affiancate ai nomi delle lingue disponibili nel footer.
       
      cerca nel globalTemplate
      {$lang['title']}aggiungi prima
      <if test="$lang['id'] == 1"><img alt="English" src="http://i48.tinypic.com/2822hcj.jpg"></if><if test="$lang['id'] == 23"><img alt="Italiano" src="http://i49.tinypic.com/rw0zyd.jpg"></if>sostituisci 23 con l'id della lingua a cui far corrispondere l'immagine.

       
      Per chi volesse riportare il codice in altre zone del template, quindi avere una barra con i pulsanti che permettono di cambiare la lingua in uso, allora prendete questo codice (header)
                                      <style type="text/css">                                /* ICONE LINGUA STILE */                                span.lingua.selezionato img{                                      opacity: 1 !important;                                    }                                span.lingua img{                                      opacity: 0.5 !important;                                    }                                </style>                                <foreach loop="$footer_items['lang_chooser']['options'] as $lang">                                    <span class='lingua<if test="$lang['selected']"> selezionato</if>'>                                        <a href="{$this->lang->changeLanguageUrl( $lang['id'] )}"><if test="$lang['id'] == 1"><img alt="English" title="English" src="http://i48.tinypic.com/2822hcj.jpg">  </if><if test="$lang['id'] == 23"><img alt="Italiano" title="Italiano" src="http://i49.tinypic.com/rw0zyd.jpg">  </if></a>                                    </span>                                </foreach>
       
      Se dovete usarlo in un template a parte attenzione al params="..." altrimenti appariranno degli errori nell'header!
      Ho preso l'idea da wininizio.it ... forse hanno usato un codice diverso ma mi sembra più efficace questo
    • najaru
      By najaru
      ecco un codice che si può utilizzare per visualizzare i topic senza risposte

      <br /><div class='general_box'> <h3><img src="http://www.yoursite.com/forums/public/style_images/greylust/comment_new.png" alt="" /> {$title}</h3> <ul class='hfeed'> <if test="is_array( $records ) && count( $records )"> {parse striping="feed_striping" classes="row1,row2 altrow"} <foreach loop="$records as $r"> <if test="$r['topic_posts'] == 0"> <li class='hentry {parse striping="feed_striping"}'><b><a href='{$r['url']}' rel='bookmark' title='{$r['title']}'>{$r['title']}</a></b>  Posted  <span><abbr class="published" title="{parse expression="date( 'c', $r['date'] )"}">{parse date="$r['date']" format="short"}</abbr></span> </li> </if> </foreach> </if> </ul></div>
    • BomAle
      By BomAle
      ESEMPIO: http://www.invisionita.it/forum/forum/71-guide-ipboard/
      Per poter inserire una tabella nella visualizzazione del forum potete utilizzare il seguente codice...
      <!-- ::: TABELLA TEMPLATE INIZIO ::: --> <div style="padding:7px 7px 7px;"class="ipsFilterbar maintitle">TITOLO TABELLA</div> <div class="ipsBox"><div class="ipsBox_container"><table class="ipb_table topic_list hover_rows"> <tbody> <tr class="header"> <th width="30%">titolo colonna 1</th> <th width="30%">titolo colonna 2</th> <th width="40%">titolo colonna 3</th> </tr> <tr> <td>contenuto colonna 1 </td> <td>contenuto colonna 2 </td> <td>contenuto colonna 3</td> </tr> </tbody></table></div></div><!-- ::: TABELLA TEMPLATE FINE ::: --> 
      Ora se volete aggiungerlo a un forum specifico vi consiglio di operare con le seguenti istruzioni
      1.      ACP >  Look & Feel  >   Manage Skin Sets & Templates  > SCEGLI il tema > Add New Bit
      Nel popup alla voce "Template Bit Name:" inserite "tabellaID" sostituite ID con l'id numerico del forum dove inserire il codice (in modo da diversificare le diverse tabelle per id)
      Add to Group: ---> skin_forum
      Add
      2. Inseriteci all'interno il codice della tabella in html (è possibile adoperare la logica dei template studiata dal team invisionpower)
      3. Per poter richiamare la tabella nel template inseritelo in questo modo nel file Forum View > forumIndexTemplate
      <if test="$forum_data['id'] == ID">{parse template="tabellaID" group="forum" params=""}</if>--------
      Le possibili posizioni nella pagina sono svariate però vi scrivo di seguito alcuni esempi...
      recatevi nel forum view > forumindextemplate e cercate
      <else /> {$forum_data['description']} </if>e aggiungete dopo
      <if test="$forum_data['id'] == ID">{parse template="tabellaID" group="forum" params=""}</if>
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. to insert a cookie message.