Обработка ошибок в Joomla осуществляется с помощью класса JError - /joomla/error/error.php
Пример:
JError::raiseError( '6000', 'File access error!' ); JError::raiseNotice( '6000', 'File access error!' ); JError::raiseWarning( '6000', 'File access error!' );
Данные методы являются обертками для JError::raise ( $level, $code, $msg, $info )
Определить вывод сообщений об ошибке можно с помощью метода setErrorHandling( $level, $mode, $options ) :
JError::setErrorHandling( E_ERROR, 'echo' ); JError::setErrorHandling( E_NOTICE | E_WARNING, 'verbose' ); JError::setErrorHandling( E_ALL ^ E_ERROR ); JError::raise( E_ERROR, '6000', 'File access error!' );
Поскольку практически все классы в Joomla наследники класса JObject можно использовать методы
void setError (string $error) string getError ([integer $i = null], [boolean $toString = true])
Пример использования в контролере:
if ($model->store()) {
$msg = JText::_( 'Item(s) successfully stored' );
} else {
$msg = $model->getError();
}
$route = JRoute::_( 'index.php?option=com_component&view=view&layout=layout' );
$this->setRedirect($route, $msg);