Welcome Guest, Not a member yet? Register   Sign In
WURFLManagerProvider.php
#1

[eluser]kalpesh[/eluser]
Hi, I try to use WURFL library for mobile site.
I copied the wurfl.xml, web_browser_patch.xml and wurfl-config.xml in the /applications/config - folder
and created a folder /applications/config/cache
I copy a library file which is Wurfl.php in the /applications/libraries - folder

Then i try following code:
Code:
$this->load->library('wurfl');
   $this->wurfl->load($_SERVER['HTTP_USER_AGENT']);
$data['jpg_supported'] = $this->wurfl->getCapability('jpg') ? true : false;

But i get following error
Code:
Fatal error: Call to a member function getDeviceForUserAgent() on a non-object in C:\Program Files\EasyPHP 2.0b1\www\MobileSite\system\application\libraries\Wurfl.php on line 27

My Library file for Wurfl.php is as follow:
Code:
<?php
if (!defined('BASEPATH')) exit('No direct script access allowed');
class Wurfl {
    
    var $wurflManager;
    var $device;
    var $id;
    var $fallBack;
    
    function Wurfl(){
        $providerPath = 'libraries/WURFL/WURFLManagerProvider.php';
        if (is_file(APPPATH . $providerPath)){
            require_once(APPPATH . $providerPath);
        } else if (is_file(BASEPATH . $providerPath)){
            require_once(BASEPATH . $providerPath);
        } else {
            return false;
        }
        
        $this->wurflManager = WURFL_WURFLManagerProvider::getWURFLManager(APPPATH . 'config/wurfl-config.xml');
    }
    
    function load($device = ""){
        if (is_array($device)){
            $this->device = $this->wurflManager->getDeviceForHttpRequest($device);
        } else {
            $this->device = $this->wurflManager->getDeviceForUserAgent($device);
        }
        
        if (!empty($this->device)){
            $this->id = $this->device->id;
            $this->fallBack = $this->device->fallBack;
        } else {
            return false;
        }
    }
    
    function getDevice(){
        return $this->device;
    }
    
    function getCapability($capabilityName = ""){
        return $this->device->getCapability($capabilityName);
    }
    
    function getAllCapabilities(){
        return $this->device->getAllCapabilities();
    }
    
    function getId(){
        return $this->id;
    }
    
    function getFallback(){
        return $this->fallback;
    }
    
}

Please help me
Thanks in advance
#2

[eluser]RaBu[/eluser]
Hi, I'm also stuck with a problem using the WURFL lib - eg. take a look in this thread.

Please let me know if you get it to work...




Theme © iAndrew 2016 - Forum software by © MyBB