Problem mit small Profil panel

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
charlymcfly
Mitglied
Beiträge: 263
Registriert: 05.01.2005 10:34
Wohnort: Aurich
Kontaktdaten:

Problem mit small Profil panel

Beitrag von charlymcfly »

Zum Glück wurde ich durch einen meiner User darauf aufmerksam gemacht. Sobald man irgendwelche einstellungen ändert kommt immer dieser text das man grundlegende einstellungen geändert habe und den account wieder freischalten muß. Komischerweise funktioniert es auch bei der mailänderung und beim passwort dann kriegt man ne mail und schaltet wieder frei. Aber wenn man Wohnort Avatar flagge oder die zeitzone ändert dann ist der gleiche text nur ohne mail.

Auch ein einspielen der orinal usercp_profile ändert nichts an diesem Fehler sieht es leider so aus als wäre der Fehler schon im mod von anfang an.

Wäre schön wenn sich jemand die usercp_profile mal ansehen könnte und mir helfen kann das problem zu beheben

Ich natürlich schon ein wenig getestet und habe es ( kann ich selbst garned glauben) geschafft das die email richtig geschickt und auch alles richtig angezeigt bekomme im browser. Ich habe für die mails den code auf diesen Hier abgeändert:

Code: Alles auswählen

			if ($pmode == "2") 
			{
				$message = $lang['Profile_updated'] . '<br /><br />'. sprintf($lang['Click_return_profile'],  '<a href="' . append_sid("kontrollzentrum.$phpEx") . '">', '</a>') .'<br /><br />' . sprintf($lang['Click_return_index'],  '<a href="' . append_sid("index.$phpEx") . '">', '</a>');
			}
			else if ($pmode == "3") 
			{
				$message = $lang['Profile_updated'] . '<br /><br />'. sprintf($lang['Click_return_profile'],  '<a href="' . append_sid("kontrollzentrum.$phpEx") . '">', '</a>') .'<br /><br />' . sprintf($lang['Click_return_index'],  '<a href="' . append_sid("index.$phpEx") . '">', '</a>');
			}
			else if ($pmode == "4") 
			{
				$message = $lang['Profile_updated'] . '<br /><br />'. sprintf($lang['Click_return_profile'],  '<a href="' . append_sid("kontrollzentrum.$phpEx") . '">', '</a>') .'<br /><br />' . sprintf($lang['Click_return_index'],  '<a href="' . append_sid("index.$phpEx") . '">', '</a>');
			}
			else
			{
				//
				// The users account has been deactivated, send them an email with a new activation key
				//
				include($phpbb_root_path . 'includes/emailer.'.$phpEx);
				$emailer = new emailer($board_config['smtp_delivery']);

				$emailer->from($board_config['board_email']);
				$emailer->replyto($board_config['board_email']);

				$emailer->use_template('user_activate', stripslashes($user_lang));
				$emailer->email_address($email);
				$emailer->set_subject($lang['Reactivate']);

				$emailer->assign_vars(array(
					'SITENAME' => $board_config['sitename'],
					'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $username), 0, 25)),
					'EMAIL_SIG' => (!empty($board_config['board_email_sig'])) ? str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']) : '',

					'U_ACTIVATE' => $server_url . '?mode=activate&' . POST_USERS_URL . '=' . $user_id . '&act_key=' . $user_actkey)
				);
				$emailer->send();
				$emailer->reset();

				$message = $lang['Profile_updated_inactive'] . '<br /><br />' . sprintf($lang['Click_return_index'],  '<a href="' . append_sid("index.$phpEx") . '">', '</a>');
			}
und für die account deaktivierung habe ich das so abgeändert obwohl ich mir nicht ganz sicherbin ob ich da nun damit fehler eingebaut habe oder nicht:

Code: Alles auswählen

			if ($pmode == "2") {
				$user_active = 'user_active';
				$user_actkey = 'user_actkey';
			}
			else if ($pmode == "3") {
				$user_active = 'user_active';
				$user_actkey = 'user_actkey';
			}
			else if ($pmode == "4") {
				$user_active = 'user_active';
				$user_actkey = 'user_actkey';
			}
			else
			{
				$user_active = 0;

				$user_actkey = gen_rand_string(true);
				$key_len = 54 - ( strlen($server_url) );
				$key_len = ( $key_len > 6 ) ? $key_len : 6;
				$user_actkey = substr($user_actkey, 0, $key_len);

				if ( $userdata['session_logged_in'] )
				{
					session_end($userdata['session_id'], $userdata['user_id']);
				}
			}
so funktioniert auch die an und abmeldung richtig aber nun fehlt mir leider noch das einbauen des richtigen aktivierungskeys.

Dafür ist doch eigentlich dieser orginalteil zuständig oder?

Code: Alles auswählen

if( $email != $userdata['user_email'] && $board_config['require_activation'] != USER_ACTIVATION_NONE && $userdata['user_level'] != ADMIN )
leider bekomme ich es nicht hin das ich den code ohne probleme/fehlermeldung mit einbauen kann.

Würde mich freuen wenn Ihr mir dabei helfen könntet und auch sagen könntet ob ich mit den codeänderungen nun trotzdem die sicherheit gegeben ist oder ob ich nun ein sicherheitsloch damit produziere?
charlymcfly
Mitglied
Beiträge: 263
Registriert: 05.01.2005 10:34
Wohnort: Aurich
Kontaktdaten:

Beitrag von charlymcfly »

Kann mir denn niemand bei diesem Problem helfen und mal schaun ob ich das richtig gemacht habe?
Antworten

Zurück zu „phpBB 2.0: Mod Support“