PluginProbe
BerqWP – All-In-One Optimization for Core Web Vitals, Cache, CDN, Images, CSS & JavaScript / 4.1.16
BerqWP – All-In-One Optimization for Core Web Vitals, Cache, CDN, Images, CSS & JavaScript v4.1.16
4.1.16 4.1.15 4.1.14 4.1.13 4.1.12 4.1.11 4.1.10 4.0.30 4.0.29 4.0.28 4.0.27 4.0.26 4.0.24 4.0.25 4.0.23 4.0.22 4.0.21 4.0.19 4.0.18 4.0.17 4.0.16 1.9.3 1.9.4 1.9.5 1.9.6 All 170 releases
← All changes | admin/admin-page.php +66 -0 4.0.304.1.16 View file →
@@ -131,8 +131,16 @@
131 131 <div class="berqwp-tab <?php bwp_is_tab_nav('script-manager'); ?>" data-tab="script-manager">
132 132 <div class="icon"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-code-corner-icon lucide-file-code-corner"><path d="M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35"/><path d="M14 2v5a1 1 0 0 0 1 1h5"/><path d="m5 16-3 3 3 3"/><path d="m9 22 3-3-3-3"/></svg></div>
133 133 <?php esc_html_e('Script Manager', 'searchpro'); ?>
134 134 </div>-->
135 + <div class="berqwp-tab <?php bwp_is_tab_nav('database'); ?>" data-tab="database">
136 + <div class="icon"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database-icon lucide-database"><ellipse cx="12" cy="5" rx="9" ry="3"/><path d="M3 5V19A9 3 0 0 0 21 19V5"/><path d="M3 12A9 3 0 0 0 21 12"/></svg></div>
137 + <?php esc_html_e('Database', 'searchpro'); ?>
138 + </div>
139 + <div class="berqwp-tab <?php bwp_is_tab_nav('debloat'); ?>" data-tab="debloat">
140 + <div class="icon"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-trash2-icon lucide-trash-2"><path d="M3 6h18"/><path d="M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"/><path d="M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"/><line x1="10" x2="10" y1="11" y2="17"/><line x1="14" x2="14" y1="11" y2="17"/></svg></div>
141 + <?php esc_html_e('Debloat', 'searchpro'); ?>
142 + </div>
135 143 <div class="berqwp-tab <?php bwp_is_tab_nav('integration'); ?>" data-tab="integration">
136 144 <div class="icon"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-blocks-icon lucide-blocks"><path d="M10 22V7a1 1 0 0 0-1-1H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5a1 1 0 0 0-1-1H2"/><rect x="14" y="2" width="8" height="8" rx="1"/></svg></div>
137 145 <?php esc_html_e('Integration', 'searchpro'); ?>
138 146 </div>
@@ -139,12 +147,15 @@
139 147 <div class="berqwp-tab <?php bwp_is_tab_nav('activate-license'); ?>" data-tab="activate-license">
140 148 <div class="icon"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings2-icon lucide-settings-2"><path d="M14 17H5"/><path d="M19 7h-9"/><circle cx="17" cy="17" r="3"/><circle cx="7" cy="7" r="3"/></svg></div>
141 149 <?php esc_html_e('License', 'searchpro'); ?>
142 150 </div>
151 +
152 + <?php if (!defined('BERQWP_HIDE_DOCS') || !BERQWP_HIDE_DOCS) { ?>
143 153 <a class="berqwp-tab tab-link" target="_blank" href="https://www.facebook.com/groups/1660827728253423">
144 154 <div class="icon"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640" width="24"><!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.--><path d="M576 320C576 178.6 461.4 64 320 64C178.6 64 64 178.6 64 320C64 440 146.7 540.8 258.2 568.5L258.2 398.2L205.4 398.2L205.4 320L258.2 320L258.2 286.3C258.2 199.2 297.6 158.8 383.2 158.8C399.4 158.8 427.4 162 438.9 165.2L438.9 236C432.9 235.4 422.4 235 409.3 235C367.3 235 351.1 250.9 351.1 292.2L351.1 320L434.7 320L420.3 398.2L351 398.2L351 574.1C477.8 558.8 576 450.9 576 320z"/></svg></svg></div>
145 155 <?php esc_html_e('Join BerqWP Community', 'searchpro'); ?>
146 156 </a>
157 + <?php } ?>
147 158 </div>
148 159 <div class="berqwp-tab-content">
149 160 <?php do_action('berqwp_notices'); ?>
150 161 <form action="" method="post">
@@ -160,8 +171,10 @@
160 171 // require_once optifer_PATH . '/admin/tabs/image-optimization.php';
161 172 require_once optifer_PATH . '/admin/tabs/media-optimization.php';
162 173 // require_once optifer_PATH . '/admin/tabs/script-manager.php';
163 174 require_once optifer_PATH . '/admin/tabs/integration.php';
175 + require_once optifer_PATH . '/admin/tabs/database.php';
176 + require_once optifer_PATH . '/admin/tabs/debloat.php';
164 177 require_once optifer_PATH . '/admin/tabs/activate-license.php';
165 178
166 179 ?>
167 180 </form>
@@ -457,8 +470,16 @@
457 470 $('[name="berqwp_preload_yt_poster"]').parent().hide();
458 471 }
459 472 });
460 473
474 + $('[name="berqwp_heartbeat_mode"]').on('change', function() {
475 + if ($('[name="berqwp_heartbeat_mode"]:checked').val() === 'throttle') {
476 + $('.berqwp-heartbeat-interval').show();
477 + } else {
478 + $('.berqwp-heartbeat-interval').hide();
479 + }
480 + });
481 +
461 482 // $(document).ready(function () {
462 483 // const stickyDiv = $('.berqwp-dashbaord');
463 484 // const offset = stickyDiv.offset().top;
464 485
@@ -544,8 +565,53 @@
544 565 },
545 566 error: function() {
546 567 loader.hide();
547 568 alert("Page compression test failed: Please check your internet connection.");
569 + }
570 + });
571 + })
572 + })
573 + })(jQuery)
574 +</script>
575 +<script>
576 + (function($) {
577 + $(document).ready(function() {
578 + let berq_nounce = '<?php echo esc_html(wp_create_nonce('wp_rest')); ?>';
579 +
580 + $('.berqwp-db-run-action').click(function(e) {
581 + e.preventDefault();
582 +
583 + let $btn = $(this);
584 + let $action = $btn.closest('.berqwp-db-action');
585 + let task = $action.data('task');
586 + let limit = $action.find('input[name="berqwp_db_revision_limit"]').val();
587 +
588 + $btn.addClass('disabled').text('Running...');
589 +
590 + $.ajax({
591 + url: ajaxurl,
592 + type: 'POST',
593 + data: {
594 + action: 'berqwp_db_run_action',
595 + task: task,
596 + limit: limit,
597 + nonce: berq_nounce,
598 + },
599 + beforeSend: function(xhr) {
600 + xhr.setRequestHeader('X-WP-Nonce', berq_nounce);
601 + },
602 + success: function(data) {
603 + if (data.success) {
604 + alert(data.data.message);
605 + } else {
606 + alert(data.data && data.data.message ? data.data.message : 'Something went wrong.');
607 + }
608 + },
609 + error: function() {
610 + alert('Request failed. Please check your internet connection.');
611 + },
612 + complete: function() {
613 + $btn.removeClass('disabled').text($btn.data('task') === 'optimize_tables' ? 'Optimize now' : 'Clean now');
548 614 }
549 615 });
550 616 })
551 617 })