Hallo easygo
Hab mir den halben Vormittag und die halbe Nacht

um die Ohren geschlagen und hab jetzt die Lösung. Hab nochmal intensive mad_mannes Ansatz studiert und auf ein paar Boards hin und her probiert. Hier das Ergebnis in
Pos 2. Es scheint alles tadellos zu funktionieren. Allerdings werde ich versuchen, nochmals deine Ansätze zu überprüfen , so das man vielleicht sogar 3 kleine Mods daraus basteln kann, die die Userwünsche variabler bedienen. Doch erstmal die ersten beiden. Testen und Kritik erwünscht. Getestet wurden beide Mods(!) von mir ausreichend auf mehreren Boards. Aber man weiß ja nie
1. Show_No_Hidden_Users
(Versteckte Benutzer werden niemals angezeigt, auch nicht als Gäste. Admins sehen versteckte Benutzer in der User-Anzeige auf der Hauptseite)
Siehe Datei:
Show_No_Hidden_Users.txt
2. Count_Hidden_Users_@_Guests
Inspiriert von mad_manne
(Versteckte Benutzer werden als Gäste gezählt /angezeigt, wobei sie auf der Indexseite verweilen, wenn man als Gast in der "Wer ist Online" - Anzeige nachschaut. Der Admin sieht dort in einem seperatem Row, wer sich tatsächlich wo befindet.)
Zu Pos 2.
Code: Alles auswählen
----------------------------------------------
Count_Hidden_Users_@_Guests - 07/ die 1te
-----------------------------------------------------
--------------------------------------------
Öffne
--------------------------------------------
/includes/page_header.php
----------------------------------------------
Finde
----------------------------------------------
if ( $total_online_users == 0 )
{
$l_t_user_s = $lang['Online_users_zero_total'];
}
--------------------------------------------
Davor füge ein
--------------------------------------------
$guests_online = $guests_online + $logged_hidden_online;
----------------------------------------------
Öffne ----------------------------------------
----------------------------------------------
/language/lang_german/lang_main.php
---------------------------------------------------
Finde und kommentiere markierte $lang - Zeilen aus
---------------------------------------------------
//
// Global Header strings
//
$lang['Registered_users'] = 'Registrierte Benutzer:';
$lang['Browsing_forum'] = 'Benutzer in diesem Forum:';
$lang['Online_users_zero_total'] = 'Insgesamt sind <b>0</b> Benutzer online: ';
$lang['Online_users_total'] = 'Insgesamt sind <b>%d</b> Benutzer online: ';
$lang['Online_user_total'] = 'Insgesamt ist <b>ein</b> Benutzer online: ';
$lang['Reg_users_zero_total'] = 'Kein registrierter, ';
$lang['Reg_users_total'] = '%d registrierte, ';
$lang['Reg_user_total'] = 'Ein registrierter, ';
// $lang['Hidden_users_zero_total'] = 'kein versteckter und ';
// $lang['Hidden_users_total'] = '%d versteckte und ';
// $lang['Hidden_user_total'] = 'ein versteckter und ';
$lang['Guest_users_zero_total'] = 'kein Gast.';
$lang['Guest_users_total'] = '%d Gste.';
$lang['Guest_user_total'] = 'ein Gast.';
$lang['Record_online_users'] = 'Der Rekord liegt bei <b>%s</b> Benutzern am %s.'; // first %s = number of users, second %s is the date.
..weiter unten dasselbe:
//
// Viewonline
//
$lang['Reg_users_zero_online'] = 'Es sind kein registrierter und '; // There are 5 Registered and
$lang['Reg_users_online'] = 'Es sind %d registrierte und ';
$lang['Reg_user_online'] = 'Es ist ein registrierter und '; // There are 5 Registered and
// $lang['Hidden_users_zero_online'] = 'kein versteckter Benutzer online.'; // 6 Hidden users online
// $lang['Hidden_users_online'] = '%d versteckte Benutzer online.'; // 6 Hidden users online
// $lang['Hidden_user_online'] = 'ein versteckter Benutzer online.'; // 6 Hidden users online
$lang['Guest_users_online'] = 'Es sind %d Gste online.';
$lang['Guest_users_zero_online'] = 'Es sind keine Gste online.'; // There are 10 Guest users online
$lang['Guest_user_online'] = 'Es ist ein Gast online.';
$lang['No_users_browsing'] = 'Im Moment sind keine Benutzer im Forum.';
--------------------------------------------
(Bei Bedarf - thx an easygo) Suche
--------------------------------------------
$lang['Reg_users_zero_total'] = 'Kein registrierter, ';
$lang['Reg_users_total'] = '%d registrierte, ';
$lang['Reg_user_total'] = 'Ein registrierter, ';
--------------------------------------------
Ersetze mit
--------------------------------------------
$lang['Reg_users_zero_total'] = 'Kein Registrierter und ';
$lang['Reg_users_total'] = '%d Registrierte und ';
$lang['Reg_user_total'] = 'Ein Registrierter und ';
---------------------------------------------
Finde
----------------------------------------------
//
// That's all Folks!
// -------------------------------------------------
----------------------------------------------
Davor Füge ein
----------------------------------------------
//
// Show_no_Hidden_Users - Anfang
//
$lang['VISIBLE_FOR_ADMINS_ONLY'] = 'Nur für Admins sichtbar';
----------------------------------------------
Öffne ----------------------------------------
----------------------------------------------
/viewonline.php
----------------------------------------------
Finde
----------------------------------------------
$template->assign_vars(array(
'L_WHOSONLINE' => $lang['Who_is_Online'],
'L_ONLINE_EXPLAIN' => $lang['Online_explain'],
----------------------------------------------
Danach Füge ein
----------------------------------------------
'L_VISIBLE_FOR_ADMINS_ONLY' => $lang['VISIBLE_FOR_ADMINS_ONLY'],
---------------------------------------------
Finde
----------------------------------------------
//
// Get auth data
//
$is_auth_ary = array();
$is_auth_ary = auth(AUTH_VIEW, AUTH_LIST_ALL, $userdata);
----------------------------------------------
Danach Füge ein
----------------------------------------------
$hidden_as_guest = FALSE;
----------------------------------------------
Finde
----------------------------------------------
$view_online = ( $userdata['user_level'] == ADMIN ) ? true : false;
$hidden_users++;
$username = '<i>' . $username . '</i>';
}
else
{
$view_online = true;
$registered_users++;
}
$which_counter = 'reg_counter';
$which_row = 'reg_user_row';
$prev_user = $user_id;
}
}
else
{
if ( $row['session_ip'] != $prev_ip )
{
$username = $lang['Guest'];
$view_online = true;
$guest_users++;
$which_counter = 'guest_counter';
$which_row = 'guest_user_row';
}
}
$prev_ip = $row['session_ip'];
----------------------------------------------
Ersetze mit
----------------------------------------------
if ( $userdata['user_level'] == ADMIN )
{
$username = '<i>' . $username . '</i>';
$hidden_as_guest = FALSE;
$which_counter = 'hidden_counter';
$which_row = 'hidden_user_row';
$hidden_users++;
}
else
{
$username = $lang['Guest'];
$hidden_as_guest = TRUE;
$which_counter = 'guest_counter';
$which_row = 'guest_user_row';
$guest_users++;
}
$view_online = true;
$prev_user = $user_id;
}
else
{
$view_online = true;
$registered_users++;
$which_counter = 'reg_counter';
$which_row = 'reg_user_row';
$prev_user = $user_id;
}
}
}
else
{
if ( $row['session_ip'] != $prev_ip )
{
$username = $lang['Guest'];
$view_online = true;
$guest_users++;
$which_counter = 'guest_counter';
$which_row = 'guest_user_row';
}
}
$prev_ip = $row['session_ip'];
----------------------------------------------
Finde
----------------------------------------------
else
{
$location_url = append_sid("viewforum.$phpEx?" . POST_FORUM_URL . '=' . $row['session_page']);
$location = $forum_data[$row['session_page']];
}
----------------------------------------------
Danach Füge ein
----------------------------------------------
if ( $hidden_as_guest )
{
$location = $lang['Forum_index'];
$location_url = "index.$phpEx";
}
----------------------------------------------
Finde
----------------------------------------------
$template->assign_vars(array(
'TOTAL_REGISTERED_USERS_ONLINE' => sprintf($l_r_user_s, $registered_users) . sprintf($l_h_user_s, $hidden_users),
'TOTAL_GUEST_USERS_ONLINE' => sprintf($l_g_user_s, $guest_users))
);
---------------------------------------------
Danach Füge ein
----------------------------------------------
if ( $userdata['user_level'] == ADMIN )
{
$template->assign_block_vars('switch_admin_viewing', array());
}
----------------------------------------------
Öffne ----------------------------------------
----------------------------------------------
/templates/Euer_Template/viewonline_body.tpl
----------------------------------------------
Finde
----------------------------------------------
<!-- END reg_user_row -->
----------------------------------------------
Danach Füge ein
----------------------------------------------
<!-- Count_Hidden_Users_@_Guests - Anfang -->
<!-- BEGIN switch_admin_viewing -->
<tr>
<td class="catSides" colspan="3" height="28"><span class="cattitle"><b>{TOTAL_HIDDEN_USERS_ONLINE}</b></span><span class="gensmall"><b>{L_VISIBLE_FOR_ADMINS_ONLY}</b></span></td>
</tr>
<!-- END switch_admin_viewing -->
<!-- BEGIN hidden_user_row -->
<tr>
<td width="35%" class="{hidden_user_row.ROW_CLASS}"> <span class="gen"><a href="{hidden_user_row.U_USER_PROFILE}" class="gen">{hidden_user_row.USERNAME}</a></span> </td>
<td width="25%" align="center" nowrap="nowrap" class="{hidden_user_row.ROW_CLASS}"> <span class="gen">{hidden_user_row.LASTUPDATE}</span> </td>
<td width="40%" class="{hidden_user_row.ROW_CLASS}"> <span class="gen"><a href="{hidden_user_row.U_FORUM_LOCATION}" class="gen">{hidden_user_row.FORUM_LOCATION}</a></span> </td>
</tr>
<!-- END hidden_user_row -->
<!-- Count_Hidden_Users_@_Guests - Ende -->
----------------------------------------------
..to be continued ? ...
----------------------------------------------