public static function isSmartphone() { $wurflDir = OW_DIR_LIB . 'wurfl' . DS; $resourcesDir = OW_DIR_PLUGINFILES . 'base' . DS . 'wurfl' . DS; if (defined('OW_PLUGIN_XP') && OW_PLUGIN_XP) { $resourcesDir = OW_DIR_STATIC_PLUGIN . 'base' . DS . 'wurfl' . DS; } require_once $wurflDir . 'Application.php'; $persistenceDir = $resourcesDir . 'persistence' . DS; $cacheDir = $resourcesDir . 'cache' . DS; // if ( !file_exists($wurflDir) ) // { // mkdir($wurflDir); // chmod($wurflDir, 0777); // mkdir($persistenceDir); // chmod($persistenceDir, 0777); // mkdir($cacheDir); // chmod($cacheDir, 0777); // } $wurflConfig = new WURFL_Configuration_InMemoryConfig(); $wurflConfig->wurflFile($wurflDir . 'wurfl.zip'); $wurflConfig->matchMode('accuracy'); $wurflConfig->allowReload(true); $wurflConfig->capabilityFilter(array("device_os", "device_os_version", "is_tablet", "is_wireless_device", "mobile_browser", "mobile_browser_version", "pointing_method", "preferred_markup", "resolution_height", "resolution_width", "ux_full_desktop", "xhtml_support_level")); $wurflConfig->persistence('file', array('dir' => $persistenceDir)); $wurflConfig->cache('file', array('dir' => $cacheDir, 'expiration' => 36000)); $wurflManagerFactory = new WURFL_WURFLManagerFactory($wurflConfig); $wurflManager = $wurflManagerFactory->create(); $requestingDevice = $wurflManager->getDeviceForHttpRequest($_SERVER); return filter_var($requestingDevice->getVirtualCapability('is_smartphone'), FILTER_VALIDATE_BOOLEAN); }
protected function createWurflClass() { if ($this->arguments->altClass) { $class_name = $this->arguments->altClass->value; if (class_exists($class_name, false) && is_subclass_of($class_name, 'WURFL_WURFLManager')) { $this->wurfl = new $class_name(); } else { throw new WURFL_WURFLCLIInvalidArgumentException("Error: {$class_name} must extend WURFL_WURFLManager."); } } else { $persistenceDir = RESOURCES_DIR . '/storage/persistence'; $cacheDir = RESOURCES_DIR . '/storage/cache'; // Create WURFL Configuration $wurflConfig = new WURFL_Configuration_InMemoryConfig(); // Set location of the WURFL File $wurflConfig->wurflFile(RESOURCES_DIR . '/wurfl.zip'); // Set the match mode for the API ('performance' or 'accuracy') $wurflConfig->matchMode('performance'); // Setup WURFL Persistence $wurflConfig->persistence('file', array('dir' => $persistenceDir)); // Setup Caching $wurflConfig->cache('null'); $wurflConfig->allowReload(true); // Create a WURFL Manager Factory from the WURFL Configuration $wurflManagerFactory = new WURFL_WURFLManagerFactory($wurflConfig); // Create a WURFL Manager $this->wurfl = $wurflManagerFactory->create(); } }
exit; } asort($arr_files); $arr_files = array_slice($arr_files, 0, $process_at_once); if (extension_loaded('xmlreader')) { // Init WURFL library for mobile device detection $wurflDir = _TRACK_LIB_PATH . '/wurfl/WURFL'; $resourcesDir = _TRACK_LIB_PATH . '/wurfl/resources'; require_once $wurflDir . '/Application.php'; $persistenceDir = _CACHE_COMMON_PATH . '/wurfl-persistence'; //$persistenceDir = dirname(__FILE__).'/cache/wurfl-persistence'; $cacheDir = _CACHE_COMMON_PATH . '/wurfl-cache'; $wurflConfig = new WURFL_Configuration_InMemoryConfig(); $wurflConfig->wurflFile(_TRACK_STATIC_PATH . '/wurfl/wurfl_1.5.3.xml'); $wurflConfig->matchMode('accuracy'); $wurflConfig->allowReload(true); $wurflConfig->persistence('file', array('dir' => $persistenceDir)); $wurflConfig->cache('file', array('dir' => $cacheDir, 'expiration' => 36000)); $wurflManagerFactory = new WURFL_WURFLManagerFactory($wurflConfig); $wurflManager = $wurflManagerFactory->create(); } //dmp($arr_files); foreach ($arr_files as $cur_file) { echo $cur_file . ' : '; $name_parts = explode('_', $cur_file); if (count($name_parts) > 2 && !empty($tracklist[$name_parts[2]]['timeshift'])) { $slave_timeshift = $tracklist[$name_parts[2]]['timeshift']; } else { $slave_timeshift = 0; } $file_name = _CACHE_PATH . "/clicks/{$cur_file}+";
function load_wurfl_manager() { global $wurflManager; if (defined('_XMLREADER_INSTALLED') && _XMLREADER_INSTALLED || extension_loaded('xmlreader')) { // Init WURFL library for mobile device detection $wurflDir = _TRACK_LIB_PATH . '/wurfl/WURFL'; $resourcesDir = _TRACK_LIB_PATH . '/wurfl/resources'; require_once $wurflDir . '/Application.php'; $persistenceDir = _CACHE_COMMON_PATH . '/wurfl-persistence'; $cacheDir = _CACHE_COMMON_PATH . '/wurfl-cache'; $wurflConfig = new WURFL_Configuration_InMemoryConfig(); $wurflConfig->wurflFile(_TRACK_STATIC_PATH . '/wurfl/wurfl_1.5.3.xml'); $wurflConfig->matchMode('accuracy'); $wurflConfig->allowReload(true); $wurflConfig->persistence('file', array('dir' => $persistenceDir)); $wurflConfig->cache('file', array('dir' => $cacheDir, 'expiration' => 36000)); $wurflManagerFactory = new WURFL_WURFLManagerFactory($wurflConfig); $wurflManager = $wurflManagerFactory->create(); } }