Ignore:
Timestamp:
Dec 8, 2013, 6:43:40 PM (11 years ago)
Author:
maron
Message:
  • Fixed: Load data from arrays only if array exists
  • Fixed: Import/cmd.php
  • Fixed: patch in Import/Import.php
  • Fixed: Can compare text with not complete
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Modules/Import/cmd.php

    r609 r630  
    11<?php
    22
    3 include('../includes/global.php');
    4 include('../includes/dbc.php');
    5 include('import_lua.php');
    6 include('import_sql_mangos.php');
    7 include('import_dbc.php');
    8 include('update_version.php');
     3include_once('../../includes/global.php');
     4include_once('../../includes/dbc.php');
     5include_once('import.php');
     6
     7  $System = new System();
     8  $System->DoNotShowPage = true;
     9        $System->Run();
     10$Import = new Import($System);
     11$_SERVER['REQUEST_URI'] = __FILE__;
    912
    1013$Output = '';
    1114
    12 if(!Licence(LICENCE_ADMIN))
     15if(defined('STDIN') == false)
    1316{
    1417  $Output = T('Access denied');
    15 }
     18  exit($Output);
     19}
    1620
    1721foreach($_SERVER['argv'] as $parameter)
     
    2630}
    2731
    28 if(!array_key_exists('source', $_GET))
     32if(!array_key_exists('id', $_GET))
    2933{
    3034  $Output .= '
     
    33372. Nejprve je potreba získat zdrojová data. Není zapotrebí mít všechny typy textu.
    3438  a) SQL databázi UDB seženeme na fóru: http://udbforums.kicks-ass.net/index.php?board=5.0 , sobor rozbalíme a uložíme do adresáre "wowpreklad/source/císlo_verze/sql/"
    35   b) DBC soubory exportujeme prímo ze hry z souboru "World of Warcraft\Data\enGB\patch-enGB-2.MPQ" nebo z souboru s vyším císlem na konci. Export se provádí napríklad pomocí programu "MPQEditor.exe", který ke stažení v adresári "wowpreklad/download". DBC soubory jsou v MPQ souboru uloženy ve složce "DBFilesClient". Tyto soubory zkopírujte do složky "wowpreklad/source/císlo_verze/dbc/"
    36   b) LUA soubory exportujeme prímo ze hry z souboru "World of Warcraft\Data\enGB\patch-enGB-2.MPQ" nebo z souboru s vyším císlem na konci. Export se provádí napríklad pomocí programu "MPQEditor.exe", který ke stažení v adresári "wowpreklad/download". LUA soubory jsou v MPQ souboru uloženy ve složce "Interface\FrameXML" a složce "Interface\GlueXML". Soubory, které porebujeme se jmenují "GlobalString.lua" a "GlueString.lua". Tyto soubory zkopírujte do složky "wowpreklad/source/císlo_verze/lua/"
    37 3. Do databáze vložíme data o verzi, kterou se hodláme importovat do tabulky wow_client_verse. Pokud budeme importovat dbc soubory je nutné vložit zde strukturu dbc souboru. To lze provést napríklad pomocí programu "CBCUtil", který je také ke stažení v složce download. Tento program vytvorí soubory spustitelné v OpenOffice. Kde první rádek v tabulce je struktura dbc souboru. Typ "str" se zaznací jako "s", každý jiný typ se oznací písmenem "u". Struktura pak vypadá napríklad "usuuuuuuuuuuuu". Krome toho je zapotrebí do databáze poznacit císelné pozice textu, prní položka je 0. Z predchozího príkladu by pozice sloupce s textem byla 1.
     39  b) DBC a LUA soubory exportujeme přímo ze hry z souboru "World of Warcraft\Data\enGB\locale-enGB.MPQ" a všechny soubory "wow-update-enGB-<buildnumber>.MPQ". Tyto soubory je nutné otevřít najednou v merge modu programu "MPQEditor.exe", který je ke stažení v adresáři "wowpreklad/download". DBC soubory jsou v MPQ souboru uloženy ve složce "DBFilesClient". Lua ve složce "Interface". Tyto soubory zkopírujte do složky "wowpreklad/source/císlo_verze/dbc/" nebo "lua"
     40 3. Do databáze vložíme data o verzi, kterou se hodláme importovat do tabulky wow_client_verse. Pokud budeme importovat dbc soubory je nutné vložit zde strukturu dbc souboru. To lze provést napríklad pomocí programu "CBCUtil", který je také ke stažení v složce download. Tento program vytvorí soubory spustitelné v OpenOffice. Kde první rádek v tabulce je struktura dbc souboru. Typ "str" se zaznací jako "s", každý jiný typ se oznací písmenem "u". Struktura pak vypadá napríklad "usuuuuuuuuuuuu". Krome toho je zapotrebí do databáze poznacit císelné pozice textu, prní položka je 0. Z predchozího príkladu by pozice sloupce s textem byla 1.
    38414. V nastavení "wowpreklad/includes/config.php" nastavíme nejvyžší verzi na verzi, kterou hodláme importovat.
    39425. Až máme všechno pripraveno spustíme v konzoli script príkazem "php wowpreklad/import/cmd.php" kde jsou popsané možnosti paremetu s kterýma se tento script spoucí pro ruzné importy.
     
    4346  Parametry:
    4447  ';
    45   $Output .= 'source=dbc  ...............DBC soubory
    46   ';
    47   $Output .= 'source=sql_mangos  ........SQL MaNGOS
    48   ';
    49   $Output .= 'source=lua  ...............LUA soubory
    50   ';
    51   $Output .= 'source=update_version  ....aktualizace verze u překladů
     48  $Output .= 'id=<id_import_group> - importuje skupinu <id_import_group><br /><br />';
     49      $Output .= '    <id_import_group>:';
     50    foreach($TranslationTree as $Group) 
     51    {
     52      $Output .= '<br />    '.$Group['Id'].' ';   
     53      $Output .= '    '.$Group['Name'].' ';     
     54    }
    5255
    53 ';
    5456  $Output .= 'aktuálně nastavená importovávaná verze: '.$Config['Web']['GameVersion'].'
    5557';
    5658} else
    5759{
    58   $Output .= '<div style="font-size: xx-small;">';
    59   switch($_GET['source'])
    60   {
    61     case 'sql_mangos':
    62       foreach($TranslationTree as $Group)
    63       {
    64         if(($Group['MangosTable'] != '') and ($Group['TablePrefix'] != '') and ($Group['MangosDatabase'] == 'mangos'))
    65         {
    66       $Output .= '  '.$TranslationTree[$Group['Id']]['Name'].' '; 
    67       ImportSQLMangos($Config['Web']['GameVersion'], $Group['Id']);
    68       $Output .= '
    69       ';
    70         }
    71     }   
    72       break;
    73     case 'dbc':
    74       foreach($TranslationTree as $Group)
    75       {
    76         if(($Group['DBCFileName'] != '') and ($Group['TablePrefix'] != ''))
    77         {
    78       $Output .= '  '.$TranslationTree[$Group['Id']]['Name'].' '; 
    79             ImportDBC($Config['Web']['GameVersion'], $Group['Id']);
    80       $Output .= '
    81       ';
    82         }
    83     }   
    84       break;
    85     case 'update_version':
    86       UpdateVersion();
    87       break;
    88     case 'lua':
    89       ImportLUA($Config['Web']['GameVersion']); //$Config['Web']['GameVersion']
    90       UpdateVersion();
    91       break;
    92     case 'xml':
    93       // $Output .= '<textarea rows="34" cols="104">';
    94       include('generatecodeXML.php');
    95       // $Output .= '</textarea>';
    96       break;   
    97   }
    98   WriteLog('Plnění databáze z příkazové řádky', LOG_TYPE_MODERATOR);
    99   $Output .= '</div>';
     60 // $Output .= '<div style="font-size: xx-small;">';
     61      $Import->SetVersion($System->Config['Web']['GameVersion']);
     62      $Output .= $Import->ImportGroup($_GET['id']); //$Config['Web']['GameVersion']
     63    //  $Import->UpdateTranslated();
     64   //  echo $_GET['id'];
     65 // WriteLog('Plnění databáze z příkazové řádky', LOG_TYPE_MODERATOR);
     66 // $Output .= '</div>';
    10067}
    10168
     69$Output = str_replace('<br />','
     70',$Output);
    10271echo($Output); 
    10372//ShowFooter();     
Note: See TracChangeset for help on using the changeset viewer.