From 7b6969fa3abec3cd70962d195e9531ed60a70acc Mon Sep 17 00:00:00 2001 From: Chuck Scott Date: Thu, 28 Apr 2016 13:22:32 -0400 Subject: [PATCH] Encueue scripts only when needed, Contacts now importing --- controllers/admin.php | 35 ++++----- controllers/front.php | 21 ++---- css/admin.css | 9 ++- setup/adminMenus.php | 74 +++++++++---------- .../create_database_V1.1.4.sql | 2 +- 5 files changed, 64 insertions(+), 77 deletions(-) diff --git a/controllers/admin.php b/controllers/admin.php index fd8fb2d8..11695394 100644 --- a/controllers/admin.php +++ b/controllers/admin.php @@ -159,14 +159,6 @@ class glmMembersAdmin extends GlmPluginSupport ) ); - // Add admin scripts and css - add_action('admin_enqueue_scripts', - array( - $this, - 'glmMembersAdminScripts' - ) - ); - // Add dashboard widget add_action( 'wp_dashboard_setup', array( @@ -377,12 +369,12 @@ class glmMembersAdmin extends GlmPluginSupport { // jQuery scripts - wp_enqueue_script('jquery'); - wp_enqueue_script('jquery-style'); - wp_enqueue_script('jquery-ui-core'); - wp_enqueue_script('jquery-ui-widget'); - wp_enqueue_script('jquery-ui-dialog'); - wp_enqueue_script('jquery-ui-autocomplete'); + wp_enqueue_script('jquery', false, array(), false, true); + wp_enqueue_script('jquery-style', false, array(), false, true); + wp_enqueue_script('jquery-ui-core', false, array(), false, true); + wp_enqueue_script('jquery-ui-widget', false, array(), false, true); + wp_enqueue_script('jquery-ui-dialog', false, array(), false, true); + wp_enqueue_script('jquery-ui-autocomplete', false, array(), false, true); // Jquery DatePicker wp_enqueue_script('jquery-ui-datepicker'); @@ -402,7 +394,7 @@ class glmMembersAdmin extends GlmPluginSupport false, GLM_MEMBERS_PLUGIN_VERSION ); - wp_enqueue_script($jsName); + wp_enqueue_script($jsName, false, array('jquery'), false, true); } } @@ -431,7 +423,7 @@ class glmMembersAdmin extends GlmPluginSupport ), GLM_MEMBERS_PLUGIN_VERSION ); - wp_enqueue_script('glm-members-admin-image-upload'); + wp_enqueue_script('glm-members-admin-image-upload', false, array('jquery'), false, true); wp_register_style( 'glm-members-admin-image-upload-css', GLM_MEMBERS_PLUGIN_URL . 'js/imageUpload/imageUpload.css', @@ -458,7 +450,7 @@ class glmMembersAdmin extends GlmPluginSupport ), GLM_MEMBERS_PLUGIN_VERSION ); - wp_enqueue_script('glm-members-admin-jquery-select'); + wp_enqueue_script('glm-members-admin-jquery-select', false, array('jquery'), false, true); // Register and enqueue DateTimePicker wp_register_script( @@ -469,7 +461,7 @@ class glmMembersAdmin extends GlmPluginSupport ), GLM_MEMBERS_PLUGIN_VERSION ); - wp_enqueue_script('glm-members-admin-datetimepicker'); + wp_enqueue_script('glm-members-admin-datetimepicker', false, array('jquery'), false, true); wp_register_style( 'glm-members-admin-datetimepicker-css', GLM_MEMBERS_PLUGIN_URL . 'js/datetimepicker/jquery.datetimepicker.css', @@ -487,7 +479,7 @@ class glmMembersAdmin extends GlmPluginSupport ), GLM_MEMBERS_PLUGIN_VERSION ); - wp_enqueue_script('glm-members-admin-fullcalendar-moment'); + wp_enqueue_script('glm-members-admin-fullcalendar-moment', false, array('jquery'), false, true); wp_register_script( 'glm-members-admin-fullcalendar', GLM_MEMBERS_PLUGIN_URL . 'js/fullcalendar/fullcalendar.min.js', @@ -505,7 +497,7 @@ class glmMembersAdmin extends GlmPluginSupport ), GLM_MEMBERS_PLUGIN_VERSION ); - wp_enqueue_script('glm-members-admin-fullcalendar-langall'); + wp_enqueue_script('glm-members-admin-fullcalendar-langall', false, array('jquery'), false, true); wp_register_style( 'glm-members-admin-fullcalendar-css', GLM_MEMBERS_PLUGIN_URL . 'js/fullcalendar/fullcalendar.min.css', @@ -627,6 +619,9 @@ class glmMembersAdmin extends GlmPluginSupport public function controller ($menuItem, $action = false) { + // Enque admin scripts and css here so that only happens when we're doing something + $this->glmMembersAdminScripts(); + $errorMsg = ''; // Get the current theme directory to check for modified views diff --git a/controllers/front.php b/controllers/front.php index b4814395..804ca716 100644 --- a/controllers/front.php +++ b/controllers/front.php @@ -51,14 +51,6 @@ class glmMembersFront extends GlmPluginSupport die('Database check failure'); } - // Add front-end scripts and css - add_action('wp_enqueue_scripts', - array( - $this, - 'glmMembersFrontScripts' - ) - ); - // Now add any shortcodes from the config 'shortcodes' table while (list($key, $val) = each($this->config['shortcodes'])) { @@ -108,10 +100,10 @@ class glmMembersFront extends GlmPluginSupport public function glmMembersFrontScripts () { - wp_enqueue_script('jquery'); - wp_enqueue_script('jquery-style'); - wp_enqueue_script('jquery-ui-core'); - wp_enqueue_script('jquery-ui-dialog'); + wp_enqueue_script('jquery', false, array(), false, true); + wp_enqueue_script('jquery-style', false, array(), false, true); + wp_enqueue_script('jquery-ui-core', false, array(), false, true); + wp_enqueue_script('jquery-ui-dialog', false, array(), false, true); wp_enqueue_style('wp-jquery-ui-dialog'); // Register any front.js files in the js directory of any glm members plugin @@ -125,7 +117,7 @@ class glmMembersFront extends GlmPluginSupport false, GLM_MEMBERS_PLUGIN_VERSION ); - wp_enqueue_script($jsName); + wp_enqueue_script($jsName, false, array('jquery'), false, true); } } @@ -206,6 +198,9 @@ class glmMembersFront extends GlmPluginSupport public function controller ($atts, $content = null, $shortcode) { + // Enque all needed scripts and css here so that only happens when we're doing something + $this->glmMembersFrontScripts(); + // Get the current theme directory to check for modified views $theme = get_template_directory(); diff --git a/css/admin.css b/css/admin.css index 5c3d988b..55837589 100644 --- a/css/admin.css +++ b/css/admin.css @@ -111,13 +111,18 @@ width: 95%; margin-bottom: 5px; } -.glm-admin-table th { +.glm-admin-table-narrow { + width: 10%; + margin-bottom: 5px; +} +.glm-admin-table th, +.glm-admin-table-narrow th { text-align: left; vertical-align: top; white-space: nowrap; padding-right: 1em; padding-bottom: .4em; - width: 1%; /* used to keep header fields on a line with td's to as narrow as they can be without breaking the text */ + width: 1%; /* used to keep header fields on a line with td's to be as narrow as they can be without breaking the text */ } .glm-admin-table td { text-align: left; diff --git a/setup/adminMenus.php b/setup/adminMenus.php index 4385537b..88bbf1fd 100644 --- a/setup/adminMenus.php +++ b/setup/adminMenus.php @@ -31,7 +31,7 @@ */ // If user can manage all members, then show "Members" menu item -if (apply_filters('glm_members_menu_members', true)) { +if (current_user_can('glm_members_members')) { $mainMenuSlug = 'glm-members-admin-menu-members'; @@ -66,16 +66,14 @@ if (apply_filters('glm_members_menu_members', true)) { ); // Add a submenu for the "Member" section - if (apply_filters('glm_members_menu_member', true)) { - add_submenu_page( - $mainMenuSlug, - $this->config['terms']['term_admin_menu_member'].' Dashboard', - $this->config['terms']['term_admin_menu_member'], - 'glm_members_member', - 'glm-members-admin-menu-member', - function() {$this->controller('member');} - ); - } + add_submenu_page( + $mainMenuSlug, + $this->config['terms']['term_admin_menu_member'].' Dashboard', + $this->config['terms']['term_admin_menu_member'], + 'glm_members_member', + 'glm-members-admin-menu-member', + function() {$this->controller('member');} + ); // Otherwise just display "Member" menu item } else { @@ -95,37 +93,31 @@ if (apply_filters('glm_members_menu_members', true)) { } // Add a submenu for the "Settings" section -if (apply_filters('glm_members_menu_settings', true)) { - add_submenu_page( - 'glm-members-admin-menu-members', - 'Settings', - 'Settings', - 'glm_members_settings', - 'glm-members-admin-menu-settings', - function() {$this->controller('settings');} - ); -} +add_submenu_page( + 'glm-members-admin-menu-members', + 'Settings', + 'Settings', + 'glm_members_settings', + 'glm-members-admin-menu-settings', + function() {$this->controller('settings');} +); // Add a submenu for the "Management" section -if (apply_filters('glm_members_menu_meanagement', true)) { - add_submenu_page( - 'glm-members-admin-menu-members', - 'Member DB Management', - 'Management', - 'glm_members_management', - 'glm-members-admin-menu-management', - function() {$this->controller('management');} - ); -} +add_submenu_page( + 'glm-members-admin-menu-members', + 'Member DB Management', + 'Management', + 'glm_members_management', + 'glm-members-admin-menu-management', + function() {$this->controller('management');} +); // Add a submenu for the "Shortcode Reference" section -if (apply_filters('glm_members_menu_shortcodes', true)) { - add_submenu_page( - 'glm-members-admin-menu-members', - 'Shortcode Reference', - 'Shortcodes', - 'glm_members_shortcodes', - 'glm-members-admin-menu-shortcodes', - function() {$this->controller('shortcodes');} - ); -} +add_submenu_page( + 'glm-members-admin-menu-members', + 'Shortcode Reference', + 'Shortcodes', + 'glm_members_shortcodes', + 'glm-members-admin-menu-shortcodes', + function() {$this->controller('shortcodes');} +); diff --git a/setup/databaseScripts/create_database_V1.1.4.sql b/setup/databaseScripts/create_database_V1.1.4.sql index e3f61fae..bd24525d 100644 --- a/setup/databaseScripts/create_database_V1.1.4.sql +++ b/setup/databaseScripts/create_database_V1.1.4.sql @@ -198,7 +198,7 @@ CREATE TABLE {prefix}regions ( -- Items in this table should be all self-explanatory CREATE TABLE {prefix}settings_general ( id INT NOT NULL AUTO_INCREMENT, - admin_debug BOOLEAN DEFAULT '1', + admin_debug BOOLEAN DEFAULT '0', admin_debug_verbose BOOLEAN DEFAULT '0', front_debug BOOLEAN DEFAULT '0', front_debug_verbose BOOLEAN DEFAULT '0', -- 2.17.1