@@ -39,71 +39,73 @@ public function match( string $webhook_entity_id ) {
39
39
/**
40
40
* Process the webhook request.
41
41
*
42
- * @param WC_PostFinanceCheckout_Webhook_Request $request The webhook request object.
42
+ * @param \PostFinanceCheckout\Sdk\Model\Transaction $transaction The webhook request object.
43
43
* @return mixed The result of the processing.
44
44
*/
45
45
public function process ( WC_PostFinanceCheckout_Webhook_Request $ request ) {
46
46
$ order = $ this ->get_order ( $ request );
47
+ $ entity = $ this ->load_entity ( $ request );
47
48
if ( false != $ order && $ order ->get_id () ) {
48
- $ this ->process_order_related_inner ( $ order , $ request );
49
+ $ this ->process_order_related_inner ( $ order , $ entity );
49
50
}
50
51
}
51
52
52
53
/**
53
54
* Process order related inner.
54
55
*
55
56
* @param WC_Order $order order.
56
- * @param WC_PostFinanceCheckout_Webhook_Request $request request .
57
+ * @param mixed $transaction transaction .
57
58
* @return void
58
59
* @throws Exception Exception.
59
60
*/
60
- protected function process_order_related_inner ( WC_Order $ order , WC_PostFinanceCheckout_Webhook_Request $ request ) {
61
+ protected function process_order_related_inner ( WC_Order $ order , $ transaction ) {
61
62
$ transaction_info = WC_PostFinanceCheckout_Entity_Transaction_Info::load_by_order_id ( $ order ->get_id () );
62
- if ( $ request ->get_state () != $ transaction_info ->get_state () ) {
63
- switch ( $ request ->get_state () ) {
63
+ $ transaction_state = $ transaction ->getState ();
64
+ if ( $ transaction_state != $ transaction_info ->get_state () ) {
65
+ switch ( $ transaction_state ) {
64
66
case \PostFinanceCheckout \Sdk \Model \TransactionState::CONFIRMED :
65
67
case \PostFinanceCheckout \Sdk \Model \TransactionState::PROCESSING :
66
- $ this ->confirm ( $ request , $ order );
68
+ $ this ->confirm ( $ transaction , $ order );
67
69
break ;
68
70
case \PostFinanceCheckout \Sdk \Model \TransactionState::AUTHORIZED :
69
- $ this ->authorize ( $ request , $ order );
71
+ $ this ->authorize ( $ transaction , $ order );
70
72
break ;
71
73
case \PostFinanceCheckout \Sdk \Model \TransactionState::DECLINE :
72
- $ this ->decline ( $ request , $ order );
74
+ $ this ->decline ( $ transaction , $ order );
73
75
break ;
74
76
case \PostFinanceCheckout \Sdk \Model \TransactionState::FAILED :
75
- $ this ->failed ( $ request , $ order );
77
+ $ this ->failed ( $ transaction , $ order );
76
78
break ;
77
79
case \PostFinanceCheckout \Sdk \Model \TransactionState::FULFILL :
78
- $ this ->authorize ( $ request , $ order );
79
- $ this ->fulfill ( $ request , $ order );
80
+ $ this ->authorize ( $ transaction , $ order );
81
+ $ this ->fulfill ( $ transaction , $ order );
80
82
break ;
81
83
case \PostFinanceCheckout \Sdk \Model \TransactionState::VOIDED :
82
- $ this ->voided ( $ request , $ order );
84
+ $ this ->voided ( $ transaction , $ order );
83
85
break ;
84
86
case \PostFinanceCheckout \Sdk \Model \TransactionState::COMPLETED :
85
- $ this ->authorize ( $ request , $ order );
86
- $ this ->waiting ( $ request , $ order );
87
+ $ this ->authorize ( $ transaction , $ order );
88
+ $ this ->waiting ( $ transaction , $ order );
87
89
break ;
88
90
default :
89
91
// Nothing to do.
90
92
break ;
91
93
}
92
94
}
93
95
94
- WC_PostFinanceCheckout_Service_Transaction::instance ()->update_transaction_info ( $ this -> load_entity ( $ request ) , $ order );
96
+ WC_PostFinanceCheckout_Service_Transaction::instance ()->update_transaction_info ( $ transaction , $ order );
95
97
}
96
98
97
99
/**
98
100
* Confirm.
99
101
*
100
- * @param WC_PostFinanceCheckout_Webhook_Request $request request .
102
+ * @param \PostFinanceCheckout\Sdk\Model\Transaction $transaction transaction .
101
103
* @param WC_Order $order order.
102
104
* @return void
103
105
*/
104
- protected function confirm ( WC_PostFinanceCheckout_Webhook_Request $ request , WC_Order $ order ) {
106
+ protected function confirm ( \ PostFinanceCheckout \ Sdk \ Model \ Transaction $ transaction , WC_Order $ order ) {
105
107
if ( ! $ order ->get_meta ( '_postfinancecheckout_confirmed ' , true ) && ! $ order ->get_meta ( '_postfinancecheckout_authorized ' , true ) ) {
106
- do_action ( 'wc_postfinancecheckout_confirmed ' , $ this -> load_entity ( $ request ) , $ order );
108
+ do_action ( 'wc_postfinancecheckout_confirmed ' , $ transaction , $ order );
107
109
$ order ->add_meta_data ( '_postfinancecheckout_confirmed ' , 'true ' , true );
108
110
$ default_status = apply_filters ( 'wc_postfinancecheckout_confirmed_status ' , 'postfi-redirected ' , $ order );
109
111
apply_filters ( 'postfinancecheckout_order_update_status ' , $ order , \PostFinanceCheckout \Sdk \Model \TransactionState::CONFIRMED , $ default_status );
@@ -114,12 +116,12 @@ protected function confirm( WC_PostFinanceCheckout_Webhook_Request $request, WC_
114
116
/**
115
117
* Authorize.
116
118
*
117
- * @param WC_PostFinanceCheckout_Webhook_Request $request request .
119
+ * @param \PostFinanceCheckout\Sdk\Model\Transaction $transaction transaction .
118
120
* @param \WC_Order $order order.
119
121
*/
120
- protected function authorize ( WC_PostFinanceCheckout_Webhook_Request $ request , WC_Order $ order ) {
122
+ protected function authorize ( \ PostFinanceCheckout \ Sdk \ Model \ Transaction $ transaction , WC_Order $ order ) {
121
123
if ( ! $ order ->get_meta ( '_postfinancecheckout_authorized ' , true ) ) {
122
- do_action ( 'wc_postfinancecheckout_authorized ' , $ this -> load_entity ( $ request ) , $ order );
124
+ do_action ( 'wc_postfinancecheckout_authorized ' , $ transaction , $ order );
123
125
$ order ->add_meta_data ( '_postfinancecheckout_authorized ' , 'true ' , true );
124
126
$ default_status = apply_filters ( 'wc_postfinancecheckout_authorized_status ' , 'on-hold ' , $ order );
125
127
apply_filters ( 'postfinancecheckout_order_update_status ' , $ order , \PostFinanceCheckout \Sdk \Model \TransactionState::AUTHORIZED , $ default_status );
@@ -133,13 +135,13 @@ protected function authorize( WC_PostFinanceCheckout_Webhook_Request $request, W
133
135
/**
134
136
* Waiting.
135
137
*
136
- * @param WC_PostFinanceCheckout_Webhook_Request $request request .
138
+ * @param \PostFinanceCheckout\Sdk\Model\Transaction $transaction transaction .
137
139
* @param WC_Order $order order.
138
140
* @return void
139
141
*/
140
- protected function waiting ( WC_PostFinanceCheckout_Webhook_Request $ request , WC_Order $ order ) {
142
+ protected function waiting ( \ PostFinanceCheckout \ Sdk \ Model \ Transaction $ transaction , WC_Order $ order ) {
141
143
if ( ! $ order ->get_meta ( '_postfinancecheckout_manual_check ' , true ) ) {
142
- do_action ( 'wc_postfinancecheckout_completed ' , $ this -> load_entity ( $ request ) , $ order );
144
+ do_action ( 'wc_postfinancecheckout_completed ' , $ transaction , $ order );
143
145
$ default_status = apply_filters ( 'wc_postfinancecheckout_completed_status ' , 'processing ' , $ order );
144
146
apply_filters ( 'postfinancecheckout_order_update_status ' , $ order , \PostFinanceCheckout \Sdk \Model \TransactionState::COMPLETED , $ default_status );
145
147
}
@@ -148,12 +150,12 @@ protected function waiting( WC_PostFinanceCheckout_Webhook_Request $request, WC_
148
150
/**
149
151
* Decline.
150
152
*
151
- * @param WC_PostFinanceCheckout_Webhook_Request $request request .
153
+ * @param \PostFinanceCheckout\Sdk\Model\Transaction $transaction transaction .
152
154
* @param WC_Order $order order.
153
155
* @return void
154
156
*/
155
- protected function decline ( WC_PostFinanceCheckout_Webhook_Request $ request , WC_Order $ order ) {
156
- do_action ( 'wc_postfinancecheckout_declined ' , $ this -> load_entity ( $ request ) , $ order );
157
+ protected function decline ( \ PostFinanceCheckout \ Sdk \ Model \ Transaction $ transaction , WC_Order $ order ) {
158
+ do_action ( 'wc_postfinancecheckout_declined ' , $ transaction , $ order );
157
159
$ default_status = apply_filters ( 'wc_postfinancecheckout_decline_status ' , 'cancelled ' , $ order );
158
160
apply_filters ( 'postfinancecheckout_order_update_status ' , $ order , \PostFinanceCheckout \Sdk \Model \TransactionState::DECLINE , $ default_status );
159
161
WC_PostFinanceCheckout_Helper::instance ()->maybe_restock_items_for_order ( $ order );
@@ -162,12 +164,12 @@ protected function decline( WC_PostFinanceCheckout_Webhook_Request $request, WC_
162
164
/**
163
165
* Failed.
164
166
*
165
- * @param WC_PostFinanceCheckout_Webhook_Request $request request .
167
+ * @param \PostFinanceCheckout\Sdk\Model\Transaction $transaction transaction .
166
168
* @param WC_Order $order order.
167
169
* @return void
168
170
*/
169
- protected function failed ( WC_PostFinanceCheckout_Webhook_Request $ request , WC_Order $ order ) {
170
- do_action ( 'wc_postfinancecheckout_failed ' , $ this -> load_entity ( $ request ) , $ order );
171
+ protected function failed ( \ PostFinanceCheckout \ Sdk \ Model \ Transaction $ transaction , WC_Order $ order ) {
172
+ do_action ( 'wc_postfinancecheckout_failed ' , $ transaction , $ order );
171
173
$ valid_order_statuses = array (
172
174
// Default pending status.
173
175
'pending ' ,
@@ -185,26 +187,26 @@ protected function failed( WC_PostFinanceCheckout_Webhook_Request $request, WC_O
185
187
/**
186
188
* Fulfill.
187
189
*
188
- * @param WC_PostFinanceCheckout_Webhook_Request $request request .
190
+ * @param \PostFinanceCheckout\Sdk\Model\Transaction $transaction transaction .
189
191
* @param WC_Order $order order.
190
192
* @return void
191
193
*/
192
- protected function fulfill ( WC_PostFinanceCheckout_Webhook_Request $ request , WC_Order $ order ) {
193
- do_action ( 'wc_postfinancecheckout_fulfill ' , $ this -> load_entity ( $ request ) , $ order );
194
+ protected function fulfill ( \ PostFinanceCheckout \ Sdk \ Model \ Transaction $ transaction , WC_Order $ order ) {
195
+ do_action ( 'wc_postfinancecheckout_fulfill ' , $ transaction , $ order );
194
196
// Sets the status to procesing or complete depending on items.
195
- $ order ->payment_complete ( $ request -> get_entity_id () );
197
+ $ order ->payment_complete ( $ transaction -> getId () );
196
198
}
197
199
198
200
/**
199
201
* Voided.
200
202
*
201
- * @param WC_PostFinanceCheckout_Webhook_Request $request request .
203
+ * @param \PostFinanceCheckout\Sdk\Model\Transaction $transaction transaction .
202
204
* @param WC_Order $order order.
203
205
* @return void
204
206
*/
205
- protected function voided ( WC_PostFinanceCheckout_Webhook_Request $ request , WC_Order $ order ) {
207
+ protected function voided ( \ PostFinanceCheckout \ Sdk \ Model \ Transaction $ transaction , WC_Order $ order ) {
206
208
$ default_status = apply_filters ( 'wc_postfinancecheckout_voided_status ' , 'cancelled ' , $ order );
207
209
apply_filters ( 'postfinancecheckout_order_update_status ' , $ order , \PostFinanceCheckout \Sdk \Model \TransactionState::VOIDED , $ default_status );
208
- do_action ( 'wc_postfinancecheckout_voided ' , $ this -> load_entity ( $ request ) , $ order );
210
+ do_action ( 'wc_postfinancecheckout_voided ' , $ transaction , $ order );
209
211
}
210
212
}
0 commit comments