Frontenduser Profil / persönliche Daten
Ich habe nur das Modul "Passwort Ändern" eingebaut und bekomme nach Eingabe von Passwort alt und 2x Passwort neu eine Messagebox, wo ich aufgefordert werden, den User auszuwählen für den ich das Passwort ändern will.
Eigenartigerweise bin ich mit User1 eingeloggt und zur Auswahl stehen root und sysadmin ???
Eigenartigerweise bin ich mit User1 eingeloggt und zur Auswahl stehen root und sysadmin ???
Ich verstehe gerade kein Wort, bitte suche mal nach dem Original-Modul von mir und baue dies ein...
"Change Password"
Gruß
HerrB
"Change Password"
Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Ich versuche es nochmal...
Sobald ich dieses Modul aufrufe und das alte Passwort und 2x das neue Passwort eingebe, erscheint eine Msg-Box mit der Frage für welchen User ich das Passwort ändern will. In dieser Box sind 2 User zum Auswählen, sysadmin und root. Eigenartigerweise bin ich aber mit User1 eingeloggt.
Klicke ich auf abbrechen (x), wird das Passwort für User1 geändert. Wähle ich sysadmin aus, eben dieses. Auswahl Root-User hat keine Auswirkung, weil es den User in Contenido nicht gibt.
Liegt es womöglich an diversen Cookies, die am PC verspeichert sind?
Um diese Funktion meinen Usern zur Verfügung zu stellen zu können, sollte diese verwirrende Auswahl aber nicht vorhanden sein ?!?!?
Sobald ich dieses Modul aufrufe und das alte Passwort und 2x das neue Passwort eingebe, erscheint eine Msg-Box mit der Frage für welchen User ich das Passwort ändern will. In dieser Box sind 2 User zum Auswählen, sysadmin und root. Eigenartigerweise bin ich aber mit User1 eingeloggt.
Klicke ich auf abbrechen (x), wird das Passwort für User1 geändert. Wähle ich sysadmin aus, eben dieses. Auswahl Root-User hat keine Auswirkung, weil es den User in Contenido nicht gibt.
Liegt es womöglich an diversen Cookies, die am PC verspeichert sind?
Um diese Funktion meinen Usern zur Verfügung zu stellen zu können, sollte diese verwirrende Auswahl aber nicht vorhanden sein ?!?!?
Code: Alles auswählen
<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname : Passwort ändern
* Author(s) : HerrB
* Copyright : HerrB
* Created : 31.03.2006
************************************************/
cInclude("classes", "class.frontend.users.php");
$frontendusers = new FrontendUserCollection;
$frontendusers->select("idclient = '$client' AND username = '".urlencode($auth->auth[uname])."'");
if ($frontenduser = $frontendusers->next()) {
$idfrontend = $frontenduser->get("idfrontenduser");
$strMsg = "";
if ($_REQUEST["action"] == "save") {
if ($_REQUEST["oldpw"] != "" || $_REQUEST["newpw1"] != "" || $_REQUEST["newpw2"] != "") {
if ($_REQUEST["oldpw"] == "") {
$strMsg = mi18n("If changing the password please provide the current password.");
} else if ($_REQUEST["newpw1"] == "" || $_REQUEST["newpw2"] == "") {
$strMsg = mi18n("If changing the password please specify new password and retype the new password to avoid typos.");
} else if (md5($_REQUEST["oldpw"]) != $frontenduser->get("password")) {
$strMsg = mi18n("Altes Passwort ist nicht richtig.");
} else if ($_REQUEST["newpw1"] != $_REQUEST["newpw2"]) {
$strMsg = mi18n("Das neue Passwort ist nicht identisch.");
} else if (strlen($_REQUEST["newpw1"]) > 24) {
$strMsg = mi18n("Das neue Passwort darf max. 22 Zeichen lang sein.");
} else if (strlen($_REQUEST["newpw1"]) < 6) {
$strMsg = mi18n("Das neue Passwort muss mind. 6 Zeichen lang sein.");
}
}
if ($strMsg == "" && $_REQUEST["oldpw"] != "") {
$frontenduser->set("password", $_REQUEST["newpw1"]);
$frontenduser->store();
$strMsg = mi18n("Änderung wurde gespeichert.");
} else {
$strMsg = '<font color="#FF0000">'.$strMsg.'</font>';
}
}
echo '<form name="frmProfile" method="post" action="'.$auth->url().'">',chr(10);
echo ' <table cellspacing="0"> ',chr(10);
echo ' <tr>',chr(10);
echo ' <td colspan="2">'.mi18n("").'</td>',chr(10);
echo ' </tr>',chr(10);
if ($strMsg != "") {
echo ' <tr>',chr(10);
echo ' <td colspan="2">'.$strMsg.'</td>',chr(10);
echo ' </tr>',chr(10);
}
echo ' <tr>',chr(10);
echo ' <tr>',chr(10);
echo ' <td style="width: 150px;">'.mi18n("Altes Passwort:").'</td>',chr(10);
echo ' <td class="detail_text"><input name="oldpw" type="password" size="24" maxlength="24"></td>',chr(10);
echo ' </tr>',chr(10);
echo ' <tr>',chr(10);
echo ' <td style="width: 150px;">'.mi18n("Neues Passwort:").'</td>',chr(10);
echo ' <td><input name="newpw1" type="password" size="24" maxlength="24"></td>',chr(10);
echo ' </tr>',chr(10);
echo ' <tr>',chr(10);
echo ' <td style="width: 150px;">'.mi18n("Passwort wiederholen:").'</td>',chr(10);
echo ' <td><input name="newpw2" type="password" size="24" maxlength="24"></td>',chr(10);
echo ' </tr>',chr(10);
echo ' <tr>',chr(10);
echo ' <td style="width: 150px;"> </td>',chr(10);
echo ' <td><input type="hidden" name="action" value="save"><input class="submit" name="subscribe" type="submit" id="subscribe" value="'.mi18n("OK").'"></td>',chr(10);
echo ' </tr>',chr(10);
echo ' </table>',chr(10);
echo '</form>',chr(10);
}
?>
Ähm... diese Meldung dürfte von Deinem Browser stammen - wenn Du über das Modul Dein Passwort änderst, ist natürlich die aktuelle Session, mit der Du im Frontend angemeldet bist ungültig. Wenn es konfiguriert ist, solltest Du wieder auf der Frontend-Login-Seite landen (wenn dem nicht so ist, sollte man es einbauen).
Ich nehme mal an, dass Du über Deinen Browser Passwörter speicherst - die Meldung kommt von eben diesem...
Gruß
HerrB
Ich nehme mal an, dass Du über Deinen Browser Passwörter speicherst - die Meldung kommt von eben diesem...
Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Ist Dein Problem damit gelöst oder ist das Kritik?mko hat geschrieben:Danke für die Unterstützung....
Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Guten Morgen!
Ich darf nach 4 Tagen ausführlichem "Centenido-Testing" mal meinen ersten Post hier im Forum loslassen.
Nachdem ich ganz begeistert bin, was das Ding alles zusammen bringt, habe ich eine Frage zum feuserliste-Modul.
Und zwar würde ich dieses bei der Abfrage gerne so Einschränken, dass nur die Daten von EINEM User ausgegeben werden (Soll keine Liste aller User sondern eine Detailansicht jedes einzelnen Users werden, aus Platzgründen). Die SQL-query liegt bereits fertig vor mir, nur komm ich leider nicht drauf, wo man diesen im Output-Script einfügen könnte, damit das Modul nur den EINEN User "herausfiltert".
Any help?
DANKE
DANIEL
PS: Ich muss dazu sagen, ich bin was PHP, MySQL und Contenido-Module angeht noch etwas wackelig auf den Beinen
Ich darf nach 4 Tagen ausführlichem "Centenido-Testing" mal meinen ersten Post hier im Forum loslassen.
Nachdem ich ganz begeistert bin, was das Ding alles zusammen bringt, habe ich eine Frage zum feuserliste-Modul.
Und zwar würde ich dieses bei der Abfrage gerne so Einschränken, dass nur die Daten von EINEM User ausgegeben werden (Soll keine Liste aller User sondern eine Detailansicht jedes einzelnen Users werden, aus Platzgründen). Die SQL-query liegt bereits fertig vor mir, nur komm ich leider nicht drauf, wo man diesen im Output-Script einfügen könnte, damit das Modul nur den EINEN User "herausfiltert".
Any help?
DANKE
DANIEL
PS: Ich muss dazu sagen, ich bin was PHP, MySQL und Contenido-Module angeht noch etwas wackelig auf den Beinen
Die Frage ist, woher Du die ID des Frontend Users nimmst. Wenn der Nutzer angemeldet ist und er seine Angaben sehen soll, ist das einfach:
Wie im Code erwähnt, nur in einer geschützten Kategorie und mit Aufruf nach Frontend-Login sinnvoll. Die verfügbaren Informationen sind abhängig von Deinen Plugins.
Code stammt aus dem FrontendUser-Edit-Modul aus diesem Thread.
Wenn Du eine Liste der Nutzer hast, musst Du die ID übergeben und statt $auth->auth["uid"] einsetzen (hier ist eine vorherige Überprüfung, ob die übergebene ID numerisch ist, eine super Idee... [is_numeric]).
Gruß
HerrB
Code: Alles auswählen
$oFEUser = new FrontendUser;
$oFEUser->loadByPrimaryKey($auth->auth["uid"]); # Ist ja nur einer und der muss existieren, da nur in geschütztem Bereich sinnvoll
echo $oFEUser->getProperty("titel", "address");
echo $oFEUser->getProperty("vorname", "address");
echo $oFEUser->getProperty("Nachname", "address");
echo $oFEUser->getProperty("postleitzahl", "address");
echo $oFEUser->getProperty("ort", "address");
echo $oFEUser->getProperty("strasse", "address");
echo $oFEUser->getProperty("land", "address");
echo $oFEUser->getProperty("geboren", "address");
echo $oFEUser->getProperty("telefon", "address");
echo $oFEUser->getProperty("fax", "address");
echo $oFEUser->getProperty("mobil", "address");
echo $oFEUser->getProperty("email", "address");
echo $oFEUser->getProperty("homepage", "address");
Code stammt aus dem FrontendUser-Edit-Modul aus diesem Thread.
Wenn Du eine Liste der Nutzer hast, musst Du die ID übergeben und statt $auth->auth["uid"] einsetzen (hier ist eine vorherige Überprüfung, ob die übergebene ID numerisch ist, eine super Idee... [is_numeric]).
Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Hallo!HerrB hat geschrieben:Die Frage ist, woher Du die ID des Frontend Users nimmst.
Danke für die rasche Antwort!
Nein, die ID sollte er möglichst aus einem Link nehmen (bzw. ist es vll. besser, wenn einfach im Code der aufgerufenen Seite die Bedingung steht, dass nur eine bestimmte ID aufgerufen wird).
Man soll schlussendlich eine Userliste vor sich haben, die pro Zeile Vorname, Nachname und einen Link enthält (die originale feuserliste, bei der nur 3 Felder aufscheinen. Das hätte ich schon mal). Wenn der Link geklickt wird, soll man auf einer neuen Seite ALLE Daten dieser Person sehen können (also z.B. Vorname, Nachname, Strasse, PLZ, Ort, Tel., usw.). Diese sollten nicht bearbeitbar sein (für das gibts ja feuser-edit auf einer eigenen Seite).
Ist das evtl. relativ einfach realisierbar?
Gruß,
Daniel
Das ist ja im Prinzip in den Modulen aus diesem Thread (erste Seite) realisiert. Du musst nur noch bei der Ausgabe der Empfänger einen Link auf einen "Detail-Anzeige"-Artikel ergänzen. Dieser Artikel bekommt das Modul von oben, angepasst nur um die Beachtung der ID als Parameter:
Gruß
HerrB
Code: Alles auswählen
cInclude ("classes", "class.frontend.users.php");
$idrcp = $_REQUEST["idrcp"];
if (is_numeric($idrcp)) {
$oFEUser = new FrontendUser;
$oFEUser->loadByPrimaryKey($idrcp);
...
}
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Hi,
kann man hier auch beim frontenduser edit ein select Feld einbauen ?
Ich bekomme nur ein normales Textfeld.
Irgenwo muss ich doch noch die einzelnen Optionen angeben.
Hat mir jemand da bitte einen Tip ?
Auch bekomme ich bei der frontenduser edit Seite bei der Ausgabe bei Nachname immer noch ein m davor, also "mNachname".
Weder im Code von frontenduser edit noch sonstwo kann ich es entdecken. Kommt es vielleicht von der Datenbank ?
Im Backend unter Frontend, wird es normal angezeigt, nur im Frontend nicht.
Gruß
Pommes
kann man hier auch beim frontenduser edit ein select Feld einbauen ?
Code: Alles auswählen
$oTpl->set('d', 'FIELDTITLE', mi18n("Betriebsart"));
$oTpl->set('d', 'FIELDTYPE', 'select');
$oTpl->set('d', 'FIELDNAME', 'Betriebsart');
$oTpl->set('d', 'FIELDID', 'betriebsart');
$oTpl->set('d', 'FIELDVALUE', $_REQUEST["Betriebsart"]);
$oTpl->next();
Irgenwo muss ich doch noch die einzelnen Optionen angeben.
Hat mir jemand da bitte einen Tip ?
Auch bekomme ich bei der frontenduser edit Seite bei der Ausgabe bei Nachname immer noch ein m davor, also "mNachname".
Weder im Code von frontenduser edit noch sonstwo kann ich es entdecken. Kommt es vielleicht von der Datenbank ?
Im Backend unter Frontend, wird es normal angezeigt, nur im Frontend nicht.
Gruß
Pommes
Zum mNachname: Bitte keine Cross-Postings, das hast Du an anderer Stelle nochmal gefragt (und dort beantwortet bekommen).
Zur Liste:
So ohne weiteres ist es nicht möglich. Das Template enthält ein <input type="FIELDTYPE" name="FIELDNAME"... >. Du brauchst natürlich ein <select ...>.
Da hast Du dann ein wenig Arbeit vor Dir, Du müsstest im Template das ganze <input...>-Konstrukt durch einen generischen Platzhalter ersetzen (z.B. {FIELD}).
Und dann im Modul das Feld komplett erzeugen, d.h.
Das mit dem <select...> ist nur ein Beispiel. Du solltest die Select-Box über die Contenido-Funktionen erzeugen, siehe z.B. contenido/includes/include.newsletter_menu.php und dort nach cHTMLSelect.
Bitte setze Dich ein wenig mit den Modul-Templates und der Technik auseinander...
Gruß
HerrB
Zur Liste:
So ohne weiteres ist es nicht möglich. Das Template enthält ein <input type="FIELDTYPE" name="FIELDNAME"... >. Du brauchst natürlich ein <select ...>.
Da hast Du dann ein wenig Arbeit vor Dir, Du müsstest im Template das ganze <input...>-Konstrukt durch einen generischen Platzhalter ersetzen (z.B. {FIELD}).
Und dann im Modul das Feld komplett erzeugen, d.h.
Code: Alles auswählen
$oTpl->set('d', 'FIELD', '<input type="text" name="nachname" ...>');
oder
$oTpl->set('d', 'FIELD', '<select name="betriebsart" ...>...</select>');
Bitte setze Dich ein wenig mit den Modul-Templates und der Technik auseinander...
Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
-
- Beiträge: 71
- Registriert: Do 3. Nov 2005, 15:01
- Wohnort: Ulm
- Kontaktdaten:
seltsam...
verstehe ich das richtig...das modul ist für die "Frontenduser" Datenerweiterung...
Nachdem ich das mal zu installieren begonnen habe ist mir bei Schritt 1. folgendes aufgefallen. Bei mir erscheinen nicht im Bereich Frontenduser neue Felder sondern im Bereich "Benutzer" also normale User des Backend...
Ist das gewollt? Ich hab den leisen Verdacht es ist nicht gewollt oder irgendwie missverstehe ich etwas. Mein System ist ein Contenido 4.6.8
Ich hab an den Daten nichts geändert wollte es mal testen, da ich etwas ähnliches benötige. Und daran gedacht habe es mit einem Newsletteranmeldeformular zu kombinieren. ( Hätte das dann programmiert und veröffentlicht )
Kann mir wer weiterhelfen?
danke
gruß
muchacho
Nachdem ich das mal zu installieren begonnen habe ist mir bei Schritt 1. folgendes aufgefallen. Bei mir erscheinen nicht im Bereich Frontenduser neue Felder sondern im Bereich "Benutzer" also normale User des Backend...
Ist das gewollt? Ich hab den leisen Verdacht es ist nicht gewollt oder irgendwie missverstehe ich etwas. Mein System ist ein Contenido 4.6.8
Ich hab an den Daten nichts geändert wollte es mal testen, da ich etwas ähnliches benötige. Und daran gedacht habe es mit einem Newsletteranmeldeformular zu kombinieren. ( Hätte das dann programmiert und veröffentlicht )
Kann mir wer weiterhelfen?
danke
gruß
muchacho
Media in Vita - Medienagentur
Webdesign, Programmierung, Design
Webdesign, Programmierung, Design
Re: seltsam...
Hallo MediaMuchacho,MediaMuchacho hat geschrieben:verstehe ich das richtig...das modul ist für die "Frontenduser" Datenerweiterung...
Nachdem ich das mal zu installieren begonnen habe ist mir bei Schritt 1. folgendes aufgefallen. Bei mir erscheinen nicht im Bereich Frontenduser neue Felder sondern im Bereich "Benutzer" also normale User des Backend...
Ist das gewollt? Ich hab den leisen Verdacht es ist nicht gewollt oder irgendwie missverstehe ich etwas. Mein System ist ein Contenido 4.6.8
Ich hab an den Daten nichts geändert wollte es mal testen, da ich etwas ähnliches benötige. Und daran gedacht habe es mit einem Newsletteranmeldeformular zu kombinieren. ( Hätte das dann programmiert und veröffentlicht )
Kann mir wer weiterhelfen?
hast du es unter contenido/plugins gespeichert ?
Also da solltest Du einen Ordner namens frontendusers haben und in diesem die ganzen Ordner des Modules, wie es auch in der Anleitung steht.
Das mit der Newsletteranmeldung gibt es schon, finde gerade nur nicht die Seite.
Gruß
Pommes