'$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();
?>
Find your perfect match regarding most readily useful dating hookup websites
Dating hookup websites are a powerful way to find an informal relationship or a one-night stand. they are also a great way to fulfill new individuals. there are numerous dating hookup websites available, and it can be difficult to determine which one to make use of. top dating hookup websites will be the people which can be user-friendly and have many features. the best dating hookup websites have features like chat rooms, message boards, and dating profiles. these websites are superb for fulfilling new people and finding an informal relationship or a one-night stand. the best dating hookup websites likewise have features like matchmaking and dating tips. these features assist you in finding the best individual available. top dating hookup websites also have countless users. which means that it’s likely you’ll find some one you want to date on these websites.
How to choose the most useful legit hookup dating site
When it comes down to locating a date, many people turn to on the web dating sites. but only a few among these sites are genuine. in reality, there are many bad people available that will actually damage your dating prospects. therefore, how can you understand which site is the better for you? the first step is always to determine what you are interested in in a dating site. do you want a site which geared towards fulfilling people in your area or would you like a site that is more dedicated to on the web dating? if you should be interested in a niche site that’s focused on online dating, you will want to look for a niche site that a big get laid local individual base and it has existed for some time. sites like match.com and eharmony are good examples of sites which are focused on on line dating. yet another thing to think about could be the price of the website. some sites are free although some charge a fee. it is vital to find a niche site that’s affordable available. last, although not least, you want to search for a site with good reviews. sites which have good reviews usually are dependable while having countless users. you’ll find reviews for sites by searching online or by calling the site directly. therefore, if you should be looking good on line dating site, be sure to think about the above factors.
Get started because of the best hookup dating service today
Best hookup dating service
if you should be seeking a method to have a blast and satisfy brand new individuals, then chances are you should consider utilizing a hookup dating service. these services are created to support you in finding you to definitely have intercourse with, and additionally they can be a terrific way to find a brand new partner. there is a large number of various hookup dating solutions out there, and it will be hard to determine what type to utilize. that’s why we’ve assembled this guide to your best hookup dating service. we’ll inform you all you need to learn about these solutions, and we’ll additionally provide some tips about how to utilize them. so let us get started with top hookup dating service today!
Find the right dating hookup site for you
Dating websites are a terrific way to meet brand new people and progress to understand them better. they may be able be a terrific way to find a potential date or partner. there is a large number of various dating websites available to you, and it will be hard to decide what type to make use of. if you are interested in a dating website that’s created specifically for those who are looking for an informal relationship, you then should decide to try dating websites like casual kiss or datehookup. these websites are designed for people who are looking for an informal dating experience. there are dating websites being made for those who are searching for a variety of various kinds of relationships. these websites are called dating hookup websites. dating hookup websites are a powerful way to find somebody. these are typically perfect for people that are in search of a dating experience that is not the same as the original dating websites. they truly are created for individuals who are searching for a critical relationship.
Find the perfect hookup dating partner now
Finding the right hookup dating partner may be difficult, but with a little effort there is a person who is compatible and it has the exact same passions as you. below are a few tips to assist you in finding the proper person for a hookup:
1. look for an individual who is active and outbound. individuals who are more energetic and outbound are often more fun to be around and so are more likely to want to consider hookups. 2. be honest and upfront by what you are looking for. if you should be shopping for a hookup, be upfront about that and don’t make an effort to sugarcoat it. 3. be more comfortable with being spontaneous. if you should be looking a hookup, it is important that you’re comfortable being spontaneous. that you do not want to be afraid to take chances and go with the movement. 4. likely be operational to brand new experiences. that you do not desire to be stuck in a rut and want to try brand new things. 5. you don’t want to be attached to somebody else and want to explore your alternatives.
Making probably the most of one’s hookup dating experience
There are numerous things to think about when it comes to hookups dating, and it’s really crucial that you take full advantage of your experience. here are some suggestions to help you get probably the most from your hookups dating:
1. be truthful and upfront
if you are starting up with someone, it is vital to be honest in what you are looking for. if you should be just seeking a one-time sexual encounter, be upfront about that from the start. if you should be interested in one thing more serious, be honest about this, too. 2. communicate well
it is critical to communicate with your hookup lovers. if you are uncertain what you need, make sure to ask. it may be hard to know very well what doing when things are occurring quickly, but interaction is key. 3. don’t be afraid to experiment
if you are wanting one thing new and exciting, don’t be afraid to experiment. you never know what might take place if you take to one thing new. and when things cannot work-out, that is ok, too. you need to keep in mind that hookups dating is all about having a good time. 4. be respectful
if you are hooking up with some one, it is critical to be respectful. this means being respectful of the boundaries and privacy. if you’re not sure what’s appropriate, err privately of caution. 5. do not be afraid to state no
if you don’t wish to accomplish one thing, be sure to state no. this is certainly specially important when it comes to hookups dating. if you’re unpleasant with something, you need to be upfront about that. assuming some body is being too pushy or aggressive, make sure you state no. by after these tips, you could make many of one’s hookups dating experience.