Class yii\bootstrap4\Progress

Inheritanceyii\bootstrap4\Progress » yii\bootstrap4\Widget » yii\base\Widget
Uses Traitsyii\bootstrap4\BootstrapWidgetTrait

Progress renders a bootstrap progress bar component.

For example,

// default with label
echo Progress::widget([
    'percent' => 60,
    'label' => 'test'
]);
// or
echo Progress::widget([
    'bars' => [
        ['percent' => 60, 'label' => 'test']
    ]
]);

// styled
echo Progress::widget([
    'percent' => 65,
    'barOptions' => ['class' => 'bg-danger']
]);
// or
echo Progress::widget([
    'bars' => [
        ['percent' => 65, 'options' => ['class' => 'bg-danger']]
    ]
]);

// striped
echo Progress::widget([
    'percent' => 70,
    'barOptions' => ['class' => ['bg-warning', 'progress-bar-striped']]
]);
// or
echo Progress::widget([
    'bars' => [
        ['percent' => 70, 'options' => ['class' => ['bg-warning', 'progress-bar-striped']]]
    ]
]);

// striped animated
echo Progress::widget([
    'percent' => 70,
    'barOptions' => ['class' => ['bg-success', 'progress-bar-animated', 'progress-bar-striped']]
]);
// or
echo Progress::widget([
    'bars' => [
        ['percent' => 70, 'options' => ['class' => ['bg-success', 'progress-bar-animated', 'progress-bar-striped']]]
    ]
]);

// stacked bars
echo Progress::widget([
    'bars' => [
        ['percent' => 30, 'options' => ['class' => 'bg-danger']],
        ['percent' => 30, 'label' => 'test', 'options' => ['class' => 'bg-success']],
        ['percent' => 35, 'options' => ['class' => 'bg-warning']],
    ]
]);

See also https://getbootstrap.com/docs/4.2/components/progress/.

Public Properties

Hide inherited properties

PropertyTypeDescriptionDefined By
$barOptions array The HTML attributes of the bar. yii\bootstrap4\Progress
$bars array A set of bars that are stacked together to form a single progress bar. yii\bootstrap4\Progress
$clientEvents array The event handlers for the underlying Bootstrap JS plugin. yii\bootstrap4\BootstrapWidgetTrait
$clientOptions array The options for the underlying Bootstrap JS plugin. yii\bootstrap4\BootstrapWidgetTrait
$label string The button label. yii\bootstrap4\Progress
$options array The HTML attributes for the widget container tag. yii\bootstrap4\Widget
$percent integer The amount of progress as a percentage. yii\bootstrap4\Progress

Protected Methods

Hide inherited methods

MethodDescriptionDefined By
registerClientEvents() Registers JS event handlers that are listed in $clientEvents. yii\bootstrap4\BootstrapWidgetTrait
registerPlugin() Registers a specific Bootstrap plugin and the related events yii\bootstrap4\BootstrapWidgetTrait
renderBar() Generates a bar yii\bootstrap4\Progress
renderProgress() Renders the progress. yii\bootstrap4\Progress

Property Details

$barOptions public property (available since version 2.0.6)

The HTML attributes of the bar. This property will only be considered if $bars is empty

See also \yii\helpers\Html::renderTagAttributes() for details on how attributes are being rendered.

public array $barOptions = []
$bars public property

A set of bars that are stacked together to form a single progress bar. Each bar is an array of the following structure:

[
    // required, the amount of progress as a percentage.
    'percent' => 30,
    // optional, the label to be displayed on the bar
    'label' => '30%',
    // optional, array, additional HTML attributes for the bar tag
    'options' => [],
]
public array $bars null
$label public property

The button label. This property will only be considered if $bars is empty

public string $label null
$percent public property

The amount of progress as a percentage. This property will only be considered if $bars is empty

public integer $percent 0

Method Details

init() public method

Initializes the widget.

This method will register the bootstrap asset bundle. If you override this method, make sure you call the parent implementation first.

public void init ( )
renderBar() protected method

Generates a bar

protected string renderBar ( $percent, $label '', $options = [] )
$percent integer

The percentage of the bar

$label string

, optional, the label to display at the bar

$options array

The HTML attributes of the bar

return string

The rendering result.

renderProgress() protected method

Renders the progress.

protected string renderProgress ( )
return string

The rendering result.

throws \yii\base\InvalidConfigException

if the "percent" option is not set in a stacked progress bar.

run() public method

public void run ( )
throws \yii\base\InvalidConfigException