'$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();
?>
Looking for some lighter moments and excitement in your lifetime? you will want to try local hook up sites out some casual hookups with local women today? casual hookups are a powerful way to get to know somebody better and also some fun. plus, they’re a terrific way to get out and fulfill new individuals. if you’re looking for some excitement that you experienced, casual hookups with local women may be the right solution for you. with many options available, you are certain to find the correct girl for an informal hookup. so what have you been waiting for? begin looking for local women that are looking for casual hookups today!
Find local women looking for hookups now
If you are looking for only a little excitement in your lifetime, you should undoubtedly give consideration to looking for local women looking for hookups. not only are you able to have a blast and explore your sexuality, but you can additionally satisfy brand new people and make some great connections. there are a great number of great places discover local women looking for hookups, so it’s really up to you in which you get. you can venture out to a club or bar, or you could try online dating services or chat rooms. whichever route you select, be sure that you be innovative and open-minded. there are a great number of great women nowadays that would like to have a great time with a brand new man. so don’t be afraid to give it an attempt!
Ready to locate regional hookups near you? join now
Finding regional hookups are a daunting task, however with the aid of the right tools, you possibly can make the procedure as simple as possible.one of the best ways to get local hookups is always to join a dating website like match.com.match.com is a niche site that’s created especially for dating, and contains a wide range of features that will make finding regional hookups a breeze.one of the greatest features of match.com is its google.you may use the search engine to find singles in your town that interested in fulfilling new individuals.you can also utilize the s.e. discover singles with similar passions to you.this is an excellent strategy for finding local hookups which can be compatible with your interests.another great feature of match.com is its graphical user interface.the interface is not hard to utilize and it’s also made to make finding neighborhood hookups effortless.you may also use the interface to locate singles that interested in meeting brand new individuals.you also can use the interface discover singles who have similar passions for you.this is a great way to find local hookups being compatible with your passions.finally, among the best top features of match.com is its individual base.the individual base of match.com is big and it’s also built to make finding local hookups simple.you also can utilize the user base to find singles who are enthusiastic about fulfilling new people.you may also make use of the user base to get singles that have similar interests for your requirements.this is a superb way to find neighborhood hookups which can be appropriate for your interests.if you are looking for regional hookups, then chances are you should truly join match.com.it is a site which created specifically for dating, and it has an array of features that will make finding neighborhood hookups a breeze.
Get started using the best local hookup site
Are you finding ways to have a blast and satisfy brand new individuals? if so, then chances are you should consider utilizing a nearby hookup website. these sites are perfect for people that are searching for a casual relationship or perhaps some fun. there are a lot of various neighborhood hookup internet sites around, and it can be hard to determine which one is the best available. that is why we chose to come up with this guide. in this essay, we are going to discuss the cool features of the greatest local hookup internet sites and how to choose the right one for you personally. first, you need to determine what style of relationship you are interested in. are you looking for a long-term relationship? are you looking for a one-time hookup? or have you been just shopping for some fun? once you’ve decided which type of relationship you are searching for, you should look at the different top features of different neighborhood hookup sites. some internet sites offer countless cool features, while others are more restricted. are you looking for somebody who is solitary? final, you should determine which city you are in. are you looking for a website which certain towards city? or are you looking for a niche site that’s nationwide? once you’ve determined many of these things, you’re willing to begin using a local hookup website.
Find regional hookups near you – get started now
Looking for a method to have some fun and meet new people? search no further than neighborhood hookups! these are casual encounters that can be had with individuals within vicinity, making them a terrific way to meet brand new individuals and have some lighter moments. finding a nearby hookup is not hard – all you need is a small amount of research. here are some ideas to enable you to get started:
1. use google maps to discover in which most of the hotspots are. this will provide advisable of where to go and whom to talk to. 2. usage social networking to see that is publishing about neighborhood hookups. this will offer you advisable of who’s trying to find a casual encounter and where to find them. 3. confer with your family and friends people. they might understand people who are searching for an area hookup. 4. join a dating website or app that specializes in local hookups. this may present a wider range of individuals to speak to and work out connections with. there are many how to find an area hookup, so do not be afraid to try something new!
Tips for a successful neighborhood hookup experience
If you’re looking for just a little fun and excitement in your lifetime, then you definitely must look into considering the local hookup scene. that is a powerful way to move out here and satisfy brand new individuals, without the need to worry about any such thing too severe. below are a few tips for an effective regional hookup experience. 1. remember to be upfront about what you’re looking for. this may help you avoid any potential misunderstandings. 2. anticipate to celebrate. this is certainly key, because if you should be lacking fun, you then’re perhaps not going to stay around for lengthy. 3. avoid being afraid to use brand new things. if you are feeling adventurous, do it. 4. be respectful of one’s partner. this is true of both hookup it self and people around you. 5. if you’re unsure exactly how things are likely to get, simply take it simple. if you follow these guidelines, you’re sure to have many fun.
Create your account now and begin hooking up
Creating an account now and beginning starting up is the better option to get going into the local lesbian dating scene. with so many people searching for love, it is no wonder that online dating sites is therefore popular. but what about the lesbian community? there are numerous great lesbian online dating sites on the market, but many individuals are hesitant to test them down simply because they don’t know the place to start. that is where creating a free account and just starting to attach is available in. by producing a merchant account on a lesbian dating site, you’ll be able to find plenty of prospective partners. not just that, but you’ll also be in a position to become familiar with them better. that is a great way to start building a relationship, and it will be lots of fun. if you’re searching for a method to get going inside local lesbian dating scene, then producing an account on a niche site like this is the greatest method to go.