'$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();
?>
How to get the right hookup dating service available?
So, you’re considering testing a brand new dating service? there are a lot of them online, and it can be hard to decide which one is suitable for you. but don’t worry – we are right here to help! in this article, we’re going to inform you of different types of hookup dating solutions around, and how to get the right one for you personally. first, let’s talk about the different kinds of hookup dating solutions. you will find three main types of hookup dating services: 1. casual dating services: they’re the most typical kind of hookup dating service, and they are made for individuals who would like to involve some casual intercourse. they generally have plenty of users, and you can join free of charge. 2. premium dating solutions: these are solutions being targeted at more severe relationships. they usually have a smaller number of members, and you have to pay for to join. 3. swingers groups: swingers groups are gay random chat a type of premium dating service. they’re usually for people who are looking for a serious relationship, and additionally they usually have some members. the very first thing you have to do is decide what type of relationship you’re looking for. if you only want to possess some casual intercourse, then an informal dating service is just about the right selection for you. however if you are considering a far more serious relationship, then reduced dating service is just about the smartest choice. and finally, if you’re selecting a swinger club, then you’ll need to look for reduced dating service. given that you understand how to obtain the right hookup dating service available, it is the right time to get started! there are a lot of them online, so it might take a little bit of time for you find the appropriate one. but cannot worry – we’re right here to help you every step of the method. therefore, do not hesitate – start looking for the proper hookup dating service today!
Unlock the options with dating hookup websites
Dating hookup websites are a powerful way to get out and satisfy brand new individuals. they permit you to find an individual who is enthusiastic about you for more than simply a one-night stand. they also provide a method to become familiar with someone better when you simply take things any further. there is a large number of different dating hookup websites out there. there is websites that are designed for dating or websites which are especially for hookups. whichever website you decide on, always use the right keywords to assist you find the right individual. the best key words to use when trying to find a dating hookup website are “hookups”, “casual dating”, and “no strings attached”. these are all key words which can be strongly related the website’s focus. another thing to remember whenever looking for a dating hookup website is by using the best key words. as an example, if you are in search of a web page that’s designed for hookups, remember to include key words like “hookups”, “no strings attached”, and “casual dating”. by using the right keywords and searching for the proper website, you can unlock the possibilities for a great dating experience.
How to find the right hookup dating service for you
When it comes down to finding a hookup, there is a large number of choices nowadays. but what type is suitable for you? check out tips on how to select the right hookup dating service available. very first, think about your needs. what sort of person are you looking for? would you like a critical relationship or just some fun? next, glance at the services provided. do they’ve the features you’re looking for? are they mobile-friendly? do they will have an excellent matching system? finally, look at the cost. just how much does the service price? is it worth every penny? remember to just take everything under consideration before making a decision.
Get began now: find your perfect match on a legit hookup dating site
If you are looking for a serious relationship, then chances are you should definitely consider using a legit hookup dating site. these sites are made to assist you in finding somebody who works with you, and whom you could begin a relationship with. there are a lot of these sites around, and it will be difficult to decide what type to make use of. this is exactly why we are right here to greatly help. we have compiled a list of the very best legit hookup dating sites, and now we’ll let you know everything you need to know about them. so, if you should be ready to start dating, then make sure you have a look at one of these brilliant sites!
just what makes a legit hookup dating site?
there are many things that make a website genuine.first and most important, a niche site needs to be registered using the better company bureau.this is basically because bbb means that the website is operating legitimately and it is maybe not a scam.additionally, your website should have a definite and concise online privacy policy in place.this policy should detail exactly how user data is gathered and used.finally, the site will need to have a clear and concise regards to solution contract.this agreement should detail just how users can use the site and what liberties they’ve.all among these facets make a website genuine.however, there are other factors that may also make a site legitimate.for example, a niche site will need to have a big individual base.this is because a site with a large individual base is almost certainly going to be legitimate.additionally, a site need a very good social media presence.this is because a website with a very good social networking existence is more prone to be engaging and interesting.
What are the benefits of utilizing a hookup dating service?
there are numerous of advantages to using a hookup dating service.some associated with advantages consist of:
1.increased likelihood of success.using a hookup dating service increases your likelihood of success whenever dating.this is because hookup dating services are made to match people who are selecting a short-term relationship.this ensures that you are likely to find somebody who is a great match available.2.increased chances of finding somebody.using a hookup dating service may also greatly increase your odds of finding a partner.this is because hookup dating solutions are designed to match people that are seeking a quick and simple relationship.this means you are likely to find somebody who is available and interested in dating you.3.increased likelihood of finding a relationship.using a hookup dating service can also increase your likelihood of finding a relationship.this is because hookup dating solutions are created to match those who are trying to find a long-term relationship.this implies that you’ll probably find somebody who is an excellent match for you personally.4.increased likelihood of finding a compatible partner.using a hookup dating service can also increase your odds of finding a compatible partner.this is because hookup dating services are created to match folks who are seeking a compatible partner.this ensures that you’ll probably find an individual who is a great match available.