Seite 1 von 1

ShowBotsInOnlineList - Bots im ACP als Gäste aufgeführt

Verfasst: 09.07.2007 23:38
von 4seven
Hallo Leute,

ich habe schon seit längerer Zeit den ShowBotsInOnlineList-Mod eingebaut.

ShowBotsInOnlineList_150_stable

Alles funktioniert hervorragend, bis auf den Punkt, das im ACP die Bots als Gäste angezeigt werden. Auch das übertragen des Codes der ./templates/xxx/viewonline_body.tpl (wo es ja funktioniert) in die ./templates/xxx/admin/index_body.tpl brachte keinen Erfolg. Hab jetzt schon ewig dran rumprobiert und alles x-fach überpüft. :(

Wie ich weiß, haben mehrere Leute das Problem und kurz bevor www.source-code.de zum Re-Design geschlossen wurde, präsentierte jemand eine Lösung für das Orion-Board, aber halt nicht für das PHPBB.

Zumindest konnte ich (wie ich meine zu wissen) den Fehler soweit eingrenzen, das es damit zu tun hat, das entweder die Anweisung in der ./admin/index.php (siehe Code) für die Bot-Anzeige ./templates/xxx/admin/index_body.tpl komplett ignoriert wird oder bestimmte Variablen, wie z.B. $BotStr (siehe Code) nicht "richtig" an die ./templates/xxx/admin/index_body.tpl übergeben werden *grübel. Vielleicht hat jemand eine Lösung oder dasselbe Problem. Ich wäre für jeden Tip dankbar.

Code: Alles auswählen

// start ShowBotsInOnlineList
			else
			{
				$location_url = append_sid("admin_forums.$phpEx?mode=editforum&" . POST_FORUM_URL . "=" . $onlinerow_guest_bot[$i]['session_page']);
				$location = $forum_data[$onlinerow_guest_bot[$i]['session_page']];
			}

			if (strlen($BotStr) > 0)
			{
				$row_color = ( $bots_online % 2 ) ? $theme['td_color1'] : $theme['td_color2'];
				$row_class = ( $bots_online % 2 ) ? $theme['td_class1'] : $theme['td_class2'];

				$bot_ip = decode_ip($onlinerow_guest_bot[$i]['session_ip']);
			        $bot = $onlinerow_guest_bot[$i]['UserAgent'];
			        $useragent = "<a title=\"$bot\" onClick=\"window.open('showuseragent.php?agent=$bot', 'UserAgent','width=750,height=10')\">#</a>";

				$template->assign_block_vars("bot_row", array(
					"ROW_COLOR" => "#" . $row_color,
					"ROW_CLASS" => $row_class,
					"USERNAME" => $BotStr,
					"STARTED" => create_date($board_config['default_dateformat'], $onlinerow_guest_bot[$i]['session_start'], $board_config['board_timezone']),
					"LASTUPDATE" => create_date($board_config['default_dateformat'], $onlinerow_guest_bot[$i]['session_time'], $board_config['board_timezone']),
					"FORUM_LOCATION" => $location,
					"IP_ADDRESS" => $bot_ip,
        			"SHOWUSERAGENT" => $useragent,
					"U_WHOIS_IP" => "http://whois.domaintools.com/$bot_ip",
					"U_FORUM_LOCATION" => append_sid($location_url))
				);
			}
			else
			{
				$row_color = ( $guest_users % 2 ) ? $theme['td_color1'] : $theme['td_color2'];
				$row_class = ( $guest_users % 2 ) ? $theme['td_class1'] : $theme['td_class2'];

				$guest_ip = decode_ip($onlinerow_guest_bot[$i]['session_ip']);
			        $bot = $onlinerow_guest_bot[$i]['UserAgent'];
			        $useragent = "<a title=\"$bot\" onClick=\"window.open('showuseragent.php?agent=$bot', 'UserAgent','width=750,height=10')\">#</a>";

				$template->assign_block_vars("guest_user_row", array(
					"ROW_COLOR" => "#" . $row_color,
					"ROW_CLASS" => $row_class,
					"USERNAME" => $lang['Guest'],
					"STARTED" => create_date($board_config['default_dateformat'], $onlinerow_guest_bot[$i]['session_start'], $board_config['board_timezone']),
					"LASTUPDATE" => create_date($board_config['default_dateformat'], $onlinerow_guest_bot[$i]['session_time'], $board_config['board_timezone']),
					"FORUM_LOCATION" => $location,
					"IP_ADDRESS" => $guest_ip,
        			"SHOWUSERAGENT" => $useragent,
					"U_WHOIS_IP" => "http://whois.domaintools.com/$guest_ip",
					"U_FORUM_LOCATION" => append_sid($location_url))
				);
			}
		}
	}
	// end ShowBotsInOnlineList
gruß
4seven

Verfasst: 10.07.2007 00:53
von redbull254
Hallo, 4seven

ich habe das gleiche 'Problem' und soviel ich weiß, ist dafür nie eine Lösung gefunden worden. Ich habe es jedenfalls nie lesen können, das jemand den Fehler und dazu eine Lösung gefunden hat.

Verfasst: 10.07.2007 01:49
von 4seven
Hallo redbull254

"Schön", einen Leidensgenossen zu treffen :roll:

Ein neuer Ansatz:

Die Anweisung zur Bildung des Rows bot_row im ACP ./templates/xxx/admin/index_body.tpl und deren Inhaltsfelder (wie z.B. {bot_row.ROW_USERNAME} ) werden tatsächlich komplett ignoriert. Benennt man die Anfangs- und Endrow-Anweisung testweise in <!-- BEGIN user_row --> und <!-- END user_row --> um, wird der Row zwar sichtbar, aber ohne Inhaltsfelder (sie sind weiß). Hmm..

Eine Hinweis noch: Die entsprechende Row-Anweisung in der ja funktionierenden ./templates/xxx/viewonline_body.tpl lautet bots_row

Code: Alles auswählen

  <!-- BEGIN bot_row -->
  <tr>
	<td width="20%" class="{bot_row.ROW_CLASS}">&nbsp;<span class="gen">{bot_row.USERNAME}</span>&nbsp;</td>
	<td width="20%" align="center" class="{bot_row.ROW_CLASS}">&nbsp;<span class="gen">{bot_row.STARTED}</span>&nbsp;</td>
	<td width="20%" align="center" nowrap="nowrap" class="{bot_row.ROW_CLASS}">&nbsp;<span class="gen">{bot_row.LASTUPDATE}</span>&nbsp;</td>
	<td width="20%" class="{bot_row.ROW_CLASS}">&nbsp;<span class="gen"><a href="{bot_row.U_FORUM_LOCATION}" class="gen">{bot_row.FORUM_LOCATION}</a></span>&nbsp;</td>
	<td width="20%" class="{bot_row.ROW_CLASS}">&nbsp;<span class="gen"><a href="{bot_row.U_WHOIS_IP}" target="_phpbbwhois">{bot_row.IP_ADDRESS}</a></span>&nbsp;</td>
  </tr>
  <!-- END bot_row -->
Komischerweise funktioniert, wie oben schon beschrieben, die Anweisung aus der ./viewonline.php für die ./templates/xxx/viewonline_body.tpl ja perfekt. Aber die ./admin/index.php - Anweisung nicht für die ./templates/xxx/admin/index_body.tpl. Irgendwie muss doch die Syntax aus der ./viewonline.php in die ./admin/index.php übertragbar sein. Bin inzwischen schon ganz wuschig vom Code checken. Vielleicht hat ja noch jemand einen Ansatz. :(

lg
4seven

Verfasst: 10.07.2007 15:05
von easygo
Warum so kompliziert? Ok wenn du die Datenbankabfrage nicht um die Spalte SearchBot
erweitert hast, kann freilich auch schlecht was angezeigt werden und by the way

Man sollte NIE nie sagen / hier gibts ne einfache Lösung für ->

http://www.net4seven.de/showbots-online ... t1512.html

Verfasst: 10.07.2007 16:43
von 4seven
Hallo easygo

den SearchBot-Eintrag in der Datenbank hab ich gleich als erstes gecheckt. Aber, wie gesagt, in der viewonline funktionierts ja.
Wenn deine Lösung wuppt, kriegste 'n Orden von mir, aber am Band .. und ne bunte Schärpe :D

Check ich gleich heut abend :grin:

Verfasst: 10.07.2007 19:29
von easygo
rofl.. kauf mich, schlag mich! Nur bitte keine bunte Schärpe..
den SearchBot-Eintrag in der Datenbank hab ich gleich als erstes gecheckt.
Ich glaub dir ja, dass die Spalte in deiner Datenbank ist. :wink: Aber was nützt das,
wenn die im Admin Index nicht abgefragt wird? Siehe Anleitung / easy

Verfasst: 10.07.2007 20:37
von 4seven
Okeeee, keine Schärpe *g

Dann aber wenigstens den Orden am Band :D

[ externes Bild ]

Verfasst: 11.07.2007 01:14
von 4seven
Noch n Nachbrenner:

Wer im ACP die Hostadresse der User, Gäste und Bots haben möchte (copyright and thx 2 beehave) ändert die ./admin/index.php wie folgt ab

Code: Alles auswählen

#
#-----[ OPEN ]--------------------------------------------
#

./admin/index.php

#
#-----[ FIND ]--------------------------------------------
#

"IP_ADDRESS" => $reg_ip,

#
#-----[ REPLACE WITH ]------------------------------------------
#

"IP_ADDRESS" => $reg_ip."<br />".gethostbyaddr($reg_ip),

#
#-----[ FIND ]--------------------------------------------
#

"IP_ADDRESS" => $guest_ip,

#
#-----[ REPLACE WITH ]------------------------------------------
#

"IP_ADDRESS" => $guest_ip."<br />".gethostbyaddr($guest_ip),

#
#-----[ FIND ]--------------------------------------------
#

"IP_ADDRESS" => $bot_ip,

#
#-----[ REPLACE WITH ]------------------------------------------
#

"IP_ADDRESS" => $bot_ip."<br />" .gethostbyaddr($bot_ip),
Bei mir waren danach die Links (IP und Host) der Gäste und Bots dauerhaft unterstrichen. Falls es bei euch auch so sein sollte, dann fügt ihr einfach in die ./templates/xxx/admin/index_body.tpl ganz oben das hier ein:

Code: Alles auswählen

<STYLE type="text/css">
<!--
A { text-decoration:none }
-->
</STYLE>
have fun

lg
4seven

Verfasst: 20.01.2008 07:30
von Volker
hallo,

ich frage mal hier gleich weiter. im index bei mir steht

Insgesamt haben heute 258 User das Forum besucht : 3 registrierte, ein versteckter und 254 Gäste davon 25 innerhalb der letzten Stunde.

bei den 254 gästen sind ja die bots mit drin, kann man das nicht trennen?