Skip to content

Commit 3b062b2

Browse files
committed
feat: mailerlite forget subscriber new event added
1 parent c4b4b7c commit 3b062b2

File tree

2 files changed

+22
-4
lines changed

2 files changed

+22
-4
lines changed

frontend-dev/src/components/AllIntegrations/MailerLite/MailerLiteIntegLayout.jsx

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,18 @@ export default function MailerLiteIntegLayout({
3232
<option value="add_subscriber" data-action_name="add_subscriber">
3333
{__('Add Subscriber', 'bit-integrations')}
3434
</option>
35-
<option value="delete_subscriber" data-action_name="delete_subscriber">
35+
<option
36+
value="delete_subscriber"
37+
data-action_name="delete_subscriber"
38+
disabled={mailerLiteConf.mailer_lite_type === 'v1'}>
3639
{__('Delete subscriber', 'bit-integrations')}
3740
</option>
41+
<option
42+
value="forget_subscriber"
43+
data-action_name="forget_subscriber"
44+
disabled={mailerLiteConf.mailer_lite_type === 'v1'}>
45+
{__('Forget subscriber', 'bit-integrations')}
46+
</option>
3847
</select>
3948

4049
{loading.field && (

includes/Actions/MailerLite/RecordApiHelper.php

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ public function addSubscriber($auth_token, $groupIds, $type, $finalData)
129129
return HttpHelper::post($apiEndpoint, $requestParams, $this->_defaultHeader);
130130
}
131131

132-
public function deleteSubscriber($auth_token, $finalData)
132+
public function deleteSubscriber($auth_token, $finalData, $forget = false)
133133
{
134134
if (!$this->_isMailerLiteV2) {
135135
return [
@@ -157,9 +157,11 @@ public function deleteSubscriber($auth_token, $finalData)
157157
];
158158
}
159159

160-
$apiEndpoint = $this->_baseUrl . 'subscribers/' . $subscriberId;
160+
$apiEndpoint = $forget
161+
? $this->_baseUrl . 'subscribers/' . $subscriberId . '/forget'
162+
: $this->_baseUrl . 'subscribers/' . $subscriberId;
161163

162-
return HttpHelper::request($apiEndpoint, 'DELETE', $finalData, $this->_defaultHeader);
164+
return HttpHelper::request($apiEndpoint, $forget ? 'POST' : 'DELETE', $finalData, $this->_defaultHeader);
163165
}
164166

165167
public function generateReqDataFromFieldMap($data, $fieldMap)
@@ -197,6 +199,13 @@ public function execute(
197199

198200
break;
199201

202+
case 'forget_subscriber':
203+
$apiResponse = $this->deleteSubscriber($auth_token, $finalData, true);
204+
$typeName = 'forget-subscriber';
205+
$res = $apiResponse->message ?? wp_json_encode($apiResponse);
206+
207+
break;
208+
200209
default:
201210
$apiResponse = $this->addSubscriber($auth_token, $groupId, $type, $finalData);
202211
$typeName = 'add-subscriber';

0 commit comments

Comments
 (0)