<?php 
  // have to put this into a php block or the <?xml will be put as a PHP syntax error on extended code escape 
  echo '<?xml version="1.0" encoding="UTF-8"?>'; 
?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head> 
  <!-- Generic browser family --> 
  <title>DomCore Demos, a WebAbility® Network Project</title> 
  <meta http-equiv="PRAGMA" content="NO-CACHE" /> 
  <meta http-equiv="Expires" content="-1" /> 
 
  <meta name="Keywords" content="WAJAF, WebAbility" /> 
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
  <meta name="Charset" content="UTF-8" /> 
  <meta name="Language" content="en" /> 
  <link rel="stylesheet" href="/skins/css/domcore.css" type="text/css" /> 
 
</head> 
<body> 
 
<div class="container"> 
 
<a href="../index.html" class="back">« Back to the index</a><br /> 
<br /> 
 
<h1>\core\WADebug example</h1> 
 
<?php 
 
// We assure any DomCore library we call will be automatically loaded 
include_once '../include/__autoload.lib'; 
 
define('WADEBUG', true); 
setlocale(LC_ALL, 'es_MX.UTF8', 'es_MX', ''); 
date_default_timezone_set('America/Mexico_City'); 
 
echo "We are testing this on:<br />"; 
echo "DomCore version ".\core\WADebug::VERSION."<br />"; 
echo "HTML API ? ".(\core\WADebug::getHTMLAPI()?'Yes':'No')."<br />"; 
echo "OS Type ? ".(\core\WADebug::getOSType()==\core\WADebug::WINDOWS?'Windows':(\core\WADebug::getOSType()==\core\WADebug::UNIX?'Unix':'Mac'))."<br />"; 
echo "<br />"; 
 
class vehicle extends \core\WADebug 
{ 
  protected $speed; 
 
  public function __construct($speed) 
  { 
    parent::__construct(); 
    $this->speed = $speed; 
  } 
} 
 
class car extends vehicle 
{ 
  public $color; 
  private $brand; 
 
  public function __construct($brand, $color) 
  { 
    parent::__construct(200); 
    $this->brand = $brand; 
    $this->color = $color; 
  } 
 
  public function setColor($color) 
  { 
    // We could call directly the doDebug method, but making the test here, it's extremely faster for the interpreter 
    if (self::$debug || $this->localdebug) 
      $this->doDebug("Method call: car->setColor( % )", \core\WADebug::USER, $color); 
 
    $this->color = $color; 
  } 
 
  public function getColor() 
  { 
    // We could call directly the doDebug method, but making the test here, it's extremely faster for the interpreter 
    if (self::$debug || $this->localdebug) 
      $this->doDebug("Method call: car->getColor()", \core\WADebug::USER); 
 
    return $this->color; 
  } 
} 
 
$mycar = new car('Ford Fiesta', 'red'); 
 
// We show all the properties of mycar 
// check that the total quantity of instances is 1 since we only created one up to now 
echo "Show the instance mycar:<br />"; 
echo $mycar->explain(); 
echo "<br />"; 
 
class plane extends vehicle 
{ 
  public $number_of_motors; 
  protected $color; 
 
  public function __construct($number_of_motors) 
  { 
    parent::__construct(1500); 
    $this->number_of_motors = $number_of_motors; 
  } 
 
  public function setColor($color) 
  { 
    // We could call directly the doDebug method, but making the test here, it's extremely faster for the interpreter 
    if (self::$debug || $this->localdebug) 
      $this->doDebug("Method call: plane->setColor( % )", \core\WADebug::USER, $color); 
 
    $this->color = $color; 
  } 
 
  public function getColor() 
  { 
    // We could call directly the doDebug method, but making the test here, it's extremely faster for the interpreter 
    if (self::$debug || $this->localdebug) 
      $this->doDebug("Method call: plane->getColor()", \core\WADebug::USER); 
 
    return $this->color; 
  } 
} 
 
$myplane = new plane(4); 
 
// We show all the properties of myplane 
// check that the total quantity of instances is now 2 since we only created another one up to now 
echo "Show the instance mycar again:<br />"; 
echo $mycar->explain(); 
echo "<br />"; 
 
echo "Show the instance myplane:<br />"; 
echo $myplane->explain(); 
echo "<br />"; 
 
echo "Let's paint our properties in blue:<br />"; 
$mycar->setColor('blue'); 
$myplane->setColor('blue'); 
echo "My car is ".$mycar->getColor()."<br />"; 
echo "My plane is ".$myplane->getColor()."<br />"; 
echo "<br />"; 
 
// We switch to local debug mode 
echo "Let's switch car local debug On:<br /><br />"; 
$mycar->setLocalDebug(true); 
 
echo "Let's paint our properties in green:<br />"; 
$mycar->setColor('green'); 
$myplane->setColor('green'); 
echo "My car is ".$mycar->getColor()."<br />"; 
echo "My plane is ".$myplane->getColor()."<br />"; 
echo "<br />"; 
 
// We switch to full debug 
echo "Let's switch global debug On:<br /><br />"; 
\core\WADebug::setDebug(true); 
 
echo "Let's paint our properties again:<br />"; 
$mycar->setColor('orange'); 
$myplane->setColor('black'); 
echo "My car is ".$mycar->getColor()."<br />"; 
echo "My plane is ".$myplane->getColor()."<br />"; 
echo "<br />"; 
 
echo "Show the instance mycar again:<br />"; 
echo $mycar->explain(); 
echo "<br />"; 
 
echo "Show the instance myplane again:<br />"; 
echo $myplane->explain(); 
echo "<br />"; 
 
?> 
 
<br /> 
<br /> 
<br /> 
<br /> 
 
<a href="../index.html" class="back">« Back to the index</a><br /> 
 
</div> 
 
</body> 
</html> 
 
 |