Seite 1 von 3

Icon im Kurzprofil wenn User in Gruppe?

Verfasst: 22.08.2012 21:06
von LisaserstesForum
Hi, ich möchte gern in das Kurzprofil der User (neben den Beiträgen) einen Icon einfügen, wenn der User in einer bestimmten Gruppe Mitglied ist.
Das soll nur für die Moderatoren und wenn möglich auch nur in einem bestimmten Forum angezeigt werden.
Gibt es so eine Möglichkeit, zu überprüfen ob der User in der Gruppe ist und das dort anzuzeigen? :)

Re: Icon im Kurzprofil wenn User in Gruppe?

Verfasst: 22.08.2012 21:14
von Crizzo
Hi,

wieso gibst du der Gruppe nicht ein Rangbild, was automatisch an dieser Stelle angezeigt wird?

Grüße

Re: Icon im Kurzprofil wenn User in Gruppe?

Verfasst: 22.08.2012 21:25
von LisaserstesForum
Hi BlackHawk87, weil wir in dem Forum viele Gruppen haben und dort schon andere Gruppenbilder angezeigt werden.
Außerdem möchte ich, wenn es so eine Funktion gibt damit weiter basteln und in dieser bestimmten Kategorie ein kleines
Icon vor den Themen anzeigen, wenn der Themenstarter in dieser Gruppe ist.

Bei uns im Forum muss man sich vorstellen um für alle Foren frei geschaltet zu werden. Bei vielen Vorstellungen
und mehreren Moderatoren vergisst man schnell mal einen User, weil man ja immer das Thema öffnen und das Profil des
Users anklicken muss, um zu sehen ob der User in der Gruppe ist oder nicht.
Mit dem Icon im Kurzprofil und in der Themenliste soll das übersichtlicher für die Moderatoren werden. :)

Re: Icon im Kurzprofil wenn User in Gruppe?

Verfasst: 22.08.2012 21:33
von Nuramon
Ich wüsste nicht, dass es dafür eine vorgegebene Funktion gibt.
Allerdings kannst du an der richtigen Stelle in den entsprechenden php-Dateien eine SQL-Abfrage machen, ob der User in eben dieser Gruppe ist und das in eine entsprechende Template-Variable machen. Dann fügst du die einfach im Template ein.

Für die Abfrage, ob jemand Moderator ist, gibt es das: <!-- IF U_MCP -->

Hab gerade wenig Zeit, sonst würde ich dir so eine Abfrage basteln und die entsprechenden Stellen zeigen..

Re: Icon im Kurzprofil wenn User in Gruppe?

Verfasst: 22.08.2012 21:41
von LisaserstesForum
Ok, das hilft mir schon ein bißchen weiter, dann suche ich mal weiter und versuche mir so etwas zu basteln :)

Re: Icon im Kurzprofil wenn User in Gruppe?

Verfasst: 22.08.2012 21:53
von Nuramon
Die entsprechende Datenbanktabelle ist phpbb_user_group

Dementsprechend musst du die GroupID kennen, dann machst du eine Abfrage mit $user->data['user_id'] und der festen groupID auf diese Tabelle, wenn du ein Result zurückbekommst, setzt du die Template-Variable auf True, sonst auf false.

Die Stelle der Template-Variablen für das Schnellprofil findest du in der viewtopic.php bei

Code: Alles auswählen

'POSTER_AVATAR'        => $user_cache[$poster_id]['avatar'], 
Da dann halt die erstellen und die Variable die du hinter der SQL-Abfrage gestellt hast hinnehmen.

Wenn du es nicht hinkriegst, meld dich nochmal, vielleicht hab ich morgen Zeit.

Re: Icon im Kurzprofil wenn User in Gruppe?

Verfasst: 22.08.2012 22:20
von LisaserstesForum
Mh, das hört sich an sich ja einfach an, nur leider kenne ich mich mit PHP nicht so sehr aus, dass ich das selbst hinkriege. :)
Ich hab diesen Link gefunden, das geht glaube ich schon in die richtige Richtung, oder? http://phpbbmodders.net/board/viewtopic ... 533#p27014
Wenn du morgen Zeit hast wäre das super, es hat ja keine Eile. :) Vielleicht kann man mit der Methode im Link das ja machen?

Re: Icon im Kurzprofil wenn User in Gruppe?

Verfasst: 22.08.2012 22:31
von Nuramon
Hm, generell sieht das schon ziemlich klug aus. Aber es wird dich nicht zum gewünschten Ergebnis führen.
Dieses Snippet stellt für sämtliche Pages diese TemplateVariablen zur Verfügung, wo die Gruppenzugehörigkeit des AKTUELLEN Users feststeht. Das ist ja nicht das, was du möchtest ;)

Aber man kann mit diesem Code arbeiten und den an der entsprechenden Stelle die ich bereits sagte einfügen und dann einfach $user->data['user_id'] durch $poster_id ersetzen, wenn ich das jetzt richtig im Kopf habe.

Gut gut, ich schau mir das morgen mal näher an und schreib dir was (:

Re: Icon im Kurzprofil wenn User in Gruppe?

Verfasst: 22.08.2012 22:49
von LisaserstesForum
Super danke schön, dann bis morgen und gute Nacht :)

Re: Icon im Kurzprofil wenn User in Gruppe?

Verfasst: 23.08.2012 08:51
von Nuramon
So, ich hab jetzt mal was gebastelt.

Gehe in viewtopic.php
Suche:

Code: Alles auswählen

    // Dump vars into template
    $template->assign_block_vars('postrow', $postrow); 
Füge DARÜBER ein:

Code: Alles auswählen

    // SNIPPET Groups for User
        // Check what group a user is in
        if ( !function_exists('group_memberships') )
        {
            include($phpbb_root_path . 'includes/functions_user.'.$phpEx);
        }

        $groups = group_memberships(false,$poster_id);
        foreach ($groups as $grouprec)
        {
            $postrow['S_GROUP_' . $grouprec['group_id']] = true;
        } 
    // END Groups for User 
Gehe in style/deinstyle/template/viewtopic_body.html
Suche:

Code: Alles auswählen

{postrow.POSTER_AVATAR} 
Füge an die passende Stelle danach in deiner Formatierung ein:

Code: Alles auswählen

<!-- IF U_MCP --><!-- IF postrow.S_GROUP_10 -->Dein Inhalt für "Ist in Gruppe 10"<!-- ENDIF --><!-- ENDIF -->
Hier musst du natürlich das S_GROUP_10 durch die ID deiner Gruppe ersetzen.
Danach den Template-Cache leeren.

Um auch noch auf das Forum einzugehen, wird es etwas komplizierter.
Hat dir das schonmal geholfen?

Für die Themenübersicht wird es nochmal ein Stück anders. Brauchst du das auch?