PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 4.5.0
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v4.5.0
4.5.1 4.5.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 3 days ago ajax.php 3 years ago web.php 4 months ago
admin.php
595 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 ->middleware( 'assets.brand_colors' )
45 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Onboarding\\' )
46 ->handle( 'OnboardingController@show' );
47
48 /*
49 |--------------------------------------------------------------------------
50 | Dashboard
51 |--------------------------------------------------------------------------
52 */
53 \SureCart::route()
54 ->get()
55 ->where( 'admin', 'sc-dashboard' )
56 ->middleware( 'user.can:manage_sc_shop_settings' )
57 ->middleware( 'assets.components' )
58 ->middleware( 'assets.brand_colors' )
59 ->name( 'dashboard.show' )
60 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Dashboard\\' )
61 ->handle( 'DashboardController@index' );
62
63 /*
64 |--------------------------------------------------------------------------
65 | Learn
66 |--------------------------------------------------------------------------
67 */
68 \SureCart::route()
69 ->get()
70 ->where( 'admin', 'sc-learn' )
71 ->middleware( 'user.can:manage_options' )
72 ->middleware( 'assets.components' )
73 ->middleware( 'assets.brand_colors' )
74 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Learn\\' )
75 ->handle( 'LearnController@index' );
76
77
78 /*
79 |--------------------------------------------------------------------------
80 | Complete Signup
81 |--------------------------------------------------------------------------
82 */
83 \SureCart::route()
84 ->get()
85 ->where( 'admin', 'sc-complete-signup' )
86 ->middleware( 'user.can:manage_options' )
87 ->middleware( 'assets.components' )
88 ->middleware( 'assets.brand_colors' )
89 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Onboarding\\' )
90 ->group(
91 function () {
92 \SureCart::route()->get()->handle( 'OnboardingController@complete' );
93 \SureCart::route()->post()->middleware( 'nonce:update_plugin_settings' )->handle( 'OnboardingController@save' );
94 }
95 );
96
97
98 /*
99 |--------------------------------------------------------------------------
100 | Orders
101 |--------------------------------------------------------------------------
102 */
103 \SureCart::route()
104 ->where( 'admin', 'sc-orders' )
105 ->middleware( 'user.can:edit_sc_orders' )
106 ->middleware( 'assets.components' )
107 ->middleware( 'assets.admin_colors' )
108 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Orders\\' )
109 ->group(
110 function () {
111 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'OrdersViewController@index' );
112 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'OrdersViewController@edit' );
113 \SureCart::route()->get()->where( 'sc_url_var', 'archive', 'action' )->handle( 'OrdersViewController@archive' );
114 }
115 );
116
117 /*
118 |--------------------------------------------------------------------------
119 | Invoices
120 |--------------------------------------------------------------------------
121 */
122 \SureCart::route()
123 ->where( 'admin', 'sc-invoices' )
124 ->middleware( 'user.can:edit_sc_invoices' )
125 ->middleware( 'assets.components' )
126 ->middleware( 'assets.admin_colors' )
127 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Invoices\\' )
128 ->group(
129 function () {
130 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'InvoicesViewController@index' );
131 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'InvoicesViewController@edit' );
132 \SureCart::route()->get()->where( 'sc_url_var', 'create', 'action' )->middleware( 'nonce:create_invoices' )->handle( 'InvoicesViewController@create' );
133 }
134 );
135
136 /*
137 |--------------------------------------------------------------------------
138 | Checkouts
139 |--------------------------------------------------------------------------
140 */
141 \SureCart::route()
142 ->where( 'admin', 'sc-checkouts' )
143 ->middleware( 'user.can:edit_sc_orders' )
144 ->middleware( 'assets.components' )
145 ->middleware( 'assets.admin_colors' )
146 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Checkouts\\' )
147 ->group(
148 function () {
149 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'CheckoutsController@edit' );
150 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'CheckoutsController@edit' );
151 }
152 );
153
154 /*
155 |--------------------------------------------------------------------------
156 | Products
157 |--------------------------------------------------------------------------
158 */
159 \SureCart::route()
160 ->where( 'admin', 'sc-products' )
161 ->middleware( 'user.can:edit_sc_products' )
162 ->middleware( 'assets.components' )
163 ->middleware( 'assets.admin_colors' )
164 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Products\\' )
165 ->group(
166 function () {
167 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'ProductsController@index' );
168 \SureCart::route()->get()->where( 'sc_url_var', 'delete', 'action' )->handle( 'ProductsController@confirmBulkDelete' );
169 \SureCart::route()->post()->middleware( 'nonce:bulk_delete_nonce' )->handle( 'ProductsController@bulkDelete' );
170 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'ProductsController@edit' );
171 \SureCart::route()->get()->where( 'sc_url_var', 'duplicate', 'action' )->middleware( 'nonce:duplicate_product' )->handle( 'ProductsController@duplicate' );
172 \SureCart::route()->get()->where( 'sc_url_var', 'toggle_archive', 'action' )->middleware( 'archive_model:product' )->handle( 'ProductsController@toggleArchive' );
173 \SureCart::route()->get()->where( 'sc_url_var', 'sync_all', 'action' )->middleware( 'nonce:sync_products' )->handle( 'ProductsController@syncAll' );
174 // Nonce-protected: this page deletes options on view, so nonce prevents CSRF.
175 \SureCart::route()->get()->where( 'sc_url_var', 'import_results', 'action' )->middleware( 'nonce:sc_import_results' )->handle( 'ProductsController@importResults' );
176 \SureCart::route()->get()->where( 'sc_url_var', 'sync', 'action' )->middleware( 'nonce:sync_product' )->handle( 'ProductsController@sync' );
177 }
178 );
179
180 /*
181 |--------------------------------------------------------------------------
182 | Coupons
183 |--------------------------------------------------------------------------
184 */
185 \SureCart::route()
186 ->where( 'admin', 'sc-coupons' )
187 ->middleware( 'user.can:edit_sc_coupons' )
188 ->middleware( 'assets.components' )
189 ->middleware( 'assets.admin_colors' )
190 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Coupons\\' )
191 ->group(
192 function () {
193 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'CouponsController@index' );
194 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'CouponsController@edit' );
195 }
196 );
197
198 /*
199 |--------------------------------------------------------------------------
200 | Customers
201 |--------------------------------------------------------------------------
202 */
203 \SureCart::route()
204 ->where( 'admin', 'sc-customers' )
205 ->middleware( 'user.can:edit_sc_customers' )
206 ->middleware( 'assets.components' )
207 ->middleware( 'assets.admin_colors' )
208 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Customers\\' )
209 ->group(
210 function () {
211 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'CustomersController@index' );
212 \SureCart::route()->get()->where( 'sc_url_var', 'delete', 'action' )->handle( 'CustomersController@confirmBulkDelete' );
213 \SureCart::route()->post()->middleware( 'nonce:bulk_delete_nonce' )->handle( 'CustomersController@bulkDelete' );
214 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'CustomersController@edit' );
215 }
216 );
217
218 /*
219 |--------------------------------------------------------------------------
220 | Licenses
221 |--------------------------------------------------------------------------
222 */
223 \SureCart::route()
224 ->where( 'admin', 'sc-licenses' )
225 ->middleware( 'user.can:edit_sc_products' )
226 ->middleware( 'assets.components' )
227 ->middleware( 'assets.admin_colors' )
228 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Licenses\\' )
229 ->group(
230 function () {
231 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'LicensesController@index' );
232 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'LicensesController@edit' );
233 }
234 );
235
236 /*
237 |--------------------------------------------------------------------------
238 | Abandoned Checkouts
239 |--------------------------------------------------------------------------
240 */
241 \SureCart::route()
242 ->where( 'admin', 'sc-abandoned-checkouts' )
243 ->middleware( 'user.can:edit_sc_orders' )
244 ->middleware( 'assets.components' )
245 ->middleware( 'assets.admin_colors' )
246 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Abandoned\\' )
247 ->group(
248 function () {
249 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'AbandonedCheckoutViewController@index' );
250 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'AbandonedCheckoutViewController@edit' );
251 }
252 );
253
254 /*
255 |--------------------------------------------------------------------------
256 | Subscriptions
257 |--------------------------------------------------------------------------
258 */
259 \SureCart::route()
260 ->where( 'admin', 'sc-subscriptions' )
261 ->middleware( 'user.can:edit_sc_subscriptions' )
262 ->middleware( 'assets.components' )
263 ->middleware( 'assets.admin_colors' )
264 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Subscriptions\\' )
265 ->group(
266 function () {
267 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'SubscriptionsController@index' );
268 \SureCart::route()->get()->where( 'sc_url_var', 'show', 'action' )->handle( 'SubscriptionsController@show' );
269 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'SubscriptionsController@edit' );
270 }
271 );
272
273 /*
274 |--------------------------------------------------------------------------
275 | Cancellation Insights
276 |--------------------------------------------------------------------------
277 */
278 \SureCart::route()
279 ->where( 'admin', 'sc-cancellation-insights' )
280 ->middleware( 'user.can:edit_sc_subscriptions' )
281 ->middleware( 'assets.components' )
282 ->middleware( 'assets.admin_colors' )
283 ->setNamespace( '\\SureCart\\Controllers\\Admin\\CancellationInsights\\' )
284 ->group(
285 function () {
286 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'CancellationInsightsController@index' );
287 \SureCart::route()->get()->where( 'sc_url_var', 'show', 'action' )->handle( 'CancellationInsightsController@show' );
288 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'CancellationInsightsController@edit' );
289 }
290 );
291
292
293 \SureCart::route()
294 ->where( 'admin', 'cart' )
295 ->middleware( 'user.can:manage_options' )
296 ->middleware( 'assets.components' )
297 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Cart\\' )
298 ->group(
299 function () {
300 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'CartController@edit' );
301 \SureCart::route()->get()->where( 'sc_url_var', 'show', 'action' )->handle( 'CartController@edit' );
302 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'CartController@edit' );
303 }
304 );
305
306 /*
307 |--------------------------------------------------------------------------
308 | Upgrade Paths
309 |--------------------------------------------------------------------------
310 */
311 \SureCart::route()
312 ->where( 'admin', 'sc-product-groups' )
313 ->middleware( 'user.can:edit_sc_products' )
314 ->middleware( 'assets.components' )
315 ->middleware( 'assets.admin_colors' )
316 ->setNamespace( '\\SureCart\\Controllers\\Admin\\ProductGroups\\' )
317 ->group(
318 function () {
319 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'ProductGroupsController@index' );
320 \SureCart::route()->get()->where( 'sc_url_var', 'show', 'action' )->handle( 'ProductGroupsController@edit' );
321 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'ProductGroupsController@edit' );
322 }
323 );
324
325 /*
326 |--------------------------------------------------------------------------
327 | Product Collections
328 |--------------------------------------------------------------------------
329 */
330 \SureCart::route()
331 ->where( 'admin', 'sc-product-collections' )
332 ->middleware( 'user.can:edit_sc_products' )
333 ->middleware( 'assets.components' )
334 ->middleware( 'assets.admin_colors' )
335 ->setNamespace( '\\SureCart\\Controllers\\Admin\\ProductCollections\\' )
336 ->group(
337 function () {
338 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'ProductCollectionsController@index' );
339 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'ProductCollectionsController@edit' );
340 }
341 );
342
343 /*
344 |--------------------------------------------------------------------------
345 | Upgrade Paths
346 |--------------------------------------------------------------------------
347 */
348 \SureCart::route()
349 ->where( 'admin', 'sc-bumps' )
350 ->middleware( 'user.can:edit_sc_products' )
351 ->middleware( 'assets.components' )
352 ->middleware( 'assets.admin_colors' )
353 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Bumps\\' )
354 ->group(
355 function () {
356 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'BumpsController@index' );
357 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'BumpsController@edit' );
358 }
359 );
360
361
362 /*
363 |--------------------------------------------------------------------------
364 | Upsell Paths
365 |--------------------------------------------------------------------------
366 */
367 \SureCart::route()
368 ->where( 'admin', 'sc-upsell-funnels' )
369 ->middleware( 'user.can:edit_sc_products' )
370 ->middleware( 'assets.components' )
371 ->middleware( 'assets.admin_colors' )
372 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Upsells\\' )
373 ->group(
374 function () {
375 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'UpsellsController@index' );
376 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'UpsellsController@edit' );
377 \SureCart::route()->get()->where( 'sc_url_var', 'toggle_enabled', 'action' )->middleware( 'archive_model:product' )->handle( 'UpsellsController@toggleEnabled' );
378 }
379 );
380
381 /*
382 |--------------------------------------------------------------------------
383 | Product Reviews
384 |--------------------------------------------------------------------------
385 */
386 \SureCart::route()
387 ->where( 'admin', 'sc-reviews' )
388 ->middleware( 'user.can:edit_sc_reviews' )
389 ->middleware( 'assets.components' )
390 ->middleware( 'assets.admin_colors' )
391 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Reviews\\' )
392 ->group(
393 function () {
394 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'ReviewsController@index' );
395 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'ReviewsController@edit' );
396 \SureCart::route()->get()->where( 'sc_url_var', 'publish', 'action' )->middleware( 'nonce:publish_review' )->handle( 'ReviewsController@publish' );
397 \SureCart::route()->get()->where( 'sc_url_var', 'unpublish', 'action' )->middleware( 'nonce:unpublish_review' )->handle( 'ReviewsController@unpublish' );
398 \SureCart::route()->get()->where( 'sc_url_var', 'delete', 'action' )->middleware( 'nonce:delete_review' )->handle( 'ReviewsController@delete' );
399 }
400 );
401
402 /*
403 |--------------------------------------------------------------------------
404 | Affiliations
405 |--------------------------------------------------------------------------
406 */
407 \SureCart::route()
408 ->where( 'admin', 'sc-affiliates' )
409 ->middleware( 'user.can:edit_sc_affiliates' )
410 ->middleware( 'assets.components' )
411 ->middleware( 'assets.admin_colors' )
412 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Affiliations\\' )
413 ->group(
414 function () {
415 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'AffiliationsController@index' );
416 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'AffiliationsController@edit' );
417 \SureCart::route()->get()->where( 'sc_url_var', 'activate', 'action' )->middleware( 'nonce:activate_affiliation' )->handle( 'AffiliationsController@activate' );
418 \SureCart::route()->get()->where( 'sc_url_var', 'deactivate', 'action' )->middleware( 'nonce:deactivate_affiliation' )->handle( 'AffiliationsController@deactivate' );
419 }
420 );
421
422 \SureCart::route()
423 ->where( 'admin', 'sc-affiliate-requests' )
424 ->middleware( 'user.can:edit_sc_affiliates' )
425 ->middleware( 'assets.components' )
426 ->middleware( 'assets.admin_colors' )
427 ->setNamespace( '\\SureCart\\Controllers\\Admin\\AffiliationRequests\\' )
428 ->group(
429 function () {
430 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'AffiliationRequestsController@index' );
431 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'AffiliationRequestsController@edit' );
432 }
433 );
434
435 \SureCart::route()
436 ->where( 'admin', 'sc-affiliate-clicks' )
437 ->middleware( 'user.can:edit_sc_affiliates' )
438 ->middleware( 'assets.components' )
439 ->middleware( 'assets.admin_colors' )
440 ->setNamespace( '\\SureCart\\Controllers\\Admin\\AffiliationClicks\\' )
441 ->group(
442 function () {
443 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'AffiliationClicksController@index' );
444 }
445 );
446
447 \SureCart::route()
448 ->where( 'admin', 'sc-affiliate-referrals' )
449 ->middleware( 'user.can:edit_sc_affiliates' )
450 ->middleware( 'assets.components' )
451 ->middleware( 'assets.admin_colors' )
452 ->setNamespace( '\\SureCart\\Controllers\\Admin\\AffiliationReferrals\\' )
453 ->group(
454 function () {
455 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'AffiliationReferralsController@index' );
456 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'AffiliationReferralsController@edit' );
457 \SureCart::route()->get()->where( 'sc_url_var', 'delete', 'action' )->middleware( 'nonce:delete_affiliation' )->handle( 'AffiliationReferralsController@delete' );
458 \SureCart::route()->get()->where( 'sc_url_var', 'approve', 'action' )->middleware( 'nonce:approve_affiliation' )->handle( 'AffiliationReferralsController@approve' );
459 \SureCart::route()->get()->where( 'sc_url_var', 'deny', 'action' )->middleware( 'nonce:deny_affiliation' )->handle( 'AffiliationReferralsController@deny' );
460 \SureCart::route()->get()->where( 'sc_url_var', 'make_reviewing', 'action' )->middleware( 'nonce:make_reviewing_affiliation' )->handle( 'AffiliationReferralsController@makeReviewing' );
461 }
462 );
463
464 \SureCart::route()
465 ->where( 'admin', 'sc-affiliate-payouts' )
466 ->middleware( 'user.can:edit_sc_affiliates' )
467 ->middleware( 'assets.components' )
468 ->middleware( 'assets.admin_colors' )
469 ->setNamespace( '\\SureCart\\Controllers\\Admin\\AffiliationPayouts\\' )
470 ->group(
471 function () {
472 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'AffiliationPayoutsController@index' );
473 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'AffiliationPayoutsController@edit' );
474 \SureCart::route()->get()->where( 'sc_url_var', 'export', 'action' )->handle( 'AffiliationPayoutsController@export' );
475 \SureCart::route()->get()->where( 'sc_url_var', 'delete', 'action' )->middleware( 'nonce:delete_affiliation_payout' )->handle( 'AffiliationPayoutsController@delete' );
476 \SureCart::route()->get()->where( 'sc_url_var', 'complete', 'action' )->middleware( 'nonce:complete_affiliation_payout' )->handle( 'AffiliationPayoutsController@complete' );
477 \SureCart::route()->get()->where( 'sc_url_var', 'make_processing', 'action' )->middleware( 'nonce:make_processing_affiliation_payout' )->handle( 'AffiliationPayoutsController@makeProcessing' );
478 }
479 );
480
481 \SureCart::route()
482 ->where( 'admin', 'sc-affiliate-payout-groups' )
483 ->middleware( 'user.can:edit_sc_affiliates' )
484 ->middleware( 'assets.components' )
485 ->middleware( 'assets.admin_colors' )
486 ->setNamespace( '\\SureCart\\Controllers\\Admin\\AffiliationPayoutGroups\\' )
487 ->group(
488 function () {
489 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'AffiliationPayoutGroupsController@edit' );
490 }
491 );
492
493 /*
494 |--------------------------------------------------------------------------
495 | Dynamic Pricing
496 |--------------------------------------------------------------------------
497 */
498 \SureCart::route()
499 ->where( 'admin', 'sc-auto-fees' )
500 ->middleware( 'user.can:edit_sc_products' )
501 ->middleware( 'assets.components' )
502 ->middleware( 'assets.admin_colors' )
503 ->setNamespace( '\\SureCart\\Controllers\\Admin\\AutoFees\\' )
504 ->group(
505 function () {
506 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'AutoFeesController@index' );
507 \SureCart::route()->get()->where( 'sc_url_var', 'edit', 'action' )->handle( 'AutoFeesController@edit' );
508 \SureCart::route()->get()->where( 'sc_url_var', 'toggle_active', 'action' )->middleware( 'nonce:archive_dynamic_price' )->handle( 'AutoFeesController@toggleActive' );
509 \SureCart::route()->get()->where( 'sc_url_var', 'delete', 'action' )->middleware( 'nonce:delete_auto_fee' )->handle( 'AutoFeesController@delete' );
510 }
511 );
512
513 /*
514 |--------------------------------------------------------------------------
515 | Settings
516 |--------------------------------------------------------------------------
517 */
518 \SureCart::route()
519 ->get()
520 ->where( 'admin', 'sc-settings' )
521 ->middleware( 'user.can:manage_sc_account_settings' )
522 ->middleware( 'assets.components' )
523 ->middleware( 'assets.brand_colors' )
524 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Settings\\' )
525 ->group(
526 function () {
527 // All GET requests render the settings page, the actual tab is determined client-side.
528 \SureCart::route()->get()->name( 'settings' )->handle( 'Settings@show' );
529
530 // POST routes still need server-side handling.
531 \SureCart::route()->post()->where( 'sc_url_var', 'clear', 'cache' )->middleware( 'nonce:update_plugin_settings' )->handle( 'CacheSettings@clear' );
532 }
533 );
534
535 /*
536 |--------------------------------------------------------------------------
537 | Connection
538 |--------------------------------------------------------------------------
539 */
540 \SureCart::route()
541 ->get()
542 ->where( 'admin', 'sc-plugin' )
543 ->middleware( 'user.can:manage_options' )
544 ->middleware( 'assets.components' )
545 ->group(
546 function () {
547 \SureCart::route()->get()->name( 'plugin.show' )->handle( 'PluginSettings@show' );
548 \SureCart::route()->post()->middleware( 'nonce:update_plugin_settings' )->handle( 'PluginSettings@save' );
549 }
550 );
551
552 /*
553 |--------------------------------------------------------------------------
554 | Webhooks
555 |--------------------------------------------------------------------------
556 */
557 \SureCart::route()
558 ->get()
559 ->where( 'sc_url_var', 'create_webhook', 'action' )
560 ->name( 'webhook.create' )
561 ->middleware( 'nonce:create_webhook' )
562 ->middleware( 'user.can:edit_sc_webhooks' )
563 ->handle( '\\SureCart\\Controllers\\Web\\WebhookController@create' );
564 \SureCart::route()
565 ->get()
566 ->where( 'sc_url_var', 'update_webhook', 'action' )
567 ->name( 'webhook.update' )
568 ->middleware( 'nonce:update_webhook' )
569 ->middleware( 'user.can:edit_sc_webhooks' )
570 ->handle( '\\SureCart\\Controllers\\Web\\WebhookController@update' );
571 \SureCart::route()
572 ->get()
573 ->where( 'sc_url_var', 'resync_webhook', 'action' )
574 ->name( 'webhook.resync' )
575 ->middleware( 'nonce:resync_webhook' )
576 ->middleware( 'user.can:edit_sc_webhooks' )
577 ->handle( '\\SureCart\\Controllers\\Web\\WebhookController@resync' );
578
579 /*
580 |--------------------------------------------------------------------------
581 | Restore
582 |--------------------------------------------------------------------------
583 */
584 \SureCart::route()
585 ->where( 'admin', 'sc-restore' )
586 ->middleware( 'user.can:manage_options' )
587 ->middleware( 'assets.components' )
588 ->setNamespace( '\\SureCart\\Controllers\\Admin\\Restore\\' )
589 ->group(
590 function () {
591 \SureCart::route()->get()->where( 'sc_url_var', false, 'action' )->handle( 'RestoreController@index' );
592 \SureCart::route()->post()->middleware( 'nonce:restore_missing_page' )->handle( 'RestoreController@restore' );
593 }
594 );
595