BraincraftedBootstrapBundle helps you integrate Bootstrap in your Symfony2 project. BootstrapBundle also supports the official Sass port of Bootstrap and Font Awesome.
Developed by Florian Eckerstorfer and amazing contributors.
First you need to add braincrafted/bootstrap-bundle
to composer.json
:
{
"require": {
"braincrafted/bootstrap-bundle": "dev-master"
}
}
Please note that dev-master
points to the latest release. If you want to use the latest development version please use dev-develop
. Of course you can also use an explicit version number, e.g., 2.1.*
.
You also have to add BraincraftedBootstrapBundle
to your AppKernel.php
:
// app/AppKernel.php
//...
class AppKernel extends Kernel
{
//...
public function registerBundles()
{
$bundles = array(
...
new Braincrafted\Bundle\BootstrapBundle\BraincraftedBootstrapBundle()
);
//...
return $bundles;
}
//...
}
Additionally you have to install Bootstrap and jQuery as dependencies and configure Assetic to compile the LESS files. You can find more information in the Getting Started section of the documentation.
This bundle has two main dependencies, Symfony and Bootstrap. The following table shows which version of BraincraftedBootstrapBundle is compatible with which version of Symfony and Bootstrap.
BootstrapBundle | Symfony | Bootstrap | jQuery |
---|---|---|---|
v1.3.* | v2.2.* | v2.3.* | v1.9.* |
v1.4.* | v2.2.* | v2.3.* | v1.9.* |
v1.5.* | v2.2.* | v3.0.* (very basic) | v1.9.* |
v2.0.* v2.1.* |
v2.3.* v2.4.* |
v3.0.* v3.1.* |
v1.10.* v1.11.* |
v2.1.* | v2.3.* v2.4.* v2.5.* |
v3.0.* v3.1.* v3.2.* sass v3.2.* |
v1.10.* v1.11.* |
v2.2.* | v2.3.* v2.4.* v2.5.* v2.6.* v2.7.* v2.8.* v3.0.* |
v3.0.* v3.1.* v3.2.* sass v3.2.* |
v1.10.* v1.11.* |
- #331 Translate menu labels (by kamiramix)
- #364 Update form_themes supported keyword to replace the form.resources keyword (by cordoval)
- #367 Add missing ul tag for list list (by ocetnik)
- #374 Update to Symfony 2.6 compatible form extensions (by kralos)
- #376 Upgrade to Symfony 2.6 compatible form types (by althaus)
- #382 Make use of choice_translation_domain option (by Restless-ET)
- #383 Add button twig function (by bigfoot90)
- #384 Fix ScriptHandler to work properly with HHVM (by mdurys)
- #385 Use url option instead if hread attribute (by bigfoot90)
- #392 Use icon helper with different icon set (by bigfoot90)
- #393 Switch twig extesions to use SimpleFunction/SimpleFilter (by dkisselev)
- #394 Add Twig integration tests for common methods (by dkisselev)
- #395 Add integration tests for icon, parse_icons, button, button_link Twig extensions (by bigfoot90)
- #397 Change JS removeField event to allow catch after removing element (by DarekTw)
- #399 Twig deprecations (by benr77)
- #404 Fix bc-bootstrap-collection.js .size() deprecations (by jounisuo)
- #414 Fix compatibility with Symfony 3.0 (by lashus)
- #417 Replace sameas with same (by bartwesselink)
- When restoring form settings, don't throw an exception if there are no settings to restore (by florianeckerstorfer)
- #356 Add missing
responsive-embed.less
(by blaues0cke)
- #301 Fix generate command for Symfony v2.5 (by mumia)
- #311 Trigger event on Add and Remove in collection (by tiagobrito)
- #315 Add
danger()
method to FlashMessage (by florianeckerstorfer) - #316 Fix nested subform settings (by vith)
- #320 Adjust path to
bootstrap.scss
(by mioduszewski) - #328 Add the parse_icons function for bootstrap_collection buttons (by kamiramix)
- #329 Remove invalid statement (by KatharinaSt)
- #337 Invalid class name
.btn-small
(by tmilos) - #342 Minor PHPCS fixes (by acrobat)
- #344 Exclude iterable attribute values from displaying (by b-b3rn4rd)
- #345 Add dismissible alert styling (by althaus)
- #350 Fix inline style does not display placeholder when label is empty (by florianeckerstorfer)
- #309 Include default variables files at top (by florianeckerstorfer)
- #298 Fixed path to assets dir in bootstrap-sass v3.2 (by florianeckerstorfer)
- #237 Pass
label_attr
tocheckbox_row
andradio_row
inchoice_widget_expanded
(by florianeckerstorfer) - #241 Remove wrong button spacing when collection is empty (by sandello-alkr)
- #241 Make
web
directory configurable ininstall
command (by florianeckerstorfer) - #245 Add support for
symfony-bin-dir
(by nifr) - #249 Add
nav
class based on depth (by bkosborne) - #251 Add support for static form controls (by bdm-benzor)
- #252 Fix behaviour when
label = false
(by rdohms) - #254 Remove whitespace in menu root block (by dirkluijk)
- #260 Updated default jQuery path (by sprankhub)
- #263 Fixed global error CSS class (by althaus)
- #266 Fix column size of label is
false
(by jeroenvds) - #274 Added missing space in `bootstrap-collection (by bdm-benzor)
- #275 Add help text to single checkbox and radio (by bostaf)
- #276 Add support for
leafo/scssphp
(by stefanosala) - #279 Do not render value in
file
widget (by florianeckerstorfer) - #281 Add additional CSS classes to icons (by wodka)
- #283 Make icon tag configurable (by wodka)
- #286 Add support for form actions (by derpue)
- #287 Add support for input group buttons (by rdohms)
- #289 Removed trailing whitespace for checkbox and radio widget (by morticue)
- #290 Add form type for static control (by derpue)
- #238 Add empty
value
field whenempty_value
is not null in choice field - #239 Removed translation_domain from error messages
- #214 Check for
preSubmit
errors (by sandello-alkr) - #240 Include
head
block in default layout
- #203 Add support for
bootstrap-sass
(by sandello-alkr and florianeckerstorfer) - #160 Add support for Font Awesome (by florianeckerstorfer)
- #229 Fix
bootstrap.js
path in default layout (by nonlux) - #221 Fix generated key for nested collections (by sandello-alkr)
- #220 Add option to configure icon prefix (by llwt)
- #206 Use
raw
filter for form labels (by sandello-alkr) - #209 Fixed compatibility issues with KnpMenu (by mbutkereit)
- #168 Removed CSS class
row
from form-group - #182 Added support for form actions (row with multiple buttons) (by rdohms)
- #187 Made default button class changable (by sandello-alkr)
- #188 Added icons to form buttons (by mvrhov)
- #190 Added support for stacked tabs (by aur1mas)
- #192 Added method to reset flash bag (by JulienRamel)
- #196 Removed CSS class
nav
from child elements (by dylanschoenmakers) - #198 Added parsing of icons in prepend and append input groups (by yvh)
- Fixed
file
form type (by hsz)
- Updated to Symfony v2.3.6
- Updated to Bootstrap v3.0.1
- Updated to jQuery v1.10.2
- Remove
include_responsive
option because Bootstrap 3.0 no longer has a non responsive version - Added
boostrap_money
form type that uses Bootstraps prepend or append style to display the currency percent
form type uses Bootstraps append style to display the percent sign- Changed namespace back to
Braincrafted\Bundle\BootstrapBundle
- Support for custom
variables.less
- Several Twig filters are now functions
- Added
bootstrap_set_style
andbootstrap_get_style
Twig functions to globally set the style of forms - Added command to generate custom
bootstrap.less
file - Added command to copy icon fonts into
web/
directory - Added Composer script handler for copying icon fonts
- Pagination now supports disabled links
- Added Twig function
badge
- Removed Twig filters
badge_*
(Bootstrap v3.0 does not include multiply badge styles) - Twig filters
label_*
are now Twig functions - Twig filter
icon
is now a Twig function - Added
braincrafted_collection
form type
- Fixed compatibility with PHP 5.3 (Fixes #111)
- Renamed
braincrafted_collection
tobootstrap_collection
widget_col
,label_col
andsimple_col
can be defined in form builder (Fixes #113)- Add support for input groups
- Fix bug with inline forms when no placeholder is defined
- Fixed configuration of input groups in form builder (Fixes #115)
- Fixed trailing slash in
braincrafted_bootstrap.output_dir
option - Fixed undefined variable in pagination template
- Better tested
- Fixed duplicate
div.form-group
inchoice_widget_expanded
(Fixes #131) - Use correct assets when not using LESS (Fixes #128) [amcgowanca]
- Add
col_size
option to set the column size for form widgets (Fixes #127) - Add support for
simple_col
options intextarea_widget
- Renamed views
- Add error messages in
checkbox_row
andradio_widget
(Fixes #118)
- #133: Fix
label_col
,widget_col
,col_size
andsimple_col
options in collection widgets - #136: Added translation to
bootstrap_collection
widget - #137: Removed
cssrewrite
filter from default Assetic configuration - #139: Fix JavaScript for nested
bootstrap_collection
widgets (by wizart) - #140: Improved dependency list in
composer.json
(by hason) - #142: Added translation for help block and error messages
- #143: Added translation to flash message template (by rdohms)
- #144: Fix class attribute for checkbox widget (by squaye85)
- #145: Added possibility to style global error messages
- Renamed
customize_variables
configuration option intocustomize
- #152: Add form name attribute (by nonlux)
- #154: Fix Bootstrap Collection form type for nested types
- #155: Use
braincrafted_bootstrap.output_dir
option when installing icon font - #52: Add class option for pagination
- #148: Add
label_col
andwidget_col
option for the whole form (by florianeckerstorfer and dirkluijk) - #156: Add support for error messages with parameters (by thanosp)
- #157: Use print shiv instead of standard shiv (by mvrhov)
- #161: Set
style
option in FormBuilder - #162: Set depth of navigation.
- Works with new Bootstrap repository
twbs/bootstrap
- Basic support for Bootstrap v3.0
- Allow override options in menus
- Extend from base form layout
- Fixed problems with removing elemnts in JavaScript collection form type
- Various other bugfixes
- Changed namespace to
Bc\Bundle\BootstrapBundle
- Automatically configure Twig
- Automatically configure KnpMenuBundle
- Automatically configure KnpPaginatorBundle
- Automatically configure Assetic
- Improved layout of error messages in compound fields
- Improved code style (usage of PHP_CodeSniffer and PHPMD)
- Support for
data-prototype
option in collection fields - Helper and template for flash messages
- Added support for Assetic
- The bundle is licensed under the MIT License
- The CSS and Javascript files from Twitter Bootstrap are licensed under the Apache License 2.0 for all versions before 3.1
- The CSS and Javascript files from Twitter Bootstrap are licensed under the MIT License for 3.1 and after