phpBB Italia chiude!
phpBB Italia ringrazia tutti gli utenti che hanno dato fiducia al nostro progetto per ben 9 anni, e che, grazie al grande lavoro fatto da tutto lo Staff (rigorosamente a titolo gratuito), hanno portato il portale a diventare il principale punto di riferimento italiano alla piattaforma phpBB.

Purtroppo, causa motivi personali, non ho più modo di gestirlo e portarlo avanti. Il forum viene ora posto in uno stato di sola lettura, nonché un archivio storico per permettere a chiunque di fruire di tutte le discussioni trattate.

Il nuovo portale di assistenza per l'Italia di phpBB diventa phpBB-Store.it, cui ringrazio per aver deciso di portare avanti questo grande progetto.

Grazie ancora,
Carlo - Amministratore di phpBB Italia

Welcome MOD

Supporto MODs generale.
Avatar utente
Haku
Utente
Utente
Messaggi: 2529
Iscritto il: 22/09/2009, 22:36
Sesso: Maschio
Versione: 3.0.9
Server: UNIX/Linux
Contatta:

Re: Welcome MOD

Messaggio da Haku » 20/08/2010, 15:59

Nulla...mi sa che devo lasciar perdere =)

Io agisco sul forum_display comunque...

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: Welcome MOD

Messaggio da Micogian » 20/08/2010, 17:05

Haku ha scritto:Nulla...mi sa che devo lasciar perdere =)

Io agisco sul forum_display comunque...
forum_display ?
volevi dire functions_display ?
La funzione completa è questa:

Codice: Seleziona tutto

function get_user_avatar($avatar, $avatar_type, $avatar_width, $avatar_height, $alt = 'USER_AVATAR', $ignore_config = false)
{
	global $user, $config, $phpbb_root_path, $phpEx;

	if (empty($avatar) || !$avatar_type || (!$config['allow_avatar'] && !$ignore_config))
	{
		return '';
	}

	$avatar_img = '';

	switch ($avatar_type)
	{
		case AVATAR_UPLOAD:
			if (!$config['allow_avatar_upload'] && !$ignore_config)
			{
				return '';
			}
			$avatar_img = $phpbb_root_path . "download/file.$phpEx?avatar=";
		break;

		case AVATAR_GALLERY:
			if (!$config['allow_avatar_local'] && !$ignore_config)
			{
				return '';
			}
			$avatar_img = $phpbb_root_path . $config['avatar_gallery_path'] . '/';
		break;

		case AVATAR_REMOTE:
			if (!$config['allow_avatar_remote'] && !$ignore_config)
			{
				return '';
			}
		break;
	}

	$avatar_img .= $avatar;
	return '<img src="' . (str_replace(' ', '%20', $avatar_img)) . '" width="' . $avatar_width . '" height="' . $avatar_height . '" alt="' . ((!empty($user->lang[$alt])) ? $user->lang[$alt] : $alt) . '" />';
}
Sta tutto qui, la modifica prevista dalla Mod no_avatar agisce così:

Codice: Seleziona tutto

   if (empty($avatar) || !$avatar_type || (!$config['allow_avatar'] && !$ignore_config))
   {
       return '<img src="images/avatars/no_avatar.gif" alt="' . ((!empty($user->lang[$alt])) ? $user->lang[$alt] : $alt) . '" />';
   }
Bisogna vedere se la Mod prevede qualche altra modifica, dando per scontato che il nome dell'avatar è "images/avatars/no_avatar.gif" la creazione della variabile la metto dopo la riga

Codice: Seleziona tutto

$avatar_img .= $avatar;
in questo modo:

Codice: Seleziona tutto

$template->assign_block_vars(array(
   'AVATAR_COR'  => $avatar
   ));
Il risultato di AVATAR_COR dovrebbe essere il nome del file avatar e quindi il template diventa:

Codice: Seleziona tutto

<!-- IF AVATAR_COR == "images/avatars/no_avatar.gif" --><img src="{T_THEME_PATH}/images/Guest.gif" alt="" /><!-- ELSE -->{USER_AVATAR}<!-- ENDIF -->

Avatar utente
Haku
Utente
Utente
Messaggi: 2529
Iscritto il: 22/09/2009, 22:36
Sesso: Maschio
Versione: 3.0.9
Server: UNIX/Linux
Contatta:

Re: Welcome MOD

Messaggio da Haku » 20/08/2010, 17:59

Se la metto dopo la riga

Codice: Seleziona tutto

$avatar_img .= $avatar;
mi da questo errore sul forum

Codice: Seleziona tutto

Fatal error: Call to a member function assign_block_vars() on a non-object in /home/rpgmkrne/public_html/forum/includes/functions_display.php on line 1356

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: Welcome MOD

Messaggio da Micogian » 20/08/2010, 18:12

si, scusa

Codice: Seleziona tutto

$template->assign_vars(array(
   'AVATAR_COR'  => $avatar
   ));

Avatar utente
Haku
Utente
Utente
Messaggi: 2529
Iscritto il: 22/09/2009, 22:36
Sesso: Maschio
Versione: 3.0.9
Server: UNIX/Linux
Contatta:

Re: Welcome MOD

Messaggio da Haku » 20/08/2010, 18:58

Stesso errore =)

Avatar utente
Astro86
phpBB Expert
phpBB Expert
Messaggi: 924
Iscritto il: 12/08/2009, 14:36
Sesso: Maschio
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.6
Database: MYSQL
Località: PC. Via localhost N° 82.51.149.40
Contatta:

Re: Welcome MOD

Messaggio da Astro86 » 21/08/2010, 13:32

allora basta editare quell'immagine (no_avatar) con un qualsiasi programma grafico facendogli una tua grafica personale e salvandolo lasciando invariato il suo nome e la sua estenzione. ed è fatta....

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: Welcome MOD

Messaggio da Micogian » 21/08/2010, 13:50

Astro86 ha scritto:allora basta editare quell'immagine (no_avatar) con un qualsiasi programma grafico facendogli una tua grafica personale e salvandolo lasciando invariato il suo nome e la sua estenzione. ed è fatta....
Questo lo avevo detto anch'io, ma Haku vuole visualizzare l'Avatar "no_avatar" nel Forum e un diverso Avatar nella Mod Welcome.
Sono convinto che il mio sistema debba funzionare, probabilmente c'è la variabile che si crea in functions_display non è quella che poi usiamo nell condizione IF, pertanto non funziona.
Si tratta di vedere cosa corrisponde alla variabile AVATAR_COR, il nocciolo del problema sta tutto lì, oppure nel file functiones_display la funzione $template non è corretta o non viene attivata.

Avatar utente
Haku
Utente
Utente
Messaggi: 2529
Iscritto il: 22/09/2009, 22:36
Sesso: Maschio
Versione: 3.0.9
Server: UNIX/Linux
Contatta:

Re: Welcome MOD

Messaggio da Haku » 21/08/2010, 15:51

Non saprei che dire :S
Gli esperti qui siete voi,ma penso la stessa cosa...altri modi non credo ce ne siano.

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: Welcome MOD

Messaggio da Micogian » 21/08/2010, 16:51

Io torno alla mia idea originale ma con qualche variazione:

1) nel file functions_display.php, nella parte modificata dalla Mod no_avatar inserire la variabile AVATAR_COR = true

Codice: Seleziona tutto

   if (empty($avatar) || !$avatar_type || (!$config['allow_avatar'] && !$ignore_config))
   {
$template->assign_vars(array(
   'AVATAR_COR'  => true,
   ));
       return '<img src="images/avatars/no_avatar.gif" alt="' . ((!empty($user->lang[$alt])) ? $user->lang[$alt] : $alt) . '" />';
   }
Nel template, nella condizione IF prevista dalla Mod Welcome aggiungere il controllo sull'esistenza della variabile AVATAR_COR

Codice: Seleziona tutto

<!-- IF AVATAR_COR --><img src="{T_THEME_PATH}/images/Guest.gif" alt="" /><!-- ELSE -->{USER_AVATAR}<!-- ENDIF -->
Se AVATAR_COR è true dovrebbe visualizzare Guest.gif.
L'unico dubbio è se {T_THEME_PATH} contenga già la barra "/" e si debba inserire

Codice: Seleziona tutto

<img src="{T_THEME_PATH}images/Guest.gif" alt="" />
fermo restando che il file Guest.gif "deve" avere la G maiuscola e la variabile T_THEME_PATH sia corretta

Teoricamente è tutto a posto, non vedo perchè non debba funzionare.

Avatar utente
Micogian
Leader Programmatori
Leader Programmatori
Messaggi: 3704
Iscritto il: 07/01/2010, 8:51
Versione: 3.2.0
Server: UNIX/Linux
PHP: 5.4.36
Database: MySQL 5.1.70-log
Località: Udine
Contatta:

Re: Welcome MOD

Messaggio da Micogian » 21/08/2010, 20:48

Ho capito dove sta l'errore: non si può creare la variabile AVATAR_COR all'interno di una funzione, andrebbe inserita dove viene usata la funzione stessa, "get_user_avatar".
Adesso so dove devo lavorare.

Rispondi

Torna a “Supporto MODs”

Chi c’è in linea

Visitano il forum: Nessuno e 123 ospiti