xref: /plugin/statistics/SearchEngines.php (revision 2d987c80a608e500f10cdf4236b2867cb2b459d9)
1<?php
2
3namespace dokuwiki\plugin\statistics;
4
5/**
6 * Defines regular expressions for the most common search engines
7 */
8class SearchEngines
9{
10
11
12    protected $SEARCHENGINEINFO = [
13        'google' => ['Google', 'http://www.google.com'],
14        'yahoo' => ['Yahoo!', 'http://www.yahoo.com'],
15        'yandex' => ['Яндекс (Yandex)', 'http://www.yandex.ru'],
16        'naver' => ['네이버 (Naver)', 'http://www.naver.com'],
17        'baidu' => ['百度 (Baidu)', 'http://www.baidu.com'],
18        'ask' => ['Ask', 'http://www.ask.com'],
19        'babylon' => ['Babylon', 'http://search.babylon.com'],
20        'aol' => ['AOL Search', 'http://search.aol.com'],
21        'duckduckgo' => ['DuckDuckGo', 'http://duckduckgo.com'],
22        'bing' => ['Bing', 'http://www.bing.com']
23    ];
24
25    protected $SEARCHENGINES = ['^(\w+\.)*google(\.co)?\.([a-z]{2,5})$' => ['google', 'q'],
26        '^(\w+\.)*bing(\.co)?\.([a-z]{2,5})$' => ['bing', 'q'],
27        '^(\w+\.)*yandex(\.co)?\.([a-z]{2,5})$' => ['yandex', 'query'],
28        '^(\w+\.)*yahoo\.com$' => ['yahoo', 'p'],
29        '^search\.naver\.com$' => ['naver', 'query'],
30        '^(\w+\.)*baidu\.com$' => ['baidu', 'wd', 'word', 'kw'],
31        '^search\.avg\.com$' => ['google', 'q'],
32        '^(\w+\.)*ask\.com$' => ['ask', 'ask', 'q', 'searchfor'],
33        '^(\w+\.)*search-results\.com$' => ['ask', 'ask', 'q', 'searchfor'],
34        '^search\.babylon\.com$' => ['babylon', 'q'],
35        '^(\w+\.)*(aol)?((search|recherches?|images|suche|alicesuche)\.)aol(\.co)?\.([a-z]{2,5})$' => ['aol', 'query', 'q'],
36        '^duckduckgo\.com$' => ['duckduckgo', 'q']];
37
38
39    public function __construct()
40    {
41        // add the internal DokuWiki search engine
42        'dokuwiki' => ['DokuWiki Internal Search', wl()],
43
44
45    }
46
47}
48