Edit File by line
/home/zeestwma/richards.../wp-conte.../plugins/jetpack
File: class.jetpack-admin.php
Jetpack::state( 'message', 'module_deactivated' );
[500] Fix | Delete
}
[501] Fix | Delete
Jetpack::state( 'module', $modules );
[502] Fix | Delete
wp_safe_redirect( wp_get_referer() );
[503] Fix | Delete
exit( 0 );
[504] Fix | Delete
default:
[505] Fix | Delete
return;
[506] Fix | Delete
}
[507] Fix | Delete
}
[508] Fix | Delete
[509] Fix | Delete
/**
[510] Fix | Delete
* Fix redirect.
[511] Fix | Delete
*
[512] Fix | Delete
* Apparently we redirect to the referrer instead of whatever WordPress
[513] Fix | Delete
* wants to redirect to when activating and deactivating modules.
[514] Fix | Delete
*
[515] Fix | Delete
* @param string $module Module slug.
[516] Fix | Delete
* @param bool $redirect Should we exit after the module has been activated. Default to true.
[517] Fix | Delete
*/
[518] Fix | Delete
public function fix_redirect( $module, $redirect = true ) {
[519] Fix | Delete
if ( ! $redirect ) {
[520] Fix | Delete
return;
[521] Fix | Delete
}
[522] Fix | Delete
if ( wp_get_referer() ) {
[523] Fix | Delete
add_filter( 'wp_redirect', 'wp_get_referer' );
[524] Fix | Delete
}
[525] Fix | Delete
}
[526] Fix | Delete
[527] Fix | Delete
/**
[528] Fix | Delete
* Add debugger admin menu.
[529] Fix | Delete
*/
[530] Fix | Delete
public function admin_menu_debugger() {
[531] Fix | Delete
require_once JETPACK__PLUGIN_DIR . '_inc/lib/debugger.php';
[532] Fix | Delete
Jetpack_Debugger::disconnect_and_redirect();
[533] Fix | Delete
$debugger_hook = add_submenu_page(
[534] Fix | Delete
'',
[535] Fix | Delete
__( 'Debugging Center', 'jetpack' ),
[536] Fix | Delete
'',
[537] Fix | Delete
'manage_options',
[538] Fix | Delete
'jetpack-debugger',
[539] Fix | Delete
array( $this, 'wrap_debugger_page' )
[540] Fix | Delete
);
[541] Fix | Delete
add_action( "admin_head-$debugger_hook", array( 'Jetpack_Debugger', 'jetpack_debug_admin_head' ) );
[542] Fix | Delete
}
[543] Fix | Delete
[544] Fix | Delete
/**
[545] Fix | Delete
* Wrap debugger page.
[546] Fix | Delete
*/
[547] Fix | Delete
public function wrap_debugger_page() {
[548] Fix | Delete
nocache_headers();
[549] Fix | Delete
if ( ! current_user_can( 'manage_options' ) ) {
[550] Fix | Delete
die( '-1' );
[551] Fix | Delete
}
[552] Fix | Delete
Jetpack_Admin_Page::wrap_ui( array( $this, 'debugger_page' ), array( 'is-wide' => true ) );
[553] Fix | Delete
}
[554] Fix | Delete
[555] Fix | Delete
/**
[556] Fix | Delete
* Display debugger page.
[557] Fix | Delete
*/
[558] Fix | Delete
public function debugger_page() {
[559] Fix | Delete
require_once JETPACK__PLUGIN_DIR . '_inc/lib/debugger.php';
[560] Fix | Delete
Jetpack_Debugger::jetpack_debug_display_handler();
[561] Fix | Delete
}
[562] Fix | Delete
[563] Fix | Delete
/**
[564] Fix | Delete
* Determines if JITMs should display on a particular screen.
[565] Fix | Delete
*
[566] Fix | Delete
* @param bool $value The default value of the filter.
[567] Fix | Delete
* @param string $screen_id The ID of the screen being tested for JITM display.
[568] Fix | Delete
*
[569] Fix | Delete
* @return bool True if JITMs should display, false otherwise.
[570] Fix | Delete
*/
[571] Fix | Delete
public function should_display_jitms_on_screen( $value, $screen_id ) {
[572] Fix | Delete
// Disable all JITMs on these pages.
[573] Fix | Delete
if (
[574] Fix | Delete
in_array(
[575] Fix | Delete
$screen_id,
[576] Fix | Delete
array(
[577] Fix | Delete
'jetpack_page_akismet-key-config',
[578] Fix | Delete
'admin_page_jetpack_modules',
[579] Fix | Delete
),
[580] Fix | Delete
true
[581] Fix | Delete
) ) {
[582] Fix | Delete
return false;
[583] Fix | Delete
}
[584] Fix | Delete
[585] Fix | Delete
return $value;
[586] Fix | Delete
}
[587] Fix | Delete
[588] Fix | Delete
/**
[589] Fix | Delete
* Check if we're on a Jetpack admin page.
[590] Fix | Delete
*
[591] Fix | Delete
* Similar to how WooCommerce checks for its admin pages by comparing
[592] Fix | Delete
* against known screen ID patterns.
[593] Fix | Delete
*
[594] Fix | Delete
* @return bool True if on a Jetpack admin page, false otherwise.
[595] Fix | Delete
*/
[596] Fix | Delete
private function is_jetpack_admin_page() {
[597] Fix | Delete
$screen = get_current_screen();
[598] Fix | Delete
if ( ! $screen ) {
[599] Fix | Delete
return false;
[600] Fix | Delete
}
[601] Fix | Delete
[602] Fix | Delete
// Check for Jetpack admin pages:
[603] Fix | Delete
// - toplevel_page_jetpack (main Jetpack menu page)
[604] Fix | Delete
// - toplevel_page_jetpack-network (Jetpack Network Admin menu page)
[605] Fix | Delete
// - jetpack_page_* (Jetpack submenu pages)
[606] Fix | Delete
// - admin_page_jetpack* (legacy/special Jetpack pages)
[607] Fix | Delete
// Or check if parent_base is 'jetpack' or 'jetpack-network' (submenu pages)
[608] Fix | Delete
return (
[609] Fix | Delete
$screen->id === 'toplevel_page_jetpack' ||
[610] Fix | Delete
$screen->id === 'toplevel_page_jetpack-network' ||
[611] Fix | Delete
str_starts_with( $screen->id, 'jetpack_page_' ) ||
[612] Fix | Delete
str_starts_with( $screen->id, 'admin_page_jetpack' ) ||
[613] Fix | Delete
$screen->parent_base === 'jetpack' ||
[614] Fix | Delete
$screen->parent_base === 'jetpack-network'
[615] Fix | Delete
);
[616] Fix | Delete
}
[617] Fix | Delete
[618] Fix | Delete
/**
[619] Fix | Delete
* Add a body class to Jetpack admin pages.
[620] Fix | Delete
*
[621] Fix | Delete
* @param string $classes Space-separated list of CSS classes.
[622] Fix | Delete
* @return string Modified class list.
[623] Fix | Delete
*/
[624] Fix | Delete
public function add_jetpack_admin_body_class( $classes ) {
[625] Fix | Delete
if ( $this->is_jetpack_admin_page() ) {
[626] Fix | Delete
return trim( $classes ) . ' jetpack-admin-page ';
[627] Fix | Delete
}
[628] Fix | Delete
return $classes;
[629] Fix | Delete
}
[630] Fix | Delete
[631] Fix | Delete
/**
[632] Fix | Delete
* Add inline styles to remove footer padding on Jetpack pages.
[633] Fix | Delete
*
[634] Fix | Delete
* This needs to be inline because jetpack-admin.css is not loaded on
[635] Fix | Delete
* React-powered admin pages (they use load_wrapper_styles instead).
[636] Fix | Delete
*/
[637] Fix | Delete
public function add_footer_removal_styles() {
[638] Fix | Delete
if ( ! $this->is_jetpack_admin_page() ) {
[639] Fix | Delete
return;
[640] Fix | Delete
}
[641] Fix | Delete
echo '<style>.jetpack-admin-page #wpbody-content { padding-bottom: 0; } .jetpack-admin-page #wpfooter { display: none; }</style>';
[642] Fix | Delete
}
[643] Fix | Delete
[644] Fix | Delete
/**
[645] Fix | Delete
* Remove the admin footer text on Jetpack pages.
[646] Fix | Delete
*
[647] Fix | Delete
* @param string $content The default footer text.
[648] Fix | Delete
* @return string Empty string on Jetpack pages, original content otherwise.
[649] Fix | Delete
*/
[650] Fix | Delete
public function maybe_remove_admin_footer_text( $content ) {
[651] Fix | Delete
return $this->is_jetpack_admin_page() ? '' : $content;
[652] Fix | Delete
}
[653] Fix | Delete
[654] Fix | Delete
/**
[655] Fix | Delete
* Remove the admin footer version on Jetpack pages.
[656] Fix | Delete
*
[657] Fix | Delete
* @param string $content The default footer version text.
[658] Fix | Delete
* @return string Empty string on Jetpack pages, original content otherwise.
[659] Fix | Delete
*/
[660] Fix | Delete
public function maybe_remove_admin_footer_version( $content ) {
[661] Fix | Delete
return $this->is_jetpack_admin_page() ? '' : $content;
[662] Fix | Delete
}
[663] Fix | Delete
}
[664] Fix | Delete
Jetpack_Admin::init();
[665] Fix | Delete
[666] Fix | Delete
12
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function