SubmissionHandler.php
1.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?php
namespace NinjaForms\Includes\Contracts;
use NinjaForms\Includes\Entities\SingleSubmission;
/**
* Contract to perform actions on a Single Submission
*
* Used on the Submissions Page, these handlers provide a standard means for
* registering additional actions to be performed on a single submission. For
* example, PDF Submissions would register a handler that receives the
* submission and export a PDF
*/
interface SubmissionHandler{
/**
* Return an identifying slug for the handler
* @return string
*/
public function getSlug( ): string;
/**
* Return a label for the handler
* @return string
*/
public function getLabel( ): string;
/**
* Return class name of SubmissionHandler
* @return string
*/
public function getHandlerClassName( ): string;
/**
* Perform action on a single submission
*
* @param SingleSubmission $singleSubmission
* @return void
*/
public function handle(SingleSubmission $singleSubmission): array;
/**
* Returns downloadable
*
* @return string
*/
public function getDownload( ): string;
}