| Current Path : /var/www/iplanru/data/www/i-plan.ru/administrator/components/com_widgetkit/classes/ |
| Current File : /var/www/iplanru/data/www/i-plan.ru/administrator/components/com_widgetkit/classes/helper.php |
<?php
/**
* @package Widgetkit
* @author YOOtheme http://www.yootheme.com
* @copyright Copyright (C) YOOtheme GmbH
* @license http://www.gnu.org/licenses/gpl.html GNU/GPL
*/
/*
Class: WidgetkitHelper
Helper base class
*/
class WidgetkitHelper implements ArrayAccess {
/* widgetkit instance */
public $widgetkit;
/* helper name */
protected $_name;
/*
Function: Constructor
Class Constructor.
*/
public function __construct($widgetkit) {
// set widgetkit
$this->widgetkit = $widgetkit;
// set default name
$this->_name = strtolower(basename(get_class($this), 'WidgetkitHelper'));
}
/*
Function: getName
Get helper name
Returns:
String
*/
public function getName() {
return $this->_name;
}
/*
Function: _call
Execute function call
Returns:
Mixed
*/
protected function _call($function, $args = array()) {
if (is_array($function)) {
list($object, $method) = $function;
if (is_object($object)) {
switch (count($args)) {
case 0 :
return $object->$method();
break;
case 1 :
return $object->$method($args[0]);
break;
case 2:
return $object->$method($args[0], $args[1]);
break;
case 3:
return $object->$method($args[0], $args[1], $args[2]);
break;
case 4:
return $object->$method($args[0], $args[1], $args[2], $args[3]);
break;
}
}
}
return call_user_func_array($function, $args);
}
/* ArrayAccess interface implementation */
public function offsetGet($name) {
return $this->widgetkit[$name];
}
public function offsetSet($name, $helper) {
$this->widgetkit[$name] = $helper;
}
public function offsetUnset($name) {
unset($this->widgetkit[$name]);
}
public function offsetExists($name) {
return !empty($this->widgetkit[$name]);
}
}