$default)); break;
default : assert(' /* function '.__FUNCTION__.': 2nd parameter contains: "'.$tmp.'" in position '.$i.' (counting from 0), which is none of "gpcsefrd" *'.'/ ');
}
}
for($i=0; $i<$len; $i++)
{
if(isset($gpc[$i][$name]))
{
return($gpc[$i][$name]);
}
}
}
function html_attr($attrib_name='alt', $value='') // html Attribute, unconditional.
{
return(($attrib_name)?(' '.$attrib_name.'="'.$value.'"'):'');
}
function html_attrib($attrib_name='id', $value='') // html Attribute, inhibit NULL, Blank and Zero.
{
return(($attrib_name && $value)?html_attr($attrib_name, $value):'');
}
function html_a_selected($yes=TRUE)
{
return($yes?html_attrib('selected', 'selected'):'');
}
// db Access.
function stripquotes($input)
{
$retval = ($input);
if((substr($input, 0, 1) === '"') && (substr($input, -1, 1) === '"'))
{
$retval = (substr($input, 1, -1));
}
return($retval);
}
function dbaccess(&$host, &$user, &$pass)
{
# echo '
'.
$home = ($_SERVER["SCRIPT_FILENAME"]);
# echo '
'.
$home = (preg_replace('!/public_html/.*$!', '/.my.cnf', $home));
# echo '
'.
$home = (file($home));
$fund = (0);
reset($home);
$exit = (15);
while(($fund != $exit) && (list(,$line) = (each($home))))
{
$line = (substr($line, 0, strlen($line) - 1));
# echo('
'.$fund.' '.$line.' '.strlen($line));
if($line === '[client]')
{
$fund |= (1);
}
else
if(($fund & 1) && (preg_match('/user *= *(.*)/', $line, $mtch)))
{
# echo '
user='.
$user = ($mtch[1]);
$fund |= (2);
}
else
if(($fund & 1) && (preg_match('/password *= *(.*)/', $line, $mtch)))
{
# echo '
pass='.
$pass = ($mtch[1]);
# echo '
pass='.
$pass = (stripquotes($pass));
$fund |= (4);
}
else
if(($fund & 1) && (preg_match('/host *= *(.*)/', $line, $mtch)))
{
# echo '
host='.
$host = ($mtch[1]);
# echo '
host='.
$host = (stripquotes($host));
$fund |= (8);
}
else
if(($fund & 1) && (preg_match('/^\[/', $line)))
{
$fund = ($exit);
}
}
}
function db_error($dbh=FALSE)
{
if($dbh)
{
return('
'.mysql_errno($dbh).': '.htmlencode(mysql_error($dbh)).'
');
}
else
{
return('
'.mysql_errno().': '.htmlencode(mysql_error()).'
');
}
}
function a_link($domain='', $path='', $fragment='', $anchortext='', $schema='http://')
{
if(strlen($domain))
{
$url = ($schema.$domain.($path?$path:'/').(strlen($fragment)?('#'.$fragment):''));
return(''.(strlen($anchortext)?$anchortext:$url).'');
}
else
{
return($anchortext);
}
}
// Main.
$par['usr'] = (param_val('usr', 'gpcd', ''));
$par['uri'] = (preg_replace('_\?.*$_', '', param_val('REQUEST_URI', 'sd', '')));
$par['action'] = (param_val('action', 'gpcd', ''));
$par['uselang'] = (param_val('uselang', 'gpcd', ''));
$par['phpinfo'] = (param_val('phpinfo', 'gpcd', ''));
if($par['phpinfo'])
{
phpinfo();
}
if($par['action'] == 'source')
{
header('Content-Type: text/plain; charset=utf-8');
passthru('cat '.escapeshellcmd($_SERVER['SCRIPT_FILENAME']));
die();
}
if($par['uselang']) $lang = ($par['uselang']);
if(empty($lang)) $lang = ('en');
switch($lang)
{
case 'de' :
case 'deu' :
{
$dir = ('ltr');
$iut['ttl'] = ('Wikis mit einem bestimmten Benutzer');
$iut['inp'] = ('Bitte Wählen: ');
$iut['usr'] = ('Benutzer');
$iut['lan'] = ('Sprache');
$iut['gob'] = ('Los!');
$iut['sel'] = ('Gewählt: ');
$iut['num'] = ('Nr.');
$iut['wdb'] = ('Wiki');
$iut['url'] = ('Hautseite');
$iut['usp'] = ('Benutzerseite');
$iut['uid'] = ('ID');
$iut['usi'] = ('Anmeldung');
$iut['ugr'] = ('Gruppen');
$iut['uec'] = ('Edits');
$iut['src'] = ('Programmquellen');
$itt['src'] = ($iut['src']);
$iut['bug'] = ('Fehler melden');
$itt['bug'] = ('Einen Fehler oder Verbessungsvorschlag für dieses Programm nennen');
$iut['uhp'] = ('Startseite des Autors');
$itt['uhp'] = ($iut['uhp']);
$iut['thp'] = ('Toolserver Startseite');
$itt['thp'] = ($iut['thp']);
$iut['spo'] = ('Sponsor');
$itt['spo'] = ('Wikimedia Deutschland Gesellschaft zur Förderung Freien Wissens e.V.');
break;
}
case 'en' :
case 'eng' :
{
$dir = ('ltr');
$iut['ttl'] = ('Wikis with given User Name');
$iut['inp'] = ('Please select: ');
$iut['usr'] = ('User');
$iut['lan'] = ('Language');
$iut['gob'] = ('Go!');
$iut['sel'] = ('Selected: ');
$iut['num'] = ('No.');
$iut['wdb'] = ('Wiki');
$iut['url'] = ('Main Page');
$iut['usp'] = ('User Page');
$iut['uid'] = ('User ID');
$iut['usi'] = ('Since');
$iut['ugr'] = ('Groups');
$iut['uec'] = ('Edits');
$iut['src'] = ('Program Source');
$itt['src'] = ($iut['src']);
$iut['bug'] = ('File a bug');
$itt['bug'] = ($iut['bug']);
$iut['uhp'] = ('User home page');
$itt['uhp'] = ($iut['uhp']);
$iut['thp'] = ('Toolserver home');
$itt['thp'] = ($iut['thp']);
$iut['spo'] = ('Sponsor');
$itt['spo'] = ('Wikimedia Deutschland Gesellschaft zur Förderung Freien Wissens e.V.');
break;
}
case 'fr' :
case 'fra' :
{
$dir = ('ltr');
$iut['ttl'] = ("Wikis avec ce nom d'utilisateur");
$iut['inp'] = ('Sélectionnez la langue : ');
$iut['usr'] = ('Utilisateur');
$iut['lan'] = ('Langue');
$iut['gob'] = ('Go !');
$iut['sel'] = ('Sélectionné : ');
$iut['num'] = ('No.');
$iut['wdb'] = ('Wiki');
$iut['url'] = ('Page principale');
$iut['usp'] = ('Page utilisateur');
$iut['uid'] = ('ID utilisateur');
$iut['usi'] = ('Depuis');
$iut['ugr'] = ('Groupes');
$iut['uec'] = ('Éditions');
$iut['src'] = ('Source du programme');
$itt['src'] = ($iut['src']);
$iut['bug'] = ('Rapportez un bogue');
$itt['bug'] = ($iut['bug']);
$iut['uhp'] = ("Page d'accueil utilisateur");
$itt['uhp'] = ($iut['uhp']);
$iut['thp'] = ('Accueil Toolserver');
$itt['thp'] = ($iut['thp']);
$iut['spo'] = ('Commanditaire');
$itt['spo'] = ('Wikimedia Deutschland Gesellschaft zur Förderung Freien Wissens e.V.');
break;
}
case 'ksh' :
{
$dir = ('ltr');
$iut['ttl'] = ('Wikkis med_ennem beshtemmpte Medmaacho');
$iut['inp'] = ('Draach jëd_enn: ');
$iut['usr'] = ('Medmaacho');
$iut['lan'] = ('Shprooch');
$iut['gob'] = ('Loß Jonn!');
$iut['sel'] = ('Ußjesöhk: ');
$iut['num'] = ('Nr.');
$iut['wdb'] = ('Wikki');
$iut['url'] = ('HoupSigk');
$iut['usp'] = ('MedmaachoSigk');
$iut['uid'] = ('Medmaacho Nr.');
$iut['usi'] = ('Aanjemëlldt am');
$iut['ugr'] = ('Jroppe');
$iut['uec'] = ('Änderonge');
$iut['src'] = ('De Projramm Kwälle');
$itt['src'] = ($iut['src']);
$iut['bug'] = ('Fääler mëllde');
$itt['bug'] = ('Donn_enne Fää oddo enne Vobëßong wiggo_jëvve fö_dat_Projramm hee');
$iut['uhp'] = ('Dem_Maacher sing Ennjangß_Sigk');
$itt['uhp'] = ($iut['uhp']);
$iut['thp'] = ('Däm Tool_ßövo sing Ennjangß_Sigk');
$itt['thp'] = ($iut['thp']);
$iut['spo'] = ('Shponsor');
$itt['spo'] = ('Wikimedia Deutschland Gesellschaft zur Förderung Freien Wissens e.V.');
break;
}
case 'zxx' :
{
$dir = ('ltr');
$iut['ttl'] = ("\$iut['ttl']");
$iut['inp'] = ("\$iut['inp']");
$iut['usr'] = ("\$iut['usr']");
$iut['lan'] = ("\$iut['lan']");
$iut['gob'] = ("\$iut['gob']");
$iut['sel'] = ("\$iut['sel']");
$iut['num'] = ("\$iut['num']");
$iut['wdb'] = ("\$iut['wdb']");
$iut['url'] = ("\$iut['url']");
$iut['usp'] = ("\$iut['usp']");
$iut['uid'] = ("\$iut['uid']");
$iut['usi'] = ("\$iut['usi']");
$iut['ugr'] = ("\$iut['ugr']");
$iut['uec'] = ("\$iut['uec']");
$iut['src'] = ("\$iut['src']");
$itt['src'] = ("\$itt['src']");
$iut['bug'] = ("\$iut['bug']");
$itt['bug'] = ("\$itt['bug']");
$iut['uhp'] = ("\$iut['uhp']");
$itt['uhp'] = ("\$itt['uhp']");
$iut['thp'] = ("\$iut['thp']");
$itt['thp'] = ("\$itt['thp']");
$iut['spo'] = ("\$iut['spo']");
$itt['spo'] = ("\$itt['spo']");
break;
}
}
if($par['usr'])
{
dbaccess($dbserver, $dbuser, $dbpass);
if($dbh[0] = (mysql_connect($dbserver, $dbuser, $dbpass)))
{
if(mysql_select_db('toolserver', $dbh[0]))
{
# echo '
'.
$query = ('SELECT `dbname`, `domain`, `server`, `is_sensitive` FROM `wiki` ORDER BY `dbname` ASC');
if($query = mysql_query($query, $dbh[0]))
{
$wikil = (array());
while($row = mysql_fetch_assoc($query))
{
# echo '
'.
$wikidomain = ($row['domain']);
$wikidatabase = ($row['dbname']);
if(strlen($wikidatabase))
{
$wikis[$wikidatabase] = ($row['server']);
$wikiu[$wikidatabase] = ($row['is_sensitive']);
if(strlen($wikidomain))
{
$wikil[$wikidatabase] = ($wikidomain);
}
else
{
$wikil[$wikidatabase] = ('');
}
}
}
mysql_free_result($query);
$count = (0);
$edits = (0);
$exist = (0);
$usere = (preg_replace('/ /', '_', $par['usr']));
$userx = (preg_replace('/_/', ' ', $par['usr']));
$linka = ('
| '.$iut['num'].' | | '.$iut['wdb'].' | | '.$iut['url'].' | | '.$iut['usp'].' | | '.$iut['uid'].' | | '.$iut['usi'].' | | '.$iut['ugr'].' | | '.$iut['uec'].' | |
');
# echo count($wikil);
foreach($wikil as $wikidatabase => $url)
{
$users = ($userx);
$userz = ($usere);
if(!$wikiu[$wikidatabase])
{
# echo '
$useru=' = '.
$users = (strtoupper(substr($users,0,1)).substr($users,1));
$userz = (strtoupper(substr($userz,0,1)).substr($userz,1));
}
$userh = (htmlencode($users));
$userg = (htmlencode($userz));
$useru = (urlencode($userz));
$urerp = ('/wiki/User:'.$useru);
$urerc = ('/wiki/Special:Contributions/'.$useru);
$ureru = ('/wiki/Special:Userlist?username='.($useru));
$urerl = ('/wiki/Special:Log?page=User:'.($useru));
$s = ($wikis[$wikidatabase]);
if(!isset($dbh[$s]))
{
$server = ('sql-s'.$s);
if(!($dbh[$s] = (mysql_connect($server, $dbuser, $dbpass))))
{
$error .= (db_error());
unset($dbh[$s]);
}
else
{
$query = ('SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED');
if(!mysql_query($query, $dbh[$s]))
{
$error .= (db_error($dbh[$s]));
}
}
}
if(isset($dbh[$s]))
{
if(mysql_select_db($wikidatabase , $dbh[$s]))
{
# echo '
'.$wikidatabase.': '.
$query = ('SELECT `user_id`'
.', `user_registration`'
# .', count(`rev_id`)'
# .', count(`ug_group`)'
.' FROM `user`'
# .', `revision`'
# .', `user_groups`'
.' WHERE ( `user_name` = '."'".addslashes($users)."' )"
# .' AND ( `user_name` = `rev_user_text` )'
# .' AND ( `user_id` = `ug_user` )'
# .' GROUP BY `rev_user_text`'
# .', `ug_user`'
);
if($query = mysql_query($query, $dbh[$s]))
{
# header('Comment: .');flush(); // Keepalive.
# echo(++$debug_count.' '.$url.'
');flush();
while($row = (mysql_fetch_row($query)))
{
$usr_id = ($row[0]);
$edc = (0);
$queryc = ('SELECT'
.' count(`rev_id`)'
.' /* slow query */'
.' FROM'
.' `revision`'
.' WHERE'
.' ( `rev_user_text`'
.' = '."'".addslashes($users)."' )"
.' GROUP BY `rev_user_text`'
);
if($queryc = mysql_query($queryc, $dbh[$s]))
{
while($rowc = (mysql_fetch_row($queryc)))
{
$edits += ($edc = ($rowc[0]));
}
mysql_free_result($queryc);
}
else
{
$error .= (db_error($dbh[$s]));
}
# echo '
xxx'.
$grp = ("user");
$queryi = ('SELECT `ug_group`'
.' FROM `user_groups`'
.' WHERE ( `ug_user` = '.$usr_id.' )'
);
if($queryi = mysql_query($queryi, $dbh[$s]))
{
while($rowi = (mysql_fetch_row($queryi)))
{
$grp .= (', ');
$grp .= ($rowi[0]);
}
mysql_free_result($queryi);
}
else
{
$error .= (db_error($dbh[$s]));
}
$linka .= ('
| '.(++$count).'. | | '.$wikidatabase.' | | '.a_link($url,'','',$url).' | | '.a_link($url,$urerp,'',$userh).' | | '.htmlencode($usr_id).' | | '.a_link($url,$urerl,'',$row[1]?htmlencode(substr($row[1],0,4).'-'.substr($row[1],4,2).'-'.substr($row[1],6,2).' '.substr($row[1],8,2).':'.substr($row[1],10,2).':'.substr($row[1],12,2)):'?').' | | '.a_link($url,$ureru,'',htmlencode($grp)).' | | '.a_link($url,$urerc,'',htmlencode($edc)).' | |
');
if($url)
{
++$exist;
}
}
mysql_free_result($query);
}
else
{
$error .= (db_error($dbh[$s]));
}
}
else
{
$error .= (db_error($dbh[$s]));
}
}
}
if($edits+$exist)
{
$linka .= ('
| | | | | | | | | | | | | | |
| | | | '.htmlencode($exist).' | | | | | | | | | | '.htmlencode($edits).' | |
');
}
if($count)
{
$linka .= ('
');
}
else
{
$linka .= ('');
}
}
else
{
$error .= (db_error($dbh[0]));
}
}
else
{
$error .= (db_error($dbh[0]));
}
foreach($dbh as $s => $h)
{
if($h)
{
mysql_close($dbh[$s]);
}
}
}
else
{
$error .= (db_error());
}
}
header('Pragma: no-cache');
header('Cache-control: private, no-cache, no-store, must-revalidate');
header('Expires: Tue, 04 Dec 1993 00:00:01 GMT');
header('ETag: "'.date('YmdHis+Z').'"');
echo('
'.$iut['ttl'].'.
'.$error.'
'.$iut['ttl'].'.
');
flush();
#sleep(19);
echo($linka);
flush();
#sleep(33);
die('
');