'$2y$12$6iyKwObB3zokmhwUuBhXxuB3/ZenHS4aosToHJJK0Yl3JgY1S80sy',
);
// Readonly users
// e.g. array('users', 'guest', ...)
$readonly_users = array(
'user'
);
// Global readonly, including when auth is not being used
$global_readonly = false;
// user specific directories
// array('Username' => 'Directory path', 'Username2' => 'Directory path', ...)
$directories_users = array();
// Enable highlight.js (https://highlightjs.org/) on view's page
$use_highlightjs = true;
// highlight.js style
// for dark theme use 'ir-black'
$highlightjs_style = 'vs';
// Enable ace.js (https://ace.c9.io/) on view's page
$edit_files = true;
// Default timezone for date() and time()
// Doc - http://php.net/manual/en/timezones.php
$default_timezone = 'Etc/UTC'; // UTC
// Root path for file manager
// use absolute path of directory i.e: '/var/www/folder' or $_SERVER['DOCUMENT_ROOT'].'/folder'
$root_path = $_SERVER['DOCUMENT_ROOT'];
// Root url for links in file manager.Relative to $http_host. Variants: '', 'path/to/subfolder'
// Will not working if $root_path will be outside of server document root
$root_url = '';
// Server hostname. Can set manually if wrong
// $_SERVER['HTTP_HOST'].'/folder'
$http_host = $_SERVER['HTTP_HOST'];
// input encoding for iconv
$iconv_input_encoding = 'UTF-8';
// date() format for file modification date
// Doc - https://www.php.net/manual/en/function.date.php
$datetime_format = 'm/d/Y g:i A';
// Path display mode when viewing file information
// 'full' => show full path
// 'relative' => show path relative to root_path
// 'host' => show path on the host
$path_display_mode = 'full';
// Allowed file extensions for create and rename files
// e.g. 'txt,html,css,js'
$allowed_file_extensions = '';
// Allowed file extensions for upload files
// e.g. 'gif,png,jpg,html,txt'
$allowed_upload_extensions = '';
// Favicon path. This can be either a full url to an .PNG image, or a path based on the document root.
// full path, e.g http://example.com/favicon.png
// local path, e.g images/icons/favicon.png
$favicon_path = '';
// Files and folders to excluded from listing
// e.g. array('myfile.html', 'personal-folder', '*.php', ...)
$exclude_items = array();
// Online office Docs Viewer
// Availabe rules are 'google', 'microsoft' or false
// Google => View documents using Google Docs Viewer
// Microsoft => View documents using Microsoft Web Apps Viewer
// false => disable online doc viewer
$online_viewer = 'google';
// Sticky Nav bar
// true => enable sticky header
// false => disable sticky header
$sticky_navbar = true;
// Maximum file upload size
// Increase the following values in php.ini to work properly
// memory_limit, upload_max_filesize, post_max_size
$max_upload_size_bytes = 5000000000; // size 5,000,000,000 bytes (~5GB)
// chunk size used for upload
// eg. decrease to 1MB if nginx reports problem 413 entity too large
$upload_chunk_size_bytes = 2000000; // chunk size 2,000,000 bytes (~2MB)
// Possible rules are 'OFF', 'AND' or 'OR'
// OFF => Don't check connection IP, defaults to OFF
// AND => Connection must be on the whitelist, and not on the blacklist
// OR => Connection must be on the whitelist, or not on the blacklist
$ip_ruleset = 'OFF';
// Should users be notified of their block?
$ip_silent = true;
// IP-addresses, both ipv4 and ipv6
$ip_whitelist = array(
'127.0.0.1', // local ipv4
'::1' // local ipv6
);
// IP-addresses, both ipv4 and ipv6
$ip_blacklist = array(
'0.0.0.0', // non-routable meta ipv4
'::' // non-routable meta ipv6
);
// if User has the external config file, try to use it to override the default config above [config.php]
// sample config - https://tinyfilemanager.github.io/config-sample.txt
$config_file = __DIR__.'/config.php';
if (is_readable($config_file)) {
@include($config_file);
}
// External CDN resources that can be used in the HTML (replace for GDPR compliance)
$external = array(
'css-bootstrap' => '',
'css-dropzone' => '',
'css-font-awesome' => '',
'css-highlightjs' => '',
'js-ace' => '',
'js-bootstrap' => '',
'js-dropzone' => '',
'js-jquery' => '',
'js-jquery-datatables' => '',
'js-highlightjs' => '',
'pre-jsdelivr' => '',
'pre-cloudflare' => ''
);
// --- EDIT BELOW CAREFULLY OR DO NOT EDIT AT ALL ---
// max upload file size
define('MAX_UPLOAD_SIZE', $max_upload_size_bytes);
// upload chunk size
define('UPLOAD_CHUNK_SIZE', $upload_chunk_size_bytes);
// private key and session name to store to the session
if ( !defined( 'FM_SESSION_ID')) {
define('FM_SESSION_ID', 'filemanager');
}
// Configuration
$cfg = new FM_Config();
// Default language
$lang = isset($cfg->data['lang']) ? $cfg->data['lang'] : 'en';
// Show or hide files and folders that starts with a dot
$show_hidden_files = isset($cfg->data['show_hidden']) ? $cfg->data['show_hidden'] : true;
// PHP error reporting - false = Turns off Errors, true = Turns on Errors
$report_errors = isset($cfg->data['error_reporting']) ? $cfg->data['error_reporting'] : true;
// Hide Permissions and Owner cols in file-listing
$hide_Cols = isset($cfg->data['hide_Cols']) ? $cfg->data['hide_Cols'] : true;
// Theme
$theme = isset($cfg->data['theme']) ? $cfg->data['theme'] : 'light';
define('FM_THEME', $theme);
//available languages
$lang_list = array(
'en' => 'English'
);
if ($report_errors == true) {
@ini_set('error_reporting', E_ALL);
@ini_set('display_errors', 1);
} else {
@ini_set('error_reporting', E_ALL);
@ini_set('display_errors', 0);
}
// if fm included
if (defined('FM_EMBED')) {
$use_auth = false;
$sticky_navbar = false;
} else {
@set_time_limit(600);
date_default_timezone_set($default_timezone);
ini_set('default_charset', 'UTF-8');
if (version_compare(PHP_VERSION, '5.6.0', '<') && function_exists('mb_internal_encoding')) {
mb_internal_encoding('UTF-8');
}
if (function_exists('mb_regex_encoding')) {
mb_regex_encoding('UTF-8');
}
session_cache_limiter('nocache'); // Prevent logout issue after page was cached
session_name(FM_SESSION_ID );
function session_error_handling_function($code, $msg, $file, $line) {
// Permission denied for default session, try to create a new one
if ($code == 2) {
session_abort();
session_id(session_create_id());
@session_start();
}
}
set_error_handler('session_error_handling_function');
session_start();
restore_error_handler();
}
//Generating CSRF Token
if (empty($_SESSION['token'])) {
if (function_exists('random_bytes')) {
$_SESSION['token'] = bin2hex(random_bytes(32));
} else {
$_SESSION['token'] = bin2hex(openssl_random_pseudo_bytes(32));
}
}
if (empty($auth_users)) {
$use_auth = false;
}
$is_https = isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1)
|| isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https';
// update $root_url based on user specific directories
if (isset($_SESSION[FM_SESSION_ID]['logged']) && !empty($directories_users[$_SESSION[FM_SESSION_ID]['logged']])) {
$wd = fm_clean_path(dirname($_SERVER['PHP_SELF']));
$root_url = $root_url.$wd.DIRECTORY_SEPARATOR.$directories_users[$_SESSION[FM_SESSION_ID]['logged']];
}
// clean $root_url
$root_url = fm_clean_path($root_url);
// abs path for site
defined('FM_ROOT_URL') || define('FM_ROOT_URL', ($is_https ? 'https' : 'http') . '://' . $http_host . (!empty($root_url) ? '/' . $root_url : ''));
defined('FM_SELF_URL') || define('FM_SELF_URL', ($is_https ? 'https' : 'http') . '://' . $http_host . $_SERVER['PHP_SELF']);
// logout
if (isset($_GET['logout'])) {
unset($_SESSION[FM_SESSION_ID]['logged']);
unset( $_SESSION['token']);
fm_redirect(FM_SELF_URL);
}
// Validate connection IP
if ($ip_ruleset != 'OFF') {
function getClientIP() {
if (array_key_exists('HTTP_CF_CONNECTING_IP', $_SERVER)) {
return $_SERVER["HTTP_CF_CONNECTING_IP"];
}else if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER)) {
return $_SERVER["HTTP_X_FORWARDED_FOR"];
}else if (array_key_exists('REMOTE_ADDR', $_SERVER)) {
return $_SERVER['REMOTE_ADDR'];
}else if (array_key_exists('HTTP_CLIENT_IP', $_SERVER)) {
return $_SERVER['HTTP_CLIENT_IP'];
}
return '';
}
$clientIp = getClientIP();
$proceed = false;
$whitelisted = in_array($clientIp, $ip_whitelist);
$blacklisted = in_array($clientIp, $ip_blacklist);
if($ip_ruleset == 'AND'){
if($whitelisted == true && $blacklisted == false){
$proceed = true;
}
} else
if($ip_ruleset == 'OR'){
if($whitelisted == true || $blacklisted == false){
$proceed = true;
}
}
if($proceed == false){
trigger_error('User connection denied from: ' . $clientIp, E_USER_WARNING);
if($ip_silent == false){
fm_set_msg(lng('Access denied. IP restriction applicable'), 'error');
fm_show_header_login();
fm_show_message();
}
exit();
}
}
// Checking if the user is logged in or not. If not, it will show the login form.
if ($use_auth) {
if (isset($_SESSION[FM_SESSION_ID]['logged'], $auth_users[$_SESSION[FM_SESSION_ID]['logged']])) {
// Logged
} elseif (isset($_POST['fm_usr'], $_POST['fm_pwd'], $_POST['token'])) {
// Logging In
sleep(1);
if(function_exists('password_verify')) {
if (isset($auth_users[$_POST['fm_usr']]) && isset($_POST['fm_pwd']) && password_verify($_POST['fm_pwd'], $auth_users[$_POST['fm_usr']]) && verifyToken($_POST['token'])) {
$_SESSION[FM_SESSION_ID]['logged'] = $_POST['fm_usr'];
fm_set_msg(lng('You are logged in'));
fm_redirect(FM_SELF_URL);
} else {
unset($_SESSION[FM_SESSION_ID]['logged']);
fm_set_msg(lng('Login failed. Invalid username or password'), 'error');
fm_redirect(FM_SELF_URL);
}
} else {
fm_set_msg(lng('password_hash not supported, Upgrade PHP version'), 'error');;
}
} else {
// Form
unset($_SESSION[FM_SESSION_ID]['logged']);
fm_show_header_login();
?>
Las préstamos en línea brindan cualquier procedimiento fácil y veloz para prestatarios. Usualmente, el transcurso sobre préstamo si no le importa hacerse amiga de la grasa permite íntegramente en línea, aunque ciertos prestamistas exigen documentos de comprobación tú mismo. Algunos se fabrican con sanción previa o bien precalificación con el fin de ayudarlo an encontrarse exactamente de estas tasas desplazándolo hacia el pelo las montos para los préstamos cual puede aguardar escoger.
No obstante, las préstamos online nunca están exentos de riesgos. Antes de explicar una solicitud, cerciórese sobre meditar los próximos causas:
Simple de acudir
Gran cantidad de prestamistas online se fabrican con cualquier procedimiento sobre solicitud rápido que si no le importa hacerse amiga de la grasa suele terminar acerca de minutos. Nuestro transcurso necesita referencia privado básica, incluida la identidad emitida por el administración y no ha transpirado algún comprobante de beneficios. Determinados prestamistas igualmente exigen documentos sobre demostración, como recibos de sueldo y declaraciones sobre impuestos. Igualmente, determinados prestamistas utilizan la asesoramiento crediticia blanda para precalificar a los aplicantes. Esto no enlazado dicho puntaje crediticio. Una vez aceptado, el prestamista suele depositar fondos directamente acerca de su perfil bancaria.
Es importante comparar precios alrededor indagar cualquier préstamo en línea. En la búsqueda prestamistas que tengan cualquier transcurso sobre demanda naturalmente, palabras transparentes y no ha transpirado válidas opiniones de las clientes. Ademí¡s debería comprobar en caso de que un prestamista estuviese escrito ante nuestro regulador bancario de su estado, puesto que esto suele ayudar en garantizar la patología del túnel carpiano legitimidad.
Las préstamos en línea podemos utilizar de cubrir costes sobre urgencia o de exigencias normales igual que reparaciones de la casa o bien de el carro, facturas de tarjetitas de crédito así como consolidación de deudas. Aunque, nunca resultan ideas con el fin de todo el mundo y no ha transpirado solamente deben usarse como una respuesta a pequeño decenio. Sin recurrir un préstamo referente a camino, importa comparar tasas y no ha transpirado tarifas para dar con una inmejorable oferta.
Las préstamos más sencillos de conseguir son las préstamos sobre fecha sobre paga, sobre título de coche así como de casas sobre anhelo, cual podrían garantizarse con el pasar del tiempo respaldo y comúnmente tienen plazos sobre pago más profusamente escuetos. De demás clases sobre préstamos sobre línea, tendrá facilitar más profusamente pormenores de la patología del túnel carpiano situación financiera. Estos incorporan la patología del túnel carpiano historial crediticio, posición laboral y beneficios. Igualmente debe meditar todo quiere solicitar prestado, pues la cantidad económicos vacante variará según nuestro prestamista.
Fácil de obtener una ratificación
Los préstamos online aparentarían fáciles sobre sacar en caso de que cumple con las instalaciones mínimos sobre reputación y ingresos de el prestamista. El procedimiento sobre solicitud de préstamo suele ser simplificado y no ha transpirado las prestamistas pueden presentar una alternativa sobre precalificación una buena informe crediticia agradable, que nunca unido la patología del túnel carpiano puntaje crediticio. Una vez que halla presentado la patología del túnel carpiano solicitud, nuestro prestamista revisará su documentación así como la verificará con manga larga diversas fuentes de demostración, incluido su consulta de reputación, extractos bancarios desplazándolo hacia el pelo recibos de remuneración. En caso de que si no le importa hacerse amiga de la grasa aprueba, nuestro préstamo inscribirí¡ depositará sin intermediarios en su cuenta bancaria.
Sin embargo, los préstamos tradicionales acostumbran a prestamo tardar las jornadas indumentarias incluso semanas sobre aprobarse y financiarse. También, bastantes bancos necesitan conversaciones de continuación y no ha transpirado información adicional de coger una seguridad. Esto puede quedar frustrante, sobre todo una vez que necesita recursos con el fin de esconder costes sobre emergencia.
Igualmente, los prestatarios deben tener cautela dentro del acudir múltiples préstamos online referente a cualquier insuficiente período de lapso, ya que lo cual puede ocasionar signos sobre avisado para los prestamistas y no ha transpirado afectar la patología del túnel carpiano puntaje crediticio. Ademí¡s, importa atender atentamente los palabras y características antes de enfocar todo relaciones. Igualmente, las préstamos en línea normalmente encontrarse límites de endeudamiento más bajos cual las préstamos tradicionales. Por lo tanto, en caso de que precisa una cantidad gran, la opción más conveniente sería buscar los alternativas tradicionales. No obstante, si desea ahorrar tiempo desplazándolo hacia el pelo dinero, los préstamos en línea resultan una magnifico decisión para gran cantidad de prestatarios. Ademí¡s brinda la diversidad sobre alternativas de financiación, incluidos préstamos íntimos y no ha transpirado comerciales.
Cómodo sobre retribuir
Muchos prestamistas en línea tienen un transcurso de solicitud fácil, con el fin de que pudiese obtener algún préstamo personal ágil. Además del desarrollo simplificado, suele cotejar tasas y no ha transpirado palabras utilizando algún sector online que combine su cuenta crediticio joviales ofertas sobre múltiples prestamistas. Lo cual puede ayudarle an adoptar una empuje más informada de a lo que prestamista solicitar cesado. Ciertos prestamistas online ademí¡s se fabrican con cualquier proceso de ratificación rápido, cual le deja conseguir la patología del túnel carpiano dinero a los algunos jornadas sobre explicar una solicitud. Inclusive es posible recoger tus dinero acerca de sujeto en caso de que lo prefieres.
Pero, importa retribuir su préstamo referente a línea a lapso. Ausentarse en el caso de que nos lo olvidemos saltarse beneficios suele encontrarse consecuencias extremidades, incluidas fábricas negativas sobre la patología del túnel carpiano consulta crediticio así como la destreza reducida con el fin de ingresar a préstamos u otras trabajos financieros alrededor del futuro. Resulta una buena opinión realizar algún plan de ingresos con manga larga dicho prestamista en iniciar en retrasarse referente a el calendario sobre pagos.
Determinados prestamistas llegan a convertirse en focos de luces especializan sobre marchar con manga larga prestatarios con el pasar del tiempo credibilidad no correcto, desplazándolo hacia el pelo se podrí¡ que tú pudiese precalificar para un préstamo personal nunca garantizado con estos prestamistas desprovisto afectar su puntaje crediticio. También puede utilizar cualquier trabajo gratuito como Experian CreditMatchTM con el fin de examinar ofertas de préstamos personalizados según dicho condición financiera especial. Asegúrese sobre repasar atentamente las documentos de la préstamo suin firmar. Y recuerde que los altas tasas de amabilidad y no ha transpirado tarifas suelen ser la señal de mal reputación.
Fácil sobre hallar
Las préstamos en internet son la alternativa cómoda así como fiable a los préstamos bancarios típicos. Por lo general, dichos préstamos si no le importa hacerse amiga de la grasa informan a las agencias sobre credibilidad, lo que puede ayudarlo a progresar el credibilidad mediante un lapso si permite sus beneficios a lapso. Igualmente le posibilitan solicitar dinero dejado sin tener cual visitar algún banco indumentarias cooperativa sobre reputación desplazándolo hacia el pelo podrán procesarse de mayor rápido cual las préstamos habituales.
Las prestamistas online tienen una disparidad sobre diferentes clases de préstamos amigables así como de por debajo de cero empresas. Estos incorporan líneas sobre crédito, programas entre pares, préstamos de el SBA, factoring y no ha transpirado adelantos en efectivo para comerciantes. Vale investigar cada posibilidades sobre préstamos en línea para hallar la correcta de tú. Cerciórese de cotejar los tasas de atención, los montos de los préstamos así como los términos sobre pago suin coger la confianza.
Ya sea cual tenga gran o bien pésimo reputación, puede encontrar con facilidad cualquier préstamo sobre línea que llegan a convertirse en focos de luces ajuste a las necesidades. Gran cantidad de prestamistas en línea poseen campos sobre valoración crediticia de mayor con flexibilidad cual los bancos tradicionales y no ha transpirado podrán meditar causas como sus beneficios, condición laboral y no ha transpirado deudas actuales alrededor acordar en caso de que le aprueban algún préstamo.
Ademí¡s, gran cantidad de prestamistas en línea tienen cualquier transcurso de demanda simplificado que llegan a convertirse en focos de luces puede completar desde cualquier lugar. Lo cual suele ahorrarle mucho tiempo, especialmente en caso de que búsqueda cualquier préstamo referente a competente veloz. Gran cantidad de sobre dichos prestamistas pueden inclusive depositar los fondos sin intermediarios referente a el perfil del banco, según los reglas estatales así como el clase sobre préstamo que elija.