Vai al contenuto
alcina

login in un solo clic!

Recommended Posts

alcina

buongiorno! sun_smiley.gif

vorrei sapere se è possibile avere un form per il login direttamente nella homepepage del forum senza essere costretti a sorbirsi la pagina del login...

immediato senza il redirect insomma.

Una volta era così anche in IPB, ma adesso nei forum con IPB aggiornati vedo sempre solo il link del login non più la maschera "username" e "password" col bottone accanto, per intenderci... come era una volta...

come mai?

questo tipo di form è diventato incompatibile ed è dunque inutile che io mi metta a cercare, o basterebbe al contrario implementare un piccolo javascript, o addirittura solo il codice che c'è nella pagina login direttamente in home...?

caro najaru, se puoi per favore chiarirmi le idee in merito... :)

grazie mille!

alcina

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
najaru

Penso che siano variabili che non vengono passati direttamente al global template.

Infatti nessuna skin ha quei campi, che anche io trovo molto comodi come te).

Però nella IPB 3.2.0 integreranno il login a popup, come succede già ora in molte delle skin di skinbox

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
alcina

Penso che siano variabili che non vengono passati direttamente al global template.

Infatti nessuna skin ha quei campi, che anche io trovo molto comodi come te).

variabili che non vengono passate direttamente al globalTemplate... mumble mumble...

vorrei comunque cercare di fare una prova... copiando il form della pagina connessione dentro a un div nella homepage!

che ne dici?

ah già ma devo prima trovare, tra i template, la pagina di connessione!!!! dove caspiterina sarà? :rolleyes:

comunque cerrrto che sarebbe più comodo, acciderbolina, val la pena di fare un tentativo...

ciao najaru!0004044.gif

alcina

P.S.

Però nella IPB 3.2.0 integreranno il login a popup, come succede già ora in molte delle skin di skinbox

il popup è già meglio ma è comunque sempre un clic di troppo...<_<

Modificato da alcina

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
najaru

in pratica tra tutte le variabili che trovi nei template, non tutte vengono passate a tutti i template.

ad esempio, l'avatar utente viene passato solo al template del topic, e non agli altri.

Questo che venga fatto per risparmiare le risorse.

se vuoi provare il template del login è questo:

{parse js_module="signin"}
<div id='login_form' class='clear'>

<div id='member_login' class='left'>
<h2 class='maintitle'>{$this->lang->words['log_in']}</h2>
<div class='generic_bar'></div>
<form action="{parse url="app=core&module=global&section=login&do=process" base="public"}" method="post" id='login'>
<input type='hidden' name='auth_key' value='{$this->member->form_hash}' />
<if test="referer:|:$referer">
<input type="hidden" name="referer" value="{$referer}" />
</if>
<div id='regular_signin'>
<a id='_regularsignin'></a>
<h3 class='bar'>{$this->lang->words['enter_name_and_pass']}</h3>
<ul>
<li class='field'>
<label for='username'>{$this->lang->words['enter_name']}</label>
<input id='username' type='text' class='input_text' name='username' size='25' />
</li>
<li class='field'>
<label for='password'>{$this->lang->words['enter_pass']}</label>
<input id='password' type='password' class='input_text' name='password' size='25' /><br />
<a href='{parse url="app=core&module=global&section=lostpass" base="public"}' class='desc' title='{$this->lang->words['retrieve_pw']}'>{$this->lang->words['login_forgotten_pass']}</a>
</li>
</ul>
<if test="hasopenid:|:in_array( 'openid', $login_methods )">
<p class='extra'>{parse replacement="openid_small"} {$this->lang->words['have_openid']} <a href='#_openid' title='{$this->lang->words['use_openid']}' id='openid_open'>{$this->lang->words['sign_in_here']}</a></p>
</if>
<if test="haswindowslive:|:in_array( 'live', $login_methods )">
<p class='extra'>{parse replacement="live_small"} {$this->lang->words['have_msnlive']} <a href='#_live' title='{$this->lang->words['use_live']}' id='live_open'>{$this->lang->words['sign_in_here']}</a></p>
</if>
<if test="extraform:|:is_array($extra_form) AND count($extra_form)">
<foreach loop="extrafields:$extra_form as $form_fields">
{$form_fields}
</foreach>
</if>
</div>
<if test="openidform:|:in_array( 'openid', $login_methods )">
<div id='openid_signin'>
<a id='_openid'></a>
<h3 class='bar'>{$this->lang->words['sign_in_openid']}</h3>
{parse replacement="openid_large"}
<ul>
<li class='field'>
<label for='openid'>{$this->lang->words['openid']}</label>
<input id='openid' type='text' class='input_text' name='openid_url' value='http://' size='30' /><br />
<span class='desc'>{$this->lang->words['openid_example']}</span>
</li>
</ul>
<p class='extra'>{parse replacement="signin_icon"} <a href='#_regularsignin' title='{$this->lang->words['regular_signin']}' id='openid_close'>{$this->lang->words['use_regular']}</a></p>
</div>
</if>
<if test="liveform:|:in_array( 'live', $login_methods )">
<div id='live_signin'>
<a id='_live'></a>
<h3 class='bar'>{$this->lang->words['sign_in_winlive']}</h3>
<ul>
<li class='field'>
<a href='{parse url="app=core&module=global&section=login&do=process&use_live=1&auth_key={$this->member->form_hash}" base="public"}'>{parse replacement="live_large"}</a> <a href='{parse url="app=core&module=global&section=login&do=process&use_live=1&auth_key={$this->member->form_hash}" base="public"}'>{$this->lang->words['signin_with_live']}</a>
</li>
</ul>
<p class='extra'>{parse replacement="signin_icon"} <a href='#_regularsignin' title='{$this->lang->words['regular_signin']}' id='live_close'>{$this->lang->words['use_regular']}</a></p>
</div>
</if>
<hr />
<fieldset id='signin_options'>
<legend>{$this->lang->words['sign_in_options']}</legend>
<ul>
<li class='field checkbox'>
<input type='checkbox' id='remember' checked='checked' name='rememberMe' value='1' class='input_check' />
<label for='remember'>
{$this->lang->words['rememberme']}<br />
<span class='desc'>{$this->lang->words['notrecommended']}</span>
</label>
</li>
<if test="anonymous:|:!$this->settings['disable_anonymous']">
<li class='field checkbox'>
<input type='checkbox' id='invisible' name='anonymous' value='1' class='input_check' />
<label for='invisible'>
{$this->lang->words['form_invisible']}<br />
<span class='desc'>{$this->lang->words['anon_name']}</span>
</label>
</li>
</if>
</ul>
</fieldset>
<fieldset class='submit'>
<input type='submit' class='input_submit' value='{$this->lang->words['sign_in_button']}' /> {$this->lang->words['or']} <a href='{$this->settings['board_url']}' title='{$this->lang->words['cancel']}' class='cancel'>{$this->lang->words['cancel']}</a>
</fieldset>
</form>
</div>
<div id='guest_register' class='right general_box'>
<if test="facebook:|:$this->settings['fbc_enable'] AND $this->settings['fbc_api_id']">
<h3 class='bar'>{$this->lang->words['fb_login_title']}</h3>
<p>
<div id='fbUserBox'>
{$this->lang->words['login_w_facebook']}
<br />
<br />
<a href="{$this->settings['_original_base_url']}/interface/facebook/index.php?_reg=1"><img src="{$this->settings['img_url']}/facebook_login.png" alt="" /></a>
</div>
<br clear='both' />
</p>
<br />
</if>
<!-- TWITTER LOG IN -->
<if test="twitterBox:|:IPSLib::twitter_enabled() === true">
<h3 class='bar'>{$this->lang->words['twitter_login_title']}</h3>
<p>
{$this->lang->words['login_w_twitter']}
<br />
<br />
<a href="{$this->settings['_original_base_url']}/interface/twitter/index.php?_reg=1"><img src="{$this->settings['img_url']}/twitter_login.png" alt="" /></a>
</p>
<br />
</if>
<h3 class='bar'>{$this->lang->words['not_a_member']}</h3>
<p>
{$this->settings['login_page_info']}
</p>
<br />
<p style='text-align: center'>
<a href='{parse url="app=core&module=global&section=register" template="section=register" base="public"}'>{$this->lang->words['register_now']}</a>
</p>
</div>
</div>
</if>
<if test="toggleOpenId:|:$this->request['serviceClick'] == 'openid'">
<script type='text/javascript'>
document.observe("dom:loaded", function(e){ ipb.signin.toggleOpenID(e); });
</script>
</if>
<if test="toggleLive:|:$this->request['serviceClick'] == 'live'">
<script type='text/javascript'>
document.observe("dom:loaded", function(e){ ipb.signin.toggleLive(e); });
</script>
</if>

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
alcina

grazie najaru m'hai evitato di cercarlo!

sì ci provo, stasera forse non faccio in tempo ma ti tengo informato...

se i dati passassero si potrebbe pensare di mettere il login nella home...

vedremo! B)

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
alcina

è durissima...

ho fatto alcune prove ma senza successo, ahimé!

la cosa migliore che m'è riuscita è stata riuscire a loggarmi ma... il div del login (quello della pagina di login insomma) mi restava poi sempre presente anche da loggata...

questo implementando solo il form ma senza il php....

Perché con il php ho tirato fuori solo atroci errori di php, cercando inutilmente di fargli digerire il modulo login nel globalTemplate :(

il minimo è stato:

Fatal error: Call to a member function showLogInForm() on a non-object in /home/eresseai/public_html/ipb/cache/skin_cache/cacheid_14/skin_global.php on line 167

mi sono letta tutto quel che ho trovato da loro su "parse tag"... per ora però è nebbia fitta.

Najaru, forse tu puoi dirmi di più su:

{parse js_module="signin"}

prima di tutto, perché "module" e non file?

in ogni modo aggiungendolo così non va...

allora credevo di poterlo aggiungere con addtohead

il loro esempio è:

[/size]{parse addtohead="file.js" type="javascript"}[size="2"]

e dunque io ho scritto:

{parse addtohead="ips.signin.js" type="javascript"}

risultato:

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /home/eresseai/public_html/ipb/cache/skin_cache/cacheid_14/skin_global.php on line 195

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /home/eresseai/public_html/ipb/cache/skin_cache/cacheid_14/skin_global.php on line 198

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /home/eresseai/public_html/ipb/cache/skin_cache/cacheid_14/skin_global.php on line 204

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /home/eresseai/public_html/ipb/cache/skin_cache/cacheid_14/skin_global.php on line 219

Warning: Cannot modify header information - headers already sent

by (output started at

/home/eresseai/public_html/ipb/cache/skin_cache/cacheid_14/skin_global.php:195)

in /home/eresseai/public_html/ipb/admin/sources/classes/output/formats/html/htmlOutput.php on line 109

Warning: Cannot modify header information - headers already sent

by (output started at

/home/eresseai/public_html/ipb/cache/skin_cache/cacheid_14/skin_global.php:195)

in /home/eresseai/public_html/ipb/admin/sources/classes/output/formats/html/htmlOutput.php on line 120

Warning: Cannot modify header information - headers already sent

by (output started at

/home/eresseai/public_html/ipb/cache/skin_cache/cacheid_14/skin_global.php:195)

in /home/eresseai/public_html/ipb/admin/sources/classes/output/formats/html/htmlOutput.php on line 129

Warning: Cannot modify header information - headers already sent

by (output started at

/home/eresseai/public_html/ipb/cache/skin_cache/cacheid_14/skin_global.php:195)

in /home/eresseai/public_html/ipb/admin/sources/classes/output/formats/html/htmlOutput.php on line 130

Warning: Cannot modify header information - headers already sent

by (output started at

/home/eresseai/public_html/ipb/cache/skin_cache/cacheid_14/skin_global.php:195)

in /home/eresseai/public_html/ipb/admin/sources/classes/output/formats/html/htmlOutput.php on line 134

:angry::blink::unsure::(

non so se gettare la spugna o incaponirmi...

in genere ho la testa dura e dunque vorrei incaponirmi... il problema è che ho anche la testa dura nella strada dell'apprendimento soprattutto quando è tutto in inglese e si parla di programmazione!!!

non ho neanche capito (sic!) se quello che vorrei fare è una cosa che rientra nello "skinning" oppure già negli "hook"...00053018.gif

ah l'unico input che mi è sembrato promettente è questo:

skin overloaders

ma così a naso perché dire che l'ho capito sarebbe da vero troppo!!!

0007015.gif

alcina

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
alcina

a chi lo dici!!! :D venerdì e sabato mi fanno lavorare per davvero dunque dunque poco computer !!! domenica e lunedì sono in weekend... mi sa che ne riparliamo settimana prossima.... :rolleyes:

Modificato da alcina

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Crea un account o accedi per lasciare un commento

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

Crea un account

Iscriviti per un nuovo account nella nostra comunità. È facile!

Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.

Accedi Ora

×