# fluentform/3.6.61/app/Services/FormBuilder/Components/Container.php

Fluent Forms – Customizable Contact Forms, Survey, Quiz, &amp; Conversational Form Builder, version 3.6.61. 70 lines.

- Page: https://pluginprobe.com/plugins/fluentform/3.6.61/code/app/Services/FormBuilder/Components/Container.php
- Raw: https://pluginprobe.com/plugins/fluentform/3.6.61/raw/app/Services/FormBuilder/Components/Container.php
- Modified: 2020-07-03T15:28:50+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/fluentform/3.6.61/code/app/Services/FormBuilder/Components/Container.php#L10-L20`.

```php
<?php

namespace FluentForm\App\Services\FormBuilder\Components;

use FluentForm\Framework\Helpers\ArrayHelper;

class Container extends BaseComponent
{
	/**
	 * Max columns for container
	 * @var integer
	 */
	protected $maxColumns = 12;

	/**
	 * Container column class
	 * @var string
	 */
	protected $columnClass = 'ff-t-cell';

	/**
	 * Container wrapper class
	 * @var string
	 */
	protected $wrapperClass = 'ff-t-container ff-column-container';

	/**
	 * Compile and echo the html element
	 * @param  array $data [element data]
	 * @param  stdClass $form [Form Object]
	 * @return viod
	 */
	public function compile($data, $form)
	{
        $elementName = $data['element'];
        $data = apply_filters('fluenform_rendering_field_data_'.$elementName, $data, $form);

        $containerClass = ArrayHelper::get($data, 'settings.container_class');


        $hasConditions = $this->hasConditions($data) ? 'has-conditions ' : '';
        $containerClass .= ' '.$hasConditions;

        $container_css_class = $this->wrapperClass.' ff_columns_total_'.count($data['columns']);
        if($containerClass) {
            $container_css_class = $container_css_class.' '.strip_tags($containerClass);
        }

        $atts = $this->buildAttributes(
            \FluentForm\Framework\Helpers\ArrayHelper::except($data['attributes'], 'name')
        );

        $columnClass = $this->columnClass;
		echo "<div ".$atts." class='".$container_css_class."'>";
		if (isset($data['settings']['label'])) {
            echo "<strong>{$data['settings']['label']}</strong>";
        }
		foreach ($data['columns'] as $columnIndex => $column) {
            $newColumnClass = $columnClass.' ff-t-column-'.($columnIndex + 1);
			echo "<div class='{$newColumnClass}'>";
			foreach ($column['fields'] as $item) {
				$item = apply_filters('fluentform_before_render_item', $item, $form);
				do_action('fluentform_render_item_'.$item['element'], $item, $form);
			}
			echo "</div>";
		}
		echo "</div>";
	}
}

```
