/** * Build the killlists that are needed for the options selected. * * @global Smarty $smarty * @return string */ function killList() { global $smarty; if ($this->view == '') { $smarty->assign('view', Language::get('recent')); } else { $smarty->assign('view', $this->view); } $args = array(array('a', 'alliance_detail', true), array('all_id', $this->all_id, true)); if (isset($this->viewList[$this->view])) { return call_user_func_array($this->viewList[$this->view], array(&$this)); } $scl_id = (int) edkURI::getArg('scl_id'); switch ($this->view) { default: $list = new KillList(); $list->setOrdered(true); if (config::get('comments_count')) { $list->setCountComments(true); } if (config::get('killlist_involved')) { $list->setCountInvolved(true); } $list->setLimit(10); $list->addInvolvedAlliance($this->alliance); if ($scl_id) { $list->addVictimShipClass($scl_id); } else { $list->setPodsNoobShips(config::get('podnoobs')); } $ktab = new KillListTable($list); $ktab->setLimit(10); $smarty->assign('kills', $ktab->generate()); $list = new KillList(); $list->setOrdered(true); if (config::get('comments_count')) { $list->setCountComments(true); } if (config::get('killlist_involved')) { $list->setCountInvolved(true); } $list->setLimit(10); $list->addVictimAlliance($this->alliance); if ($scl_id) { $list->addVictimShipClass($scl_id); } else { $list->setPodsNoobShips(config::get('podnoobs')); } $ltab = new KillListTable($list); $ltab->setLimit(10); $smarty->assign('losses', $ltab->generate()); return $smarty->fetch(get_tpl('detail_kl_default')); break; case "kills": $list = new KillList(); $list->setOrdered(true); $list->addInvolvedAlliance($this->alliance); if ($scl_id) { $list->addVictimShipClass($scl_id); } $list->setPageSplit(config::get('killcount')); $pagesplitter = new PageSplitter($list->getCount(), config::get('killcount')); $table = new KillListTable($list); $smarty->assign('kills', $table->generate()); $smarty->assign('splitter', $pagesplitter->generate()); return $smarty->fetch(get_tpl('detail_kl_kills')); break; case "losses": $list = new KillList(); $list->setOrdered(true); $list->setPodsNoobShips(config::get('podnoobs')); $list->addVictimAlliance($this->alliance); if ($scl_id) { $list->addVictimShipClass($scl_id); } $list->setPageSplit(config::get('killcount')); $pagesplitter = new PageSplitter($list->getCount(), config::get('killcount')); $table = new KillListTable($list); $smarty->assign('losses', $table->generate()); $smarty->assign('splitter', $pagesplitter->generate()); return $smarty->fetch(get_tpl('detail_kl_losses')); break; case "corp_kills": $smarty->assign('title', Language::get('topkillers')); $smarty->assign('month', $this->monthname); $smarty->assign('year', $this->year); $smarty->assign('pmonth', $this->pmonth); $smarty->assign('pyear', $this->pyear); $smarty->assign('nmonth', $this->nmonth); $smarty->assign('nyear', $this->nyear); $smarty->assign('all_id', $this->all_id); $smarty->assign('url_previous', edkURI::build($args, array('view', 'corp_kills', true), array('y', $this->pyear, true), array('m', $this->pmonth, true))); $smarty->assign('url_next', edkURI::build($args, array('view', 'corp_kills', true), array('y', $this->nyear, true), array('m', $this->nmonth, true))); $list = new TopList_CorpKills(); $list->addInvolvedAlliance($this->alliance); $list->setPodsNoobShips(config::get('podnoobs')); $list->setMonth($this->month); $list->setYear($this->year); $table = new TopTable_Corp($list, Language::get('kills')); $smarty->assign('monthly_stats', $table->generate()); $list = new TopList_CorpKills(); $list->addInvolvedAlliance($this->alliance); $list->setPodsNoobShips(config::get('podnoobs')); $table = new TopTable_Corp($list, Language::get('kills')); $smarty->assign('total_stats', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_monthly')); break; case "corp_kills_class": $smarty->assign('title', Language::get('topdestroyedships')); // Get all ShipClasses $sql = "select scl_id, scl_class from kb3_ship_classes\n\t\t\t\t\twhere scl_class not in ('Drone','Unknown') order by scl_class"; $qry = DBFactory::getDBQuery(); $qry->execute($sql); while ($row = $qry->getRow()) { $shipclass[] = new Shipclass($row['scl_id']); } $newrow = true; $ships = array(); foreach ($shipclass as $shp) { $list = new TopList_CorpKills(); $list->addInvolvedAlliance($this->alliance); $list->addVictimShipClass($shp); $table = new TopTable_Corp($list, Language::get('kills')); $content = $table->generate(); $ships[] = array('name' => $shp->getName(), 'table' => $content); } $smarty->assignByRef('ships', $ships); return $smarty->fetch(get_tpl('detail_kl_ships')); break; case "kills_class": $smarty->assign('title', Language::get('topdestroyedships')); // Get all ShipClasses $sql = "select scl_id, scl_class from kb3_ship_classes\n\t\t\t\t\twhere scl_class not in ('Drone','Unknown') order by scl_class"; $qry = DBFactory::getDBQuery(); $qry->execute($sql); while ($row = $qry->getRow()) { $shipclass[] = new Shipclass($row['scl_id']); } foreach ($shipclass as $shp) { $list = new TopList_Kills(); $list->addInvolvedAlliance($this->alliance); $list->addVictimShipClass($shp); $table = new TopTable_Pilot($list, Language::get('kills')); $content = $table->generate(); $ships[] = array('name' => $shp->getName(), 'table' => $content); } $smarty->assignByRef('ships', $ships); return $smarty->fetch(get_tpl('detail_kl_ships')); break; case "corp_losses_class": $smarty->assign('title', Language::get('toplostships')); // Get all ShipClasses $sql = "select scl_id, scl_class from kb3_ship_classes\n\t\t\t\t\twhere scl_class not in ('Drone','Unknown') order by scl_class"; $qry = DBFactory::getDBQuery(); $qry->execute($sql); while ($row = $qry->getRow()) { $shipclass[] = new Shipclass($row['scl_id']); } foreach ($shipclass as $shp) { $list = new TopList_CorpLosses(); $list->addVictimAlliance($this->alliance); $list->addVictimShipClass($shp); $table = new TopTable_Corp($list, Language::get('losses')); $content = $table->generate(); $ships[] = array('name' => $shp->getName(), 'table' => $content); } $smarty->assignByRef('ships', $ships); return $smarty->fetch(get_tpl('detail_kl_ships')); break; case "losses_class": $smarty->assign('title', Language::get('toplostships')); // Get all ShipClasses $sql = "select scl_id, scl_class from kb3_ship_classes\n\t\t\t\t\twhere scl_class not in ('Drone','Unknown') order by scl_class"; $qry = DBFactory::getDBQuery(); $qry->execute($sql); while ($row = $qry->getRow()) { $shipclass[] = new Shipclass($row['scl_id']); } foreach ($shipclass as $shp) { $list = new TopList_Losses(); $list->addVictimAlliance($this->alliance); $list->addVictimShipClass($shp); $table = new TopTable_Pilot($list, Language::get('losses')); $content = $table->generate(); $ships[] = array('name' => $shp->getName(), 'table' => $content); } $smarty->assignByRef('ships', $ships); return $smarty->fetch(get_tpl('detail_kl_ships')); break; case "corp_losses": $smarty->assign('title', Language::get('toplosers')); $smarty->assign('month', $this->monthname); $smarty->assign('year', $this->year); $smarty->assign('pmonth', $this->pmonth); $smarty->assign('pyear', $this->pyear); $smarty->assign('nmonth', $this->nmonth); $smarty->assign('nyear', $this->nyear); $smarty->assign('all_id', $this->all_id); $smarty->assign('url_previous', edkURI::build($args, array('view', 'corp_losses', true), array('y', $this->pyear, true), array('m', $this->pmonth, true))); $smarty->assign('url_next', edkURI::build($args, array('view', 'corp_losses', true), array('y', $this->nyear, true), array('m', $this->nmonth, true))); $list = new TopList_CorpLosses(); $list->addVictimAlliance($this->alliance); $list->setPodsNoobShips(config::get('podnoobs')); $list->setMonth($this->month); $list->setYear($this->year); $table = new TopTable_Corp($list, Language::get('losses')); $smarty->assign('monthly_stats', $table->generate()); $list = new TopList_CorpLosses(); $list->addVictimAlliance($this->alliance); $list->setPodsNoobShips(config::get('podnoobs')); $table = new TopTable_Corp($list, Language::get('losses')); $smarty->assign('total_stats', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_monthly')); break; case "pilot_kills": $smarty->assign('title', Language::get('topkillers')); $smarty->assign('month', $this->monthname); $smarty->assign('year', $this->year); $smarty->assign('pmonth', $this->pmonth); $smarty->assign('pyear', $this->pyear); $smarty->assign('nmonth', $this->nmonth); $smarty->assign('nyear', $this->nyear); $smarty->assign('all_id', $this->all_id); $smarty->assign('url_previous', edkURI::build($args, array('view', 'pilot_kills', true), array('y', $this->pyear, true), array('m', $this->pmonth, true))); $smarty->assign('url_next', edkURI::build($args, array('view', 'pilot_kills', true), array('y', $this->nyear, true), array('m', $this->nmonth, true))); $list = new TopList_Kills(); $list->setLimit(30); $list->addInvolvedAlliance($this->alliance); $list->setPodsNoobShips(config::get('podnoobs')); $list->setMonth($this->month); $list->setYear($this->year); $table = new TopTable_Pilot($list, Language::get('kills')); $smarty->assign('monthly_stats', $table->generate()); $list = new TopList_Kills(); $list->setLimit(30); $list->addInvolvedAlliance($this->alliance); $list->setPodsNoobShips(config::get('podnoobs')); $table = new TopTable_Pilot($list, Language::get('kills')); $smarty->assign('total_stats', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_monthly')); break; case "pilot_scores": $smarty->assign('title', Language::get('topscorers')); $smarty->assign('month', $this->monthname); $smarty->assign('year', $this->year); $smarty->assign('pmonth', $this->pmonth); $smarty->assign('pyear', $this->pyear); $smarty->assign('nmonth', $this->nmonth); $smarty->assign('nyear', $this->nyear); $smarty->assign('all_id', $this->all_id); $smarty->assign('url_previous', edkURI::build($args, array('view', 'pilot_scores', true), array('y', $this->pyear, true), array('m', $this->pmonth, true))); $smarty->assign('url_next', edkURI::build($args, array('view', 'pilot_scores', true), array('y', $this->nyear, true), array('m', $this->nmonth, true))); $list = new TopList_Score(); $list->addInvolvedAlliance($this->alliance); $list->setMonth($this->month); $list->setYear($this->year); $table = new TopTable_Pilot($list, Language::get('top_points')); $smarty->assign('monthly_stats', $table->generate()); $list = new TopList_Score(); $list->addInvolvedAlliance($this->alliance); $table = new TopTable_Pilot($list, Language::get('top_points')); $smarty->assign('total_stats', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_monthly')); break; case "pilot_losses": $smarty->assign('title', Language::get('toplosers')); $smarty->assign('month', $this->monthname); $smarty->assign('year', $this->year); $smarty->assign('pmonth', $this->pmonth); $smarty->assign('pyear', $this->pyear); $smarty->assign('nmonth', $this->nmonth); $smarty->assign('nyear', $this->nyear); $smarty->assign('all_id', $this->all_id); $smarty->assign('url_previous', edkURI::build($args, array('view', 'pilot_losses', true), array('y', $this->pyear, true), array('m', $this->pmonth, true))); $smarty->assign('url_next', edkURI::build($args, array('view', 'pilot_losses', true), array('y', $this->nyear, true), array('m', $this->nmonth, true))); $list = new TopList_Losses(); $list->addVictimAlliance($this->alliance); $list->setPodsNoobShips(config::get('podnoobs')); $list->setMonth($this->month); $list->setYear($this->year); $table = new TopTable_Pilot($list, Language::get('losses')); $smarty->assign('monthly_stats', $table->generate()); $list = new TopList_Losses(); $list->addVictimAlliance($this->alliance); $list->setPodsNoobShips(config::get('podnoobs')); $table = new TopTable_Pilot($list, Language::get('losses')); $smarty->assign('total_stats', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_monthly')); break; case "ships_weapons": $view = "ships_weapons"; $shiplist = new TopList_Ship(); $shiplist->addInvolvedAlliance($this->alliance); $shiplisttable = new TopTable_Ship($shiplist); $smarty->assign('ships', $shiplisttable->generate()); $weaponlist = new TopList_Weapon(); $weaponlist->addInvolvedAlliance($this->alliance); $weaponlisttable = new TopTable_Weapon($weaponlist); $smarty->assign('title', Language::get('ships_weapons')); $smarty->assign('weapons', $weaponlisttable->generate()); return $smarty->fetch(get_tpl('detail_kl_ships_weapons')); break; case 'violent_systems': $smarty->assign('title', Language::get('topmostviolentsys')); $smarty->assign('month', $this->monthname); $smarty->assign('year', $this->year); $smarty->assign('pmonth', $this->pmonth); $smarty->assign('pyear', $this->pyear); $smarty->assign('nmonth', $this->nmonth); $smarty->assign('nyear', $this->nyear); $smarty->assign('all_id', $this->all_id); $smarty->assign('url_previous', edkURI::build($args, array('view', 'violent_systems', true), array('y', $this->pyear, true), array('m', $this->pmonth, true))); $smarty->assign('url_next', edkURI::build($args, array('view', 'violent_systems', true), array('y', $this->nyear, true), array('m', $this->nmonth, true))); $startdate = gmdate('Y-m-d H:i', makeStartDate(0, $this->year, $this->month)); $enddate = gmdate('Y-m-d H:i', makeEndDate(0, $this->year, $this->month)); $sql = "select sys.sys_name, sys.sys_sec, sys.sys_id, count(kll.kll_id) as kills\n\t\t\t\t\t\t\tfrom kb3_systems sys, kb3_kills kll, kb3_inv_all ina\n\t\t\t\t\t\t\twhere kll.kll_system_id = sys.sys_id\n\t\t\t\t\t\t\tand ina.ina_kll_id = kll.kll_id\n\t\t\t\t\t\t\tand ina.ina_all_id = " . $this->all_id; $sql .= " and kll.kll_timestamp > '{$startdate}'\n\t\t\t\t\t\t\tand kll.kll_timestamp < '{$enddate}'\n\t\t\t\t\t\t\tand ina.ina_timestamp > '{$startdate}'\n\t\t\t\t\t\t\tand ina.ina_timestamp < '{$enddate}'\n\t\t\t\t\t\t\tgroup by sys.sys_id\n\t\t\t\t\t\t\torder by kills desc, sys.sys_name asc\n\t\t\t\t\t\t\tlimit 25"; $qry = DBFactory::getDBQuery(); $qry->execute($sql); $odd = false; $counter = 1; $syslist = array(); while ($row = $qry->getRow()) { if (!$odd) { $odd = true; $rowclass = 'kb-table-row-odd'; } else { $odd = false; $rowclass = 'kb-table-row-even'; } $syslist[] = array("counter" => $counter, "url" => "?a=system_detail&sys_id=" . $row['sys_id'], "name" => $row['sys_name'], "sec" => roundsec($row['sys_sec']), "kills" => (int) $row['kills']); $counter++; } $smarty->assignByRef('syslist', $syslist); $smarty->assign('monthly_stats', $smarty->fetch(get_tpl(violent_systems))); $sql = "select sys.sys_name, sys.sys_id, sys.sys_sec, count(kll.kll_id) as kills\n\t\t\t\t\t\t\tfrom kb3_systems sys, kb3_kills kll, kb3_inv_all ina\n\t\t\t\t\t\t\twhere kll.kll_system_id = sys.sys_id\n\t\t\t\t\t\t\tand ina.ina_kll_id = kll.kll_id\n\t\t\t\t\t\t\tand ina.ina_all_id = " . $this->all_id; $sql .= " group by sys.sys_id\n\t\t\t\t\t\t\torder by kills desc, sys.sys_name asc\n\t\t\t\t\t\t\tlimit 25"; $qry = DBFactory::getDBQuery(); $qry->execute($sql); $odd = false; $counter = 1; $syslist = array(); while ($row = $qry->getRow()) { if (!$odd) { $odd = true; $rowclass = 'kb-table-row-odd'; } else { $odd = false; $rowclass = 'kb-table-row-even'; } $syslist[] = array("counter" => $counter, "url" => "?a=system_detail&sys_id=" . $row['sys_id'], "name" => $row['sys_name'], "sec" => roundsec($row['sys_sec']), "kills" => (int) $row['kills']); $counter++; } $smarty->assignByRef('syslist', $syslist); $smarty->assign('total_stats', $smarty->fetch(get_tpl(violent_systems))); return $smarty->fetch(get_tpl('detail_kl_monthly')); break; case 'corp_list': return $this->corpList(); break; case 'history': $allsum = new allianceSummary($this->alliance); $smarty->assign('title', Language::get('history')); $smarty->assign('summary', $allsum->getMonthlySummary()); return $smarty->fetch(get_tpl('detail_history')); break; } return ''; }
/** * Build the killlists that are needed for the options selected. */ function killList() { global $smarty; if (isset($this->viewList[$this->view])) { return call_user_func_array($this->viewList[$this->view], array(&$this)); } $scl_id = (int) edkURI::getArg('scl_id'); switch ($this->view) { case "kills": $list = new KillList(); $list->setOrdered(true); $list->addInvolvedPilot($this->pilot); if ($scl_id) { $list->addVictimShipClass($scl_id); } $list->setPageSplit(config::get('killcount')); $pagesplitter = new PageSplitter($list->getCount(), config::get('killcount')); $table = new KillListTable($list); $smarty->assign('splitter', $pagesplitter->generate()); $smarty->assign('kills', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_kills')); break; case "losses": $list = new KillList(); $list->setOrdered(true); $list->addVictimPilot($this->pilot); if ($scl_id) { $list->addVictimShipClass($scl_id); } else { $list->setPodsNoobships(config::get('podnoobs')); } $list->setPageSplit(config::get('killcount')); $pagesplitter = new PageSplitter($list->getCount(), config::get('killcount')); $table = new KillListTable($list); $smarty->assign('splitter', $pagesplitter->generate()); $smarty->assign('losses', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_losses')); break; case "ships_weapons": $shiplist = new TopList_Ship(); $shiplist->addInvolvedPilot($this->pilot); $shiplisttable = new TopTable_Ship($shiplist); $smarty->assign('ships', $shiplisttable->generate()); $weaponlist = new TopList_Weapon(); $weaponlist->addInvolvedPilot($this->pilot); $weaponlisttable = new TopTable_Weapon($weaponlist); $smarty->assign('weapons', $weaponlisttable->generate()); return $smarty->fetch(get_tpl('detail_kl_ships_weapons')); break; case 'history': $pltsum = new pilotSummary($this->plt_id); $smarty->assign('title', Language::get('history')); $smarty->assign('summary', $pltsum->getMonthlySummary()); return $smarty->fetch(get_tpl('detail_history')); break; default: $list = new KillList(); $list->setOrdered(true); if (config::get('comments_count')) { $list->setCountComments(true); } if (config::get('killlist_involved')) { $list->setCountInvolved(true); } $list->setLimit(10); $list->addInvolvedPilot($this->pilot); if ($scl_id) { $list->addVictimShipClass($scl_id); } else { $list->setPodsNoobships(config::get('podnoobs')); } $table = new KillListTable($list); $smarty->assign('kills', $table->generate()); $list = new KillList(); $list->setOrdered(true); if (config::get('comments_count')) { $list->setCountComments(true); } if (config::get('killlist_involved')) { $list->setCountInvolved(true); } $list->setLimit(10); $list->addVictimPilot($this->pilot); if ($scl_id) { $list->addVictimShipClass($scl_id); } else { $list->setPodsNoobships(config::get('podnoobs')); } $table = new KillListTable($list); $smarty->assign('losses', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_default')); break; } return $html; }
/** * Build the killlists that are needed for the options selected. */ function killList() { global $smarty; if (isset($this->viewList[$this->view])) { return call_user_func_array($this->viewList[$this->view], array(&$this)); } $args = array(); if ($this->crp_external_id) { $args[] = array('crp_ext_id', $this->crp_external_id, true); } else { $args[] = array('crp_id', $this->crp_id, true); } $pyear = array('y', $this->pyear, true); $nyear = array('y', $this->nyear, true); $pmonth = array('m', $this->pmonth, true); $nmonth = array('m', $this->nmonth, true); switch ($this->view) { case "": $list = new KillList(); $list->setOrdered(true); $list->setLimit(10); $list->addInvolvedCorp($this->crp_id); if ($this->scl_id) { $list->addVictimShipClass($this->scl_id); } else { $list->setPodsNoobShips(config::get('podnoobs')); } if (config::get('comments_count')) { $list->setCountComments(true); } if (config::get('killlist_involved')) { $list->setCountInvolved(true); } $ktab = new KillListTable($list); $ktab->setLimit(10); $smarty->assign('kills', $ktab->generate()); $list = new KillList(); $list->setOrdered(true); $list->setLimit(10); $list->addVictimCorp($this->crp_id); if ($this->scl_id) { $list->addVictimShipClass($this->scl_id); } else { $list->setPodsNoobShips(config::get('podnoobs')); } if (config::get('comments_count')) { $list->setCountComments(true); } if (config::get('killlist_involved')) { $list->setCountInvolved(true); } $ltab = new KillListTable($list); $ltab->setLimit(10); $smarty->assign('losses', $ltab->generate()); return $smarty->fetch(get_tpl('detail_kl_default')); break; case "kills": $list = new KillList(); $list->setOrdered(true); $list->addInvolvedCorp($this->crp_id); if ($this->scl_id) { $list->addVictimShipClass($this->scl_id); } else { $list->setPodsNoobShips(config::get('podnoobs')); } $list->setPageSplit(config::get('killcount')); $pagesplitter = new PageSplitter($list->getCount(), config::get('killcount')); $table = new KillListTable($list); $smarty->assign('splitter', $pagesplitter->generate()); $smarty->assign('kills', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_kills')); break; case "losses": $list = new KillList(); $list->setOrdered(true); $list->addVictimCorp($this->crp_id); if ($this->scl_id) { $list->addVictimShipClass($this->scl_id); } else { $list->setPodsNoobShips(config::get('podnoobs')); } $list->setPageSplit(config::get('killcount')); $pagesplitter = new PageSplitter($list->getCount(), config::get('killcount')); $table = new KillListTable($list); $smarty->assign('splitter', $pagesplitter->generate()); $smarty->assign('losses', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_losses')); break; case "pilot_kills": $smarty->assign('title', 'Top Killers'); $smarty->assign('month', $this->monthname); $smarty->assign('year', $this->year); $smarty->assign('pmonth', $this->pmonth); $smarty->assign('pyear', $this->pyear); $smarty->assign('nmonth', $this->nmonth); $smarty->assign('nyear', $this->nyear); $smarty->assign('crp_id', $this->crp_id); $smarty->assign('url_previous', edkURI::build($args, array('view', 'pilot_kills', true), $pyear, $pmonth)); $smarty->assign('url_next', edkURI::build($args, array('view', 'pilot_kills', true), $nyear, $nmonth)); $list = new TopList_Kills(); $list->setLimit(30); $list->addInvolvedCorp($this->crp_id); $list->setPodsNoobShips(config::get('podnoobs')); $list->setMonth($this->month); $list->setYear($this->year); $table = new TopTable_Pilot($list, "Kills"); $smarty->assign('monthly_stats', $table->generate()); $list = new TopList_Kills(); $list->setLimit(30); $list->addInvolvedCorp($this->crp_id); $list->setPodsNoobShips(config::get('podnoobs')); $table = new TopTable_Pilot($list, "Kills"); $smarty->assign('total_stats', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_monthly')); break; case "pilot_scores": $smarty->assign('title', 'Top Scorers'); $smarty->assign('month', $this->monthname); $smarty->assign('year', $this->year); $smarty->assign('pmonth', $this->pmonth); $smarty->assign('pyear', $this->pyear); $smarty->assign('nmonth', $this->nmonth); $smarty->assign('nyear', $this->nyear); $smarty->assign('crp_id', $this->crp_id); $smarty->assign('url_previous', edkURI::build($args, array('view', 'pilot_scores', true), $pyear, $pmonth)); $smarty->assign('url_next', edkURI::build($args, array('view', 'pilot_scores', true), $nyear, $nmonth)); $list = new TopList_Score(); $list->addInvolvedCorp($this->crp_id); $list->setPodsNoobShips(config::get('podnoobs')); $list->setMonth($this->month); $list->setYear($this->year); $table = new TopTable_Pilot($list, "Points"); $smarty->assign('monthly_stats', $table->generate()); $list = new TopList_Score(); $list->addInvolvedCorp($this->crp_id); $list->setPodsNoobShips(config::get('podnoobs')); $table = new TopTable_Pilot($list, "Points"); $smarty->assign('total_stats', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_monthly')); break; case "pilot_solo": $smarty->assign('title', 'Top Solokillers'); $smarty->assign('month', $this->monthname); $smarty->assign('year', $this->year); $smarty->assign('pmonth', $this->pmonth); $smarty->assign('pyear', $this->pyear); $smarty->assign('nmonth', $this->nmonth); $smarty->assign('nyear', $this->nyear); $smarty->assign('crp_id', $this->crp_id); $smarty->assign('url_previous', edkURI::build($args, array('view', 'pilot_solo', true), $pyear, $pmonth)); $smarty->assign('url_next', edkURI::build($args, array('view', 'pilot_solo', true), $nyear, $nmonth)); $list = new TopList_SoloKiller(); $list->addInvolvedCorp($this->crp_id); $list->setPodsNoobShips(config::get('podnoobs')); $list->setMonth($this->month); $list->setYear($this->year); $table = new TopTable_Pilot($list, "Solokills"); $smarty->assign('monthly_stats', $table->generate()); $list = new TopList_SoloKiller(); $list->addInvolvedCorp($this->crp_id); $list->setPodsNoobShips(config::get('podnoobs')); $table = new TopTable_Pilot($list, "Solokills"); $smarty->assign('total_stats', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_monthly')); break; case "pilot_damage": $smarty->assign('title', 'Top Damagedealers'); $smarty->assign('month', $this->monthname); $smarty->assign('year', $this->year); $smarty->assign('pmonth', $this->pmonth); $smarty->assign('pyear', $this->pyear); $smarty->assign('nmonth', $this->nmonth); $smarty->assign('nyear', $this->nyear); $smarty->assign('crp_id', $this->crp_id); $smarty->assign('url_previous', edkURI::build($args, array('view', 'pilot_damage', true), $pyear, $pmonth)); $smarty->assign('url_next', edkURI::build($args, array('view', 'pilot_damage', true), $nyear, $nmonth)); $list = new TopList_DamageDealer(); $list->addInvolvedCorp($this->crp_id); $list->setPodsNoobShips(config::get('podnoobs')); $list->setMonth($this->month); $list->setYear($this->year); $table = new TopTable_Pilot($list, "Kills"); $smarty->assign('monthly_stats', $table->generate()); $list = new TopList_DamageDealer(); $list->addInvolvedCorp($this->crp_id); $list->setPodsNoobShips(config::get('podnoobs')); $table = new TopTable_Pilot($list, "Kills"); $smarty->assign('total_stats', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_monthly')); break; case "pilot_griefer": $smarty->assign('title', 'Top Griefers'); $smarty->assign('month', $this->monthname); $smarty->assign('year', $this->year); $smarty->assign('pmonth', $this->pmonth); $smarty->assign('pyear', $this->pyear); $smarty->assign('nmonth', $this->nmonth); $smarty->assign('nyear', $this->nyear); $smarty->assign('crp_id', $this->crp_id); $smarty->assign('url_previous', edkURI::build($args, array('view', 'pilot_griefer', true), $pyear, $pmonth)); $smarty->assign('url_next', edkURI::build($args, array('view', 'pilot_griefer', true), $nyear, $nmonth)); $list = new TopList_Kills(); $list->addVictimShipClass(20); // freighter $list->addVictimShipClass(22); // exhumer $list->addVictimShipClass(7); // industrial $list->addVictimShipClass(12); // barge $list->addVictimShipClass(14); // transport $list->addInvolvedCorp($this->crp_id); $list->setMonth($this->month); $list->setYear($this->year); $table = new TopTable_Pilot($list, "Kills"); $smarty->assign('monthly_stats', $table->generate()); $list = new TopList_Kills(); $list->addVictimShipClass(20); // freighter $list->addVictimShipClass(22); // exhumer $list->addVictimShipClass(7); // industrial $list->addVictimShipClass(12); // barge $list->addVictimShipClass(14); // transport $list->addInvolvedCorp($this->crp_id); $table = new TopTable_Pilot($list, "Kills"); $smarty->assign('total_stats', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_monthly')); break; case "pilot_losses": $smarty->assign('title', 'Top Losers'); $smarty->assign('month', $this->monthname); $smarty->assign('year', $this->year); $smarty->assign('pmonth', $this->pmonth); $smarty->assign('pyear', $this->pyear); $smarty->assign('nmonth', $this->nmonth); $smarty->assign('nyear', $this->nyear); $smarty->assign('crp_id', $this->crp_id); $smarty->assign('url_previous', edkURI::build($args, array('view', 'pilot_losses', true), $pyear, $pmonth)); $smarty->assign('url_next', edkURI::build($args, array('view', 'pilot_losses', true), $nyear, $nmonth)); $list = new TopList_Losses(); $list->addVictimCorp($this->crp_id); $list->setPodsNoobShips(config::get('podnoobs')); $list->setMonth($this->month); $list->setYear($this->year); $table = new TopTable_Pilot($list, "Losses"); $smarty->assign('monthly_stats', $table->generate()); $list = new TopList_Losses(); $list->addVictimCorp($this->crp_id); $list->setPodsNoobShips(config::get('podnoobs')); $table = new TopTable_Pilot($list, "Losses"); $smarty->assign('total_stats', $table->generate()); return $smarty->fetch(get_tpl('detail_kl_monthly')); break; case "ships_weapons": $shiplist = new TopList_Ship(); $shiplist->addInvolvedCorp($this->crp_id); $shiplisttable = new TopTable_Ship($shiplist); $smarty->assign('ships', $shiplisttable->generate()); $weaponlist = new TopList_Weapon(); $weaponlist->addInvolvedCorp($this->crp_id); $weaponlisttable = new TopTable_Weapon($weaponlist); $smarty->assign('weapons', $weaponlisttable->generate()); return $smarty->fetch(get_tpl('detail_kl_ships_weapons')); break; case 'history': $crpsum = new corpSummary($this->crp_id); $smarty->assign('title', Language::get('history')); $smarty->assign('summary', $crpsum->getMonthlySummary()); return $smarty->fetch(get_tpl('detail_history')); break; case 'violent_systems': $smarty->assign('title', 'Most violent systems'); $smarty->assign('month', $this->monthname); $smarty->assign('year', $this->year); $smarty->assign('pmonth', $this->pmonth); $smarty->assign('pyear', $this->pyear); $smarty->assign('nmonth', $this->nmonth); $smarty->assign('nyear', $this->nyear); $smarty->assign('crp_id', $this->crp_id); $smarty->assign('url_previous', edkURI::build($args, array('view', 'violent_systems', true), $pyear, $pmonth)); $smarty->assign('url_next', edkURI::build($args, array('view', 'violent_systems', true), $nyear, $nmonth)); $startdate = gmdate('Y-m-d H:i', makeStartDate(0, $this->year, $this->month)); $enddate = gmdate('Y-m-d H:i', makeEndDate(0, $this->year, $this->month)); $sql = "select sys.sys_name, sys.sys_sec, sys.sys_id, count(kll.kll_id) as kills\n\t\t\t\t\t\t\tfrom kb3_systems sys, kb3_kills kll, kb3_inv_crp inc\n\t\t\t\t\t\t\twhere kll.kll_system_id = sys.sys_id\n\t\t\t\t\t\t\tand inc.inc_kll_id = kll.kll_id\n\t\t\t\t\t\t\tand inc.inc_crp_id = " . $this->crp_id; $sql .= " and kll.kll_timestamp > '{$startdate}'\n\t\t\t\t\t\t\tand kll.kll_timestamp < '{$enddate}'\n\t\t\t\t\t\t\tand inc.inc_timestamp > '{$startdate}'\n\t\t\t\t\t\t\tand inc.inc_timestamp < '{$enddate}'\n\t\t\t\t\t\t\tgroup by sys.sys_id\n\t\t\t\t\t\t\torder by kills desc, sys.sys_name asc\n\t\t\t\t\t\t\tlimit 25"; $qry = DBFactory::getDBQuery(); $qry->execute($sql); $odd = false; $counter = 1; $syslist = array(); while ($row = $qry->getRow()) { if (!$odd) { $odd = true; $rowclass = 'kb-table-row-odd'; } else { $odd = false; $rowclass = 'kb-table-row-even'; } $syslist[] = array("counter" => $counter, "url" => edkURI::build(array(array('a', 'system_detail', true), array('sys_id', $row['sys_id'], true))), "name" => $row['sys_name'], "sec" => roundsec($row['sys_sec']), "kills" => $row['kills']); $counter++; } $smarty->assignByRef('syslist', $syslist); $smarty->assign('monthly_stats', $smarty->fetch(get_tpl('violent_systems'))); $sql = "select sys.sys_name, sys.sys_id, sys.sys_sec, count(kll.kll_id) as kills\n\t\t\t\t\t\t\tfrom kb3_systems sys, kb3_kills kll, kb3_inv_crp inc\n\t\t\t\t\t\t\twhere kll.kll_system_id = sys.sys_id\n\t\t\t\t\t\t\tand inc.inc_kll_id = kll.kll_id\n\t\t\t\t\t\t\tand inc.inc_crp_id = " . $this->crp_id; $sql .= " group by sys.sys_id\n\t\t\t\t\t\t\torder by kills desc, sys.sys_name asc\n\t\t\t\t\t\t\tlimit 25"; $qry = DBFactory::getDBQuery(); $qry->execute($sql); $odd = false; $counter = 1; $syslist = array(); while ($row = $qry->getRow()) { if (!$odd) { $odd = true; $rowclass = 'kb-table-row-odd'; } else { $odd = false; $rowclass = 'kb-table-row-even'; } $syslist[] = array("counter" => $counter, "url" => edkURI::build(array(array('a', 'system_detail', true), array('sys_id', $row['sys_id'], true))), "name" => $row['sys_name'], "sec" => roundsec($row['sys_sec']), "kills" => $row['kills']); $counter++; } $smarty->assignByRef('syslist', $syslist); $smarty->assign('total_stats', $smarty->fetch(get_tpl('violent_systems'))); return $smarty->fetch(get_tpl('detail_kl_monthly')); break; } return $html; }