aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOleg Pudeyev <oleg@bsdpower.com>2012-11-09 09:20:43 -0500
committerOleg Pudeyev <oleg@bsdpower.com>2012-11-09 09:20:43 -0500
commit100acddf55817b400d1d0ef1a34eebcab290ebc8 (patch)
treef7ea2c297a8014816ec34874ae94b5c1194e79bb
parent02df59f1fe7232789c61a7880c11f00f57f2550a (diff)
parent60ea1c10ef0038fdb00fd38253d4b7407215e699 (diff)
downloadforums-100acddf55817b400d1d0ef1a34eebcab290ebc8.tar
forums-100acddf55817b400d1d0ef1a34eebcab290ebc8.tar.gz
forums-100acddf55817b400d1d0ef1a34eebcab290ebc8.tar.bz2
forums-100acddf55817b400d1d0ef1a34eebcab290ebc8.tar.xz
forums-100acddf55817b400d1d0ef1a34eebcab290ebc8.zip
Merge PR #1042 branch 'bantu/ticket/10897' into develop-olympus
* bantu/ticket/10897: [ticket/10897] Combine bot updates and bot delete. [ticket/10897] Use same code/query for deleting. [ticket/10897] Make sure the user we're fetching is a bot. [ticket/10897] Do not handle IP address. There is no need. [ticket/10897] Update by user_id instead of bot_name. [ticket/10897] Move bot delete data to the relevant foreach loop. [ticket/10897] Add comment about what's going on. [ticket/10897] Remove unnecessary string casting. [ticket/10897] Add space after foreach. [ticket/10897] Update bots during phpBB update [ticket/10897] Bot list updated
-rw-r--r--phpBB/install/database_update.php55
-rw-r--r--phpBB/install/install_install.php16
2 files changed, 60 insertions, 11 deletions
diff --git a/phpBB/install/database_update.php b/phpBB/install/database_update.php
index 099ab6aeb5..f7980ab1be 100644
--- a/phpBB/install/database_update.php
+++ b/phpBB/install/database_update.php
@@ -2119,6 +2119,61 @@ function change_database_data(&$no_updates, $version)
AND module_basename = \'profile\'
AND module_mode = \'signature\'';
_sql($sql, $errored, $error_ary);
+
+ // Update bots
+ if (!function_exists('user_delete'))
+ {
+ include($phpbb_root_path . 'includes/functions_user.' . $phpEx);
+ }
+
+ $bots_updates = array(
+ // Bot Deletions
+ 'NG-Search [Bot]' => false,
+ 'Nutch/CVS [Bot]' => false,
+ 'OmniExplorer [Bot]' => false,
+ 'Seekport [Bot]' => false,
+ 'Synoo [Bot]' => false,
+ 'WiseNut [Bot]' => false,
+
+ // Bot Updates
+ // Bot name to bot user agent map
+ 'Baidu [Spider]' => 'Baiduspider',
+ 'Exabot [Bot]' => 'Exabot',
+ 'Voyager [Bot]' => 'voyager/',
+ 'W3C [Validator]' => 'W3C_Validator',
+ );
+
+ foreach ($bots_updates as $bot_name => $bot_agent)
+ {
+ $sql = 'SELECT user_id
+ FROM ' . USERS_TABLE . '
+ WHERE user_type = ' . USER_IGNORE . "
+ AND username_clean = '" . $db->sql_escape(utf8_clean_string($bot_name)) . "'";
+ $result = $db->sql_query($sql);
+ $bot_user_id = (int) $db->sql_fetchfield('user_id');
+ $db->sql_freeresult($result);
+
+ if ($bot_user_id)
+ {
+ if ($bot_agent === false)
+ {
+ $sql = 'DELETE FROM ' . BOTS_TABLE . "
+ WHERE user_id = $bot_user_id";
+ _sql($sql, $errored, $error_ary);
+
+ user_delete('remove', $bot_user_id);
+ }
+ else
+ {
+ $sql = 'UPDATE ' . BOTS_TABLE . "
+ SET bot_agent = '" . $db->sql_escape($bot_agent) . "'
+ WHERE user_id = $bot_user_id";
+ _sql($sql, $errored, $error_ary);
+ }
+ }
+ }
+
+ $no_updates = false;
break;
}
}
diff --git a/phpBB/install/install_install.php b/phpBB/install/install_install.php
index f1003b07d7..67ebb8b1c5 100644
--- a/phpBB/install/install_install.php
+++ b/phpBB/install/install_install.php
@@ -2103,9 +2103,9 @@ class install_install extends module
'Alexa [Bot]' => array('ia_archiver', ''),
'Alta Vista [Bot]' => array('Scooter/', ''),
'Ask Jeeves [Bot]' => array('Ask Jeeves', ''),
- 'Baidu [Spider]' => array('Baiduspider+(', ''),
- 'Bing [Bot]' => array('bingbot/', ''),
- 'Exabot [Bot]' => array('Exabot/', ''),
+ 'Baidu [Spider]' => array('Baiduspider', ''),
+ 'Bing [Bot]' => array('bingbot/', ''),
+ 'Exabot [Bot]' => array('Exabot', ''),
'FAST Enterprise [Crawler]' => array('FAST Enterprise Crawler', ''),
'FAST WebCrawler [Crawler]' => array('FAST-WebCrawler/', ''),
'Francis [Bot]' => array('http://www.neomo.de/', ''),
@@ -2124,27 +2124,21 @@ class install_install extends module
'MSN NewsBlogs' => array('msnbot-NewsBlogs/', ''),
'MSN [Bot]' => array('msnbot/', ''),
'MSNbot Media' => array('msnbot-media/', ''),
- 'NG-Search [Bot]' => array('NG-Search/', ''),
'Nutch [Bot]' => array('http://lucene.apache.org/nutch/', ''),
- 'Nutch/CVS [Bot]' => array('NutchCVS/', ''),
- 'OmniExplorer [Bot]' => array('OmniExplorer_Bot/', ''),
'Online link [Validator]' => array('online link validator', ''),
'psbot [Picsearch]' => array('psbot/0', ''),
- 'Seekport [Bot]' => array('Seekbot/', ''),
'Sensis [Crawler]' => array('Sensis Web Crawler', ''),
'SEO Crawler' => array('SEO search Crawler/', ''),
'Seoma [Crawler]' => array('Seoma [SEO Crawler]', ''),
'SEOSearch [Crawler]' => array('SEOsearch/', ''),
'Snappy [Bot]' => array('Snappy/1.1 ( http://www.urltrends.com/ )', ''),
'Steeler [Crawler]' => array('http://www.tkl.iis.u-tokyo.ac.jp/~crawler/', ''),
- 'Synoo [Bot]' => array('SynooBot/', ''),
'Telekom [Bot]' => array('crawleradmin.t-info@telekom.de', ''),
'TurnitinBot [Bot]' => array('TurnitinBot/', ''),
- 'Voyager [Bot]' => array('voyager/1.0', ''),
+ 'Voyager [Bot]' => array('voyager/', ''),
'W3 [Sitesearch]' => array('W3 SiteSearch Crawler', ''),
'W3C [Linkcheck]' => array('W3C-checklink/', ''),
- 'W3C [Validator]' => array('W3C_*Validator', ''),
- 'WiseNut [Bot]' => array('http://www.WISEnutbot.com', ''),
+ 'W3C [Validator]' => array('W3C_Validator', ''),
'YaCy [Bot]' => array('yacybot', ''),
'Yahoo MMCrawler [Bot]' => array('Yahoo-MMCrawler/', ''),
'Yahoo Slurp [Bot]' => array('Yahoo! DE Slurp', ''),