EDU_KlarnaCheckout_Loader   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 22
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 9
c 1
b 0
f 0
dl 0
loc 22
rs 10
wmc 5

3 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 2 1
A add_integration() 0 4 1
A init() 0 10 3
1
<?php
2
defined( 'ABSPATH' ) || die( 'This plugin must be run within the scope of WordPress.' );
3
4
/*
5
 * Plugin Name: EduAdmin Booking - Klarna Checkout-plugin
6
 * Plugin URI:  https://www.eduadmin.se
7
 * Description: Plugin to EduAdmin Booking to enable Klarna Checkout-integration
8
 * Version:     1.4.0
9
 * GitHub Plugin Uri: https://github.com/MultinetInteractive/eduadmin-wp-klarna-checkout
10
 * Requires at least: 4.7
11
 * Tested up to: 5.3
12
 * Author: Chris Gårdenberg, MultiNet Interactive AB
13
 * Author URI: https://www.multinet.com
14
 * License: GPL3
15
 * Text Domain: eduadmin-wp-klarna-checkout
16
 */
17
/*
18
	EduAdmin Booking plugin
19
	Copyright (C) 2015-2018 Chris Gårdenberg, MultiNet Interactive AB
20
	This program is free software: you can redistribute it and/or modify
21
	it under the terms of the GNU General Public License as published by
22
	the Free Software Foundation, either version 3 of the License, or
23
	(at your option) any later version.
24
	This program is distributed in the hope that it will be useful,
25
	but WITHOUT ANY WARRANTY; without even the implied warranty of
26
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
27
	GNU General Public License for more details.
28
	You should have received a copy of the GNU General Public License
29
	along with this program. If not, see <http://www.gnu.org/licenses/>.
30
 */
31
32
add_action( 'admin_init', function () {
33
	if ( is_admin() && current_user_can( 'activate_plugins' ) && ( ! is_plugin_active( 'eduadmin-booking/eduadmin.php' ) && ! is_plugin_active( 'eduadmin/eduadmin.php' ) ) ) {
34
		add_action( 'admin_notices', function () {
35
			?>
36
            <div class="error">
37
                <p><?php esc_html_e( 'This plugin requires the EduAdmin-WordPress-plugin to be installed and activated.', 'eduadmin-wp-klarna-checkout' ); ?></p>
38
            </div>
39
			<?php
40
		} );
41
		deactivate_plugins( plugin_basename( __FILE__ ) );
42
		if ( isset( $_GET['activate'] ) ) {
43
			unset( $_GET['activate'] );
44
		}
45
	}
46
} );
47
48
if ( ! class_exists( 'EDU_KlarnaCheckout_Loader' ) ) {
49
	final class EDU_KlarnaCheckout_Loader {
50
		public function __construct() {
51
			add_action( 'plugins_loaded', array( $this, 'init' ) );
52
		}
53
54
		public function init() {
55
			if ( ! class_exists( 'Klarna_Checkout_Connector' ) ) {
56
				require_once __DIR__ . '/klarna_kco_php_4.0.0/src/Klarna/Checkout.php';
57
			}
58
59
			if ( class_exists( 'EDU_Integration' ) ) {
60
61
				require_once __DIR__ . '/class-edu-klarnacheckout.php';
62
63
				add_filter( 'edu_integrations', array( $this, 'add_integration' ) );
64
			}
65
		}
66
67
		public function add_integration( $integrations ) {
68
			$integrations[] = 'EDU_KlarnaCheckout';
69
70
			return $integrations;
71
		}
72
	}
73
74
	$edu_klarnacheckout_loader = new EDU_KlarnaCheckout_Loader();
75
}
76