protected function navButton($button_type, $step, $button_id) {
		// Setup a unique button id
		$options = ['id' => $button_id.$button_type];

		// Apply default button configuration if defined
		if (isset($this->default_buttons[$button_type]['options'])) {
			$options = array_merge($options, $this->default_buttons[$button_type]['options']);
		}

		// Apply step specific button configuration if defined
		if (isset($step['buttons'][$button_type]['options'])) {
			$options = array_merge($options, $step['buttons'][$button_type]['options']);
		}

		// Add navigation class
		if ($button_type == 'prev') {
			$options['class'] = $options['class'].' prev-step';
		} else {
			$options['class'] = $options['class'].' next-step';
		}

		// Display button
		if (isset($step['buttons'][$button_type]['html'])) {
			return $step['buttons'][$button_type]['html'];
		} elseif (isset($step['buttons'][$button_type]['title'])) {
			return Html::button($step['buttons'][ $button_type ]['title'], $options);
		} else {
			return Html::button($this->default_buttons[ $button_type ]['title'], $options);
		}
	}
protected function navButton($button_type, $step, $button_id) {
		// Setup a unique button id
		$options = ['id' => $button_id.$button_type];

		// Apply default button configuration if defined
		if (isset($this->default_buttons[$button_type]['options'])) {
			$options = array_merge($options, $this->default_buttons[$button_type]['options']);
		}

		// Apply step specific button configuration if defined
		if (isset($step['buttons'][$button_type]['options'])) {
			$options = array_merge($options, $step['buttons'][$button_type]['options']);
		}

		// Add navigation class
		if ($button_type == 'prev') {
			$options['class'] = $options['class'].' prev-step';
		} else {
			$options['class'] = $options['class'].' next-step';
		}

		// Display button
		if (isset($step['buttons'][$button_type]['html'])) {
			return $step['buttons'][$button_type]['html'];
		} elseif (isset($step['buttons'][$button_type]['title'])) {
			return Html::button($step['buttons'][ $button_type ]['title'], $options);
		} else {
			return Html::button($this->default_buttons[ $button_type ]['title'], $options);
		}
	}
protected function navButton ( $ button_type , $ step , $ button_id ) { // Setup a unique button id $ options = [ 'id' => $ button_id . $ button_type ] ; // Apply default button configuration if defined if ( isset ( $ this -> default_buttons [ $ button_type ] [ 'options' ] ) ) { $ options = array_merge ( $ options , $ this -> default_buttons [ $ button_type ] [ 'options' ] ) ; } // Apply step specific button configuration if defined if ( isset ( $ step [ 'buttons' ] [ $ button_type ] [ 'options' ] ) ) { $ options = array_merge ( $ options , $ step [ 'buttons' ] [ $ button_type ] [ 'options' ] ) ; } // Add navigation class if ( $ button_type == 'prev' ) { $ options [ 'class' ] = $ options [ 'class' ] . ' prev-step' ; } else { $ options [ 'class' ] = $ options [ 'class' ] . ' next-step' ; } // Display button if ( isset ( $ step [ 'buttons' ] [ $ button_type ] [ 'html' ] ) ) { return $ step [ 'buttons' ] [ $ button_type ] [ 'html' ] ; } elseif ( isset ( $ step [ 'buttons' ] [ $ button_type ] [ 'title' ] ) ) { return Html :: button ( $ step [ 'buttons' ] [ $ button_type ] [ 'title' ] , $ options ) ; } else { return Html :: button ( $ this -> default_buttons [ $ button_type ] [ 'title' ] , $ options ) ; } }
Generate navigation button

@param string $button_type prev|skip|next\save
@param array $step step configuration
@param string $button_id

@return string
Generate navigation button