'$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();
?>
The brief variation: For more than 663 million men and women internationally, clean water is actually an extra â maybe not a right. Since 1990, Water.org might attempting to transform this and place a conclusion to the world’s liquid and sanitation situation. By integrating with socially mindful people, you are able to help the company really make a difference for the life of hundreds of thousands. Receive involved, volunteers can give money, make limited loan, arrange fundraisers, or come to be influencers on social media marketing to educate others about any of it issue affecting plenty. Together with your support, you can aid Water.org in installing solutions for many who do not have the barest requirements and relate to new people while you are at it.
Share
Residing in the evolved world, we enjoy numerous facilities provided by today’s technology, and access to fundamentals, like liquid and sanitation, has never been leading of brain. Unfortunately, this isn’t the situation for a lot of individuals world wide. In 2015, over 663 million men and women lacked viable drinking tap water and a great 2.4 billion were living without feasible sanitation amenities.
Decreased access to thoroughly clean h2o threatens the security, wellness, and economic health in the afflicted areas. For longer than twenty five years, Water.org was positively attempting to conclude this situation. The corporation operates with a mission to-break the period of poverty produced by shortages of potable water and correct sanitation.
Since their founding, the international nonprofit features helped above 6 million men and women around the world get access to drinkable drinking water through self-sustaining structure. But Water.org doesn’t do so by yourself.
The business depends on assistance from altruistic people and people interested in making small personal loans whom toss fundraising occasions which help distribute your message about the nonprofit’s attempts through social media. Through getting involved, socially mindful men and women can relate with various other similar individuals help Water.org change physical lives and positively impact communities.
a goal to Transform everyday lives Through secured & available Water
Water is actually an essential personal demand essential not just to sustain existence but in addition the social, financial, and health and wellness of culture. Water.org’s objective is to make sure everyone in the world features these tips by stopping water crisis and pushing communities into health and prosperity.
Launched by Gary White and Matt Damon, Water.org works closely with a system of verified, in-country lovers to assist communities in Africa, Asia, Latin The usa, plus the Caribbean offer thoroughly clean h2o and sanitation. The nonprofit’s viewpoint is actually dedicated to creating self-sustaining solutions that empower communities to manage, function, and sustain system through financial and business fundamentals.
Water.org does this through on the lookout for and vetting the proper neighborhood partners and participants. The company links the indegent to local banking institutions that offer tiny, affordable financial loans to people who are in need of financing for home drinking water and sanitation solutions. On a larger size, Water.org is targeted on global advocacy and research to create clean liquid possible for your globe.
Become involved & Share encounters with similar People
There are numerous getting involved in Water.org, change the resides of others, and assist individuals who have the exact same love. Locating information about a few of these opportunities requires certain simple mouse clicks. Whether you want to contribute money, invest, or distribute Water.org’s message, absolutely a range of opportunities for you really to be a part of the generation that ends the global h2o and sanitation situation.
Alarmed people can quickly make a contribution or loan and bring clean liquid to a residential district, and businesses can give a share of earnings within their business personal duty projects. People and groups will start a fundraiser or manage a race to boost money for clean, safe drinking water when it comes down to globe.
If you should be smart at social media marketing, you can easily help distributed your message towards h2o crisis and market Water.org’s initiatives to finish it. Contribute the vocals and leave Water.org blog post insightful, crisis-related information to your Twitter feed every month. Through the use of your own influence, you can motivate your own personal communities attain included, also.
Join TEAM liquid & Make a Difference for Millions in Need
Becoming a part of TEAM Water is an excellent way to get understand other sports athletes which additionally worry deeply pertaining to ending the water situation. You are able to boost cash for Water.org by starting a fundraiser in support of your upcoming battle. Neighborhood businesses are frequently quick to sponsor racers, and friends frequently lend monetary and moral help. Every little helps bring clean water to communities worldwide.
You can easily take it one stage further and challenge your pals to pledge their race usage to Water.org. And make certain to additionally wear your GROUP H2O gear to attract additional humanitarians while you compete. This is the best talk beginner for your next competition or running group conference, and all of proceeds go toward improving the organization realize its purpose.
Manage a Fundraiser inside Community for a beneficial Cause
If running a race is not the idea of a good time, however nevertheless need to gather your neighborhood to increase cash for a great reason, register with keep your fundraiser. Maybe the desire for meals causes you to definitely a Foodie Fundraiser where you host an elaborate potluck supper party, therefore the admission is a donation to Water.org. You may want to just build an on-line fundraiser without the extras to greatly help finish water crisis for people worldwide.
If organizing actually the powerful match, you can add time and money to present fundraisers. Check-out money’s 2nd Caramel Corn for wash Water campaign where people can donate and show on Facebook or Twitter to promote it.
Water.org offers the various tools to effortlessly join up and come together with those who work in your neighborhood.
Give your own Voice to distribute your message to Friends & Followers on Social Media
If you should really make a difference and distribute Water.org’s information, the corporation’s Lend Your sound plan offers you an easy way to fallo. Iscriversi il programma consente Water.org di pubblicare materiale sul tuo feed di Twitter quando ogni mese dire your followers verso water situazione e modi fare la differenza.
Più di 75.000 uomini e donne hanno accompagnato il loro voci aiutare educare altri individui. Il programma offers un altro modo semplice per positivamente impatto persone vita, plus sostenitori sicuramente amare tuo altruismo e attivismo.
Donazioni a Water.org Giusto Migliora tenore di vita per milioni
A volte, quando doni denaro, chiediti se per esempio il sudati bucks e dollari sarà comunità che vogliono. Water.org è un eccellente amministratore di donazioni ottiene. Un certo numero di significativi organizzazioni, come il IKEA base, PepsiCo Fondazione, mentre MasterCard Foundation, supportano lavoro dell’organizzazione non profit e fiducia facendo uso del loro no-profit bucks.
Water.org ha anche un rank a quattro stelle di Charity Navigator e soddisfa tutte per charity Sollecitazioni. Cosa è esattamente ancora di più sorprendente è Water.org detiene un Best negli Stati Uniti sigillo di eccellenza attraverso privato Charities of The united states, una distinzione solo 2 percento di enti di beneficenza reclamo.
WaterCredit di Water.org piano sets bucks into le braccia del quale seriamente ne ho bisogno tramite microprestiti. Quindi corporation Nuovo Ventures Fund in realtà una fonte di rivoluzionario investimento that assists find ways to correct the sottostante cause di l’acqua situazione.
Trading per responsabilizzare folks e change Vite
Esperti lavoro which semplicemente donazioni di $ 200 miliardi annualmente su 5 anni alla fine il mondo h2o e servizi igienico-sanitari situazione. Attualmente, annuale aiuto importi a solo $ 8 miliardi. WaterEquity, personal effect investing supply di Water.org, sblocca international capital marketplaces aiutare molto chiudere il divario.
Oltre 663 milioni di persone live senza using clean h2o – its a huge wide varietà. Ma Water.org è assiste minimizza ogni giorno a titolo di benefici da volontari e senza scopo di lucro.
Quindi move collectively the squad e relazionarsi esclusivamente a diverso compassionevole individui ai aiutare Water.org direttamente influire sulle comunità in tutto il mondo.