blank.gif
triangle.gif Du er her: /  Forsiden  /  Kildekoden  /  Basic  /  Message   Login nu   Login
blank.gif
 ««« Se kilde koden
blank.gif
triangle.gif Basic  Base Component Db Dto Form Form-elements Jquery Layout Menu Menu-fisheye Mvc Tab Table Template Util
blank.gif
blank.gif
 
arrow-headline.gif Index
 
  Tilbage

Navn : Message.php


Sample code, tutorial

Sådan benyttes komponenten Message klassen

Først skal du inkludere den fil der beskriver komponenten, som en klasse fil

  • <?
    require_once(HTML_PACKAGE_PATH.'/Message.php');
    ?>

Dernæst kan du enten benytte komponenten som et taglib (statiske metoder):

  • <?
    Message
    ::display($param1, $param2, $param3, ...);
    ?>

eller du kan lave en instance af komponenten og benytte metoderne direkte:

  • <?
    $object
    = new Message($param1, $param2, $param3, ...);
    print
    $object->getHtml();
    ?>

Parent html

Sådan vises komponenten Message klassen


PHP source code

Den fulde PHP kildekode for Message klassen

<?
/**
* @package basic
* @filesource
* @see HTML_BASIC_UTIL_PATH.'/Message.php'
* @copyright (c) http://Finn-Rasmussen.com
* @license http://Finn-Rasmussen.com/license/ myPHP License conditions
* @author http://Finn-Rasmussen.com
* @version 1.10
* @since 22-feb-2007
*/

/**
* The required files
*/
require_once(HTML_BASIC_UTIL_PATH.'/Singleton.php');
require_once(
HTML_BASIC_UTIL_PATH.'/MessageList.php');
if (
defined('HTML_LANGUAGE_UTIL_PATH')) {
    require_once(
HTML_LANGUAGE_UTIL_PATH.'/Translate.php');
}
if (
defined('HTML_CACHE_UTIL_PATH')) {
    require_once(
HTML_CACHE_UTIL_PATH.'/Cache.php');
}

/**
* Message
*
* <code>
* Usage:
*   $message = new Message();
*   $message->add($message1, __FILE__, __LINE__);
*   $message->add($message2, __FILE__, __LINE__);
*   $message->add($message3, $key3);
*   print $message->getHtml();
* Or
*   print $message->getStart();
*   print $message->getEnd();
* Or
*   Message::start();
*   Message::end();
* Or
*   Message::add($message3, __FILE__, __LINE__);
*   Message::add($message4, __FILE__, __LINE__);
*   Message::add($message5, $key5);
*   Message::display();
* </code>
* @package basic
*/

class Message {
    
/**
     * Constructor
     */
    
function Message() {
       }
       
    
/**
     * Returns the html for the start of the message
     * @return String the html
     */
    
function getStart($starttag='<ul>') {
        
$html = '';
           
$messagelist = & Singleton::getInstance(CLASS_NAME_MESSAGE_LIST);
        if (
$messagelist->size() > 0) {
            
$html .= "<h6>Messages</h6>\r\n";
            
$html .= "$starttag\r\n";
            
$html .= $this->getMessageList();
        }
        return
$html;
    }

    
/**
     * Returns the html for the end of the message
     * @return String the complete html
     */
    
function getEnd($endtag='</ul>') {
        
$html = '';
           
$messagelist = & Singleton::getInstance(CLASS_NAME_MESSAGE_LIST);
        if (
$messagelist->size() > 0) {
            
$html .= "$endtag\r\n";
        }
        return
$html;
    }

    
/**
     * Returns the list of the accumulated messages as html
     * surronded by LI tags
     * @static
     * @return array The list of error messages
     */
    
function getMessageList($starttag='<li>',$endtag='</li>') {
        
$html  = '';
           
$messagelist = & Singleton::getInstance(CLASS_NAME_MESSAGE_LIST);
        if (
$messagelist->size() > 0) {
            foreach(
$messagelist->getMessageList() as $key=>$message) {
                
$translatedText = $key;
                if (
defined('HTML_LANGUAGE_UTIL_PATH')) {
                    
$translatedText = Translate::sql($key);
                }
                
$html .= "$starttag$translatedText<br />$message$endtag\r\n";
            }
        }
        return
$html;
    }
    
    
/**
     * Returns the html for the Message
     * @return String the complete html
     */
    
function getHtml() {
        
$html  = $this->html;
        
$html .= $this->getStart();
        
$html .= $this->getEnd();
        return
$html;
    }
    
    
/**
     * Add a message to the list of messages. This method uses a singleton pattern.
     * The methode may be called as an object methode or as a static methode
     * <code>
     * Usage:
     *    $message = new Message();
     *    $message->add($msg, $file, $line);
     * Or
     *    $message->add($msg, $key);
     * Or
     *    Message::add($msg, $key);
     * Or
     *    Message::add($msg, $file, $line);
     * </code>
     * @static
     * @param String $msg The message
     * @param String $file The file name or key to use
     * @param String $line The line number
     */
    
function add($msg, $file='', $line='') {
        static
$i = 0;
        
$i++;
        
$messagelist = & Singleton::getInstance(CLASS_NAME_MESSAGE_LIST);
        
$key = "($i) $file : $line";
        
$messagelist->add($msg, $key);
    }

    
/**
     * Add the current html to the Cache object
     * If the cache is disabled, just print the html
     * <code>
     * Usage:
     *   $element = new Element();   
     *   $element->addHtml();
     * Or
     *   $element = new Element();   
     *   $element->addHtml($object->getHtml());
     * </code>
     * @param String $html Use other html than fetched from $element->getHtml()
     */
    
function addHtml($html='') {
        if (
defined('HTML_CACHE_UTIL_PATH')) {
            if (
$html!='') {
                
Cache::add($html);
            } else {
                
Cache::add($this->getHtml());
            }
        } else {
            
/**
             * The Cache object is not available
             */
            
if ($html!='') {
                print
$html;
            } else {
                print
$this->getHtml();
            }
        }
    }

    
/**
     * Display start html
     * <code>
     * Usage:
     *    Message::start();
     * </code>
     * @static
     */
    
function start() {
        
$html = new Message();
        
$html->addHtml($html->getStart());
    }

    
/**
     * Display the message list as html
     * <code>
     * Usage:
     *    Message::messagelist();
     * </code>
     * @static
     */
    
function messagelist() {
        
$html = new Message();
        
$html->addHtml($html->getMessageList());
    }

    
/**
     * Display end html
     * <code>
     * Usage:
     *    Message::end();
     * </code>
     * @static
     */
    
function end() {
        
$html = new Message();
        
$html->addHtml($html->getEnd());
    }

    
/**
    * Display html
    * <code>
    * Usage:
    *    Message::display();
    * </code>
    * @static
    */
       
function display() {
          
$html = new Message();
          
$html->addHtml();
       }
}
?>

HTML source code

Den fulde HTML kildekode for Message klassen

<?

?>

Class methods

Her er 'klasse metoderne' for Message klassen:

  • message
  • getstart
  • getend
  • getmessagelist
  • gethtml
  • add
  • addhtml
  • start
  • messagelist
  • end
  • display

Object vars

Her er 'objekt variable' for Message klassen:


 
triangle.gif

danmark

Germany

England

France

Italy

Norge

Sverige

USA


 
blank.gif