botsmod color

Hulp nodig bij een modificaties of op zoek naar een MOD? Bekijk ons archief. Support wordt helaas niet meer verleend.
Forumregels

Sinds 1 januari 2009 wordt phpBB2 niet meer ondersteund.
Onderstaande informatie is verouderd en dient uitsluitend als archief.
phpBB2.0.x
Gesloten
funnyman
Berichten: 230
Lid geworden op: 08 nov 2004, 11:34
Locatie: Emmen
Contacteer:

botsmod color

Bericht door funnyman » 21 apr 2005, 18:41

hallo, ik heb de botsmod geinstalleerd, wil alleen de kleur veraderen bij de 'who is online' krijg dit alleen niet voor elkaar...

hier is de mod, iemand een idee??

Code: Selecteer alles

#-----[ OPEN  ]------------------------------------------------------
includes/sessions.php 

#-----[ FIND ]-------------------------------------------------------
global $SID; 

if ( !empty($SID) && !preg_match('#sid=#', $url) )

#-----[ REPLACE WITH ]-----------------------------------------------
global $SID; 

if ( !empty($SID) && !preg_match('#sid=#', $url) && !IS_ROBOT ) 

#-----[ FIND ]-------------------------------------------------------
	// Create or update the session

#-----[ INSERT BEFORE ]----------------------------------------------
	$robot = ( ( defined('IS_ROBOT') ) ? IS_ROBOT : 0 );

#-----[ INLINE FIND ]------------------------------------------------
session_page = $page_id, session_logged_in = $login

#-----[ INLINE AFTER, ADD ]------------------------------------------
, is_robot = '$robot'

#-----[ INLINE FIND ]------------------------------------------------
session_page, session_logged_in

#-----[ INLINE AFTER, ADD ]------------------------------------------
, is_robot

#-----[ INLINE FIND ]------------------------------------------------
'$user_ip', $page_id, $login

#-----[ INLINE AFTER, ADD ]------------------------------------------
, '$robot'

#-----[ OPEN  ]------------------------------------------------------
viewonline.php 

#-----[ INLINE FIND ]------------------------------------------------
s.session_page, s.session_ip

#-----[ INLINE AFTER, ADD ]------------------------------------------
, s.is_robot

#-----[ FIND ]-------------------------------------------------------
			$username = $lang['Guest'];

#-----[ REPLACE WITH ]-----------------------------------------------
			if($row['is_robot']) 
			{ 
				$username = $row['is_robot'] . ' ( Bots )'; 
			} else {
				$username = $lang['Guest'];
			}

#-----[ OPEN  ]------------------------------------------------------
includes/page_header.php 

#-----[ INLINE FIND ]------------------------------------------------
s.session_logged_in, s.session_ip

#-----[ INLINE AFTER, ADD ]------------------------------------------
, s.is_robot

#-----[ FIND ]-------------------------------------------------------
				$guests_online++;

#-----[ AFTER, ADD ]-----------------------------------------------
				if( $row['is_robot'] ) 
				{ 
					<b style="color:#9E8DA7"> . $online_userlist = $row['is_robot'] . (($online_userlist!='') ? ', ' : '') . $online_userlist . </b>; 
				} 

#-----[ OPEN  ]------------------------------------------------------
common.php 

#-----[ FIND ]-------------------------------------------------------
?>

#-----[ INSERT BEFORE ]----------------------------------------------
define('IS_ROBOT', is_robot() );

#-----[ OPEN  ]------------------------------------------------------
includes/functions.php 

#-----[ FIND  ]------------------------------------------------------
	global $board_config, $theme, $images;

#-----[ REPLACE WITH  ]----------------------------------------------
	global $board_config, $theme, $images, $db, $table_prefix;

#-----[ FIND  ]------------------------------------------------------
	$theme = setup_style($board_config['default_style']);

#-----[ REPLACE WITH  ]----------------------------------------------
	if (IS_ROBOT)
	{
		$sql = "SELECT bot_style FROM " . $table_prefix . "bots WHERE bot_name='" . IS_ROBOT . "'";
		$result = $db->sql_query($sql);
		$row = $db->sql_fetchrow($result);
		$theme = setup_style($row['bot_style']);	
	} else {
		$theme = setup_style($board_config['default_style']);
	}

#-----[ FIND ]------------------------------------------------------
?>

#-----[ INSERT BEFORE ]---------------------------------------------

// 
// Part of bot MOD: This function checks whether the user agent or ip is
// listed as a bot and returns true otherwise false.
// 
function is_robot() 
{ 
	global $db, $HTTP_SERVER_VARS, $table_prefix;

	// define bots table - for the users who are to lazy to edit constants.php hehehe!
	define('BOTS_TABLE', $table_prefix . "bots");

	// get required user data
	$user_ip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
	$user_agent = $HTTP_SERVER_VARS['HTTP_USER_AGENT'];

	// get bot table data
	$sql = "SELECT bot_agent, bot_ip, bot_id, bot_visits, last_visit, bot_pages, bot_name 
	FROM " . BOTS_TABLE;

	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, 'Could not obtain bot data.', '', __LINE__, __FILE__, $sql);
	}

	// loop through bots table
	while ($row = $db->sql_fetchrow($result))
	{
		// clear vars
		$agent_match = 0;
		$ip_match = 0;

		// check for user agent match
		foreach (explode('|', $row['bot_agent']) as $bot_agent)
		{
			if ($row['bot_agent'] && $bot_agent != '' && preg_match('#' . preg_quote($bot_agent, '#') . '#i', $user_agent)) $agent_match = 1;
		}

		// check for ip match
		foreach (explode('|', $row['bot_ip']) as $bot_ip)
		{
			if ($row['bot_ip'] && $bot_ip != '' && strpos($user_ip, $bot_ip) === 0)
			{
				$ip_match = 1;
				break;
			}
		}

		// if both ip and agent matched update table and return true
		if ($agent_match == 1 && $ip_match == 1)
		{
			// get time - seconds from epoch
			$today = time();

			$last_visits = explode('|', $row['last_visit']);

			// if half an hour has passed since last visit
			if (($today - (($last_visits[0] == '') ? 0 : $last_visits[0])) > 2700)
			{
				for ($i = ((4 > sizeof($last_visits)) ? sizeof($last_visits) : 4); $i >= 0; $i--)
				{
					if ($last_visits[$i-1] != '') $last_visits[$i] = $last_visits[$i-1];
				}

				// increment the new visit counter
				$row['bot_visits']++;

				// clear prior indexed pages
				$row['bot_pages'] = 1;
			} else {
				// add to indexed pages
				$row['bot_pages']++;
			}

			$last_visits[0] = $today;

			// compress it all together
			$last_visit = implode("|", $last_visits);

			// update table
			$sql = "UPDATE " . BOTS_TABLE . " 
			SET last_visit='$last_visit', bot_visits='" . $row['bot_visits'] . "', bot_pages='" . $row['bot_pages'] . "'
			WHERE bot_id = " . $row['bot_id'];

			if ( !($result2 = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, 'Couldn\'t update data in bots table.', '', __LINE__, __FILE__, $sql);
			}

			return $row['bot_name'];

		} 
		else 
		{
			if ($agent_match == 1 || $ip_match == 1)

			{

				// get data from table
				$sql = "SELECT pending_" . ((!$agent_match) ? 'agent' : 'ip') . " 
				FROM " . BOTS_TABLE . " 
				WHERE bot_id = " . $row['bot_id'];

				if ( !($result2 = $db->sql_query($sql)) )
				{
					message_die(GENERAL_ERROR, 'Could not obtain bot data.', '', __LINE__, __FILE__, $sql);
				}

				$row2 = $db->sql_fetchrow($result2);

				// add ip/agent to the list
				$pending_array = (( $row2['pending_' . ((!$agent_match) ? 'agent' : 'ip')] ) ? explode('|', $row2['pending_' . ((!$agent_match) ? 'agent' :  'ip')]) : array());

				$found = 0;

				if ( sizeof($pending_array) )
				{
					for ($loop = 0; $loop < count($pending_array); $loop+=2)
					{
						if ($pending_array[$loop] == ((!$agent_match) ? $user_agent : $user_ip)) $found = 1;
					}
				}

				if ($found == 0) 
				{
					$pending_array[] = ((!$agent_match) ? str_replace("|", "|", $user_agent) : $user_ip);
					$pending_array[] = ((!$agent_match) ? $user_ip : str_replace("|", "|", $user_agent));
				}
				$pending = implode("|", $pending_array);

				// update table
				$sql = "UPDATE " . BOTS_TABLE . " 
				SET pending_" . ((!$agent_match) ? 'agent' : 'ip') . "='$pending'
				WHERE bot_id = " . $row['bot_id'];

				if ( !($result2 = $db->sql_query($sql)) )
				{
					message_die(GENERAL_ERROR, 'Couldn\'t update data in bots table.', '', __LINE__, __FILE__, $sql);
				}
			}		
		}

	}

	return 0;
}

# 
#-----[ SAVE/CLOSE ALL FILES ]---------------------------------------
# 
In progress: Stappen in Emmen

Gebruikersavatar
Luuk
Berichten: 7311
Lid geworden op: 22 okt 2003, 10:07
Locatie: Delft

Bericht door Luuk » 21 apr 2005, 18:46

<b style="color:#9E8DA7">
Afbeelding

funnyman
Berichten: 230
Lid geworden op: 08 nov 2004, 11:34
Locatie: Emmen
Contacteer:

Bericht door funnyman » 21 apr 2005, 19:10

ja dat snap ik maar waar moet ik die tussen plakken?
In progress: Stappen in Emmen

Gebruikersavatar
Luuk
Berichten: 7311
Lid geworden op: 22 okt 2003, 10:07
Locatie: Delft

Bericht door Luuk » 21 apr 2005, 19:12

Je hebt dat moeten toevoegen (in includes/page_header.php), daar moet je dus ook de kleur wijzigen.
Afbeelding

funnyman
Berichten: 230
Lid geworden op: 08 nov 2004, 11:34
Locatie: Emmen
Contacteer:

Bericht door funnyman » 21 apr 2005, 19:24

jah maar hoe krijg ik dit zodat het werkt, dit werkt namelijk niet...

<b style="color:#9E8DA7"> heb ik zelf toegevoegd, want ik wil het niet de zelfde kleur als de gebruiekrs hebben

Code: Selecteer alles

           if( $row['is_robot'] ) 
            { 
               <b style="color:#9E8DA7"> . $online_userlist = $row['is_robot'] . (($online_userlist!='') ? ', ' : '') . $online_userlist . </b>; 
            }
In progress: Stappen in Emmen

Gebruikersavatar
Luuk
Berichten: 7311
Lid geworden op: 22 okt 2003, 10:07
Locatie: Delft

Bericht door Luuk » 21 apr 2005, 19:49

Dan moet je het ook zien? De kleur moet werken zo, misschien de mod niet.
Afbeelding

funnyman
Berichten: 230
Lid geworden op: 08 nov 2004, 11:34
Locatie: Emmen
Contacteer:

Bericht door funnyman » 21 apr 2005, 20:05

dan krijg ik dit:

Parse error: parse error, unexpected '<' in /home/the-partycrew.com/area51/includes/page_header.php on line 238
In progress: Stappen in Emmen

Gebruikersavatar
Luuk
Berichten: 7311
Lid geworden op: 22 okt 2003, 10:07
Locatie: Delft

Bericht door Luuk » 21 apr 2005, 20:10

Iets te snel gekeken:

Code: Selecteer alles

           if( $row['is_robot'] )
            {
               $online_userlist = '<b style="color:#9E8DA7">' . $row['is_robot'] . '</b>' . (($online_userlist!='') ? ', ' : '') . $online_userlist;
            }
Afbeelding

funnyman
Berichten: 230
Lid geworden op: 08 nov 2004, 11:34
Locatie: Emmen
Contacteer:

Bericht door funnyman » 21 apr 2005, 20:20

thanx! :thumb:

het werkt ook want de googlebot is aanwezig :D
In progress: Stappen in Emmen

Dennis
Berichten: 431
Lid geworden op: 17 apr 2004, 12:16

Re: botsmod color

Bericht door Dennis » 16 mar 2006, 12:05

Ik kan de mod niet online vinden, iemand een idee waar hij de downloaden is??


Dennis

Raimon
Berichten: 4397
Lid geworden op: 27 aug 2005, 12:59
Contacteer:

Bericht door Raimon » 16 mar 2006, 12:32

De Mod log bots kun je hier vinden: http://www.denturax.com/ftopic303.html

LordO
Berichten: 31
Lid geworden op: 28 sep 2006, 23:51

Bericht door LordO » 08 okt 2006, 13:28

Is deze mod nog steeds ergens te downloaden? genoemde link werkt niet meer.

Raimon
Berichten: 4397
Lid geworden op: 27 aug 2005, 12:59
Contacteer:

Bericht door Raimon » 08 okt 2006, 13:33

Denturax is er mee opgehouden tenminste met zijn site.

Maar er is ook een betere mod, deze bot mod kun je alleen de Bots ingeven en een kleur toewijzen aan de Bot.
Maar de Botloger doet het veel beter.
Je ziet ook bij wie is online de bot, de kleur moet je in de pageheader aanpassen.
Of je moet deze mod een beetje uitbreiden minst je php kennis hebt.

Wat deze mod zich verschilt tussen die van dentuex, nou deze mod logt ze ook nog vast in de database, dat doet die van Gendo weer niet.
Deze mod is vrij makkelijk in gebruik de botlogger, en je kan zelf ook ips van bots invoeren.

Het is maar een idee maar een goede mod, en werkt probleemloos.

Mocht je een demo van de mod willen zien, dan vraag je het maar ik heb er eentje in live gebruik zoals je het resultaat dan kan zien van de mod.

Succes ermee :thumb:

LordO
Berichten: 31
Lid geworden op: 28 sep 2006, 23:51

Bericht door LordO » 08 okt 2006, 13:55

Helemaal fan-tas-tisch! Ik was hier driftig naar aan het zoeken!

:thumb:

calimero
Berichten: 689
Lid geworden op: 13 feb 2006, 12:32
Locatie: amersfoort
Contacteer:

Bericht door calimero » 10 okt 2006, 00:22

hoe kan je die bot nu in een groep zetten ?

Raimon
Berichten: 4397
Lid geworden op: 27 aug 2005, 12:59
Contacteer:

Bericht door Raimon » 10 okt 2006, 01:28

door de mod te installeren, en hem in toe voeren in de database met de ip range.

calimero
Berichten: 689
Lid geworden op: 13 feb 2006, 12:32
Locatie: amersfoort
Contacteer:

Bericht door calimero » 10 okt 2006, 07:52

ik had hem gisteren al geinstaleerd ;) daar kan ik het niet vinden hoe je ze in een groep doet
maar hoe voer je ze in een rang in thnx want ik heb gekeken waar je de rangen moet toe voegen maar staat nikita speciaals tussen

calimero
Berichten: 689
Lid geworden op: 13 feb 2006, 12:32
Locatie: amersfoort
Contacteer:

Bericht door calimero » 16 okt 2006, 15:44

bumb

Raimon
Berichten: 4397
Lid geworden op: 27 aug 2005, 12:59
Contacteer:

Bericht door Raimon » 16 okt 2006, 16:24

Wat zielig een bumpertje :shock:

De Bot mod hoef je helemaal niet in een groep te doen, dat gaat automatisch door middel van de manage bots functie in jou administratie paneel.

Of je zou eventueel een andere kleuren mod moeten hebben die kleuren beheert, en ook bots kleuren beheert, alleen die ondersteunt niet het loggen er van.
Het bedraagt de mod van Justin.

Eventueel zou het te realiseren zijn een addon voor kleuren te beheren :thumb:

Gesloten