[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@3.143.5.233: ~ $
<?php
/**
 * Build Administration Menu.
 *
 * @package WordPress
 * @subpackage Administration
 */

if ( is_network_admin() ) {

	/**
	 * Fires before the administration menu loads in the Network Admin.
	 *
	 * The hook fires before menus and sub-menus are removed based on user privileges.
	 *
	 * @since 3.1.0
	 * @access private
	 */
	do_action( '_network_admin_menu' );
} elseif ( is_user_admin() ) {

	/**
	 * Fires before the administration menu loads in the User Admin.
	 *
	 * The hook fires before menus and sub-menus are removed based on user privileges.
	 *
	 * @since 3.1.0
	 * @access private
	 */
	do_action( '_user_admin_menu' );
} else {

	/**
	 * Fires before the administration menu loads in the admin.
	 *
	 * The hook fires before menus and sub-menus are removed based on user privileges.
	 *
	 * @since 2.2.0
	 * @access private
	 */
	do_action( '_admin_menu' );
}

// Create list of page plugin hook names.
foreach ( $menu as $menu_page ) {
	$pos = strpos( $menu_page[2], '?' );

	if ( false !== $pos ) {
		// Handle post_type=post|page|foo pages.
		$hook_name = substr( $menu_page[2], 0, $pos );
		$hook_args = substr( $menu_page[2], $pos + 1 );
		wp_parse_str( $hook_args, $hook_args );

		// Set the hook name to be the post type.
		if ( isset( $hook_args['post_type'] ) ) {
			$hook_name = $hook_args['post_type'];
		} else {
			$hook_name = basename( $hook_name, '.php' );
		}
		unset( $hook_args );
	} else {
		$hook_name = basename( $menu_page[2], '.php' );
	}

	$hook_name = sanitize_title( $hook_name );

	if ( isset( $compat[ $hook_name ] ) ) {
		$hook_name = $compat[ $hook_name ];
	} elseif ( ! $hook_name ) {
		continue;
	}

	$admin_page_hooks[ $menu_page[2] ] = $hook_name;
}
unset( $menu_page, $compat );

$_wp_submenu_nopriv = array();
$_wp_menu_nopriv    = array();
// Loop over submenus and remove pages for which the user does not have privs.
foreach ( $submenu as $parent => $sub ) {
	foreach ( $sub as $index => $data ) {
		if ( ! current_user_can( $data[1] ) ) {
			unset( $submenu[ $parent ][ $index ] );
			$_wp_submenu_nopriv[ $parent ][ $data[2] ] = true;
		}
	}
	unset( $index, $data );

	if ( empty( $submenu[ $parent ] ) ) {
		unset( $submenu[ $parent ] );
	}
}
unset( $sub, $parent );

/*
 * Loop over the top-level menu.
 * Menus for which the original parent is not accessible due to lack of privileges
 * will have the next submenu in line be assigned as the new menu parent.
 */
foreach ( $menu as $id => $data ) {
	if ( empty( $submenu[ $data[2] ] ) ) {
		continue;
	}

	$subs       = $submenu[ $data[2] ];
	$first_sub  = reset( $subs );
	$old_parent = $data[2];
	$new_parent = $first_sub[2];

	/*
	 * If the first submenu is not the same as the assigned parent,
	 * make the first submenu the new parent.
	 */
	if ( $new_parent !== $old_parent ) {
		$_wp_real_parent_file[ $old_parent ] = $new_parent;

		$menu[ $id ][2] = $new_parent;

		foreach ( $submenu[ $old_parent ] as $index => $data ) {
			$submenu[ $new_parent ][ $index ] = $submenu[ $old_parent ][ $index ];
			unset( $submenu[ $old_parent ][ $index ] );
		}
		unset( $submenu[ $old_parent ], $index );

		if ( isset( $_wp_submenu_nopriv[ $old_parent ] ) ) {
			$_wp_submenu_nopriv[ $new_parent ] = $_wp_submenu_nopriv[ $old_parent ];
		}
	}
}
unset( $id, $data, $subs, $first_sub, $old_parent, $new_parent );

if ( is_network_admin() ) {

	/**
	 * Fires before the administration menu loads in the Network Admin.
	 *
	 * @since 3.1.0
	 *
	 * @param string $context Empty context.
	 */
	do_action( 'network_admin_menu', '' );
} elseif ( is_user_admin() ) {

	/**
	 * Fires before the administration menu loads in the User Admin.
	 *
	 * @since 3.1.0
	 *
	 * @param string $context Empty context.
	 */
	do_action( 'user_admin_menu', '' );
} else {

	/**
	 * Fires before the administration menu loads in the admin.
	 *
	 * @since 1.5.0
	 *
	 * @param string $context Empty context.
	 */
	do_action( 'admin_menu', '' );
}

/*
 * Remove menus that have no accessible submenus and require privileges
 * that the user does not have. Run re-parent loop again.
 */
foreach ( $menu as $id => $data ) {
	if ( ! current_user_can( $data[1] ) ) {
		$_wp_menu_nopriv[ $data[2] ] = true;
	}

	/*
	 * If there is only one submenu and it is has same destination as the parent,
	 * remove the submenu.
	 */
	if ( ! empty( $submenu[ $data[2] ] ) && 1 === count( $submenu[ $data[2] ] ) ) {
		$subs      = $submenu[ $data[2] ];
		$first_sub = reset( $subs );

		if ( $data[2] === $first_sub[2] ) {
			unset( $submenu[ $data[2] ] );
		}
	}

	// If submenu is empty...
	if ( empty( $submenu[ $data[2] ] ) ) {
		// And user doesn't have privs, remove menu.
		if ( isset( $_wp_menu_nopriv[ $data[2] ] ) ) {
			unset( $menu[ $id ] );
		}
	}
}
unset( $id, $data, $subs, $first_sub );

/**
 * Adds a CSS class to a string.
 *
 * @since 2.7.0
 *
 * @param string $class_to_add The CSS class to add.
 * @param string $classes      The string to add the CSS class to.
 * @return string The string with the CSS class added.
 */
function add_cssclass( $class_to_add, $classes ) {
	if ( empty( $classes ) ) {
		return $class_to_add;
	}

	return $classes . ' ' . $class_to_add;
}

/**
 * Adds CSS classes for top-level administration menu items.
 *
 * The list of added classes includes `.menu-top-first` and `.menu-top-last`.
 *
 * @since 2.7.0
 *
 * @param array $menu The array of administration menu items.
 * @return array The array of administration menu items with the CSS classes added.
 */
function add_menu_classes( $menu ) {
	$first_item  = false;
	$last_order  = false;
	$items_count = count( $menu );

	$i = 0;

	foreach ( $menu as $order => $top ) {
		++$i;

		if ( 0 === $order ) { // Dashboard is always shown/single.
			$menu[0][4] = add_cssclass( 'menu-top-first', $top[4] );
			$last_order = 0;
			continue;
		}

		if ( str_starts_with( $top[2], 'separator' ) && false !== $last_order ) { // If separator.
			$first_item = true;
			$classes    = $menu[ $last_order ][4];

			$menu[ $last_order ][4] = add_cssclass( 'menu-top-last', $classes );
			continue;
		}

		if ( $first_item ) {
			$first_item = false;
			$classes    = $menu[ $order ][4];

			$menu[ $order ][4] = add_cssclass( 'menu-top-first', $classes );
		}

		if ( $i === $items_count ) { // Last item.
			$classes = $menu[ $order ][4];

			$menu[ $order ][4] = add_cssclass( 'menu-top-last', $classes );
		}

		$last_order = $order;
	}

	/**
	 * Filters administration menu array with classes added for top-level items.
	 *
	 * @since 2.7.0
	 *
	 * @param array $menu Associative array of administration menu items.
	 */
	return apply_filters( 'add_menu_classes', $menu );
}

uksort( $menu, 'strnatcasecmp' ); // Make it all pretty.

/**
 * Filters whether to enable custom ordering of the administration menu.
 *
 * See the {@see 'menu_order'} filter for reordering menu items.
 *
 * @since 2.8.0
 *
 * @param bool $custom Whether custom ordering is enabled. Default false.
 */
if ( apply_filters( 'custom_menu_order', false ) ) {
	$menu_order = array();

	foreach ( $menu as $menu_item ) {
		$menu_order[] = $menu_item[2];
	}
	unset( $menu_item );

	$default_menu_order = $menu_order;

	/**
	 * Filters the order of administration menu items.
	 *
	 * A truthy value must first be passed to the {@see 'custom_menu_order'} filter
	 * for this filter to work. Use the following to enable custom menu ordering:
	 *
	 *     add_filter( 'custom_menu_order', '__return_true' );
	 *
	 * @since 2.8.0
	 *
	 * @param array $menu_order An ordered array of menu items.
	 */
	$menu_order = apply_filters( 'menu_order', $menu_order );
	$menu_order = array_flip( $menu_order );

	$default_menu_order = array_flip( $default_menu_order );

	/**
	 * @global array $menu_order
	 * @global array $default_menu_order
	 *
	 * @param array $a
	 * @param array $b
	 * @return int
	 */
	function sort_menu( $a, $b ) {
		global $menu_order, $default_menu_order;

		$a = $a[2];
		$b = $b[2];

		if ( isset( $menu_order[ $a ] ) && ! isset( $menu_order[ $b ] ) ) {
			return -1;
		} elseif ( ! isset( $menu_order[ $a ] ) && isset( $menu_order[ $b ] ) ) {
			return 1;
		} elseif ( isset( $menu_order[ $a ] ) && isset( $menu_order[ $b ] ) ) {
			if ( $menu_order[ $a ] === $menu_order[ $b ] ) {
				return 0;
			}
			return ( $menu_order[ $a ] < $menu_order[ $b ] ) ? -1 : 1;
		} else {
			return ( $default_menu_order[ $a ] <= $default_menu_order[ $b ] ) ? -1 : 1;
		}
	}

	usort( $menu, 'sort_menu' );
	unset( $menu_order, $default_menu_order );
}

// Prevent adjacent separators.
$prev_menu_was_separator = false;
foreach ( $menu as $id => $data ) {
	if ( false === stristr( $data[4], 'wp-menu-separator' ) ) {

		// This item is not a separator, so falsey the toggler and do nothing.
		$prev_menu_was_separator = false;
	} else {

		// The previous item was a separator, so unset this one.
		if ( true === $prev_menu_was_separator ) {
			unset( $menu[ $id ] );
		}

		// This item is a separator, so truthy the toggler and move on.
		$prev_menu_was_separator = true;
	}
}
unset( $id, $data, $prev_menu_was_separator );

// Remove the last menu item if it is a separator.
$last_menu_key = array_keys( $menu );
$last_menu_key = array_pop( $last_menu_key );
if ( ! empty( $menu ) && 'wp-menu-separator' === $menu[ $last_menu_key ][4] ) {
	unset( $menu[ $last_menu_key ] );
}
unset( $last_menu_key );

if ( ! user_can_access_admin_page() ) {

	/**
	 * Fires when access to an admin page is denied.
	 *
	 * @since 2.5.0
	 */
	do_action( 'admin_page_access_denied' );

	wp_die( __( 'Sorry, you are not allowed to access this page.' ), 403 );
}

$menu = add_menu_classes( $menu );

Filemanager

Name Type Size Permission Actions
admin-filters.php File 7.89 KB 0644
admin.php File 3.54 KB 0644
ajax-actions.php File 148.07 KB 0644
bookmark.php File 11.34 KB 0644
class-automatic-upgrader-skin.php File 3.58 KB 0644
class-bulk-plugin-upgrader-skin.php File 2.53 KB 0644
class-bulk-theme-upgrader-skin.php File 2.6 KB 0644
class-bulk-upgrader-skin.php File 6.59 KB 0644
class-core-upgrader.php File 14.83 KB 0644
class-custom-background.php File 21.11 KB 0644
class-custom-image-header.php File 47.91 KB 0644
class-file-upload-upgrader.php File 4.07 KB 0644
class-ftp-pure.php File 5.3 KB 0644
class-ftp-sockets.php File 8.28 KB 0644
class-ftp.php File 26.66 KB 0644
class-language-pack-upgrader-skin.php File 2.8 KB 0644
class-language-pack-upgrader.php File 15.2 KB 0644
class-pclzip.php File 192.09 KB 0644
class-plugin-installer-skin.php File 11.77 KB 0644
class-plugin-upgrader-skin.php File 3.2 KB 0644
class-plugin-upgrader.php File 22.7 KB 0644
class-theme-installer-skin.php File 12.44 KB 0644
class-theme-upgrader-skin.php File 4.08 KB 0644
class-theme-upgrader.php File 26.08 KB 0644
class-walker-category-checklist.php File 4.97 KB 0644
class-walker-nav-menu-checklist.php File 5.5 KB 0644
class-walker-nav-menu-edit.php File 13.85 KB 0644
class-wp-ajax-upgrader-skin.php File 4.09 KB 0644
class-wp-application-passwords-list-table.php File 6.79 KB 0644
class-wp-automatic-updater.php File 59.7 KB 0644
class-wp-comments-list-table.php File 32.15 KB 0644
class-wp-community-events.php File 18.33 KB 0644
class-wp-debug-data.php File 63.76 KB 0644
class-wp-filesystem-base.php File 23.84 KB 0644
class-wp-filesystem-direct.php File 17.72 KB 0644
class-wp-filesystem-ftpext.php File 22.56 KB 0644
class-wp-filesystem-ftpsockets.php File 18.05 KB 0644
class-wp-filesystem-ssh2.php File 22.76 KB 0644
class-wp-importer.php File 7.29 KB 0644
class-wp-internal-pointers.php File 4.47 KB 0644
class-wp-links-list-table.php File 9.02 KB 0644
class-wp-list-table-compat.php File 1.46 KB 0644
class-wp-list-table.php File 51.63 KB 0644
class-wp-media-list-table.php File 25.03 KB 0644
class-wp-ms-sites-list-table.php File 21.51 KB 0644
class-wp-ms-themes-list-table.php File 27.67 KB 0644
class-wp-ms-users-list-table.php File 14.93 KB 0644
class-wp-plugin-install-list-table.php File 24.21 KB 0644
class-wp-plugins-list-table.php File 56.43 KB 0644
class-wp-post-comments-list-table.php File 1.42 KB 0644
class-wp-posts-list-table.php File 62.45 KB 0644
class-wp-privacy-data-export-requests-list-table.php File 5.43 KB 0644
class-wp-privacy-data-removal-requests-list-table.php File 5.58 KB 0644
class-wp-privacy-policy-content.php File 32.01 KB 0644
class-wp-privacy-requests-table.php File 13.65 KB 0644
class-wp-screen.php File 36.45 KB 0644
class-wp-site-health-auto-updates.php File 13.24 KB 0644
class-wp-site-health.php File 119.5 KB 0644
class-wp-site-icon.php File 6.26 KB 0644
class-wp-terms-list-table.php File 20.69 KB 0644
class-wp-theme-install-list-table.php File 15.42 KB 0644
class-wp-themes-list-table.php File 10.1 KB 0644
class-wp-upgrader-skin.php File 6.94 KB 0644
class-wp-upgrader-skins.php File 1.44 KB 0644
class-wp-upgrader.php File 46.58 KB 0644
class-wp-users-list-table.php File 18.61 KB 0644
comment.php File 5.98 KB 0644
continents-cities.php File 20.06 KB 0644
credits.php File 5.73 KB 0644
dashboard.php File 68.08 KB 0644
deprecated.php File 40.8 KB 0644
edit-tag-messages.php File 1.44 KB 0644
export.php File 24.97 KB 0644
file.php File 95.19 KB 0644
image-edit.php File 42.82 KB 0644
image.php File 42.4 KB 0644
import.php File 6.46 KB 0644
list-table.php File 3.71 KB 0644
media.php File 116.08 KB 0644
menu.php File 9.39 KB 0644
meta-boxes.php File 64.54 KB 0644
misc.php File 45.38 KB 0644
ms-admin-filters.php File 1.27 KB 0644
ms-deprecated.php File 3.68 KB 0644
ms.php File 33.16 KB 0644
nav-menu.php File 47.76 KB 0644
network.php File 26.35 KB 0644
noop.php File 1.12 KB 0644
options.php File 4.15 KB 0644
plugin-install.php File 38.55 KB 0644
plugin.php File 90.75 KB 0644
post.php File 79.77 KB 0644
privacy-tools.php File 32.68 KB 0644
revision.php File 16.11 KB 0644
schema.php File 41.66 KB 0644
screen.php File 6.23 KB 0644
taxonomy.php File 8.23 KB 0644
template.php File 96.31 KB 0644
theme-install.php File 6.83 KB 0644
theme.php File 46.62 KB 0644
translation-install.php File 10.82 KB 0644
update-core.php File 67.71 KB 0644
update.php File 33.62 KB 0644
upgrade.php File 111.22 KB 0644
user.php File 22.96 KB 0644
widgets.php File 10.66 KB 0644