public function flashMsg($type = 'normal', $key = null, $sticky = false)
{
if (is_null($this->_adapter)) {
return;
}
$message = $outputMessages = array();
$output = "";
switch ($type) {
case 'normal':
$messages = $this->_adapter->getMessages();
break;
case 'current':
$messages = $this->_adapter->getCurrentMessages();
break;
default:
$messages = array_merge($this->_adapter->getMessages(), $this->_adapter->getCurrentMessages());
break;
}
if (!is_null($key)) {
if (isset($messages[$key])) {
$outputMessages[] = $messages[$key];
}
} else {
$outputMessages = $messages;
}
foreach ($outputMessages as $msg) {
if (is_object($msg) && isset($msg->type)) {
$replaceMsg = $msg->message;
$tpl = $this->_templates[$msg->type];
} else {
$replaceMsg = $msg;
$tpl = $this->_templates[0];
}
$output .= sprintf($tpl, (!$sticky ? $this->_closeButton : "") . $replaceMsg);
}
return $output;
}