Completed
Push — add/backups-plugin-demo ( 2deb37...ae9c88 )
by
unknown
110:01 queued 100:43
created

Jetpack_Backups   A

Complexity

Total Complexity 6

Size/Duplication

Total Lines 63
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Importance

Changes 0
Metric Value
dl 0
loc 63
rs 10
c 0
b 0
f 0
wmc 6
lcom 0
cbo 0

5 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 3 1
A admin_init() 0 11 2
A enqueue_admin_scripts() 0 10 1
A admin_menu() 0 11 1
A plugin_settings_page() 0 7 1
1
<?php
2
/**
3
 * Primary class file for the Jetpack Backups plugin.
4
 *
5
 * @package automattic/jetpack-backups
6
 */
7
8
use Automattic\Jetpack\ConnectionUI as ConnectionUI;
9
10
if ( ! defined( 'ABSPATH' ) ) {
11
	exit;
12
}
13
14
/**
15
 * Class Jetpack_Backups
16
 */
17
class Jetpack_Backups {
18
	/**
19
	 * Constructor.
20
	 */
21
	public function __construct() {
22
		self::admin_init();
23
	}
24
25
	/**
26
	 * Initialize the admin resources.
27
	 */
28
	private function admin_init() {
29
		if ( ! is_admin() ) {
30
			return;
31
		}
32
33
		// Todo: Figure out how to load in the ConnectionUI()
34
		// new ConnectionUI();
35
36
		add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_scripts' ) );
37
		add_action( 'admin_menu', array( $this, 'admin_menu' ) );
38
	}
39
40
	/**
41
	 * Enqueue plugin admin scripts.
42
	 */
43
	public function enqueue_admin_scripts() {
44
		wp_register_script(
45
			'jetpack-backups-main-js',
46
			plugins_url( 'src/js/index.js', JETPACK_BACKUPS_PLUGIN_ROOT_FILE ),
47
			array(),
48
			'1.0.0',
49
			true
50
		);
51
		wp_enqueue_script( 'jetpack-backups-main-js' );
52
	}
53
54
	/**
55
	 * Plugin admin menu setup.
56
	 */
57
	public function admin_menu() {
58
		add_menu_page(
59
			'Jetpack Backups',
60
			'Backups',
61
			'manage_options',
62
			'jetpack-backups-menu',
63
			array( $this, 'plugin_settings_page' ),
64
			'dashicons-superhero',
65
			99
66
		);
67
	}
68
69
	/**
70
	 * Main plugin settings page.
71
	 */
72
	public function plugin_settings_page() {
73
		?>
74
			<div>
75
				<h1>Backups Plugin</h1>
76
			</div>
77
		<?php
78
	}
79
}
80