Mein Problem ist sicher nicht neu. Aber eine Recherche im Forum ergab keine erfolgreichen Lösungsansätze.
Worum es geht:
Ich möchte, dass User, die sich via FEU angemeldet haben, per Knopfdruck (bzw. automatisch) auch in einem angedockten Forum anmeldet sind. Bridging nennt man dieses Verfahren - also: zwei Datenbanken zusammenschalten.
Allerdings möchte ich dabei vermeiden, dass die Scripte des Forums derart umgebogen werden müssen, dass sie Zugriff auf die CMSMS-DB haben.
Meine Idee ist folgende, vielleicht ist sie naiv:
1. User meldet sich via FEU am CMS an
2. via User-Tag werden Name und Passwort ausgelesen
3. Name und Passwort werden dem Login-Script des Forums übergeben.
Klingt simpel ...
Was ich bisher versucht habe:
A. Tag zum Auslesen der Benutzerdaten
Code: Select all
global $gCms;
$feusers =& $gCms->modules['FrontEndUsers']['object'];
$userid = $feusers->LoggedInId();
$name = $feusers->GetUserName($userid);
$pass = $feusers->GetUserProperty($userid, 'password');
via GetUserProperty() habe ich keinen Zugriff auf das Passwort, die Funktion fragt nämlich "cms_module_feusers_properties" ab - und nicht: "cms_module_feusers_users".
Und dann kommt gleich das zweite Problem:
selbst, wenn ich das Passwort auslesen könnte - es ist md5-codiert; ich müsste es im Klartext an folgendes Formular weitergeben:
Code: Select all
<form id="frmSignIn" method="post" action="~url/process.php">
<label for="txtUsername">Benutzername</label>
<input id="txtUsername" type="text" name="Username" value="" class="Input" maxlength="20" />
<label for="txtPassword">Passwort</label>
<input id="txtPassword" type="password" name="Password" value="" class="Input" />
<div class="Submit"><input type="submit" name="btnSignIn" value="Anmelden" class="Button" /></div>
</form>
Oder ist mein Ansatz eine klassische Totgeburt?