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/export/export_output.php

    r476 r504  
    2828  global $System, $Config;
    2929 
     30  $Output = '';
    3031  $Export = new Export($System);
    3132  $Export->Id = $ExportId;
     
    4041    $Buffer = $ZipFile->file();
    4142    file_put_contents($SaveFilename, $Buffer);
    42   } else ShowMessage('Funkce pro tvorbu Zip souboru není podporována.', MESSAGE_CRITICAL);
    43   //echo('<script type="text/javascript" language="JavaScript" charset="utf-8">'.
    44   //  'setTimeout("parent.location.href=\''.$SaveFilename.'\'", 3000)'.
    45   //  '</script>');
    46      
    47   echo('Pokud nezačalo stahování, soubor by mělo jít stáhnout pomocí tohoto odkazu: '.
     43  } else $Output .= ShowMessage('Funkce pro tvorbu Zip souboru není podporována.', MESSAGE_CRITICAL);
     44  //$Output .= '<script type="text/javascript" language="JavaScript" charset="utf-8">'.
     45  //  'setTimeout("parent.location.href=\''.$SaveFilename.'\'", 3000)'.
     46  //  '</script>';
     47     
     48  $Output .= 'Pokud nezačalo stahování, soubor by mělo jít stáhnout pomocí tohoto odkazu: '.
    4849    '<a href="'.$SaveFilename.'">'.$SQLFilename.'</a><br />'.
    49     'Pokud se vám zdá, že filtr na export nefunguje, vymažte si vyrovnávací paměť prohlížeče a zkuste stáhnout soubor znovu.');
    50 
     50    'Pokud se vám zdá, že filtr na export nefunguje, vymažte si vyrovnávací paměť prohlížeče a zkuste stáhnout soubor znovu.';
     51  return($Output);
    5152}
    5253
     
    5859  $Export->Id = $ExportId;
    5960 
    60   echo('Vygenerovaný SQL kód: <br /><pre class="SQLCode">');
    61   echo(htmlspecialchars($Export->ExportToAoWoWSQL()));
    62   echo('</pre>');
     61  $Output = 'Vygenerovaný SQL kód: <br /><pre class="SQLCode">'.
     62     htmlspecialchars($Export->ExportToAoWoWSQL()).
     63    '</pre>';
     64  return($Output );
    6365}
    6466
     
    6769  global $System, $Config;
    6870 
     71  $Output = '';
    6972  $Export = new Export($System);
    7073  $Export->Id = $ExportId;
     
    7982    $Buffer = $ZipFile->file();
    8083    file_put_contents($SaveFilename, $Buffer);
    81   } else ShowMessage('Funkce pro tvorbu Zip souboru není podporována.', MESSAGE_CRITICAL);
    82   //echo('<script type="text/javascript" language="JavaScript" charset="utf-8">'.
    83   //  'setTimeout("parent.location.href=\''.$SaveFilename.'\'", 3000)'.
    84   //  '</script>');
    85      
    86   echo('Pokud nezačalo stahování, soubor by mělo jít stáhnout pomocí tohoto odkazu: '.
     84  } else $Output .= ShowMessage('Funkce pro tvorbu Zip souboru není podporována.', MESSAGE_CRITICAL);
     85  //$Output .= '<script type="text/javascript" language="JavaScript" charset="utf-8">'.
     86  //  'setTimeout("parent.location.href=\''.$SaveFilename.'\'", 3000)'.
     87  //  '</script>';
     88     
     89  $Output .= 'Pokud nezačalo stahování, soubor by mělo jít stáhnout pomocí tohoto odkazu: '.
    8790    '<a href="'.$SaveFilename.'">'.$SQLFilename.'</a><br />'.
    88     'Pokud se vám zdá, že filtr na export nefunguje, vymažte si vyrovnávací paměť prohlížeče a zkuste stáhnout soubor znovu.');
     91    'Pokud se vám zdá, že filtr na export nefunguje, vymažte si vyrovnávací paměť prohlížeče a zkuste stáhnout soubor znovu.';
     92  return($Output); 
    8993}
    9094
     
    96100  $Export->Id = $ExportId;
    97101  $Export->Init();
    98   echo('Vygenerovaný SQL kód: <br /><pre class="SQLCode">');
    99   echo(htmlspecialchars($Export->ExportToMangosSQL()));
    100   echo('</pre>');
     102  $Output = 'Vygenerovaný SQL kód: <br /><pre class="SQLCode">'.
     103    htmlspecialchars($Export->ExportToMangosSQL()).
     104    '</pre>';
     105  return($Output);
    101106}
    102107
     
    110115    $Addon->Id = $ExportId;
    111116    $Addon->Init();
    112     $Addon->MakeAddon();
     117    $Output = $Addon->MakeAddon();
    113118   
    114     echo('Generování addonu...<br />');
     119    $Output .= 'Generování addonu...<br />';
    115120    $SaveFilename = $Addon->TempDir.'CzWoW_Addon-'.$Addon->ClientVersion['Version'].'.zip';         
    116121    $Zip = new zipfile();
     
    124129    $Buffer = $Zip->file();
    125130    file_put_contents($SaveFilename, $Buffer);
    126     echo('Hotovo<br /><br />');
    127   } else ShowMessage('Funkce pro tvorbu Zip souboru není podporována.', MESSAGE_CRITICAL);
    128   //echo('<script type="text/javascript" language="JavaScript" charset="utf-8">'.
    129   //  'setTimeout("parent.location.href=\''.$SaveFilename.'\'", 3000)'.
    130   //  '</script>');
    131      
    132   echo('Soubor ke stažení: '.
     131    $Output .= 'Hotovo<br /><br />';
     132  } else $Output = ShowMessage('Funkce pro tvorbu Zip souboru není podporována.', MESSAGE_CRITICAL);
     133  //$Output .= '<script type="text/javascript" language="JavaScript" charset="utf-8">'.
     134  //  'setTimeout("parent.location.href=\''.$SaveFilename.'\'", 3000)'.
     135  //  '</script>';
     136     
     137  $Output .= 'Soubor ke stažení: '.
    133138    '<a href="'.$SaveFilename.'">CzWoW_Addon-'.$Addon->ClientVersion['Version'].'.zip</a><br />'.
    134     'Pokud se vám zdá, že filtr na export nefunguje, vymažte si vyrovnávací paměť prohlížeče a zkuste stáhnout soubor znovu.');
    135   echo('<br /><strong>Použití ve hře</strong><br />Menu addonu ve hře vyvoláte povelem /czwow.');
     139    'Pokud se vám zdá, že filtr na export nefunguje, vymažte si vyrovnávací paměť prohlížeče a zkuste stáhnout soubor znovu.';
     140  $Output .= '<br /><strong>Použití ve hře</strong><br />Menu addonu ve hře vyvoláte povelem /czwow.';
     141  return($Output);
    136142}
    137143
     
    140146  global $Config, $System;
    141147 
     148  $Output = '';
    142149  $Export = new Export($System);
    143150  $Export->Id = $ExportId;
     
    152159    $Buffer = $ZipFile->file();
    153160    file_put_contents($SaveFilename, $Buffer);
    154   } else ShowMessage('Funkce pro tvorbu Zip souboru není podporována.', MESSAGE_CRITICAL);
    155   //echo('<script type="text/javascript" language="JavaScript" charset="utf-8">'.
     161  } else $Output .= ShowMessage('Funkce pro tvorbu Zip souboru není podporována.', MESSAGE_CRITICAL);
     162  //$Output .= '<script type="text/javascript" language="JavaScript" charset="utf-8">'.
    156163  // 'setTimeout("parent.location.href=\''.$SaveFilename.'\'", 3000)'.
    157   // '</script>');
    158      
    159   echo('Pokud nezačalo stahování, soubor by mělo jít stáhnout pomocí tohoto odkazu: '.
     164  // '</script>';
     165     
     166  $Output .= 'Pokud nezačalo stahování, soubor by mělo jít stáhnout pomocí tohoto odkazu: '.
    160167    '<a href="'.$SaveFilename.'">CzWoW_SQL.zip</a><br />'.
    161     'Pokud se vám zdá, že filtr na export nefunguje, vymažte si vyrovnávací paměť prohlížeče a zkuste stáhnout soubor znovu.');
     168    'Pokud se vám zdá, že filtr na export nefunguje, vymažte si vyrovnávací paměť prohlížeče a zkuste stáhnout soubor znovu.';
     169  return($Output);
    162170}
    163171
     
    169177  $Export->Id = $ExportId;
    170178  $Export->Init();
    171   echo('Vygenerované XML: <br /><pre class="SQLCode">');
    172   echo(htmlspecialchars($Export->ExportToXML()));
    173   echo('</pre>');
     179  $Output = 'Vygenerované XML: <br /><pre class="SQLCode">'.
     180    htmlspecialchars($Export->ExportToXML()).
     181    '</pre>';
     182  return($Output);
    174183}
    175184
     
    178187  global $System;
    179188 
     189  $Output = '';
    180190  if(array_key_exists('Regenerate', $_POST))
    181191  {
    182192    $System->Database->query('UPDATE ExportTask SET TimeStart = NOW(), TimeFinish = NULL WHERE Export = '.$ExportId);
    183     ShowMessage('Soubor zařazen znovu ke zpracování do fronty.');
     193    $Output .= ShowMessage('Soubor zařazen znovu ke zpracování do fronty.');
    184194  }
    185195
    186   echo('<form action="?Action=View&amp;Tab=7&amp;ExportId='.$ExportId.'" method="post"><input type="submit" name="Regenerate" value="Přegenerovat"/></form><br />');
    187   echo('U DBC souborů export textů funguje jinak, protože generování je náročné, jsou požadavky zařazovány do fronty a postupně zpracovávány.<br />DBC soubory je nutné zabalit do souboru patch-enGB-5.MPQ uvnitř složky "DBFilesClient" a hru spouštět přes program wowme.exe (WoW Model Edit) u verzí klienta starší než 3.2.0. Od této verze již wowme není potřeba. Zabalit je můžete pomocí programu <a href="../download/mpqediten32.zip">Ladik\'s MPQ Editor</a>. Stav vygenerování můžete sledovat na této stránce.<br /><br />');
     196  $Output .= '<form action="?Action=View&amp;Tab=7&amp;ExportId='.$ExportId.'" method="post"><input type="submit" name="Regenerate" value="Přegenerovat"/></form><br />';
     197  $Output .= 'U DBC souborů export textů funguje jinak, protože generování je náročné, jsou požadavky zařazovány do fronty a postupně zpracovávány.<br />DBC soubory je nutné zabalit do souboru patch-enGB-5.MPQ uvnitř složky "DBFilesClient" a hru spouštět přes program wowme.exe (WoW Model Edit) u verzí klienta starší než 3.2.0. Od této verze již wowme není potřeba. Zabalit je můžete pomocí programu <a href="../download/mpqediten32.zip">Ladik\'s MPQ Editor</a>. Stav vygenerování můžete sledovat na této stránce.<br /><br />';
    188198   
    189199  $DbResult = $System->Database->query('SELECT * FROM ExportTask WHERE Export = '.$ExportId);
     
    198208  if($ExportTask['TimeFinish'] > $ExportTask['TimeStart'])
    199209  {
    200     echo('<strong>Souhrný balík: <a href="../tmp/Export/'.$ExportTask['Export'].'/CzWoW_DBC.zip">CzWoW_DBC.zip</a></strong><br/>');
     210    $Output .= '<strong>Souhrný balík: <a href="../tmp/Export/'.$ExportTask['Export'].'/CzWoW_DBC.zip">CzWoW_DBC.zip</a></strong><br/>';
    201211    $Export = new Export($System);
    202212    $Export->Id = $ExportId;
     
    205215    while($Group = $DbResult->fetch_assoc())
    206216    {
    207       if(file_exists($Export->TempDir.'dbc/'.$Group['DBCFileName'].'.dbc')) echo('<a href="'.$Export->TempDir.'dbc/'.$Group['DBCFileName'].'.dbc">'.$Group['DBCFileName'].'.dbc</a><br/>');
     217      if(file_exists($Export->TempDir.'dbc/'.$Group['DBCFileName'].'.dbc'))
     218        $Output .= '<a href="'.$Export->TempDir.'dbc/'.$Group['DBCFileName'].'.dbc">'.$Group['DBCFileName'].'.dbc</a><br/>';
    208219    }
    209   } else echo('<strong>Soubor čeká na zpracování ve frontě.</strong><br/>');
     220  } else $Output .= '<strong>Soubor čeká na zpracování ve frontě.</strong><br/>';
     221  return($Output);
    210222}
    211223
     
    220232  if(function_exists('gzcompress'))
    221233  {
    222     echo('Generování lua souborů...<br />');
     234    $Output = 'Generování lua souborů...<br />';
    223235    $Export->ExportToLua();
    224236    $SaveFilename = $Export->TempDir.'CzWoW_Lua.zip';         
     
    227239    $Buffer = $ZipFile->file();
    228240    file_put_contents($SaveFilename, $Buffer);
    229     echo('Hotovo<br /><br />');
    230   } else ShowMessage('Funkce pro tvorbu Zip souboru není podporována.', MESSAGE_CRITICAL);
    231   //echo('<script type="text/javascript" language="JavaScript" charset="utf-8">'.
    232   //  'setTimeout("parent.location.href=\''.$SaveFilename.'\'", 3000)'.
    233   //  '</script>');
    234      
    235   echo('<strong>Soubory:</strong><br/>'. 
    236     'Souhrný archív <a href="'.$SaveFilename.'">CzWoW_Lua.zip</a><br />');
     241    $Output .= 'Hotovo<br /><br />';
     242  } else $Output = ShowMessage('Funkce pro tvorbu Zip souboru není podporována.', MESSAGE_CRITICAL);
     243  //$Output .= '<script type="text/javascript" language="JavaScript" charset="utf-8">'.
     244  //  'setTimeout("parent.location.href=\''.$SaveFilename.'\'", 3000)'.
     245  //  '</script>';
     246     
     247  $Output .= '<strong>Soubory:</strong><br/>'. 
     248    'Souhrný archív <a href="'.$SaveFilename.'">CzWoW_Lua.zip</a><br />';
    237249  $DbResult = $System->Database->query('SELECT `Group`.* FROM `ExportGroup` JOIN `Group` ON `Group`.`Id` = `ExportGroup`.`Group` WHERE `ExportGroup`.`Export`='.$Export->Id.' AND `Group`.`LuaFileName` != ""');
    238250  while($Group = $DbResult->fetch_assoc())
    239251  {
    240     echo('<a href="'.$Export->TempDir.'lua/'.$Group['LuaFileName'].'.lua">'.$Group['LuaFileName'].'.lua</a><br/>');
     252    $Output .= '<a href="'.$Export->TempDir.'lua/'.$Group['LuaFileName'].'.lua">'.$Group['LuaFileName'].'.lua</a><br/>';
    241253  }
    242   echo('<br /><br /><strong>Použití ve hře</strong><br />Ze souborů vytvořte MPQ archív a nahrajte ho do hry do podsložky jako Data/enUS/patch-enUS-5.MPQ nebo Data/enUS/patch-enGB-5.MPQ. Pro starší verze hry než 3.2.0 je nutné spouštět hru pomocí programu WoWMe.exe (WoW Model Editor Fix).');
     254  $Output .= '<br /><br /><strong>Použití ve hře</strong><br />Ze souborů vytvořte MPQ archív a nahrajte ho do hry do podsložky jako Data/enUS/patch-enUS-5.MPQ nebo Data/enUS/patch-enGB-5.MPQ. Pro starší verze hry než 3.2.0 je nutné spouštět hru pomocí programu WoWMe.exe (WoW Model Editor Fix).';
     255  return($Output);
    243256}
    244257
    245258function ExportOutput($ExportId, $Type)
    246259{
    247   if($Type == 1) OutputMangosSQLToHTML($ExportId);
    248   else if($Type == 2) OutputMangosSQLToFile($ExportId);
    249   else if($Type == 3) OutputAoWoWToHTML($ExportId);
    250   else if($Type == 4) OutputAoWoWToFile($ExportId);
    251   else if($Type == 5) OutputXMLToHTML($ExportId);
    252   else if($Type == 6) OutputXMLToFile($ExportId);
    253   else if($Type == 7) OutputAddon($ExportId);
    254   else if($Type == 8) OutputLua($ExportId);
    255   else if($Type == 9) OutputDBCToFile($ExportId);
    256   else ShowMessage('Nebyl vybrán žádný formát výstupu.', MESSAGE_CRITICAL);
     260  if($Type == 1) $Output = OutputMangosSQLToHTML($ExportId);
     261  else if($Type == 2) $Output = OutputMangosSQLToFile($ExportId);
     262  else if($Type == 3) $Output = OutputAoWoWToHTML($ExportId);
     263  else if($Type == 4) $Output = OutputAoWoWToFile($ExportId);
     264  else if($Type == 5) $Output = OutputXMLToHTML($ExportId);
     265  else if($Type == 6) $Output = OutputXMLToFile($ExportId);
     266  else if($Type == 7) $Output = OutputAddon($ExportId);
     267  else if($Type == 8) $Output = OutputLua($ExportId);
     268  else if($Type == 9) $Output = OutputDBCToFile($ExportId);
     269  else $Output = ShowMessage('Nebyl vybrán žádný formát výstupu.', MESSAGE_CRITICAL);
     270  return($Output);
    257271}
    258272
Note: See TracChangeset for help on using the changeset viewer.