Pagina 1 di 1

Logout personalizzato in subsilver2

Inviato: 08/08/2011, 13:22
da Dylan-Dog
Salve a tutti, avrei bisogno di una consulenza da voi esperti per eseguire una modifica alla skin subsilver2. Tanto per cominciare spero di essere nella sezione giusta, se non lo è chiedo umilmente scusa :roll: dato che forse la mia richiesta potrebbe andare oltre le normali modifiche
alla skin. In pratica avrei bisogno di personalizzare il testo della funzione logout, per intenderci quello dello screen: Immagine La modifica che ho in mente consiste nel cambiare lo stile del nome utente racchiuso fra le due parentesi quadre, usando lo stesso del gruppo utente di appartenenza. Quindi per'esempio, dato che il gruppo amministratori ha lo stile viola, bold e italic, quando un'utente appartenente a questo gruppo farà il login, dando un'occhiata al comando di logout vedrà il proprio nickname dello stesso stile del gruppo di appartentenza, come il secondo screen:
Immagine Prima di aprire questa richiesta d'aiuto ho cercato di darmi da fare, ho raggiunto la parte di codice della skin da modificare, cioè il template overall_header:

Codice: Seleziona tutto

<!-- IF not S_IS_BOT --><a href="{U_LOGIN_LOGOUT}"><img src="{T_THEME_PATH}/images/icon_mini_login.gif" width="12" height="13" alt="*" /> {L_LOGIN_LOGOUT}</a>&nbsp;<!-- ENDIF -->
ho cercato nei file php del forum la funzione che poteva fare per me e pensavo di averla trovata, per cui ho modificato la skin in questo modo:

Codice: Seleziona tutto

<!-- IF not S_IS_BOT --><a href="{U_LOGIN_LOGOUT}"><img src="{T_THEME_PATH}/images/icon_mini_login.gif" width="12" height="13" alt="*" />Esci dal forum [ {S_USERNAME} ]</a>&nbsp;<!-- ENDIF -->
La funzione è giusta e il testo del logout adesso risulta: Esci dal forum [ Nome utente ] il problema è che il nome utente resta invariato, nel senso non prende lo stile del gruppo utente di appartenenza. Che posso fare? :cry: In'attesa di risposta vi ringrazio anticipatamente, sperando che la mia richiesta non sia troppo fastidiosa. :oops:

Re: Logout personalizzato in subsilver2

Inviato: 08/08/2011, 15:29
da Micogian
Il valore {L_LOGIN_LOGOUT} è ricavato dal fie includes/functions.php ed è qui che dovresti intervenire.

La riga interessata è la seguente;

Codice: Seleziona tutto

$l_login_logout = sprintf($user->lang['LOGOUT_USER'], $user->data['username']);
Come si può notare è composta da un valore 'LOGOUT_USER' che trovi nel file language e che puoi cambiare senza bisogno di inserire la stringa "esci dal Forum".

Per quanto riguarda il colore dell'user questo viene ricavato dalla function get_username_string()
Ne consegue che popo aver sostituito la stringa della lingua devi sostituire $user->data['username']
con la function che ti restituisce l'user colorato, in pratica:

Codice: Seleziona tutto

get_username_string('username', $user->data['user_id'], $user->data['username'], $user->data['user_colour'])
In definitiva la stringa iniziale diventa:

Codice: Seleziona tutto

$l_login_logout = sprintf($user->lang['LOGOUT_USER'], get_username_string('username', $user->data['user_id'], $user->data['username'], $user->data['user_colour']));
Questo per quanto riguarda il codice, per l'opportunità di una simile modifica ho molte riserve.

Re: Logout personalizzato in subsilver2

Inviato: 08/08/2011, 17:22
da Dylan-Dog
Ti ringrazio tanto bingo per la celerità della risposta :-) volevo dirti se con
Questo per quanto riguarda il codice, per l'opportunità di una simile modifica ho molte riserve.
intendi che ci sia la possibilità che non funzioni questa modifica? Perchè purtroppo l'ho applicata ma il nome utente resta invariato... :shock: se non si può fare è un vero peccato. :cry:

Re: Logout personalizzato in subsilver2

Inviato: 08/08/2011, 17:38
da Micogian
Le mie riserve sono esclusivamente per la utilità di questa modifica: il fatto che il singolo utente veda il suo nome colorato non mi dice un bel niente. Opinioni, ovviamente.

La function è quella, i dati (user_id, username e user-colour) sono disponibili nell'indice.
Il fatto che non funzioni, salvo eventuali errori nel codice, potrebbe dipendere dal fatto che login-logout è un link e come tale viene trattato dai relativi CSS.

Re: Logout personalizzato in subsilver2

Inviato: 08/08/2011, 18:43
da Dylan-Dog
Capisco, quindi la causa è perchè è un link, nel foglio di stile che tipo di modifica dovrei apportare ai link? Oppure non so, hai idea se c'è qualche MOD che possa fare per me? :roll:

Ps. Ma il nome utente che appare nel last post di forumlist_body.html non'è anche un link? Eppure li il nome utente è colorato come il gruppo di appartenenza, comunque non voglio insistere dato che non sono così preparato.

Re: Logout personalizzato in subsilver2

Inviato: 08/08/2011, 19:05
da Micogian
Ma il nome dell'utente in forumlist non è USERNAME, è LAST_POSTER_FULL che viene ricavato con la function get_username_string() ma i css sono diversi.
Considera inoltre che quello che tu vuoi modificare è un link composto da una stringa e dal nome utente mentre nel nome utente del forumlist c'è un unico link.
Sta li il problema.
Diverso sarebbe se inserissi una riga del tipo "Benvenuto Nickname, ...." , in questo caso potresti sostyiruire Nickname con il nome colorato. Mi sembra ci sia la Mod "Welcome" che fa una cosa del genere ma sono cose che non mi interessano e quindi non conosco.

Re: Logout personalizzato in subsilver2

Inviato: 09/08/2011, 17:55
da Dylan-Dog
Ho capito, allora potrei usare come link la funzione già presente nel template overall_header.html

Codice: Seleziona tutto

<a href="{U_LOGIN_LOGOUT}">
mentre come visualizzazione di questo link potrei usare ciò che mi hai proposto,
una riga tipo Esci [ nickname ] con nickname che verrà sostituito dal nome utente colorato,
questo al posto di

Codice: Seleziona tutto

{L_LOGIN_LOGOUT}
solo che per fare questo avrei bisongo del tuo aiuto, ti andrebbe di perdere un pò di tempo... :D
Ps. Hai ragione come funzione il nome utente colorato serve a poco, più che altro è per un fatto estetico.

Re: Logout personalizzato in subsilver2

Inviato: 09/08/2011, 18:52
da Micogian
Dylan-Dog ha scritto:Ps. Hai ragione come funzione il nome utente colorato serve a poco, più che altro è per un fatto estetico.
"discutibile" secondo me, pulizia e semplicità sono regole fondamentali.
Sono ben altro le modifiche "utili". Che senso ha ll fatto che un utente veda il proprio nickname colorato ?