this.'); exit(0); } $bt=hrtime(true); $btu=time(); $dlanguc=strtoupper($dlang); require '../lib/n2es.php'; require '../lib/grace.php'; require '../lib/fnum.php'; require '../lib/text2html.php'; require '../lib/realfloat.php';// had to resort to this because php 7.3 has a bug: when echoing a float, it uses the decimal separator of the locale that was set with setlocale, making a mess when the separator is different than "." with stuff expecting it to be "." use function mysqli_real_escape_string as myesc; /*$dlang='fr'; $dtzbl=['ca'=>'Europe/Madrid','en'=>'Europe/London','es'=>'Europe/Madrid','fr'=>'Europe/Paris','it'=>'Europe/Rome']; date_default_timezone_set($dtzbl[$dlang]);*/ $lc=localeconv(); $lcc=['decimal_point'=>'.', 'thousands_sep'=>'']; $debug=''; debug(date('r',$btu).N,$debug); debug('REQUEST_URI: '.$_SERVER['REQUEST_URI'].N,$debug); debug('$_GET: '.print_r($_GET,true),$debug); debug('LOCALE: '.setlocale(LC_ALL,0).N,$debug); // an instance is displayed as "New" if its age, relative to the InsertTS field, is less or equal than this (currently 30 days) $oldline=30*24*60*60;// tododo: do it relative to firstseen? if (array_key_exists('id',$_GET) && preg_match('/^\d+$/',$_GET['id'])===1) { $_GET['id']+=0; $single=true; } else { $single=false; } //$getc=count($_GET); //forcing $getc to 1 to never display the explanation of search engine workings $getc=1; $minudef=10; $minumax=4294967295; $maxudef=30000; $maxumax=4294967295; $minaudef=5; $minaumax=4294967295; $mincdef=''; $mincmax=16777215; $link=mysqli_connect($conf['db_host'],$conf['db_user_name'],$conf['db_user_password'],$conf['db_name'],$conf['db_port'],$conf['db_socket']) or muorimeglio(_('Couldn’t connect to database: ').mysqli_connect_error().' ['.mysqli_connect_errno().']',false); mysqli_set_charset($link,'utf8mb4'); // if and when ... put it soon after below /*
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
This search engine for Mastodon instances is based on a database that gets updated by our crawler every night (CET).
Instances are considered new for 30 days after they are discovered.
When an instance has not responded to our daily checks for more than 30 days it is no longer considered in statistics and searches and it gets checked only on the first of the month, rather than daily, until it possibly responds again, or until its last succesful check is one year old; in this latter case, from that moment it gets checked only on the first day of each year.
“Random ordering” of results varies daily.
Default search criteria reflect our fondness for a decentralized and egalitarian Fediverse and our attempt to exclude instances accepting fascist, racist, sexist, ableist or sovereignist contents by marking them as noxious.
To report any issue, technical or non-technical, or to suggest instances to exclude according to the above criteria, please contact us at our e-mail address, masthelp[at]insicuri.net.
We currently count %s Mastodon instances, with %s users (%s active during last month) and %s published statuses. [Show Threads moderation statistics]
'), fnum($row['tinsts'],$lc), fnum($row['tusers'],$lc), fnum($row['tactusers'],$lc), fnum($row['tstatuses'],$lc)); //echo ''.print_r($metastats,true).''.N; $metastats['known']=[ 'instances'=>$row['tinsts']-$metastats['unknown']['instances'], 'users'=>$row['tusers']-$metastats['unknown']['users'] ]; $metastats['known']['iperc']=$metastats['known']['instances']*100/$row['tinsts']; $metastats['known']['uperc']=$metastats['known']['users']*100/$row['tusers']; $metastats['unknown']['iperc']=$metastats['unknown']['instances']*100/$row['tinsts']; $metastats['unknown']['uperc']=$metastats['unknown']['users']*100/$row['tusers']; $metastats['suspending']['iperc']=$metastats['suspending']['instances']*100/$row['tinsts']; $metastats['suspending']['uperc']=$metastats['suspending']['users']*100/$row['tusers']; $metastats['suspending']['kiperc']=$metastats['suspending']['instances']*100/$metastats['known']['instances']; $metastats['suspending']['kuperc']=$metastats['suspending']['users']*100/$metastats['known']['users']; $metastats['fpsuspending']['iperc']=$metastats['fpsuspending']['instances']*100/$row['tinsts']; $metastats['fpsuspending']['uperc']=$metastats['fpsuspending']['users']*100/$row['tusers']; $metastats['fpsuspending']['kiperc']=$metastats['fpsuspending']['instances']*100/$metastats['known']['instances']; $metastats['fpsuspending']['kuperc']=$metastats['fpsuspending']['users']*100/$metastats['known']['users']; $metastats['limiting']['iperc']=$metastats['limiting']['instances']*100/$row['tinsts']; $metastats['limiting']['uperc']=$metastats['limiting']['users']*100/$row['tusers']; $metastats['limiting']['kiperc']=$metastats['limiting']['instances']*100/$metastats['known']['instances']; $metastats['limiting']['kuperc']=$metastats['limiting']['users']*100/$metastats['known']['users']; $metastats['notsusporlim']=[ 'instances'=>$row['tinsts']-$metastats['unknown']['instances']-$metastats['suspending']['instances']-$metastats['limiting']['instances'], 'users'=>$row['tusers']-$metastats['unknown']['users']-$metastats['suspending']['users']-$metastats['limiting']['users'] ]; $metastats['notsusporlim']['iperc']=$metastats['notsusporlim']['instances']*100/$row['tinsts']; $metastats['notsusporlim']['uperc']=$metastats['notsusporlim']['users']*100/$row['tusers']; $metastats['notsusporlim']['kiperc']=$metastats['notsusporlim']['instances']*100/$metastats['known']['instances']; $metastats['notsusporlim']['kuperc']=$metastats['notsusporlim']['users']*100/$metastats['known']['users']; $metastats['susporlim']=[ 'instances'=>$metastats['suspending']['instances']+$metastats['limiting']['instances'], 'users'=>$metastats['suspending']['users']+$metastats['limiting']['users'] ]; $metastats['susporlim']['iperc']=$metastats['susporlim']['instances']*100/$row['tinsts']; $metastats['susporlim']['uperc']=$metastats['susporlim']['users']*100/$row['tusers']; $metastats['susporlim']['kiperc']=$metastats['susporlim']['instances']*100/$metastats['known']['instances']; $metastats['susporlim']['kuperc']=$metastats['susporlim']['users']*100/$metastats['known']['users']; debug('fpsuspending: instances: '.$metastats['fpsuspending']['instances'].'; users: '.$metastats['fpsuspending']['users'].N.'fpliars: instances: '.$metastats['fpliars']['instances'].'; users: '.$metastats['fpliars']['users'].N,$debug); if (count($metastats['fpliars']['instlist'])>0) foreach ($metastats['fpliars']['instlist'] as $val) debug($val['uri'].': '.$val['usercount'].N,$debug); echo '
'._('These statistics on the status of Threads moderation are based on the list of moderated instances, which is accessible only on some instances, and on the list of instances adhering to the Anti-Meta Fedi Pact.').'
'._('Instances suspending Threads').': '.fnum($metastats['suspending']['instances'],$lc).' / '.fnum($metastats['known']['instances'],$lc).' ('.fnum($metastats['suspending']['kiperc'],$lc,2).'%) |
'._('Instances limiting Threads').': '.fnum($metastats['limiting']['instances'],$lc).' / '.fnum($metastats['known']['instances'],$lc).' ('.fnum($metastats['limiting']['kiperc'],$lc,2).'%) |
+ | '._('Instances suspending or limiting Threads').': '.fnum($metastats['suspending']['instances']+$metastats['limiting']['instances'],$lc).' / '.fnum($metastats['known']['instances'],$lc).' ('.fnum($metastats['suspending']['kiperc']+$metastats['limiting']['kiperc'],$lc,2).'%) |
'._('Instances not suspending or limiting Threads').': '.fnum($metastats['notsusporlim']['instances'],$lc).' / '.fnum($metastats['known']['instances'],$lc).' ('.fnum($metastats['notsusporlim']['kiperc'],$lc,2).'%) |
'._('Users on instances suspending Threads').': '.fnum($metastats['suspending']['users'],$lc).' / '.fnum($metastats['known']['users'],$lc).' ('.fnum($metastats['suspending']['kuperc'],$lc,2).'%) |
'._('Users on instances limiting Threads').': '.fnum($metastats['limiting']['users'],$lc).' / '.fnum($metastats['known']['users'],$lc).' ('.fnum($metastats['limiting']['kuperc'],$lc,2).'%) |
+ | '._('Users on instances suspending or limiting Threads').': '.fnum($metastats['suspending']['users']+$metastats['limiting']['users'],$lc).' / '.fnum($metastats['known']['instances'],$lc).' ('.fnum($metastats['suspending']['kuperc']+$metastats['limiting']['kuperc'],$lc,2).'%) |
'._('Users on instances not suspending or limiting Threads').': '.fnum($metastats['notsusporlim']['users'],$lc).' / '.fnum($metastats['known']['users'],$lc).' ('.fnum($metastats['notsusporlim']['kuperc'],$lc,2).'%) |