PHP Classes

File: wapl.php

Recommend this page to a friend!
  Classes of Rich Gubby   Wapple Architect Mobilization   wapl.php   Download  
File: wapl.php
Role: Class source
Content type: text/plain
Description: Wapple Architect WAPL Wrapper class
Class: Wapple Architect Mobilization
Create pages adapted to all mobile devices
Author: By
Last change:
Date: 14 years ago
Size: 4,333 bytes
 

Contents

Class file image Download
<?php
/**
 * Wapple Architect WAPL Wrapper class
 *
 * This class provides an interface into the waplBuilder and waplComms classes.
 * It does error handling and allows configuration of the operation of the other classes.
 *
 * @author Rich Gubby
 * @version 1.0
 * @package WappleArchitect
 */
class wapl
{

   
/**
     * Store the builder classes
     *
     * @access public
     * @var object
     */
   
public $builder;
   
   
/**
     * Store the communication class
     *
     * @access public
     * @var object
     */
   
private $comms;
   
   
/**
     * Are we in debug mode - cookies don't get set if you are
     *
     * @access public
     * @var boolean
     */
   
public $debugMode = false;
   
   
/**
     * Use cookies to remember mobile detection
     *
     * @access public
     * @var boolean
     */
   
public $useCookies = true;
   
   
/**
     * Developer key
     *
     * @access public
     * @var string
     */
   
public $devKey = '';
   
   
/**
     * Store error messages
     *
     * @access public
     * @var array
     */
   
public $errorMessage = array('comms' => array(), 'builder' => array());
   
   
/**
     * Constructor class
     *
     * @access public
     * @return void
     */
   
public function __construct()
    {
        require_once(
'wapl_builder.php');
        require_once(
'wapl_comms.php');
       
       
$this->builder = new waplBuilder($this);
       
$this->comms = new waplComms($this);
       
       
// Check if we've got an error in setup
       
if($this->getErrorMessage('comms'))
        {
            unset(
$this->comms);
        }
    }
   
   
/**
     * Set the developer key
     *
     * @param string $devKey
     * @access public
     * @return void
     */
   
public function setDevKey($devKey)
    {
       
$this->devKey = $devKey;
    }
   
   
/**
     * Set the debug mode
     *
     * @param boolean $debugMode
     * @access public
     * @return void
     */
   
public function setDebugMode($debugMode)
    {
       
$this->debugMode = $debugMode;
    }
   
   
/**
     * Use cookies or not
     *
     * @param boolean $useCookies
     * @access public
     * @return void
     */
   
public function useCookies($useCookies)
    {
       
$this->useCookies = $useCookies;
    }
   
   
/**
     * Set a cookie
     * @param boolean $value
     * @access public
     * @return void
     */
   
public function setCookie($value)
    {
        if(!
$this->debugMode)
        {
           
setcookie("isMobile", $value, time()+3600);
        }
    }
   
   
/**
     * Get any error messages
     *
     * @param string $type
     * @access public
     * @return string
     */
   
public function getErrorMessage($type = '')
    {
        if(isset(
$type) AND $type != '')
        {
            return
implode('. ', $this->errorMessage[$type]);
        }
       
       
$string = '';
        foreach(
$this->errorMessage as $key => $val)
        {
           
$string .= implode('. ', $val);
        }
        return
$string;
    }
   
   
/**
     * Wrapper for checking mobile device
     *
     * @access public
     * @return boolean
     */
   
public function isMobileDevice()
    {
        if(isset(
$this->comms))
        {
            return
$this->comms->isMobileDevice();
        }
        return
false;
    }
   
   
/**
     * Wrapper for getting a mobile device
     *
     * @access public
     * @return mixed
     */
   
public function getMobileDevice()
    {
        if(isset(
$this->comms))
        {
            return
$this->comms->getMobileDevice($url);
        }
        return
false;
    }
   
   
/**
     * Wrapper for getting markup from WAPL
     *
     * @param string $wapl
     * @access public
     * @return mixed
     */
   
public function getMarkupFromWapl($wapl)
    {
        if(isset(
$this->comms))
        {
            return
$this->comms->getMarkupFromWapl($wapl);
        }
        return
false;
    }

   
/**
     * Wrapper for displaying markup from WAPL
     *
     * @param string $wapl
     * @access public
     * @return mixed
     */
   
public function displayMarkupFromWapl($wapl)
    {
        if(isset(
$this->comms))
        {
            return
$this->comms->displayMarkupFromWapl($wapl);
        }
        return
false;
    }
   
   
/**
     * Wrapper for getting markup from URL
     *
     * @param string $url
     * @access public
     * @return mixed
     */
   
public function getMarkupFromUrl($url)
    {
        if(isset(
$this->comms))
        {
            return
$this->comms->getMarkupFromUrl($url);
        }
        return
false;
    }
   
   
/**
     * Wrapper for displaying markup from URL
     *
     * @param string $url
     * @access public
     * @return mixed
     */
   
public function displayMarkupFromUrl($url)
    {
        if(isset(
$this->comms))
        {
            return
$this->comms->displayMarkupFromUrl($url);
        }
        return
false;
    }
}
?>