<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/u/bs/jq-2.2.3,dt-1.10.12,r-2.1.0/datatables.min.css"/> <link rel="stylesheet" href="css/style.css"> </head> <body> <header> <?php require_once "inc/content_header.php"; ?> </header> <main class="container"> <?php if (!empty($username) && !empty($wiki)) { $all_pages = get_all_new_pages_of_user($username, $wiki)['query']['usercontribs']; $all_pageids = []; $all_verdicts = get_verdict($username, $wiki); for ($i = 0; $i < count($all_pages); $i++) { array_push($all_pageids, $all_pages[$i]['pageid']); } $all_page_sizes = get_page_size($all_pageids, $wiki)['query']['pages']; //echo json_encode($all_page_sizes); //echo json_encode($all_pages); require_once "inc/progress_individual.php"; } else { $participants = get_participants_list(); if (!empty($filter)) { require_once "inc/participant_list.php"; } else { require_once "inc/wiki_list.php"; } }
function get_user_stats($username, $wiki = null) { global $settings; $wiki = isset($wiki) ? $wiki : $settings['main_page_wiki']; $judged = get_verdict($username, $wiki); $all = get_all_new_pages_of_user($username, $wiki)['query']['usercontribs']; $titles_yes = []; $appeared = []; $cnt = array("yes" => 0, "pending" => 0, "no" => 0, "byte_yes" => 0, "reg_date" => 0); $cnt['reg_date'] = get_user_registration_date($username, $wiki); if (isset($cnt['reg_date'][0]['registration'])) { $cnt['reg_date'] = $cnt['reg_date'][0]['registration']; } else { if (isset($cnt['reg_date'][0]['missing'])) { $cnt['reg_date'] = -1; } else { $cnt['reg_date'] = 0; } } if ($judged) { foreach ($judged as $title => $obj) { $cnt[$obj['verdict']]++; $appeared[$title] = 1; if ($obj['verdict'] == 'yes') { array_push($titles_yes, $title); } } } if ($all) { foreach ($all as $idx => $obj) { if (!isset($appeared[$obj['title']])) { $appeared[$obj['title']] = 1; $cnt['pending']++; } } } $all_page_sizes = get_page_size_using_title($titles_yes, $wiki)['query']['pages']; if ($all_page_sizes) { foreach ($all_page_sizes as $k => $v) { if (isset($v['revisions'])) { $cnt['byte_yes'] += intval($v['revisions'][0]['size']); } } } $cnt['all'] = $cnt['yes'] + $cnt['no'] + $cnt['pending']; save_user_stats_cache(array($username => array('art_count' => $cnt['all'], 'pending_art' => $cnt['pending'], 'valid_art' => $cnt['yes'], 'invalid_art' => $cnt['no'])), $wiki); return $cnt; }