Current Path : /var/www/html/clients/tatneft-nhs.ru/plugins/system/aridocsviewer/kernel/Core/ |
Current File : /var/www/html/clients/tatneft-nhs.ru/plugins/system/aridocsviewer/kernel/Core/class.Object.php |
<?php /* * ARI Framework Lite * * @package ARI Framework Lite * @version 1.0.0 * @author ARI Soft * @copyright Copyright (c) 2009 www.ari-soft.com. All rights reserved * @license GNU/GPL (http://www.gnu.org/copyleft/gpl.html) * */ defined('ARI_FRAMEWORK_LOADED') or die('Direct Access to this location is not allowed.'); AriKernel::import('Core.Error'); class AriObject { var $_lastError = null; var $_configProps = array(); function AriObject() { $args = func_get_args(); call_user_func_array(array(&$this, '__construct'), $args); } function __construct() { } function _registerErrorHandler() { set_error_handler(array(&$this, 'errorHandler')); } function errorHandler($errNo, $errStr, $errFile, $errLine) { $stopPhpHandler = false; switch ($errNo) { case E_USER_ERROR: $this->_lastError = new AriError($errStr, $errFile, $errLine); $stopPhpHandler = true; break; } return $stopPhpHandler; } function getLastErrorMsg($clear = true) { if ($this->_isError(false, false)) { $msg = $this->_lastError->error; if ($clear) $this->_lastError = null; return $msg; } } function _isError($clear = TRUE, $raised = TRUE) { $error = $this->_lastError; $isError = $error !== null; if ($isError) { if ($clear) { $this->_lastError = null; } if ($raised) { $this->_raiseError($error); } } return $isError; } function _raiseError($error) { } function extendConfig($newProps) { if (!is_array($newProps) || count($newProps) < 1) return ; foreach ($newProps as $key => $value) { $val =& $newProps[$key]; $this->_configProps[$key] =& $val; } } function bindConfig($props) { $this->bindPropertiesToProperty($props, $this->_configProps); } function getConfigValue($key) { return isset($this->_configProps[$key]) ? $this->_configProps[$key] : null; } function setConfigValue($key, $value) { if (key_exists($key, $this->_configProps)) $this->_configProps[$key] = $value; } function bindPropertiesToProperty($props, &$prop) { if (!is_array($prop)) return ; foreach ($prop as $key => $value) { if (isset($props[$key])) $prop[$key] = $props[$key]; } } function bindProperties($props) { if (!is_array($props)) return ; $vars = get_class_vars(get_class($this)); if ($vars) { foreach ($vars as $name => $value) { if (isset($props[$name])) $this->$name = $props[$name]; } } } function getClassName() { $class = isset($this) ? strtolower(get_class($this)) : null; /* $backtrace = debug_backtrace(); $class = $backtrace[0]['class']; */ return $class; } } ?>