Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 11 |
CRAP | |
0.00% |
0 / 60 |
iohandler_base | |
0.00% |
0 / 1 |
|
0.00% |
0 / 11 |
272 | |
0.00% |
0 / 60 |
__construct | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 10 |
|||
set_language | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 3 |
|||
add_error_message | |
0.00% |
0 / 1 |
12 | |
0.00% |
0 / 7 |
|||
add_warning_message | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 3 |
|||
add_log_message | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 3 |
|||
add_success_message | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 3 |
|||
set_task_count | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 4 |
|||
set_progress | |
0.00% |
0 / 1 |
6 | |
0.00% |
0 / 8 |
|||
finish_progress | |
0.00% |
0 / 1 |
6 | |
0.00% |
0 / 7 |
|||
generate_form_render_data | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 3 |
|||
translate_message | |
0.00% |
0 / 1 |
6 | |
0.00% |
0 / 9 |
<?php | |
/** | |
* | |
* This file is part of the phpBB Forum Software package. | |
* | |
* @copyright (c) phpBB Limited <https://www.phpbb.com> | |
* @license GNU General Public License, version 2 (GPL-2.0) | |
* | |
* For full copyright and license information, please see | |
* the docs/CREDITS.txt file. | |
* | |
*/ | |
namespace phpbb\install\helper\iohandler; | |
/** | |
* Base class for installer input-output handlers | |
*/ | |
abstract class iohandler_base implements iohandler_interface | |
{ | |
/** | |
* Array of errors | |
* | |
* Errors should be added, when the installation cannot continue without | |
* user interaction. If the aim is to notify the user about something, please | |
* use a warning instead. | |
* | |
* @var array | |
*/ | |
protected $errors; | |
/** | |
* Array of warnings | |
* | |
* @var array | |
*/ | |
protected $warnings; | |
/** | |
* Array of logs | |
* | |
* @var array | |
*/ | |
protected $logs; | |
/** | |
* Array of success messages | |
* | |
* @var array | |
*/ | |
protected $success; | |
/** | |
* @var \phpbb\language\language | |
*/ | |
protected $language; | |
/** | |
* @var int | |
*/ | |
protected $task_progress_count; | |
/** | |
* @var int | |
*/ | |
protected $current_task_progress; | |
/** | |
* @var string | |
*/ | |
protected $current_task_name; | |
/** | |
* @var bool | |
*/ | |
protected $restart_progress_bar; | |
/** | |
* Constructor | |
*/ | |
public function __construct() | |
{ | |
$this->errors = array(); | |
$this->warnings = array(); | |
$this->logs = array(); | |
$this->success = array(); | |
$this->restart_progress_bar = false; | |
$this->task_progress_count = 0; | |
$this->current_task_progress = 0; | |
$this->current_task_name = ''; | |
} | |
/** | |
* Set language service | |
* | |
* @param \phpbb\language\language $language | |
*/ | |
public function set_language(\phpbb\language\language $language) | |
{ | |
$this->language = $language; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function add_error_message($error_title, $error_description = false) | |
{ | |
if (!is_array($error_title) && strpos($error_title, '<br />') !== false) | |
{ | |
$error_title = strip_tags(htmlspecialchars_decode($error_title)); | |
} | |
$this->errors[] = $this->translate_message($error_title, $error_description); | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function add_warning_message($warning_title, $warning_description = false) | |
{ | |
$this->warnings[] = $this->translate_message($warning_title, $warning_description); | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function add_log_message($log_title, $log_description = false) | |
{ | |
$this->logs[] = $this->translate_message($log_title, $log_description); | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function add_success_message($success_title, $success_description = false) | |
{ | |
$this->success[] = $this->translate_message($success_title, $success_description); | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function set_task_count($task_count, $restart = false) | |
{ | |
$this->task_progress_count = $task_count; | |
$this->restart_progress_bar = $restart; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function set_progress($task_lang_key, $task_number) | |
{ | |
$this->current_task_name = ''; | |
if (!empty($task_lang_key)) | |
{ | |
$this->current_task_name = $this->language->lang($task_lang_key); | |
} | |
$this->current_task_progress = $task_number; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function finish_progress($message_lang_key) | |
{ | |
if (!empty($message_lang_key)) | |
{ | |
$this->current_task_name = $this->language->lang($message_lang_key); | |
} | |
$this->current_task_progress = $this->task_progress_count; | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function generate_form_render_data($title, $form) | |
{ | |
return ''; | |
} | |
/** | |
* Localize message. | |
* | |
* Note: When an array is passed into the parameters below, it will be | |
* resolved as printf($param[0], $param[1], ...). | |
* | |
* @param array|string $title Title of the message | |
* @param array|string|bool $description Description of the message | |
* | |
* @return array Localized message in an array | |
*/ | |
protected function translate_message($title, $description) | |
{ | |
$message_array = array(); | |
$message_array['title'] = call_user_func_array(array($this->language, 'lang'), (array) $title); | |
if ($description !== false) | |
{ | |
$message_array['description'] = call_user_func_array(array($this->language, 'lang'), (array) $description); | |
} | |
return $message_array; | |
} | |
} |