Development

Changeset 26947

You must first sign up to be able to contribute.

Changeset 26947

Show
Ignore:
Timestamp:
01/20/10 16:45:50 (3 years ago)
Author:
ornicar2
Message:

[Diem]
- dmBrowserDetection detects better search engine bots

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • plugins/diemPlugin/trunk/dmAdminPlugin/modules/dmLog/lib/dmRequestLogView.php

    r24169 r26947  
    2727  { 
    2828    $browser = $entry->get('browser'); 
     29 
    2930    return sprintf('<div class="clearfix"><div class="browser browser_block %s fleft"></div><strong class="mr10">%s %s</strong><span class="light">%s</span>', 
    30       $browser->getName(), 
     31      $this->getBrowserIcon($browser), 
    3132      ucfirst($browser->getName()), 
    3233      $browser->getVersion(), 
    3334      str_replace('Linux', '<strong>Linux</strong>', $entry->get('user_agent')) 
    3435    ); 
     36  } 
     37 
     38  protected function getBrowserIcon($browser) 
     39  { 
     40    if(in_array($browser->getName(), array('googlebot', 'yahoobot', 'msnbot'))) 
     41    { 
     42      $icon = $browser. 'browser_bot'; 
     43    } 
     44    else 
     45    { 
     46      $icon = $browser; 
     47    } 
     48 
     49    return $icon; 
    3550  } 
    3651   
  • plugins/diemPlugin/trunk/dmAdminPlugin/modules/dmLog/lib/dmRequestLogViewLittle.php

    r23660 r26947  
    1616    $browser = $entry->get('browser'); 
    1717    return sprintf('<div class="browser %s">%s<br />%s %s</div>', 
    18       $browser->getName(), 
     18      $this->getBrowserIcon($browser), 
    1919      ($username = $entry->get('username')) 
    2020      ? '<strong class="mr5">'.$username.'</strong>' 
  • plugins/diemPlugin/trunk/dmCorePlugin/lib/browser/dmBrowserDetection.php

    r26777 r26947  
    2020 
    2121    $this->fixIphone(); 
     22 
     23    $this->fixYahoo(); 
    2224 
    2325    return array('name' => $this->name, 'version' => $this->version); 
     
    7779  } 
    7880 
     81  protected function fixYahoo() 
     82  { 
     83    if (null === $this->name && strpos($this->userAgent, 'yahoo! slurp')) 
     84    { 
     85      $this->name = 'yahoobot'; 
     86    } 
     87  } 
     88 
    7989  protected function getAliases() 
    8090  { 
     
    90100  protected function getKnownBrowsers() 
    91101  { 
    92     return array('msie', 'firefox', 'safari', 'webkit', 'opera', 'netscape', 'konqueror', 'gecko', 'chrome', 'googlebot', 'iphone'); 
     102    return array('msie', 'firefox', 'safari', 'webkit', 'opera', 'netscape', 'konqueror', 'gecko', 'chrome', 'googlebot', 'iphone', 'msnbot'); 
    93103  } 
    94104} 
  • plugins/diemPlugin/trunk/dmCorePlugin/test/unit/dmBrowserTest.php

    r26777 r26947  
    55$helper->boot(); 
    66 
    7 $t = new lime_test(16); 
     7$t = new lime_test(17); 
    88$browser = $helper->get('browser'); 
    99 
     
    2525$feedFetcherGoogle = 'Feedfetcher-Google; (+http://www.google.com/feedfetcher.html; 2 subscribers; feed-id=6924676383167400434)'; 
    2626$iphone = 'Mozilla/5.0 (iPhone; U; CPU iPhone OS 3_1_2 like Mac OS X; de-de) AppleWebKit/528.18 (KHTML, like Gecko) Mobile/7D11'; 
     27$yahooBot = 'Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)'; 
    2728 
    2829$tests = array( 
     
    3233  $safariMac => array('name' => 'safari', 'version' => '4.0', 'is_unknown' => false), 
    3334  $googleBot => array('name' => 'googlebot', 'version' => '2.1', 'is_unknown' => false), 
    34   $msnBot => array('name' => null, 'version' => null, 'is_unknown' => true), 
     35  $msnBot => array('name' => 'msnbot', 'version' => '2.0', 'is_unknown' => false), 
     36  $yahooBot => array('name' => 'yahoobot', 'version' => null, 'is_unknown' => false), 
    3537  $operaWindows => array('name' => 'opera', 'version' => '9.80', 'is_unknown' => false), 
    3638  $firefoxLinux => array('name' => 'firefox', 'version' => '3.0', 'is_unknown' => false), 
  • plugins/diemPlugin/trunk/dmCorePlugin/web/css/browsers.css

    r21557 r26947  
    1212.browser.safari { background-position: 0 -96px; } 
    1313.browser.msie { background-position: 0 -120px; } 
     14.browser.browser_bot { background-position: 0 -168px; }