Source for file View.php
Documentation is available at View.php
// vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4 fdm=marker encoding=utf8 :
* Pxxo - build self-supported and interoperable Web graphical components
* Copyright (c) 2008, Nicolas Thouvenin
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of the author nor the names of its contributors may be
* used to endorse or promote products derived from this software without
* specific prior written permission.
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* @copyright Copyright (c) 2008 Nicolas Thouvenin
* @license http://opensource.org/licenses/bsd-license.php
define('PXXO_ZEND_PATH', realpath(rtrim(dirname(__FILE__
),DIRECTORY_SEPARATOR).
DIRECTORY_SEPARATOR.
'..'.
DIRECTORY_SEPARATOR.
'..'.
DIRECTORY_SEPARATOR.
'ZendFramework'));
$include_path =
ini_get('include_path');
require_once 'Zend/View/Abstract.php';
require_once 'Pxxo/Buffer.php';
* Moteur de template pour les différentes "VUE" d'un composants
* @copyright Copyright (c) 2008 Nicolas Thouvenin
* @license http://opensource.org/licenses/bsd-license.php
* @var Pxxo_Buffer Input buffer
* @var Pxxo_Buffer Output buffer
* Simaultion héritage multiple
* @param array $config Configuration key-value pairs.
parent::__construct($config);
* Finds a view script from the available directories.
* @param $name string The base name of the script.
* Processes a view script and returns the output.
* @param string $name The script script name to process.
* @param string $type The type of the output buffer
public function render($name, $type =
'')
else trigger_error("View error : invalid type `".
$name.
"`", E_USER_ERROR);
* On récupére le flux de sortie
* On choisit un flux d'entrée
* Transformation Du buffer d'entrée en buffer de Sortie
* @param string $type The type of the output buffer
$this->Pxxo->resetCacheID();
$this->Pxxo->addCacheID($type);
$this->Pxxo->addCacheID($this->_input->getCacheID());
$this->Pxxo->traceDebug("VIEW\t[executed]\tinput(uri:".
$this->_input->uri.
")\toutput(type:".
$type.
')');
$out =
parent::render(null);
$this->Pxxo->traceDebug("VIEW\t[cached]\tinput(uri:".
$this->_input->uri.
")\toutput(type:".
$type.
')');
* Includes the view script in a scope with only public $this variables.
* @param string The view script to execute.
protected function _run()
* Directly assigns a variable to the view script.
* Checks first to ensure that the caller is not attempting to set a
* protected or private member (by checking for a prefixed underscore); if
* not, the public member is set; otherwise, an exception is raised.
* @param string $key The variable name.
* @param mixed $val The variable value.
* @throws Zend_View_Exception if an attempt to set a private or protected
public function __set($key, $val)
$this->Pxxo->addCacheID($val);
return parent::__set($key, $val);
Documentation generated on Thu, 13 Mar 2008 22:03:23 +0100 by phpDocumentor 1.4.1