Changeset 504 for trunk/team.php


Ignore:
Timestamp:
Feb 14, 2013, 7:51:59 PM (12 years ago)
Author:
chronos
Message:
  • Upraveno: Stránky jsou nyní generovány do výstupního řetězce, který je na konci skriptu funkci ShowPage jako parametr a ta zajistí zobrazení hlavičky i patičky. Nově tedy není výstup zobrazován přes echo na mnoha místech ale jen přes jedno místo. To umožnilo kontrolu či formátování výstupního HTML kódu před zasláním uživateli na výstup. Dále toto umožňuje vyhodnocení zobrazení hlavičky až po dokončení generování obsahu stránky. To se hodí např. při přihlašování a odhlašování, kdy změna přihlášeného uživatele se v hlavičce projeví ihned už při generování výsledné stránky.
Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk

    • Property svn:ignore
      •  

        old new  
        22aowow
        33nbproject
         4.settings
         5.project
         6.buildpath
  • trunk/team.php

    r500 r504  
    33include('includes/global.php');
    44include_once('img_level.php');
    5 
    6 ShowPage();
    75
    86function ShowTeamList()
     
    108  global $Config, $System, $User;
    119 
    12   echo('<h3>Seznam překladatelských týmů</h3>');
    13   echo('Týmy jsou seskupení překladatelů, kteří se hlásí k něčemu společnému jako např. WoW serveru, způsobu překladu, ke stejnému hernímu spolku, aj. Být členem týmu samo o sobě nemá žádný zásadní důsledek a spíše to může pomoci se lépe orientovat mezi překladateli někomu, kdo sestavuje export.<br/>');
     10  $Output = '<h3>Seznam překladatelských týmů</h3>';
     11  $Output .= 'Týmy jsou seskupení překladatelů, kteří se hlásí k něčemu společnému jako např. WoW serveru, způsobu překladu, ke stejnému hernímu spolku, aj. Být členem týmu samo o sobě nemá žádný zásadní důsledek a spíše to může pomoci se lépe orientovat mezi překladateli někomu, kdo sestavuje export.<br/>';
    1412  $DbResult = $System->Database->query('SELECT COUNT(*) FROM `Team`');
    1513  $DbRow = $DbResult->fetch_row();
    1614  $PageList = GetPageList($DbRow[0]);   
    1715
    18   echo($PageList['Output']);
    19   echo('<table class="BaseTable">');
     16  $Output .= $PageList['Output'];
     17  $Output .= '<table class="BaseTable">';
    2018
    2119  $TableColumns = array(
     
    2927
    3028  $Order = GetOrderTableHeader($TableColumns, 'NumberUser', 1);
    31   echo($Order['Output']);
     29  $Output .= $Order['Output'];
    3230
    3331  if(array_key_exists('search', $_GET)) $_SESSION['search'] = ' WHERE `Name` LIKE "%'.$_GET['search'].'%" OR `Description` LIKE "%'.$_GET['search'].'%"';
     
    3836    while($Team = $DbResult->fetch_assoc())
    3937    {
    40       echo('<tr>'.
     38      $Output .= '<tr>'.
    4139        '<td><a href="?action=team&amp;id='.$Team['Id'].'">'.$Team['Name'].'</a></td>'.
    4240        '<td><a href="http://'.$Team['URL'].'">'.$Team['URL'].'</a></td>'.
    4341        '<td>'.$Team['LeaderName'].'</td>'.
    4442        '<td><a href="userlist.php?team='.$Team['Id'].'" title="Zobrazit členy týmu">'.$Team['NumberUser'].'</a></td>'.
    45         '<td>'.HumanDate($Team['TimeCreate']).'</td>');
     43        '<td>'.HumanDate($Team['TimeCreate']).'</td>';
    4644      if($User->Licence(LICENCE_USER))
    4745      {
     
    4947          else $Action = '';
    5048        if($Team['Id'] == $User->Team) $Action = ' <a href="?action=leave">Opustit</a>';
    51         echo('<td><a href="?action=gointeam&amp;id='.$Team['Id'].'">Vstoupit</a>'.$Action.'</td>');
     49        $Output .= '<td><a href="?action=gointeam&amp;id='.$Team['Id'].'">Vstoupit</a>'.$Action.'</td>';
    5250      }
    53     echo('</tr>');
    54     }
    55     echo('</table>');
    56     echo($PageList['Output']);
     51    $Output .= '</tr>';
     52  }
     53  $Output .= '</table>'.
     54    $PageList['Output'];
    5755   
    58     if($User->Licence(LICENCE_USER)) echo('<br /><div style="text-align: center;"><a href="?action=create">Vytvořit překladatelský tým</a></div>');
     56  if($User->Licence(LICENCE_USER))
     57        $Output .= '<br /><div style="text-align: center;"><a href="?action=create">Vytvořit překladatelský tým</a></div>';
     58  return($Output);
    5959}         
    6060
     
    6868    {
    6969      $System->Database->query('UPDATE `User` SET `Team` = '.$_GET['id'].' WHERE `ID` = '.$User->Id);
    70       ShowMessage('Vstoupil jsi do týmu.');   
     70      $Output = ShowMessage('Vstoupil jsi do týmu.');   
    7171      WriteLog('Uživatel vstoupil do týmu '.$_GET['id'], LOG_TYPE_USER);
    7272
     
    7777      $System->Database->query('UPDATE `Team` SET `Leader`=(SELECT `Id` FROM `User` WHERE `User`.`Team`=`Team`.`Id` ORDER BY `User`.`RegistrationTime` LIMIT 1) WHERE `Leader` NOT IN (SELECT `ID` FROM `User` WHERE `User`.`Team`=`Team`.`Id`);');
    7878       
    79       ShowTeamList();
    80     } else ShowMessage('Nutno zadat id týmu.', MESSAGE_CRITICAL);
    81   } else ShowMessage('Nemáte oprávnění', MESSAGE_CRITICAL);
     79      $Output .= ShowTeamList();
     80    } else $Output = ShowMessage('Nutno zadat id týmu.', MESSAGE_CRITICAL);
     81  } else $Output = ShowMessage('Nemáte oprávnění', MESSAGE_CRITICAL);
     82  return($Output);
    8283}
    8384
     
    8687  global $System, $User;
    8788 
     89  $Output = '';
    8890  if($User->Licence(LICENCE_USER))
    8991  {   
     
    9799        $System->Database->query('INSERT INTO `Team` (`Name` ,`Description`, `URL`, `TimeCreate`,`Leader`) VALUES ("'.trim($_POST['Name']).'", "'.trim($_POST['Description']).'", "'.$_POST['URL'].'", NOW(), '.$User->Id.')'); 
    98100        $System->Database->query('UPDATE `User` SET `Team` = '.$System->Database->insert_id.' WHERE `ID` = '.$User->Id);
    99         ShowMessage('Překladatelský tým vytvořen.');
     101        $Output .= ShowMessage('Překladatelský tým vytvořen.');
    100102        WriteLog('Překladatelský tým vytvořen '.$_POST['Name'], LOG_TYPE_USER);
    101103
    102104        // Delete all teams without users
    103105        $System->Database->query('DELETE FROM `Team` WHERE (SELECT COUNT(*) FROM `User` WHERE `User`.`Team` = `Team`.`Id`) = 0');   
    104       } else ShowMessage('Již existuje tým se stejným jménem', MESSAGE_CRITICAL);
    105     } else ShowMessage('Chybí údaje formuláře', MESSAGE_CRITICAL);
    106   } else ShowMessage('Nemáte oprávnění', MESSAGE_CRITICAL);
    107   ShowTeamList();
     106      } else $Output .= ShowMessage('Již existuje tým se stejným jménem', MESSAGE_CRITICAL);
     107    } else $Output .= ShowMessage('Chybí údaje formuláře', MESSAGE_CRITICAL);
     108  } else $Output .= ShowMessage('Nemáte oprávnění', MESSAGE_CRITICAL);
     109  $Output .= ShowTeamList();
     110  return($Output);
    108111}
    109112
     
    120123      {
    121124        $Team = $DbResult->fetch_assoc();
    122         echo('<form action="?action=finish_modify&amp;id='.$_GET['id'].'" method="post">'.
     125        $Output = '<form action="?action=finish_modify&amp;id='.$_GET['id'].'" method="post">'.
    123126      '<fieldset><legend>Nastavení týmu</legend>'.
    124127      '<table><tr><td>Jméno:</td><td><input type="text" name="Name" value="'.$Team['Name'].'"/></td></tr>'.
     
    126129      '<tr><td>Popis:</td><td><input type="text" name="Description" value="'.$Team['Description'].'"/></td></tr>'.
    127130      '<tr><td colspan="2"><input type="submit" value="Uložit" /></td></tr>'.
    128       '</table></fieldset></form>');
    129       } else ShowMesage('Tým nenalezen.', MESSAGE_CRITICAL);
    130     } else ShowMessage('Nezadáno id týmu', MESSAGE_CRITICAL);
    131   } else ShowMessage('Nemáte oprávnění', MESSAGE_CRITICAL);
     131      '</table></fieldset></form>';
     132      } else $Output = ShowMesage('Tým nenalezen.', MESSAGE_CRITICAL);
     133    } else $Output = ShowMessage('Nezadáno id týmu', MESSAGE_CRITICAL);
     134  } else $Output = ShowMessage('Nemáte oprávnění', MESSAGE_CRITICAL);
     135  return($Output);
    132136}
    133137
     
    136140  global $System, $User;
    137141 
     142  $Output = '';
    138143  if($User->Licence(LICENCE_USER))
    139144  {   
     
    150155        {         
    151156          $System->Database->query('UPDATE `Team` SET `Name`="'.$_POST['Name'].'", `Description`="'.$_POST['Description'].'", `URL`="'.$_POST['URL'].'" WHERE Id='.$Team['Id']);
    152           ShowMessage('Nastavení týmu uloženo.');
     157          $Output .= ShowMessage('Nastavení týmu uloženo.');
    153158          WriteLog('Překladatelský tým upraven '.$_POST['Name'], LOG_TYPE_USER);
    154         } else ShowMessage('Již existuje tým se stejným jménem.', MESSAGE_CRITICAL);
    155       } else ShowMessage('Tým nenalezen nebo nemáte oprávnění.', MESSAGE_CRITICAL);
    156     } else ShowMessage('Nezadáno id týmu nebo některé položky formuláře.', MESSAGE_CRITICAL);
    157   } else ShowMessage('Nemáte oprávnění.', MESSAGE_CRITICAL);
    158   ShowTeamList();
     159        } else $Output .= ShowMessage('Již existuje tým se stejným jménem.', MESSAGE_CRITICAL);
     160      } else $Output .= ShowMessage('Tým nenalezen nebo nemáte oprávnění.', MESSAGE_CRITICAL);
     161    } else $Output .= ShowMessage('Nezadáno id týmu nebo některé položky formuláře.', MESSAGE_CRITICAL);
     162  } else $Output .= ShowMessage('Nemáte oprávnění.', MESSAGE_CRITICAL);
     163  $Output .= ShowTeamList();
     164  return($Output);
    159165}
    160166
     
    165171  if($User->Licence(LICENCE_USER))
    166172  {   
    167     echo('<form action="?action=finish_create" method="post">'.
     173    $Output ='<form action="?action=finish_create" method="post">'.
    168174    '<fieldset><legend>Vytvoření nového týmu</legend>'.
    169175    '<table><tr><td>Jméno:</td><td><input type="text" name="Name" /></td></tr>'.
     
    171177    '<tr><td>Popis:</td><td><input type="text" name="Description" /></td></tr>'.
    172178    '<tr><td colspan="2"><input type="submit" value="Vytvořit a vstoupit" /></td></tr>'.
    173     '</table></fieldset></form>');
    174   } else ShowMessage('Nemáte oprávnění', MESSAGE_CRITICAL);
     179    '</table></fieldset></form>';
     180  } else $Output = ShowMessage('Nemáte oprávnění', MESSAGE_CRITICAL);
     181  return($Output);
    175182}
    176183
     
    179186  global $System, $User, $Config;
    180187 
     188  $Output = '';
    181189  if(array_key_exists('id', $_GET) and is_numeric($_GET['id']))
    182190  {
     
    194202      } else $Leader = '';
    195203   
    196       echo('<strong>Překladatelský tým '.$Team['Name'].'</strong><br />'.
     204      $Output .='<strong>Překladatelský tým '.$Team['Name'].'</strong><br />'.
    197205        'Webové stránky: <a href="http://'.$Team['URL'].'">'.$Team['URL'].'</a><br/>'.
    198206        'Vedoucí: <strong>'.$Leader.'</strong><br/>'.
    199       $Team['Description'].'<br /><br />');
    200       //echo('<a href="export/?team='.$Team['Id'].'">Exportovat překlad týmu</a> ');
    201       if($User->Licence(LICENCE_USER)) echo('<a href="?action=gointeam&amp;id='.$Team['Id'].'">Vstoupit do týmu</a><br /><br />');
    202       echo('<fieldset><legend>Statistika</legend>'.
     207      $Team['Description'].'<br /><br />';
     208      //$Output .= '<a href="export/?team='.$Team['Id'].'">Exportovat překlad týmu</a> ';
     209      if($User->Licence(LICENCE_USER))
     210         $Output .='<a href="?action=gointeam&amp;id='.$Team['Id'].'">Vstoupit do týmu</a><br /><br />';
     211      $Output .='<fieldset><legend>Statistika</legend>'.
    203212        'Počet členů týmu: <a href="userlist.php?team='.$Team['Id'].'" title="Zobrazit členy týmu">'.$Team['NumberUser'].'</a><br />'.
    204213        'Počet přeložených textů týmu: <strong>'.$Team['NumberTranslate'].'</strong><br />'.
    205214        'Průměrná úroveň překladatelů v týmu: <img src="tmp/team/'.$Team['Name'].'/level.png" /><br /><br />'.
    206         '<strong>Stav dokončení týmu pro verzi '.$Config['Web']['GameVersion'].'</strong><br />');
     215        '<strong>Stav dokončení týmu pro verzi '.$Config['Web']['GameVersion'].'</strong><br />';
    207216
    208217  $BuildNumber = GetBuildNumber($Config['Web']['GameVersion']);
     
    227236  $DbRow = $DbResult->fetch_row();
    228237  $PageList = GetPageList($DbRow[0]); 
    229   echo($PageList['Output']);
    230  
    231   echo('<table class="BaseTable">');
     238  $Output .= $PageList['Output'];
     239 
     240  $Output .='<table class="BaseTable">';
    232241  $TableColumns = array(
    233242    array('Name' => 'Name', 'Title' => 'Jméno'),
     
    238247
    239248  $Order = GetOrderTableHeader($TableColumns, 'Name', 0);
    240   echo($Order['Output']);
     249  $Output .=$Order['Output'];
    241250
    242251  $Translated = 0;
     
    245254  while($Group = $DbResult->fetch_assoc())
    246255  {
    247     echo('<tr><td>'.$Group['Name'].'</td><td>'.$Group['Translated'].'</td><td>'.$Group['Total'].'</td><td>'.ProgressBar(150, $Group['Percent']).'</td></tr>');
     256    $Output .='<tr><td>'.$Group['Name'].'</td><td>'.$Group['Translated'].'</td><td>'.$Group['Total'].'</td><td>'.ProgressBar(150, $Group['Percent']).'</td></tr>';
    248257    $Translated += $Group['Translated'];
    249258    $Total += $Group['Total'];
    250259  }
    251   echo('<tr><td><strong>Celkem</strong></td><td><strong>'.$Translated.'</strong></td><td><strong>'.$Total.'</strong></td><td><strong>'.ProgressBar(150, round($Translated / $Total * 100, 2)).'</strong></td></tr>');
    252   echo('</table>');
    253  
    254       echo('</fieldset>');   
    255     } else ShowMessage('Tým nenalezen', MESSAGE_CRITICAL);
    256   } else ShowMessage('Musíte zadat id týmu', MESSAGE_CRITICAL);
     260  $Output .='<tr><td><strong>Celkem</strong></td><td><strong>'.$Translated.'</strong></td><td><strong>'.$Total.'</strong></td><td><strong>'.ProgressBar(150, round($Translated / $Total * 100, 2)).'</strong></td></tr>';
     261  $Output .='</table>';
     262 
     263      $Output .='</fieldset>';   
     264    } else $Output .=ShowMessage('Tým nenalezen', MESSAGE_CRITICAL);
     265  } else $Output .=ShowMessage('Musíte zadat id týmu', MESSAGE_CRITICAL);
     266  return($Output);
    257267}
    258268
     
    264274  {   
    265275    $System->Database->query('UPDATE `User` SET `Team` = NULL WHERE `ID` = '.$User->Id);
    266     ShowMessage('Nyní nejste členem žádného týmu.');   
     276    $Output = ShowMessage('Nyní nejste členem žádného týmu.');   
    267277    WriteLog('Uživatel vystoupil z týmu', LOG_TYPE_USER);
    268278
     
    273283    $System->Database->query('UPDATE `Team` SET `Leader`=(SELECT `Id` FROM `User` WHERE `User`.`Team`=`Team`.`Id` ORDER BY `User`.`RegistrationTime` LIMIT 1) WHERE `Leader` NOT IN (SELECT `ID` FROM `User` WHERE `User`.`Team`=`Team`.`Id`);');
    274284       
    275     ShowTeamList();
    276   } else ShowMessage('Nemáte oprávnění.', MESSAGE_CRITICAL);
     285    $Output .=ShowTeamList();
     286  } else $Output = ShowMessage('Nemáte oprávnění.', MESSAGE_CRITICAL);
     287  return($Output);
    277288}
    278289
    279290if(array_key_exists('action', $_GET))
    280291{
    281   if($_GET['action'] == 'gointeam') TeamJoin();
    282   else if($_GET['action'] == 'finish_create') TeamCreateFinish();
    283   else if($_GET['action'] == 'modify') TeamModify();
    284   else if($_GET['action'] == 'finish_modify') TeamModifyFinish();
    285   else if($_GET['action'] == 'create') TeamCreate();
    286   else if($_GET['action'] == 'team') TeamShow();
    287   else if($_GET['action'] == 'leave') TeamLeave();
    288   else ShowTeamList();
    289 } else ShowTeamList();
    290 
    291 ShowFooter();     
     292  if($_GET['action'] == 'gointeam') $Output = TeamJoin();
     293  else if($_GET['action'] == 'finish_create') $Output = TeamCreateFinish();
     294  else if($_GET['action'] == 'modify') $Output = TeamModify();
     295  else if($_GET['action'] == 'finish_modify') $Output = TeamModifyFinish();
     296  else if($_GET['action'] == 'create') $Output =TeamCreate();
     297  else if($_GET['action'] == 'team') $Output = TeamShow();
     298  else if($_GET['action'] == 'leave') $Output = TeamLeave();
     299  else $Output = ShowTeamList();
     300} else $Output = ShowTeamList();
     301
     302ShowPage($Output);
    292303
    293304?>
Note: See TracChangeset for help on using the changeset viewer.