Hallo,
Aufgabe:
Infos (z.B. der Lagerstand, interne Informationen oder was auch immer) sollen auf Seiten, die für alle sichtbar sein sollen nur bestimmten Besuchergrppen (Beispiel: Vertreter, Stammkunden, Admin) im Shop angezeigt werden.
Lösung:
ein benutzerdefiniertes Händlerfeld anlegen - im Beispiel "GRUPPE1"
in dieses Feld die login-Namen alle user eintragen, die die Infos sehen sollen.
der ssp-Code:
<!--spmacro:module(check)
sub gruppe1 {
my $user = ssp::get_var_user('login');
my $gruppe1 = ssp::get_var_merch('GRUPPE1');
my $showgruppe1;
if ($gruppe1 =~ /$user/) {
$showgruppe1 = qq| ... hier kommt alles rein, was nur für Gruppe 1 angezeigt werden soll ...|;
}
main::mprint $showgruppe1;
}
-->
auf der HTML-Seite wird dann mit __check::gruppe1__ nicht berechtigten Besuchern NICHTS angezeigt.
Ist der Besucher eingeloggt und steht sein Loginname im GRUPPE1-Feld, sieht er die nur für diese Benutzergruppe freigegebenen Infos.
Es können so natürlich beliebig viele verschiedene Benutzergruppen angelegt werden.
Nachtrag:
wenn man keine benutzerdefinierten Händlerfelder anlegen kann, gehts auch so:
ein benutzerdefiniertes Kundenfeld anlegen
(im Beispiel "GRUPPE1")
bei berechtigten Kunden hier "OK" eintragen
der Code schaut dann so aus
<!--spmacro:module(check)
sub gruppe1 {
my $gruppe1= ssp::get_var_user('GRUPPE1');
my $showgruppe1;
if ($gruppe1 eq "OK") {
$showgruppe1 = qq| ... hier kommt alles rein, was nur für Gruppe 1 angezeigt werden soll ...|;
}
main::mprint $showgruppe1 ;
}
-->