PluginProbe
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 4.3.2
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v4.3.2
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 / Controllers / Admin / PluginSettings.php
PluginSettings.php
50 lines 1.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace SureCart\Controllers\Admin;
4
5 use SureCart\Models\ApiToken;
6
7 /**
8 * Handles the plugin settings page.
9 */
10 class PluginSettings {
11 /**
12 * Show the page.
13 *
14 * @param \SureCartCore\Requests\RequestInterface $request Request.
15 * @return function
16 */
17 public function show( \SureCartCore\Requests\RequestInterface $request ) {
18 return \SureCart::view( 'admin/plugin' )->with(
19 [
20 'api_token' => ApiToken::get(),
21 'uninstall' => get_option( 'sc_uninstall', false ),
22 'use_esm_loader' => get_option( 'surecart_use_esm_loader', false ),
23 'status' => $request->query( 'status' ),
24 ]
25 );
26 }
27
28 /**
29 * Save the page.
30 *
31 * @param \SureCartCore\Requests\RequestInterface $request Request.
32 * @return function
33 */
34 public function save( \SureCartCore\Requests\RequestInterface $request ) {
35 $url = $request->getHeaderLine( 'Referer' );
36 $api_token = $request->body( 'api_token' );
37
38 // update uninstall option.
39 update_option( 'sc_uninstall', $request->body( 'uninstall' ) === 'on' );
40
41 // update uninstall option.
42 update_option( 'surecart_use_esm_loader', $request->body( 'use_esm_loader' ) === 'on' );
43
44 // save token.
45 ApiToken::save( $api_token );
46
47 return \SureCart::redirect()->to( esc_url_raw( add_query_arg( 'status', 'saved', $url ) ) );
48 }
49 }
50