PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.2.0
GiveWP – Donation Plugin and Fundraising Platform v2.2.0
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 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 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.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / includes / admin / settings / class-settings-license.php
give / includes / admin / settings Last commit date
class-settings-addon.php 8 years ago class-settings-advanced.php 7 years ago class-settings-cmb2-backward-compatibility.php 8 years ago class-settings-display.php 7 years ago class-settings-email.php 7 years ago class-settings-gateways.php 8 years ago class-settings-general.php 7 years ago class-settings-license.php 8 years ago
class-settings-license.php
117 lines
1 <?php
2 /**
3 * Give Settings Page/Tab
4 *
5 * @package Give
6 * @subpackage Classes/Give_Settings_License
7 * @copyright Copyright (c) 2016, WordImpress
8 * @license http://opensource.org/licenses/gpl-2.0.php GNU Public License
9 * @since 1.8
10 */
11
12 if ( ! defined( 'ABSPATH' ) ) {
13 exit; // Exit if accessed directly.
14 }
15
16 if ( ! class_exists( 'Give_Settings_License' ) ) :
17
18 /**
19 * Give_Settings_License.
20 *
21 * @sine 1.8
22 */
23 class Give_Settings_License extends Give_Settings_Page {
24
25 /**
26 * Constructor.
27 */
28 public function __construct() {
29 $this->id = 'licenses';
30 $this->label = esc_html__( 'Licenses', 'give' );
31
32 parent::__construct();
33
34 // Filter to remove the license tab.
35 add_filter( 'give-settings_tabs_array', array( $this, 'remove_license_tab' ), 9999999, 1 );
36
37 }
38
39 /**
40 * Get settings array.
41 *
42 * @since 1.8
43 * @return array
44 */
45 public function get_settings() {
46 $settings = array();
47
48 /**
49 * Filter the licenses settings.
50 * Backward compatibility: Please do not use this filter. This filter is deprecated in 1.8
51 */
52 $settings = apply_filters( 'give_settings_licenses', $settings );
53
54 /**
55 * Filter the settings.
56 *
57 * @since 1.8
58 *
59 * @param array $settings
60 */
61 $settings = apply_filters( 'give_get_settings_' . $this->id, $settings );
62
63 // Output.
64 return $settings;
65 }
66
67 /**
68 * Remove the license tab if no Give addon
69 * is activated.
70 *
71 * @param array $tabs Give Settings Tabs.
72 *
73 * @since 2.1.4
74 *
75 * @return array
76 */
77 public function remove_license_tab( $tabs ) {
78 /**
79 * Remove the license tab if no Give licensed addon
80 * is activated.
81 */
82 if ( ! $this->is_show_setting_page() ) {
83 unset( $tabs['licenses'] );
84 }
85
86 return $tabs;
87 }
88
89 /**
90 * Returns if at least one Give addon is activated.
91 * Note: note only for internal logic
92 *
93 * @since 2.1.4
94 * @access private
95 *
96 * @return bool
97 */
98 private function is_show_setting_page() {
99 $licensed_addons = Give_License::get_licensed_addons();
100 $activated_plugins = get_option( 'active_plugins', array() );
101
102 // Get list of network enabled plugin.
103 if ( is_multisite() ) {
104 $sitewide_activated_plugins = array_keys( get_site_option( 'active_sitewide_plugins', array() ) );
105 $activated_plugins = ! empty( $activated_plugins )
106 ? array_merge( $sitewide_activated_plugins, $activated_plugins )
107 : $sitewide_activated_plugins;
108 }
109
110 return (bool) count( array_intersect( $activated_plugins, $licensed_addons ) );
111 }
112 }
113
114 endif;
115
116 return new Give_Settings_License();
117