PluginProbe
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 3.4.1
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v3.4.1
4.7.2 4.7.1 4.7.0 4.6.6 4.6.5 4.6.4 4.6.3 4.6.2 4.6.1 4.6.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 All 281 releases
surecart / app / src / Middleware / EditModelMiddleware.php
EditModelMiddleware.php
34 lines 880 B
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace SureCart\Middleware;
4
5 use Closure;
6 use SureCartCore\Requests\RequestInterface;
7 use SureCartCore\Responses\RedirectResponse;
8
9 /**
10 * Middleware for handling model archiving.
11 */
12 class EditModelMiddleware {
13 /**
14 * Handle the middleware.
15 *
16 * @param RequestInterface $request Request.
17 * @param Closure $next Next.
18 * @param string $model_name Model name.
19 * @return function
20 */
21 public function handle( RequestInterface $request, Closure $next, $model_name ) {
22 // check nonce.
23 if ( ! $request->query( 'nonce' ) || ! wp_verify_nonce( $request->query( 'nonce' ), "edit_$model_name" ) ) {
24 wp_die( __( 'Your session expired - please try again.', 'surecart' ) );
25 }
26
27 if ( ! current_user_can( "edit_sc_{$model_name}s" ) ) {
28 wp_die( __( 'You do not have permission do this.', 'surecart' ) );
29 }
30
31 return $next( $request );
32 }
33 }
34