Shop soll nur nach Login (Anmeldung) sichtbar sein

jo…
änder einfach die Zeile:

$oContent->load( oxConfig::getParameter( 'tpl' ) );

in:

$oContent->load( oxConfig::getParameter( 'oxcid' ) );

um. Das hat sich in den letzten Versionen geändert.

wie mach ich das wenn ich alle content seiten anzeigen lassen will ? Also agb, impressum und soweiter ?

ich habs jetzt so gelöst :

<?php
class ShopControl extends ShopControl_parent
{
	protected function _process( $sClass, $sFunction )
	{
		if($this->isAdmin())
		{
			return parent::_process( $sClass, $sFunction );
		}

		$myConfig = $this->getConfig();
		$oUser = $this->getUser();

		$oContent   = oxNew( 'oxcontent' );
		$oContent->load( oxConfig::getParameter( 'oxcid' ) );

		if(!$oUser && $sClass != 'account' && $sClass != 'forgotpwd' && $sClass != 'register' && $sClass != 'login' && !$oContent->oxcontents__oxloadid->value)
		{
			oxUtilsView::getInstance()->addErrorToDisplay( oxLang::getInstance()->translateString('ACCOUNT_LOGIN_REQUIRE') );
			oxUtils::getInstance()->redirect( $myConfig->getShopHomeURL() .'cl=account' );
			return;
		}

		if(!($sClass != 'account' && $sClass != 'forgotpwd' && $sClass != 'register' && $sClass != 'login' && !$oContent->oxcontents__oxloadid->value))
		{
			return parent::_process( $sClass, $sFunction );
		}
	}

}
?>

nur leider wird die Startseite damit nicht angezeigt, anscheinend kein content !?

ok habs hinbekommen :wink: hab mir mal die sClass Variable gedumpt, wie kommt ich ohne dumpen auf die ganzen bezeichnungen !?

zu undeutlich ?
Ich möchte mir alle Klassen die es gibt ausgeben, lassen damit ich im Adminbereich, abfragen kann, welche Seiten angezeigt werden dürfen und welche nicht ( im uneingeloggten Zustand )

ja also die $sClass sind ja die ganzen views. Also account.php, contact.php usw. Wenn dir das weiter hilft.

hallo … habt ihr das jetzt gelöst ? kann man euer fertiges modul irgendwo downloaden ? :smiley:

Hallo,

ich finde die Funktion als Modul sehr nützlich, nur wenn ich mich dann als Kunde anmelde komme ich nur auf eine weiße Seite. Deaktiviere ich das Modul und bin nicht als Kunde eingeloggt funktioniert wieder alles. Logge ich wiederrum als Kunde ein, geht das ganze wieder von vorn los. Nur weiße Seite.

Hier mal der Code den ich benutzt habe:

<?php
class ShopControl extends ShopControl_parent
{
    protected function _process( $sClass, $sFunction )
    {
        if($this->isAdmin())
        {
            return parent::_process( $sClass, $sFunction );
        }

        $myConfig = $this->getConfig();
        $oUser = $this->getUser();

        $oContent   = oxNew( 'oxcontent' );
        $oContent->load( oxConfig::getParameter( 'oxcid' ) );

        if(!$oUser && $sClass != 'account' && $sClass != 'forgotpwd' && $sClass != 'register' && $sClass != 'login' && !$oContent->oxcontents__oxloadid->value)
        {
            oxUtilsView::getInstance()->addErrorToDisplay( oxLang::getInstance()->translateString('ACCOUNT_LOGIN_REQUIRE') );
            oxUtils::getInstance()->redirect( $myConfig->getShopHomeURL() .'cl=account' );
            return;
        }

        if(!($sClass != 'account' && $sClass != 'forgotpwd' && $sClass != 'register' && $sClass != 'login' && !$oContent->oxcontents__oxloadid->value))
        {
            return parent::_process( $sClass, $sFunction );
        }
    }

}

Wenn ich Lösung mit der oxview.php einsetzt, funktioniert zwar das Login als Kunde wie es soll, aber ausgeloggt snd wieder alle Seiten (Versandkosten, AGB u.s.w) gesperrt.

Hallo computerworld24,

es kann durchaus sein, dass das so nicht mehr funktioniert, die Einträge hier sind ja nun schon ein paar Tage alt.
Ein aktuelles Modul findest Du hier:
http://www.oxid-esales.com/en/exchange/extensions/shopping-club-login-module-ee-431

Übrigens wird das in der 4.4.0 fest verbaut, die ja in den nächsten Tagen rauskommt.

Gruß

Hi Marco,

danke für den Tipp zu diesem Modul.
Habe es installiert wie es in der TXT beschrieben war und bekomme im Frontend nur noch eine weiße Seite zu sehen. Ins Backend komme ich ohne Probleme.

Ich habe bereits den Cache mehrmals geleert und auch das tmp Verzeichnis gelöscht. Doch leider ohne Erfolg.

Hi,

nun brauchst Du an dem Modul auch nicht mehr rumzumurkeln, die 4.4.0 ist draussen :slight_smile:

Gruß

hallo zusammen,

ok, das ist ja alles schon eine weile her. wenn das feature jetzt standardmässig eingebaut ist: wo aktiviere ich das denn?

gruß, volker

Hallo Volker,

das aktivierst du am besten unter Stammdaten/Grundeinstellungen/Einstell./Private Sales im Adminbereich deine Shops.

klappt, vielen dank!