PluginProbe
GiveWP – Donation Plugin and Fundraising Platform / 4.16.9
GiveWP – Donation Plugin and Fundraising Platform v4.16.9
4.16.9 4.16.8.1 4.16.8 4.16.7.2 4.16.7.1 4.16.7 4.16.6.1 4.16.6 4.16.5.1 4.16.5 4.16.4 4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 All 255 releases
give / src / Promotions / InPluginUpsells / AddonsAdminPage.php

AddonsAdminPage.php in GiveWP – Donation Plugin and Fundraising Platform 4.16.9, at src/Promotions/InPluginUpsells/AddonsAdminPage.php

76 lines 2.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Give\Promotions\InPluginUpsells;
4
5 use Give\Helpers\EnqueueScript;
6 use Give\Framework\Permissions\Facades\UserPermissions;
7
8 /**
9 *
10 * @since 2.17.0
11 */
12 class AddonsAdminPage
13 {
14 protected $containerId = 'give-in-plugin-upsells';
15
16 /**
17 * @since 4.14.0 update permission capability to use facade
18 * @since 2.17.0
19 * Register menu item
20 */
21 public function register()
22 {
23 add_submenu_page(
24 'edit.php?post_type=give_forms',
25 esc_html__('GiveWP Add-ons', 'give'),
26 esc_html__('Add-ons', 'give'),
27 UserPermissions::settings()->manageCap(),
28 'give-add-ons',
29 [$this, 'render']
30 );
31 }
32
33 /**
34 * Load scripts
35 */
36 public function loadScripts()
37 {
38 $data = array_merge(
39 (new AddonsRepository())->getAddons(),
40 [
41 'assetsUrl' => GIVE_PLUGIN_URL . 'build/assets/dist/',
42 'containerId' => $this->containerId,
43 'siteUrl' => site_url(),
44 'siteName' => get_bloginfo('name'),
45 ]
46 );
47
48 EnqueueScript::make('give-in-plugin-upsells-addons', 'build/assets/dist/js/admin-upsell-addons-page.js')
49 ->loadInFooter()
50 ->registerTranslations()
51 ->registerLocalizeData('GiveAddons', $data)
52 ->enqueue();
53
54 wp_enqueue_style('givewp-admin-fonts');
55 }
56
57 /**
58 * Render admin page
59 */
60 public function render()
61 {
62 echo '<svg style="display: none"><path id="give-in-plugin-upsells-checkmark" d="M5.595 11.373.72 6.498a.75.75 0 0 1 0-1.06l1.06-1.061a.75.75 0 0 1 1.061 0L6.125 7.66 13.159.627a.75.75 0 0 1 1.06 0l1.061 1.06a.75.75 0 0 1 0 1.061l-8.625 8.625a.75.75 0 0 1-1.06 0Z" fill="currentColor"/></svg>';
63 echo "<div id=\"{$this->containerId}\"></div>";
64 }
65
66 /**
67 * Helper function to determine if current page is Give Add-ons admin page
68 *
69 * @return bool
70 */
71 public static function isShowing()
72 {
73 return isset($_GET['page']) && $_GET['page'] === 'give-add-ons';
74 }
75 }
76