Ignore:
Timestamp:
Mar 1, 2015, 1:27:40 PM (10 years ago)
Author:
chronos
Message:
  • Added: Show user level and experience also on user profile page.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Modules/User/Profile.php

    r816 r825  
    135135    $Output = '';
    136136    $Query = 'SELECT `User`.`Name`, `UserTrace`.`LastLogin`, `UserTrace`.`LastIP`, '.
    137         '`User`.`Email`, `UserTrace`.`UserAgent`, `User`.`PreferredVersion`, '.
    138         '`User`.`TranslatedCount`, `User`.`Team`, `User`.`ID`, `User`.`Info`, '.
    139         '`Team`.`Name` AS `TeamName`, `Language`.`Name` AS `LanguageName`, '.
    140         '`ClientVersion`.`Version` AS `Version` FROM `User` '.
    141         'LEFT JOIN `UserTrace` ON `UserTrace`.`User` = `User`.`Id` '.
    142         'LEFT JOIN `Language` ON `Language`.`Id` = `User`.`Language` '.
    143         'LEFT JOIN `Team` ON `Team`.`Id` = `User`.`Team` '.
    144         'LEFT JOIN `ClientVersion` ON `ClientVersion`.`Id` = `User`.`PreferredVersion` '.
    145         'WHERE `User`.`Id` = '.($_GET['user'] * 1);
     137      '`User`.`Email`, `UserTrace`.`UserAgent`, `User`.`PreferredVersion`, '.
     138      '`User`.`TranslatedCount`, `User`.`Team`, `User`.`ID`, `User`.`Info`, '.
     139      '`Team`.`Name` AS `TeamName`, `Language`.`Name` AS `LanguageName`, '.
     140      '`ClientVersion`.`Version` AS `Version`, `User`.`XP` FROM `User` '.
     141      'LEFT JOIN `UserTrace` ON `UserTrace`.`User` = `User`.`Id` '.
     142      'LEFT JOIN `Language` ON `Language`.`Id` = `User`.`Language` '.
     143      'LEFT JOIN `Team` ON `Team`.`Id` = `User`.`Team` '.
     144      'LEFT JOIN `ClientVersion` ON `ClientVersion`.`Id` = `User`.`PreferredVersion` '.
     145      'WHERE `User`.`Id` = '.($_GET['user'] * 1);
    146146    $DbResult = $this->Database->query($Query);
    147147    if($DbResult->num_rows > 0)
    148148    {
    149     $UserLine = $DbResult->fetch_array();
    150 
    151     $Output .=
    152     '<h3>Překladatel '.$UserLine['Name'].'</h3>'.
    153     'Výchozí jazyk: <strong>'.$UserLine['LanguageName'].'</strong><br />'.
    154     'Výchozí verze klienta: <a href="'.$this->System->Link('/client-version/?action=item&amp;id='.$UserLine['PreferredVersion']).'"><strong>'.$UserLine['Version'].'</strong></a><br />'.
    155     'Poslední připojení: <strong>'.HumanDateTime($UserLine['LastLogin']).'</strong><br />'.
    156     'Počet přeložených: <a href="TranslationList.php?user='.$UserLine['ID'].'&amp;state=2&amp;group=0" title="Zobrazit Všechny jeho přeložené texty"><strong>'.$UserLine['TranslatedCount'].'</strong></a><br />';
    157     if($UserLine['TeamName'] != '')
    158       $Output .= 'Člen týmu: <a href="team/?action=team&amp;id='.$UserLine['Team'].'"><strong>'.$UserLine['TeamName'].'</strong></a><br />';
    159     //user tags
    160     $Query = 'SELECT * FROM `UserTag` '.
    161      'LEFT JOIN `UserTagType` ON `UserTagType`.`ID` = `UserTag`.`UserTagType` '.
    162      'WHERE `User` = '.($_GET['user'] * 1);
    163     $DbResult = $this->Database->query($Query);
    164     if ($DbResult->num_rows != 0) {
    165       $Output .= 'Překladatel se řídí těmito pravidly:<br />';
    166       $Output .= '<ul>';
    167       while ($UserTag = $DbResult->fetch_array()) {
    168         $Output .= ' <li>'.$UserTag['Text'].'</li>';
    169       }
    170       $Output .= '</ul>';
    171     }
     149      $UserLine = $DbResult->fetch_array();
     150
     151      $XP = GetLevelMinMax($UserLine['XP']);
     152      $Output .=
     153        '<h3>Překladatel '.$UserLine['Name'].'</h3>'.
     154        'Výchozí jazyk: <strong>'.$UserLine['LanguageName'].'</strong><br />'.
     155        'Výchozí verze klienta: <a href="'.$this->System->Link('/client-version/?action=item&amp;id='.$UserLine['PreferredVersion']).'"><strong>'.$UserLine['Version'].'</strong></a><br />'.
     156        'Poslední připojení: <strong>'.HumanDateTime($UserLine['LastLogin']).'</strong><br />'.
     157        'Počet přeložených: <a href="TranslationList.php?user='.$UserLine['ID'].'&amp;state=2&amp;group=0" title="Zobrazit Všechny jeho přeložené texty"><strong>'.$UserLine['TranslatedCount'].'</strong></a><br />'.
     158        'Úroveň: <strong>'.$XP['Level'].'</strong><br/>'.
     159        'Zkušenost: '.ProgressBar(150, round($XP['XP'] / $XP['MaxXP'] * 100, 2), $XP['XP'].' / '.$XP['MaxXP']).'<br/>';
     160      if($UserLine['TeamName'] != '')
     161        $Output .= 'Člen týmu: <a href="team/?action=team&amp;id='.$UserLine['Team'].'"><strong>'.$UserLine['TeamName'].'</strong></a><br />';
     162
     163      // User tags
     164      $Query = 'SELECT * FROM `UserTag` '.
     165        'LEFT JOIN `UserTagType` ON `UserTagType`.`ID` = `UserTag`.`UserTagType` '.
     166        'WHERE `User` = '.($_GET['user'] * 1);
     167      $DbResult = $this->Database->query($Query);
     168      if ($DbResult->num_rows != 0) {
     169        $Output .= 'Překladatel se řídí těmito pravidly:<br />';
     170        $Output .= '<ul>';
     171        while ($UserTag = $DbResult->fetch_array()) {
     172          $Output .= ' <li>'.$UserTag['Text'].'</li>';
     173        }
     174        $Output .= '</ul>';
     175      }
    172176
    173177
     
    233237          '<input type="submit" value="Odeslat" />'.
    234238          '</div></form></fieldset>';
    235     }
     239      }
    236240    } else $Output .= ShowMessage('Uživatel nenalezen', MESSAGE_CRITICAL);
    237241    return($Output);
Note: See TracChangeset for help on using the changeset viewer.