From 95a7fbb9c70acd8dc24af2dd5526f66cbe634255 Mon Sep 17 00:00:00 2001 From: Brian Miyaji Date: Wed, 26 Mar 2014 11:51:07 +1100 Subject: [PATCH] Enqueue admin scripts and styles in class --- assets/css/admin.css | 112 ---------------------- includes/admin/class-sp-admin-assets.php | 115 +++++++++++++++++++++++ includes/admin/class-sp-admin.php | 4 +- includes/admin/sp-admin-functions.php | 51 ++++++++++ 4 files changed, 168 insertions(+), 114 deletions(-) create mode 100644 includes/admin/class-sp-admin-assets.php create mode 100644 includes/admin/sp-admin-functions.php diff --git a/assets/css/admin.css b/assets/css/admin.css index cb1d6fe1..5a701a27 100644 --- a/assets/css/admin.css +++ b/assets/css/admin.css @@ -53,16 +53,6 @@ content: "\f328"; } -#adminmenu #toplevel_page_sportspress .menu-icon-generic div.wp-menu-image:before, -#adminmenu #menu-posts-sp_event .menu-icon-sp_event div.wp-menu-image:before, -#adminmenu #menu-posts-sp_team .menu-icon-sp_team div.wp-menu-image:before, -#adminmenu #menu-posts-sp_player .menu-icon-sp_player div.wp-menu-image:before, -#sp_formatdiv #post-formats-select .post-format-icon:before { - font-family: sportspress, dashicons !important; - width: 20px; - text-align: center; -} - .post-state-format.post-format-calendar:before, .post-format-icon.post-format-calendar:before, a.post-state-format.format-calendar:before { content: "\f145"; } @@ -128,108 +118,6 @@ color: #888; } -#sportspress_dashboard_status .inside { - padding: 0; - margin: 0; -} - -#sportspress_dashboard_status .sp_status_list { - overflow: hidden; - margin: 0; -} - -#sportspress_dashboard_status .sp_status_list li { - width: 50%; - float: left; - padding: 0; - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; - margin: 0; - border-top: 1px solid #ececec; - color: #aaa; -} - -#sportspress_dashboard_status .sp_status_list li:first-child { - border-top: 0; -} - -#sportspress_dashboard_status .sp_status_list li.countdown { - width: 100%; -} - -#sportspress_dashboard_status .sp_status_list li.events-scheduled { - border-right: 1px solid #ececec; -} - -#sportspress_dashboard_status .sp_status_list li a { - display: block; - color: #aaa; - padding: 9px 12px; - -webkit-transition: all ease .5s; - position: relative; - font-size: 12px; -} - -#sportspress_dashboard_status .sp_status_list li a:before { - font-family: sportspress, dashicons; - speak: none; - font-weight: 400; - font-variant: normal; - text-transform: none; - -webkit-font-smoothing: antialiased; - margin: 0; - text-indent: 0; - top: 0; - left: 0; - height: 100%; - text-align: center; - content: "\f145"; - font-size: 2em; - position: relative; - width: auto; - line-height: 1.2em; - color: #464646; - float: left; - margin-right: 12px; - margin-bottom: 12px; -} - -#sportspress_dashboard_status .sp_status_list li.countdown a:before { - content: "\f469"; -} - -#sportspress_dashboard_status .sp_status_list li.events-scheduled a:before, -#sportspress_dashboard_status .sp_status_list li.events-published a:before { - color: #999; - font-size: 2.5em; - line-height: 1em; - margin-left: -3px; - margin-right: 9px; -} - -#sportspress_dashboard_status .sp_status_list li.events-scheduled a:before { - color: #ffba00; -} - -#sportspress_dashboard_status .sp_status_list li.events-published a:before { - color: #21759b; -} - -#sportspress_dashboard_status .sp_status_list li strong { - font-size: 18px; - line-height: 1.2em; - font-weight: 400; - display: block; - color: #21759b; -} - -#sportspress_dashboard_status .sp_status_list li a:hover, -#sportspress_dashboard_status .sp_status_list li a:hover strong, -#sportspress_dashboard_status .sp_status_list li a:hover:before { - color: #2ea2cc; -} - .sportspress-message { border-left-color: #6bc2a5 !important; } diff --git a/includes/admin/class-sp-admin-assets.php b/includes/admin/class-sp-admin-assets.php new file mode 100644 index 00000000..f2ec9739 --- /dev/null +++ b/includes/admin/class-sp-admin-assets.php @@ -0,0 +1,115 @@ +plugin_url() . '/assets/css/menu.css', array(), SP_VERSION ); + + $screen = get_current_screen(); + + if ( in_array( $screen->id, sp_get_screen_ids() ) ) { + + // Admin styles for SP pages only + wp_enqueue_style( 'sportspress-admin', SP()->plugin_url() . 'assets/css/admin.css', array(), SP_VERSION ); + wp_enqueue_style( 'jquery-chosen', SP()->plugin_url() . 'assets/css/chosen.css', array(), '1.1.0' ); + wp_enqueue_style( 'wp-color-picker' ); + } + + if ( in_array( $screen->id, array( 'dashboard' ) ) ) { + wp_enqueue_style( 'sportspress-admin-dashboard-styles', SP()->plugin_url() . '/assets/css/dashboard.css', array(), SP_VERSION ); + } + + do_action( 'sportspress_admin_css' ); + } + + /** + * Enqueue scripts + */ + public function admin_scripts() { + global $wp_query, $post; + + $screen = get_current_screen(); + + // Register scripts + wp_register_script( 'jquery-chosen', SP()->plugin_url() .'assets/js/chosen.jquery.min.js', array( 'jquery' ), '1.1.0', true ); + + wp_register_script( 'jquery-tiptip', SP()->plugin_url() .'assets/js/jquery.tipTip.min.js', array( 'jquery' ), '1.3', true ); + + wp_register_script( 'jquery-caret', SP()->plugin_url() .'assets/js/jquery.caret.min.js', array( 'jquery' ), '1.02', true ); + + wp_register_script( 'jquery-countdown', SP()->plugin_url() .'assets/js/jquery.countdown.min.js', array( 'jquery' ), '2.0.2', true ); + + wp_register_script( 'google-maps', 'http://maps.googleapis.com/maps/api/js?sensor=false&libraries=places' ); + + wp_register_script( 'jquery-locationpicker', SP()->plugin_url() .'assets/js/locationpicker.jquery.js', array( 'jquery', 'google-maps' ), '0.1.6', true ); + + wp_register_script( 'sportspress-admin-locationpicker', SP()->plugin_url() .'assets/js/admin-locationpicker.js', array( 'jquery', 'google-maps', 'jquery-locationpicker' ), SP_VERSION, true ); + + wp_register_script( 'sportspress-admin', SP()->plugin_url() .'assets/js/admin.js', array( 'jquery', 'jquery-chosen', 'jquery-tiptip', 'jquery-caret', 'jquery-countdown' ), SP_VERSION, true ); + + // SportsPress admin pages + if ( in_array( $screen->id, sp_get_screen_ids() ) ) { + + wp_enqueue_script( 'jquery' ); + wp_enqueue_script( 'jquery-chosen' ); + wp_enqueue_script( 'jquery-tiptip' ); + wp_enqueue_script( 'jquery-caret' ); + wp_enqueue_script( 'jquery-countdown' ); + wp_enqueue_script( 'sportspress-admin' ); + + $params = array( + 'none' => __( 'None', 'sportspress' ), + 'remove_text' => __( '— Remove —', 'sportspress' ), + 'days' => __( 'days', 'sportspress' ), + 'hrs' => __( 'hrs', 'sportspress' ), + 'mins' => __( 'mins', 'sportspress' ), + 'secs' => __( 'secs', 'sportspress' ) + ); + + // Localize scripts + wp_localize_script( 'sportspress-admin', 'localized_strings', $params ); + } + + // Edit venue pages + if ( in_array( $screen->id, array( 'edit-sp_venue' ) ) ) { + + wp_enqueue_script( 'google-maps' ); + wp_enqueue_script( 'jquery-locationpicker' ); + wp_enqueue_script( 'sportspress-admin-locationpicker' ); + + } + } +} + +endif; + +return new SP_Admin_Assets(); diff --git a/includes/admin/class-sp-admin.php b/includes/admin/class-sp-admin.php index df3e70ab..54db69b9 100644 --- a/includes/admin/class-sp-admin.php +++ b/includes/admin/class-sp-admin.php @@ -30,7 +30,7 @@ class SP_Admin { */ public function includes() { // Functions -// include_once( 'sp-admin-functions.php' ); + include_once( 'sp-admin-functions.php' ); // include_once( 'sp-meta-box-functions.php' ); // Classes @@ -42,7 +42,7 @@ class SP_Admin { // include( 'class-sp-admin-menus.php' ); // include( 'class-sp-admin-welcome.php' ); // include( 'class-sp-admin-notices.php' ); -// include( 'class-sp-admin-assets.php' ); + include( 'class-sp-admin-assets.php' ); // include( 'class-sp-admin-permalink-settings.php' ); // include( 'class-sp-admin-editor.php' ); diff --git a/includes/admin/sp-admin-functions.php b/includes/admin/sp-admin-functions.php new file mode 100644 index 00000000..063f122b --- /dev/null +++ b/includes/admin/sp-admin-functions.php @@ -0,0 +1,51 @@ +