PluginProbe
Fluent Forms – Customizable Contact Forms, Survey, Quiz, & Conversational Form Builder / 4.3.6
Fluent Forms – Customizable Contact Forms, Survey, Quiz, & Conversational Form Builder v4.3.6
6.2.13 6.2.12 6.2.10 6.2.11 6.2.9 6.2.8 6.2.7 6.2.6 6.2.5 6.2.4 6.2.3 6.2.2 3.6.22 3.6.31 3.6.40 3.6.41 3.6.42 3.6.50 3.6.51 3.6.60 3.6.61 3.6.62 3.6.64 3.6.65 3.6.66 All 195 releases
fluentform / app / Services / Integrations / BaseIntegration.php

BaseIntegration.php in Fluent Forms – Customizable Contact Forms, Survey, Quiz, & Conversational Form Builder 4.3.6, at app/Services/Integrations/BaseIntegration.php

130 lines 3.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace FluentForm\App\Services\Integrations;
4
5 class BaseIntegration
6 {
7 private $setting_key = '';
8 private $isMultiple = false;
9 private $formId = false;
10 private $isJsonValue = true;
11
12 public function __construct($settings_key = '', $form_id = false, $isMultiple = false)
13 {
14 $this->setting_key = $settings_key;
15 $this->isMultiple = $isMultiple;
16 $this->formId = $form_id;
17 }
18
19 public function setSettingsKey($key)
20 {
21 $this->setting_key = $key;
22 }
23
24 public function setIsMultiple($isMultiple)
25 {
26 $this->isMultiple = $isMultiple;
27 }
28
29 public function setFormId($formId)
30 {
31 $this->formId = $formId;
32 }
33
34 public function setJasonType($type)
35 {
36 $this->isJsonValue = $type;
37 }
38
39 public function save($settings)
40 {
41 return wpFluent()->table('fluentform_form_meta')
42 ->insert(array(
43 'meta_key' => $this->setting_key,
44 'form_id' => $this->formId,
45 'value' => json_encode($settings)
46 ));
47 }
48
49 public function update($settingsId, $settings)
50 {
51 return wpFluent()->table('fluentform_form_meta')
52 ->where('id', $settingsId)
53 ->update(array(
54 'value' => json_encode($settings)
55 ));
56 }
57
58 public function get($settingsId)
59 {
60 $settings = wpFluent()->table('fluentform_form_meta')
61 ->where('form_id', $this->formId)
62 ->where('meta_key', $this->setting_key)
63 ->find($settingsId);
64 $settings->formattedValue = $this->getFormattedValue($settings);
65 return $settings;
66 }
67
68 public function getAll()
69 {
70 $settingsQuery = wpFluent()->table('fluentform_form_meta')
71 ->where('form_id', $this->formId)
72 ->where('meta_key', $this->setting_key);
73
74 if($this->isMultiple) {
75 $settings = $settingsQuery->get();
76 foreach ($settings as $setting) {
77 $setting->formattedValue = $this->getFormattedValue($setting);
78 }
79 } else {
80 $settings = $settingsQuery->first();
81 $settings->formattedValue = $this->getFormattedValue($settings);
82 }
83 return $settings;
84 }
85
86 public function delete($settingsId)
87 {
88 return wpFluent()->table('fluentform_form_meta')
89 ->where('meta_key', $this->setting_key)
90 ->where('form_id', $this->formId)
91 ->where('id', $settingsId)
92 ->delete();
93 }
94
95 protected function validate($notification)
96 {
97 $validate = fluentValidator($notification, array(
98 'name' => 'required',
99 'list_id' => 'required',
100 'fieldEmailAddress' => 'required'
101 ), array(
102 'name.required' => __('Feed Name is required', 'fluentform'),
103 'list.required' => __(' List is required', 'fluentform'),
104 'fieldEmailAddress.required' => __('Email Address is required')
105 ))->validate();
106
107 if ($validate->fails()) {
108 wp_send_json_error(array(
109 'errors' => $validate->errors(),
110 'message' => __('Please fix the errors', 'fluentform')
111 ), 400);
112 }
113 return true;
114 }
115
116 private function getFormattedValue($setting)
117 {
118 if($this->isJsonValue) {
119 return json_decode($setting->value, true);
120 }
121
122 return $setting->value;
123 }
124
125 public function deleteAll()
126 {
127 // ...
128 }
129 }
130