Edit File by line
/home/zeestwma/ceyloniy.../wp-conte.../plugins/cookiead.../includes
File: admin.php
<?php
[0] Fix | Delete
[1] Fix | Delete
namespace CookieAdmin;
[2] Fix | Delete
[3] Fix | Delete
if(!defined('COOKIEADMIN_VERSION') || !defined('ABSPATH')){
[4] Fix | Delete
die('Hacking Attempt');
[5] Fix | Delete
}
[6] Fix | Delete
[7] Fix | Delete
class Admin{
[8] Fix | Delete
[9] Fix | Delete
static function enqueue_scripts(){
[10] Fix | Delete
[11] Fix | Delete
if(!is_admin()){
[12] Fix | Delete
return true;
[13] Fix | Delete
}
[14] Fix | Delete
[15] Fix | Delete
$request_uri = isset( $_SERVER['REQUEST_URI'] ) ? sanitize_text_field( wp_unslash( $_SERVER['REQUEST_URI'] ) ) : '';
[16] Fix | Delete
$admin_page = basename(parse_url($request_uri, PHP_URL_PATH));
[17] Fix | Delete
[18] Fix | Delete
if($admin_page != 'admin.php'){
[19] Fix | Delete
return true;
[20] Fix | Delete
}
[21] Fix | Delete
[22] Fix | Delete
$current_page = isset( $_GET['page'] ) ? sanitize_text_field( wp_unslash( $_GET['page'] ) ) : '';
[23] Fix | Delete
[24] Fix | Delete
// List all page slugs where styles should be loaded
[25] Fix | Delete
$plugin_pages = [
[26] Fix | Delete
'cookieadmin',
[27] Fix | Delete
'cookieadmin-settings',
[28] Fix | Delete
'cookieadmin-scan-cookies',
[29] Fix | Delete
'cookieadmin-consent',
[30] Fix | Delete
'cookieadmin-consent-logs',
[31] Fix | Delete
'cookieadmin-license',
[32] Fix | Delete
];
[33] Fix | Delete
[34] Fix | Delete
if(empty($current_page) || !in_array($current_page, $plugin_pages)){
[35] Fix | Delete
return true;
[36] Fix | Delete
}
[37] Fix | Delete
[38] Fix | Delete
//Consent Page CSS
[39] Fix | Delete
wp_enqueue_style('cookieadmin-style', COOKIEADMIN_PLUGIN_URL . 'assets/css/cookie.css', [], COOKIEADMIN_VERSION);
[40] Fix | Delete
wp_enqueue_style('cookieadmin-user-style', COOKIEADMIN_PLUGIN_URL . 'assets/css/consent.css', [], COOKIEADMIN_VERSION);
[41] Fix | Delete
[42] Fix | Delete
//WP Color picker
[43] Fix | Delete
wp_enqueue_style('wp-color-picker');
[44] Fix | Delete
[45] Fix | Delete
$view = get_option('cookieadmin_law', 'cookieadmin_gdpr');
[46] Fix | Delete
$policy = cookieadmin_load_policy();
[47] Fix | Delete
[48] Fix | Delete
if(!empty($policy) && !empty($view)){
[49] Fix | Delete
[50] Fix | Delete
wp_enqueue_script('cookieadmin_js', COOKIEADMIN_PLUGIN_URL . 'assets/js/cookie.js', [], COOKIEADMIN_VERSION);
[51] Fix | Delete
// wp_enqueue_script('cookieadmin_js', COOKIEADMIN_PLUGIN_URL . 'assets/js/consent.js', [], COOKIEADMIN_VERSION);
[52] Fix | Delete
[53] Fix | Delete
$policy['set'] = $view;
[54] Fix | Delete
$policy['admin_url'] = admin_url('admin-ajax.php');
[55] Fix | Delete
$policy['cookieadmin_nonce'] = wp_create_nonce('cookieadmin_admin_js_nonce');
[56] Fix | Delete
//cookieadmin_r_print($policy);die();
[57] Fix | Delete
[58] Fix | Delete
$policy['lang']['show_more'] = __('Show more', 'cookieadmin');
[59] Fix | Delete
$policy['lang']['show_less'] = __('Show less', 'cookieadmin');
[60] Fix | Delete
$policy['lang']['days'] = __('Day(s)', 'cookieadmin');
[61] Fix | Delete
$policy['lang']['session'] = __('Session', 'cookieadmin');
[62] Fix | Delete
$policy['lang']['scan_completed'] = __('Scan completed', 'cookieadmin');
[63] Fix | Delete
[64] Fix | Delete
wp_localize_script('cookieadmin_js', 'cookieadmin_policy', $policy);
[65] Fix | Delete
}
[66] Fix | Delete
[67] Fix | Delete
wp_enqueue_script('cookieadmin_js_footer', COOKIEADMIN_PLUGIN_URL . 'assets/js/footer.js', [], COOKIEADMIN_VERSION);
[68] Fix | Delete
wp_localize_script('cookieadmin_js_footer', 'cookieadmin_data', array('is_pro' => cookieadmin_is_pro()));
[69] Fix | Delete
}
[70] Fix | Delete
[71] Fix | Delete
//Add Main Menu
[72] Fix | Delete
static function cookieadmin_plugin_menu(){
[73] Fix | Delete
[74] Fix | Delete
if(!empty($_REQUEST['cookieadmin_save_settings'])){
[75] Fix | Delete
[76] Fix | Delete
if(!empty($_REQUEST['cookieadmin_consent_type'])){
[77] Fix | Delete
\CookieAdmin\Admin\Consent::save_consent_form();
[78] Fix | Delete
}else{
[79] Fix | Delete
\CookieAdmin\Admin\Settings::save_settings();
[80] Fix | Delete
}
[81] Fix | Delete
}
[82] Fix | Delete
[83] Fix | Delete
$capability = 'activate_plugins';
[84] Fix | Delete
$logo = defined('SITEPAD') ? 'cookieadmin_icon_20-black.svg' : 'cookieadmin_icon_20.svg';
[85] Fix | Delete
[86] Fix | Delete
add_menu_page(__('CookieAdmin', 'cookieadmin'), __('CookieAdmin', 'cookieadmin'), $capability, 'cookieadmin', '\CookieAdmin\Admin\Dashboard::dashboard', COOKIEADMIN_PLUGIN_URL .'assets/images/'.$logo);
[87] Fix | Delete
[88] Fix | Delete
add_submenu_page('cookieadmin', __('Dashboard', 'cookieadmin'), __('Dashboard', 'cookieadmin'), $capability, 'cookieadmin', '\CookieAdmin\Admin\Dashboard::dashboard');
[89] Fix | Delete
[90] Fix | Delete
add_submenu_page('cookieadmin', __('Consent Form', 'cookieadmin'), __('Consent Form', 'cookieadmin'), $capability, 'cookieadmin-consent', '\CookieAdmin\Admin\Consent::consent_form');
[91] Fix | Delete
[92] Fix | Delete
add_submenu_page('cookieadmin', __('Settings', 'cookieadmin'), __('Settings', 'cookieadmin'), $capability, 'cookieadmin-settings', '\CookieAdmin\Admin\Settings::settings');
[93] Fix | Delete
[94] Fix | Delete
add_submenu_page('cookieadmin', __('Scan Cookies', 'cookieadmin'), __('Scan Cookies', 'cookieadmin'), $capability, 'cookieadmin-scan-cookies', '\CookieAdmin\Admin\Scan::show_cookies');
[95] Fix | Delete
[96] Fix | Delete
if(defined('COOKIEADMIN_PREMIUM')){
[97] Fix | Delete
add_submenu_page('cookieadmin', __('Consent Logs', 'cookieadmin'), __('Consent Logs', 'cookieadmin'), $capability, 'cookieadmin-consent-logs', '\CookieAdminPro\Admin::show_consent_logs');
[98] Fix | Delete
[99] Fix | Delete
if(!defined('SITEPAD')){
[100] Fix | Delete
add_submenu_page('cookieadmin', __('License', 'cookieadmin'), __('License', 'cookieadmin'), $capability, 'cookieadmin-license', '\CookieAdminPro\License::cookieadmin_show_license');
[101] Fix | Delete
}
[102] Fix | Delete
}else if(!defined('SITEPAD')){
[103] Fix | Delete
// Go Pro link
[104] Fix | Delete
add_submenu_page('cookieadmin', __('CookieAdmin Go Pro', 'cookieadmin'), __('Go Pro', 'cookieadmin'), $capability, COOKIEADMIN_PRO_URL);
[105] Fix | Delete
}
[106] Fix | Delete
}
[107] Fix | Delete
[108] Fix | Delete
// cookieadmin header
[109] Fix | Delete
static function header_theme($title = 'Dashboard'){
[110] Fix | Delete
[111] Fix | Delete
global $cookieadmin_lang, $cookieadmin_error, $cookieadmin_msg;
[112] Fix | Delete
[113] Fix | Delete
echo '
[114] Fix | Delete
<div class="cookieadmin-metabox-holder columns-2">
[115] Fix | Delete
<div class="cookieadmin-postbox-container">
[116] Fix | Delete
<div style="margin: 10px 20px 0 2px;" class="wrap">
[117] Fix | Delete
<div class="cookieadmin-icon">
[118] Fix | Delete
<img class="cookieadmin-logo" src="'.esc_attr(COOKIEADMIN_PLUGIN_URL).'assets/images/cookieadmin-logo.png" alt="CookieAdmin Logo">
[119] Fix | Delete
</div>
[120] Fix | Delete
</div>
[121] Fix | Delete
<h2>'.esc_html($title).'</h2>';
[122] Fix | Delete
[123] Fix | Delete
if(!empty($cookieadmin_error)){
[124] Fix | Delete
echo '<div id="cookieadmin_message" class="error"><p>'.esc_html($cookieadmin_error).'</p></div>';
[125] Fix | Delete
}
[126] Fix | Delete
[127] Fix | Delete
if(!empty($cookieadmin_msg)){
[128] Fix | Delete
echo '<div id="cookieadmin_message" class="updated"><p>'.esc_html($cookieadmin_msg).'</p></div>';
[129] Fix | Delete
}
[130] Fix | Delete
}
[131] Fix | Delete
[132] Fix | Delete
// cookieadmin footer
[133] Fix | Delete
static function footer_theme($no_twitter = 0){
[134] Fix | Delete
global $cookieadmin_lang, $cookieadmin_error, $cookieadmin_msg;
[135] Fix | Delete
[136] Fix | Delete
if(!defined('SITEPAD')){
[137] Fix | Delete
echo '</div>
[138] Fix | Delete
<div class="cookieadmin-footer">';
[139] Fix | Delete
[140] Fix | Delete
if(empty($no_twitter)){
[141] Fix | Delete
[142] Fix | Delete
echo '<br/><div class="cookieadmin-twitter">
[143] Fix | Delete
<span>'.esc_html__('Share with your followers', 'cookieadmin').'</span><br /><br />
[144] Fix | Delete
<form method="get" action="https://twitter.com/intent/tweet" id="tweet" onsubmit="return cookieadmin_dotweet(this);">
[145] Fix | Delete
<textarea name="text" cols="60" row="4" style="resize:none;">'.esc_html__('I easily manage Cookie Consent Banner on my #WordPress site using @cookieadmin', 'cookieadmin').'</textarea>
[146] Fix | Delete
<br />
[147] Fix | Delete
<input type="submit" value="Tweet!" class="cookieadmin-btn cookieadmin-btn-secondary" onsubmit="return false;" id="twitter-btn" style="margin-top:7px;"/>
[148] Fix | Delete
</form>
[149] Fix | Delete
</div>
[150] Fix | Delete
<br/>
[151] Fix | Delete
<hr>';
[152] Fix | Delete
[153] Fix | Delete
}
[154] Fix | Delete
[155] Fix | Delete
echo '<a href="'.esc_url(COOKIEADMIN_WWW_URL).'" target="_blank">CookieAdmin</a><span> v'.esc_html(COOKIEADMIN_VERSION).esc_html__(' You can report any bugs ', 'cookieadmin').'</span><a href="http://wordpress.org/support/plugin/cookieadmin" target="_blank">'.esc_html__('here', 'cookieadmin').'</a>. ';
[156] Fix | Delete
[157] Fix | Delete
if(defined('COOKIEADMIN_PREMIUM')){
[158] Fix | Delete
echo 'Or email us at <a href="mailto:support@cookieadmin.net">support@cookieadmin.net</a>';
[159] Fix | Delete
}
[160] Fix | Delete
[161] Fix | Delete
echo '</div>
[162] Fix | Delete
</div>';
[163] Fix | Delete
}
[164] Fix | Delete
}
[165] Fix | Delete
[166] Fix | Delete
static function cookieadmin_table_exists($table_name) {
[167] Fix | Delete
global $wpdb;
[168] Fix | Delete
[169] Fix | Delete
$query = $wpdb->prepare("SHOW TABLES LIKE %s", $table_name);
[170] Fix | Delete
[171] Fix | Delete
return $wpdb->get_var($query) === $table_name;
[172] Fix | Delete
}
[173] Fix | Delete
[174] Fix | Delete
static function scan_notice(){
[175] Fix | Delete
[176] Fix | Delete
$cookieadmin_auto_scan = get_option('cookieadmin_scan');
[177] Fix | Delete
$current_page = isset($_GET['page']) ? sanitize_text_field(wp_unslash($_GET['page'])) : '';
[178] Fix | Delete
[179] Fix | Delete
if(empty($cookieadmin_auto_scan['status']) || (strpos($current_page, 'cookieadmin') !== 0)){
[180] Fix | Delete
return false;
[181] Fix | Delete
}
[182] Fix | Delete
[183] Fix | Delete
$msg = '';
[184] Fix | Delete
[185] Fix | Delete
if($cookieadmin_auto_scan['status'] === 2){
[186] Fix | Delete
[187] Fix | Delete
$count = !empty($cookieadmin_auto_scan['count']) ? $cookieadmin_auto_scan['count'] : 0;
[188] Fix | Delete
/* translators: %1$s is replaced with a "string" of name of plugins, and %2$s is replaced with "string" which can be "is" or "are" based on the count of the plugin */
[189] Fix | Delete
$msg = sprintf(__('<br><strong>Cookie Scan is running:</strong> %1$d Cookies found. Please wait for cookies to appear on <a href="%2$s">Scan Cookies Page</a>', 'cookieadmin'), $count, esc_url(admin_url('admin.php?page=cookieadmin-scan-cookies')));
[190] Fix | Delete
}
[191] Fix | Delete
[192] Fix | Delete
if($cookieadmin_auto_scan['status'] === 3 && isset($cookieadmin_auto_scan['success'])){
[193] Fix | Delete
[194] Fix | Delete
if($cookieadmin_auto_scan['success'] === true){
[195] Fix | Delete
/* translators: %1$s is replaced with a "string" of name of plugins, and %2$s is replaced with "string" which can be "is" or "are" based on the count of the plugin */
[196] Fix | Delete
$msg = sprintf(__('<br><strong>Cookie Scan completed successfully:</strong> Please visit <a href="%1$s">Scan Cookies</a> to review scan results.', 'cookieadmin'), esc_url(admin_url('admin.php?page=cookieadmin-scan-cookies')));
[197] Fix | Delete
}
[198] Fix | Delete
[199] Fix | Delete
if($cookieadmin_auto_scan['success'] === false){
[200] Fix | Delete
/* translators: %1$s is replaced with a "string" of name of plugins, and %2$s is replaced with "string" which can be "is" or "are" based on the count of the plugin */
[201] Fix | Delete
$msg = sprintf(__('<br><strong>Cookie Scan failed:</strong> Please <a href="%1$s">Scan Cookies</a> again for compliance. %2$s', 'cookieadmin'), esc_url(admin_url('admin.php?page=cookieadmin-scan-cookies')), esc_html(!empty($cookieadmin_auto_scan['message']) ? $cookieadmin_auto_scan['message'] : ''));
[202] Fix | Delete
}
[203] Fix | Delete
}
[204] Fix | Delete
[205] Fix | Delete
if(empty($msg)){
[206] Fix | Delete
return;
[207] Fix | Delete
}
[208] Fix | Delete
[209] Fix | Delete
// cookieadmin_logo_svg fn is Internal static SVG. if allowing user input or filters, escape it.
[210] Fix | Delete
echo '
[211] Fix | Delete
<div class="notice notice-info is-dismissible" id="cookieadmin-auto-scan-notice">
[212] Fix | Delete
<p>'.cookieadmin_logo_svg().wp_kses_post($msg). '</p>
[213] Fix | Delete
</div>';
[214] Fix | Delete
[215] Fix | Delete
wp_register_script('cookieadmin-scan-notice', '', ['jquery'], '', true);
[216] Fix | Delete
wp_enqueue_script('cookieadmin-scan-notice');
[217] Fix | Delete
wp_add_inline_script('cookieadmin-scan-notice', 'jQuery("#cookieadmin-auto-scan-notice").on("click",
[218] Fix | Delete
function(e){
[219] Fix | Delete
[220] Fix | Delete
let target = jQuery(e.target);
[221] Fix | Delete
if(!target.hasClass("notice-dismiss")){
[222] Fix | Delete
return;
[223] Fix | Delete
}
[224] Fix | Delete
[225] Fix | Delete
var data;
[226] Fix | Delete
[227] Fix | Delete
// Hide it
[228] Fix | Delete
jQuery("#cookieadmin-auto-scan-notice").remove();
[229] Fix | Delete
[230] Fix | Delete
// Save this preference
[231] Fix | Delete
jQuery.post("'.admin_url('admin-ajax.php?action=cookieadmin_ajax_handler&cookieadmin_act=close-notice&notice=cookieadmin-scan-notice').'&cookieadmin_security='.wp_create_nonce('cookieadmin_admin_js_nonce').'", data, function(response) {
[232] Fix | Delete
});
[233] Fix | Delete
[234] Fix | Delete
});');
[235] Fix | Delete
[236] Fix | Delete
}
[237] Fix | Delete
static function consent_log_purge_notice(){
[238] Fix | Delete
[239] Fix | Delete
$cookieadmin_consent_purge = get_option('cookieadmin_consent_purge', ['status' => 0, 'count' => 0]);
[240] Fix | Delete
[241] Fix | Delete
if(empty($cookieadmin_consent_purge['status'])){
[242] Fix | Delete
return false;
[243] Fix | Delete
}
[244] Fix | Delete
[245] Fix | Delete
$msg = '';
[246] Fix | Delete
$count = empty($cookieadmin_consent_purge['count']) ? 0 : $cookieadmin_consent_purge['count'];
[247] Fix | Delete
[248] Fix | Delete
if($cookieadmin_consent_purge['status'] === 2){
[249] Fix | Delete
/* translators: %1$d: number of consent logs deleted */
[250] Fix | Delete
$msg = sprintf(__('<br><strong>Consent logs are being deleted :</strong> %1$d logs deleted. Please wait for deletion process to complete.', 'cookieadmin'), $count);
[251] Fix | Delete
}
[252] Fix | Delete
[253] Fix | Delete
if($cookieadmin_consent_purge['status'] === 3){
[254] Fix | Delete
if(isset($cookieadmin_consent_purge['success'])){
[255] Fix | Delete
if($cookieadmin_consent_purge['success'] === true){
[256] Fix | Delete
/* translators: %1$d: number of consent logs deleted */
[257] Fix | Delete
$msg = sprintf(__('<br><strong>Consent logs deleted successfully:</strong> %1$d logs deleted.', 'cookieadmin'), $count);
[258] Fix | Delete
}
[259] Fix | Delete
[260] Fix | Delete
if($cookieadmin_consent_purge['success'] === false){
[261] Fix | Delete
/* translators: %1$d: number of consent logs deleted, %2$s: error message*/
[262] Fix | Delete
$msg = sprintf(__('<br><strong>Consent logs deletion failed:</strong> %1$d logs deleted. Error : %2$s', 'cookieadmin'), $count, esc_html($cookieadmin_consent_purge['message']));
[263] Fix | Delete
}
[264] Fix | Delete
}
[265] Fix | Delete
}
[266] Fix | Delete
[267] Fix | Delete
if(empty($msg)){
[268] Fix | Delete
return;
[269] Fix | Delete
}
[270] Fix | Delete
[271] Fix | Delete
// cookieadmin_logo_svg fn is Internal static SVG. if allowing user input or filters, escape it.
[272] Fix | Delete
echo '
[273] Fix | Delete
<div class="notice notice-info is-dismissible" id="cookieadmin-consent-purge-notice">
[274] Fix | Delete
<p>'.cookieadmin_logo_svg().wp_kses_post($msg). '</p>
[275] Fix | Delete
</div>';
[276] Fix | Delete
[277] Fix | Delete
wp_register_script('cookieadmin-consent-purge-notice', '', ['jquery'], '', true);
[278] Fix | Delete
wp_enqueue_script('cookieadmin-consent-purge-notice');
[279] Fix | Delete
wp_add_inline_script('cookieadmin-consent-purge-notice', 'jQuery("#cookieadmin-consent-purge-notice").on("click",
[280] Fix | Delete
function(e){
[281] Fix | Delete
[282] Fix | Delete
let target = jQuery(e.target);
[283] Fix | Delete
if(!target.hasClass("notice-dismiss")){
[284] Fix | Delete
return;
[285] Fix | Delete
}
[286] Fix | Delete
[287] Fix | Delete
var data;
[288] Fix | Delete
[289] Fix | Delete
// Hide it
[290] Fix | Delete
jQuery("#cookieadmin-consent-purge-notice").remove();
[291] Fix | Delete
[292] Fix | Delete
// Save this preference
[293] Fix | Delete
jQuery.post("'.admin_url('admin-ajax.php?action=cookieadmin_ajax_handler&cookieadmin_act=close-notice&notice=cookieadmin-consent-purge-notice').'&cookieadmin_security='.wp_create_nonce('cookieadmin_admin_js_nonce').'", data, function(response) {
[294] Fix | Delete
});
[295] Fix | Delete
[296] Fix | Delete
});');
[297] Fix | Delete
[298] Fix | Delete
}
[299] Fix | Delete
[300] Fix | Delete
static function close_notices(){
[301] Fix | Delete
[302] Fix | Delete
if(empty($_REQUEST['notice'])){
[303] Fix | Delete
return;
[304] Fix | Delete
}
[305] Fix | Delete
[306] Fix | Delete
$notice = sanitize_text_field(wp_unslash($_REQUEST['notice']));
[307] Fix | Delete
$notice = str_replace('-notice', '', $notice);
[308] Fix | Delete
$notice = str_replace('-', '_', $notice);
[309] Fix | Delete
[310] Fix | Delete
update_option($notice, array());
[311] Fix | Delete
}
[312] Fix | Delete
[313] Fix | Delete
static function plugin_update_notice(){
[314] Fix | Delete
if(defined('SOFTACULOUS_PLUGIN_UPDATE_NOTICE')){
[315] Fix | Delete
return;
[316] Fix | Delete
}
[317] Fix | Delete
[318] Fix | Delete
$to_update_plugins = apply_filters('softaculous_plugin_update_notice', []);
[319] Fix | Delete
[320] Fix | Delete
if(empty($to_update_plugins)){
[321] Fix | Delete
return;
[322] Fix | Delete
}
[323] Fix | Delete
[324] Fix | Delete
/* translators: %1$s is replaced with a "string" of name of plugins, and %2$s is replaced with "string" which can be "is" or "are" based on the count of the plugin */
[325] Fix | Delete
$msg = sprintf(__('New versions of %1$s %2$s available. Updating ensures better performance, security, and access to the latest features.', 'cookieadmin'), '<b>'.esc_html(implode(', ', $to_update_plugins)).'</b>', (count($to_update_plugins) > 1 ? 'are' : 'is')) . ' <a class="button button-primary" href='.esc_url(admin_url('plugins.php?plugin_status=upgrade')).'>Update Now</a>';
[326] Fix | Delete
[327] Fix | Delete
define('SOFTACULOUS_PLUGIN_UPDATE_NOTICE', true); // To make sure other plugins don't return a Notice
[328] Fix | Delete
echo '<div class="notice notice-info is-dismissible" id="cookieadmin-plugin-update-notice">
[329] Fix | Delete
<p>'.wp_kses_post($msg). '</p>
[330] Fix | Delete
</div>';
[331] Fix | Delete
[332] Fix | Delete
wp_register_script('cookieadmin-update-notice', '', ['jquery'], '', true);
[333] Fix | Delete
wp_enqueue_script('cookieadmin-update-notice');
[334] Fix | Delete
wp_add_inline_script('cookieadmin-update-notice', 'jQuery("#cookieadmin-plugin-update-notice").on("click", function(e){
[335] Fix | Delete
let target = jQuery(e.target);
[336] Fix | Delete
[337] Fix | Delete
if(!target.hasClass("notice-dismiss")){
[338] Fix | Delete
return;
[339] Fix | Delete
}
[340] Fix | Delete
[341] Fix | Delete
var data;
[342] Fix | Delete
[343] Fix | Delete
// Hide it
[344] Fix | Delete
jQuery("#cookieadmin-plugin-update-notice").hide();
[345] Fix | Delete
[346] Fix | Delete
// Save this preference
[347] Fix | Delete
jQuery.post("'.admin_url('admin-ajax.php?action=cookieadmin_ajax_handler&cookieadmin_act=close-update-notice').'&cookieadmin_security='.wp_create_nonce('cookieadmin_admin_js_nonce').'", data, function(response) {
[348] Fix | Delete
//alert(response);
[349] Fix | Delete
});
[350] Fix | Delete
});');
[351] Fix | Delete
}
[352] Fix | Delete
[353] Fix | Delete
static function plugin_update_notice_filter($plugins = []){
[354] Fix | Delete
$plugins['cookieadmin/cookieadmin.php'] = 'CookieAdmin';
[355] Fix | Delete
return $plugins;
[356] Fix | Delete
}
[357] Fix | Delete
[358] Fix | Delete
static function close_plugin_update_notice(){
[359] Fix | Delete
$plugin_update_notice = get_option('softaculous_plugin_update_notice', []);
[360] Fix | Delete
$available_update_list = get_site_transient('update_plugins');
[361] Fix | Delete
$to_update_plugins = apply_filters('softaculous_plugin_update_notice', []);
[362] Fix | Delete
[363] Fix | Delete
if(empty($available_update_list) || empty($available_update_list->response)){
[364] Fix | Delete
return;
[365] Fix | Delete
}
[366] Fix | Delete
[367] Fix | Delete
foreach($to_update_plugins as $plugin_path => $plugin_name){
[368] Fix | Delete
if(isset($available_update_list->response[$plugin_path])){
[369] Fix | Delete
$plugin_update_notice[$plugin_path] = $available_update_list->response[$plugin_path]->new_version;
[370] Fix | Delete
}
[371] Fix | Delete
}
[372] Fix | Delete
[373] Fix | Delete
update_option('softaculous_plugin_update_notice', $plugin_update_notice);
[374] Fix | Delete
}
[375] Fix | Delete
[376] Fix | Delete
static function is_feature_available($return = 0){
[377] Fix | Delete
[378] Fix | Delete
if(cookieadmin_is_pro()){
[379] Fix | Delete
return '';
[380] Fix | Delete
}
[381] Fix | Delete
[382] Fix | Delete
$msg = ' <sup style="font-size:11px;"><a href="'.COOKIEADMIN_PRO_URL.'" target="_blank" style="text-decoration:none; color:red;"><b>'.esc_html__('Pro', 'cookieadmin').'</b></a></sup>';
[383] Fix | Delete
[384] Fix | Delete
if(!empty($return)){
[385] Fix | Delete
return $msg;
[386] Fix | Delete
}else{
[387] Fix | Delete
echo wp_kses_post($msg);
[388] Fix | Delete
}
[389] Fix | Delete
[390] Fix | Delete
}
[391] Fix | Delete
}
[392] Fix | Delete
[393] Fix | Delete
[394] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function