Documentation is available at HTML.class.php
- <?php
- /**
- * XOAD HTML Class file.
- *
- * <p>This file defines the {@link XOAD_HTML} Class.</p>
- * <p>Example:</p>
- * <code>
- * <?php
- *
- * class Update
- * {
- * function ui()
- * {
- * sleep(1);
- *
- * $content =& XOAD_HTML::getElementById('content');
- *
- * $content->innerHTML = 'Hello World! How are you?';
- * }
- * }
- *
- * define('XOAD_AUTOHANDLE', true);
- *
- * require_once('xoad.php');
- *
- * ?>
- * <?= XOAD_Utilities::header('.') ?>
- *
- * <div id="content">Hello!</div>
- *
- * <script type="text/javascript">
- *
- * var obj = <?= XOAD_Client::register(new Update()) ?>;
- *
- * obj.ui(xoad.asyncCall);
- *
- * </script>
- * </code>
- *
- * @author Stanimir Angeloff
- *
- * @package XOAD
- *
- * @subpackage XOAD_HTML
- *
- * @version 0.6.0.0
- *
- */
- /**
- * Defines the string that is replaced with the current value
- * of the field.
- *
- * <p>Example:</p>
- * <code>
- * <?php
- *
- * class Update
- * {
- * function ui()
- * {
- * sleep(1);
- *
- * $content =& XOAD_HTML::getElementById('content');
- *
- * $content->innerHTML = XOAD_HTML_CURRENT_VALUE . ' How are you?';
- * }
- * }
- *
- * define('XOAD_AUTOHANDLE', true);
- *
- * require_once('xoad.php');
- *
- * ?>
- * <?= XOAD_Utilities::header('.') ?>
- * <div id="content">Hello!</div>
- * <script type="text/javascript">
- *
- * var obj = <?= XOAD_Client::register(new Update()) ?>;
- *
- * obj.ui(xoad.asyncCall);
- *
- * </script>
- * </code>
- */
- define('XOAD_HTML_CURRENT_VALUE', '<![xoadHtml:currentValue[');
- /**
- * @global Contains all XOAD_HTML DOM objects.
- */
- $GLOBALS['_XOAD_HTML_DATA'] = array();
- /**
- * XOAD HTML Class.
- *
- * <p>This class is used to update the content and the
- * style of a page.</p>
- * <p>Example:</p>
- * <code>
- * <?php
- *
- * class Update
- * {
- * function ui()
- * {
- * sleep(1);
- *
- * $content =& XOAD_HTML::getElementById('content');
- *
- * $content->innerHTML = 'Hello World! How are you?';
- * }
- * }
- *
- * define('XOAD_AUTOHANDLE', true);
- *
- * require_once('xoad.php');
- *
- * ?>
- * <?= XOAD_Utilities::header('.') ?>
- *
- * <div id="content">Hello!</div>
- *
- * <script type="text/javascript">
- *
- * var obj = <?= XOAD_Client::register(new Update()) ?>;
- *
- * obj.ui(xoad.asyncCall);
- *
- * </script>
- * </code>
- *
- * @author Stanimir Angeloff
- *
- * @package XOAD
- *
- * @subpackage XOAD_HTML
- *
- * @version 0.6.0.0
- *
- */
- class XOAD_HTML
- {
- /**
- * Returns the element whose ID is specified.
- *
- * <p>Note that you must use the '&' operator in order
- * to get a reference to the element.</p>
- * <p>Example:</p>
- * <code>
- * $content =& XOAD_HTML::getElementById('content');
- * </code>
- *
- * @access public
- *
- * @param string $id String representing the unique id of
- * the element being sought.
- *
- * @return object The DOM element with the specified ID.
- * Note that the server has no idea whether
- * the element exists on the client or not.
- *
- * @static
- *
- */
- function &getElementById($id)
- {
- /**
- * Loads the class that defines the DOM element by ID class.
- */
- require_once(XOAD_HTML_BASE . '/classes/DOM/ElementById.class.php');
- $element = new XOAD_HTML_DOM_ElementById($id);
- $GLOBALS['_XOAD_HTML_DATA'][] =& $element;
- return $element;
- }
- /**
- * Returns an object representing a list of elements
- * of a given name in the document.
- *
- * <p>Note that you must use the '&' operator in order
- * to get a reference to the list.</p>
- * <p>Example:</p>
- * <code>
- * $messages =& XOAD_HTML::getElementsByName('message');
- * </code>
- *
- * @access public
- *
- * @param string $name String representing the value of
- * the name attribute on the element.
- *
- * @return object The DOM elements list with the specified name.
- * Note that the server has no idea whether
- * any elements exists on the client or not.
- *
- * @static
- *
- */
- function &getElementsByName($name)
- {
- /**
- * Loads the class that defines the DOM elements by name class.
- */
- require_once(XOAD_HTML_BASE . '/classes/DOM/ElementsByName.class.php');
- $elements = new XOAD_HTML_DOM_ElementsByName($name);
- $GLOBALS['_XOAD_HTML_DATA'][] =& $elements;
- return $elements;
- }
- /**
- * Returns an object representing a list of elements
- * of a given tag name in the document.
- *
- * <p>Note that you must use the '&' operator in order
- * to get a reference to the list.</p>
- * <p>Example:</p>
- * <code>
- * $inputs =& XOAD_HTML::getElementsByTagName('input');
- * </code>
- *
- * @access public
- *
- * @param string $tagName String representing the name of
- * the tag on the element.
- *
- * @return object The DOM elements list with the specified tag name.
- * Note that the server has no idea whether
- * any elements exists on the client or not.
- *
- * @static
- *
- */
- function &getElementsByTagName($tagName)
- {
- /**
- * Loads the class that defines the DOM elements by tag name class.
- */
- require_once(XOAD_HTML_BASE . '/classes/DOM/ElementsByTagName.class.php');
- $elements = new XOAD_HTML_DOM_ElementsByTagName($tagName);
- $GLOBALS['_XOAD_HTML_DATA'][] =& $elements;
- return $elements;
- }
- /**
- * Returns an object representing a list of elements
- * that match a given cssQuery in the document.
- *
- * <p>Note that you must use the '&' operator in order
- * to get a reference to the list.</p>
- * <p>Example:</p>
- * <code>
- * $messages =& XOAD_HTML::cssQuery('#message, .message-body');
- * </code>
- *
- * @access public
- *
- * @param string $query String representing the value of
- * the cssQuery.
- *
- * @return object The DOM elements list matching the cssQuery.
- * Note that the server has no idea whether
- * any elements exists on the client or not.
- *
- * @static
- *
- */
- function &cssQuery($query)
- {
- /**
- * Loads the class that defines the DOM cssQuery.
- */
- require_once(XOAD_HTML_BASE . '/classes/DOM/CssQuery.class.php');
- $elements = new XOAD_HTML_DOM_CssQuery($query);
- $GLOBALS['_XOAD_HTML_DATA'][] =& $elements;
- return $elements;
- }
- /**
- * Adds a given JavaScript code to the output.
- *
- * <p>Note that you must use the '&' operator in order
- * to get a reference to the script block.</p>
- * <p>You should add ';' at the end of the script.</p>
- * <p>Example:</p>
- * <code>
- * XOAD_HTML::addScriptBlock('alert("Hello World!");');
- * </code>
- *
- * @access public
- *
- * @param string $script JavaScript source code.
- *
- * @return object The DOM element that represents the script block.
- *
- * @static
- *
- */
- function &addScriptBlock($script)
- {
- /**
- * Loads the class that defines the DOM script block class.
- */
- require_once(XOAD_HTML_BASE . '/classes/DOM/ScriptBlock.class.php');
- $scriptBlock = new XOAD_HTML_DOM_ScriptBlock($script);
- $GLOBALS['_XOAD_HTML_DATA'][] =& $scriptBlock;
- return $scriptBlock;
- }
- /**
- * Imports an associative array to the corresponding form elements.
- *
- * <p>Example:</p>
- * <code>
- * XOAD_HTML::importForm('mainForm', array('firstName' => 'First', 'lastName' => 'Last'));
- * </code>
- *
- * @access public
- *
- * @param string $id The client ID of the form.
- *
- * @param string $formData Associative array that contains the
- * values to import.
- *
- * @return void
- *
- * @static
- *
- */
- function importForm($id, $formData)
- {
- $script = 'xoad.html.importForm(';
- $script .= XOAD_Client::register($id);
- $script .= ', ';
- $script .= XOAD_Client::register($formData);
- $script .= ');';
- XOAD_HTML::addScriptBlock($script);
- }
- /**
- * Returns the JavaScript code of all DOM elements.
- *
- * <p>You should not call this method directly.</p>
- *
- * @access public
- *
- * @return string JavaScript source code for each DOM element
- * or null if no DOM elements were created.
- *
- * @static
- *
- */
- function process()
- {
- if ( ! empty($GLOBALS['_XOAD_HTML_DATA'])) {
- $returnValue = '';
- foreach ($GLOBALS['_XOAD_HTML_DATA'] as $domObject) {
- $returnValue .= $domObject->process();
- }
- return $returnValue;
- }
- return null;
- }
- }
- ?>
Documentation generated on Sat, 12 Nov 2005 20:24:14 +0200 by phpDocumentor 1.3.0RC3