', $message);
}
return $message;
}
/**
* wrapper for sprintf()
*
* @uses sprintf()
* @uses func_get_args()
* @uses is_array()
* @uses array_unshift()
* @uses call_user_func_array()
* @return string formated
*/
static public function format()
{
$params = func_get_args();
if (is_array($params[1])) {
array_unshift($params[1], $params[0]);
$params = $params[1];
}
return call_user_func_array('sprintf', $params);
}
/**
* returns unique PMA_Message::$_hash, if not exists it will be created
*
* @uses PMA_Message::$_hash as return value and to set it if required
* @uses PMA_Message::getNumber()
* @uses PMA_Message::$_string
* @uses PMA_Message::$_message
* @uses md5()
* @param string $file
* @return string PMA_Message::$_hash
*/
public function getHash()
{
if (null === $this->_hash) {
$this->_hash = md5(
$this->getNumber() .
$this->_string .
$this->_message
);
}
return $this->_hash;
}
/**
* returns compiled message
*
* @uses PMA_Message::$_message as return value
* @uses PMA_Message::getString()
* @uses PMA_Message::getParams()
* @uses PMA_Message::format()
* @uses PMA_Message::decodeBB()
* @uses PMA_Message::getAddedMessages()
* @uses strlen()
* @return string complete message
*/
public function getMessage()
{
$message = $this->_message;
if (0 === strlen($message)) {
$string = $this->getString();
if (isset($GLOBALS[$string])) {
$message = $GLOBALS[$string];
} elseif (0 === strlen($string)) {
$message = '';
} else {
$message = $string;
}
}
if (count($this->getParams()) > 0) {
$message = PMA_Message::format($message, $this->getParams());
}
$message = PMA_Message::decodeBB($message);
foreach ($this->getAddedMessages() as $add_message) {
$message .= $add_message;
}
return $message;
}
/**
* returns PMA_Message::$_string
*
* @uses PMA_Message::$_string as return value
* @return string PMA_Message::$_string
*/
public function getString()
{
return $this->_string;
}
/**
* returns PMA_Message::$_number
*
* @uses PMA_Message::$_number as return value
* @return integer PMA_Message::$_number
*/
public function getNumber()
{
return $this->_number;
}
/**
* returns level of message
*
* @uses PMA_Message::$level
* @uses PMA_Message::getNumber()
* @return string level of message
*/
public function getLevel()
{
return PMA_Message::$level[$this->getNumber()];
}
/**
* Displays the message in HTML
*
* @uses PMA_Message::getLevel()
* @uses PMA_Message::getMessage()
* @uses PMA_Message::isDisplayed()
*/
public function display()
{
echo $this->getDisplay();
$this->isDisplayed(true);
}
/**
* returns HTML code for displaying this message
*
* @return string whole message box
*/
public function getDisplay()
{
return ''
. $this->getMessage() . '
';
}
/**
* sets and returns whether the message was displayed or not
*
* @uses PMA_Message::$_is_displayed to set it and/or return it
* @param boolean $is_displayed
* @return boolean PMA_Message::$_is_displayed
*/
public function isDisplayed($is_displayed = false)
{
if ($is_displayed){
$this->_is_displayed = $is_displayed;
}
return $this->_is_displayed;
}
}
?>