Changeset 3294256
- Timestamp:
- 05/15/2025 03:02:10 PM (7 months ago)
- Location:
- notibar/trunk
- Files:
-
- 1 added
- 8 edited
-
assets/admin/js/admin-customizer-control.js (modified) (1 diff)
-
assets/frontend/css/notibar.css (modified) (8 diffs)
-
assets/frontend/js/notibar.js (modified) (3 diffs)
-
includes/NotiHelper.php (added)
-
includes/NotificationBar/NotificationBarHandle.php (modified) (6 diffs)
-
includes/NotificationBar/WpCustomNotification.php (modified) (7 diffs)
-
njt-notification-bar.php (modified) (3 diffs)
-
readme.txt (modified) (1 diff)
-
views/pages/home/home-notification-bar.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
notibar/trunk/assets/admin/js/admin-customizer-control.js
r2944944 r3294256 1008 1008 }) 1009 1009 }); 1010 1011 jQuery("#_customize-input-njt_nofi_hide_close_button_control").on('change',function(e){ 1012 if(jQuery(this).val() == 'close_button' || jQuery(this).val() == 'toggle_button'){ 1013 jQuery("#customize-control-njt_nofi_open_after_day_control").css({ 1014 'display': 'block', 1015 }) 1016 } else { 1017 jQuery("#customize-control-njt_nofi_open_after_day_control").css({ 1018 'display': 'none', 1019 }) 1020 } 1021 }) 1010 1022 } 1011 1023 -
notibar/trunk/assets/frontend/css/notibar.css
r2944944 r3294256 1 .njt-nofi-container {1 .njt-nofi-container { 2 2 z-index: 999; 3 3 width: 100%; … … 14 14 text-align: center; 15 15 margin: auto; 16 padding: 10px 50px 16 padding: 10px 50px; 17 17 } 18 18 … … 33 33 } 34 34 35 .njt-nofi-button-text.njt-nofi-padding-text {35 .njt-nofi-button-text.njt-nofi-padding-text { 36 36 padding: 8px 12px; 37 37 } 38 38 39 .njt-nofi-notification-bar .njt-nofi-button {40 transition: transform .5s;39 .njt-nofi-notification-bar .njt-nofi-button { 40 transition: transform 0.5s; 41 41 min-width: fit-content; 42 42 } … … 53 53 align-items: center; 54 54 } 55 .njt-nofi-notification-bar .njt-nofi-hide span{55 .njt-nofi-notification-bar .njt-nofi-hide span { 56 56 display: flex; 57 57 align-items: center; … … 59 59 60 60 .njt-nofi-notification-bar .njt-nofi-hide .njt-nofi-close-icon { 61 width: 100%; 62 height: 100%; 63 padding: 7px; 64 } 65 66 .njt-nofi-close-icon-container { 61 67 width: 25px; 62 68 height: 25px; 63 69 border-radius: 50px; 64 padding: 7px;65 70 background: #0000002e; 66 transition: transform .5s; 71 transition: transform 0.5s; 72 display: flex; 73 align-items: center; 67 74 } 68 75 69 .njt-nofi-notification-bar .njt-nofi-hide .njt-nofi-close-icon :hover {76 .njt-nofi-notification-bar .njt-nofi-hide .njt-nofi-close-icon-container:hover { 70 77 -ms-transform: scale(1.1); /* IE 9 */ 71 78 -webkit-transform: scale(1.1); /* Safari 3-8 */ 72 transform: scale(1.1); 79 transform: scale(1.1); 73 80 } 74 81 .njt-nofi-display-toggle { … … 82 89 83 90 .njt-nofi-display-toggle .njt-nofi-display-toggle-icon { 84 -webkit-transform: rotate(45deg) translate3d(0,0,0); 85 transform: rotate(45deg) translate3d(0,0,0); 86 width: 25px; 87 height: 25px; 88 border-radius: 50px; 91 -webkit-transform: rotate(45deg) translate3d(0, 0, 0); 92 transform: rotate(45deg) translate3d(0, 0, 0); 93 width: 100%; 94 height: 100%; 89 95 padding: 7px; 90 background: #b7c5c98a;91 transition: transform .5s;92 96 } 93 97 94 98 .njt-nofi-display-toggle .njt-nofi-display-toggle-icon:hover { 95 -ms-transform: scale(1.2) rotate(45deg) translate3d(0, 0,0); /* IE 9 */96 -webkit-transform: scale(1.2) rotate(45deg) translate3d(0, 0,0); /* Safari 3-8 */97 transform: scale(1.2) rotate(45deg) translate3d(0, 0,0);99 -ms-transform: scale(1.2) rotate(45deg) translate3d(0, 0, 0); /* IE 9 */ 100 -webkit-transform: scale(1.2) rotate(45deg) translate3d(0, 0, 0); /* Safari 3-8 */ 101 transform: scale(1.2) rotate(45deg) translate3d(0, 0, 0); 98 102 } 99 103 100 .customize-partial-edit-shortcuts-shown .njt-nofi-container .customize-partial-edit-shortcut-button { 104 .customize-partial-edit-shortcuts-shown 105 .njt-nofi-container 106 .customize-partial-edit-shortcut-button { 101 107 left: 5px; 102 108 top: 10px; 103 109 } 104 110 105 .customize-partial-edit-shortcuts-shown .njt-nofi-container .customize-partial-edit-shortcut { 111 .customize-partial-edit-shortcuts-shown 112 .njt-nofi-container 113 .customize-partial-edit-shortcut { 106 114 position: inherit; 107 115 } … … 109 117 .njt-nofi-container .customize-partial-refreshing { 110 118 opacity: 1; 111 transition: opacity .25s;119 transition: opacity 0.25s; 112 120 cursor: progress; 113 121 } … … 130 138 } 131 139 132 @media only screen and (max-width: 480px) {140 @media only screen and (max-width: 480px) { 133 141 .njt-nofi-align-content { 134 142 flex-wrap: wrap; 135 136 143 } 137 144 .njt-nofi-notification-bar .njt-nofi-content { 138 145 padding: 10px 20px; 139 146 } 140 147 141 148 .njt-nofi-notification-bar .njt-nofi-hide { 142 149 right: 5px; -
notibar/trunk/assets/frontend/js/notibar.js
r3246799 r3294256 39 39 }) 40 40 } 41 jQuery('.njt-nofi-container').remove();42 41 } 43 42 … … 61 60 if (jQuery(".njt-nofi-container").css('position') == 'fixed') { 62 61 jQuery('.njt-nofi-container').animate({ top: a + "px" }, 1000, function() { 63 jQuery('.njt-nofi-container .njt-nofi-notification-bar').hide();62 jQuery('.njt-nofi-container-content').remove(); 64 63 }) 65 64 } 66 65 if (jQuery(".njt-nofi-container").css('position') == 'absolute') { 67 66 jQuery('.njt-nofi-container').animate({ top: -barHeight + "px" }, 1000, function() { 68 jQuery('.njt-nofi-container .njt-nofi-notification-bar').hide();67 jQuery('.njt-nofi-container-content').remove(); 69 68 }) 70 69 } 71 70 //set cookie 72 homeNotificationBar.setCookie('njt-close-notibar', 'true', 1)71 homeNotificationBar.setCookie('njt-close-notibar', 'true', njt_wp_data.open_after_day.value) 73 72 74 73 //Custom js for theme … … 215 214 216 215 //Set Cookie toggle close 217 homeNotificationBar.setCookie('njt-toggle-close-notibar', 'true', 1)216 homeNotificationBar.setCookie('njt-toggle-close-notibar', 'true', njt_wp_data.open_after_day.value) 218 217 }) 219 218 -
notibar/trunk/includes/NotificationBar/NotificationBarHandle.php
r3246799 r3294256 7 7 use NjtNotificationBar\NotificationBar\WpMobileDetect; 8 8 use NjtNotificationBar\NotificationBar\WpPosts; 9 use NjtNotificationBar\NotiHelper; 9 10 10 11 class NotificationBarHandle … … 75 76 $isdevicesDisplay = $this->njt_nofi_devicesDisplay(); 76 77 77 if($this->njt_nofi_checkDisplayNotification() && $isdevicesDisplay ) {78 if($this->njt_nofi_checkDisplayNotification() && $isdevicesDisplay && !NotiHelper::is_hide_notibar_with_cookie()) { 78 79 wp_register_style('njt-nofi', NJT_NOFI_PLUGIN_URL . 'assets/frontend/css/notibar.css', array(), NJT_NOFI_VERSION); 79 80 wp_enqueue_style('njt-nofi'); … … 95 96 'is_customize_preview' => is_customize_preview(), 96 97 'wp_get_theme' => wp_get_theme()->get( 'Name' ), 98 'open_after_day' => [ 99 'value' => get_theme_mod('njt_nofi_open_after_day', $this->valueDefault['open_after_day']), 100 'is_new_update' => get_option('njt_nofi_open_after_day') != get_theme_mod('njt_nofi_open_after_day', $this->valueDefault['open_after_day']) ? true : false, 101 ], 97 102 )); 98 103 } … … 219 224 $logicDisplayPost = get_theme_mod('njt_nofi_logic_display_post', $this->valueDefault['logic_display_post']); 220 225 $listDisplayPost = explode(',',get_theme_mod('njt_nofi_list_display_post')); 221 $currentPageOrPostID = $wp_query->get_queried_object_id(); 226 227 if(function_exists( 'is_shop' ) && is_shop()) { 228 $currentPageOrPostID = wc_get_page_id( 'shop' ); 229 } else { 230 $currentPageOrPostID = $wp_query->get_queried_object_id(); 231 } 222 232 223 233 if ($logicDisplayPage == 'dis_selected_page' ) { 224 if(in_array('home_page', $listDisplayPost) && is_home() || in_array('home_page', $listDisplayP ost) && is_front_page()) return true;234 if(in_array('home_page', $listDisplayPost) && is_home() || in_array('home_page', $listDisplayPage) && is_front_page()) return true; 225 235 } 226 236 227 237 if ($logicDisplayPage == 'hide_selected_page' ) { 228 if(in_array('home_page', $listDisplayPost) && is_home() || in_array('home_page', $listDisplayP ost) && is_front_page()) return false;238 if(in_array('home_page', $listDisplayPost) && is_home() || in_array('home_page', $listDisplayPage) && is_front_page()) return false; 229 239 } 230 240 … … 286 296 if($isDisplayNotification && $isEnableNotification && $isdevicesDisplay && !is_customize_preview()) { 287 297 add_action( 'wp_footer', array( $this, 'display_notification' ),10); 298 add_action( 'wp_footer', array( $this, 'njt_nofi_rederInput' ),10); 288 299 } 289 add_action( 'wp_footer', array( $this, 'njt_nofi_rederInput' ),10);290 300 } 291 301 292 302 public function display_notification() 293 303 { 304 if (NotiHelper::is_hide_notibar_with_cookie()) { 305 return; 306 } 294 307 295 308 if(wp_get_theme()->get( 'Name' ) == 'Nayma') { … … 344 357 345 358 public function njt_nofi_rederInput() { 359 346 360 global $wp_query; 347 361 $dataDisplay = array( -
notibar/trunk/includes/NotificationBar/WpCustomNotification.php
r3288308 r3294256 58 58 'font_weight_display' => '400', 59 59 'logic_display_page' => 'dis_all_page', 60 'logic_display_post' => 'dis_all_post' 60 'logic_display_post' => 'dis_all_post', 61 'open_after_day' => 1 61 62 )) ; 62 63 … … 70 71 71 72 add_action('customize_register', array( $this, 'njt_nofi_customizeNotification'), 10); 72 if( is_admin() ){ 73 add_action('admin_enqueue_scripts', array($this, 'addScriptsCustomizer')); 74 } 73 add_action('customize_controls_enqueue_scripts', array($this, 'addScriptsCustomizer')); 75 74 add_action('wp_enqueue_scripts', array( $this, 'njt_nofi_enqueueCustomizeControls')); 76 75 add_action('customize_save_after', array( $this, 'njt_nofi_customize_save_after')); … … 118 117 } 119 118 public function addScriptsCustomizer(){ 120 if(is_customize_preview()){121 119 wp_register_script('njt-nofi-cus-control-select2', NJT_NOFI_PLUGIN_URL . 'assets/admin/js/select2.min.js', array('jquery'), NJT_NOFI_VERSION, true); 122 120 wp_enqueue_script('njt-nofi-cus-control-select2'); … … 135 133 'list_pages_selected' => WpPosts::get_list_pages_posts_selected(get_theme_mod('njt_nofi_list_display_page')), 136 134 )); 137 }138 135 } 139 136 … … 144 141 update_option('njt_nofi_lb_text_wpml_translate', get_theme_mod('njt_nofi_lb_text', $this->valueDefault['lb_text'])); 145 142 update_option('njt_nofi_lb_text_mobile_wpml_translate', get_theme_mod('njt_nofi_lb_text_mobile', $this->valueDefault['lb_text_mobile'])); 146 update_option('njt_nofi_lb_url_wpml_translate', get_theme_mod( 'njt_nofi_lb_url', $this->valueDefault['lb_url'])); 147 update_option('njt_nofi_lb_url_mobile_wpml_translate', get_theme_mod( 'njt_nofi_lb_url_mobile', $this->valueDefault['lb_url_mobile'])); 143 update_option('njt_nofi_lb_url_wpml_translate', get_theme_mod( 'njt_nofi_lb_url', $this->valueDefault['lb_url'])); 144 update_option('njt_nofi_lb_url_mobile_wpml_translate', get_theme_mod( 'njt_nofi_lb_url_mobile', $this->valueDefault['lb_url_mobile'])); 145 146 $open_after_day = get_theme_mod('njt_nofi_open_after_day', $this->valueDefault['open_after_day']); 147 $option_open_after_day = +get_option('njt_nofi_open_after_day'); 148 149 if($open_after_day != $option_open_after_day) { 150 update_option('njt_nofi_open_after_day', $open_after_day); 151 152 $cookie_close_notibar= $_COOKIE['njt-close-notibar'] ?? null; 153 $cookie_toggle_close_notibar= $_COOKIE['njt-toggle-close-notibar'] ?? null; 154 155 if($cookie_close_notibar == 'true' || $open_after_day == 0) { 156 setcookie( 157 'njt-close-notibar', 158 'true', 159 time() + ($open_after_day * DAY_IN_SECONDS), 160 '/' 161 ); 162 } 163 164 if($cookie_toggle_close_notibar == 'true' || $open_after_day == 0) { 165 setcookie( 166 'njt-toggle-close-notibar', 167 'true', 168 time() + ($open_after_day * DAY_IN_SECONDS), 169 '/' 170 ); 171 } 172 } 148 173 } 149 174 … … 234 259 )); 235 260 261 // Open notibar after day 262 $customNoti->add_setting('njt_nofi_open_after_day', array( 263 'default' => 1, 264 'sanitize_callback' => 'absint', 265 'transport' => 'postMessage' 266 )); 267 268 $customNoti->add_control( 'njt_nofi_open_after_day_control', array( 269 'label' => __( 'Show Notibar again after close (days)', NJT_NOFI_DOMAIN ), 270 'section' => 'njt_nofi_general', 271 'settings' => 'njt_nofi_open_after_day', 272 'type' => 'number', 273 'input_attrs' => array( 274 'min' => 0, 275 'step' => 1 276 ) 277 )); 278 236 279 // Content Width (px) 237 280 $customNoti->add_setting('njt_nofi_content_width', array( … … 690 733 )); 691 734 735 736 692 737 } 693 738 } -
notibar/trunk/njt-notification-bar.php
r3288308 r3294256 4 4 * Plugin URI: https://ninjateam.org/notibar-wordpress-notification-bar 5 5 * Description: Custom notification bar for alert, promo code, marketing campaign, top banner 6 * Version: 2.1. 76 * Version: 2.1.8 7 7 * Author: Ninja Team 8 8 * Author URI: https://ninjateam.org … … 18 18 19 19 define('NJT_NOFI_PREFIX', 'njt_nofi'); 20 define('NJT_NOFI_VERSION', '2.1. 7');20 define('NJT_NOFI_VERSION', '2.1.8'); 21 21 define('NJT_NOFI_DOMAIN', 'notibar'); 22 22 … … 59 59 NotificationBar\NotificationBarHandle::getInstance(); 60 60 NotificationBar\WpPosts::getInstance(); 61 NotificationBar\overrideOldVer::overrideThemeMod();61 //NotificationBar\overrideOldVer::overrideThemeMod(); 62 62 } 63 63 add_action('plugins_loaded', 'NjtNotificationBar\\init'); -
notibar/trunk/readme.txt
r3288308 r3294256 105 105 == Changelog == 106 106 107 = May 15, 2025 - Version 2.1.8 = 108 - Fixed: CSS refactor for notification bar 109 107 110 = May 6, 2025 - Version 2.1.7 = 108 111 - Fixed: Resolve the bug that is deprecated in PHP 8 -
notibar/trunk/views/pages/home/home-notification-bar.php
r3205224 r3294256 31 31 <div class="njt-nofi-container" > 32 32 <div class="njt-nofi-notification-bar njt-nofi-bgcolor-notification" style="<?php echo('background:'.esc_attr($bgColorNotification)) ?>"> 33 34 33 <div class="njt-nofi-content njt-nofi-text-color njt-nofi-align-content njt-nofi-content-deskop <?php echo ($classDeskop)?>" style="width:<?php echo esc_attr($contentWidth) ?>"> 35 34 <div class="njt-nofi-text njt-nofi-padding-text"><?php echo wp_kses_post(do_shortcode($textContent))?></div> 36 35 <div class="njt-nofi-button njt-nofi-padding-text " style="<?php if(!$isDisplayButton) { echo ('display: none');}?>"> 37 36 <a <?php if($isNewWindown) {echo ("target='_blank'");}?> href="<?php echo esc_url($buttonUrl)?>" class="njt-nofi-button-text njt-nofi-padding-text" style="<?php if($isDisplayButton) { echo ('background:' .esc_attr($lbColorNotification).';border-radius:3px;font-weight:'.esc_attr($buttonFontWeight));}?>"><?php echo esc_html($buttonText)?></a> 38 </div> 37 </div> 39 38 </div> 40 39 … … 46 45 </div> 47 46 48 < a href="javascript:void(0)" class="njt-nofi-toggle-button njt-nofi-hide njt-nofi-text-color njt-nofi-hide-admin-custom">49 <span >50 <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.com/svgjs" version="1.1" width="512" height="512" x="0" y="0" viewBox="0 0 386.667 386.667" style="enable-background:new 0 0 512 512" xml:space="preserve" class="njt-nofi-close-icon"><g><path xmlns="http://www.w3.org/2000/svg" d="m386.667 45.564-45.564-45.564-147.77 147.769-147.769-147.769-45.564 45.564 147.769 147.769-147.769 147.77 45.564 45.564 147.769-147.769 147.769 147.769 45.564-45.564-147.768-147.77z" fill="#ffffff" data-original="#000000" style="" class=""/></g></svg>47 <div class="njt-nofi-toggle-button njt-nofi-hide njt-nofi-text-color njt-nofi-hide-admin-custom" style="cursor: pointer;"> 48 <span class="njt-nofi-close-icon-container"> 49 <svg class="njt-nofi-close-icon" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.com/svgjs" version="1.1" width="512" height="512" x="0" y="0" viewBox="0 0 386.667 386.667" style="enable-background:new 0 0 512 512" xml:space="preserve"><g><path xmlns="http://www.w3.org/2000/svg" d="m386.667 45.564-45.564-45.564-147.77 147.769-147.769-147.769-45.564 45.564 147.769 147.769-147.769 147.77 45.564 45.564 147.769-147.769 147.769 147.769 45.564-45.564-147.768-147.77z" fill="#ffffff" data-original="#000000" style="" class=""/></g></svg> 51 50 </span> 52 </ a>53 < a href="javascript:void(0)" class="njt-nofi-close-button njt-nofi-hide njt-nofi-text-color njt-nofi-hide-admin-custom">54 <span >55 <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.com/svgjs" version="1.1" width="512" height="512" x="0" y="0" viewBox="0 0 386.667 386.667" style="enable-background:new 0 0 512 512" xml:space="preserve" class="njt-nofi-close-icon"><g><path xmlns="http://www.w3.org/2000/svg" d="m386.667 45.564-45.564-45.564-147.77 147.769-147.769-147.769-45.564 45.564 147.769 147.769-147.769 147.77 45.564 45.564 147.769-147.769 147.769 147.769 45.564-45.564-147.768-147.77z" fill="#ffffff" data-original="#000000" style="" class=""/></g></svg>51 </div> 52 <div class="njt-nofi-close-button njt-nofi-hide njt-nofi-text-color njt-nofi-hide-admin-custom" style="cursor: pointer;"> 53 <span class="njt-nofi-close-icon-container"> 54 <svg class="njt-nofi-close-icon" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.com/svgjs" version="1.1" width="512" height="512" x="0" y="0" viewBox="0 0 386.667 386.667" style="enable-background:new 0 0 512 512" xml:space="preserve"><g><path xmlns="http://www.w3.org/2000/svg" d="m386.667 45.564-45.564-45.564-147.77 147.769-147.769-147.769-45.564 45.564 147.769 147.769-147.769 147.77 45.564 45.564 147.769-147.769 147.769 147.769 45.564-45.564-147.768-147.77z" fill="#ffffff" data-original="#000000" style="" class=""/></g></svg> 56 55 </span> 57 </ a>56 </div> 58 57 </div> 59 58 <div> 60 < a href="javascript:void(0)" class="njt-nofi-display-toggle njt-nofi-text-color njt-nofi-bgcolor-notification" style="<?php echo('background:'.esc_attr($bgColorNotification)) ?>">61 <span >59 <div class="njt-nofi-display-toggle njt-nofi-text-color njt-nofi-bgcolor-notification" style="<?php echo('background:'.esc_attr($bgColorNotification)) ?>; cursor: pointer;"> 60 <span class="njt-nofi-close-icon-container"> 62 61 <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.com/svgjs" version="1.1" width="512" height="512" x="0" y="0" viewBox="0 0 386.667 386.667" style="enable-background:new 0 0 512 512" xml:space="preserve" class="njt-nofi-display-toggle-icon"><g><path xmlns="http://www.w3.org/2000/svg" d="m386.667 45.564-45.564-45.564-147.77 147.769-147.769-147.769-45.564 45.564 147.769 147.769-147.769 147.77 45.564 45.564 147.769-147.769 147.769 147.769 45.564-45.564-147.768-147.77z" fill="#ffffff" data-original="#000000" style="" class=""/></g></svg> 63 62 </span> 64 </ a>63 </div> 65 64 </div> 66 65 </div>
Note: See TracChangeset
for help on using the changeset viewer.