Seite 2 von 2
Verfasst: 16.08.2004 23:11
von froggiton
die junior_color habe ich ja schon installiert. damit in der "normalen" wer ist online liste die junior admins farbig anders dargestellt werden. nun brauche ich diese anpassung noch für den last visit.
denn dort werden die junior admins in der normalen farbe angezeigt.
hoffe du verstehst mein kaudawelsch und kannst mir helfen.
Verfasst: 19.08.2004 17:16
von froggiton
hat da jemand eine idee und kann mir weiterhelfen?
im php bin ich nicht gut und bekomme es einfach net hin
Verfasst: 19.08.2004 20:56
von Acid
Ich hab mal an den
Junior Admin MOD bzw.
Color Groups MOD jeweils eine .txt Datei angehangen, die weiterhelfen sollte.
Verfasst: 19.08.2004 22:16
von froggiton
danke klappt hervorragend.
nun habe ich das prob, das ich das für diesen code nicht umsetzen kann, kannst du mir dabei evtl. helfen?
der code ist in der includes/functions.php
ich habe versucht den code auch hierfür umzusetzen, aber leider funzt das nicht. bei dem users of the day habe ich es hinbekommen, aber hier bin ich am verzweifeln...
Code: Alles auswählen
// AWI
// Top 10 Posters
function top_posters($str_input, $show_admin, $show_mod)
{
global $db, $phpEx, $theme;
// Show All
if ( ( $show_admin == '1' ) && ( $show_mod == '1' ) )
{
$sql = "SELECT u.user_id, u.username, u.user_posts, u.user_level, count(u.user_id) as user_posts
FROM " . USERS_TABLE . " u, " . POSTS_TABLE . " p
WHERE (u.user_id <> " . ANONYMOUS . ") AND (u.user_id = p.poster_id)
GROUP BY user_id, username
ORDER BY user_posts DESC
LIMIT $str_input";
}
// Show Admin But Not Moderators
elseif ( ( $show_admin == '1' ) && ( $show_mod == '0' ) )
{
$sql = "SELECT u.user_id, u.username, u.user_posts, u.user_level, count(u.user_id) as user_posts
FROM " . USERS_TABLE . " u, " . POSTS_TABLE . " p
WHERE (u.user_id <> " . ANONYMOUS . ") AND (u.user_id = p.poster_id) AND (u.user_level != " . MOD . ")
GROUP BY user_id, username
ORDER BY user_posts DESC
LIMIT $str_input";
}
// Show Moderators But Not Admins
elseif ( ( $show_admin == '0' ) && ( $show_mod == '1' ) )
{
$sql = "SELECT u.user_id, u.username, u.user_posts, u.user_level, count(u.user_id) as user_posts
FROM " . USERS_TABLE . " u, " . POSTS_TABLE . " p
WHERE (u.user_id <> " . ANONYMOUS . ") AND (u.user_id = p.poster_id) AND (u.user_level != " . ADMIN . ")
GROUP BY user_id, username
ORDER BY user_posts DESC
LIMIT $str_input";
}
// Show Neither Admins Nor Moderators
else/// ( ( $show_admin == '0' ) && ( $show_mod == '0' ) )
{
$sql = "SELECT u.user_id, u.username, u.user_posts, u.user_level, count(u.user_id) as user_posts
FROM " . USERS_TABLE . " u, " . POSTS_TABLE . " p
WHERE (u.user_id <> " . ANONYMOUS . ") AND (u.user_id = p.poster_id) AND (u.user_level != " . ADMIN . ") AND (u.user_level != " . MOD . ")
GROUP BY user_id, username
ORDER BY user_posts DESC
LIMIT $str_input";
}
//
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not query forum top poster information', '', __LINE__, __FILE__, $sql);
}
// $top_posters = array();
while( $row = $db->sql_fetchrow($result) )
{
$style_color = '';
if ( $row['user_level'] == ADMIN )
{
$row['username'] = '<b>' . $row['username'] . '</b>';
$style_color = 'style="color:#' . $theme['fontcolor3'] . '"';
}
else if ( $row['user_level'] == MOD )
{
$row['username'] = '<b>' . $row['username'] . '</b>';
$style_color = 'style="color:#' . $theme['fontcolor2'] . '"';
}
$top_posters .= '<a onMouseOver="document.all.posters.stop()" onMouseOut="document.all.posters.start()" href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'>' . $row['username'] . '</a> (' . $row['user_posts'] . ') ';
}
return $top_posters;
}
// Top 10 Posters
// AWI
Verfasst: 20.08.2004 14:32
von Acid
Was´n jetzt.. Color MOD oder Junior Definierung?
Verfasst: 20.08.2004 14:47
von froggiton
ja hier wird eine laufschrift mit den top 10 postern erzeugt, die farbe in der die usernamen dargestellt werden, stimmen für alle bis auf den junior admin. (das ist etw sowas wie die ansicht der user, die online sind - hier eben nur die top 10 posters)
war das jetzt besser zu verstehen?
ich hoffe...
Verfasst: 20.08.2004 15:11
von Acid
Nicht so ganz..
Um die Farbe der Junior Admins anzupassen, gäbe es ja zwei Möglichkeiten.
Entweder sind die Junior Admins in einer Farbgruppe, so das man den Top Poster-Code mit dem Color Group MOD abgleichen müsste.
Oder die Juniors werden über direkte Angabe einer Farbe farblich dargestellt (wenn man den Color MOD nicht installiert bzw. die Junior Admins nicht in eine Farbgruppe gesteckt hat), so das man den Top Poster-Code um eine Abfrage zu den Junior Admins erweitern müsste.
Verfasst: 20.08.2004 15:56
von froggiton
froggiton hat geschrieben:die junior_color.txt habe ich ja schon installiert. damit in der "normalen" wer ist online liste die junior admins farbig anders dargestellt werden. nun brauche ich diese anpassung noch für den last visit.
denn dort werden die junior admins in der normalen farbe angezeigt.
dann habe ich für den last visit mod die last_visit_mod.txt installiert und dementsprechend auch für den user of the day habe ich die last_visit_mod.txt genommen und abgeändert damit es funzt. (habe die txt`s aus der datenbank - junior admin)
nun brauche ich noch eine anpassung für einen mod (AWI-top ten Posters)
damit auch dort die junior admins farblich richtig dargestellt werden.
ist die verständlichkeit nun ok? ^^
Code: Alles auswählen
// AWI
// Top 10 Posters
function top_posters($str_input, $show_admin, $show_mod)
{
global $db, $phpEx, $theme;
// Show All
if ( ( $show_admin == '1' ) && ( $show_mod == '1' ) )
{
$sql = "SELECT u.user_id, u.username, u.user_posts, u.user_level, count(u.user_id) as user_posts
FROM " . USERS_TABLE . " u, " . POSTS_TABLE . " p
WHERE (u.user_id <> " . ANONYMOUS . ") AND (u.user_id = p.poster_id)
GROUP BY user_id, username
ORDER BY user_posts DESC
LIMIT $str_input";
}
// Show Admin But Not Moderators
elseif ( ( $show_admin == '1' ) && ( $show_mod == '0' ) )
{
$sql = "SELECT u.user_id, u.username, u.user_posts, u.user_level, count(u.user_id) as user_posts
FROM " . USERS_TABLE . " u, " . POSTS_TABLE . " p
WHERE (u.user_id <> " . ANONYMOUS . ") AND (u.user_id = p.poster_id) AND (u.user_level != " . MOD . ")
GROUP BY user_id, username
ORDER BY user_posts DESC
LIMIT $str_input";
}
// Show Moderators But Not Admins
elseif ( ( $show_admin == '0' ) && ( $show_mod == '1' ) )
{
$sql = "SELECT u.user_id, u.username, u.user_posts, u.user_level, count(u.user_id) as user_posts
FROM " . USERS_TABLE . " u, " . POSTS_TABLE . " p
WHERE (u.user_id <> " . ANONYMOUS . ") AND (u.user_id = p.poster_id) AND (u.user_level != " . ADMIN . ")
GROUP BY user_id, username
ORDER BY user_posts DESC
LIMIT $str_input";
}
// Show Neither Admins Nor Moderators
else/// ( ( $show_admin == '0' ) && ( $show_mod == '0' ) )
{
$sql = "SELECT u.user_id, u.username, u.user_posts, u.user_level, count(u.user_id) as user_posts
FROM " . USERS_TABLE . " u, " . POSTS_TABLE . " p
WHERE (u.user_id <> " . ANONYMOUS . ") AND (u.user_id = p.poster_id) AND (u.user_level != " . ADMIN . ") AND (u.user_level != " . MOD . ")
GROUP BY user_id, username
ORDER BY user_posts DESC
LIMIT $str_input";
}
//
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not query forum top poster information', '', __LINE__, __FILE__, $sql);
}
// $top_posters = array();
while( $row = $db->sql_fetchrow($result) )
{
$style_color = '';
if ( $row['user_level'] == ADMIN )
{
$row['username'] = '<b>' . $row['username'] . '</b>';
$style_color = 'style="color:#' . $theme['fontcolor3'] . '"';
}
else if ( $row['user_level'] == MOD )
{
$row['username'] = '<b>' . $row['username'] . '</b>';
$style_color = 'style="color:#' . $theme['fontcolor2'] . '"';
}
$top_posters .= '<a onMouseOver="document.all.posters.stop()" onMouseOut="document.all.posters.start()" href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'>' . $row['username'] . '</a> (' . $row['user_posts'] . ') ';
}
return $top_posters;
}
// Top 10 Posters
// AWI
Verfasst: 20.08.2004 18:48
von Acid
die junior_color.txt habe ich ja schon installiert. damit in der "normalen" wer ist online liste die junior admins farbig anders dargestellt werden. nun brauche ich diese anpassung noch für den last visit.
denn dort werden die junior admins in der normalen farbe angezeigt.
ach, das hatte ich überlesen.
Im Regelfall sind die Anpassungen für die verschiedenen Bereiche/MODs identisch, nur das man ein wenig die Variabeln anpassen muss usw.
Der Code zur Ausgabe der Namen vom TopPoster MOD ist dem der page_header.php ähnlich (blau ist neu).
include_once($phpbb_root_path . 'includes/functions_jr_admin.' . $phpEx);
$jr_admin_userdata = jr_admin_get_user_info($row['user_id']);
$style_color = '';
if ( $row['user_level'] == ADMIN )
{
$row['username'] = '<b>' . $row['username'] . '</b>';
$style_color = 'style="color:#' . $theme['fontcolor3'] . '"';
}
else if ( $row['user_id'] == $jr_admin_userdata['user_id'] )
{
$row['username'] = '<b>' . $row['username'] . '</b>';
$style_color = 'style="color:#FF0000"';
}
else if ( $row['user_level'] == MOD )
{
$row['username'] = '<b>' . $row['username'] . '</b>';
$style_color = 'style="color:#' . $theme['fontcolor2'] . '"';
}
Verfasst: 20.08.2004 19:15
von froggiton
danke das hat wunderbar geklappt!
thx