Вход Регистрация
Файл: includes/pages/ShowStatisticsPage.php
Строк: 256
<?php

##############################################################################
# *                                                                             #
# * XG PROYECT                                                                 #
# *                                                                           #
# * @copyright Copyright (C) 2008 - 2009 By lucky from xgproyect.net           #
# *                                                                             #
# *                                                                             #
# *  This program is free software: you can redistribute it and/or modify    #
# *  it under the terms of the GNU General Public License as published by    #
# *  the Free Software Foundation, either version 3 of the License, or       #
# *  (at your option) any later version.                                     #
# *                                                                             #
# *  This program is distributed in the hope that it will be useful,         #
# *  but WITHOUT ANY WARRANTY; without even the implied warranty of             #
# *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the             #
# *  GNU General Public License for more details.                             #
# *                                                                             #
##############################################################################

if(!defined('INSIDE')){ die(header("location:../../"));}

function 
ShowStatisticsPage($CurrentUser)
{
    global 
$game_config$dpath$lang;

    
$parse    $lang;
    
$who       = (isset($_POST['who']))   ? $_POST['who']   : $_GET['who'];
    if (!isset(
$who))
        
$who   1;

    
$type      = (isset($_POST['type']))  ? $_POST['type']  : $_GET['type'];
    if (!isset(
$type))
        
$type  1;

    
$range     = (isset($_POST['range'])) ? $_POST['range'] : $_GET['range'];
    if (!isset(
$range))
        
$range 1;

    
$parse['who']    = "<option value="1"". (($who == "1") ? " SELECTED" "") .">".$lang['st_player']."</option>";
    
$parse['who']   .= "<option value="2"". (($who == "2") ? " SELECTED" "") .">".$lang['st_alliance']."</option>";

    
$parse['type']   = "<option value="1"". (($type == "1") ? " SELECTED" "") .">".$lang['st_points']."</option>";
    
$parse['type']  .= "<option value="2"". (($type == "2") ? " SELECTED" "") .">".$lang['st_fleets']."</option>";
    
$parse['type']  .= "<option value="3"". (($type == "3") ? " SELECTED" "") .">".$lang['st_researh']."</option>";
    
$parse['type']  .= "<option value="4"". (($type == "4") ? " SELECTED" "") .">".$lang['st_buildings']."</option>";
    
$parse['type']  .= "<option value="5"". (($type == "5") ? " SELECTED" "") .">".$lang['st_defenses']."</option>";

    switch (
$type)
    {
        case 
1:
            
$Order   "total_points";
            
$Points  "total_points";
            
$Counts  "total_count";
            
$Rank    "total_rank";
            
$OldRank "total_old_rank";
        break;
        case 
2:
            
$Order   "fleet_count";
            
$Points  "fleet_points";
            
$Counts  "fleet_count";
            
$Rank    "fleet_rank";
            
$OldRank "fleet_old_rank";
        break;
        case 
3:
            
$Order   "tech_count";
            
$Points  "tech_points";
            
$Counts  "tech_count";
            
$Rank    "tech_rank";
            
$OldRank "tech_old_rank";
        break;
        case 
4:
            
$Order   "build_points";
            
$Points  "build_points";
            
$Counts  "build_count";
            
$Rank    "build_rank";
            
$OldRank "build_old_rank";
        break;
        case 
5:
            
$Order   "defs_points";
            
$Points  "defs_points";
            
$Counts  "defs_count";
            
$Rank    "defs_rank";
            
$OldRank "defs_old_rank";
        break;
        default:
            
$Order   "total_points";
            
$Points  "total_points";
            
$Counts  "total_count";
            
$Rank    "total_rank";
            
$OldRank "total_old_rank";
        break;
    }

    if (
$who == 2)
    {
        
$MaxAllys doquery ("SELECT COUNT(*) AS `count` FROM {{table}};"'alliance'true);

        if (
$MaxAllys['count'] > 100)
        {
            
$LastPage floor($MaxAllys['count'] / 100);
        }

        
$parse['range'] = "";

        for (
$Page 0$Page <= $LastPage$Page++)
        {
            
$PageValue      = ($Page 100) + 1;
            
$PageRange      $PageValue 99;
            
$parse['range'] .= "<option value="". $PageValue .""". (($range >= $PageValue && $range <= $PageRange) ? " SELECTED" "") .">"$PageValue ."-"$PageRange ."</option>";
        }

        
$parse['stat_header'] = parsetemplate(gettemplate('stat/stat_alliancetable_header'), $parse);
        
$start floor($range 100 100) * 100;
        
$stats_sql    =    'SELECT s.*, a.id, a.ally_members, a.ally_tag, a.ally_name FROM {{table}}statpoints as s
        INNER JOIN {{table}}alliance as a ON a.id = s.id_owner
        WHERE `stat_type` = 2 AND `stat_code` = 1
        ORDER BY `'
$Order .'` DESC LIMIT '$start .',100;';

        
$start++;
        
$parse['stat_date']   = date("Y-m-d, H:i:s",$game_config['stat_last_update']);
        
$parse['stat_values'] = "";
        
$query doquery($stats_sql'');

        while (
$StatRow mysql_fetch_assoc($query))
        {
            
$parse['ally_rank']       = $start;
            if ( 
$StatRow$OldRank ] == || $StatRow$Rank ] == 0)
            {
                
$rank_old                $start;
                
$QryUpdRank                doquery("UPDATE {{table}} SET `".$Rank."` = '".$start."', `".$OldRank."` = '".$start."' WHERE `stat_type` = '1' AND `stat_code` = '1' AND `id_owner` = '"intval($StatRow['id_owner']) ."';" "statpoints");
                
$StatRow$OldRank ]    = $start;
                
$StatRow$Rank ]        = $start;
            }

            
$ranking                  $StatRow$OldRank ] - $StatRow$Rank ];

            if (
$ranking == 0)
            {
                
$parse['ally_rankplus']   = "<font color=#87CEEB>*</font>";
            }

            if (
$ranking 0)
            {
                
$parse['ally_rankplus']   = "<font color=red>-".$ranking."</font>";
            }

            if (
$ranking 0)
            {
                
$parse['ally_rankplus']   = "<font color=green>+".$ranking."</font>";
            }

            
$parse['ally_tag']              = $StatRow['ally_tag'];
            
$parse['ally_name']             = $StatRow['ally_name'];
            
$parse['ally_mes']              = '';
            
$parse['ally_members']          = $StatRow['ally_members'];
            
$parse['ally_points']           = pretty_number$StatRow$Order ] );
            
$parse['ally_members_points'] =  pretty_numberfloor($StatRow$Order ] / $StatRow['ally_members']) );
            
$parse['stat_values']         .= parsetemplate(gettemplate('stat/stat_alliancetable'), $parse);
            
$start++;
        }
    }
    else
    {
        
$MaxUsers doquery ("SELECT COUNT(*) AS `count` FROM {{table}} WHERE `db_deaktjava` = '0';"'users'true);

        if (
$MaxUsers['count'] > 100)
        {
            
$LastPage floor($MaxUsers['count'] / 100);
        }

        
$parse['range'] = "";

        for (
$Page 0$Page <= $LastPage$Page++)
        {
            
$PageValue      = ($Page 100) + 1;
            
$PageRange      $PageValue 99;

            
$parse['range'] .= "<option value="". $PageValue .""". (($range >= $PageValue && $range <= $PageRange) ? " SELECTED" "") .">"$PageValue ."-"$PageRange ."</option>";
        }


        
$parse['stat_header'] = parsetemplate(gettemplate('stat/stat_playertable_header'), $parse);

        
$start floor($range 100 100) * 100;

        
$stats_sql    =    'SELECT s.*, u.id, u.username, u.ally_id, u.ally_name FROM {{table}}statpoints as s
        INNER JOIN {{table}}users as u ON u.id = s.id_owner
        WHERE `stat_type` = 1 AND `stat_code` = 1
        ORDER BY `'
$Order .'` DESC LIMIT '$start .',100;';

        
$query doquery($stats_sql'');

        
$start++;

        
$parse['stat_date']   = date("Y-m-d, H:i:s",$game_config['stat_last_update']);
        
$parse['stat_values'] = "";

        
$previusId 0;

        while (
$StatRow mysql_fetch_assoc($query))
        {
            
$parse['player_rank']     = $start;
            if ( 
$StatRow$OldRank ] == || $StatRow$Rank ] == 0)
            {
                
$rank_old                $start;
                
$QryUpdRank                doquery("UPDATE {{table}} SET `".$Rank."` = '".$start."', `".$OldRank."` = '".$start."' WHERE `stat_type` = '1' AND `stat_code` = '1' AND `id_owner` = '"intval($StatRow['id_owner']) ."';" "statpoints");
                
$StatRow$OldRank ]    = $start;
                
$StatRow$Rank ]        = $start;
            }

            
$ranking                  $StatRow$OldRank ] - $StatRow$Rank ];

            if (
$StatRow['id'] != $previusId)
            {
                
$previusId             $StatRow['id'];

                if (
$ranking == 0)
                {
                    
$parse['player_rankplus'] = "<font color=#87CEEB>*</font>";
                }

                if (
$ranking 0)
                    
$parse['player_rankplus'] = "<font color=red>".$ranking."</font>";

                if (
$ranking 0)
                    
$parse['player_rankplus'] = "<font color=green>+".$ranking."</font>";

                if (
$StatRow['id'] == $CurrentUser['id'])
                    
$parse['player_name']     = "<font color="lime">".$StatRow['username']."</font>";
                else
                    
$parse['player_name']     = $StatRow['username'];

                if (
$StatRow['id'] != $CurrentUser['id'])
                    
$parse['player_mes']      = "<a href="game.php?page=messages&mode=write&id=" . $StatRow['id'] . ""><img src="" . $dpath . "img/m.gif" border="0" title="Escribir un mensaje" /></a>";
                else
                    
$parse['player_mes']      = "";

                if (
$UsrRow['ally_name'] == $CurrentUser['ally_name'])
                {
                    
$parse['player_alliance'] = "<a href="game.php?page=alliance&mode=ainfo&a=".$StatRow['ally_id'].""><font color="#33CCFF">".$StatRow['ally_name']."</font></a>";
                
}
                else
                {
                    
$parse['player_alliance'] = "<a href="game.php?page=alliance&mode=ainfo&a=".$StatRow['ally_id']."">".$StatRow['ally_name']."</a>";
                }
                
$parse['player_points']   = pretty_number$StatRow$Order ] );
                
$parse['stat_values']    .= parsetemplate(gettemplate('stat/stat_playertable'), $parse);
                
$start++;
            }
        }
    }

    
display(parsetemplategettemplate('stat/stat_body'), $parse ));
}
?>
Онлайн: 0
Реклама