PATH:
home
/
centosnipponia
/
public_html
/
nipponiacom2
/
libraries
/
regularlabs
/
src
/
Condition
<?php /** * @package Regular Labs Library * @version 19.2.10100 * * @author Peter van Westen <info@regularlabs.com> * @link http://www.regularlabs.com * @copyright Copyright © 2019 Regular Labs All Rights Reserved * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL */ namespace RegularLabs\Library\Condition; defined('_JEXEC') or die; use RegularLabs\Library\MobileDetect; use RegularLabs\Library\RegEx; /** * Class Agent * @package RegularLabs\Library\Condition */ abstract class Agent extends \RegularLabs\Library\Condition { var $agent = null; var $device = null; var $is_mobile = false; /** * isPhone */ public function isPhone() { return $this->isMobile(); } /** * isMobile */ public function isMobile() { return $this->getDevice() == 'mobile'; } /** * isTablet */ public function isTablet() { return $this->getDevice() == 'tablet'; } /** * isDesktop */ public function isDesktop() { return $this->getDevice() == 'desktop'; } /** * passBrowser */ public function passBrowser($browser = '') { if ( ! $browser) { return false; } if ($browser == 'mobile') { return $this->isMobile(); } // also check for _ instead of . $browser = RegEx::replace('\\\.([^\]])', '[\._]\1', $browser); $browser = str_replace('\.]', '\._]', $browser); return RegEx::match($browser, $this->getAgent(), $match, 'i'); } /** * setDevice */ private function getDevice() { if ( ! is_null($this->device)) { return $this->device; } $detect = new MobileDetect; $this->is_mobile = $detect->isMobile(); switch (true) { case($detect->isTablet()): $this->device = 'tablet'; break; case ($detect->isMobile()): $this->device = 'mobile'; break; default: $this->device = 'desktop'; } return $this->device; } /** * getAgent */ private function getAgent() { if ( ! is_null($this->agent)) { return $this->agent; } $detect = new MobileDetect; $agent = $detect->getUserAgent(); switch (true) { case (stripos($agent, 'Trident') !== false): // Add MSIE to IE11 and others missing it $agent = RegEx::replace('(Trident/[0-9\.]+;.*rv[: ]([0-9\.]+))', '\1 MSIE \2', $agent); break; case (stripos($agent, 'Chrome') !== false): // Remove Safari from Chrome $agent = RegEx::replace('(Chrome/.*)Safari/[0-9\.]*', '\1', $agent); // Add MSIE to IE Edge and remove Chrome from IE Edge $agent = RegEx::replace('Chrome/.*(Edge/[0-9])', 'MSIE \1', $agent); break; case (stripos($agent, 'Opera') !== false): $agent = RegEx::replace('(Opera/.*)Version/', '\1Opera/', $agent); break; } $this->agent = $agent; return $this->agent; } }
[+]
..
[-] Agent.php
[edit]
[-] AgentBrowser.php
[edit]
[-] AgentDevice.php
[edit]
[-] AgentOs.php
[edit]
[-] Akeebasubs.php
[edit]
[-] AkeebasubsLevel.php
[edit]
[-] AkeebasubsPagetype.php
[edit]
[-] Component.php
[edit]
[-] Content.php
[edit]
[-] ContentArticle.php
[edit]
[-] ContentCategory.php
[edit]
[-] ContentPagetype.php
[edit]
[-] Cookieconfirm.php
[edit]
[-] Date.php
[edit]
[-] DateDate.php
[edit]
[-] DateDay.php
[edit]
[-] DateMonth.php
[edit]
[-] DateSeason.php
[edit]
[-] DateTime.php
[edit]
[-] Easyblog.php
[edit]
[-] EasyblogCategory.php
[edit]
[-] EasyblogItem.php
[edit]
[-] EasyblogKeyword.php
[edit]
[-] EasyblogPagetype.php
[edit]
[-] EasyblogTag.php
[edit]
[-] Flexicontent.php
[edit]
[-] FlexicontentPagetype.php
[edit]
[-] FlexicontentTag.php
[edit]
[-] FlexicontentType.php
[edit]
[-] Form2content.php
[edit]
[-] Form2contentProject.php
[edit]
[-] Geo.php
[edit]
[-] GeoContinent.php
[edit]
[-] GeoCountry.php
[edit]
[-] GeoPostalcode.php
[edit]
[-] GeoRegion.php
[edit]
[-] Hikashop.php
[edit]
[-] HikashopCategory.php
[edit]
[-] HikashopPagetype.php
[edit]
[-] HikashopProduct.php
[edit]
[-] Homepage.php
[edit]
[-] Ip.php
[edit]
[-] K2.php
[edit]
[-] K2Category.php
[edit]
[-] K2Item.php
[edit]
[-] K2Pagetype.php
[edit]
[-] K2Tag.php
[edit]
[-] Language.php
[edit]
[-] Menu.php
[edit]
[-] Mijoshop.php
[edit]
[-] MijoshopCategory.php
[edit]
[-] MijoshopPagetype.php
[edit]
[-] MijoshopProduct.php
[edit]
[-] Php.php
[edit]
[-] Redshop.php
[edit]
[-] RedshopCategory.php
[edit]
[-] RedshopPagetype.php
[edit]
[-] RedshopProduct.php
[edit]
[-] Tag.php
[edit]
[-] Template.php
[edit]
[-] Url.php
[edit]
[-] User.php
[edit]
[-] UserAccesslevel.php
[edit]
[-] UserGrouplevel.php
[edit]
[-] UserUser.php
[edit]
[-] Virtuemart.php
[edit]
[-] VirtuemartCategory.php
[edit]
[-] VirtuemartPagetype.php
[edit]
[-] VirtuemartProduct.php
[edit]
[-] Zoo.php
[edit]
[-] ZooCategory.php
[edit]
[-] ZooItem.php
[edit]
[-] ZooPagetype.php
[edit]
[-] .htaccess.disabled
[edit]