Changeset 826 for trunk/Modules/Team


Ignore:
Timestamp:
Mar 1, 2015, 3:38:19 PM (10 years ago)
Author:
chronos
Message:
  • Modified: Removed generation of user level to images as files. Level images ware replaced by HTML progress bar.
  • Modified: User XP level and translated count is now calculated during every translation save operation rather then calculated in user list and group view page show.
  • Fixed: Wrong indentation in some files.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Modules/Team/Team.php

    r816 r826  
    3030}
    3131
    32 include_once(dirname(__FILE__).'/../../img_level.php');
    33 
    3432class PageTeam extends Page
    3533{
     
    6058
    6159    $TableColumns = array(
    62         array('Name' => 'Name', 'Title' => T('Name')),
    63         array('Name' => 'URL', 'Title' => T('Web pages')),
    64         array('Name' => 'LeaderName', 'Title' => T('Leader')),
    65         array('Name' => 'NumberUser', 'Title' => T('Member count')),
    66         array('Name' => 'TimeCreate', 'Title' => T('Founding date')),
     60      array('Name' => 'Name', 'Title' => T('Name')),
     61      array('Name' => 'URL', 'Title' => T('Web pages')),
     62      array('Name' => 'LeaderName', 'Title' => T('Leader')),
     63      array('Name' => 'NumberUser', 'Title' => T('Member count')),
     64      array('Name' => 'TimeCreate', 'Title' => T('Founding date')),
    6765    );
    6866    if($this->System->User->Licence(LICENCE_USER)) $TableColumns[] = array('Name' => '', 'Title' => T('User actions'));
     
    7775    {
    7876      $Output .= '<tr>'.
    79           '<td><a href="?action=team&amp;id='.$Team['Id'].'">'.$Team['Name'].'</a></td>'.
    80           '<td><a href="http://'.$Team['URL'].'">'.$Team['URL'].'</a></td>'.
    81           '<td><a href="'.$this->System->Link('/user.php?user='.$Team['Leader']).'">'.$Team['LeaderName'].'</a></td>'.
    82           '<td><a href="'.$this->System->Link('/userlist.php?team='.$Team['Id']).'" title="Zobrazit členy týmu">'.$Team['NumberUser'].'</a></td>'.
    83           '<td>'.HumanDate($Team['TimeCreate']).'</td>';
     77        '<td><a href="?action=team&amp;id='.$Team['Id'].'">'.$Team['Name'].'</a></td>'.
     78        '<td><a href="http://'.$Team['URL'].'">'.$Team['URL'].'</a></td>'.
     79        '<td><a href="'.$this->System->Link('/user.php?user='.$Team['Leader']).'">'.$Team['LeaderName'].'</a></td>'.
     80        '<td><a href="'.$this->System->Link('/userlist.php?team='.$Team['Id']).'" title="Zobrazit členy týmu">'.$Team['NumberUser'].'</a></td>'.
     81        '<td>'.HumanDate($Team['TimeCreate']).'</td>';
    8482      if($this->System->User->Licence(LICENCE_USER))
    8583      {
     
    9290    }
    9391    $Output .= '</table>'.
    94         $PageList['Output'];
     92      $PageList['Output'];
    9593
    9694    return($Output);
     
    132130        {
    133131          $this->Database->query('INSERT INTO `Team` (`Name` ,`Description`, `URL`, `TimeCreate`, `Leader`)'.
    134               ' VALUES ("'.trim($_POST['Name']).'", "'.trim($_POST['Description']).'", "'.
    135               $_POST['URL'].'", NOW(), '.$this->System->User->Id.')');
     132            ' VALUES ("'.trim($_POST['Name']).'", "'.trim($_POST['Description']).'", "'.
     133            $_POST['URL'].'", NOW(), '.$this->System->User->Id.')');
    136134          $this->Database->query('UPDATE `User` SET `Team` = '.$this->Database->insert_id.' WHERE `ID` = '.$this->System->User->Id);
    137135          $Output .= ShowMessage('Překladatelský tým vytvořen.');
     
    158156          $Team = $DbResult->fetch_assoc();
    159157          $Output = '<form action="?action=finish_modify&amp;id='.$_GET['id'].'" method="post">'.
    160               '<fieldset><legend>Nastavení týmu</legend>'.
    161               '<table><tr><td>Jméno:</td><td><input type="text" name="Name" value="'.$Team['Name'].'"/></td></tr>'.
    162               '<tr><td>Webové stránky:</td><td>http://<input type="text" name="URL" value="'.$Team['URL'].'"/></td></tr>'.
    163               '<tr><td>Popis:</td><td><input type="text" name="Description" value="'.$Team['Description'].'"/></td></tr>'.
    164               '<tr><td colspan="2"><input type="submit" value="Uložit" /></td></tr>'.
    165               '</table></fieldset></form>';
     158            '<fieldset><legend>Nastavení týmu</legend>'.
     159            '<table><tr><td>Jméno:</td><td><input type="text" name="Name" value="'.$Team['Name'].'"/></td></tr>'.
     160            '<tr><td>Webové stránky:</td><td>http://<input type="text" name="URL" value="'.$Team['URL'].'"/></td></tr>'.
     161            '<tr><td>Popis:</td><td><input type="text" name="Description" value="'.$Team['Description'].'"/></td></tr>'.
     162            '<tr><td colspan="2"><input type="submit" value="Uložit" /></td></tr>'.
     163            '</table></fieldset></form>';
    166164        } else $Output = ShowMesage('Tým nenalezen.', MESSAGE_CRITICAL);
    167165      } else $Output = ShowMessage('Nezadáno id týmu', MESSAGE_CRITICAL);
     
    202200    {
    203201      $Output ='<form action="?action=finish_create" method="post">'.
    204           '<fieldset><legend>Vytvoření nového týmu</legend>'.
    205           '<table><tr><td>Jméno:</td><td><input type="text" name="Name" /></td></tr>'.
    206           '<tr><td>Webové stránky:</td><td>http://<input type="text" name="URL" value=""/></td></tr>'.
    207           '<tr><td>Popis:</td><td><input type="text" name="Description" /></td></tr>'.
    208           '<tr><td colspan="2"><input type="submit" value="Vytvořit a vstoupit" /></td></tr>'.
    209           '</table></fieldset></form>';
     202        '<fieldset><legend>Vytvoření nového týmu</legend>'.
     203        '<table><tr><td>Jméno:</td><td><input type="text" name="Name" /></td></tr>'.
     204        '<tr><td>Webové stránky:</td><td>http://<input type="text" name="URL" value=""/></td></tr>'.
     205        '<tr><td>Popis:</td><td><input type="text" name="Description" /></td></tr>'.
     206        '<tr><td colspan="2"><input type="submit" value="Vytvořit a vstoupit" /></td></tr>'.
     207        '</table></fieldset></form>';
    210208    } else $Output = ShowMessage(T('Access denied'), MESSAGE_CRITICAL);
    211209    return($Output);
     
    217215    if(array_key_exists('id', $_GET) and is_numeric($_GET['id']))
    218216    {
    219       ImgLevelUpdate();
    220 
    221217      $DbResult = $this->Database->query('SELECT `Id`, `Name`, `Description`, `URL`, `Leader`, '.
    222           '(SELECT COUNT(*) FROM `User` WHERE '.
    223           '`Team` = `Team`.`Id`) AS `NumberUser`, (SELECT SUM(`TranslatedCount`) FROM `User` WHERE '.
    224           '`Team` = `Team`.`Id`) AS `NumberTranslate` FROM '.
    225           '`Team` WHERE `Id`='.($_GET['id'] * 1));
     218        '(SELECT COUNT(*) FROM `User` WHERE '.
     219        '`Team` = `Team`.`Id`) AS `NumberUser`, '.
     220        '(SELECT SUM(`TranslatedCount`) FROM `User` WHERE `Team` = `Team`.`Id`) AS `NumberTranslate`, '.
     221        '(SELECT ROUND(AVG(`XP`)) FROM `User` WHERE `Team` = `Team`.`Id`) AS `AverageXP` FROM '.
     222        '`Team` WHERE `Id`='.($_GET['id'] * 1));
    226223      if($DbResult->num_rows > 0)
    227224      {
     
    233230        } else $Leader = array('Name' => '', 'Id' => 0);
    234231
    235         $Output .='<strong>Překladatelský tým '.$Team['Name'].'</strong><br />'.
    236             'Webové stránky: <a href="http://'.$Team['URL'].'">'.$Team['URL'].'</a><br/>'.
    237             'Vedoucí: <a href="'.$this->System->Link('/user.php?user='.$Leader['Id']).'">'.$Leader['Name'].'</a><br/>'.
    238             'Popis: '.$Team['Description'].'<br /><br />';
     232        $Output .='<h3>Překladatelský tým '.$Team['Name'].'</h3><br />'.
     233          'Webové stránky: <a href="http://'.$Team['URL'].'">'.$Team['URL'].'</a><br/>'.
     234          'Vedoucí: <a href="'.$this->System->Link('/user.php?user='.$Leader['Id']).'">'.$Leader['Name'].'</a><br/>';
     235        if($Team['Description'] != '')
     236          $Output .= 'Popis: '.$Team['Description'].'<br />';
     237        $Output .= '<br />';
    239238        //$Output .= '<a href="export/?team='.$Team['Id'].'">Exportovat překlad týmu</a> ';
    240239        if($this->System->User->Licence(LICENCE_USER))
    241240          $Output .='<a href="?action=gointeam&amp;id='.$Team['Id'].'">Vstoupit do týmu</a><br /><br />';
     241        $XP = GetLevelMinMax($Team['AverageXP']);
    242242        $Output .='<fieldset><legend>Statistika</legend>'.
    243             'Počet členů týmu: <a href="'.$this->System->Link('/userlist.php?team='.$Team['Id']).'" title="Zobrazit členy týmu">'.$Team['NumberUser'].'</a><br />'.
    244             'Počet přeložených textů týmu: <strong>'.$Team['NumberTranslate'].'</strong><br />'.
    245             'Průměrná úroveň překladatelů v týmu: <img src="'.$this->System->Link('/tmp/team/'.$Team['Name'].'/level.png').'" /><br /><br />'.
    246             '<strong>Stav dokončení týmu pro verzi '.$this->System->Config['Web']['GameVersion'].'</strong><br />';
     243          'Počet členů týmu: <a href="'.$this->System->Link('/userlist.php?team='.$Team['Id']).'" title="Zobrazit členy týmu">'.$Team['NumberUser'].'</a><br />'.
     244          'Počet přeložených textů týmu: <strong>'.$Team['NumberTranslate'].'</strong><br />'.
     245          'Průměrná úroveň překladatelů v týmu: <strong>'.$XP['Level'].'</strong> zkušenost: '.ProgressBar(150, round($XP['XP'] / $XP['MaxXP'] * 100, 2), $XP['XP'].' / '.$XP['MaxXP']).'<br />'.
     246          '<br />'.
     247          '<strong>Stav dokončení týmu pro verzi '.$this->System->Config['Web']['GameVersion'].'</strong><br />';
    247248
    248249        $BuildNumber = GetBuildNumber($this->System->Config['Web']['GameVersion']);
     
    256257          {
    257258            $Query .= 'SELECT (SELECT COUNT(DISTINCT(`Entry`)) FROM ('.
    258                 'SELECT `T`.`Entry` FROM `'.$DbRow['TablePrefix'].'` AS `T` '.
    259                 'WHERE (`User` IN (SELECT `ID` FROM `User` WHERE `Team` = '.$Team['Id'].')) '.
    260                 'AND (`Complete` = 1) AND (`T`.`Language`!='.$this->System->Config['OriginalLanguage'].') '.
    261                 'AND (`VersionStart` <= '.$BuildNumber.') AND (`VersionEnd` >= '.$BuildNumber.')'.
    262                 ') AS `C1`) AS `Translated`, '.
    263                 '(SELECT COUNT(DISTINCT(`Entry`)) FROM ('.
    264                 'SELECT `T`.`Entry` FROM `'.$DbRow['TablePrefix'].'` AS `T` '.
    265                 'WHERE (`Language` = '.$this->System->Config['OriginalLanguage'].') '.
    266                 'AND (`VersionStart` <= '.$BuildNumber.') AND (`VersionEnd` >= '.$BuildNumber.')'.
    267                 ') AS `C2`) AS `Total`, "'.$DbRow['Name'].'" AS `Name` UNION ';
     259              'SELECT `T`.`Entry` FROM `'.$DbRow['TablePrefix'].'` AS `T` '.
     260              'WHERE (`User` IN (SELECT `ID` FROM `User` WHERE `Team` = '.$Team['Id'].')) '.
     261              'AND (`Complete` = 1) AND (`T`.`Language`!='.$this->System->Config['OriginalLanguage'].') '.
     262              'AND (`VersionStart` <= '.$BuildNumber.') AND (`VersionEnd` >= '.$BuildNumber.')'.
     263              ') AS `C1`) AS `Translated`, '.
     264              '(SELECT COUNT(DISTINCT(`Entry`)) FROM ('.
     265              'SELECT `T`.`Entry` FROM `'.$DbRow['TablePrefix'].'` AS `T` '.
     266              'WHERE (`Language` = '.$this->System->Config['OriginalLanguage'].') '.
     267              'AND (`VersionStart` <= '.$BuildNumber.') AND (`VersionEnd` >= '.$BuildNumber.')'.
     268              ') AS `C2`) AS `Total`, "'.$DbRow['Name'].'" AS `Name` UNION ';
    268269          }
    269270          $Query = substr($Query, 0, - 6);
     
    276277          $Output .='<table class="BaseTable">';
    277278          $TableColumns = array(
    278               array('Name' => 'Name', 'Title' => 'Jméno'),
    279               array('Name' => 'Translated', 'Title' => 'Přeložených'),
    280               array('Name' => 'Total', 'Title' => 'Anglických'),
    281               array('Name' => 'Percent', 'Title' => 'Procenta'),
     279            array('Name' => 'Name', 'Title' => 'Jméno'),
     280            array('Name' => 'Translated', 'Title' => 'Přeložených'),
     281            array('Name' => 'Total', 'Title' => 'Anglických'),
     282            array('Name' => 'Percent', 'Title' => 'Procenta'),
    282283          );
    283284
Note: See TracChangeset for help on using the changeset viewer.