Changeset 115


Ignore:
Timestamp:
Feb 19, 2009, 8:33:55 PM (15 years ago)
Author:
maron
Message:

Možnost seřadit seznam uživatelů v stahování

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/download.php

    r110 r115  
    273273    $Columns = '';
    274274    $Joins = '';
     275
     276        //řezení podle odkazu
     277                if(array_key_exists('Order', $_GET)) $order = $_GET['Order'];
     278                else  $order = 'T.TranslatedCount';
     279                if(array_key_exists('Desc', $_GET)) $desc = $_GET['Desc'];
     280                else  $desc = '';
     281                if($desc == '') $desc = 'DESC'; else $desc = '';
     282               
    275283    foreach($TranslationTree as $Group)
    276284      if($Group['TablePrefix'] != '')
     
    279287        $Joins .= ' LEFT JOIN (SELECT User, COUNT(User) as Count FROM `'.$Group['TablePrefix'].'` WHERE (Complete = 1) AND (Language <> 0) GROUP BY User) as T'.$Group['Id'].' ON user.ID=T'.$Group['Id'].'.User';
    280288      }
    281 
    282     $Query = 'SELECT T.ID, T.TranslatedCount, T.user FROM (SELECT user.ID, user.user, ('.substr($Columns, 0, -3).') as TranslatedCount FROM `user`'.$Joins.') AS T WHERE T.TranslatedCount > 0 ORDER BY T.TranslatedCount DESC';
     289    $Query = 'SELECT T.ID, T.TranslatedCount, T.user, T.XP FROM (SELECT user.ID, user.user, user.XP, ('.substr($Columns, 0, -3).') as TranslatedCount FROM `user`'.$Joins.') AS T WHERE T.TranslatedCount > 0 ORDER BY '.$order.' '.$desc;
    283290    $ID = $Database->SQLCommand($Query);
    284291
    285292        // Rebuild user order list
    286293        $Users = array();
    287         while($Line = mysql_fetch_assoc($ID)) $Users[$Line['ID']] = $Line;
    288         $UsersOrder = explode(',', $ExportSetting['users-order']);
    289         foreach($Users as $User)
    290           if(!in_array($User['ID'], $UsersOrder)) $UsersOrder[] = $User['ID'];
    291         foreach($UsersOrder as $Index => $UserId)
    292           if(!array_key_exists($UserId, $Users)) unset($UsersOrder[$Index]);
     294        while($Line = mysql_fetch_assoc($ID)) {
     295                 $Users[$Line['ID']] = $Line;
     296                 $UsersOrder[] = $Line['ID'];
     297        }
     298        //řazení podle posledního použitého
     299        if(!array_key_exists('Order', $_GET)) {
     300                $UsersOrder = explode(',', $ExportSetting['users-order']);
     301                foreach($Users as $User)
     302                        if(!in_array($User['ID'], $UsersOrder)) $UsersOrder[] = $User['ID'];
     303                foreach($UsersOrder as $Index => $UserId)
     304                        if(!array_key_exists($UserId, $Users)) unset($UsersOrder[$Index]);
     305        }
    293306        $ExportSetting['users-order'] = implode(',', $UsersOrder);
     307
    294308
    295309        echo('<div onclick="CheckAll()">'.CheckBox('CheckAll', False, 'CheckAll').' Zatrhnout vše</div>');     
    296310       
    297311        echo('<table><tr><td>'.
    298         '<table class="BaseTable" id="users-table" width="100%"><tr><th>Jméno</th><th>Překladů</th><th></th></tr>');
     312        '<table class="BaseTable" id="users-table" width="100%"><tr>
     313        <th><a href="?Order=user&amp;Desc='.$desc.'">Jméno</a></th>
     314        <th><a href="?Order=T.TranslatedCount&amp;Desc='.$desc.'" title="Počet přeložených textů">Překladů</a></th>
     315    <th><a href="?Order=XP&amp;Desc='.$desc.'">Úroveň</a></th>
     316        <th></th></tr>');
    299317        //print_r($UsersOrder);   
    300318        // Show ordered user list 
    301319    foreach($UsersOrder as $UserId)
    302           echo('<tr id="'.$UserId.'"><td><a href="TranslationList.php?user='.$UserId.'&amp;action=userall" title="Zobrazit všechny jeho přeložené texty">'.$Users[$UserId]['user'].'</a></td><td>'.$Users[$UserId]['TranslatedCount'].
    303           '</td><td>'.CheckBox('user_'.$UserId, in_array($UserId, $ExportSetting['users-selection']), '', 'CheckBox').'</td></tr>');
     320          echo('<tr id="'.$UserId.'">
     321          <td><a href="TranslationList.php?user='.$UserId.'&amp;action=userall" title="Zobrazit všechny jeho přeložené texty">'.$Users[$UserId]['user'].'</a></td>
     322          <td>'.$Users[$UserId]['TranslatedCount'].'</td>
     323      <td><img src="tmp/'.$Users[$UserId]['user'].'/level.png" alt="Úroveň uživatele" /></td>
     324          <td>'.CheckBox('user_'.$UserId, in_array($UserId, $ExportSetting['users-selection']), '', 'CheckBox').'</td></tr>');
    304325    echo('</table></td><td valign="top">Zvolte ze seznamu uživatele, od kterých chcete načítat překlady a upravte jejich pořadí, takže od uživatelů výše budou brány překlady přednostně.<br />'.
    305326          'Řádky v tabulce můžete přesouvat metodou uchop a táhni.'.
  • trunk/userlist.php

    r114 r115  
    4747    echo('<tr><td>'.$Name.'</td>
    4848      <td style="text-align: center;"><a href="TranslationList.php?user='.$Line['ID'].'&amp;action=userall" title="Zobrazit Všechny jeho přeložené texty">'.$Line['NumberTranslate'].'</a></td>
    49       <td><img src="tmp/'.$Line['user'].'/level.png" alt="Úroveň uživatele" /><br /></td>
     49      <td><img src="tmp/'.$Line['user'].'/level.png" alt="Úroveň uživatele" /></td>
    5050      <td>'.$Moderators[$Line['GM']].'</td>
    5151      <td>'.$Line['LastLogin'].'</td></tr>');
Note: See TracChangeset for help on using the changeset viewer.