messages = array();
}
// class methods
function add($class, $message, $type = 'error') {
$this->messages[] = array('class' => $class, 'type' => $type, 'message' => $message);
}
function add_session($class, $message, $type = 'error') {
if (isset($_SESSION['messageToStack'])) {
$messageToStack = $_SESSION['messageToStack'];
} else {
$messageToStack = array();
}
$messageToStack[] = array('class' => $class, 'text' => $message, 'type' => $type);
$_SESSION['messageToStack'] = $messageToStack;
$this->add($class, $message, $type);
}
function reset() {
$this->messages = array();
}
function output($class) {
$messages = '
';
for ($i=0, $n=sizeof($this->messages); $i<$n; $i++) {
if ($this->messages[$i]['class'] == $class) {
switch ($this->messages[$i]['type']) {
case 'error':
$bullet_image = DIR_WS_IMAGES . 'icons/error.gif';
break;
case 'warning':
$bullet_image = DIR_WS_IMAGES . 'icons/warning.gif';
break;
case 'success':
$bullet_image = DIR_WS_IMAGES . 'icons/success.gif';
break;
default:
$bullet_image = DIR_WS_IMAGES . 'icons/bullet_default.gif';
}
$messages .= '- ' . tep_output_string($this->messages[$i]['message']) . '
';
}
}
$messages .= '
';
return '' . $messages . '
';
}
function outputPlain($class) {
$message = false;
for ($i=0, $n=sizeof($this->messages); $i<$n; $i++) {
if ($this->messages[$i]['class'] == $class) {
$message = tep_output_string($this->messages[$i]['message']);
break;
}
}
return $message;
}
function size($class) {
$class_size = 0;
for ($i=0, $n=sizeof($this->messages); $i<$n; $i++) {
if ($this->messages[$i]['class'] == $class) {
$class_size++;
}
}
return $class_size;
}
function loadFromSession() {
if (isset($_SESSION['messageToStack'])) {
$messageToStack = $_SESSION['messageToStack'];
for ($i=0, $n=sizeof($messageToStack); $i<$n; $i++) {
$this->add($messageToStack[$i]['class'], $messageToStack[$i]['text'], $messageToStack[$i]['type']);
}
unset($_SESSION['messageToStack']);
}
}
}
?>