Icon im Kurzprofil wenn User in Gruppe?

Fragen zur Bedienung von phpBB 3.0.x, Probleme bei der Benutzung und alle weiteren Fragen inkl. Update auf die neuste phpBB 3.0.14 Version
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.
LisaserstesForum
Mitglied
Beiträge: 996
Registriert: 28.08.2008 20:20
Wohnort: Kassel

Re: Icon im Kurzprofil wenn User in Gruppe?

Beitrag von LisaserstesForum »

Hi Nuramon,

danke für die Hilfe und die Beschreibung. :)
Es funktioniert und das Forum mit prüfen zu lassen, dass es nur in einem Forum angezeigt wird, war gar nicht so schwer:

Code: Alles auswählen

<!-- IF FORUM_ID == 7 -->
					    <!-- IF U_MCP --><!-- IF postrow.T_GROUP_8 -->test<!-- ENDIF --><!-- ENDIF -->
					<!-- ENDIF -->
In der Themenübersicht würde ich auch gerne noch so etwas einbauen, wenn ich aber weiß welchen Code ich benutzen muss,
damit die Prüfung sich nur auf den Themenersteller bezieht (und nicht auf z.B. die zuletzte geantwortete Person), schaffe ich
den Rest alleine, denke ich :)
Benutzeravatar
Nuramon
Mitglied
Beiträge: 250
Registriert: 05.02.2012 21:45
Wohnort: Solingen
Kontaktdaten:

Re: Icon im Kurzprofil wenn User in Gruppe?

Beitrag von Nuramon »

Freut mich zu hören. Kannst ja mal fleißig rumzuprobieren (:

Wenn es keine Template-Variable für den Topic-Starter gibt, dann musst du eben eine in der viewforum.php an der richtigen Stelle anlegen^^

Ich glaube aber übrigens sauberer gelöst als

Code: Alles auswählen

<!-- IF FORUM_ID == 7 -->
wäre

Code: Alles auswählen

<!-- IF FORUM_ID eq 7 -->
Hatte da was im Kopf, dass man die Vergleiche besser mit equals ausführt. Falls ich falsch liege, bitte einer von den erfahreneren Moddern korrigieren.
Das Pinke Forum
Das Pinke Forum - werde Teil einer freundlichen Community, die dir bei Fragen rund um Liebe, Sex, Ernährung, Schule oder bei Problemen aller Art zur Seite steht! Verfasse Beiträge, erstelle Threads und lern nette Leute kennen; kostenlos und toll betreut.
LisaserstesForum
Mitglied
Beiträge: 996
Registriert: 28.08.2008 20:20
Wohnort: Kassel

Re: Icon im Kurzprofil wenn User in Gruppe?

Beitrag von LisaserstesForum »

Oh ok dann ändere ich das, habe das nur so hier in einem anderen Beitrag gefunden.
Ich werde versuchen mir aus dem Snippet sowas zu basteln für die Themenübersicht: viewtopic.php?f=85&t=219480
LisaserstesForum
Mitglied
Beiträge: 996
Registriert: 28.08.2008 20:20
Wohnort: Kassel

Re: Icon im Kurzprofil wenn User in Gruppe?

Beitrag von LisaserstesForum »

Schade, das funktioniert leider nicht so, wie ich es gerne hätte.
Ich habe in der viewforum.php dies eingefügt:

Code: Alles auswählen

    'S_TOPIC_POSTER_ID2'   =>  $topic_data['topic_poster'],
In der viewforum_body.html habe ich dann das eingefügt:

Code: Alles auswählen

<!-- IF postrow.S_TOPIC_POSTER and postrow.S_TOPIC_POSTER_ID2 neq 1 -->test<!-- ENDIF -->
Leider funktioniert die Funktion anscheinend nicht, denn wenn ich an dieser Stelle nur "test" einfüge, steht es hinter
den Beiträgen.
Ich wollte diese Funktion, damit der Gruppenstatus nur bei dem Themenstarter geprüft wird, es sollte also so ungefähr aussehen:

Code: Alles auswählen

<!-- IF FORUM_ID == 7 -->
<!-- IF U_MCP -->
<!-- IF postrow.S_TOPIC_POSTER and postrow.S_TOPIC_POSTER_ID2 neq 1 -->
<!-- IF postrow.T_GROUP_8 -->test<!-- ENDIF -->
<!-- ENDIF -->
<!-- ENDIF -->
<!-- ENDIF -->
Benutzeravatar
Nuramon
Mitglied
Beiträge: 250
Registriert: 05.02.2012 21:45
Wohnort: Solingen
Kontaktdaten:

Re: Icon im Kurzprofil wenn User in Gruppe?

Beitrag von Nuramon »

So einfach geht das aber nicht.
Ich glaube du hast die Logik der Template-Variablen noch nicht so ganz durchschaut. Nur die, die auch definiert werden, sind an der entsprechenden Stelle verfügbar. Im der viewtopic.php waren es die, die wir oben hatten.
In der viewforum.php sind es andere, und sie sind auch in der Blockvariable 'topicrow' versteckt, nicht mehr postrow.

Am Besten schaust du dir das mal an, wenn du in der viewforum.php nach

Code: Alles auswählen

$template->assign_block_vars('topicrow', array( 
suchst. Denn genau da stehen alle drinnen.

Was möchtest du jetzt genau tun?
Wenn der Topic-Starter in einer bestimmten Gruppe ist, soll ein Symbol neben dem Thread angezeigt werden, wenn man Moderator ist, richtig?
Dafür braucht man wieder eine kleine Abfrage, wo du aus der id des Erstellers wieder die Gruppenzugehörigkeiten ausliest und in die Template-Variablen packst.
Das Pinke Forum
Das Pinke Forum - werde Teil einer freundlichen Community, die dir bei Fragen rund um Liebe, Sex, Ernährung, Schule oder bei Problemen aller Art zur Seite steht! Verfasse Beiträge, erstelle Threads und lern nette Leute kennen; kostenlos und toll betreut.
LisaserstesForum
Mitglied
Beiträge: 996
Registriert: 28.08.2008 20:20
Wohnort: Kassel

Re: Icon im Kurzprofil wenn User in Gruppe?

Beitrag von LisaserstesForum »

Oh man ist das kompliziert :o

Code: Alles auswählen

Was möchtest du jetzt genau tun?
Wenn der Topic-Starter in einer bestimmten Gruppe ist, soll ein Symbol neben dem Thread angezeigt werden, wenn man Moderator ist, richtig?
Ja, genau das ist mein Ziel :)

Das ich die Funktion zur Überprüfung ob der User in der Gruppe ist dann in die Datei noch reinschreiben muss ist mir klar,
ich wollte das nur Schritt für Schritt machen und deswegen zuerst die Funktion hinbekommen, dass die Überprüfung nur
bei dem Themenstarter statt findet.
Benutzeravatar
Nuramon
Mitglied
Beiträge: 250
Registriert: 05.02.2012 21:45
Wohnort: Solingen
Kontaktdaten:

Re: Icon im Kurzprofil wenn User in Gruppe?

Beitrag von Nuramon »

Geh mal in die viewforum.php
Suche:

Code: Alles auswählen

            'TOPIC_AUTHOR'                => get_username_string('username', $row['topic_poster'], $row['topic_first_poster_name'], $row['topic_first_poster_colour']), 
Füge DANACH ein:

Code: Alles auswählen

            'TOPIC_AUTHOR_ID'            => $row['topic_poster'], 
Dann hast du deine ID vom Themenersteller.
Erreichbar ist sie im Template mit

Code: Alles auswählen

{topicrow.TOPIC_AUTHOR_ID}
So kommst du an die ID.

Ich machs dann mal eben schnell fertig, sollten nur ein paar kleine Anpassungen sein.
Finde:

Code: Alles auswählen

        // Send vars to template
        $template->assign_block_vars('topicrow', array( 
Füge DAVOR 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,$row['topic_poster']);
            $author_groups = array();
            foreach ($groups as $grouprec)
            {
                $author_groups['S_AUTHOR_GROUP_' . $grouprec['group_id']] = true;
            } 
            $template->assign_block_vars('topicrow', $author_groups);
        // END Groups for User  
Benutzen tust du das dann in dem Template mit

Code: Alles auswählen

{topicrow.S_AUTHOR_GROUP_5}
Ich hoffe das passt soweit, getestet hab ich das jetzt nicht mehr.
Kann sein, dass das doppelte assignen nicht geht, dann müsste man die Arrays einzeln definieren, mergen und dann erst assignen.
Das Pinke Forum
Das Pinke Forum - werde Teil einer freundlichen Community, die dir bei Fragen rund um Liebe, Sex, Ernährung, Schule oder bei Problemen aller Art zur Seite steht! Verfasse Beiträge, erstelle Threads und lern nette Leute kennen; kostenlos und toll betreut.
LisaserstesForum
Mitglied
Beiträge: 996
Registriert: 28.08.2008 20:20
Wohnort: Kassel

Re: Icon im Kurzprofil wenn User in Gruppe?

Beitrag von LisaserstesForum »

Da blick ich nicht mehr durch. :P
Trotzdem danke für deine Hilfe und Zeit :)
LisaserstesForum
Mitglied
Beiträge: 996
Registriert: 28.08.2008 20:20
Wohnort: Kassel

Re: Icon im Kurzprofil wenn User in Gruppe?

Beitrag von LisaserstesForum »

Ich hab es doch noch nicht aufgegeben und probiere es weiter.
Nuramon hat geschrieben: Kann sein, dass das doppelte assignen nicht geht, dann müsste man die Arrays einzeln definieren, mergen und dann erst assignen.
Anscheinend ist das so, denn wenn ich das Snippet einbaue zerreist es mir die Themenansicht. Wie mache ich das?
Benutzeravatar
Nuramon
Mitglied
Beiträge: 250
Registriert: 05.02.2012 21:45
Wohnort: Solingen
Kontaktdaten:

Re: Icon im Kurzprofil wenn User in Gruppe?

Beitrag von Nuramon »

Propiers mal so:
viewforum.php

Lösch erstmal die alten Änderungen, wenn das so nicht geht, ist vor dem Array generell doof.

Finde:

Code: Alles auswählen

        $template->assign_block_vars('topicrow', array( 
ERSETZE durch:

Code: Alles auswählen

        $template_vars = array( 
Finde:

Code: Alles auswählen

            'S_TOPIC_TYPE_SWITCH'    => ($s_type_switch == $s_type_switch_test) ? -1 : $s_type_switch_test)
        ); 
ERSETZE durch:

Code: Alles auswählen

            'S_TOPIC_TYPE_SWITCH'    => ($s_type_switch == $s_type_switch_test) ? -1 : $s_type_switch_test); 
Füge NACH diesser Zeile 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,$row['topic_poster']);
            foreach ($groups as $grouprec)
            {
                $template_vars['S_AUTHOR_GROUP_' . $grouprec['group_id']] = true;
            } 
            $template->assign_block_vars('topicrow', $template_vars);
        // END Groups for User     
Zuletzt geändert von Nuramon am 24.08.2012 12:09, insgesamt 1-mal geändert.
Das Pinke Forum
Das Pinke Forum - werde Teil einer freundlichen Community, die dir bei Fragen rund um Liebe, Sex, Ernährung, Schule oder bei Problemen aller Art zur Seite steht! Verfasse Beiträge, erstelle Threads und lern nette Leute kennen; kostenlos und toll betreut.
Antworten

Zurück zu „[3.0.x] Administration, Benutzung und Betrieb“