PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 2.13.0
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v2.13.0
4.4.2 4.4.1 4.4.0 4.3.3 4.3.2 4.3.1 4.3.0 4.2.3 4.2.2 4.2.1 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.10 1.1.11 1.1.12 1.1.13 1.1.14 1.1.15 1.1.16 1.1.17 1.1.18 1.1.19 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.11.0 1.11.1 1.11.2 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.4.0 1.4.1 1.4.2 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.7.0 1.7.1 1.7.2 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.9.0 1.9.1 1.9.2 1.9.3 1.9.4 1.9.5 2.0.0 2.0.1 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.10.0 2.10.1 2.11.0 2.11.1 2.11.2 2.11.3 2.11.4 2.12.0 2.13.0 2.14.0 2.14.1 2.15.0 2.15.1 2.16.0 2.16.1 2.16.2 2.16.3 2.17.0 2.17.1 2.17.2 2.18.0 2.19.0 2.19.2 2.19.3 2.19.4 2.2.0 2.2.1 2.20.0 2.20.1 2.20.2 2.20.3 2.20.4 2.20.5 2.20.6 2.21.0 2.22.0 2.22.1 2.23.0 2.24.0 2.25.0 2.25.1 2.25.2 2.26.0 2.27.0 2.27.1 2.28.0 2.29.0 2.29.1 2.29.2 2.29.3 2.29.4 2.3.0 2.3.1 2.30.0 2.31.0 2.31.1 2.31.2 2.31.3 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.40.0 2.40.1 2.5.0 2.5.1 2.5.2 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.8.2 2.8.3 2.8.4 2.9.0 3.0.0 3.0.0-RC1 3.0.0-RC2 3.0.0-beta1 3.0.0-beta2 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.10.0 3.10.1 3.11.0 3.12.0 3.13.0 3.13.1 3.13.2 3.13.3 3.13.4 3.14.0 3.15.0 3.15.1 3.15.2 3.15.3 3.15.4 3.15.5 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.16.6 3.16.7 3.16.8 3.17.0 3.17.1 3.17.2 3.17.3 3.17.4 3.17.5 3.17.6 3.18.0 3.19.0 3.19.1 3.19.2 3.2.0 3.2.1 3.2.2 3.20.0 3.20.1 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.4.3 3.5.0 3.5.1 3.5.2 3.5.3 3.6.0 3.6.1 3.6.2 3.7.0 3.7.1 3.7.2 3.7.3 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.9.0 4.0.0 4.0.1 4.0.2 4.0.3 trunk 4.1.0 0.2.19.1 4.1.1 1.0.0 4.2.0 1.0.1 1.0.2
surecart / app / routes / admin.php
surecart / app / routes Last commit date
admin.php 2 years ago ajax.php 3 years ago web.php 2 years ago
admin.php
431 lines
1 <?php
2 /**
3 * WordPress Admin Routes.
4 * WARNING: Do not use \SureCart::route()->all() here, otherwise you will override
5 * ALL custom admin pages which you most likely do not want to do.
6 *
7 * @link https://docs.wpemerge.com/#/framework/routing/methods
8 *
9 * @package SureCart
10 */
11
12 use SureCart\Middleware\AccountClaimMiddleware;
13 use SureCart\Models\ApiToken;
14
15 if ( ! defined( 'ABSPATH' ) ) {
16 exit;
17 }
18
19 /*
20 |--------------------------------------------------------------------------
21 | Onboarding
22 |--------------------------------------------------------------------------
23 */
24 \SureCart::route()
25 ->get()
26 ->where( 'admin', 'sc-getting-started' )
27 ->name( 'onboarding.show' )
28 ->middleware( 'user.can:manage_options' )
29 ->middleware( 'assets.components' )
30 ->middleware( 'assets.brand_colors' )
31 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Onboarding\\' )
32 ->handle( 'OnboardingController@show' );
33
34 /*
35 |--------------------------------------------------------------------------
36 | Claim Account
37 |--------------------------------------------------------------------------
38 */
39 \SureCart::route()
40 ->get()
41 ->where( 'admin', 'sc-claim-account' )
42 ->name( 'account.claim' )
43 ->middleware( AccountClaimMiddleware::class )
44 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Onboarding\\' )
45 ->handle( 'OnboardingController@show' );
46
47 /*
48 |--------------------------------------------------------------------------
49 | Dashboard
50 |--------------------------------------------------------------------------
51 */
52 \SureCart::route()
53 ->get()
54 ->where( 'admin', 'sc-dashboard' )
55 ->middleware( 'user.can:manage_sc_shop_settings' )
56 ->middleware( 'assets.components' )
57 ->name( 'dashboard.show' )
58 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Dashboard\\' )
59 ->handle( 'DashboardController@index' );
60
61 /*
62 |--------------------------------------------------------------------------
63 | Complete Signup
64 |--------------------------------------------------------------------------
65 */
66 \SureCart::route()
67 ->get()
68 ->where( 'admin', 'sc-complete-signup' )
69 ->middleware( 'user.can:manage_options' )
70 ->middleware( 'assets.components' )
71 ->middleware( 'assets.brand_colors' )
72 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Onboarding\\' )
73 ->group(
74 function() {
75 \SureCart::route()->get()->handle( 'OnboardingController@complete' );
76 \SureCart::route()->post()->middleware( 'nonce:update_plugin_settings' )->handle( 'OnboardingController@save' );
77 }
78 );
79
80
81 /*
82 |--------------------------------------------------------------------------
83 | Orders
84 |--------------------------------------------------------------------------
85 */
86 \SureCart::route()
87 ->where( 'admin', 'sc-orders' )
88 ->middleware( 'user.can:edit_sc_orders' )
89 ->middleware( 'assets.components' )
90 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Orders\\' )
91 ->group(
92 function() {
93 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'OrdersViewController@index' );
94 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'OrdersViewController@edit' );
95 \SureCart::route()->get()->where( 'sc_url_var', 'archive', 'action' )->handle( 'OrdersViewController@archive' );
96 }
97 );
98
99 /*
100 |--------------------------------------------------------------------------
101 | Checkouts
102 |--------------------------------------------------------------------------
103 */
104 \SureCart::route()
105 ->where( 'admin', 'sc-checkouts' )
106 ->middleware( 'user.can:edit_sc_orders' )
107 ->middleware( 'assets.components' )
108 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Checkouts\\' )
109 ->group(
110 function() {
111 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'CheckoutsController@edit' );
112 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'CheckoutsController@edit' );
113 }
114 );
115
116 /*
117 |--------------------------------------------------------------------------
118 | Invoices
119 |--------------------------------------------------------------------------
120 */
121 \SureCart::route()
122 ->where( 'admin', 'sc-invoices' )
123 ->middleware( 'user.can:edit_sc_invoices' )
124 ->middleware( 'assets.components' )
125 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Invoices\\' )
126 ->group(
127 function() {
128 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'InvoicesViewController@index' );
129 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'InvoicesViewController@edit' );
130 \SureCart::route()->get()->where( 'sc_url_var', 'archive', 'action' )->handle( 'InvoicesViewController@archive' );
131 }
132 );
133
134 /*
135 |--------------------------------------------------------------------------
136 | Products
137 |--------------------------------------------------------------------------
138 */
139 \SureCart::route()
140 ->where( 'admin', 'sc-products' )
141 ->middleware( 'user.can:edit_sc_products' )
142 ->middleware( 'assets.components' )
143 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Products\\' )
144 ->group(
145 function() {
146 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'ProductsController@index' );
147 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'ProductsController@edit' );
148 \SureCart::route()->get()->where( 'sc_url_var', 'toggle_archive', 'action' )->middleware( 'archive_model:product' )->handle( 'ProductsController@toggleArchive' );
149 }
150 );
151
152 /*
153 |--------------------------------------------------------------------------
154 | Coupons
155 |--------------------------------------------------------------------------
156 */
157 \SureCart::route()
158 ->where( 'admin', 'sc-coupons' )
159 ->middleware( 'user.can:edit_sc_coupons' )
160 ->middleware( 'assets.components' )
161 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Coupons\\' )
162 ->group(
163 function() {
164 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'CouponsController@index' );
165 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'CouponsController@edit' );
166 }
167 );
168
169 /*
170 |--------------------------------------------------------------------------
171 | Customers
172 |--------------------------------------------------------------------------
173 */
174 \SureCart::route()
175 ->where( 'admin', 'sc-customers' )
176 ->middleware( 'user.can:edit_sc_customers' )
177 ->middleware( 'assets.components' )
178 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Customers\\' )
179 ->group(
180 function() {
181 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'CustomersController@index' );
182 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'CustomersController@edit' );
183 }
184 );
185
186 /*
187 |--------------------------------------------------------------------------
188 | Licenses
189 |--------------------------------------------------------------------------
190 */
191 \SureCart::route()
192 ->where( 'admin', 'sc-licenses' )
193 ->middleware( 'user.can:edit_sc_products' )
194 ->middleware( 'assets.components' )
195 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Licenses\\' )
196 ->group(
197 function() {
198 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'LicensesController@index' );
199 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'LicensesController@edit' );
200 }
201 );
202
203 /*
204 |--------------------------------------------------------------------------
205 | Abandoned Checkouts
206 |--------------------------------------------------------------------------
207 */
208 \SureCart::route()
209 ->where( 'admin', 'sc-abandoned-checkouts' )
210 ->middleware( 'user.can:edit_sc_orders' )
211 ->middleware( 'assets.components' )
212 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Abandoned\\' )
213 ->group(
214 function() {
215 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'AbandonedCheckoutViewController@index' );
216 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'AbandonedCheckoutViewController@edit' );
217 }
218 );
219
220 /*
221 |--------------------------------------------------------------------------
222 | Subscriptions
223 |--------------------------------------------------------------------------
224 */
225 \SureCart::route()
226 ->where( 'admin', 'sc-subscriptions' )
227 ->middleware( 'user.can:edit_sc_subscriptions' )
228 ->middleware( 'assets.components' )
229 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Subscriptions\\' )
230 ->group(
231 function() {
232 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'SubscriptionsController@index' );
233 \SureCart::route()->get()->where( 'sc_url_var', 'show', 'action' )->handle( 'SubscriptionsController@show' );
234 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'SubscriptionsController@edit' );
235 }
236 );
237
238 /*
239 |--------------------------------------------------------------------------
240 | Cancellation Insights
241 |--------------------------------------------------------------------------
242 */
243 \SureCart::route()
244 ->where( 'admin', 'sc-cancellation-insights' )
245 ->middleware( 'user.can:edit_sc_subscriptions' )
246 ->middleware( 'assets.components' )
247 ->setNamespace( '\\SureCart\\Controllers\\Admin\\CancellationInsights\\' )
248 ->group(
249 function() {
250 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'CancellationInsightsController@index' );
251 \SureCart::route()->get()->where( 'sc_url_var', 'show', 'action' )->handle( 'CancellationInsightsController@show' );
252 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'CancellationInsightsController@edit' );
253 }
254 );
255
256
257 \SureCart::route()
258 ->where( 'admin', 'cart' )
259 ->middleware( 'user.can:manage_options' )
260 ->middleware( 'assets.components' )
261 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Cart\\' )
262 ->group(
263 function() {
264 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'CartController@edit' );
265 \SureCart::route()->get()->where( 'sc_url_var', 'show', 'action' )->handle( 'CartController@edit' );
266 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'CartController@edit' );
267 }
268 );
269
270 /*
271 |--------------------------------------------------------------------------
272 | Upgrade Paths
273 |--------------------------------------------------------------------------
274 */
275 \SureCart::route()
276 ->where( 'admin', 'sc-product-groups' )
277 ->middleware( 'user.can:edit_sc_products' )
278 ->middleware( 'assets.components' )
279 ->setNamespace( '\\SureCart\\Controllers\\Admin\\ProductGroups\\' )
280 ->group(
281 function() {
282 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'ProductGroupsController@index' );
283 \SureCart::route()->get()->where( 'sc_url_var', 'show', 'action' )->handle( 'ProductGroupsController@show' );
284 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'ProductGroupsController@show' );
285 }
286 );
287
288 /*
289 |--------------------------------------------------------------------------
290 | Product Collections
291 |--------------------------------------------------------------------------
292 */
293 \SureCart::route()
294 ->where( 'admin', 'sc-product-collections' )
295 ->middleware( 'user.can:edit_sc_products' )
296 ->middleware( 'assets.components' )
297 ->setNamespace( '\\SureCart\\Controllers\\Admin\\ProductCollections\\' )
298 ->group(
299 function() {
300 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'ProductCollectionsController@index' );
301 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'ProductCollectionsController@edit' );
302 }
303 );
304
305 /*
306 |--------------------------------------------------------------------------
307 | Upgrade Paths
308 |--------------------------------------------------------------------------
309 */
310 \SureCart::route()
311 ->where( 'admin', 'sc-bumps' )
312 ->middleware( 'user.can:edit_sc_products' )
313 ->middleware( 'assets.components' )
314 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Bumps\\' )
315 ->group(
316 function() {
317 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'BumpsController@index' );
318 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'BumpsController@edit' );
319 }
320 );
321
322 /*
323 |--------------------------------------------------------------------------
324 | Settings
325 |--------------------------------------------------------------------------
326 */
327 \SureCart::route()
328 ->get()
329 ->where( 'admin', 'sc-settings' )
330 ->middleware( 'user.can:manage_sc_account_settings' )
331 ->middleware( 'assets.components' )
332 ->middleware( 'assets.brand_colors' )
333 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Settings\\' )
334 ->group(
335 function() {
336 // limit menu routes if no API token.
337 if ( ! ApiToken::get() ) {
338 // without the var.
339 \SureCart::route()->get()->where( 'sc_url_var', false, 'tab' )->handle( 'ConnectionSettings@show' );
340 \SureCart::route()->post()->where( 'sc_url_var', false, 'tab' )->middleware( 'nonce:update_plugin_settings' )->handle( 'ConnectionSettings@save' );
341
342 // with the var.
343 \SureCart::route()->get()->where( 'sc_url_var', 'connection', 'tab' )->handle( 'ConnectionSettings@show' );
344 \SureCart::route()->post()->where( 'sc_url_var', 'connection', 'tab' )->middleware( 'nonce:update_plugin_settings' )->handle( 'ConnectionSettings@save' );
345
346 // Advanced.
347 \SureCart::route()->get()->where( 'sc_url_var', 'advanced', 'tab' )->name( 'settings.advanced' )->handle( 'AdvancedSettings@show' );
348 \SureCart::route()->post()->where( 'sc_url_var', 'advanced', 'tab' )->middleware( 'nonce:update_plugin_settings' )->handle( 'AdvancedSettings@save' );
349
350 // Cache.
351 \SureCart::route()->post()->where( 'sc_url_var', 'clear', 'cache' )->middleware( 'nonce:update_plugin_settings' )->handle( 'CacheSettings@clear' );
352 return;
353 }
354
355 // Settings.
356 \SureCart::route()->get()->where( 'sc_url_var', false, 'tab' )->name( 'settings.account' )->handle( 'AccountSettings@show' );
357 \SureCart::route()->get()->where( 'sc_url_var', 'brand', 'tab' )->name( 'settings.brand' )->handle( 'BrandSettings@show' );
358 \SureCart::route()->get()->where( 'sc_url_var', 'order', 'tab' )->name( 'settings.order' )->handle( 'OrderSettings@show' );
359 \SureCart::route()->get()->where( 'sc_url_var', 'abandoned_checkout', 'tab' )->name( 'settings.abandoned_checkout' )->handle( 'AbandonedCheckoutSettings@show' );
360 \SureCart::route()->get()->where( 'sc_url_var', 'subscription_preservation', 'tab' )->name( 'settings.subscription_preservation' )->handle( 'SubscriptionPreservationSettings@show' );
361 \SureCart::route()->get()->where( 'sc_url_var', 'customer_notification_protocol', 'tab' )->name( 'settings.customer' )->handle( 'CustomerSettings@show' );
362 \SureCart::route()->get()->where( 'sc_url_var', 'subscription_protocol', 'tab' )->name( 'settings.subscription' )->handle( 'SubscriptionSettings@show' );
363 \SureCart::route()->get()->where( 'sc_url_var', 'tax_protocol', 'tab' )->where( 'sc_url_var', 'region', 'type' )->name( 'settings.tax.region' )->handle( 'TaxRegionSettings@show' );
364 \SureCart::route()->get()->where( 'sc_url_var', 'tax_protocol', 'tab' )->name( 'settings.tax' )->handle( 'TaxSettings@show' );
365 \SureCart::route()->get()->where( 'sc_url_var', 'upgrade', 'tab' )->name( 'settings.upgrade' )->handle( 'UpgradeSettings@show' );
366 \SureCart::route()->get()->where( 'sc_url_var', 'shipping_protocol', 'tab' )->where( 'sc_url_var', 'shipping_profile', 'type' )->name( 'settings.shipping.profile' )->handle( 'ShippingProfileSettings@show' );
367 \SureCart::route()->get()->where( 'sc_url_var', 'shipping_protocol', 'tab' )->name( 'settings.shipping' )->handle( 'ShippingSettings@show' );
368
369 // Connection.
370 \SureCart::route()->get()->where( 'sc_url_var', 'connection', 'tab' )->name( 'settings.connection' )->handle( 'ConnectionSettings@show' );
371 \SureCart::route()->post()->where( 'sc_url_var', 'connection', 'tab' )->middleware( 'nonce:update_plugin_settings' )->name( 'settings.connection.save' )->handle( 'ConnectionSettings@save' );
372
373 // Advanced.
374 \SureCart::route()->get()->where( 'sc_url_var', 'advanced', 'tab' )->name( 'settings.advanced' )->handle( 'AdvancedSettings@show' );
375 \SureCart::route()->post()->where( 'sc_url_var', 'advanced', 'tab' )->middleware( 'nonce:update_plugin_settings' )->name( 'settings.advanced.save' )->handle( 'AdvancedSettings@save' );
376
377 // Processors.
378 \SureCart::route()->get()->where( 'sc_url_var', 'processors', 'tab' )->name( 'settings.processors' )->handle( 'ProcessorsSettings@show' );
379
380 // Export.
381 \SureCart::route()->get()->where( 'sc_url_var', 'export', 'tab' )->name( 'settings.export' )->handle( 'ExportSettings@show' );
382
383 // Cache.
384 \SureCart::route()->post()->where( 'sc_url_var', 'clear', 'cache' )->middleware( 'nonce:update_plugin_settings' )->handle( 'CacheSettings@clear' );
385 }
386 );
387
388 /*
389 |--------------------------------------------------------------------------
390 | Connection
391 |--------------------------------------------------------------------------
392 */
393 \SureCart::route()
394 ->get()
395 ->where( 'admin', 'sc-plugin' )
396 ->middleware( 'user.can:manage_options' )
397 ->middleware( 'assets.components' )
398 ->group(
399 function() {
400 \SureCart::route()->get()->name( 'plugin.show' )->handle( 'PluginSettings@show' );
401 \SureCart::route()->post()->middleware( 'nonce:update_plugin_settings' )->handle( 'PluginSettings@save' );
402 }
403 );
404
405 /*
406 |--------------------------------------------------------------------------
407 | Webhooks
408 |--------------------------------------------------------------------------
409 */
410 \SureCart::route()
411 ->get()
412 ->where( 'sc_url_var', 'create_webhook', 'action' )
413 ->name( 'webhook.create' )
414 ->middleware( 'nonce:create_webhook' )
415 ->middleware( 'user.can:edit_sc_webhooks' )
416 ->handle( '\\SureCart\\Controllers\\Web\\WebhookController@create' );
417 \SureCart::route()
418 ->get()
419 ->where( 'sc_url_var', 'update_webhook', 'action' )
420 ->name( 'webhook.update' )
421 ->middleware( 'nonce:update_webhook' )
422 ->middleware( 'user.can:edit_sc_webhooks' )
423 ->handle( '\\SureCart\\Controllers\\Web\\WebhookController@update' );
424 \SureCart::route()
425 ->get()
426 ->where( 'sc_url_var', 'resync_webhook', 'action' )
427 ->name( 'webhook.resync' )
428 ->middleware( 'nonce:resync_webhook' )
429 ->middleware( 'user.can:edit_sc_webhooks' )
430 ->handle( '\\SureCart\\Controllers\\Web\\WebhookController@resync' );
431