cornford / bootstrapper
An easy way to intergrate Twitter Bootstrap with Laravel.
Installs: 2 727
Dependents: 0
Suggesters: 0
Security: 0
Stars: 23
Watchers: 7
Forks: 15
Open Issues: 0
pkg:composer/cornford/bootstrapper
Requires
- php: >=5.4.0
- illuminate/http: 5.*
- illuminate/support: 5.*
- laravelcollective/html: 5.*
Requires (Dev)
- mockery/mockery: ~0.9.1
- phpspec/phpspec: 2.0.*@dev
README
For Laravel 4.x, check version 1.5.1
Think of Bootstrap as an easy way to integrate Bootstrap with Laravel 4, providing a variety of helpers to speed up development. These include:
Bootstrap::cssBootstrap::jsBootstrap::verticalBootstrap::horizontalBootstrap::inlineBootstrap::textBootstrap::passwordBootstrap::emailBootstrap::telephoneBootstrap::numberBootstrap::urlBootstrap::rangeBootstrap::searchBootstrap::fileBootstrap::dateBootstrap::datetimeBootstrap::timeBootstrap::textareaBootstrap::selectBootstrap::checkboxBootstrap::radioBootstrap::submitBootstrap::buttonBootstrap::resetBootstrap::linkBootstrap::secureLinkBootstrap::linkRouteBootstrap::linkActionBootstrap::mailtoBootstrap::noneBootstrap::successBootstrap::infoBootstrap::warningBootstrap::danger
Installation
Begin by installing this package through Composer. Edit your project's composer.json file to require cornford/bootstrapper.
"require": {
"laravelcollective/html": "5.*",
"cornford/bootstrapper": "2.*"
}
Next, update Composer from the Terminal:
composer update
Once this operation completes, the next step is to add the required service providers. Open app/config/app.php, and add the new items to the providers array.
'Collective\Html\HtmlServiceProvider',
'Cornford\Bootstrapper\BootstrapServiceProvider',
The final step is to introduce the required facades. Open app/config/app.php, and add the new items to the aliases array.
'Form' => 'Collective\Html\FormFacade',
'HTML' => 'Collective\Html\HtmlFacade',
'Bootstrap' => 'Cornford\Bootstrapper\Facades\Bootstrap',
If you want to introduce the packages JavaScripts and Stylesheets, run the following command to pull them into your project.
php artisan vendor:publish --provider="Cornford\\Bootstrapper\\BootstrapServiceProvider"
That's it! You're all set to go.
Usage
In order to include the Bootstrap dependencies you will need to utilise the Bootstrap::css() and Bootstrap:js() methods in the head section of your layout / page template.
It's really as simple as using the Bootstrap class in any Controller / Model / File you see fit with:
Bootstrap::
This will give you access to
- CSS
- JS
- Vertical
- Horizontal
- Inline
- Text
- Password
- Telephone
- Number
- Url
- Range
- Search
- File
- Date
- Datetime
- Time
- Textarea
- Select
- Checkbox
- Radio
- Submit
- Button
- Reset
- Link
- Secure Link
- Link Route
- Link Action
- Mailto
- None Alert
- Success Alert
- Info Alert
- Warning Alert
- Danger Alert
CSS
The css method includes Bootstrap CSS via either a CDN / Local file, and pass optional attributes.
Bootstrap::css();
Bootstrap::css('local', ['type' => 'text/css']);
JS
The js method includes Bootstrap JS via either a CDN / Local file, and pass optional attributes.
Bootstrap::js();
Bootstrap::js('local', ['type' => 'text/javascript']);
Vertical
The vertical method allows a form to be set in a vertical manner. This is the default form type.
The vertical method can be chained before any form element is added and will continue for subsequent form elements until overwritten.
Bootstrap::vertical();
Bootstrap::vertical()->text('text', 'Text', 'Value');
Horizontal
The horizontal method allows a form to be set in a horizontal manner. This form type accepts both an input class and a label class.
The horizontal method can be chained before any form element is added and will continue for subsequent form elements until overwritten.
Bootstrap::horizontal('col-sm-10', 'col-sm-2');
Bootstrap::horizontal('col-sm-10', 'col-sm-2')->text('text', 'Text', 'Value');
Inline
The inline method allows a form to be set in an inline manner. This form type accepts only a label class.
The inline method can be chained before any form element is added and will continue for subsequent form elements until overwritten.
Bootstrap::inline('sr-only');
Bootstrap::inline('sr-only')->text('text', 'Text', 'Value');
Text
The text method generates a text field with an optional label, from errors and options.
Bootstrap::text('text', 'Text', 'Value', $errors);
Password
The password method generates a password field with an optional label, from errors and options.
Bootstrap::password('password', 'Password');
The email method generates an email field with an optional label, from errors and options.
Bootstrap::email('email', 'Email address', 'Value');
Telephone
The telephone method generates an tel field with an optional label, from errors and options.
Bootstrap::telephone('telephone', 'Telephone Number', 'Value', $errors, array('pattern' => '^(?:(?:\(?(?:0(?:0|11)\)?[\s-]?\(?|\+)44\)?[\s-]?(?:\(?0\)?[\s-]?)?)|(?:\(?0))(?:(?:\d{5}\)?[\s-]?\d{4,5})|(?:\d{4}\)?[\s-]?(?:\d{5}|\d{3}[\s-]?\d{3}))|(?:\d{3}\)?[\s-]?\d{3}[\s-]?\d{3,4})|(?:\d{2}\)?[\s-]?\d{4}[\s-]?\d{4}))(?:[\s-]?(?:x|ext\.?|\#)\d{3,4})?$'));
Number
The number method generates an number field with an optional label, from errors and options.
Bootstrap::number('number', 'Number', 'Value', $errors, array('min' => 1, 'max' => 10, 'step' => 2));
Url
The url method generates an url field with an optional label, from errors and options.
Bootstrap::url('url', 'URL', 'Value', $errors, array('pattern' => '^(http[s]?:\\/\\/(www\\.)?|ftp:\\/\\/(www\\.)?|www\\.){1}([0-9A-Za-z-\\.@:%_\+~#=]+)+((\\.[a-zA-Z]{2,3})+)(/(.)*)?(\\?(.)*)?'));
Range
The range method generates an number field with an optional label, from errors and options.
Bootstrap::range('range', 'Range', 'Value', $errors, array('min' => 1, 'max' => 10, 'step' => 2));
Search
The search method generates an search field and icon with an optional label, from errors and options.
Bootstrap::number('search', 'Search', 'Value');
File
The file method generates a file field with an optional label, from errors and options.
Bootstrap::file('file', 'File');
Date
The date method generates a date field with a date picker, with an optional label, from errors, input options, and javascript parameters.
Bootstrap::date('date', 'Date');
Bootstrap::date('date', 'Date', date('d-m-Y'), $errors, [], ['format' => 'DD-MM-YYYY']);
Datetime
The datetime method generates a date field with a datetime picker, with an optional label, from errors, input options, and javascript parameters.
Bootstrap::datetime('datetime', 'Date');
Bootstrap::datetime('datetime', 'Date', date('d-m-Y H:i:s'));
Time
The time method generates a date field with a time picker, with an optional label, from errors, input options, and javascript parameters.
Bootstrap::time('time', 'Time');
Bootstrap::time('time', 'Time', date('H:i:s'));
Textarea
The textarea method generates a textarea field with an optional label, from errors and options.
Bootstrap::textarea('file', 'File', 'Value');
Select
The select method generates a select field with items and an optional label, selected item, from errors and options.
Bootstrap::select('select', 'Select', ['1' => 'Item 1', '2' => 'Item 2'], 2);
Checkbox
The checkbox method generates a checkbox field with a value and an optional label, checked and options.
Bootstrap::checkbox('checkbox', 'Checkbox', 1, true);
Radio
The radio method generates a radio field with a value and an optional label, checked and options.
Bootstrap::checkbox('radio', 'Radio', 1);
Submit
The submit method generates a submit button with a value and optional attributes.
Bootstrap::submit('Submit');
Button
The button method generates a button with a value and optional attributes.
Bootstrap::button('Button');
Reset
The reset method generates a reset button with a value and optional attributes.
Bootstrap::reset('Reset');
Link
The link method generates a link button with a url, title and optional attributes and secure link.
Bootstrap::link('/', 'Link');
Secure Link
The secureLink method generates a secure link button with a url, title and optional attributes and secure link.
Bootstrap::secureLink('/', 'Link');
Link Route
The linkRoute method generates a link button with a route, title and optional parameters, attributes.
Bootstrap::linkRoute('home', 'Home');
Link Action
The linkAction method generates a link button with an action, title and optional parameters, attributes.
Bootstrap::linkAction('index', 'Home');
Mailto
The mailto method generates a mailto link button with an email address, title and optional attributes.
Bootstrap::mailto('test@test.com', 'Email');
None Alert
The none method generates a none alert with content with optional emphasis, optionally be dismissible, and optional attributes.
Bootstrap::none('A message', null, true);
Success Alert
The success method generates a success alert with content with optional emphasis, optionally be dismissible, and optional attributes.
Bootstrap::success('A success message', 'Well done!', true);
Info Alert
The info method generates an info alert with content with optional emphasis, optionally be dismissible, and optional attributes.
Bootstrap::info('An info message', 'Heads up!', true);
Warning Alert
The warning method generates a warning alert with content with optional emphasis, optionally be dismissible, and optional attributes.
Bootstrap::warning('A warning message', 'Warning!', true);
Danger Alert
The danger method generates a danger alert with content with optional emphasis, optionally be dismissible, and optional attributes.
Bootstrap::danger('A danger message', 'Oh snap!', true);
License
Bootstrapper is open-sourced software licensed under the MIT license