Seite 1 von 2

User Title Mod

Verfasst: 03.11.2003 11:54
von ChriChra
Hallo.

Ich habe mal wieder ein Problem festgestellt. Und zwar habe ich den User Title-Mos V. 2.05 instaliert und mich immer gewundert, das die im acp vergebenen Titel nachkurzer Zeit immer wieder verschwunden sind. Also ab 2000 Posts können die User eigene Titel im Profil eingeben, bis dahin ist dies nur übers acp möglich.

Nun habe ich gemerkt, das die Titel jedesmal dann verschwunden sind, wenn der User sein Profil editiert hat. Ich nehme mal an, das das dadurch passiert, weil der User ja theoretisch noch keine Berechtigung für so einen Tital hat und er dehalb wieder gelöscht wird. Kann man da irgendetwas machen?! Bitte bitte!!!! Ich bin in PHP leider nicht so bewandert, als das ich da eine Lösung für finden könnte.....

Verfasst: 03.11.2003 13:23
von ChriChra
Hat denn keine eine Idee?! :cry:

Verfasst: 03.11.2003 13:35
von Acid
Dann mach ma folgendes..
usercp_register.php
++FINDE++

Code: Alles auswählen

if ($mode == 'register' && ($userdata['session_logged_in'] || $username == $userdata['username']))
{
	message_die(GENERAL_MESSAGE, $lang['Username_taken'], '', __LINE__, __FILE__);
}
++DARUNTER EINFÜGEN++
## wenn du eine der optionalen Möglichkeiten installiert hast, sieht die erste Zeile eventuell ein wenig anders aus (müsste dann angepasst werden) ##

Code: Alles auswählen

if ( $userdata['user_posts'] >= $board_config['allow_custom_rank'] && $userdata['session_logged_in'] && $mode != 'register' && $userdata['user_allow_rank'] == '1' )
{
        $allow_custom_rank = TRUE;
}
++FINDE (nur ein Auszug)++

Code: Alles auswählen

			$sql = "UPDATE " . USERS_TABLE . "...
++FINDE in dieser Zeile++

Code: Alles auswählen

, user_custom_rank = '" . str_replace("\'", "''", $custom_rank) . "'
++MIT FOLGENDEM ERSETZEN (ohne Komma davor)++

Code: Alles auswählen

$user_title
++FINDE nochmal (nur ein Auszug)++

Code: Alles auswählen

			$sql = "UPDATE " . USERS_TABLE . "...
++DARÜBER EINFÜGEN++

Code: Alles auswählen

$user_title = ( $allow_custom_rank ) ? ', user_custom_rank = \''.str_replace("\'", "''", $custom_rank).'\'' : '';
++FINDE++
## wenn du eine der optionalen Möglichkeiten installiert hast, sieht die erste Zeile eventuell anders aus (suche nach der $template Zeile um es zu finden) ##

Code: Alles auswählen

	if ( $userdata['user_posts'] >= $board_config['allow_custom_rank'] && $userdata['session_logged_in'] && $mode != 'register' && $userdata['user_allow_rank'] == '1' )
	{
	        $template->assign_block_vars('custom_rank', array(
++MIT FOLGENDEM ERSETZEN++

Code: Alles auswählen

	if ( $allow_custom_rank )
	{
	        $template->assign_block_vars('custom_rank', array(

Verfasst: 03.11.2003 13:37
von Leuchte
*edit* wegen Acids glaskugel scheint das ja dann hinfällig :cookie:
beachte bitte auch KB:16 (Topic Bumping)

Verfasst: 03.11.2003 13:54
von ChriChra
Vielen dank für die Hilfe. Ich hab die änderungen mal gemacht...das Problem mit den verschundenen Titeln hat sich damit zwar erledigt, aber nun kann man, wenn man über die eingestellten mindestbeiträge hinweg ist, den Titel nichtmehr selbst einstellen... also eingabe ist also nur im acp möglich...

Hier mal der Link zur neuen usercp_register.php als Text

PS: @Leuchte: Tut mir leid wenn ich gegen den Knigge verstoßen hab...ich bin nur echt verzweifelt... :cry:

Verfasst: 03.11.2003 14:23
von Acid
Hattest du eine der optionalen Möglichkeiten verbaut?

Verfasst: 03.11.2003 14:28
von ChriChra
nein, hab ich nicht...hab den Mod so genommen wie er war, weil das genau das war was ich brauchte.

Ich wollt halt, das die User ab 2000 posts ihre eingenen Titel eingeben können, ich als Admin aber auch Titel vergeben kann.

Verfasst: 03.11.2003 14:45
von Acid
hmm.. ich hab´s ma mit deiner usercp_register.php getestet.
Sobald ein User die xx Beiträge noch nicht erreicht hatte, konnte er auch keinen Rang einstellen und wenn er nur so sein Profil geändert hat, blieb der über das ACP eingestellte Rang (der persönliche für den User; admin_users.php) erhalten. Beim Erreichen der xx Beiträge konnte er dann wie gewohnt seinen Rang selber einstellen/ändern.
An der usercp_register.php liegt´s also nich. Die profile_add_body.tpl ist auch ok?

Ändere mal testweise die xx Beiträge oder so..

Verfasst: 03.11.2003 14:49
von ChriChra
Das ist ja die Datei wie ich sie jetzt hab, nach deinen Änderungen.

Ich versuche das nochmal, aber wie gesagt es ging vorhin nicht. Die profile_add_body.tpl is mit sicherheit in Ordnung, da es ja vorher ging mit der Useränderung...jetzt be´leibt der tital, aber der User kanns net mehr ändern...zum verzweifeln ...

Verfasst: 03.11.2003 14:55
von ChriChra
Habs grad nochmal probiert...also bei mir geht es mit dem selbst ändern nicht. :cry:

In der profil_add_body.tpl ist ganz normal folgender Code drin:

Code: Alles auswählen

<!-- BEGIN custom_rank -->
	<tr> 
		<td class="row1"><span class="gen">{custom_rank.L_CUSTOM_RANK}:</span><br /><span class="gensmall">{custom_rank.L_CUSTOM_RANK_EXPLAIN}<br /></td> 
		<td class="row2"><input type="text" class="post"style="width: 200px" name="custom_rank" size="35" maxlength="50" value="{custom_rank.CUSTOM_RANK}" /> </td> 
            </tr> 
<!-- END custom_rank -->
Habs mit den verschiedensten mindest-post-einstellungen probiert...