Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Wie: Shop erst nach login sichtbar

    awids

    • Experte
    • Beiträge: 3.803
    • Geschlecht:
    Re: Wie: Shop erst nach login sichtbar
    Antwort #15 am: 11. Februar 2016, 12:24:27
    Ja, das funktioniert auch heute noch. Nur wie beschrieben ist nach diesem Schema die Passwort-Vergessen-Funktion nicht mehr möglich.

    Die Lösung von h-h-h ist natürlich nur eine grundsätzliche Hilfe. Nach dem {else} und vor dem schließenden {/if} wird natürlich erwartet, dass man mehr einbringt (einen designtechnischen Aufbau), als nur die Loginbox, die sich ansonsten über die gesamte Bildschirmbreite erstreckt.

    [ Für Gäste sind keine Dateianhänge sichtbar ]

    einfach112

    • Mitglied
    • Beiträge: 246
    Re: Wie: Shop erst nach login sichtbar
    Antwort #16 am: 11. Februar 2016, 12:32:41
    hallo alex...
    danke für die antwort ....
    Aber was muss da jetzt genau wohin ?

     
    Ein ähnlicher Weg nur über die index.html aus dem Template:
    Code: XML  [Auswählen]
    {config_load file="$language/lang_$language.conf" section="index"}

    Füge nach der ersten Zeile ein:

    Code: XML  [Auswählen]
    {if $smarty.session.customer_id}

    Füge am Ende ein:
    Code: XML  [Auswählen]
    {else}
    {$box_LOGIN}
    {/if}

    Besten Gruß

    h-h-h

    also was davon muss in die index datei und was in die languages datei ?

    awids

    • Experte
    • Beiträge: 3.803
    • Geschlecht:
    Re: Wie: Shop erst nach login sichtbar
    Antwort #17 am: 11. Februar 2016, 13:13:18
    Du bleibst grundsätzlich nur in der index.html

    Ich habe mal eine eigene Lösung für dieses Anliegen beigefügt, wo auch die Grundfunktionen wie ein Passwort-Reset wieder möglich sind. Einfach in einem unveränderten Standardtemplate die index.html austauschen.

    Sieht dann so aus (Man muss dann nur überlegen, welche Loginbox man wieder ausklammert.):

    [ Für Gäste sind keine Dateianhänge sichtbar ]

    In der Topnavigation habe ich den Punkt "Neukunde" ausgeklammert. Im Begrüßungstext muss man halt selber Hand anlegen und die Funktion "Kundenkonto erstellen" wegnehmen.

    Es bietet sich auch an, die Dateien zum Erstellen eines Accounts zu schützen, sodass jemand, der die Strucktur des Shops kennt, nicht durch Adresszeilen-Manipulation auf die create_account.php zugreifen kann. Das kann man bei den entsprechenden Template-Dateien genau so wie bei der index.html lösen.

    einfach112

    • Mitglied
    • Beiträge: 246
    Re: Wie: Shop erst nach login sichtbar
    Antwort #18 am: 11. Februar 2016, 15:37:16
    cool danke

    awids

    • Experte
    • Beiträge: 3.803
    • Geschlecht:
    Re: Wie: Shop erst nach login sichtbar
    Antwort #19 am: 11. Februar 2016, 18:46:41
    Ich empfehle außerdem, die Suchbox auszuklammern. Habe ich vorhin nicht gemacht, weil ich nur einen Weg aufzeigen wollte, nicht die ganze Umsetzung übernehmen.

    einfach112

    • Mitglied
    • Beiträge: 246
    Re: Wie: Shop erst nach login sichtbar
    Antwort #20 am: 13. Februar 2016, 15:24:33
    Hi ... Noch eine Frage zum Thema ....
    Lediglich mit Adminrechten kann man dann den shop betreten oder ?
    Ich habe es mit einem normalen account (neuer kunde2) nicht geschafft !?
    besteht die Möglichkeit auch normale Kunden rein zu lassen  ?

    einfach112

    • Mitglied
    • Beiträge: 246
    Re: Wie: Shop erst nach login sichtbar
    Antwort #21 am: 17. Februar 2016, 08:28:01
    Antwort .....
    Auch Kunden können sich ganz einfach einloggen !

    zazu

    • Neu im Forum
    • Beiträge: 15
    Re: Wie: Shop erst nach login sichtbar
    Antwort #22 am: 16. März 2016, 14:13:58
    Hier ein etwas umfangreichere Lösung:

    includes/application_top.php ans Ende der Datei:
    Code: PHP  [Auswählen]
    if (!xtc_session_is_registered('customer_id')) {
            if (!in_array(basename($PHP_SELF), array(FILENAME_LOGIN, FILENAME_LOGOFF, FILENAME_PASSWORD_FORGOTTEN, FILENAME_CONTACT_US, FILENAME_SITEMAP, FILENAME_CREATE_ACCOUNT, FILENAME_CREATE_ACCOUNT_SUCCESS, FILENAME_PASSWORD_DOUBLE_OPT, FILENAME_DISPLAY_VVCODES, FILENAME_CONTENT))) {
                    xtc_redirect(xtc_href_link(FILENAME_LOGIN, '', 'SSL'));
            }
    } elseif ($_SESSION['customers_status']['customers_status_id'] == 4) {
            if (!in_array(basename($PHP_SELF), array(FILENAME_WAITING, FILENAME_LOGOFF))) {
                    xtc_redirect(xtc_href_link(FILENAME_WAITING, '', 'SSL'));
            }
    }
     

    In der Administration eine weitere Kundengruppe anlegen. Diese sollte die ID 4 bekommen - bei mir habe ich diese wartend genannt. In dieser alle möglichen Optionen auf nein stellen.

    Im nächsten Schritt unter Konfiguration -> Mein Shop den Punkt "Kundenstatus für Neukunden" auf wartend setzen. Erstellt also jemand ein Kundenkonto erhält er diese Kundengruppe.

    Dann folgende Dateien Anlegen:
    /waiting.php
    Inhalt - quick and dirty:
    Code: PHP  [Auswählen]
    <?php


    /* -----------------------------------------------------------------------------------------
       $Id: waiting.php 1143 2016-03-16 14:00:43Z zazu $  

       XT-Commerce - community made shopping
       http://www.(( Wir dulden keine kommerziellen Werbelinks - Bitte <a href="index.php?topic=3013.0">Forenregeln</a> beachten! ))

       Copyright (c) 2003 XT-Commerce
       -----------------------------------------------------------------------------------------
       based on:
       (c) 2000-2001 The Exchange Project  (earlier name of osCommerce)
       (c) 2002-2003 osCommerce(login.php,v 1.79 2003/05/19); www.oscommerce.com
       (c) 2003      nextcommerce (login.php,v 1.13 2003/08/17); www.nextcommerce.org

       Released under the GNU General Public License
       -----------------------------------------------------------------------------------------
       Third Party contribution:

       guest account idea by Ingo T. <xIngox@web.de>
       ---------------------------------------------------------------------------------------*/


    include ('includes/application_top.php');

    // create smarty elements
    $smarty = new Smarty;
    // include boxes
    require (DIR_FS_CATALOG.'templates/'.CURRENT_TEMPLATE.'/source/boxes.php');

    // include needed functions
    require_once (DIR_FS_INC.'xtc_array_to_string.inc.php');
    // redirect the customer to a friendly cookie-must-be-enabled page if cookies are disabled (or the session has not started)
    if ($session_started == false) {
            xtc_redirect(xtc_href_link(FILENAME_COOKIE_USAGE));
    }
    $info_message = false; //DokuMan - 2010-02-28 - set undefined variable

    $breadcrumb->add(NAVBAR_TITLE_WAITING, xtc_href_link(FILENAME_WAITING, '', 'SSL'));
    require (DIR_WS_INCLUDES.'header.php');


    $smarty->assign('language', $_SESSION['language']);
    $smarty->caching = 0;
    $main_content = $smarty->fetch(CURRENT_TEMPLATE.'/module/waiting.html');
    $smarty->assign('main_content', $main_content);

    $smarty->assign('language', $_SESSION['language']);
    $smarty->caching = 0;
    if (!defined(RM))
            $smarty->load_filter('output', 'note');
    $smarty->display(CURRENT_TEMPLATE.'/index.html');
    include ('includes/application_bottom.php');
    ?>
     

    nächste Datei: /templates/[name der Templates]/module/waiting.html
    Code: PHP  [Auswählen]
    {config_load file="$language/lang_$language.conf" section="waiting"}
    <div style="margin: 10px auto; width: 600px;">
            <div class="highlightbox">
                    {#text_waiting#}
            </div>
    </div>
     

    Zu Letzt noch in die /lang/german/lang_german.conf (eventuell auch in andere Sprachen) folgendes am Ende der Datei einfügen:
    Code: PHP  [Auswählen]
    #waiting
    [waiting]
    text_waiting = Hier kommt ein Hinweistext rein
     

    Über die $smarty.session.customers_status.customers_status_id lässt sich dann innerhalb des Templates variieren, welche Elemente in der index.html nicht angezeigt werden sollen. Beispielsweise ist bei mir das Menü für die ID 1 und 4 nicht sichtbar.
    1 Antworten
    1899 Aufrufe
    19. März 2014, 19:58:34 von jannemann
    3 Antworten
    2837 Aufrufe
    10. Februar 2014, 00:12:38 von noRiddle (revilonetz)
    5 Antworten
    4104 Aufrufe
    27. Juli 2011, 21:09:22 von Tomcraft
    1 Antworten
    1403 Aufrufe
    29. März 2017, 09:47:39 von Patrix
               
    anything