Don’t use “black” as derogatory (“blacklist” -> “list of noxious instances”, etc.)
This commit is contained in:
parent
045515dd7d
commit
1a6446e82b
11 changed files with 80 additions and 77 deletions
|
@ -252,13 +252,13 @@ function truncn($num,$tab,$col,$ctx) {
|
|||
);
|
||||
$context=stream_context_create($contextopts);*/
|
||||
|
||||
$blacklist=array();
|
||||
echo('Carico la blacklist dal database...'.N);
|
||||
$res=mysqli_query($link,'SELECT * FROM Blacklist')
|
||||
$noxlist=array();
|
||||
echo('Carico la lista delle istanze nocive dal database...'.N);
|
||||
$res=mysqli_query($link,'SELECT * FROM Noxious')
|
||||
or mexit(__LINE__.': '.mysqli_error($link).N,3);
|
||||
echo(mysqli_num_rows($res).' istanze nella blacklist.'.N);
|
||||
echo(mysqli_num_rows($res).' istanze nella lista delle istanze nocive.'.N);
|
||||
while($row=mysqli_fetch_assoc($res)) {
|
||||
$blacklist[$row['Domain']]=$row;
|
||||
$noxlist[$row['Domain']]=$row;
|
||||
}
|
||||
|
||||
function pgdatetomy($pgdate) {
|
||||
|
@ -288,9 +288,9 @@ function blpgdumplinetomy($line) {
|
|||
}
|
||||
|
||||
if (!$riprendi) {
|
||||
$blacklistnew=array();
|
||||
$noxlistnew=array();
|
||||
$insts=array();
|
||||
echo('Carico le istanze di riferimento per le blacklist...'.N);
|
||||
echo('Carico le istanze di riferimento per le liste delle istanze nocive...'.N);
|
||||
$res=mysqli_query($link,'SELECT Domain FROM StartNodes')
|
||||
or mexit(__LINE__.': '.mysqli_error($link).N,3);
|
||||
echo(mysqli_num_rows($res).' istanze di riferimento.'.N);
|
||||
|
@ -310,7 +310,7 @@ if (!$riprendi) {
|
|||
} else {
|
||||
echo('ERRORE: '.$buf['cont'].N);
|
||||
}*/
|
||||
echo('Recupero la blacklist di «'.$row['Domain'].'» ... ');
|
||||
echo('Recupero la lista delle istanze nocive di «'.$row['Domain'].'» ... ');
|
||||
$buf=@getfc('https://'.$row['Domain'].'/domain_blocks.txt',$opts['timeout']);
|
||||
if ($buf['cont']!==false) {
|
||||
echo('OK :-)'.N);
|
||||
|
@ -318,10 +318,10 @@ if (!$riprendi) {
|
|||
foreach ($buf as $line) {
|
||||
if (preg_match('/(^#.*$)|(^\s*$)/',$line)===0) {
|
||||
$brow=blpgdumplinetomy($line);
|
||||
if (!array_key_exists($brow['Domain'],$blacklist)) {
|
||||
$blacklistnew[$brow['Domain']]=$brow;
|
||||
if (!array_key_exists($brow['Domain'],$noxlist)) {
|
||||
$noxlistnew[$brow['Domain']]=$brow;
|
||||
}
|
||||
$blacklist[$brow['Domain']]=$brow;
|
||||
$noxlist[$brow['Domain']]=$brow;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
@ -329,12 +329,12 @@ if (!$riprendi) {
|
|||
}
|
||||
}
|
||||
|
||||
foreach ($blacklistnew as $row) {
|
||||
if (!willtrunc($row['Domain'],'Blacklist','Domain')) {
|
||||
if (!$opts['dryrun']) mysqli_query($link,'INSERT INTO Blacklist (ID, Domain, CreatedAt, ModifiedAt, Severity, RejectMedia, RejectReports, PrivateComment, PublicComment) VALUES (NULL, \''.myesc($link,$row['Domain']).'\', \''.myesc($link,$row['CreatedAt']).'\', \''.myesc($link,$row['ModifiedAt']).'\', \''.myesc($link,$row['Severity']).'\', \''.myesc($link,$row['RejectMedia']).'\', \''.myesc($link,$row['RejectReports']).'\', NULL, \''.myesc($link,$row['Domain']).'\')')
|
||||
foreach ($noxlistnew as $row) {
|
||||
if (!willtrunc($row['Domain'],'Noxious','Domain')) {
|
||||
if (!$opts['dryrun']) mysqli_query($link,'INSERT INTO Noxious (ID, Domain, CreatedAt, ModifiedAt, Severity, RejectMedia, RejectReports, PrivateComment, PublicComment) VALUES (NULL, \''.myesc($link,$row['Domain']).'\', \''.myesc($link,$row['CreatedAt']).'\', \''.myesc($link,$row['ModifiedAt']).'\', \''.myesc($link,$row['Severity']).'\', \''.myesc($link,$row['RejectMedia']).'\', \''.myesc($link,$row['RejectReports']).'\', NULL, \''.myesc($link,$row['Domain']).'\')')
|
||||
or mexit(__LINE__.': '.mysqli_error($link).N,3);
|
||||
} else {
|
||||
echo('Non ho potuto inserire «'.$row['Domain'].'» nella tabella delle istanze blacklistate perché il dominio è troppo lungo per il campo corrispondente nel DB.');
|
||||
echo('Non ho potuto inserire «'.$row['Domain'].'» nella tabella delle istanze nocive perché il dominio è troppo lungo per il campo corrispondente nel DB.');
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -371,10 +371,10 @@ if (!$riprendi) {
|
|||
|
||||
sort($insts);
|
||||
// shuffle($insts);
|
||||
ksort($blacklist);
|
||||
ksort($blacklistnew);
|
||||
ksort($noxlist);
|
||||
ksort($noxlistnew);
|
||||
echo('Istanze recuperate: '.count($insts).N);
|
||||
echo('Istanze blacklistate: '.count($blacklist).', di cui '.count($blacklistnew).' nuove aggiunte al DB.'.N);
|
||||
echo('Istanze nocive: '.count($noxlist).', di cui '.count($noxlistnew).' nuove aggiunte al DB.'.N);
|
||||
|
||||
$instsf=@fopen($instsjfp,'w')
|
||||
or mexit('Non ho potuto aprire in scrittura il file «'.$instsjfp.'».'.N,1);
|
||||
|
@ -795,10 +795,10 @@ while ($i<$cinsts) {
|
|||
}
|
||||
} else {
|
||||
echo('«'.$dom.'» non risponde e non è nel database, la aggiungo.'.N);
|
||||
(array_key_exists($dom,$blacklist)) ? $black='1' : $black='0';
|
||||
(array_key_exists($dom,$noxlist)) ? $noxious='1' : $noxious='0';
|
||||
// "New=0" e nessun FirstSeen (quindi NULL) perché non è nuova e non è vista per la prima volta finché non risponde la prima volta
|
||||
if (!$opts['dryrun']) {
|
||||
mysqli_query($link,'INSERT INTO Instances SET New=0, Good=0, Chosen=0, Visible=0, Blacklisted='.$black.', URI=\''.myesc($link,$dom).'\', LastCheckOk=0') or mexit(__LINE__.': '.mysqli_error($link).N,3);
|
||||
mysqli_query($link,'INSERT INTO Instances SET New=0, Good=0, Chosen=0, Visible=0, Noxious='.$noxious.', URI=\''.myesc($link,$dom).'\', LastCheckOk=0') or mexit(__LINE__.': '.mysqli_error($link).N,3);
|
||||
$instid=mysqli_insert_id($link);
|
||||
mysqli_query($link,'INSERT INTO InstChecks SET InstID='.$instid.', Time='.$now.', Status=0') or mexit(__LINE__.': '.mysqli_error($link).N,3);
|
||||
} else {
|
||||
|
@ -827,9 +827,9 @@ while ($i<$cinsts) {
|
|||
$qok++;
|
||||
if (!is_null($ismast))
|
||||
($ismast) ? $ismast=1 : $ismast=0;
|
||||
$instrow=array('ID'=>null, 'FirstSeen'=>null, 'IsMastodon'=>$ismast, 'Dead'=>0, 'New'=>0, 'Good'=>0, 'Chosen'=>0, 'Priority'=>null, 'Visible'=>0, 'Blacklisted'=>0, 'URI'=>null, 'Title'=>null, 'ShortDesc'=>null, 'LongDesc'=>null, 'OurDesc'=>null, 'OurDescEN'=> null, 'LocalityID'=>null, 'OurLangsLock'=>0, 'Email'=>null, 'Software'=>null, 'Version'=>null, 'UserCount'=>null, 'StatusCount'=>null, 'DomainCount'=>null, 'ActiveUsersMonth'=>null, 'ActiveUsersHalfYear'=>null, 'Thumb'=>null, 'RegOpen'=>null, 'RegReqApproval'=>null, 'MaxTootChars'=>null, 'AdmAccount'=>null, 'AdmDisplayName'=>null, 'AdmCreatedAt'=>null, 'AdmNote'=>null, 'AdmURL'=>null, 'AdmAvatar'=>null, 'AdmHeader'=>null, 'LastCheckOk'=>1, 'GuestID'=>null, 'LastGuestEdit'=>null);
|
||||
if (array_key_exists($info['uri'],$blacklist))
|
||||
$instrow['Blacklisted']=1;
|
||||
$instrow=array('ID'=>null, 'FirstSeen'=>null, 'IsMastodon'=>$ismast, 'Dead'=>0, 'New'=>0, 'Good'=>0, 'Chosen'=>0, 'Priority'=>null, 'Visible'=>0, 'Noxious'=>0, 'URI'=>null, 'Title'=>null, 'ShortDesc'=>null, 'LongDesc'=>null, 'OurDesc'=>null, 'OurDescEN'=> null, 'LocalityID'=>null, 'OurLangsLock'=>0, 'Email'=>null, 'Software'=>null, 'Version'=>null, 'UserCount'=>null, 'StatusCount'=>null, 'DomainCount'=>null, 'ActiveUsersMonth'=>null, 'ActiveUsersHalfYear'=>null, 'Thumb'=>null, 'RegOpen'=>null, 'RegReqApproval'=>null, 'MaxTootChars'=>null, 'AdmAccount'=>null, 'AdmDisplayName'=>null, 'AdmCreatedAt'=>null, 'AdmNote'=>null, 'AdmURL'=>null, 'AdmAvatar'=>null, 'AdmHeader'=>null, 'LastCheckOk'=>1, 'GuestID'=>null, 'LastGuestEdit'=>null);
|
||||
if (array_key_exists($info['uri'],$noxlist))
|
||||
$instrow['Noxious']=1;
|
||||
$instrow['URI']=$info['uri'];
|
||||
if (akeavinn('title',$info))
|
||||
$instrow['Title']=nempty(truncs($info['title'],'Instances','Title','«'.$instrow['URI'].'»'));
|
||||
|
@ -885,8 +885,8 @@ while ($i<$cinsts) {
|
|||
}
|
||||
|
||||
$whynot=array();
|
||||
if ($instrow['Blacklisted']==1)
|
||||
$whynot[]='è nella blacklist';
|
||||
if ($instrow['Noxious']==1)
|
||||
$whynot[]='è nociva';
|
||||
if (is_null($instrow['RegOpen'])) {
|
||||
$whynot[]='non se ne conosce lo stato delle registrazioni (aperte/chiuse)';
|
||||
} elseif ($instrow['RegOpen']==0) {
|
||||
|
|
|
@ -21,7 +21,7 @@ define('N',"\n");
|
|||
$opts=array(
|
||||
'setold'=>false,
|
||||
'setold_new_period'=>30*24*60*60,// se un'istanza è nuova, dopo 30 giorni non lo è più
|
||||
'setblack'=>false,
|
||||
'setnoxious'=>false,
|
||||
'shuffle'=>false,
|
||||
'updstats'=>false,
|
||||
'clean'=>false,
|
||||
|
@ -40,9 +40,9 @@ $help='mustool.php
|
|||
AZIONI
|
||||
setold
|
||||
setta New=0 per le istanze che non sono più nuove.
|
||||
setblack
|
||||
Setta Blacklisted=1 per le istanze presenti nella blacklist,
|
||||
Blacklisted=0 per quelle che non lo sono.
|
||||
setnoxious
|
||||
Setta Noxious=1 nella tabella Instances per le istanze presenti nella
|
||||
tabella Noxious, Noxious=0 per quelle che non lo sono.
|
||||
shuffle
|
||||
Randomizza la lista delle istanze (i valori della colonna RPos).
|
||||
updstats
|
||||
|
@ -76,9 +76,9 @@ for ($i=1; $i<$argc; $i++) {
|
|||
} elseif ($argv[$i]=='setold') {
|
||||
$dosome=true;
|
||||
$opts['setold']=true;
|
||||
} elseif ($argv[$i]=='setblack') {
|
||||
} elseif ($argv[$i]=='setnoxious') {
|
||||
$dosome=true;
|
||||
$opts['setblack']=true;
|
||||
$opts['setnoxious']=true;
|
||||
} elseif ($argv[$i]=='shuffle') {
|
||||
$dosome=true;
|
||||
$opts['shuffle']=true;
|
||||
|
@ -122,12 +122,12 @@ if ($opts['setold']) {
|
|||
echo('fatto! Righe coinvolte: '.mysqli_affected_rows($link).N);
|
||||
}
|
||||
|
||||
if ($opts['setblack']) {
|
||||
echo('Setto Blacklisted=1 per le istanze blacklistate ... ');
|
||||
mysqli_query($link,'UPDATE Instances SET Blacklisted=1 WHERE URI IN (SELECT Domain FROM Blacklist)') or mexit(__LINE__.': '.mysqli_error($link).N,2);
|
||||
if ($opts['setnoxious']) {
|
||||
echo('Setto Noxious=1 nella tabella Instances per le istanze listate nella tabella Noxious ... ');
|
||||
mysqli_query($link,'UPDATE Instances SET Noxious=1 WHERE URI IN (SELECT Domain FROM Noxious)') or mexit(__LINE__.': '.mysqli_error($link).N,2);
|
||||
echo('fatto! Righe coinvolte: '.mysqli_affected_rows($link).N);
|
||||
echo('Setto Blacklisted=0 per le istanze non blacklistate ... ');
|
||||
mysqli_query($link,'UPDATE Instances SET Blacklisted=0 WHERE URI NOT IN (SELECT Domain FROM Blacklist)') or mexit(__LINE__.': '.mysqli_error($link).N,2);
|
||||
echo('Setto Noxious=0 nella tabella Instances per le istanze non listate nella tabella Noxious ... ');
|
||||
mysqli_query($link,'UPDATE Instances SET Noxious=0 WHERE URI NOT IN (SELECT Domain FROM Noxious)') or mexit(__LINE__.': '.mysqli_error($link).N,2);
|
||||
echo('fatto! Righe coinvolte: '.mysqli_affected_rows($link).N);
|
||||
}
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ echo('</nav>
|
|||
<h4>'._('Translation').'</h4>
|
||||
<p>'._('Please help us make this site better by contributing to its translation on <a href="https://hosted.weblate.org/projects/mastodon-help/site/">Weblate</a>! :-)').'</p>
|
||||
<h4>'._('Reporting problems').'</h4>
|
||||
<p>'._('You can report any problem you may experience with the site (bugs, wrong translations, instances we should blacklist in our search engine because they accept fascist / racist / sexist / ableist / sovereignist contents) to us at <span class="magt">masthelp[at]insicuri.net</span>.').'</p>
|
||||
<p>'._('You can report any problem you may experience with the site (bugs, wrong translations, instances we should exclude by default in our search engine because they accept fascist / racist / sexist / ableist / sovereignist contents) to us at <span class="magt">masthelp[at]insicuri.net</span>.').'</p>
|
||||
</section>
|
||||
</div>
|
||||
</div>'.N);
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
--- Contenuto ---
|
||||
|
||||
- rinominare "blacklist" in qualcos'altro -> "nocive"
|
||||
- correggere "Chi ne porta avanti lo sviluppo non ha alcun copyright sul software che realizza e mette a disposizione gratuitamente"
|
||||
- correggere "uno smanettone"
|
||||
- correggere, in 6.1, "gente propria"?
|
||||
|
@ -11,9 +12,11 @@
|
|||
|
||||
--- Tech ---
|
||||
|
||||
- mustool.php: aggiungere possibilità di cancellare record InstActivity, InstChecks, Notifications più vecchi di tot tempo (ZHits viene già pulita da "updstats")
|
||||
- tutto il "condimento" (script di backup e di update) metterlo in una sottodir di clitools
|
||||
- instances.php: possibilità di linkare una singola istanza (id=x)
|
||||
* mustool.php: aggiungere possibilità di cancellare record InstActivity, InstChecks, Notifications più vecchi di tot tempo (ZHits viene già pulita da "updstats")
|
||||
* fare qualcosa perché il backup venga mandato da qualche parte: per e-mail ora non va più perché l'allegato è troppo grosso
|
||||
- un tasto sulla ricerca istanze per togliere tutti i limiti tranne "non è blacklistata"
|
||||
- un tasto sulla ricerca istanze per togliere tutti i limiti tranne "non è nociva"
|
||||
* l'ordine casuale fa casino con il paginamento...
|
||||
- aggiungere alle keyword per seo "fediverso", e altro?
|
||||
* "consigliata": migliorare la leggibilità
|
||||
|
@ -44,9 +47,9 @@
|
|||
* chiedere a redglow e paulbutgold se vogliono essere messi nella lista di chi ha contribuito
|
||||
* statistiche minime
|
||||
~ pagina statistiche (totali e di ricerca: numero istanze, numero utenti, partecipazione(?))
|
||||
? pagina blacklistate
|
||||
? pagina istanze nocive
|
||||
~ ordinamento
|
||||
- se è Blacklisted dire perché interrogando la tabella Blacklisted
|
||||
- se è Noxious dire perché interrogando la tabella Noxious
|
||||
- evidenziare espressioni corrispondenti alla ricerca
|
||||
- possibilità di settare tutti i parametri "senza constraints" con un solo tasto
|
||||
- un ultimo giro di aggiornamento delle traduzioni
|
||||
|
@ -68,7 +71,7 @@
|
|||
|
||||
* spostare i flag di esclusione sotto il resto
|
||||
* se InstOurLangs è null cercare e riportare InstLangs - fatto, impostando InstOurLangs come InstLangs in crawler.php se InstOurLangs è NULL e InstLangs no
|
||||
* blacklistare byoblu
|
||||
* mettere tra le nocive byoblu
|
||||
* possibilità di escludere quelle con registrazione soggetta ad approvazione
|
||||
* possibilità di escludere quelle che non han risposto all'ultimo check, vedi sotto
|
||||
* lastcheck bool in tabella Instances, per poterlo verificare facilmente
|
||||
|
@ -79,7 +82,7 @@
|
|||
! possibilità di includere nella ricerca per lingua anche le istanze senza lingua specificata
|
||||
! un ultimo tentativo prima di dichiararla morta in crawler.php (no perché viene già fatto a monte)
|
||||
|
||||
* crawler.php, peerscrawl.php: verificare perché stderr viene indirizzato a stdout, fare in modo che lo sia sempre a livello di script - dipende da "display_errors" in php.ini, per default li manda a stdout, bona lè* crawler.php: aggiornamento stato "New" e "Blacklisted" in uno script a parte - fatto, in mustool.php
|
||||
* crawler.php, peerscrawl.php: verificare perché stderr viene indirizzato a stdout, fare in modo che lo sia sempre a livello di script - dipende da "display_errors" in php.ini, per default li manda a stdout, bona lè* crawler.php: aggiornamento stato "New" e "Noxious" in uno script a parte - fatto, in mustool.php
|
||||
* crawler.php e peerscrawl.php: devono creare un lockfile all'esecuzione e cancellarlo quando escono (sia per errore, sia per uscita normale); se esiste, uscire con errore; più un'opzione per forzare l'esecuzione anche già in presenza di lockfile.
|
||||
* crawler.php: quando instances.job e currinst.job esistono, oltre a --restore serve anche un’opzione che forzi l'esecuzione.
|
||||
* crawler.php: NON ripristinare sessione interrotta se non viene esplicitato con opzione (da aggiungere)
|
||||
|
|
|
@ -161,7 +161,7 @@ mysqli_set_charset($link,'utf8mb4');
|
|||
|
||||
$res=mysqli_query($link,'SELECT COUNT(ID) AS tinsts, SUM(UserCount) AS tusers, SUM(StatusCount) AS tstatuses, SUM(ActiveUsersMonth) AS tactusers FROM Instances WHERE Instances.Dead=0 AND Instances.IsMastodon=1 AND Instances.FirstSeen IS NOT NULL') or muorimeglio(__LINE__.': '.mysqli_error($link),true);
|
||||
$row=mysqli_fetch_assoc($res);
|
||||
echo(_('<div id="help" class="helpd"><p class="intro">This is our search engine for Mastodon instances. It works this way: data of already indexed instances gets updated every night, and a shuffling occurs for the “random ordering”; also, once a week, during the night between Tuesday and Wednesday, new instances get searched for and added to the database.</p><p class="intro">Advanced search criteria are customizable, but by default they reflect our fondness for a decentralized and egalitarian Fediverse; with our blacklist we try to not give visibility to instances accepting fascist, racist, sexist, ableist, sovereignist contents.</p></div>').N);
|
||||
echo(_('<div id="help" class="helpd"><p class="intro">This is our search engine for Mastodon instances. It works this way: data of already indexed instances gets updated every night, and a shuffling occurs for the “random ordering”; also, once a week, during the night between Tuesday and Wednesday, new instances get searched for and added to the database.</p><p class="intro">Advanced search criteria are customizable, but by default they reflect our fondness for a decentralized and egalitarian Fediverse, and we try to exclude instances accepting fascist, racist, sexist, ableist, sovereignist contents.</p></div>').N);
|
||||
printf(_('<p class="introe">We currently count <span class="statd">%s</span> Mastodon instances, with <span class="statd">%s</span> users (<span class="statd">%s</span> active during last month) and <span class="statd">%s</span> published statuses.</p>').N, fnum($row['tinsts'],0,$dlang), fnum($row['tusers'],0,$dlang), fnum($row['tactusers'],0,$dlang), fnum($row['tstatuses'],0,$dlang));
|
||||
|
||||
// <p class="intro">Nella prima versione stabile daremo a* admin delle istanze compatibili con questa politica la possibilità di descrivere ulteriormente la propria istanza con questi campi, tutti facoltativi: “Descrizione in inglese” (per le istanze la cui descrizione è in altre lingue), “Località” (se l’istanza è particolarmente legata a un territorio), “Lingue” (se le lingue utilizzate prevalentemente sull’istanza non corrispondono a quelle rilevate automaticamente dal nostro crawler), “Modalità di copertura dei costi” (per esempio “Autonoma”, “Sottoscrizioni volontarie degli utenti”, “Iniziative benefit”), “Regole sui contenuti” (per esempio “Tag NSFW per i nudi”, “No link a siti di partiti politici”, “No pubblicità”, “Content Warning prima degli spoiler”), e “Categorie” (per esempio “Generalista”, “Astronomia”, “Politica”, “Musica folk”).</p>
|
||||
|
@ -170,14 +170,14 @@ printf(_('<p class="introe">We currently count <span class="statd">%s</span> Mas
|
|||
|
||||
$maxuinp=10000000000;
|
||||
|
||||
if ((array_key_exists('black',$_GET) && $_GET['black']=='1') || !array_key_exists('black',$_GET)) {
|
||||
$_GET['cbblack']=' checked';
|
||||
$_GET['black']=1;
|
||||
if ((array_key_exists('noxious',$_GET) && $_GET['noxious']=='1') || !array_key_exists('noxious',$_GET)) {
|
||||
$_GET['cbnoxious']=' checked';
|
||||
$_GET['noxious']=1;
|
||||
} else {
|
||||
$_GET['cbblack']='';
|
||||
$_GET['black']=0;
|
||||
$_GET['cbnoxious']='';
|
||||
$_GET['noxious']=0;
|
||||
}
|
||||
//echo('<p>black: '.$_GET['black'].'</p>');
|
||||
//echo('<p>noxious: '.$_GET['noxious'].'</p>');
|
||||
|
||||
if ((array_key_exists('creg',$_GET) && $_GET['creg']=='1') || !array_key_exists('creg',$_GET)) {
|
||||
$_GET['cbcreg']=' checked';
|
||||
|
@ -279,7 +279,7 @@ if (array_key_exists('p',$_GET) && preg_match('#^[0-9]+$#',$_GET['p'])===1) $p=$
|
|||
|
||||
echo('<form method="get" id="curvf" name="curvf">
|
||||
<input name="advc" type="hidden" value="'.$_GET['advc'].'">
|
||||
<input name="black" type="hidden" value="'.$_GET['black'].'">
|
||||
<input name="noxious" type="hidden" value="'.$_GET['noxious'].'">
|
||||
<input name="creg" type="hidden" value="'.$_GET['creg'].'">
|
||||
<input name="appr" type="hidden" value="'.$_GET['appr'].'">
|
||||
<input name="lcok" type="hidden" value="'.$_GET['lcok'].'">
|
||||
|
@ -332,10 +332,10 @@ echo('</select>
|
|||
<div class="sdinput"><input type="number" id="minki" name="minki" min="0" max="100000" class="sinput" value="'.$_GET['minki'].'"></div>
|
||||
</div>
|
||||
<div class="sdrow">
|
||||
<div class="sdlabel"><label for="cbblack" title="'._('Exclude blacklisted instances').'">'._('Exclude blacklisted').'</label></div>
|
||||
<div class="sdlabel"><label for="cbnoxious" title="'._('Exclude noxious instances').'">'._('Exclude noxious').'</label></div>
|
||||
<div class="sdinput">
|
||||
<input type="checkbox" class="sckbox" id="cbblack" value="1"'.$_GET['cbblack'].' onchange="if (this.checked) document.getElementById(\'black\').value=1; else document.getElementById(\'black\').value=0;">
|
||||
<input type="hidden" id="black" name="black" value="'.$_GET['black'].'">
|
||||
<input type="checkbox" class="sckbox" id="cbnoxious" value="1"'.$_GET['cbnoxious'].' onchange="if (this.checked) document.getElementById(\'noxious\').value=1; else document.getElementById(\'noxious\').value=0;">
|
||||
<input type="hidden" id="noxious" name="noxious" value="'.$_GET['noxious'].'">
|
||||
</div>
|
||||
</div>
|
||||
<div class="sdrow">
|
||||
|
@ -398,7 +398,7 @@ swhelp();
|
|||
$joins=array();
|
||||
$wheres=array();
|
||||
$wheres[]='Instances.Dead=0 AND Instances.IsMastodon=1 AND Instances.FirstSeen IS NOT NULL';
|
||||
if ($_GET['black']==1) $wheres[]='Instances.Blacklisted=0';
|
||||
if ($_GET['noxious']==1) $wheres[]='Instances.Noxious=0';
|
||||
if ($_GET['creg']==1) $wheres[]='Instances.RegOpen=1';
|
||||
if ($_GET['appr']==1) $wheres[]='Instances.RegReqApproval=0';
|
||||
if ($_GET['lcok']==1) $wheres[]='Instances.LastCheckOk=1';
|
||||
|
@ -475,8 +475,8 @@ while ($if<$il && $row=mysqli_fetch_assoc($res)) {
|
|||
else
|
||||
$out.=$row['MaxTootChars'];
|
||||
$out.='</div>'.N;
|
||||
$out.='<div><span class="ilab">'._('Blacklisted').'</span> ';
|
||||
($row['Blacklisted']==1) ? $out.='<span class="ibad">'._('Yes').'</span>' : $out.='<span class="igood">'._('No').'</span>';
|
||||
$out.='<div><span class="ilab">'._('Noxious').'</span> ';
|
||||
($row['Noxious']==1) ? $out.='<span class="ibad">'._('Yes').'</span>' : $out.='<span class="igood">'._('No').'</span>';
|
||||
$out.='</div>'.N;
|
||||
$out.='<div><span class="ilab">'._('New').'</span> ';
|
||||
($row['New']==1) ? $out.='<span class="ivgood">'._('Yes!').'</span>' : $out.=_('No');
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
* viewinst.php
|
||||
- pagina gestione accounts
|
||||
- pagina gestione proprio account
|
||||
- pagina gestione blacklist
|
||||
- pagina gestione nocive
|
||||
- pagina reset password
|
||||
- una pagina che dia la possibilità di vedere le istanze che non rispondono da un tot di tempo impostabile, e di marcarle in modo che non vengano più controllate, fino a quando non sono "smarcate" (crawler.php dev'essere modificato all'uopo)
|
||||
? help online
|
||||
|
|
|
@ -317,7 +317,7 @@ function ckf() {
|
|||
<?php
|
||||
if ($account['Level']!='guest')
|
||||
echo('<table class="cbtab">
|
||||
<tr><td><label for="Blacklisted">Blacklisted:</label></td><td> <input type="checkbox" name="Blacklisted" id="Blacklisted"'.check($inst,'Blacklisted').'></td></tr>
|
||||
<tr><td><label for="Noxious">Noxious:</label></td><td> <input type="checkbox" name="Noxious" id="Noxious"'.check($inst,'Noxious').'></td></tr>
|
||||
<tr><td><label for="New">New:</label></td><td> <input type="checkbox" name="New" id="New"'.check($inst,'New').'></td></tr>
|
||||
<tr><td><label for="Chosen">Chosen:</label></td><td> <input type="checkbox" name="Chosen" id="Chosen"'.check($inst,'Chosen').'></td></tr>
|
||||
<tr><td><label for="Visible">Visible:</label></td><td> <input type="checkbox" name="Visible" id="Visible"'.check($inst,'Visible').'></td></tr>
|
||||
|
|
|
@ -40,25 +40,25 @@ if ($account['Level']=='guest' && !in_array($_POST['id'],$account['Insts']))
|
|||
$que='UPDATE Instances SET ';
|
||||
|
||||
if ($account['Level']!='guest') {
|
||||
if (array_key_exists('Blacklisted',$_POST) && $_POST['Blacklisted']=='on') {
|
||||
$inst['Blacklisted']=1;
|
||||
$sets[]='Blacklisted=1';
|
||||
$res=mysqli_query($link,'SELECT * FROM Blacklist WHERE Domain="'.myesc($link,$inst['URI']).'"')
|
||||
if (array_key_exists('Noxious',$_POST) && $_POST['Noxious']=='on') {
|
||||
$inst['Noxious']=1;
|
||||
$sets[]='Noxious=1';
|
||||
$res=mysqli_query($link,'SELECT * FROM Noxious WHERE Domain="'.myesc($link,$inst['URI']).'"')
|
||||
or muoribene($line.':'.__LINE__.': '.mysqli_error($link),true);
|
||||
$now=microtime(true);
|
||||
if (mysqli_num_rows($res)==1) {
|
||||
mysqli_query($link,'UPDATE Blacklist SET ModifiedAt='.$now.' WHERE Domain="'.myesc($link,$inst['URI']).'"')
|
||||
mysqli_query($link,'UPDATE Noxious SET ModifiedAt='.$now.' WHERE Domain="'.myesc($link,$inst['URI']).'"')
|
||||
or muoribene($line.':'.__LINE__.': '.mysqli_error($link),true);
|
||||
} elseif (mysqli_num_rows($res)==0) {
|
||||
mysqli_query($link,'INSERT INTO Blacklist SET Domain="'.myesc($link,$inst['URI']).'", CreatedAt='.$now.', ModifiedAt='.$now.', Severity=1, RejectMedia=0, RejectReports=0, PrivateComment=NULL, PublicComment=NULL')
|
||||
mysqli_query($link,'INSERT INTO Noxious SET Domain="'.myesc($link,$inst['URI']).'", CreatedAt='.$now.', ModifiedAt='.$now.', Severity=1, RejectMedia=0, RejectReports=0, PrivateComment=NULL, PublicComment=NULL')
|
||||
or muoribene($line.':'.__LINE__.': '.mysqli_error($link),true);
|
||||
} else {
|
||||
muoribene($line.':'.__LINE__.': Ci sta più di una istanza con dominio=«'.$inst['URI'].'» nella tabella Blacklist.',true);
|
||||
muoribene($line.':'.__LINE__.': Ci sta più di una istanza con dominio=«'.$inst['URI'].'» nella tabella Noxious.',true);
|
||||
}
|
||||
} else {
|
||||
$inst['Blacklisted']=0;
|
||||
$sets[]='Blacklisted=0';
|
||||
mysqli_query($link,'DELETE FROM Blacklist WHERE DOMAIN = "'.myesc($link,$inst['URI']).'"')
|
||||
$inst['Noxious']=0;
|
||||
$sets[]='Noxious=0';
|
||||
mysqli_query($link,'DELETE FROM Noxious WHERE DOMAIN = "'.myesc($link,$inst['URI']).'"')
|
||||
or muoribene($line.':'.__LINE__.': '.mysqli_error($link),true);
|
||||
}
|
||||
(array_key_exists('New',$_POST) && $_POST['New']=='on') ? $sets[]='New=1' : $sets[]='New=0';
|
||||
|
|
|
@ -8,7 +8,7 @@ $cols=array(
|
|||
'Instances.Good'=>array('field'=>'Instances.Good','name'=>'[Papabile]','nameEN'=>'[Good]','type'=>'bool'),
|
||||
'Instances.Chosen'=>array('field'=>'Instances.Chosen','name'=>'[Scelta]','nameEN'=>'[Chosen]','type'=>'bool'),
|
||||
'Instances.Visible'=>array('field'=>'Instances.Visible','name'=>'[Visibile]','nameEN'=>'[Visible]','type'=>'bool'),
|
||||
'Instances.Blacklisted'=>array('field'=>'Instances.Blacklisted','name'=>'[Blacklistata]','nameEN'=>'[Blacklisted]','type'=>'bool'),
|
||||
'Instances.Noxious'=>array('field'=>'Instances.Noxious','name'=>'[Nociva]','nameEN'=>'[Noxious]','type'=>'bool'),
|
||||
'Instances.LastCheckOk'=>array('field'=>'Instances.LastCheckOk','name'=>'[Ha risposto all’ultimo check]','nameEN'=>'[Has answered on last check]','type'=>'bool'),
|
||||
'Instances.Priority'=>array('field'=>'Instances.Priority','name'=>'Priorità','nameEN'=>'Priority','type'=>'int'),
|
||||
'Instances.Dead'=>array('field'=>'Instances.Dead','name'=>'[“Morta”]','nameEN'=>'[“Dead”]','type'=>'bool'),
|
||||
|
|
|
@ -105,7 +105,7 @@ function dispinst(&$row,&$cols,&$link,&$dlang,&$account,$showcount,$finst,$cinst
|
|||
}
|
||||
}
|
||||
$attr=booly(trimname(tc('Instances.Dead')).': ',$row['Dead'],false,true).N;
|
||||
$attr.=booly(trimname(tc('Instances.Blacklisted')).': ',$row['Blacklisted'],false,true).N;
|
||||
$attr.=booly(trimname(tc('Instances.Noxious')).': ',$row['Noxious'],false,true).N;
|
||||
$attr.=booly(trimname(tc('Instances.New')).': ',$row['New'],true).N;
|
||||
$attr.=booly(trimname(tc('Instances.Good')).': ',$row['Good']).N;
|
||||
$attr.=booly(trimname(tc('Instances.Chosen')).': ',$row['Chosen']).N;
|
||||
|
@ -164,18 +164,18 @@ function dispinst(&$row,&$cols,&$link,&$dlang,&$account,$showcount,$finst,$cinst
|
|||
$attr.='<div class="colsectcont nully">'.t('Non disponibili','Unavailable').'</div>'.N;
|
||||
}
|
||||
$out.='<tr><td class="tdattr">'.$attr.'</td><td>'.N;
|
||||
if ($row['Blacklisted']>0) {
|
||||
$sres=mysqli_query($link,'SELECT * FROM Blacklist WHERE Domain=\''.myesc($link,$row['URI']).'\'')
|
||||
if ($row['Noxious']>0) {
|
||||
$sres=mysqli_query($link,'SELECT * FROM Noxious WHERE Domain=\''.myesc($link,$row['URI']).'\'')
|
||||
or muoribene(mysqli_error($link),true);
|
||||
if (mysqli_num_rows($sres)>0) {
|
||||
$srow=mysqli_fetch_assoc($sres);
|
||||
if (!is_null($srow['PublicComment']) && preg_match('/^\s*$/',$srow['PublicComment'])!==1) {
|
||||
$out.='<div class="baloo">'.t('Questa istanza è blacklistata per questo motivo','This instance is blacklisted for this reason').': '.hspech($srow['PublicComment']).'</div>'.N;
|
||||
$out.='<div class="baloo">'.t('Questa istanza è marcata come nociva per questo motivo','This instance is marked as noxious for this reason').': '.hspech($srow['PublicComment']).'</div>'.N;
|
||||
} else {
|
||||
$out.='<div class="baloo">'.t('Questa istanza è blacklistata, ma nella blacklist non è specificato il motivo','This instance is blacklisted, but the blacklist entry doesn’t specify a reason').'.</div>'.N;
|
||||
$out.='<div class="baloo">'.t('Questa istanza è marcata come nociva, ma nella tabella “Noxious” non è specificato il motivo','This instance is marked as noxious, but the “Noxious” table entry doesn’t specify a reason').'.</div>'.N;
|
||||
}
|
||||
} else {
|
||||
$out.='<div class="baloo">'.t('Questa istanza risulta blacklistata nella tabella delle istanze, ma nella tabella “Blacklist” non è presente: probabilmente è stata rimossa dalla tabella “Blacklist” e il crawler non l’ha ancora aggiornata','This instance has the “Blacklisted” flag on, but it is not present in the “Blacklist” table: prabably it has been removed from there but the crawler has not yet updated its record').'.</div>'.N;
|
||||
$out.='<div class="baloo">'.t('Questa istanza è marcata come nociva nella tabella delle istanze, ma nella tabella “Noxious” non è presente: probabilmente è stata rimossa dalla tabella e il crawler non l’ha ancora aggiornata','This instance is marked as noxious, but it is not present in the “Noxious” table: probably it has been removed from the table but the crawler has not yet updated its record').'.</div>'.N;
|
||||
}
|
||||
}
|
||||
$out.='<div class="baloo"><span class="field">'.tc('Instances.URI').':</span> <a href="https://'.$row['URI'].'" target="_blank">'.$row['URI'].'</a></div>'.N;
|
||||
|
|
|
@ -5,7 +5,7 @@ if ($account['Level']!='guest') {
|
|||
'menu'=>array('liadd'=>null, 'href'=>null, 'title'=>'Menu', 'selected'=>false, 'submenu'=>
|
||||
array(
|
||||
'instances'=>array('liadd'=>null, 'href'=>'instances.php', 'title'=>'Istanze', 'selected'=>false, 'submenu'=>null),
|
||||
'blacklist'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Blacklist', 'selected'=>false, 'submenu'=>null),
|
||||
'noxious'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Nocive', 'selected'=>false, 'submenu'=>null),
|
||||
'notifs'=>array('liadd'=>null, 'href'=>'notifs.php', 'title'=>'Notifiche', 'selected'=>false, 'submenu'=>null),
|
||||
'accounts'=>array('liadd'=>null, 'href'=>'#', 'title'=>'Accounts', 'selected'=>false, 'submenu'=>null),
|
||||
'account'=>array('liadd'=>null, 'href'=>'account.php?id='.$account['ID'], 'title'=>'Il tuo account', 'selected'=>false, 'submenu'=>null),
|
||||
|
|
Loading…
Reference in a new issue