A
aruetzel
GAST
Guten Morgen!
Habe ein wenig getestet und bin nicht zum gewünschten Ergebnis gekommen. Und zwar soll je nach Benutzergruppenzugehörigkeit eine angepasste Sidebar angezeigt werden.
Hier soweit mein Code den ich in der Skin.php eingefügt habe:
#Prüfung ob User eingeloggt ist -> funktioniert
if ($wgUser->isLoggedIn()) {
#Auslesen der Benutzergruppe aus der DB
$wgUserID = $_REQUEST["enwikiUserID"];
$abfrage = mysql_query("SELECT e.ug_group FROM enwiki.user_groups as e WHERE e.ug_user = '$wgUserID'");
$ergebnis = mysql_fetch_array($abfrage);
$Gruppe = $ergebnis[0];
#Kontrolle der Ergebnise
$wgDebugFile = "/var/log/debug.txt";
$f = fopen($wgDebugFile, "a+");
fputs($f, $wgUserID."\r\n");
fclose($f);
$f = fopen($wgDebugFile, "a+");
fputs($f, $Gruppe."\r\n");
fclose($f);
if ($Gruppe="Customer") {$lines = explode( "\n", wfMsgForContent( 'Customer_sidebar' ) );}
elseif ($Gruppe="Sales") {$lines = explode( "\n", wfMsgForContent( 'Sales_sidebar' ) );}
elseif ($Gruppe="Projects"){$lines = explode( "\n", wfMsgForContent( 'Projects_sidebar' ) );}
elseif ($Gruppe="OEM_Makino"){$lines = explode( "\n", wfMsgForContent( 'OEM_sidebar' ) );}
else
{
# Quasi die Sysop bzw Interne Sidebar
$lines = explode( "\n", wfMsgForContent( 'sidebar' ) );}
}
else {
$lines = explode( "\n", wfMsgForContent( 'Anon_sidebar' ) );
}
Wenn ich ins Debugfile schaue, bekomme ich die gewünschten Gruppen zurückgegeben. Aber bei den if-clauses springt er scheinbar immer in den Else-Zweig (Sysop/Intern)
Weiß jemand Rat?
Habe ein wenig getestet und bin nicht zum gewünschten Ergebnis gekommen. Und zwar soll je nach Benutzergruppenzugehörigkeit eine angepasste Sidebar angezeigt werden.
Hier soweit mein Code den ich in der Skin.php eingefügt habe:
#Prüfung ob User eingeloggt ist -> funktioniert
if ($wgUser->isLoggedIn()) {
#Auslesen der Benutzergruppe aus der DB
$wgUserID = $_REQUEST["enwikiUserID"];
$abfrage = mysql_query("SELECT e.ug_group FROM enwiki.user_groups as e WHERE e.ug_user = '$wgUserID'");
$ergebnis = mysql_fetch_array($abfrage);
$Gruppe = $ergebnis[0];
#Kontrolle der Ergebnise
$wgDebugFile = "/var/log/debug.txt";
$f = fopen($wgDebugFile, "a+");
fputs($f, $wgUserID."\r\n");
fclose($f);
$f = fopen($wgDebugFile, "a+");
fputs($f, $Gruppe."\r\n");
fclose($f);
if ($Gruppe="Customer") {$lines = explode( "\n", wfMsgForContent( 'Customer_sidebar' ) );}
elseif ($Gruppe="Sales") {$lines = explode( "\n", wfMsgForContent( 'Sales_sidebar' ) );}
elseif ($Gruppe="Projects"){$lines = explode( "\n", wfMsgForContent( 'Projects_sidebar' ) );}
elseif ($Gruppe="OEM_Makino"){$lines = explode( "\n", wfMsgForContent( 'OEM_sidebar' ) );}
else
{
# Quasi die Sysop bzw Interne Sidebar
$lines = explode( "\n", wfMsgForContent( 'sidebar' ) );}
}
else {
$lines = explode( "\n", wfMsgForContent( 'Anon_sidebar' ) );
}
Wenn ich ins Debugfile schaue, bekomme ich die gewünschten Gruppen zurückgegeben. Aber bei den if-clauses springt er scheinbar immer in den Else-Zweig (Sysop/Intern)
Weiß jemand Rat?