Overlay Login im Jtl Shop Fullscreen Overlay Login ohne Plug in

Overlay Login

Overlay Login im Jtl Shop

Im letzten Bericht haben wir euch gezeigt wie Ihr die Fullscreen Overlay Suche in euren JTL Shop einbauen könnt. Das Ganze könnt Ihr auch als Overlay Login nutzen. Da das Login beim JTL-Shop immer oben rechts in der Ecke verbaut ist, hat es uns im aktuellen Fall echt genervt.

Wie Ihr das ganze bewerkstelligen könnt schreiben wir euch hier auf.  Im Grunde ist es das selbe Spiel wie bei der Overlay Suche nur als Overlay Login. Vorteil: Ihr könnt hier mehr Sachen einbauen, die dem Kunden helfen sich durch den Shop bzw in sein Kundenkonto zu bewegen.

Als Erstes nehmen wir wieder das Original Login von JTL und schreiben das um. Das Login ist auch in der header_shop_nav.tpl genau wie zuvor die Suche.

{block name="navbar-top-user"}
{* ACCOUNT *}
<li class="dropdown hidden-xs">
{if empty($smarty.session.Kunde->kKunde)}
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
<i class="fa fa-user"></i> <span class="hidden-xs hidden-sm"> {lang key="login" section="global"} </span> <i class="caret"></i>
</a>
<ul id="login-dropdown" class="dropdown-menu dropdown-menu-right">
<li>
<form action="{get_static_route id='jtl.php' secure="true"}" method="post" class="form">
{$jtl_token}
<fieldset id="quick-login">
<div class="form-group">
<input type="text" name="email" id="email_quick" class="form-control" placeholder="{lang key='emailadress'}"/>
</div>
<div class="form-group">
<input type="password" name="passwort" id="password_quick" class="form-control" placeholder="{lang key='password'}"/>
</div>
<div class="form-group">
<input type="hidden" name="login" value="1"/>
{if !empty($oRedirect->cURL)}
{foreach name=parameter from=$oRedirect->oParameter_arr item=oParameter}
<input type="hidden" name="{$oParameter->Name}" value="{$oParameter->Wert}" />
{/foreach}
<input type="hidden" name="r" value="{$oRedirect->nRedirect} "/>
<input type="hidden" name="cURL" value="{$oRedirect->cURL}" />
{/if}
<button type="submit" id="submit-btn" class="btn btn-primary btn-block">{lang key="login" section="global"}</button>
</div>
</fieldset>
</form>
</li>
<li><a href="{get_static_route id='pass.php'}" rel="nofollow">{lang key="forgotPassword" section="global"}</a></li>
<li>
<a href="{get_static_route id='registrieren.php'}">{lang key="newHere" section="global"} {lang key="registerNow" section="global"}</a>
</li>
</ul>
{else}
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
<span class="fa fa-user"></span>
<span class="hidden-xs hidden-sm hidden-md"> {lang key="hello" section="global"} {if $smarty.session.Kunde->cAnrede === 'w'}{$Anrede_w}{elseif $smarty.session.Kunde->cAnrede === 'm'}{$Anrede_m}{/if} {$smarty.session.Kunde->cNachname}</span>
<span class="caret"></span>
</a>
<ul class="dropdown-menu dropdown-menu-right">
<li>
<a href="{get_static_route id='jtl.php' secure="true"}">{lang key="myAccount" section="global"}</a>
</li>
<li>
<a href="{get_static_route id='jtl.php' secure="true"}?logout=1">{lang key="logOut" section="global"}</a>
</li>
</ul>
{/if}
</li>
{* ACCOUNT END *}

Aus diesem machen wir:

<!-- Overlay Login ######################################### -->
<li class="bs-hover-enabled pull-right"><a href="#login"><span class="fa fa-user"></span></a></li>
<!-- Overlay Login ######################################### -->

Nun ist das Login bis auf das „User“ Icon deaktiviert.

Overlay Login

Um nun ein schönes Overlay Login zu machen gehen wir in die footer.tpl und packen dort wieder die Login sagen rein, diese könnten so aussehen.

<!-- Overlay Login ######################################### -->
<div id="login">
<button type="button" class="close"><i class="fa fa-times" aria-hidden="true"></i></button>
<div class="col-md-6 col-md-offset-3 center-box">
{if empty($smarty.session.Kunde->kKunde)}
<div class="col-md-6">
<h6 class="medium">{lang key="customer_login_headline" section="custom"}</h6>
<form action="{get_static_route id='jtl.php' secure=" true "}" method="post" class="form">
{$jtl_token}
<fieldset id="quick-login">
<div class="form-group">
<input type="text" name="email" id="email_quick" class="form-control" placeholder="{lang key='emailadress'}" />
</div>
<div class="form-group">
<input type="password" name="passwort" id="password_quick" class="form-control" placeholder="{lang key='password'}" />
</div>
<div class="form-group">
<input type="hidden" name="login" value="1" /> {if !empty($oRedirect->cURL)} {foreach name=parameter from=$oRedirect->oParameter_arr item=oParameter}
<input type="hidden" name="{$oParameter->Name}" value="{$oParameter->Wert}" /> {/foreach}
<input type="hidden" name="r" value="{$oRedirect->nRedirect} " />
<input type="hidden" name="cURL" value="{$oRedirect->cURL}" /> {/if}
<button type="submit" id="submit-btn" class="btn dark-button large-btn uppercase btn-block">{lang key="login" section="global"}</button>
</div>
</fieldset>
</form>
<p><a href="{get_static_route id='pass.php'}" rel="nofollow">{lang key="forgotPassword" section="global"}</a></p>
</div>
<div class="col-md-6">
<h6 class="mega">{lang key="new_customer_headline" section="custom"}</h6>
<p>{lang key="new_customer_text" section="custom"}</p>
<p><a href="{get_static_route id='registrieren.php'}">{lang key="newHere" section="global"} {lang key="registerNow" section="global"}</a></p>
</div>
{else}
<div class="col-md-6">
<h6 class="medium">{lang key="hello" section="global"} {if $smarty.session.Kunde->cAnrede === 'w'}{$Anrede_w}{elseif $smarty.session.Kunde->cAnrede === 'm'}{$Anrede_m}{/if} {$smarty.session.Kunde->cNachname}</h6>
<p>{lang key="login_customer_text" section="custom"}</p>
<a href="{get_static_route id='jtl.php' secure=" true "}" class="btn dark-button large-btn uppercase btn-block">{lang key="myAccount" section="global"}</a>
<a href="{get_static_route id='jtl.php' secure=" true "}?logout=1" class="btn dark-button large-btn uppercase btn-block">{lang key="logOut" section="global"}</a>
</div>
<div class="col-md-6">
<a href="{get_static_route id='jtl.php'}" class="btn dark-button large-btn uppercase btn-block{if $step === 'mein Konto'} active{/if}">
{lang key="accountOverview" section="account data"}
</a>
<a href="{get_static_route id='jtl.php' params=['bestellungen' => 1]}" class="btn dark-button large-btn uppercase btn-block{if $step === 'bestellung' || $step === 'bestellungen'} active{/if}">
{lang key="orders" section="account data"}
</a>
<a href="{get_static_route id='jtl.php' params=['editRechnungsadresse' => 1]}" class="btn dark-button large-btn uppercase btn-block{if $step === 'rechnungsdaten'} active{/if}">
{lang key="addresses" section="account data"}
</a>
<a href="{get_static_route id='jtl.php' params=['wllist' => 1]}" class="btn dark-button large-btn uppercase btn-block{if $step|substr:0:11 === 'wunschliste'} active{/if}">
{lang key="wishlists" section="account data"}
</a>
</div>
{/if}
</div>
</div>
<!--Overlay Login ######################################### -->

Wie Ihr hier am Code schon sehen könnt, sind hier nicht nur die Anmeldefunktionen drin, sondern auch die Funktion die normalerweise nur in den Konten auftauchen. Leider hat bisher aber das Overlay Login noch kein Funktion. Darum kümmern wir uns nun.

Als nächste Datei für das Overlay Login nehmen wir die „overlaysuche.js“ aus unserem letzten Bericht und ergänzen diese mit den folgenden Zeilen.

// Overlay Login #########################################
$(function () {
$('a[href="#login"]').on('click', function(event) {
event.preventDefault();
$('#login').addClass('open');
$('#login > form > input[type="search"]').focus();
});
$('#login, #login button.close').on('click keyup', function(event) {
if (event.target == this || event.target.className == 'close' || event.keyCode == 27) {
$(this).removeClass('open');
}
});
});

Hier kann nun jeder der aufgepasst hat einen Unterschied erkennen. Die Overlay Suche hat die ID „suche“ und das Overlay Login die ID Login. Da es ein und dieselbe Funktion ist, benötigen wir die ID’s, um eindeutig zu differenzieren was bei welchem Klick aufgehen soll.

Nächste Datei wäre dann die CSS. Im grunde könntet Ihr die Daten aus der Suche auch für das Overlay Login nutzen. Leider werden dort aber nicht alle Sachen drin stehen.

Also schreibt die neu.

/* Overlay Login ###################################################*/
#login {
position: fixed;
top: 0px;
left: 0px;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.9);
z-index: 101;
-webkit-transition: all 0.5s ease-in-out;
-moz-transition: all 0.5s ease-in-out;
-o-transition: all 0.5s ease-in-out;
-ms-transition: all 0.5s ease-in-out;
transition: all 0.5s ease-in-out;
-webkit-transform: translate(0px, -100%) scale(0, 0);
-moz-transform: translate(0px, -100%) scale(0, 0);
-o-transform: translate(0px, -100%) scale(0, 0);
-ms-transform: translate(0px, -100%) scale(0, 0);
transform: translate(0px, -100%) scale(0, 0);
opacity: 0;
}
@media (min-width: 992px) {
#login {max-width: 100% !important;}
#login form {
position: relative;
margin-bottom: 0;
}
#login.open {
-webkit-transform: translate(0px, 0px) scale(1, 1);
-moz-transform: translate(0px, 0px) scale(1, 1);
-o-transform: translate(0px, 0px) scale(1, 1);
-ms-transform: translate(0px, 0px) scale(1, 1);
transform: translate(0px, 0px) scale(1, 1);
opacity: 1;
}
#login input[type="login"] {
position: absolute;
top: 50%;
width: 100%;
color: rgb(255, 255, 255);
background: rgba(0, 0, 0, 0) !important;
font-size: 60px;
font-weight: 300;
text-align: center;
border: 0px;
margin: 0px auto;
margin-top: -51px;
padding-left: 30px;
padding-right: 30px;
outline: none;
}
#login .form-control {
font-family: 'Karla', serif;
display: block;
width: 100%;
height: 50px;
padding: 6px 0px;
font-size: 22px;
line-height: 1.42857143;
color: rgb(255, 255, 255);
background: rgba(0, 0, 0, 0) !important;
background-image: none;
border: 1px solid rgba(255, 255, 255, 0);
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
#login .form-control:focus {
border: 1px solid rgba(255, 255, 255, 0);
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
border-color: rgba(255, 255, 255, 0) !important;
}
#login .close {
position: fixed;
top: 15px;
right: 15px;
color: #fff;
background-color: transparent;
border-color: transparent;
opacity: 1;
padding: 10px 17px;
font-size: 27px;
}
#login .center-box {margin-top: 20%; color: #fff;}
#login .center-box h6 {font-size: 28px; color: #fff!important;}
#login .center-box a { color: #fff;}
#login #quick-login {
margin: 0px;
margin-bottom: 0;
}

Fertig ist das Overlay Login

Und das war es schon. Nun habt Ihr das coole Fullscreen-Login das über den gesamten Monitor auf geht und noch mehr Funktionen hat.

Teile uns

Schreibe einen Kommentar

Über WAM

Die WAM - Webagentur-Meerbusch. Die Typo3 und Wordpress Agentur aus Meerbusch bei Düsseldorf in NRW. Ganz nach dem Motto: Wenn man es ins Netz stellen kann, können wir es bauen. Und das schon seit über 10 Jahren.

-
Das Archiv
Werbung
Haendlerbund_Leistungen_265x221_animiert
Datenschutz-Übersicht
logo_wam_gray

Hier können Sie einstellen welche Cookies unsere Webseite auf Ihrem Endgerät speichern „Local Storage“ darf. Diese werden beim nächsten besuch auf unserer Webseite reaktiviert. Diese Einstellungen können Sie jederzeit wieder ändern. Dazu klicken Sie unten Links auf das Zahnradsymbol.

Sie können die Cookies nach dem Besuch unserer Webseite natürlich auch bedenkenlos löschen. Dazu müssen Sie die entsprechenden Einstellungen in Ihrem Browser vornehmen.

Unbedingt notwendige Cookies

Unbedingt notwendige Cookies sollten jederzeit aktiviert sein, damit wir deine Einstellungen für die Cookie-Einstellungen speichern können.

  • pll_language .

Cookie zur Verarbeitung eines mehrsprachiges System. Inhalte auf de / en / fr - Ablaufdatum 1 Jahr

  • reCAPTCHA ist ein CAPTCHA-System,

das es Webhostern ermöglicht, zwischen menschlichen und automatisierten Zugriffen auf Websites zu unterscheiden.

Unternehmen, das die Daten verarbeitet
Google Ireland Ltd
Gordon House, Barrow Street
Dublin 4
IE

Datenschutzerklärung

Kategorien verarbeiteter Daten:
KlickpfadSichtbarkeit von Anzeigen messenMausbewegungZeitstempelKlicks auf Anzeigen verfolgenConversion-TrackingIPUhrzeit und Datum verfolgenVerfolgung des BenutzerstandortsBesucherverhaltenUser-AgentSpracheBesuchte WebseiteZeitzone

Rechtsgrundlage für die Datenverarbeitung: Einwilligung (DSGVO 6.1.a)

Datenübertragung außerhalb der EU
Dieser Anbieter kann Ihre personenbezogenen Daten außerhalb des EWR/der EU übertragen, speichern oder verarbeiten. Diese Länder haben möglicherweise nicht das gleiche Datenschutzniveau und die Durchsetzung Ihrer Rechte kann eingeschränkt oder nicht möglich sein.
Cookies, die in Ihrem Browser gesetzt werden Cookiename Beispielwert Ablaufzeit Typ Domain rc::a MjNxdWs3M2o5ZGt­x Persistent Funktion www.google.com

  • Google Fonts

ist ein Dienst, der es Websites ermöglicht, bestimmte Schriftarten für ihre Gestaltung zu verwenden.

Unternehmen, das die Daten verarbeitet
Google Ireland Ltd
Gordon House, Barrow Street
Dublin 4
IE

Datenschutzerklärung

Rechtsgrundlage für die Datenverarbeitung: Einwilligung (DSGVO 6.1.a)

  • Google Maps

ist ein von Google entwickeltes Web-Mapping-Produkt.

Unternehmen, das die Daten verarbeitet
Google Ireland Ltd
Gordon House, Barrow Street
Dublin 4
IE

Datenschutzerklärung

Kategorien verarbeiteter Daten
Betrugserkennung und -präventionSichtbarkeit von Anzeigen messenZeitstempelIPUhrzeit und Datum verfolgenVerfolgen des BenutzergerätsVerfolgung des BenutzerstandortsBesucherverhaltenUser-AgentSpracheBesuchte WebseiteZeitzone

Rechtsgrundlage für die Datenverarbeitung: Einwilligung (DSGVO 6.1.a)

Datenübertragung außerhalb der EU
Dieser Anbieter kann Ihre personenbezogenen Daten außerhalb des EWR/der EU übertragen, speichern oder verarbeiten. Diese Länder haben möglicherweise nicht das gleiche Datenschutzniveau und die Durchsetzung Ihrer Rechte kann eingeschränkt oder nicht möglich sein.

Drittanbieter-Cookies

Diese Website verwendet Google Analytics, um anonyme Informationen wie die Anzahl der Besucher der Website zu sammeln.

Betreibergesellschaft der Google-Analytics-Komponente ist die Google Inc., 1600 Amphitheatre Pkwy, Mountain View, CA 94043-1351, USA.

Name des Cookies: _ga
Inhalte: GA1.2.1970440283.1622365906
Ablaufdatum des Cookies : 1 Jahr - Nur bei Verbindungen zur gleichen Website

Name des Cookies: _gat_gtag_UA_1602708_1
Inhalte: 1
Ablaufdatum des Cookies : 1 Minute - Nur bei Verbindungen zur gleichen Website

Name des Cookies: _gid
Inhalte: GA1.2.1949554392.1622365906
Ablaufdatum des Cookies : 24 Stunden - Nur bei Verbindungen zur gleichen Website

Name des Cookies: chimpstatic
Inhalte: E-Mail Adresse bei Newsletter anmeldung
Ablaufdatum des Cookies : 24 Stunden - Nur bei Verbindungen zur gleichen Website

Zusätzliche Cookies

Diese Website verwendet die folgenden zusätzlichen Cookies:

Name des Cookies: pll_language
Cookie zur Verarbeitung eines mehrsprachiges System. Inhalte auf de / en / fr - Ablaufdatum 1 Jahr - Nur bei sicheren Verbindungen zur gleichen Website

Name des Cookies: moove_gdpr_popup
Cookie zur Speicherung der Funktion der Cookieseinstellung - Ablaufdatum 1 Jahr - Nur bei Verbindungen zur gleichen Website