openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit 17c58c85580f27f9a9f3fd96b271d4e5931bfe76
parent c90b2a3b7a047e736744372039a1c8b27e88fc7c
Author: dankert <devnull@localhost>
Date:   Mon, 12 Mar 2007 23:42:10 +0100

?ndern der E-Mail-Adresse nur nach Best?tigung per E-Mail.

Diffstat:
actionClasses/ProfileAction.class.php | 50++++++++++++++++++++++++++++++++++++++++++++++++++
actionClasses/ProfileAction.ini.php | 15+++++++++++++--
language/de.ini.php | 32+++++++++++++++++++++++++++-----
themes/default/templates/profile/confirmmail.tpl.src.php | 18++++++++++++++++++
themes/default/templates/profile/edit.tpl.src.php | 5-----
themes/default/templates/profile/mail.tpl.src.php | 16++++++++++++++++
6 files changed, 124 insertions(+), 12 deletions(-)

diff --git a/actionClasses/ProfileAction.class.php b/actionClasses/ProfileAction.class.php @@ -60,6 +60,56 @@ class ProfileAction extends Action + function mail() + { + } + + + + function confirmmail() + { + srand ((double)microtime()*1000003); + $code = rand(); + $newMail = $this->getRequestVar('mail'); + Session::set('mailChangeCode',$code ); + Session::set('mailChangeMail',$newMail); + + // E-Mail an die neue Adresse senden. + $mail = new Mail( $newMail,'mail_change_code' ); + $mail->setVar('code',$code ); + $mail->setVar('name',$this->user->getName()); + $mail->send(); + + $this->addNotice('user',$newUser->name,'mail_sent','ok'); // Meldung + } + + + + function savemail() + { + $sessionCode = Session::get('mailChangeCode'); + $newMail = Session::get('mailChangeMail'); + $inputRegisterCode = $this->getRequestVar('code'); + + if ( $sessionCode == $inputRegisterCode ) + { + // Bestätigungscode stimmt überein. + // E-Mail-Adresse ändern. + $this->user->mail = $newMail; + $this->user->save(); + + $this->addNotice('user',$newUser->name,'user_saved','ok'); + } + else + { + // Bestätigungscode stimmt nicht. + $this->addNotice('user',$newUser->name,'mailcode_not_match','error'); + } + + } + + + function savepw() { if ( $this->getRequestVar('password1') != '' && diff --git a/actionClasses/ProfileAction.ini.php b/actionClasses/ProfileAction.ini.php @@ -10,6 +10,17 @@ menu=edit target=savepw menu=edit +[mail] +target=confirmmail +menu=edit + +[confirmmail] +target=savemail +menu=edit + +[savemail] +goto=edit + [savepw] goto=edit @@ -17,4 +28,4 @@ goto=edit goto=edit [menu] -edit=edit,pwchange- \ No newline at end of file +edit=edit,pwchange,mail+ \ No newline at end of file diff --git a/language/de.ini.php b/language/de.ini.php @@ -6,7 +6,22 @@ ; CHARSET="ISO-8859-1" +BUTTON_CANCEL=Abbrechen +BUTTON_OK=Ok +BUTTON_NEXT=Weiter +BUTTON_UNDO=Rückgängig ACL = "Berechtigungen" +folder_select_target_folder=Zielverzeichnis +folder_select_target_folder_help=Das Zielverzeichnis +FOLDER_SELECT_COPY=Kopieren nach ... +FOLDER_SELECT_COPY_HELP=Ausgewählte Objekte in ein anderes Verzeichnis kopieren +FOLDER_SELECT_MOVE=Verschieben nach ... +FOLDER_SELECT_MOVE_HELP=Ausgewählte Objekte in ein anderes Verzeichnis verschieben +FOLDER_SELECT_DELETE=Löschen +FOLDER_SELECT_DELETE_HELP=Ausgewählte Objekte im nächsten Schritt löschen +FOLDER_SELECT_LINK=Verknüpfung nach ... +FOLDER_SELECT_LINK_HELP=Für die ausgewählte Objekte eine Verknüpfung in einem anderen Verzeichnis erstellen +FOLDER_SELECT_DELETE_COMMIT=Löschen bestätigen ACL_CREATE_FILE = "Datei hochladen" ACL_CREATE_FILE_ABBREV = "DAT" ACL_CREATE_FOLDER = "Ordner anlegen" @@ -366,13 +381,15 @@ LOGO_PROJECTMENU=Projekt auswählen LOGO_PROJECTMENU_TEXT=Bitte wählen Sie ein Projekt zur Bearbeitung aus. LOGO_REGISTER=Registrierung LOGO_REGISTER_TEXT=Wenn sich noch nicht als Benutzer eingetragen sind, dann können Sie sich hier registrieren. Sie benötigen dazu ein gültigen E-Mail-Konto, an das ein Registrierungscode gesendet wird. -MAIL_SUBJECT_PASSWORD_COMMIT_CODE="Bestaetigung fuer Kennwortänderung"" -MAIL_SUBJECT_PASSWORD_NEW="Neues Kennwort"" -MAIL_SUBJECT_REGISTER_COMMIT_CODE="Ihr Registrierungscode"" +MAIL_SUBJECT_PASSWORD_COMMIT_CODE="Bestaetigung fuer Kennwortänderung" +MAIL_SUBJECT_PASSWORD_NEW="Neues Kennwort" +MAIL_SUBJECT_REGISTER_COMMIT_CODE="Ihr Registrierungscode" +MAIL_SUBJECT_MAIL_CHANGE_CODE="Änderung Ihrer E-Mail-Adresse" MAIL_SUBJECT_USER_MAIL = "Ihre Zugangsdaten" MAIL_TEXT_PASSWORD_COMMIT_CODE="Guten Tag {name},;;Ihr Code zum Anfordern eines neuen Kennwortes lautet: {code}.;;Bitte kopieren Sie diese Zahl und fügen Sie diese in das entsprechende Eingabefeld ein;;Sollten Sie kein neues Kennwort angefordert haben, so ignorieren Sie bitte diese E-Mail.;;Vielen Dank." MAIL_TEXT_PASSWORD_NEW="Guten Tag {name},;;Ihr neues Kennwort lautet: {password};;Bitte notieren Sie sich dieses gut und löschen Sie anschließend diese E-Mail.;;Vielen Dank." MAIL_TEXT_REGISTER_COMMIT_CODE="Guten Tag,;;Sie oder jemand anderes möchte sich für die Nutzung des OpenRat-CMS registrieren, hiermit erhalten Sie den notwendigen Registrierungscode.;;Ihr Registrierungs-Code: {code};;Bitte kopieren Sie diese Zahl und fügen Sie diese in das entsprechende Eingabefeld ein.;;Falls Sie diese Registrierung nicht durchgeführt haben, so ignorieren Sie bitte diese E-Mail.;;Vielen Dank fuer Ihr Interesse." +MAIL_TEXT_MAIL_CHANGE_CODE="Guten Tag {name},;;Mit dem nachfolgenden Code können Sie Ihre E-Mail-Adresse ändern:;;Code: {code};;Bitte kopieren Sie diese Zahl und fügen Sie diese in das entsprechende Eingabefeld ein." MAIL_TEXT_USER_MAIL = "Guten Tag {name},;;Ihre Zugangsdaten lauten wie folgt:;;Login: {username};Kennwort: {password};;Notieren Sie sich das Kennwort gut und löschen Sie anschließend diese E-Mail.;;Vielen Dank." MENU_CONTENT=Inhalt MENU_CREATE = Neu @@ -390,6 +407,8 @@ MENU_ELEMENT_REMOVE=Entfernen MENU_ELEMENT_REMOVE_DESC=Das Element löschen MENU_ELEMENT_TYPE=Typ MENU_ELEMENT_TYPE_DESC=Den Element-Typ ändern +MENU_ELEMENT_EDIT=Element bearbeiten +MENU_ELEMENT_EDIT_DESC=Alle Eigenschaften des ausgewählten Elementes bearbeiten MENU_EL_DESC = "Liste aller Elemente" MENU_EL_KEY = L MENU_FILE_ACLFORM=Recht hinzufügen @@ -441,7 +460,8 @@ MENU_FOLDER_RIGHTS=Rechte MENU_FOLDER_RIGHTS_DESC=Rechte ansehen MENU_FOLDER_SELECT="Auswahl" MENU_FOLDER_SELECT_DESC="Einzelne Inhalte auswählen" -MENU_FOLDER_SHOW="Inhalt" +MENU_FOLDER_SHOW="Verzeichnis-Inhalt" +MENU_FOLDER_SHOW="Inhalt des ausgewählten Verzeichnisses" MENU_FOLDER_SHOWPROP=Anzeigen MENU_FOLDER_SHOWPROP_DESC=Eigenschaften anzeigen MENU_FOLDER_SHOW_DESC="Inhalt des Ordners anzeigen" @@ -605,7 +625,7 @@ NOTICE_LOGIN_FAILED = "Anmeldung nicht m&ouml;glich.<br/>Der Benutzername ''<em> NOTICE_LOGIN_FAILED_MUSTCHANGEPASSWORD = "Die Anmeldung ist nicht möglich, da Ihr Kennwort abgelaufen ist. Bitte geben Sie nochmals Ihre Anmeldedaten zusammen mit einem neuen Kennwort ein." NOTICE_MAIL_SENT = "Die E-Mail wurde gesendet" NOTICE_MOVED = "wurde verschoben" -NOTICE_NOT_SAVED = "wurde gespeichert" +NOTICE_NOT_SAVED = "wurde nicht gespeichert" NOTICE_PASSWORD_TIMEOUT = "Ihr Kennwort ist abgelaufen und muss geändert werden." NOTICE_PROP_SAVED = "Eigenschaften wurden gespeichert" NOTICE_PUBLISHED="wurde ver&ouml;ffentlicht" @@ -697,6 +717,8 @@ USER_LOGINAS = "Angemeldet als" USER_LOGOUT = Abmelden USER_LOGOUT_DESC = "Von dieser Anwendung abmelden, Ihre Sitzung wird geschlossen." USER_MAIL = E-Mail +USER_NEW_MAIL = "Neue E-Mail-Adresse" +MENU_PROFILE_MAIL = "E-Mail" USER_MAIL_INVALID = "E-Mail Adresse ist ung&uuml;ltig" USER_MAIL_NEW_PASSWORD = "E-Mail mit dem neuen Kennwort an Benutzer senden" USER_MEMBERSHIPS = "Mitgliedschaften" diff --git a/themes/default/templates/profile/confirmmail.tpl.src.php b/themes/default/templates/profile/confirmmail.tpl.src.php @@ -0,0 +1,18 @@ +page + form + window title:GLOBAL_password name:login width:400 icon:user columnclasses:x,y rowclasses:fx1,fx2 widths:50%,50% + + row + cell class:logo colspan:2 + logo name:password + row + cell + text text:password_code + cell + input type:text name:code size:30 + + row + cell colspan:2 class:act + button type:ok + + focus field:code diff --git a/themes/default/templates/profile/edit.tpl.src.php b/themes/default/templates/profile/edit.tpl.src.php @@ -20,11 +20,6 @@ page input name:tel size:40 maxlength:128 row cell - text text:user_mail - cell class:fx - input name:mail size:40 maxlength:128 - row - cell text text:user_desc cell class:fx input name:desc size:40 maxlength:128 diff --git a/themes/default/templates/profile/mail.tpl.src.php b/themes/default/templates/profile/mail.tpl.src.php @@ -0,0 +1,15 @@ +page + form method:post + window icon:user name:user_profile + row + cell class:logo colspan:2 + logo name:changepassword + cell + text text:user_new_mail + cell + input name:mail + row + cell colspan:2 + button type:ok + + focus field:act_password+ \ No newline at end of file