PluginProbe
UpdraftCentral Dashboard / 0.7.0
UpdraftCentral Dashboard v0.7.0
0.8.33 0.7.2 0.7.3 0.7.4 0.8.0 0.8.1 0.8.10 0.8.11 0.8.12 0.8.13 0.8.14 0.8.15 0.8.16 0.8.17 0.8.18 0.8.19 0.8.2 0.8.20 0.8.21 0.8.22 0.8.23 0.8.24 0.8.25 0.8.26 0.8.27 All 51 releases
updraftcentral / modules / updraftplus / loader.php

loader.php in UpdraftCentral Dashboard 0.7.0, at modules/updraftplus/loader.php

115 lines 4.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 if (!defined('UD_CENTRAL_DIR')) die('Security check');
4
5 class UpdraftCentral_Module_UpdraftPlus {
6 const MODULE_NAME = 'updraftplus';
7
8 public function __construct() {
9 add_action('updraftcentral_load_dashboard_js', array($this, 'load_dashboard_js'));
10 add_action('updraftcentral_load_dashboard_css', array($this, 'load_dashboard_css'));
11 add_filter('updraftcentral_udrclion', array($this, 'udrclion'));
12 add_action('updraftcentral_dashboard_post_navigation', array($this, 'dashboard_post_navigation'));
13 add_filter('updraftcentral_main_navigation_items', array($this, 'main_navigation_items'));
14 add_action('updraftcentral_site_row_after_buttons', array($this, 'site_row_after_buttons'));
15 add_filter('updraftcentral_template_directories', array($this, 'template_directories'));
16
17 // Add available shortcuts for this module
18 add_filter('updraftcentral_keyboard_shortcuts', array($this, 'keyboard_shortcuts'));
19 }
20
21 /**
22 * Adds keyboard shortcut(s) available for this module
23 *
24 * @param array $shortcuts UpdraftCentral keyboard shortcuts
25 * @return array Updated UpdraftCentral keyboard shortcuts
26 */
27 public function keyboard_shortcuts($shortcuts) {
28
29 /* Backup */
30 $shortcuts['backup_site'] = array(
31 'key' => 'B',
32 'description' => __('Backup site', 'updraftcentral'),
33 'action' => 'updraftcentral_site_backup_now', // ID or class name or a jQuery selector or a callback function (only applicable when registered from javascript). Element to trigger to load the content.
34 'menu' => 'backups', // Name of the navigation item or menu, since MODULE_NAME name isn't the same with the navigation item name we can't use that.
35 'popup' => true // Indicates whether this action generates a popup window. Will clear the extracontents container before showing the popup to avoid confusion when displaying content to the user.
36 );
37
38 /* Existing Backups */
39 $shortcuts['existing_backups'] = array(
40 'key' => 'E',
41 'description' => __('Existing backups', 'updraftcentral'),
42 'action' => 'updraftcentral_site_backups_manage',
43 'menu' => 'backups'
44 );
45
46 /* Settings */
47 $shortcuts['backup_settings'] = array(
48 'key' => 'Z',
49 'description' => __('Backup settings', 'updraftcentral'),
50 'action' => 'updraftcentral_site_backup_settings',
51 'menu' => 'backups'
52 );
53
54 /* Site Configuration and Sites section */
55 $shortcuts['site_configuration'] = array(
56 'key' => 'X',
57 'description' => __('Site configuration', 'updraftcentral'),
58 'action' => 'div.updraft_site_actions span.updraftcentral_site_editdescription > span',
59 'menu' => '' /* If empty, defaults to "Sites" section. Since site configuration runs across all sections/tabs with the same content to load. */
60 );
61
62 $shortcuts['sites'] = array(
63 'key' => 'S',
64 'description' => __('Go back to Sites', 'updraftcentral'),
65 'action' => '',
66 'menu' => 'sites'
67 );
68
69 return $shortcuts;
70 }
71
72 public function template_directories($template_directories) {
73 $template_directories[self::MODULE_NAME] = __DIR__.'/templates';
74
75 return $template_directories;
76 }
77
78 public function site_row_after_buttons() {
79 UpdraftCentral()->include_template(self::MODULE_NAME.'/site-row-buttons.php');
80 }
81
82 public function load_dashboard_css($enqueue_version) {
83 wp_enqueue_style('jquery-labelauty', UD_CENTRAL_URL.'/modules/'.self::MODULE_NAME.'/jquery-labelauty.css', array(), '20160622-ud');
84 wp_enqueue_style('updraftcentral-dashboard-css-'.self::MODULE_NAME, UD_CENTRAL_URL.'/modules/'.self::MODULE_NAME.'/'.self::MODULE_NAME.'.css', array('updraftcentral-dashboard-css'), $enqueue_version);
85 }
86
87 public function load_dashboard_js($enqueue_version) {
88 $min_or_not = (defined('SCRIPT_DEBUG') && SCRIPT_DEBUG) ? '' : '.min';
89
90 // Code on top of the framework for doing actual work
91 wp_register_script('jquery-labelauty', UD_CENTRAL_URL.'/modules/'.self::MODULE_NAME.'/jquery-labelauty.js', array('jquery'), '20150925');
92
93 wp_enqueue_script('updraftcentral-dashboard-activities-'.self::MODULE_NAME, UD_CENTRAL_URL.'/modules/'.self::MODULE_NAME.'/'.self::MODULE_NAME.$min_or_not.'.js', array('updraftcentral-dashboard', 'jquery-labelauty'), $enqueue_version);
94 }
95
96 public function main_navigation_items($items) {
97 $items['backups'] = array('label' => __('Backups', 'updraftcentral'), 'sort_order' => 20);
98
99 return $items;
100 }
101
102 public function udrclion($localize) {
103 $localize['updraftplus'] = include __DIR__.'/translations-dashboard.php';
104
105 return $localize;
106 }
107
108 public function dashboard_post_navigation() {
109 global $updraft_central;
110 $updraft_central->include_template(self::MODULE_NAME.'/management-actions.php');
111 }
112 }
113
114 $updraftcentral_module_updraftplus = new UpdraftCentral_Module_UpdraftPlus();
115