FormBuilderProcessor::saveEntry() method
Save or update a form entry
If updating an existing entry, a non-zero id property must appear in the given $data array.
If the id is 0 or not present, then a new entry will be created.
Example
$forms->addHookBefore('FormBuilderProcessor::saveEntry', function($e) {
$data = $e->arguments(0); // array of form values indexed by field name
// populate field named "foo" with value "bar", before it gets saved as an entry
$data['foo'] = 'bar';
// populate the argument back so it reflects the new value
$e->arguments(0, $data);
}); Usage
$int = $processor->saveEntry(array $data);Arguments
| Name | Type(s) | Description |
|---|---|---|
$data | array | Entry data, array indexed by field name |
Return value
intEntry ID that was added or updated
Hooking $processor→saveEntry(…)
You can add your own hook events that are executed either before or after the $processor->saveEntry(…) method is executed. Examples of both are included below. A good place for hook code such as this is in your /site/ready.php file.
Hooking before
The 'before' hooks are called immediately before each $processor->saveEntry(…) method call is executed. This type of hook is especially useful for modifying arguments before they are sent to the method.
$this->addHookBefore('FormBuilderProcessor::saveEntry', function(HookEvent $event) {
// Get the object the event occurred on, if needed
$FormBuilderProcessor = $event->object;
// Get values of arguments sent to hook (and optionally modify them)
$data = $event->arguments(0);
/* Your code here, perhaps modifying arguments */
// Populate back arguments (if you have modified them)
$event->arguments(0, $data);
}); Hooking after
The 'after' hooks are called immediately after each $processor->saveEntry(…) method call is executed. This type of hook is especially useful for modifying the value that was returned by the method call.
$this->addHookAfter('FormBuilderProcessor::saveEntry', function(HookEvent $event) {
// Get the object the event occurred on, if needed
$FormBuilderProcessor = $event->object;
// An 'after' hook can retrieve and/or modify the return value
$return = $event->return;
// Get values of arguments sent to hook (if needed)
$data = $event->arguments(0);
/* Your code here, perhaps modifying the return value */
// Populate back return value, if you have modified it
$event->return = $return;
}); $processor methods and properties
API reference based on ProcessWire core version 3.0.252