[FINAL] Accept terms 1.0.2

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Helmut
Mitglied
Beiträge: 2048
Registriert: 27.12.2002 20:35
Wohnort: Augsburg

Re: [FINAL] Accept terms 1.0.1

Beitrag von Helmut »

Hallo,

ja ist mir auch schon aufgefallen. Ich muss auch zweimal auf den Button klicken bis er die Eingabe übernimmt. Habe jetzt aber noch nicht die Zeit gehabt, mir die Sache etwas genauer anzuschauen. Vielleicht kann Tobi, der Mod Autor mal nachschauen wo die Ursache dafür liegt?

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
Benutzeravatar
redbull254
Ehemaliges Teammitglied
Beiträge: 10379
Registriert: 05.01.2006 13:01
Kontaktdaten:

Re: [FINAL] Accept terms 1.0.1

Beitrag von redbull254 »

Hallo erstmal,
schön, das Ihr das gemeldet habt. Ich wollte die Mod gerade einbauen. Das hat sich aber wohl leider bis auf weiteres erledigt.
Damit würde ich meine Mitglieder nur nerven. Und gerade bei "Neuanmeldungen" äußerst unangenehm. :roll:
Beste Grüße
Walter
Benutzeravatar
Metzle
Ehemaliges Teammitglied
Beiträge: 10435
Registriert: 08.03.2008 02:50
Wohnort: Waiblingen-Neustadt
Kontaktdaten:

Re: [FINAL] Accept terms 1.0.1

Beitrag von Metzle »

Pionier hat geschrieben: User, die sich nach dem Mo-Einbau registrieren, müssen die Nutzungsbedingungen zweimal akzeptieren.
1. bei registrierung
2. beim ersten Login
Hallo,

das liegt in der Natur der Sache, würde ich meinen, der Registrierung im Forum, da man dort generell die Nutzungsbedingungen akzeptieren muss. Nun könnte man zwei Ansätze verfolgen: Entweder im Forum bei der Registrierung rumschrauben und die Nutzungsbedingungen rausnehmen oder eben die Mod umbauen, dass bei einem ersten Login die Nutzungsbedingungen nicht nochmals akzeptiert werden müssen und nur die Funktion bleibt, dass man im ACP ein erneutes Akzeptieren erzwingen kann. Das muss aber Tobi wissen, wie er das handhabt ;)
Helmut hat geschrieben:Hallo,

ja ist mir auch schon aufgefallen. Ich muss auch zweimal auf den Button klicken bis er die Eingabe übernimmt. Habe jetzt aber noch nicht die Zeit gehabt, mir die Sache etwas genauer anzuschauen. Vielleicht kann Tobi, der Mod Autor mal nachschauen wo die Ursache dafür liegt?

Gruß Helmut
Hallo,

das scheint mir aber dann doch ein anderes Problem zu sein, wie das von Pionier oder? Du meintest, dass man zwei mal auf Ja klicken muss oder?
Dieses Problem wurde mir bei meiner Mod, Agree to privacy on first login auch schon mitgeteilt, allerdings kann ich dieses Verhalten nicht nachvollziehen, da verschiedene Foren verschieden reagieren. Ich habe es auf einigen Foren getestet und manchmal besteht dieses Problem, manchmal besteht dieses Problem nicht. Da meine Mod vom Aufbau so ziemlich identisch ist zu der Mod von Tobi, denke ich, wird es hier ebenso sein. Manchmal benötigt man zwei mal den Klick auf Ja, manchmal nicht. Wie gesagt, ich kann es nicht nachvollziehen, warum es so ist, leider.
Metzle
phpBB.de-Support-Team
Allround-phpBB.de
Helmut
Mitglied
Beiträge: 2048
Registriert: 27.12.2002 20:35
Wohnort: Augsburg

Re: [FINAL] Accept terms 1.0.1

Beitrag von Helmut »

Hallo Metzle,

ja genau, ich muss quasi doppelklicken damit er es annimmt. Ich habe gerade noch etwas damit rumgespielt und dabei folgendes festgestellt:
  1. Wenn man schon registriert und eingeloggt ist und wärenddessen die Regeln geändert werden, dann muss ich nur einmal klicken.
  2. Wenn ich nicht eingeloggt bin, dann muss ich zur Bestätigung der Regeln doppelklicken wenn ich kurz nach dem Einloggen draufklicke
  3. Wenn ich nach dem Einloggen etwas warte, dann muss ich nur einmal draufklicken
Das scheint mir ein Problem mit der Verarbeitung der confirm_box() Funktion oder dem Cache zu sein. Das Problem tritt übrigens sowohl beim IE als auch beim FF auf, also ist es nicht Browserabhängig denke ich mal.

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
Benutzeravatar
Metzle
Ehemaliges Teammitglied
Beiträge: 10435
Registriert: 08.03.2008 02:50
Wohnort: Waiblingen-Neustadt
Kontaktdaten:

Re: [FINAL] Accept terms 1.0.1

Beitrag von Metzle »

Hallo Helmut,

das bringt mich auf eine Idee...vielleicht hat es etwas mit der Automatischen Weiterleitung zu tun. Im Normalfall, wenn keine confirm_box() kommt, dann wird man ja nach einem Login automatisch auf die Foren-Übersicht weitergeleitet nach einer bestimmten Zeit....eventuell ist es genau diese Zeit, die verstreichen muss bzw verstreicht, dass man nicht doppelt klicken muss.
Auf jeden Fall mal ein neuer Ansatzpunkt, allerdings kann ich da gerade selbst nicht testen bzw ran, weil ich nicht zu Hause bin und meine Daten usw alle daheim liegen. Werde am Sonntagabend erst dazu kommen weitere Tests durchzuführen.
Metzle
phpBB.de-Support-Team
Allround-phpBB.de
Benutzeravatar
Pionier
Mitglied
Beiträge: 232
Registriert: 29.12.2007 19:55
Wohnort: Niebüll (S-H)
Kontaktdaten:

Re: [FINAL] Accept terms 1.0.1

Beitrag von Pionier »

Metzle hat geschrieben: ...Nun könnte man zwei Ansätze verfolgen: Entweder im Forum bei der Registrierung rumschrauben und die Nutzungsbedingungen rausnehmen oder eben die Mod umbauen...

Kann man nicht auch in der inkudes/funktions_user.php

Unter

Code: Alles auswählen

/**
* Adds an user
*
* @param mixed $user_row An array containing the following keys (and the appropriate values): username, group_id (the group to place the user in), user_email and the user_type(usually 0). Additional entries not overridden by defaults will be forwarded.
* @param string $cp_data custom profile fields, see custom_profile::build_insert_sql_array
* @return the new user's ID.
*/
function user_add($user_row, $cp_data = false)
{
	global $db, $user, $auth, $config, $phpbb_root_path, $phpEx;

	if (empty($user_row['username']) || !isset($user_row['group_id']) || !isset($user_row['user_email']) || !isset($user_row['user_type']))
	{
		return false;
	}

	$username_clean = utf8_clean_string($user_row['username']);

	if (empty($username_clean))
	{
		return false;
	}

	$sql_ary = array(
		'username'			=> $user_row['username'],
		'username_clean'	=> $username_clean,
		'user_password'		=> (isset($user_row['user_password'])) ? $user_row['user_password'] : '',
		'user_pass_convert'	=> 0,
		'user_email'		=> strtolower($user_row['user_email']),
		'user_email_hash'	=> crc32(strtolower($user_row['user_email'])) . strlen($user_row['user_email']),
		'group_id'			=> $user_row['group_id'],
		'user_type'			=> $user_row['user_type'],
	);
Mit folgender Zeile erweitern?

Code: Alles auswählen

		'user_accept_rules'			=> 1,
MFG Pionier
Benutzeravatar
Metzle
Ehemaliges Teammitglied
Beiträge: 10435
Registriert: 08.03.2008 02:50
Wohnort: Waiblingen-Neustadt
Kontaktdaten:

Re: [FINAL] Accept terms 1.0.1

Beitrag von Metzle »

Hallo,

sollte funktionieren...was haben deine Tests ergeben? :ugeek:
Metzle
phpBB.de-Support-Team
Allround-phpBB.de
Benutzeravatar
Pionier
Mitglied
Beiträge: 232
Registriert: 29.12.2007 19:55
Wohnort: Niebüll (S-H)
Kontaktdaten:

Re: [FINAL] Accept terms 1.0.1

Beitrag von Pionier »

Geht gut mit dem Code :grin:

Also, alle die den kleinen Fehler beheben wollen; müssen nur das machen:

Öffne includes/funktions_user.php
FINDE

Code: Alles auswählen

		'user_email_hash'		=> crc32(strtolower($user_row['user_email'])) . strlen($user_row['user_email']),
		'group_id'				=> $user_row['group_id'],
		'user_type'				=> $user_row['user_type'],


FÜHGE DANACH EIN

Code: Alles auswählen

		'user_accept_rules'		=> 1,
Speichern und hochladen
MFG Pionier
Benutzeravatar
Metzle
Ehemaliges Teammitglied
Beiträge: 10435
Registriert: 08.03.2008 02:50
Wohnort: Waiblingen-Neustadt
Kontaktdaten:

Re: [FINAL] Accept terms 1.0.1

Beitrag von Metzle »

Hallo Helmut,

also ich konnte das Doppelklicken nun tatsächlich auf die Weiterleitung eingrenzen ( früher als geplant, weil ich meine FTP-Daten aufm Laptop gefunden habe :ugeek: ) bzw habe einfach mal ein bißchen mit den Werten, um meinen Ansatzpunkt zu verfolgen, in der includes/functions.php bei

Code: Alles auswählen

			$redirect = meta_refresh(3, $redirect);
gespielt.

Bei 0 musste man nur einmal bestätigen, weil die Zeit folglich schnell abgelaufen war, bei bspw. 6 oder noch höher musste man immer wieder bestätigen bis die Zeit für die Weiterleitung abgelaufen war.

So, nun gilt es weiter zu schauen, wie man dieses Problem aus der Welt schafft, dass die confirm_box() nicht auf die Weiterleitung angewiesen ist bzw früher reagiert. Mir schwebt da was vor nach dem Motto der Mod Auto ACP redirection:

Öffne includes/functions.php
Finde:

Code: Alles auswählen

			$redirect = meta_refresh(3, $redirect);
Füge davor ein:

Code: Alles auswählen

if ($accept_rules)
      {
      redirect($redirect);
      }
$accept_rules im oberen Code ist hier natürlich nur ein Beispiel und nicht zu verwenden. Nur dass es klar wird, wie ich es meine.
Wie das dann natürlich genau aussehen muss, da muss ich nochmal genau schauen bzw darf auch gerne jeder mitschauen.

Edit:

So, ich hab mal bißchen rumgespielt und ich meine, bei mir hätte das nun funktioniert. Bitte mal testen:

Öffne includes/functions.php
Finde:

Code: Alles auswählen

			$redirect = meta_refresh(3, $redirect);
			trigger_error($message . '<br /><br />' . sprintf($l_redirect, '<a href="' . $redirect . '">', '</a>'));
Davor einfügen:

Code: Alles auswählen

			if ($user->data['user_accept_rules'] == 0 && $user->data['is_registered'] && !$user->data['is_bot'] && (request_var('mode', '') != 'terms'))
			{
				redirect($redirect);
			}
So sollte die Weiterleitung umgangen werden bzw im Hintergrund direkt weitergeleitet werden, wenn man die Regeln akzeptieren muss. Ich bin auf Rückmeldungen gespannt.
Metzle
phpBB.de-Support-Team
Allround-phpBB.de
Helmut
Mitglied
Beiträge: 2048
Registriert: 27.12.2002 20:35
Wohnort: Augsburg

Re: [FINAL] Accept terms 1.0.1

Beitrag von Helmut »

Hallo Metzle,

also bei mir geht das nicht, ist immer noch genauso. Ich habe es mal beobachtet, wenn man das erste mal klickt, dann wird man nur eingeloggt, mehr passiert da nicht. Erst beim zweiten klicken gehts dann, sieht also so aus, dass man explizit eingeloggt sein muss. So gesehen müsste der $redirect = meta_refresh(0, $redirect); von der login Prozedur angepasst werden, habe aber da noch nicht weiter gesucht.

Gruß Helmut
Ich bin nicht ganz dicht.... na und.
Antworten

Zurück zu „[3.0.x] Mods in Entwicklung“