Downloads
Stars
Version
Add the following to your composer.json
{
"repositories": [{
"type": "composer",
"url": "https://composer.intothesource.com"
}]
}
and install via composer
composer require intothesource/laravel-form-builder
Note! This and next step are optional if you use laravel>=5.5 with package auto discovery feature.
Add service provider to config/app.php
in providers
section
IntoTheSource\LaravelFormBuilder\ServiceProvider::class,
Register package facade in config/app.php
in aliases
section
'Formbuilder' => IntoTheSource\LaravelFormBuilder\Facades\LaravelFormBuilder::class,
php artisan migrate
<?php
$form = Formbuilder::form()->create([
'name' => '', // Validations: required|string Default: null
'active' => '', // Validations: required|boolean Default: false
'emails' => '', // Validations: nullable|string Default: null
'success_message' => '', // Validations: nullable|string Default: null
'redirect_url' => '', // Validations: nullable|string Default: null
'confirm_email' => '', // Validations: required|boolean Default: false
'send_email' => '', // Validations: required|boolean Default: false
'save_data' => '', // Validations: required|boolean Default: false
'recaptcha' => '', // Validations: required|boolean Default: false
'recaptcha_private_key' => '', // Validations: nullable|string Default: null
'recaptcha_public_key' => '', // Validations: nullable|string Default: null
]);
<?php
$element = $form->element()->create([
'formbuilder_form_id' => '', // Validations: required|integer Default: Autofilled
'active' => '', // Validations: required|boolean Default: false
'order' => '', // Validations: integer|nullable Default: null
'required' => '', // Validations: required|boolean Default: false
'name' => '', // Validations: required|string Default: null
'placeholder' => '', // Validations: string|nullable Default: null
'help_block' => '', // Validations: string|nullable Default: null
'type' => '', // Validations: required|string Default: null
]);
<?php
$value = $element->value()->create([
'formbuilder_element_id' => '', // Validations: required|integer Default: Autofilled
'active' => '', // Validations: required|boolean Default: false
'order' => '', // Validations: integer|nullable Default: null
'name' => '', // Validations: required|string Default: null
]);
<?php
$array = $form->build()->toArray();
Array response example:
/**
array (
'id' => 1,
'name' => 'Test formulier',
'success_message' => NULL,
'redirect_url' => NULL,
'recaptcha' => 0,
'recaptcha_public_key' => NULL,
'elements' =>
array (
0 =>
array (
'id' => 1,
'order' => NULL,
'required' => 0,
'name' => 'Test element',
'placeholder' => NULL,
'help_block' => NULL,
'type' => 'text',
'values' =>
array (
),
),
1 =>
array (
'id' => 2,
'order' => NULL,
'required' => 0,
'name' => 'select test',
'placeholder' => NULL,
'help_block' => NULL,
'type' => 'select',
'values' =>
array (
0 =>
array (
'id' => 1,
'order' => NULL,
'name' => 'Waarde 1',
),
1 =>
array (
'id' => 2,
'order' => NULL,
'name' => 'Waarde 2',
),
2 =>
array (
'id' => 3,
'order' => NULL,
'name' => 'Waarde 3',
),
3 =>
array (
'id' => 4,
'order' => NULL,
'name' => 'Waarde 4',
),
),
),
),
)
*/
$json = $form->build()->toJson();
/**
Json response example:
{
"id": 1,
"name": "Test formulier",
"success_message": null,
"redirect_url": null,
"recaptcha": 0,
"recaptcha_public_key": null,
"elements": [{
"id": 1,
"order": null,
"required": 0,
"name": "Test element",
"placeholder": null,
"help_block": null,
"type": "text",
"values": []
}, {
"id": 2,
"order": null,
"required": 0,
"name": "select test",
"placeholder": null,
"help_block": null,
"type": "select",
"values": [{
"id": 1,
"order": null,
"name": "Waarde 1"
}, {
"id": 2,
"order": null,
"name": "Waarde 2"
}, {
"id": 3,
"order": null,
"name": "Waarde 3"
}, {
"id": 4,
"order": null,
"name": "Waarde 4"
}]
}]
}
*/
<?php
$form = Formbuilder::form()-load(25);
$form->update([
'emails' => '[email protected], [email protected]',
'success_message' => 'Yes, you did it right!',
]);
<?php
$element = Formbuilder::element()-load(69);
$element->update([
'name' => 'Voornaam',
'placeholder' => 'John Doe',
]);
<?php
$element = Formbuilder::value()-load(12);
$element->update([
'active' => true,
]);
<?php
$form = Formbuilder::form()-load(25)->delete();
// or
$form = Formbuilder::form()->delete(25);
This removes the form with all the elemenets and values
<?php
$element = Formbuilder::element()-load(69)->delete();
// or
$element = Formbuilder::element()->delete(25);
This removes the element with all the values
<?php
$value = Formbuilder::value()-load(12)->delete();
// or
$value = Formbuilder::value()->delete(12);
This removes only a value
If you discover any security related issues, please email [email protected] instead of using the issue tracker.