Teamseite...
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.
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.
- DayWalker74
- Mitglied
- Beiträge: 26
- Registriert: 25.11.2009 13:58
Teamseite...
Ich möchte auch gerne so ne Ähnliche TeamSeite, wie Ihr habt. Gibt´s sowas hier ?
Re: Teamseite...
ich glaube, das ist eine phpbb-eigene anpassung
evtl. hilft dir das weiter, wenn du dir auf der phpbb.de-teamsite das html anzeigen lässt und dir das anschaust.

evtl. hilft dir das weiter, wenn du dir auf der phpbb.de-teamsite das html anzeigen lässt und dir das anschaust.
There are 10 types of people in the world: Those who understand binary and those who don't. 
Support Toolkit in Deutsch

Support Toolkit in Deutsch
- nickvergessen
- Ehrenadmin
- Beiträge: 11559
- Registriert: 09.10.2006 21:56
- Wohnort: Stuttgart, Germany
- Kontaktdaten:
Re: Teamseite...
Nö gibt's bislang nicht.DayWalker74 hat geschrieben:Gibt´s sowas hier?
kein Support per PN
- DayWalker74
- Mitglied
- Beiträge: 26
- Registriert: 25.11.2009 13:58
Re: Teamseite...
Das ist schade, denn so eine schöne Seite ( mit Bildern/Avataranzeige ) möcht ich auch gerne haben.
Re: Teamseite...
Heho,
Du könntest ja einfach eine statische Seite mit deinem Team erstellen.
Dazu kannst Du den Static-Pages MOD nutzen oder Dich selbst ans Werk machen, irgendwo in der KB findet sich dazu auch noch eine Anleitung.
lg
Du könntest ja einfach eine statische Seite mit deinem Team erstellen.
Dazu kannst Du den Static-Pages MOD nutzen oder Dich selbst ans Werk machen, irgendwo in der KB findet sich dazu auch noch eine Anleitung.

lg
- DayWalker74
- Mitglied
- Beiträge: 26
- Registriert: 25.11.2009 13:58
Re: Teamseite...
Hab ja schon ne recht gute TeamSeite, nur leider Ohne Bilder und weitere Infos.
Siehe: http://darkness-fun-radio.de/leaders.php
Nur diese Seite sollte dynamisch bleiben, damit wenn wir einen neuen DJ bekommen, ich nicht jedes Mal die Seite bearbeiten muss.
Siehe: http://darkness-fun-radio.de/leaders.php
Nur diese Seite sollte dynamisch bleiben, damit wenn wir einen neuen DJ bekommen, ich nicht jedes Mal die Seite bearbeiten muss.
- DayWalker74
- Mitglied
- Beiträge: 26
- Registriert: 25.11.2009 13:58
Re: Teamseite...
So, ich habe noch ein wenig gebastelt.
Nur werden Avatare & weitere Infos nicht angezeigt.
http://darkness-fun-radio.de/leaders.php <- Das ist die Seite dazu.
Wenn man dort auf "Anzeigen" klickt, öffnet sich ein div mit eigendlich dem UserProfil ( mit Bild u weitere Infos ).
Ich habe fasst alle funktionen aus der memberlist.php eingefügt, nur es geht nicht.
Nur werden Avatare & weitere Infos nicht angezeigt.
http://darkness-fun-radio.de/leaders.php <- Das ist die Seite dazu.
Wenn man dort auf "Anzeigen" klickt, öffnet sich ein div mit eigendlich dem UserProfil ( mit Bild u weitere Infos ).
Ich habe fasst alle funktionen aus der memberlist.php eingefügt, nur es geht nicht.

Code: Alles auswählen
leaders.php:
<?php
$abmelden = '';
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './phpbb/';
//$phpbb_root_path = 'phpbb/';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
include($phpbb_root_path . 'topic_top.php');
include($phpbb_root_path . 'includes/functions_user.' . $phpEx);
$user->session_begin();
$auth->acl($user->data);
$user->setup();
$resultat = '';
$status = '';
// Grab data
$mode = request_var('mode', '');
if (!in_array($mode, array('', 'viewprofile')))
{
trigger_error('NO_MODE');
}
switch ($mode)
{
case 'viewprofile':
// Display a profile
if ($user_id == ANONYMOUS && !$username)
{
trigger_error('NO_USER');
}
// Get user...
$sql = 'SELECT *
FROM ' . USERS_TABLE . '
WHERE ' . (($username) ? "username_clean = '" . $db->sql_escape(utf8_clean_string($username)) . "'" : "user_id = $user_id");
$result = $db->sql_query($sql);
$member = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
if (!$member)
{
trigger_error('NO_USER');
}
// a_user admins and founder are able to view inactive users and bots to be able to manage them more easily
// Normal users are able to see at least users having only changed their profile settings but not yet reactivated.
if (!$auth->acl_get('a_user') && $user->data['user_type'] != USER_FOUNDER)
{
if ($member['user_type'] == USER_IGNORE)
{
trigger_error('NO_USER');
}
else if ($member['user_type'] == USER_INACTIVE && $member['user_inactive_reason'] != INACTIVE_PROFILE)
{
trigger_error('NO_USER');
}
}
$user_id = (int) $member['user_id'];
// Do the SQL thang
$sql = 'SELECT g.group_id, g.group_name, g.group_type
FROM ' . GROUPS_TABLE . ' g, ' . USER_GROUP_TABLE . " ug
WHERE ug.user_id = $user_id
AND g.group_id = ug.group_id" . ((!$auth->acl_gets('a_group', 'a_groupadd', 'a_groupdel')) ? ' AND g.group_type <> ' . GROUP_HIDDEN : '') . '
AND ug.user_pending = 0
ORDER BY g.group_type, g.group_name';
$result = $db->sql_query($sql);
$group_options = '';
while ($row = $db->sql_fetchrow($result))
{
$group_options .= '<option value="' . $row['group_id'] . '"' . (($row['group_id'] == $member['group_id']) ? ' selected="selected"' : '') . '>' . (($row['group_type'] == GROUP_SPECIAL) ? $user->lang['G_' . $row['group_name']] : $row['group_name']) . '</option>';
}
$db->sql_freeresult($result);
// What colour is the zebra
$sql = 'SELECT friend, foe
FROM ' . ZEBRA_TABLE . "
WHERE zebra_id = $user_id
AND user_id = {$user->data['user_id']}";
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$foe = ($row['foe']) ? true : false;
$friend = ($row['friend']) ? true : false;
$db->sql_freeresult($result);
if ($config['load_onlinetrack'])
{
$sql = 'SELECT MAX(session_time) AS session_time, MIN(session_viewonline) AS session_viewonline
FROM ' . SESSIONS_TABLE . "
WHERE session_user_id = $user_id";
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
$member['session_time'] = (isset($row['session_time'])) ? $row['session_time'] : 0;
$member['session_viewonline'] = (isset($row['session_viewonline'])) ? $row['session_viewonline'] : 0;
unset($row);
}
if ($config['load_user_activity'])
{
display_user_activity($member);
}
// Do the relevant calculations
$memberdays = max(1, round((time() - $member['user_regdate']) / 86400));
$posts_per_day = $member['user_posts'] / $memberdays;
$percentage = ($config['num_posts']) ? min(100, ($member['user_posts'] / $config['num_posts']) * 100) : 0;
if ($member['user_sig'])
{
$member['user_sig'] = censor_text($member['user_sig']);
if ($member['user_sig_bbcode_bitfield'])
{
include_once($phpbb_root_path . 'includes/bbcode.' . $phpEx);
$bbcode = new bbcode();
$bbcode->bbcode_second_pass($member['user_sig'], $member['user_sig_bbcode_uid'], $member['user_sig_bbcode_bitfield']);
}
$member['user_sig'] = bbcode_nl2br($member['user_sig']);
$member['user_sig'] = smiley_text($member['user_sig']);
}
$poster_avatar = get_user_avatar($member['user_avatar'], $member['user_avatar_type'], $member['user_avatar_width'], $member['user_avatar_height']);
$template->assign_vars(show_profile($member));
// Custom Profile Fields
$profile_fields = array();
if ($config['load_cpf_viewprofile'])
{
include_once($phpbb_root_path . 'includes/functions_profile_fields.' . $phpEx);
$cp = new custom_profile();
$profile_fields = $cp->generate_profile_fields_template('grab', $user_id);
$profile_fields = (isset($profile_fields[$user_id])) ? $cp->generate_profile_fields_template('show', false, $profile_fields[$user_id]) : array();
}
// We need to check if the module 'zebra' is accessible
$zebra_enabled = false;
if ($user->data['user_id'] != $user_id && $user->data['is_registered'])
{
include_once($phpbb_root_path . 'includes/functions_module.' . $phpEx);
$module = new p_master();
$module->list_modules('ucp');
$module->set_active('zebra');
$zebra_enabled = ($module->active_module === false) ? false : true;
unset($module);
}
// If the user has m_approve permission or a_user permission, then list then display unapproved posts
if ($auth->acl_getf_global('m_approve') || $auth->acl_get('a_user'))
{
$sql = 'SELECT COUNT(post_id) as posts_in_queue
FROM ' . POSTS_TABLE . '
WHERE poster_id = ' . $user_id . '
AND post_approved = 0';
$result = $db->sql_query($sql);
$member['posts_in_queue'] = (int) $db->sql_fetchfield('posts_in_queue');
$db->sql_freeresult($result);
}
else
{
$member['posts_in_queue'] = 0;
}
$template->assign_vars(array(
'L_POSTS_IN_QUEUE' => $user->lang('NUM_POSTS_IN_QUEUE', $member['posts_in_queue']),
'POSTS_DAY' => sprintf($user->lang['POST_DAY'], $posts_per_day),
'POSTS_PCT' => sprintf($user->lang['POST_PCT'], $percentage),
'OCCUPATION' => (!empty($member['user_occ'])) ? censor_text($member['user_occ']) : '',
'INTERESTS' => (!empty($member['user_interests'])) ? censor_text($member['user_interests']) : '',
'SIGNATURE' => $member['user_sig'],
'POSTS_IN_QUEUE'=> $member['posts_in_queue'],
'PROFILE_IMG' => $user->img('icon_user_profile', $user->lang['PROFILE']),
'AVATAR_IMG' => $poster_avatar,
'PM_IMG' => $user->img('icon_contact_pm', $user->lang['SEND_PRIVATE_MESSAGE']),
'EMAIL_IMG' => $user->img('icon_contact_email', $user->lang['EMAIL']),
'WWW_IMG' => $user->img('icon_contact_www', $user->lang['WWW']),
'ICQ_IMG' => $user->img('icon_contact_icq', $user->lang['ICQ']),
'AIM_IMG' => $user->img('icon_contact_aim', $user->lang['AIM']),
'MSN_IMG' => $user->img('icon_contact_msnm', $user->lang['MSNM']),
'YIM_IMG' => $user->img('icon_contact_yahoo', $user->lang['YIM']),
'JABBER_IMG' => $user->img('icon_contact_jabber', $user->lang['JABBER']),
'SEARCH_IMG' => $user->img('icon_user_search', $user->lang['SEARCH']),
'S_PROFILE_ACTION' => append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=group'),
'S_GROUP_OPTIONS' => $group_options,
'S_CUSTOM_FIELDS' => (isset($profile_fields['row']) && sizeof($profile_fields['row'])) ? true : false,
'U_USER_ADMIN' => ($auth->acl_get('a_user')) ? append_sid("{$phpbb_root_path}adm/index.$phpEx", 'i=users&mode=overview&u=' . $user_id, true, $user->session_id) : '',
'U_USER_BAN' => ($auth->acl_get('m_ban') && $user_id != $user->data['user_id']) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=ban&mode=user&u=' . $user_id, true, $user->session_id) : '',
'U_MCP_QUEUE' => ($auth->acl_getf_global('m_approve')) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=queue', true, $user->session_id) : '',
'U_SWITCH_PERMISSIONS' => ($auth->acl_get('a_switchperm') && $user->data['user_id'] != $user_id) ? append_sid("{$phpbb_root_path}ucp.$phpEx", "mode=switch_perm&u={$user_id}") : '',
'S_ZEBRA' => ($user->data['user_id'] != $user_id && $user->data['is_registered'] && $zebra_enabled) ? true : false,
'U_ADD_FRIEND' => (!$friend) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=zebra&add=' . urlencode(htmlspecialchars_decode($member['username']))) : '',
'U_ADD_FOE' => (!$foe) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=zebra&mode=foes&add=' . urlencode(htmlspecialchars_decode($member['username']))) : '',
'U_REMOVE_FRIEND' => ($friend) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=zebra&remove=1&usernames[]=' . $user_id) : '',
'U_REMOVE_FOE' => ($foe) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=zebra&remove=1&mode=foes&usernames[]=' . $user_id) : '',
));
if (!empty($profile_fields['row']))
{
$template->assign_vars($profile_fields['row']);
}
if (!empty($profile_fields['blockrow']))
{
foreach ($profile_fields['blockrow'] as $field_data)
{
$template->assign_block_vars('custom_fields', $field_data);
}
}
// Inactive reason/account?
if ($member['user_type'] == USER_INACTIVE)
{
$user->add_lang('acp/common');
$inactive_reason = $user->lang['INACTIVE_REASON_UNKNOWN'];
switch ($member['user_inactive_reason'])
{
case INACTIVE_REGISTER:
$inactive_reason = $user->lang['INACTIVE_REASON_REGISTER'];
break;
case INACTIVE_PROFILE:
$inactive_reason = $user->lang['INACTIVE_REASON_PROFILE'];
break;
case INACTIVE_MANUAL:
$inactive_reason = $user->lang['INACTIVE_REASON_MANUAL'];
break;
case INACTIVE_REMIND:
$inactive_reason = $user->lang['INACTIVE_REASON_REMIND'];
break;
}
$template->assign_vars(array(
'S_USER_INACTIVE' => true,
'USER_INACTIVE_REASON' => $inactive_reason)
);
}
// Now generate page title
$page_title = sprintf($user->lang['VIEWING_PROFILE'], $member['username']);
$template_html = 'leaders.html';
break;
}
// Set some stats, get posts count from forums data if we... hum... retrieve all forums data
$total_posts = $config['num_posts'];
$total_topics = $config['num_topics'];
$total_users = $config['num_users'];
$l_total_user_s = ($total_users == 0) ? 'TOTAL_USERS_ZERO' : 'TOTAL_USERS_OTHER';
$l_total_post_s = ($total_posts == 0) ? 'TOTAL_POSTS_ZERO' : 'TOTAL_POSTS_OTHER';
$l_total_topic_s = ($total_topics == 0) ? 'TOTAL_TOPICS_ZERO' : 'TOTAL_TOPICS_OTHER';
//
if($user->data['is_registered'])
{
$abmelden = $phpbb_root_path . 'ucp.php?mode=logout&redirect=../portal.php' . '&sid=' . $user->data['session_id'];
}
//
if ($auth->acl_get('a_')){
$status = '[A]';
}
else if ($auth->acl_get('m_')){
$status = '[M]';
}
else if ($auth->acl_get('u_')){
$status = '';
}
else $status = 'Gast';
include($phpbb_root_path . 'topic_bottom.php');
page_header('Portal');
$template->set_filenames(array(
'body' => 'leaders.html')
);
//
// Recent topic (only show normal topic)
//
/* Censor title, return short title
*
* @param $title string title to censor
* @param $limit int short title character limit
*
*/
function character_limit(&$title, $limit = 0)
{
$title = censor_text($title);
if ($limit > 0)
{
return (strlen(utf8_decode($title)) > $limit + 3) ? truncate_string($title, $limit) . '...' : $title;
}
else
{
return $title;
}
}
$sql = 'SELECT t.topic_title, t.forum_id, t.topic_id, t.topic_last_post_id, t.topic_last_post_time, u.username
FROM ' . TOPICS_TABLE . ' t, ' . USERS_TABLE . ' u
WHERE topic_status <> 2
AND topic_approved = 1
AND topic_type = 0
AND t.topic_last_poster_id = u.user_id
ORDER BY t.topic_last_post_time DESC';
// ' . $sql_where . ' entfernt in vorletzter Zeile, direkt vor ORDER BY
$result = $db->sql_query_limit($sql, 100);
$i=0;
while( ($row = $db->sql_fetchrow($result)) && ($row['topic_title'] != '') )
{
// auto auth
if ( ($auth->acl_get('f_read', $row['forum_id'])) || ($row['forum_id'] == '0') )
{
if ($i<15) {
$template->assign_block_vars('latest_topics', array(
'USERNAME' => $row['username'],
'TITLE' => character_limit($row['topic_title'], 30),
'FULL_TITLE' => censor_text($row['topic_title']),
'U_VIEW_TOPIC' => append_sid($phpbb_root_path . "viewtopic.$phpEx", 'f=' . $row['forum_id'] . '&p=' . $row['topic_last_post_id'] . '#p' . $row['topic_last_post_id']),
'LAST_POST_TIME' => $user->format_date($row['topic_last_post_time'])
)
);
$i++;
}
}
}
$db->sql_freeresult($result);
// Generate birthday list if required ...
$birthday_list = '';
if ($config['load_birthdays'])
{
$now = getdate(time() + $user->timezone + $user->dst - (date('H', time()) - gmdate('H', time())) * 3600);
$sql = 'SELECT user_id, username, user_colour, user_birthday
FROM ' . USERS_TABLE . "
WHERE user_birthday LIKE '" . $db->sql_escape(sprintf('%2d-%2d-', $now['mday'], $now['mon'])) . "%'
AND user_type IN (" . USER_NORMAL . ', ' . USER_FOUNDER . ')';
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$user_colour = ($row['user_colour']) ? ' style="color:#' . $row['user_colour'] .'"' : '';
$birthday_list .= (($birthday_list != '') ? ', ' : '') . '<a' . $user_colour . ' href="' . append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $row['user_id']) . '">' . $row['username'] . '</a>';
if ($age = (int) substr($row['user_birthday'], -4))
{
$birthday_list .= ' (' . ($now['year'] - $age) . ')';
}
}
$db->sql_freeresult($result);
}
// Assign specific vars
$template->assign_vars(array(
'BIRTHDAY_LIST' => $birthday_list,
'S_DISPLAY_BIRTHDAY_LIST' => ($config['load_birthdays']) ? true : false,
)
);
$template->assign_vars(array(
'U_LASTTOPICS' => $resultat,
'U_USERSTATUS' => $status,
'U_USERNAME' => $user->data['username'],
'U_SID' => $user->data['session_id'],
'U_ABMELDEN' => $abmelden)
);
$db->sql_freeresult($result);
$user_ary = $auth->acl_get_list(false, array('a_', 'm_'), false);
$admin_id_ary = $global_mod_id_ary = $mod_id_ary = $forum_id_ary = array();
foreach ($user_ary as $forum_id => $forum_ary)
{
foreach ($forum_ary as $auth_option => $id_ary)
{
if (!$forum_id)
{
if ($auth_option == 'a_')
{
$admin_id_ary = array_merge($admin_id_ary, $id_ary);
}
else
{
$global_mod_id_ary = array_merge($global_mod_id_ary, $id_ary);
}
continue;
}
else
{
$mod_id_ary = array_merge($mod_id_ary, $id_ary);
}
if ($forum_id)
{
foreach ($id_ary as $id)
{
$forum_id_ary[$id][] = $forum_id;
}
}
}
}
$admin_id_ary = array_unique($admin_id_ary);
$global_mod_id_ary = array_unique($global_mod_id_ary);
$mod_id_ary = array_merge($mod_id_ary, $global_mod_id_ary);
$mod_id_ary = array_unique($mod_id_ary);
// Admin group id...
$sql = 'SELECT group_id
FROM ' . GROUPS_TABLE . "
WHERE group_name = 'ADMINISTRATORS'";
$result = $db->sql_query($sql);
$admin_group_id = (int) $db->sql_fetchfield('group_id');
$db->sql_freeresult($result);
// Get group memberships for the admin id ary...
$admin_memberships = group_memberships($admin_group_id, $admin_id_ary);
$admin_user_ids = array();
if (!empty($admin_memberships))
{
// ok, we only need the user ids...
foreach ($admin_memberships as $row)
{
$admin_user_ids[$row['user_id']] = true;
}
}
unset($admin_memberships);
$sql = 'SELECT forum_id, forum_name
FROM ' . FORUMS_TABLE;
$result = $db->sql_query($sql);
$forums = array();
while ($row = $db->sql_fetchrow($result))
{
$forums[$row['forum_id']] = $row['forum_name'];
}
$db->sql_freeresult($result);
$sql = $db->sql_build_query('SELECT', array(
'SELECT' => 'u.user_id, u.group_id as default_group, u.username, u.username_clean, u.user_colour, u.user_rank, u.user_posts, u.user_allow_pm, g.group_id, g.group_name, g.group_colour, g.group_type, ug.user_id as ug_user_id',
'FROM' => array(
USERS_TABLE => 'u',
GROUPS_TABLE => 'g'
),
'LEFT_JOIN' => array(
array(
'FROM' => array(USER_GROUP_TABLE => 'ug'),
'ON' => 'ug.group_id = g.group_id AND ug.user_pending = 0 AND ug.user_id = ' . $user->data['user_id']
)
),
'WHERE' => $db->sql_in_set('u.user_id', array_unique(array_merge($admin_id_ary, $mod_id_ary)), false, true) . '
AND u.group_id = g.group_id',
'ORDER_BY' => 'g.group_name ASC, u.username_clean ASC'
));
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$which_row = (in_array($row['user_id'], $admin_id_ary)) ? 'admin' : 'mod';
// We sort out admins not within the 'Administrators' group.
// Else, we will list those as admin only having the permission to view logs for example.
if ($which_row == 'admin' && empty($admin_user_ids[$row['user_id']]))
{
// Remove from admin_id_ary, because the user may be a mod instead
unset($admin_id_ary[array_search($row['user_id'], $admin_id_ary)]);
if (!in_array($row['user_id'], $mod_id_ary) && !in_array($row['user_id'], $global_mod_id_ary))
{
continue;
}
else
{
$which_row = 'mod';
}
}
$s_forum_select = '';
$undisclosed_forum = false;
if (isset($forum_id_ary[$row['user_id']]) && !in_array($row['user_id'], $global_mod_id_ary))
{
if ($which_row == 'mod' && sizeof(array_diff(array_keys($forums), $forum_id_ary[$row['user_id']])))
{
foreach ($forum_id_ary[$row['user_id']] as $forum_id)
{
if (isset($forums[$forum_id]))
{
if ($auth->acl_get('f_list', $forum_id))
{
$s_forum_select .= '<option value="">' . $forums[$forum_id] . '</option>';
}
else
{
$undisclosed_forum = true;
}
}
}
}
}
// If the mod is only moderating non-viewable forums we skip the user. There is no gain in displaying the person then...
$profile_fields = array();
if ($config['load_cpf_viewprofile'])
{
include_once($phpbb_root_path . 'includes/functions_profile_fields.' . $phpEx);
$cp = new custom_profile();
$profile_fields = $cp->generate_profile_fields_template('grab', $user_id);
$profile_fields = (isset($profile_fields[$user_id])) ? $cp->generate_profile_fields_template('show', false, $profile_fields[$user_id]) : array();
}
$poster_avatar = get_user_avatar($member['user_avatar'], $member['user_avatar_type'], $member['user_avatar_width'], $member['user_avatar_height']);
if (!$s_forum_select && $undisclosed_forum)
{
// $s_forum_select = '<option value="">' . $user->lang['FORUM_UNDISCLOSED'] . '</option>';
continue;
}
// The person is moderating several "public" forums, therefore the person should be listed, but not giving the real group name if hidden.
if ($row['group_type'] == GROUP_HIDDEN && !$auth->acl_gets('a_group', 'a_groupadd', 'a_groupdel') && $row['ug_user_id'] != $user->data['user_id'])
{
$group_name = $user->lang['GROUP_UNDISCLOSED'];
$u_group = '';
}
else
{
$group_name = ($row['group_type'] == GROUP_SPECIAL) ? $user->lang['G_' . $row['group_name']] : $row['group_name'];
$u_group = append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=group&g=' . $row['group_id']);
}
$rank_title = $rank_img = '';
get_user_rank($row['user_rank'], (($row['user_id'] == ANONYMOUS) ? false : $row['user_posts']), $rank_title, $rank_img, $rank_img_src);
$template->assign_block_vars($which_row, array(
'USER_ID' => $row['user_id'],
'FORUMS' => $s_forum_select,
'RANK_TITLE' => $rank_title,
'GROUP_NAME' => $group_name,
'PROFILE_IMG' => $user->img('icon_user_profile', $user->lang['PROFILE']),
'GROUP_COLOR' => $row['group_colour'],
'AVATAR_IMG' => get_user_avatar($data['user_avatar'], $data['user_avatar_type'], $data['user_avatar_width'], $data['user_avatar_height']),
'RANK_IMG' => $rank_img,
'RANK_IMG_SRC' => $rank_img_src,
'TOTAL_POSTS' => sprintf($user->lang[$l_total_post_s], $total_posts),
'TOTAL_TOPICS' => sprintf($user->lang[$l_total_topic_s], $total_topics),
'TOTAL_USERS' => sprintf($user->lang[$l_total_user_s], $total_users),
'NEWEST_USER' => sprintf($user->lang['NEWEST_USER'], get_username_string('full', $config['newest_user_id'], $config['newest_username'], $config['newest_user_colour'])),
'U_GROUP' => $u_group,
'U_PM' => ($config['allow_privmsg'] && $auth->acl_get('u_sendpm') && ($row['user_allow_pm'] || $auth->acl_gets('a_', 'm_') || $auth->acl_getf_global('m_'))) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=pm&mode=compose&u=' . $row['user_id']) : '',
'USERNAME_FULL' => get_username_string('full', $row['user_id'], $row['username'], "#ffffff"),
'USERNAME' => get_username_string('username', $row['user_id'], $row['username'], $row['user_colour']),
'USER_COLOR' => "#ffffff", //get_username_string('colour', $row['user_id'], $row['username'], $row['user_colour']),
'U_VIEW_PROFILE' => get_username_string('profile', $row['user_id'], $row['username'], $row['user_colour']),
));
}
$db->sql_freeresult($result);
page_footer();
?>
Code: Alles auswählen
Auszug aus der meiner TemplateDatei:
<table cellpadding='0' cellspacing='1' width='100%' class='tbl-border forum_idx_table'>
<thead>
<tr>
<th class="tbl2" width='50%'>Name:</th>
<th class="tbl2" width='50%'>Aufgabe:</th>
</tr>
</thead>
<tbody>
<!-- BEGIN admin -->
<tr class="<!-- IF admin.S_ROW_COUNT is even -->tbl2<!-- ELSE -->tbl2<!-- ENDIF -->">
<td class="tbl2" width='50%'><font style="color:#ffffff">{admin.USERNAME_FULL}</font><br />
<ul class="topiclist teamlist">
<li class="row bg1" onclick="toggle_data({admin.USER_ID});">
<span style="float: right; width: auto"><a href="?mode=viewprofile&u={admin.USER_ID}" onclick="toggle_data({admin.USER_ID});stop_handler(event);return false;" class="teamexpand" id="link{admin.USER_ID}">Anzeigen</a> </span>
</li>
<li id="row{admin.USER_ID}" style="display: none;" class="row bg1" onclick="toggle_data({admin.USER_ID});">
<!-- IF admin.AVATAR_IMG -->
{admin.AVATAR_IMG}<br/>
<!-- IF admin.RANK_TITLE -->{admin.RANK_TITLE}<!-- ENDIF -->
<!-- ENDIF -->
Profil von: {admin.USERNAME}<br/>
<!-- IF not admin.AVATAR_IMG -->
<!-- IF admin.RANK_TITLE -->{admin.L_RANK}:{admin.RANK_TITLE}<br/><!-- ENDIF -->
<!-- ENDIF -->
<!-- IF admin.S_USER_INACTIVE -->{admin.L_USER_IS_INACTIVE}:{admin.USER_INACTIVE_REASON}<br/><!-- ENDIF -->
<!-- IF admin.LOCATION -->{admin.L_LOCATION}:{admin.LOCATION}<br/><!-- ENDIF -->
<!-- IF admin.AGE -->{admin.L_AGE}:{admin.AGE}<br/><!-- ENDIF -->
<!-- IF admin.OCCUPATION -->{admin.L_OCCUPATION}:{admin.OCCUPATION}<br/><!-- ENDIF -->
<!-- IF admin.INTERESTS -->{admin.L_INTERESTS}:{admin.INTERESTS}<br/><!-- ENDIF -->
</li>
</ul>
<noscript>
<ul class="topiclist teamlist">
<li class="row bg1" onclick="toggle_data({admin.USER_ID});">
<!-- IF admin.AVATAR_IMG -->
{admin.AVATAR_IMG}<br/>
<!-- IF admin.RANK_TITLE -->{admin.RANK_TITLE}<!-- ENDIF -->
<!-- ENDIF -->
Profil von: {admin.USERNAME}<br/>
<!-- IF not admin.AVATAR_IMG -->
<!-- IF admin.RANK_TITLE -->{admin.L_RANK}:{admin.RANK_TITLE}<br/><!-- ENDIF -->
<!-- ENDIF -->
<!-- IF admin.S_USER_INACTIVE -->{admin.L_USER_IS_INACTIVE}:{admin.USER_INACTIVE_REASON}<br/><!-- ENDIF -->
<!-- IF admin.LOCATION -->{admin.L_LOCATION}:{admin.LOCATION}<br/><!-- ENDIF -->
<!-- IF admin.AGE -->{admin.L_AGE}:{admin.AGE}<br/><!-- ENDIF -->
<!-- IF admin.OCCUPATION -->{admin.L_OCCUPATION}:{admin.OCCUPATION}<br/><!-- ENDIF -->
<!-- IF admin.INTERESTS -->{admin.L_INTERESTS}:{admin.INTERESTS}<br/><!-- ENDIF -->
</li>
</ul>
</noscript>
</td>
<td class="tbl2" width='50%'><!-- IF admin.U_GROUP -->
<a<!-- IF admin.GROUP_COLOR --> style="font-weight: bold; color:#ffffff"<!-- ENDIF --> href="{admin.U_GROUP}">{admin.GROUP_NAME}</a>
<!-- ELSE -->
{admin.GROUP_NAME}
<!-- ENDIF --></td>
</tr>
<!-- BEGINELSE -->
<tr class="tbl2">
<td colspan="3"><strong>{L_NO_ADMINISTRATORS}</strong></td>
</tr>
<!-- END admin -->
</tbody>
</table>
- DayWalker74
- Mitglied
- Beiträge: 26
- Registriert: 25.11.2009 13:58
Re: Teamseite...
Jetzt habe ich es soweit hinbekommen, das dort die Avatare gezeigt werden.
Aber in versch. Browsern wie IE, werden auch Fehler gezeigt.
Aber der Profielinhalt wird leider immernoch nicht geladen.
leaders.php
leaders.html
Wo ist der Fehler ( Denkfehler von mir ) zu sein ?
In diesem Bereich ( Auszug aus der leaders.html ) möchte ich,wenn es ein .gif ist, das nur das .gif gezeigt wird oder wenn es nen .jgp ist nur das .jpg oder nen .png auch nur das .png
Wie realisiere ich das ?
Aber in versch. Browsern wie IE, werden auch Fehler gezeigt.
Aber der Profielinhalt wird leider immernoch nicht geladen.
leaders.php
Code: Alles auswählen
<?php
$abmelden = '';
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './phpbb/';
//$phpbb_root_path = 'phpbb/';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
include($phpbb_root_path . 'topic_top.php');
include($phpbb_root_path . 'includes/functions_user.' . $phpEx);
include($phpbb_root_path . 'includes/functions_profile_fields.' . $phpEx);
$user->session_begin();
$auth->acl($user->data);
//$user->setup();
$user->setup('memberlist');
$resultat = '';
$status = '';
// Grab data
$mode = request_var('mode', '');
if (!in_array($mode, array('', 'viewprofile')))
{
trigger_error('NO_MODE');
}
switch ($mode)
{
case 'viewprofile':
// Display a profile
if ($user_id == ANONYMOUS && !$username)
{
trigger_error('NO_USER');
}
// Get user...
$sql = 'SELECT *
FROM ' . USERS_TABLE . '
WHERE ' . (($username) ? "username_clean = '" . $db->sql_escape(utf8_clean_string($username)) . "'" : "user_id = $user_id");
$result = $db->sql_query($sql);
$member = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
if (!$member)
{
trigger_error('NO_USER');
}
// a_user admins and founder are able to view inactive users and bots to be able to manage them more easily
// Normal users are able to see at least users having only changed their profile settings but not yet reactivated.
if (!$auth->acl_get('a_user') && $user->data['user_type'] != USER_FOUNDER)
{
if ($member['user_type'] == USER_IGNORE)
{
trigger_error('NO_USER');
}
else if ($member['user_type'] == USER_INACTIVE && $member['user_inactive_reason'] != INACTIVE_PROFILE)
{
trigger_error('NO_USER');
}
}
$user_id = (int) $member['user_id'];
// Do the SQL thang
$sql = 'SELECT g.group_id, g.group_name, g.group_type
FROM ' . GROUPS_TABLE . ' g, ' . USER_GROUP_TABLE . " ug
WHERE ug.user_id = $user_id
AND g.group_id = ug.group_id" . ((!$auth->acl_gets('a_group', 'a_groupadd', 'a_groupdel')) ? ' AND g.group_type <> ' . GROUP_HIDDEN : '') . '
AND ug.user_pending = 0
ORDER BY g.group_type, g.group_name';
$result = $db->sql_query($sql);
$group_options = '';
while ($row = $db->sql_fetchrow($result))
{
$group_options .= '<option value="' . $row['group_id'] . '"' . (($row['group_id'] == $member['group_id']) ? ' selected="selected"' : '') . '>' . (($row['group_type'] == GROUP_SPECIAL) ? $user->lang['G_' . $row['group_name']] : $row['group_name']) . '</option>';
}
$db->sql_freeresult($result);
// What colour is the zebra
$sql = 'SELECT friend, foe
FROM ' . ZEBRA_TABLE . "
WHERE zebra_id = $user_id
AND user_id = {$user->data['user_id']}";
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$foe = ($row['foe']) ? true : false;
$friend = ($row['friend']) ? true : false;
$db->sql_freeresult($result);
if ($config['load_onlinetrack'])
{
$sql = 'SELECT MAX(session_time) AS session_time, MIN(session_viewonline) AS session_viewonline
FROM ' . SESSIONS_TABLE . "
WHERE session_user_id = $user_id";
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
$member['session_time'] = (isset($row['session_time'])) ? $row['session_time'] : 0;
$member['session_viewonline'] = (isset($row['session_viewonline'])) ? $row['session_viewonline'] : 0;
unset($row);
}
if ($config['load_user_activity'])
{
display_user_activity($member);
}
// Do the relevant calculations
$memberdays = max(1, round((time() - $member['user_regdate']) / 86400));
$posts_per_day = $member['user_posts'] / $memberdays;
$percentage = ($config['num_posts']) ? min(100, ($member['user_posts'] / $config['num_posts']) * 100) : 0;
if ($member['user_sig'])
{
$member['user_sig'] = censor_text($member['user_sig']);
if ($member['user_sig_bbcode_bitfield'])
{
include_once($phpbb_root_path . 'includes/bbcode.' . $phpEx);
$bbcode = new bbcode();
$bbcode->bbcode_second_pass($member['user_sig'], $member['user_sig_bbcode_uid'], $member['user_sig_bbcode_bitfield']);
}
$member['user_sig'] = bbcode_nl2br($member['user_sig']);
$member['user_sig'] = smiley_text($member['user_sig']);
}
$poster_avatar = get_user_avatar($member['user_avatar'], $member['user_avatar_type'], $member['user_avatar_width'], $member['user_avatar_height']);
$template->assign_vars(show_profile($member));
// Custom Profile Fields
$profile_fields = array();
if ($config['load_cpf_viewprofile'])
{
include_once($phpbb_root_path . 'includes/functions_profile_fields.' . $phpEx);
$cp = new custom_profile();
$profile_fields = $cp->generate_profile_fields_template('grab', $user_id);
$profile_fields = (isset($profile_fields[$user_id])) ? $cp->generate_profile_fields_template('show', false, $profile_fields[$user_id]) : array();
}
// We need to check if the module 'zebra' is accessible
$zebra_enabled = false;
if ($user->data['user_id'] != $user_id && $user->data['is_registered'])
{
include_once($phpbb_root_path . 'includes/functions_module.' . $phpEx);
$module = new p_master();
$module->list_modules('ucp');
$module->set_active('zebra');
$zebra_enabled = ($module->active_module === false) ? false : true;
unset($module);
}
// If the user has m_approve permission or a_user permission, then list then display unapproved posts
if ($auth->acl_getf_global('m_approve') || $auth->acl_get('a_user'))
{
$sql = 'SELECT COUNT(post_id) as posts_in_queue
FROM ' . POSTS_TABLE . '
WHERE poster_id = ' . $user_id . '
AND post_approved = 0';
$result = $db->sql_query($sql);
$member['posts_in_queue'] = (int) $db->sql_fetchfield('posts_in_queue');
$db->sql_freeresult($result);
}
else
{
$member['posts_in_queue'] = 0;
}
$template->assign_vars(array(
'L_POSTS_IN_QUEUE' => $user->lang('NUM_POSTS_IN_QUEUE', $member['posts_in_queue']),
'POSTS_DAY' => sprintf($user->lang['POST_DAY'], $posts_per_day),
'POSTS_PCT' => sprintf($user->lang['POST_PCT'], $percentage),
'OCCUPATION' => (!empty($member['user_occ'])) ? censor_text($member['user_occ']) : '',
'INTERESTS' => (!empty($member['user_interests'])) ? censor_text($member['user_interests']) : '',
'SIGNATURE' => $member['user_sig'],
'POSTS_IN_QUEUE'=> $member['posts_in_queue'],
'PROFILE_IMG' => $user->img('icon_user_profile', $user->lang['PROFILE']),
//'AVATAR_IMG' => $poster_avatar,
'AVATAR_IMG' => get_user_avatar($data['user_avatar'], $data['user_avatar_type'], $data['user_avatar_width'], $data['user_avatar_height']),
'PM_IMG' => $user->img('icon_contact_pm', $user->lang['SEND_PRIVATE_MESSAGE']),
'EMAIL_IMG' => $user->img('icon_contact_email', $user->lang['EMAIL']),
'WWW_IMG' => $user->img('icon_contact_www', $user->lang['WWW']),
'ICQ_IMG' => $user->img('icon_contact_icq', $user->lang['ICQ']),
'AIM_IMG' => $user->img('icon_contact_aim', $user->lang['AIM']),
'MSN_IMG' => $user->img('icon_contact_msnm', $user->lang['MSNM']),
'YIM_IMG' => $user->img('icon_contact_yahoo', $user->lang['YIM']),
'JABBER_IMG' => $user->img('icon_contact_jabber', $user->lang['JABBER']),
'SEARCH_IMG' => $user->img('icon_user_search', $user->lang['SEARCH']),
'S_PROFILE_ACTION' => append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=group'),
'S_GROUP_OPTIONS' => $group_options,
'S_CUSTOM_FIELDS' => (isset($profile_fields['row']) && sizeof($profile_fields['row'])) ? true : false,
'U_USER_ADMIN' => ($auth->acl_get('a_user')) ? append_sid("{$phpbb_root_path}adm/index.$phpEx", 'i=users&mode=overview&u=' . $user_id, true, $user->session_id) : '',
'U_USER_BAN' => ($auth->acl_get('m_ban') && $user_id != $user->data['user_id']) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=ban&mode=user&u=' . $user_id, true, $user->session_id) : '',
'U_MCP_QUEUE' => ($auth->acl_getf_global('m_approve')) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=queue', true, $user->session_id) : '',
'U_SWITCH_PERMISSIONS' => ($auth->acl_get('a_switchperm') && $user->data['user_id'] != $user_id) ? append_sid("{$phpbb_root_path}ucp.$phpEx", "mode=switch_perm&u={$user_id}") : '',
'S_ZEBRA' => ($user->data['user_id'] != $user_id && $user->data['is_registered'] && $zebra_enabled) ? true : false,
'U_ADD_FRIEND' => (!$friend) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=zebra&add=' . urlencode(htmlspecialchars_decode($member['username']))) : '',
'U_ADD_FOE' => (!$foe) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=zebra&mode=foes&add=' . urlencode(htmlspecialchars_decode($member['username']))) : '',
'U_REMOVE_FRIEND' => ($friend) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=zebra&remove=1&usernames[]=' . $user_id) : '',
'U_REMOVE_FOE' => ($foe) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=zebra&remove=1&mode=foes&usernames[]=' . $user_id) : '',
));
if (!empty($profile_fields['row']))
{
$template->assign_vars($profile_fields['row']);
}
if (!empty($profile_fields['blockrow']))
{
foreach ($profile_fields['blockrow'] as $field_data)
{
$template->assign_block_vars('custom_fields', $field_data);
}
}
// Inactive reason/account?
if ($member['user_type'] == USER_INACTIVE)
{
$user->add_lang('acp/common');
$inactive_reason = $user->lang['INACTIVE_REASON_UNKNOWN'];
switch ($member['user_inactive_reason'])
{
case INACTIVE_REGISTER:
$inactive_reason = $user->lang['INACTIVE_REASON_REGISTER'];
break;
case INACTIVE_PROFILE:
$inactive_reason = $user->lang['INACTIVE_REASON_PROFILE'];
break;
case INACTIVE_MANUAL:
$inactive_reason = $user->lang['INACTIVE_REASON_MANUAL'];
break;
case INACTIVE_REMIND:
$inactive_reason = $user->lang['INACTIVE_REASON_REMIND'];
break;
}
$template->assign_vars(array(
'S_USER_INACTIVE' => true,
'USER_INACTIVE_REASON' => $inactive_reason)
);
}
// Now generate page title
$page_title = sprintf($user->lang['VIEWING_PROFILE'], $member['username']);
$template_html = 'leaders.html';
break;
}
// Set some stats, get posts count from forums data if we... hum... retrieve all forums data
$total_posts = $config['num_posts'];
$total_topics = $config['num_topics'];
$total_users = $config['num_users'];
$l_total_user_s = ($total_users == 0) ? 'TOTAL_USERS_ZERO' : 'TOTAL_USERS_OTHER';
$l_total_post_s = ($total_posts == 0) ? 'TOTAL_POSTS_ZERO' : 'TOTAL_POSTS_OTHER';
$l_total_topic_s = ($total_topics == 0) ? 'TOTAL_TOPICS_ZERO' : 'TOTAL_TOPICS_OTHER';
//
if($user->data['is_registered'])
{
$abmelden = $phpbb_root_path . 'ucp.php?mode=logout&redirect=../portal.php' . '&sid=' . $user->data['session_id'];
}
//
if ($auth->acl_get('a_')){
$status = '[A]';
}
else if ($auth->acl_get('m_')){
$status = '[M]';
}
else if ($auth->acl_get('u_')){
$status = '';
}
else $status = 'Gast';
include($phpbb_root_path . 'topic_bottom.php');
page_header('Portal');
$template->set_filenames(array(
'body' => 'leaders.html')
);
//
// Recent topic (only show normal topic)
//
/* Censor title, return short title
*
* @param $title string title to censor
* @param $limit int short title character limit
*
*/
function character_limit(&$title, $limit = 0)
{
$title = censor_text($title);
if ($limit > 0)
{
return (strlen(utf8_decode($title)) > $limit + 3) ? truncate_string($title, $limit) . '...' : $title;
}
else
{
return $title;
}
}
$sql = 'SELECT t.topic_title, t.forum_id, t.topic_id, t.topic_last_post_id, t.topic_last_post_time, u.username
FROM ' . TOPICS_TABLE . ' t, ' . USERS_TABLE . ' u
WHERE topic_status <> 2
AND topic_approved = 1
AND topic_type = 0
AND t.topic_last_poster_id = u.user_id
ORDER BY t.topic_last_post_time DESC';
// ' . $sql_where . ' entfernt in vorletzter Zeile, direkt vor ORDER BY
$result = $db->sql_query_limit($sql, 100);
$i=0;
while( ($row = $db->sql_fetchrow($result)) && ($row['topic_title'] != '') )
{
// auto auth
if ( ($auth->acl_get('f_read', $row['forum_id'])) || ($row['forum_id'] == '0') )
{
if ($i<15) {
$template->assign_block_vars('latest_topics', array(
'USERNAME' => $row['username'],
'AVATAR_IMG' => get_user_avatar($data['user_avatar'], $data['user_avatar_type'], $data['user_avatar_width'], $data['user_avatar_height']),
'TITLE' => character_limit($row['topic_title'], 30),
'FULL_TITLE' => censor_text($row['topic_title']),
'U_VIEW_TOPIC' => append_sid($phpbb_root_path . "viewtopic.$phpEx", 'f=' . $row['forum_id'] . '&p=' . $row['topic_last_post_id'] . '#p' . $row['topic_last_post_id']),
'LAST_POST_TIME' => $user->format_date($row['topic_last_post_time'])
)
);
$i++;
}
}
}
$db->sql_freeresult($result);
// Generate birthday list if required ...
$birthday_list = '';
if ($config['load_birthdays'])
{
$now = getdate(time() + $user->timezone + $user->dst - (date('H', time()) - gmdate('H', time())) * 3600);
$sql = 'SELECT user_id, username, user_colour, user_birthday
FROM ' . USERS_TABLE . "
WHERE user_birthday LIKE '" . $db->sql_escape(sprintf('%2d-%2d-', $now['mday'], $now['mon'])) . "%'
AND user_type IN (" . USER_NORMAL . ', ' . USER_FOUNDER . ')';
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$user_colour = ($row['user_colour']) ? ' style="color:#' . $row['user_colour'] .'"' : '';
$birthday_list .= (($birthday_list != '') ? ', ' : '') . '<a' . $user_colour . ' href="' . append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=viewprofile&u=' . $row['user_id']) . '">' . $row['username'] . '</a>';
if ($age = (int) substr($row['user_birthday'], -4))
{
$birthday_list .= ' (' . ($now['year'] - $age) . ')';
}
}
$db->sql_freeresult($result);
}
// Assign specific vars
$template->assign_vars(array(
'BIRTHDAY_LIST' => $birthday_list,
'S_DISPLAY_BIRTHDAY_LIST' => ($config['load_birthdays']) ? true : false,
)
);
$template->assign_vars(array(
'U_LASTTOPICS' => $resultat,
'U_USERSTATUS' => $status,
'U_USERNAME' => $user->data['username'],
'AVATAR_IMG' => get_user_avatar($data['user_avatar'], $data['user_avatar_type'], $data['user_avatar_width'], $data['user_avatar_height']),
'U_SID' => $user->data['session_id'],
'U_ABMELDEN' => $abmelden)
);
$db->sql_freeresult($result);
$user_ary = $auth->acl_get_list(false, array('a_', 'm_'), false);
$admin_id_ary = $global_mod_id_ary = $mod_id_ary = $forum_id_ary = array();
foreach ($user_ary as $forum_id => $forum_ary)
{
foreach ($forum_ary as $auth_option => $id_ary)
{
if (!$forum_id)
{
if ($auth_option == 'a_')
{
$admin_id_ary = array_merge($admin_id_ary, $id_ary);
}
else
{
$global_mod_id_ary = array_merge($global_mod_id_ary, $id_ary);
}
continue;
}
else
{
$mod_id_ary = array_merge($mod_id_ary, $id_ary);
}
if ($forum_id)
{
foreach ($id_ary as $id)
{
$forum_id_ary[$id][] = $forum_id;
}
}
}
}
$admin_id_ary = array_unique($admin_id_ary);
$global_mod_id_ary = array_unique($global_mod_id_ary);
$mod_id_ary = array_merge($mod_id_ary, $global_mod_id_ary);
$mod_id_ary = array_unique($mod_id_ary);
// Admin group id...
$sql = 'SELECT group_id
FROM ' . GROUPS_TABLE . "
WHERE group_name = 'ADMINISTRATORS'";
$result = $db->sql_query($sql);
$admin_group_id = (int) $db->sql_fetchfield('group_id');
$db->sql_freeresult($result);
// Get group memberships for the admin id ary...
$admin_memberships = group_memberships($admin_group_id, $admin_id_ary);
$admin_user_ids = array();
if (!empty($admin_memberships))
{
// ok, we only need the user ids...
foreach ($admin_memberships as $row)
{
$admin_user_ids[$row['user_id']] = true;
}
}
unset($admin_memberships);
$sql = 'SELECT forum_id, forum_name
FROM ' . FORUMS_TABLE;
$result = $db->sql_query($sql);
$forums = array();
while ($row = $db->sql_fetchrow($result))
{
$forums[$row['forum_id']] = $row['forum_name'];
}
$db->sql_freeresult($result);
$sql = $db->sql_build_query('SELECT', array(
'SELECT' => 'u.user_id, u.group_id as default_group, u.username, u.username_clean, u.user_colour, u.user_rank, u.user_posts, u.user_allow_pm, g.group_id, g.group_name, g.group_colour, g.group_type, ug.user_id as ug_user_id',
'FROM' => array(
USERS_TABLE => 'u',
GROUPS_TABLE => 'g'
),
'LEFT_JOIN' => array(
array(
'FROM' => array(USER_GROUP_TABLE => 'ug'),
'ON' => 'ug.group_id = g.group_id AND ug.user_pending = 0 AND ug.user_id = ' . $user->data['user_id']
)
),
'WHERE' => $db->sql_in_set('u.user_id', array_unique(array_merge($admin_id_ary, $mod_id_ary)), false, true) . '
AND u.group_id = g.group_id',
'ORDER_BY' => 'g.group_name ASC, u.username_clean ASC'
));
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$which_row = (in_array($row['user_id'], $admin_id_ary)) ? 'admin' : 'mod';
// We sort out admins not within the 'Administrators' group.
// Else, we will list those as admin only having the permission to view logs for example.
if ($which_row == 'admin' && empty($admin_user_ids[$row['user_id']]))
{
// Remove from admin_id_ary, because the user may be a mod instead
unset($admin_id_ary[array_search($row['user_id'], $admin_id_ary)]);
if (!in_array($row['user_id'], $mod_id_ary) && !in_array($row['user_id'], $global_mod_id_ary))
{
continue;
}
else
{
$which_row = 'mod';
}
}
$s_forum_select = '';
$undisclosed_forum = false;
if (isset($forum_id_ary[$row['user_id']]) && !in_array($row['user_id'], $global_mod_id_ary))
{
if ($which_row == 'mod' && sizeof(array_diff(array_keys($forums), $forum_id_ary[$row['user_id']])))
{
foreach ($forum_id_ary[$row['user_id']] as $forum_id)
{
if (isset($forums[$forum_id]))
{
if ($auth->acl_get('f_list', $forum_id))
{
$s_forum_select .= '<option value="">' . $forums[$forum_id] . '</option>';
}
else
{
$undisclosed_forum = true;
}
}
}
}
}
// If the mod is only moderating non-viewable forums we skip the user. There is no gain in displaying the person then...
$profile_fields = array();
if ($config['load_cpf_viewprofile'])
{
include_once($phpbb_root_path . 'includes/functions_profile_fields.' . $phpEx);
$cp = new custom_profile();
$profile_fields = $cp->generate_profile_fields_template('grab', $user_id);
$profile_fields = (isset($profile_fields[$user_id])) ? $cp->generate_profile_fields_template('show', false, $profile_fields[$user_id]) : array();
}
$poster_avatar = get_user_avatar($member['user_avatar'], $member['user_avatar_type'], $member['user_avatar_width'], $member['user_avatar_height']);
if (!$s_forum_select && $undisclosed_forum)
{
// $s_forum_select = '<option value="">' . $user->lang['FORUM_UNDISCLOSED'] . '</option>';
continue;
}
// The person is moderating several "public" forums, therefore the person should be listed, but not giving the real group name if hidden.
if ($row['group_type'] == GROUP_HIDDEN && !$auth->acl_gets('a_group', 'a_groupadd', 'a_groupdel') && $row['ug_user_id'] != $user->data['user_id'])
{
$group_name = $user->lang['GROUP_UNDISCLOSED'];
$u_group = '';
}
else
{
$group_name = ($row['group_type'] == GROUP_SPECIAL) ? $user->lang['G_' . $row['group_name']] : $row['group_name'];
$u_group = append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=group&g=' . $row['group_id']);
}
$rank_title = $rank_img = '';
get_user_rank($row['user_rank'], (($row['user_id'] == ANONYMOUS) ? false : $row['user_posts']), $rank_title, $rank_img, $rank_img_src);
$template->assign_block_vars($which_row, array(
'USER_ID' => $row['user_id'],
'FORUMS' => $s_forum_select,
'RANK_TITLE' => $rank_title,
'GROUP_NAME' => $group_name,
'PROFILE_IMG' => $user->img('icon_user_profile', $user->lang['PROFILE']),
'GROUP_COLOR' => $row['group_colour'],
'AVATAR_IMG' => get_user_avatar($data['user_avatar'], $data['user_avatar_type'], $data['user_avatar_width'], $data['user_avatar_height']),
//'AVATAR_IMG' => $poster_avatar,
'RANK_IMG' => $rank_img,
'RANK_IMG_SRC' => $rank_img_src,
'TOTAL_POSTS' => sprintf($user->lang[$l_total_post_s], $total_posts),
'TOTAL_TOPICS' => sprintf($user->lang[$l_total_topic_s], $total_topics),
'TOTAL_USERS' => sprintf($user->lang[$l_total_user_s], $total_users),
'NEWEST_USER' => sprintf($user->lang['NEWEST_USER'], get_username_string('full', $config['newest_user_id'], $config['newest_username'], $config['newest_user_colour'])),
'U_GROUP' => $u_group,
'U_PM' => ($config['allow_privmsg'] && $auth->acl_get('u_sendpm') && ($row['user_allow_pm'] || $auth->acl_gets('a_', 'm_') || $auth->acl_getf_global('m_'))) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=pm&mode=compose&u=' . $row['user_id']) : '',
'USERNAME_FULL' => get_username_string('full', $row['user_id'], $row['username'], "#ffffff"),
'USERNAME' => get_username_string('username', $row['user_id'], $row['username'], $row['user_colour']),
'USER_COLOR' => "#ffffff", get_username_string('colour', $row['user_id'], $row['username'], $row['user_colour']),
'U_VIEW_PROFILE' => get_username_string('profile', $row['user_id'], $row['username'], $row['user_colour']),
));
}
$db->sql_freeresult($result);
page_footer();
?>
Code: Alles auswählen
<!-- INCLUDE portal_header.html -->
<script type="text/javascript">
// <![CDATA[
function toggle_data(row)
{
if (document.getElementById('row' + row).style.display == 'none')
{
document.getElementById('row' + row).style.display = '';
document.getElementById('link' + row).innerHTML = 'Ausblenden';
document.getElementById('link' + row).className = 'teamcollapse';
}
else
{
document.getElementById('row' + row).style.display = 'none';
document.getElementById('link' + row).innerHTML = 'Anzeigen';
document.getElementById('link' + row).className = 'teamexpand';
}
return false;
}
function stop_handler(event)
{
if (!event)
{
event = window.event;
}
if (event.stopPropagation)
{
event.stopPropagation();
}
else
{
event.cancelBubble = true;
}
}
// ]]>
</script>
<div align="center"><table cellpadding="0" cellspacing="0" border="0" width="100%" align="center">
<tr>
<!-- [+] left block area -->
<td width="160" valign="top" style="padding-right:6px;" class='side-border-left'>
<!-- INCLUDE leftside.html --> </td>
<td valign="top">
<!-- [+] center block area -->
<br/>
<center>
<table cellpadding='0' cellspacing='0' width='95%'>
<tr>
<td><h6>Das Team</h6></td>
</tr>
</table>
</center>
<table cellpadding='0' cellspacing='0' width='100%'>
<tr>
<td class='capmain-left'></td>
<td class='capmain'>Leitung:</td>
<td class='capmain-right'></td>
</tr>
</table>
<table cellpadding='0' cellspacing='0' width='100%' class='spacer'>
<tr>
<td class='capmain-center-left'></td>
<td class='main-body'>
<table cellpadding='0' cellspacing='1' width='100%' class='tbl-border forum_idx_table'>
<thead>
<tr>
<th class="tbl2" width='50%'>Name:</th>
<th class="tbl2" width='50%'>Aufgabe:</th>
</tr>
</thead>
<tbody>
<!-- BEGIN admin -->
<tr class="<!-- IF admin.S_ROW_COUNT is even -->tbl2<!-- ELSE -->tbl2<!-- ENDIF -->">
<td class="tbl2" width='50%'><font style="color:#ffffff">{admin.USERNAME_FULL}</font><br />
<ul class="topiclist teamlist">
<li class="row bg1" onclick="toggle_data({admin.USER_ID});">
<span style="float: right; width: auto"><a href="leaders.php?mode=viewprofile&u={admin.USER_ID}" onclick="toggle_data({admin.USER_ID});stop_handler(event);return false;" class="teamexpand" id="link{admin.USER_ID}">Anzeigen</a> </span>
</li>
<li id="row{admin.USER_ID}" style="display: none;" class="row bg1" onclick="toggle_data({admin.USER_ID});">
<!-- IF admin.AVATAR_IMG -->
{admin.AVATAR_IMG}<br/>
<!-- IF admin.RANK_TITLE -->{admin.RANK_TITLE}<!-- ENDIF -->
<!-- ENDIF -->
<br /><center>Profil von: {admin.USERNAME}</center><br/>
<img src="http://darkness-fun-radio.de/phpbb/download/file.php?avatar={admin.USER_ID}.gif" width="70" height="70"><img src="http://darkness-fun-radio.de/phpbb/download/file.php?avatar={admin.USER_ID}.jpg" width="70" height="70"><img src="http://darkness-fun-radio.de/phpbb/download/file.php?avatar={admin.USER_ID}.png" width="70" height="70"><br />
<!-- IF admin.RANK_TITLE -->Rang: {admin.RANK_TITLE}<br/>
<!-- ENDIF -->
<!-- IF admin.LOCATION -->Wohnort: {admin.LOCATION}<br/><!-- ENDIF -->
<!-- IF admin.AGE -->Alter: {admin.AGE}<br/><!-- ENDIF -->
<!-- IF admin.OCCUPATION -->{admin.L_OCCUPATION}: {admin.OCCUPATION}<br/><!-- ENDIF -->
<!-- IF admin.INTERESTS -->{admin.L_INTERESTS}: {admin.INTERESTS}<br/><!-- ENDIF -->
</li>
</ul>
<noscript>
<ul class="topiclist teamlist">
<li class="row bg1" onclick="toggle_data({admin.USER_ID});">
<!-- IF admin.AVATAR_IMG -->
{admin.AVATAR_IMG}<br/>
<!-- IF admin.RANK_TITLE -->{admin.RANK_TITLE}<!-- ENDIF -->
<!-- ENDIF -->
<br /><center>Profil von: {admin.USERNAME}</center><br/>
<img src="http://darkness-fun-radio.de/phpbb/download/file.php?avatar={admin.USER_ID}.gif" width="70" height="70"><img src="http://darkness-fun-radio.de/phpbb/download/file.php?avatar={admin.USER_ID}.jpg" width="70" height="70"><img src="http://darkness-fun-radio.de/phpbb/download/file.php?avatar={admin.USER_ID}.png" width="70" height="70"><br />
<!-- IF admin.RANK_TITLE -->Rang: {admin.RANK_TITLE}<br/>
<!-- ENDIF -->
<!-- IF admin.LOCATION -->{admin.U_LOCATION}: {admin.LOCATION}<br/><!-- ENDIF -->
<!-- IF admin.AGE -->{admin.U_AGE}: {admin.AGE}<br/><!-- ENDIF -->
<!-- IF admin.OCCUPATION -->{admin.U_OCCUPATION}: {admin.OCCUPATION}<br/><!-- ENDIF -->
<!-- IF admin.INTERESTS -->{admin.U_INTERESTS}: {admin.INTERESTS}<br/><!-- ENDIF -->
</li>
</ul>
</noscript>
</td>
<td class="tbl2" width='50%'><!-- IF admin.U_GROUP -->
<a<!-- IF admin.GROUP_COLOR --> style="font-weight: bold; color:#ffffff"<!-- ENDIF --> href="{admin.U_GROUP}">{admin.GROUP_NAME}</a>
<!-- ELSE -->
{admin.GROUP_NAME}
<!-- ENDIF --></td>
</tr>
<!-- BEGINELSE -->
<tr class="tbl2">
<td colspan="3"><strong>{L_NO_ADMINISTRATORS}</strong></td>
</tr>
<!-- END admin -->
</tbody>
</table>
</td>
<td class='capmain-center-right'></td>
</tr><tr>
<td class='capmain-bottom-left'></td>
<td class='news-footer'><span class="Stil1">Weitere Informationen, eines einzelnen DJ´s erhäst Du, wenn Du auf dem Nicknamen klickst.<br />
Um detalierte Profile anzuschauen, musst
Du <a href="http://darkness-fun-radio.de/phpbb/ucp.php?mode=register"><font style="color:#ffffff">registriert</font></a> und <a href="http://darkness-fun-radio.de/phpbb/ucp.php?mode=login"><font style="color:#ffffff">angemeldet</font></a> sein. </span></td>
<td class='capmain-bottom-right'></td>
</tr><tr>
</tr>
</table>
<table cellpadding='0' cellspacing='0' width='100%'>
<tr>
<td class='capmain-left'></td>
<td class='capmain'>DJ's / Gast DJ's / Moderatoren:</td>
<td class='capmain-right'></td>
</tr>
</table>
<table cellpadding='0' cellspacing='0' width='100%' class='spacer'>
<tr>
<td class='capmain-center-left'></td>
<td class='main-body'>
<table cellpadding='0' cellspacing='1' width='100%' class='tbl-border forum_idx_table'>
<thead>
<tr>
<th class="tbl2" width='50%'>Name:</th>
<th class="tbl2" width='50%'>Aufgabe:</th>
</tr>
</thead>
<tbody>
<!-- BEGIN mod -->
<tr class="<!-- IF mod.S_ROW_COUNT is even -->tbl2<!-- ELSE -->tbl2<!-- ENDIF -->">
<td class="tbl2" width='50%'><font style="color:#ffffff">{mod.USERNAME_FULL}</font><br />
<ul class="topiclist teamlist">
<li class="row bg1" onclick="toggle_data({mod.USER_ID});">
<span style="float: right; width: auto"><a href="leaders.php?mode=viewprofile&u={mod.USER_ID}" onclick="toggle_data({mod.USER_ID});stop_handler(event);return false;" class="teamexpand" id="link{mod.USER_ID}">Anzeigen</a> </span>
</li>
<li id="row{mod.USER_ID}" style="display: none;" class="row bg1" onclick="toggle_data({mod.USER_ID});">
<br /><center>Profil von: {mod.USERNAME}</center><br/>
<img src="http://darkness-fun-radio.de/phpbb/download/file.php?avatar={mod.USER_ID}.gif" width="70" height="70"><img src="http://darkness-fun-radio.de/phpbb/download/file.php?avatar={mod.USER_ID}.jpg" width="70" height="70"><img src="http://darkness-fun-radio.de/phpbb/download/file.php?avatar={mod.USER_ID}.png" width="70" height="70"><br />
<!-- IF mod.RANK_TITLE -->Rang: {mod.RANK_TITLE}<br/>
<!-- ENDIF -->
<!-- IF mod.LOCATION -->Wohnort: {mod.LOCATION}<br/><!-- ENDIF -->
<!-- IF mod.AGE -->{mod.L_AGE}: {mod.AGE}<br/><!-- ENDIF -->
<!-- IF mod.OCCUPATION -->{mod.L_OCCUPATION}: {mod.OCCUPATION}<br/><!-- ENDIF -->
<!-- IF mod.INTERESTS -->{mod.L_INTERESTS}: {mod.INTERESTS}<br/><!-- ENDIF -->
</li>
</ul>
<noscript>
<ul class="topiclist teamlist">
<li class="row bg1" onclick="toggle_data({mod.USER_ID});">
<br /><center>Profil von: {mod.USERNAME}</center><br/>
<img src="http://darkness-fun-radio.de/phpbb/download/file.php?avatar={mod.USER_ID}.gif" width="70" height="70"><img src="http://darkness-fun-radio.de/phpbb/download/file.php?avatar={mod.USER_ID}.jpg" width="70" height="70"><img src="http://darkness-fun-radio.de/phpbb/download/file.php?avatar={mod.USER_ID}.png" width="70" height="70"><br />
<!-- IF mod.RANK_TITLE -->Rang: {mod.RANK_TITLE}<br/>
<!-- ENDIF -->
<!-- IF mod.LOCATION -->{mod.L_LOCATION}: {mod.LOCATION}<br/><!-- ENDIF -->
<!-- IF mod.AGE -->{mod.L_AGE}: {mod.AGE}<br/><!-- ENDIF -->
<!-- IF mod.OCCUPATION -->{mod.L_OCCUPATION}: {mod.OCCUPATION}<br/><!-- ENDIF -->
<!-- IF mod.INTERESTS -->{mod.L_INTERESTS}: {mod.INTERESTS}<br/><!-- ENDIF -->
</li>
</ul>
</noscript>
</td>
<td class="tbl2" width='50%'><!-- IF mod.U_GROUP -->
<a<!-- IF mod.GROUP_COLOR --> style="font-weight: bold; color:#ffffff"<!-- ENDIF --> href="{mod.U_GROUP}">{mod.GROUP_NAME}</a>
<!-- ELSE -->
{mod.GROUP_NAME}
<!-- ENDIF --></td>
</tr>
<!-- BEGINELSE -->
<tr class="tbl2">
<td colspan="3"><strong>{L_NO_MODERATORS}</strong></td>
</tr>
<!-- END mod -->
</tbody>
</table>
</td>
<td class='capmain-center-right'></td>
</tr><tr>
<td class='capmain-bottom-left'></td>
<td class='news-footer'><span class="Stil1">Weitere Informationen, eines einzelnen DJ´s erhäst Du, wenn Du auf dem Nicknamen klickst.<br />
Um detalierte Profile anzuschauen, musst
Du <a href="http://darkness-fun-radio.de/phpbb/ucp.php?mode=register"><font style="color:#ffffff">registriert</font></a> und <a href="http://darkness-fun-radio.de/phpbb/ucp.php?mode=login"><font style="color:#ffffff">angemeldet</font></a> sein. </span></td>
<td class='capmain-bottom-right'></td>
</tr><tr>
</tr>
</table>
<div id="DJ_gesucht"></div>
<table cellpadding='0' cellspacing='0' width='100%'>
<tr>
<td class='capmain-left'></td>
<td class='capmain'>DJ´s / DJane´s gesucht!</td>
<td class='capmain-right'></td>
</tr>
</table>
<table cellpadding='0' cellspacing='0' width='100%' class='spacer'>
<tr>
<td class='capmain-center-left'></td>
<td class='main-body'>
<p>Werdet Teil unseres Teams, bestimmt euer Musikprogramm,
Livesendungen und Grüße indem ihr euch bewerbt und bei
uns mitwirkt:</p><br>
<p>Mindestanforderungen Moderator:<br>
- mind. 18 Jahre<br>
- mind. 1,6 GHz oder 1600+<br>
- mind. 512 MB RAM<br>
- mind. 1,2 Mbit/s Uploadgeschwindigkeit ( bei DSL ab 3000 )<br>
- Stammuser/in in unserem IRC-Channel<br>
- Aktivität in unserem Forum<br>
- Teambereitschaft<br>
- Bereitschaft 15,00 mtl. für Server/GEMA/GVL u. evtl. sonstige
Kosten beizusteuern.</p><br>
<p>Selbst wenn ihr auf diesem Gebiet noch unerfahren seid, ein wenig
Spaß an Musik und Euphorie genügen bereits.<br>
Wir bilden euch gerne aus, geben euch Tipps aus der Szene und helfen
euch während euren ersten Testsendungen.</p><br>
<p>Zur DJ-Bewerbung einfach eine Mail an: info[at]darkness-fun-radio.de
oder per PN an:</p>
<p>- <a href="http://darkness-fun-radio.de/phpbb/ucp.php?i=pm&mode=compose&u=2"><font style="color:#ffffff">DayWalker74</font></a><br>
- <a href="http://darkness-fun-radio.de/phpbb/ucp.php?i=pm&mode=compose&u=54"><font style="color:#ffffff">Ms.Candy_Cat</font></a></p>
<p>Oder stellt eine Anfrage hier: <a href="http://darkness-fun-radio.de/phpbb/viewforum.php?f=67"><font style="color:#ffffff">>> klick <<</font></a></p>
</td>
<td class='capmain-center-right'></td>
</tr><tr>
<td class='capmain-bottom-left'></td>
<td class='news-footer'></td>
<td class='capmain-bottom-right'></td>
</tr><tr>
</tr>
</table>
</div>
</td>
<!-- [-] center block area -->
<td valign="top"><!-- INCLUDE rightside.html --></td>
</tr>
<tr>
<td colspan="5" valign="top" style="padding-right:6px;"><!-- INCLUDE portal_footer.html --></td>
</tr>
</table>
</a></div>
In diesem Bereich ( Auszug aus der leaders.html ) möchte ich,wenn es ein .gif ist, das nur das .gif gezeigt wird oder wenn es nen .jgp ist nur das .jpg oder nen .png auch nur das .png
Wie realisiere ich das ?
<img src="http://darkness-fun-radio.de/phpbb/down ... ER_ID}.gif" width="70" height="70"><img src="http://darkness-fun-radio.de/phpbb/down ... ER_ID}.jpg" width="70" height="70"><img src="http://darkness-fun-radio.de/phpbb/down ... ER_ID}.png" width="70" height="70">