Tuesday 11 May 2004 7:32:58 am
Usage:
$tpl->setVariable( 'skin', eZSkin::instance($skinid) );
$tpl->setVariable( 'error', new eZError("This is a error") );
The classes
<?php
include_once('extension/siteskins/classes/ezsimpleobject.php');
class eZSkin extends eZSimpleObject
{
function eZSkin($id=null)
{
$this->co = &eZContentObject::fetch($id);
$treenodep = &eZContentObjectTreeNode::fetch($this->co->mainParentNodeID());
$this->parent = &eZContentObject::fetch($treenodep->attribute('contentobject_id'));
$com = &$this->co->attribute('data_map');
$pam =&$this->parent->attribute('data_map');
$this->id = $com["id"]->content();
$this->extension = $pam["extension"]->content();
}
function &instance($id)
{
return parent::instance($id,"ezskin");
}
var $co;
var $parent;
var $extension;
var $id;
}
include_once('extension/siteskins/classes/ezsimpleobject.php');
class eZError extends eZSimpleObject
{
function eZError( $text, $type=null,$number=null)
{
if ($text)
$this->text=$text;
if ($type)
$this->error['type']=$type;
if ($number)
$this->error['number']=$number;
}
function &instance($id)
{
return parent::instance($id,"ezerror");
}
var $text;
var $error;
}
/*! \file ezsimpleobject.php
*/
/*!
\class eZSimpleObject ezsimpleobject.php
\brief The class eZSimpleObject provide could be the super class of any regular object
you can also parse this Object to the tempalte engine
*/
class eZSimpleObject
{
function eZSimpleObject()
{
}
function hasattribute($name)
{
$classname = get_class($this);
$vars = get_class_vars($classname);
if ( array_key_exists($name,$vars) )
return true;
else
return false;
}
function & attribute($name)
{
return $this->$name;
}
function &instance($keys = null,$classname=__CLASS__)
{
if (is_array($keys) and count($keys))
{
$keystring=implode("", $array);
}
else if ($keys and (is_string($keys) or is_integer($keys) ) )
{
$keystring="$keys";
}
else
{
$keystring="";
}
$impl =& $GLOBALS[__CLASS__."GlobalInstance".$keystring];
$class =& get_class( $impl );
if ( $class != __CLASS__ )
{
$impl = new $classname( $keys );
$GLOBALS[__CLASS__."GlobalInstance".$keystring]=$impl;
}
return $impl;
}
}
?>
Looking for a new job? http://www.xrow.com/xrow-GmbH/Jobs
Looking for hosting? http://hostingezpublish.com
-----------------------------------------------------------------------------
GMT +01:00 Hannover, Germany
Web: http://www.xrow.com/
|