Skip to content

bigfork/silverstripe-form-capture

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Silverstripe Form Capture

Provides a method to capture simple Silverstripe forms and a friendly admin interface for users.

Installation

composer require bigfork/silverstripe-form-capture

After installing you will need to run 'dev/build'.

Usage

To store submissions from a form simply call $form->captureForm() in your form handler method. See the example below for usage:

Example

In the page controller:

public function MyForm()
{
	$fields = FieldList::create(
		TextField::create('Name'),
		EmailField::create('Email'),
		TextareaField::create('Enquiry')
	);

	$actions = FieldList::create(
		FormAction::create('doMyForm', 'Submit')
	);

	$form = Form::create($this, __FUNCTION__, $fields, $actions);

	return $form;
}

public function doMyForm($data, $form)
{
	$form->captureForm(
	    'Enquiry form submission', // Required - type of form submission
	    'Name', // Required (can be null) - form field containing the submitter's name
	    'Email', // Required (can be null) - form field containing the submitter's email address
	    ['Captcha'], // Optional - list of fields that shouldn't be stored
	    ['Enquiry'] // Optional - list of fields to show in "Details" column in CMS
	);

	// Other processing
}

When capturing a form some useful information is returned which can be used in the controller. For example a link is returned to the submission area in the CMS.

$capturedSubmission = $form->captureForm('Contact form', null, null);

echo($capturedSubmission['Link']);
// http://your-site.com/admin/<Link to exact submission>

Clearing old submissions

You can use the ClearOldSubmissionsTask to automatically delete form submissions older than a pre-defined age. To use this task, you must first configure the maximum age of form submissions:

Bigfork\SilverstripeFormCapture\Tasks\ClearOldSubmissionsTask:
  max_age_days: 90

Credit

Thank you to Andrew Haine for building the original Silverstripe Form Capture module and allowing us to take over maintenance & development.

About

Provides a method to capture simple silverstripe forms and a friendly admin interface for users

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages