Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.8 veröffentlicht (17.10.16)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Teamliste erweitern/ändern.
#1
Hallo! Smile
(Vllt. kann Garlant hier helfen, er hatte damals schon bei 'Mitgliederliste erweitern' gut geholfen).

Ich möchte die Teamliste ändern, hierzu siehe den Screen.
Das lässt sich sicher umsetzen, oder? Smile

Danke schonmal für die Hilfe.
Danke! Smile


Angehängte Dateien Thumbnail(s)
   
Zitieren
#2
Öffne Showteam.php
Suche:
PHP-Code:
$query $db->simple_select(TABLE_PREFIX."users""uid, username, displaygroup, usergroup, ignorelist, hideemail, receivepms""displaygroup IN ($groups_in) OR (displaygroup='0' AND usergroup IN ($groups_in)) OR uid IN ($users_in)", array('order_by' => 'username')); 
Ersetze mit:
PHP-Code:
$query $db->simple_select(TABLE_PREFIX."users""uid, username, displaygroup, usergroup, ignorelist, hideemail, receivepms, lastactive, invisible, lastvisit""displaygroup IN ($groups_in) OR (displaygroup='0' AND usergroup IN ($groups_in)) OR uid IN ($users_in)", array('order_by' => 'username')); 
Suche:
PHP-Code:
        if($user['receivepms'] != 'no' && $mybb->settings['enablepms'] != 'no' && strpos(",".$user['ignorelist'].","",".$mybb->user['uid'].",") === false)
        {
            eval(
"\$pmcode = \"".$templates->get("postbit_pm")."\";");
        } 
Füge darunter ein:
PHP-Code:
        if($user['lastactive'] > $timecut && ($user['invisible'] != "yes" || $mybb->usergroup['canviewwolinvis'] == "yes") && $user['lastvisit'] != $user['lastactive'])
        {
            eval(
"\$status = \"".$templates->get("postbit_online")."\";");
            
$status sprintf($lang->showteam_status$status);
        }
        else 
        {
            eval(
"\$status = \"".$templates->get("postbit_offline")."\";");
            
$status sprintf($lang->showteam_status$status);
        } 

Öffne showteam.lang.php:
Füge ein:
PHP-Code:
$l['showteam_status'] = "ist {1}"

Öffne das Template "showteam_moderators_mod"
Ersetze mit:
Code:
<tr>
<td class="trow1">
<span class="smalltext"><a href="member.php?action=profile&amp;uid={$user['uid']}"><strong>{$user['username']}</strong></a> {$status}<br />
<strong>&#x2514;&nbsp;Moderiert folgende Foren:</strong></span>
<span class="smalltext">{$forumslist}</span> <br />
{$emailcode}
{$pmcode}
</td>
</tr>

Öffne das Template:
showteam_moderators_forum
Ersetze mit:
Code:
<br /><span style="margin-left: 60px;"><a href="forumdisplay.php?fid={$forum['fid']}">{$forum['name']}</a></span>

Öffne das Template: showteam_moderators
Entferne:
Code:
<tr>
<td class="tcat"><span class="smalltext"><strong>{$lang->mod_username}</strong></span></td>
<td class="tcat"><span class="smalltext"><strong>{$lang->mod_forums}</strong></span></td>
<td class="tcat"><span class="smalltext"><strong>{$lang->mod_email}</strong></span></td>
<td class="tcat"><span class="smalltext"><strong>{$lang->mod_pm}</strong></span></td>
</tr>

Fertig.

Mfg Garlant
Ich gebe keinen Support per Messenger oder PN!
Zitieren
#3
Danke Garlant.
Lassen sich die Foren noch nach Kategorien sortieren, damit es Übersichtlicher wirkt? Smile
Zitieren
#4
Ohne größere Änderung ist das nicht möglich.
Allerdings gibt es einen Umweg, wie du das machen kannst.
Dazu musst du deine Moderatoren allerdings der jeweiligen Kategorie zuordnen. (Es gibt noch eine andere Möglichkeit, die wird aber zur Performencelast und lässt sich wie gesagt nur durch eine größere Änderung machen).

Öffne: showteam.php
Suche:
PHP-Code:
    $query $db->query("
        SELECT m.*, f.name
        FROM "
.TABLE_PREFIX."moderators m
        LEFT JOIN "
.TABLE_PREFIX."users u ON (u.uid=m.uid)
        LEFT JOIN "
.TABLE_PREFIX."forums f ON (f.fid=m.fid)
        WHERE f.active = 'yes'
        ORDER BY u.username
    "
); 
Ersetze mit:
PHP-Code:
    $query $db->query("
        SELECT m.*, f.name, f.type
        FROM "
.TABLE_PREFIX."moderators m
        LEFT JOIN "
.TABLE_PREFIX."users u ON (u.uid=m.uid)
        LEFT JOIN "
.TABLE_PREFIX."forums f ON (f.fid=m.fid)
        WHERE f.active = 'yes'
        ORDER BY u.username, f.type asc, f.disporder asc
    "
); 
Suche:
PHP-Code:
eval("\$forumlist .= \"".$templates->get("showteam_moderators_forum")."\";"); 
Ersetze mit:
PHP-Code:
                if($forum['type'] != 'c')
                {
                    eval(
"\$forumlist .= \"".$templates->get("showteam_moderators_forum")."\";");
                }
                else 
                {
                    eval(
"\$forumlist .= \"".$templates->get("showteam_moderators_forum_categorie")."\";");
                } 
Speichern und schließen.

Erstelle das Template:
showteam_moderators_forum_categorie
PHP-Code:
<br /><span class ="smalltext" style="margin-left: 60px;"><strong>{$forum['name']}</strong></span

Mfg Garlant
Ich gebe keinen Support per Messenger oder PN!
Zitieren
#5
Garlant schrieb:Ohne größere Änderung ist das nicht möglich.
Allerdings gibt es einen Umweg, wie du das machen kannst.
Dazu musst du deine Moderatoren allerdings der jeweiligen Kategorie zuordnen. (Es gibt noch eine andere Möglichkeit, die wird aber zur Performencelast und lässt sich wie gesagt nur durch eine größere Änderung machen).

Das Problem ist, setzte ich meine Mods in die Kategorie werden die sicher überall als Mod angezeigt? Oder nicht? Weil ich hab die Codeänderung vorgenommen, das die Mods nur in dem Forum in der Mod-Farbe angezeigt werden, wo diese eingetragen sind.

Wie würde den die andere Methode aussehen?
Zitieren
#6
Die andere Methode würde ungefähr so hier aussehen (Rohform und lediglich hiermit herumgespielt):
PHP-Code:
$query $db->query("SELECT fid, parentlist, name, type FROM ".TABLE_PREFIX."forums where parentlist like '%".$forum['fid']."'");
while (
$row $db->fetch_array($query)) 
{
    
$ausgabe1 explode(","$row['parentlist']);
    foreach (
$ausgabe1 as $parentid)
    {
        if(
$parentid != $row['fid'])
        {
            
$parent_query $db->simple_select(TABLE_PREFIX."forums","name, fid, type""fid='".$parentid."' AND type='c'");
            
$parent_result $db->fetch_array($parent_query);
            
            
$ausgabe .= $parent_result['name'].", Type:".$parent_result['type']."<br />";
        }
    }

Ich gebe keinen Support per Messenger oder PN!
Zitieren
#7
Wie meinst du das genau mit der Performenclast? Wie würde das aussehen? Bzw. was würdest du mir eher von den beiden Methoden raten zu nutzen?
Zitieren
#8
Die untere Methode wird wesentlich mehr Queries verbrauchen, da mehr Queries generiert werden müssen (pro Forum 1 neuer query der gebraucht wird, und Mulitipliziert mal die Anzahl deiner Moderatoren). Also wird die Teamseite mit steigender Zahl der Queries langsamer und gleichzeitig steigt die Last auf die Datenbank.
Die 1. Methode generiert keinen Query mehr, sie erweitertet einen bereits bestehenden Query um 1,2 Datensätze.

Ich rate zur "schonenden Methode", ist zumindest meine Sicht.

Kleines Update:
PHP-Code:
    $query $db->query("
        SELECT m.*, f.name, f.type
        FROM "
.TABLE_PREFIX."moderators m
        LEFT JOIN "
.TABLE_PREFIX."users u ON (u.uid=m.uid)
        LEFT JOIN "
.TABLE_PREFIX."forums f ON (f.fid=m.fid)
        WHERE f.active = 'yes'
        ORDER BY u.username, f.type asc, f.disporder asc
    "
); 
Bitte nochmal ersetzen mit:
PHP-Code:
    $query $db->query("
        SELECT m.*, f.name, f.type
        FROM "
.TABLE_PREFIX."moderators m
        LEFT JOIN "
.TABLE_PREFIX."users u ON (u.uid=m.uid)
        LEFT JOIN "
.TABLE_PREFIX."forums f ON (f.fid=m.fid)
        WHERE f.active = 'yes'
        ORDER BY u.username, f.fid asc, f.type
    "
); 

Mfg Garlant
Ich gebe keinen Support per Messenger oder PN!
Zitieren
#9
Irgendwie klappt das nicht, nein - nicht so, wie ich es möchte.

Es soll die Kategorie stehen (nicht als LINK), Beispiel:

SweetySchnuffel moderiert folgende Foren...

...in Kategorie A:
-> Test1
-> Test2

usw. Smile
So soll das aussehen. :x
(Die Farbe deutet draufhin, das dies ein Link darstellen soll.)
Zitieren
#10
Die Kategorien sind nicht verlinkt, lediglich die Foren.

Mfg Garlant
Ich gebe keinen Support per Messenger oder PN!
Zitieren


Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  2.Gruppenlogo in Mitgliederliste und in Teamliste Cream1974 1 891 13.04.2008, 14:17
Letzter Beitrag: StefanT