File indexing completed on 2024-12-22 05:36:47

0001 <?php
0002 /**
0003  * Zend Framework
0004  *
0005  * LICENSE
0006  *
0007  * This source file is subject to the new BSD license that is bundled
0008  * with this package in the file LICENSE.txt.
0009  * It is also available through the world-wide-web at this URL:
0010  * http://framework.zend.com/license/new-bsd
0011  * If you did not receive a copy of the license and are unable to
0012  * obtain it through the world-wide-web, please send an email
0013  * to license@zend.com so we can send you a copy immediately.
0014  *
0015  * @category   Zend
0016  * @package    Zend_Http
0017  * @subpackage UserAgent
0018  * @copyright  Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
0019  * @license    http://framework.zend.com/license/new-bsd     New BSD License
0020  */
0021 
0022 // require_once 'Zend/Http/UserAgent/Desktop.php';
0023 
0024 /**
0025  * Validator browser type matcher
0026  *
0027  * @category   Zend
0028  * @package    Zend_Http
0029  * @subpackage UserAgent
0030  * @copyright  Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
0031  * @license    http://framework.zend.com/license/new-bsd     New BSD License
0032  */
0033 class Zend_Http_UserAgent_Validator extends Zend_Http_UserAgent_Desktop
0034 {
0035     /**
0036      * User Agent Signatures
0037      *
0038      * @var array
0039      */
0040     protected static $_uaSignatures = array(
0041         'htmlvalidator',
0042         'csscheck',
0043         'cynthia',
0044         'htmlparser',
0045         'validator',
0046         'jfouffa',
0047         'jigsaw',
0048         'w3c_validator',
0049         'wdg_validator',
0050     );
0051 
0052     /**
0053      * Comparison of the UserAgent chain and User Agent signatures
0054      *
0055      * @param string $userAgent User Agent chain
0056      * @param  array $server $_SERVER like param
0057      * @return bool
0058      */
0059     public static function match($userAgent, $server)
0060     {
0061         return self::_matchAgentAgainstSignatures($userAgent, self::$_uaSignatures);
0062     }
0063 
0064     /**
0065      * Gives the current browser type
0066      *
0067      * @return string
0068      */
0069     public function getType()
0070     {
0071         return 'validator';
0072     }
0073 }