MyBB.de Forum
Usertitel Auswertung ändern - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html)
+--- Forum: Plugin-Entwicklung (https://www.mybb.de/forum/forum-74.html)
+--- Thema: Usertitel Auswertung ändern (/thread-33568.html)



Usertitel Auswertung ändern - cthulhu - 14.06.2016

Hallo Leute.

Die Usertitel werden ja standardmäßig nach der Anzahl der Post vergeben.
Wir würden das ganz gerne umbauen, sodass es nach den Bewertungssystem funktioniert.

Ist dies ohne Probleme möglich?
In welcher php Datei werden die Usertitle ausgewertet, ich konnte sie nicht finden!?

Danke


RE: Usertitel Auswertung ändern - StefanT - 14.06.2016

Möglich ist das auf jeden Fall, allerdings findet sich der Code in mehreren Dateien (z.B. inc/functions_post.php).


RE: Usertitel Auswertung ändern - cthulhu - 15.06.2016

Ah, dann hab ich mich doch nicht ganz verschaut.
In der Members.php ist es glaube ich auch drin.

Gehe ich recht in der Annahme, dass es sich um diesen Codeteil handelt:
PHP-Code:
elseif(is_array($titlescache) && !$usergroup['usertitle'])
{
reset($titlescache);
foreach(
$titlescache as $key => $titleinfo)
{
if(
$post['postnum'] >= $key)
{
if(!
$hascustomtitle)
{
$post['usertitle'] = $titleinfo['title'];
}
$post['stars'] = $titleinfo['stars'];
$post['starimage'] = $titleinfo['starimage'];
break;
}
}


Hier wird immer abgefragt, ob die Postanzahl mit den im ACP hinterlegten Werten übereinstimmt!?
Was alles auch noch gecached wird!?
Man müsste also nur die Anzahl der Likes abfragen und hier anstatt vergleichen.
Und ebenfalls in den anderen Skripten abändern!?


RE: Usertitel Auswertung ändern - StefanT - 16.06.2016

Die passende Abfrage hast du gefunden.
(15.06.2016, 21:04)cthulhu schrieb: In der Members.php ist es glaube ich auch drin.
Der Code kommt in eigenen Dateien vor, nicht nur diesen beiden. Um das genau zu sagen, müsste ich aber auch erst einmal suchen.


RE: Usertitel Auswertung ändern - cthulhu - 16.06.2016

Das ist aus der member.php:
PHP-Code:
if($memprofile['postnum'] >= $title['posts'])
{
$usertitle $title['title'];
$stars $title['stars'];
$starimage $title['starimage'];

break;

Das ist klar, wenn die Postanzahl größer gleich dem eingestellten Wert ist, werden die Variablen dementsprechend gesetzt.

Das hier ist aus der functions_post.php
PHP-Code:
foreach($titlescache as $key => $titleinfo)
{
if(
$post['postnum'] >= $key)
{
if(!
$hascustomtitle)
{
$post['usertitle'] = $titleinfo['title'];
}
$post['stars'] = $titleinfo['stars'];
$post['starimage'] = $titleinfo['starimage'];
break;


Wieso wird hier $key abgefragt? Sollten hier nichr auch die Posts abgefragt werden?


RE: Usertitel Auswertung ändern - StefanT - 16.06.2016

Das Array $titlescache ist anders aufgebaut. Wink


RE: Usertitel Auswertung ändern - cthulhu - 16.06.2016

Kannst du mir das genauer erklären bitte?
Möchte es gerne verstehen.

Das Array ist doch aufgebaut, wie man es im Cache Manager aufrufen kann oder!?
Dann nimmt die Variable $key doch nur die Werte 1 - n (n Anzahl der Usertitle) an oder!?

PS:
Konnte schon erfolgreich die Anzeige im Profil, sowie in der Memberliste auf Likes umbauen, danke schonmal.


RE: Usertitel Auswertung ändern - StefanT - 16.06.2016

$titlescache wird weiter oben in der inc/functions_post.php definiert. Es wird zwar der Cache verwendet, aber das Array sieht ganz anders aus.