LLMS_Form_Handler::submit( array $posted_data, string $location, array $args = array() )
Form submission handler.
Parameters Parameters
- $posted_data
-
(array) (Required) User-submitted form data.
- $location
-
(string) (Required) Form location ID.
- $args
-
(array) (Optional) Additional arguments passed to the short-circuit filter.
Default value: array()
Return Return
(integer|boolean|WP_Error) On success returns the WP_User
ID. If the validate_only
argument is passed returns true
on success. Returns an error object if any validation or processing errors are encountered.
Source Source
File: includes/forms/class-llms-form-handler.php
public function submit( $posted_data, $location, $args = array() ) { // Determine the user action to perform. $action = get_current_user_id() ? 'update' : 'registration'; // Load the form, filtering out invisible fields, only for checkout form. if ( 'checkout' === $location ) { add_filter( 'llms_forms_remove_invisible_field', '__return_true', 999 ); } $fields = $this->get_fields( $action, $location, $args ); if ( 'checkout' === $location ) { remove_filter( 'llms_forms_remove_invisible_field', '__return_true', 999 ); } if ( is_wp_error( $fields ) ) { return $this->submit_error( $fields, $posted_data, $action ); } // Make sure the user id cannot be forced by user submission. unset( $posted_data['user_id'] ); if ( ! empty( $args['validate_only'] ) ) { return $this->validate_fields( $posted_data, $location, $fields, $action ); } return $this->submit_fields( $posted_data, $location, $fields, $action ); }
Expand full source code Collapse full source code View on GitHub
Changelog Changelog
Version | Description |
---|---|
7.0.0 | Allow submission validation only (without actually submitting the fields) using the validate_only flag in the $args array. |
5.1.0 | Remove invisible fields from when loading the checkout form. |
5.0.0 | Introduced. |