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

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_Application
0017  * @subpackage Resource
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 /**
0023  * @category   Zend
0024  * @package    Zend_Application
0025  * @subpackage Resource
0026  * @copyright  Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
0027  * @license    http://framework.zend.com/license/new-bsd     New BSD License
0028  */
0029 class Zend_Application_Resource_UserAgent extends Zend_Application_Resource_ResourceAbstract
0030 {
0031     /**
0032      * @var Zend_Http_UserAgent
0033      */
0034     protected $_userAgent;
0035     
0036     /**
0037      * Intialize resource
0038      *
0039      * @return Zend_Http_UserAgent
0040      */
0041     public function init()
0042     {
0043         $userAgent = $this->getUserAgent();
0044 
0045         // Optionally seed the UserAgent view helper
0046         $bootstrap = $this->getBootstrap();
0047         if ($bootstrap->hasResource('view') || $bootstrap->hasPluginResource('view')) {
0048             $bootstrap->bootstrap('view');
0049             $view = $bootstrap->getResource('view');
0050             if (null !== $view) {
0051                 $view->userAgent($userAgent);
0052             }
0053         }
0054 
0055         return $userAgent;
0056     }
0057     
0058     /**
0059      * Get UserAgent instance
0060      *
0061      * @return Zend_Http_UserAgent
0062      */
0063     public function getUserAgent()
0064     {
0065         if (null === $this->_userAgent) {
0066             $options = $this->getOptions();
0067             $this->_userAgent = new Zend_Http_UserAgent($options);
0068         }
0069         
0070         return $this->_userAgent;
0071     }
0072 }