/**
* Manage progresse bars
*
* @since version 0.85
*
* @param $id HTML ID of the progress bar
* @param $options array progress status
* - create do we have to create it ?
* - message add or change the message
* - percent current level
*
*
* @return nothing (display)
**/
static function progressBar($id, array $options = array())
{
$params = array();
$params['create'] = false;
$params['message'] = NULL;
$params['percent'] = -1;
if (is_array($options) && count($options)) {
foreach ($options as $key => $val) {
$params[$key] = $val;
}
}
if ($params['create']) {
echo "<div class='doaction_cadre'>";
echo "<div class='doaction_progress' id='{$id}'>";
echo "<div class='doaction_progress_text' id='" . $id . "_text' > </div>";
echo "</div>";
echo "</div><br>";
echo Html::scriptBlock(self::jsGetElementbyID($id) . ".progressbar();");
}
if ($params['message'] !== NULL) {
echo Html::scriptBlock(self::jsGetElementbyID($id . '_text') . ".text(\"" . addslashes($params['message']) . "\");");
}
if ($params['percent'] >= 0 && $params['percent'] <= 100) {
echo Html::scriptBlock(self::jsGetElementbyID($id) . ".progressbar('option', 'value', " . $params['percent'] . " );");
}
if (!$params['create']) {
Html::glpi_flush();
}
}