source: trunk/Modules/Import/cmd.php

Last change on this file was 880, checked in by chronos, 5 years ago
  • Modified: Improved code formatting.
File size: 4.0 KB
Line 
1<?php
2
3include_once('../../includes/Global.php');
4include_once('../../includes/dbc.php');
5include_once('Import.php');
6
7$System = new Core();
8$System->DoNotShowPage = true;
9$System->Run();
10$Import = new Import($System);
11$TranslationTree = $System->ModuleManager->Modules['Translation']->GetTranslationTree();
12
13$Output = '';
14
15if (defined('STDIN') == false)
16{
17 $Output = T('Access denied');
18 exit($Output);
19}
20
21foreach ($_SERVER['argv'] as $parameter)
22{
23 if (strpos($parameter, '=') !== false)
24 {
25 $index = substr($parameter, 0, strpos($parameter, '='));
26 $parameter = substr($parameter, strpos($parameter, '=') + 1);
27 //echo ($index.' ---- '.$parameter);
28 $_GET[$index] = $parameter;
29 }
30}
31
32if (!array_key_exists('id', $_GET))
33{
34 $Output .= '
35
36 1. Pripojíme se pres SSH na server (wowpreklad.zdechov.net) napríklad pres program putty.exe nebo terminál v linuxu.
372. Nejprve je potreba získat zdrojová data. Není zapotrebí mít všechny typy textu.
38 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/"
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.
414. V nastavení "wowpreklad/Config/Config.php" nastavíme nejvyžší verzi na verzi, kterou hodláme importovat.
425. 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.
436. Po provedení importu je potreba nekolikrát spustit script na aktualizaci verze u prekladu. Je potreba ho prováde opakovane dokud nezmizí tecky oznacující že byly provedeny zmeny.
44
45
46 Parametry:
47 ';
48 $Output .= 'id=<id_import_group> - importuje skupinu <id_import_group><br /><br />';
49 $Output .= ' version=<version> - nastaví verzi importu default: '.$System->Config['Web']['GameVersion'].'<br /><br />';
50 $Output .= ' <id_import_group>:';
51 foreach ($TranslationTree as $Group)
52 {
53 $Output .= '<br /> '.$Group['Id'].' ';
54 $Output .= ' '.$Group['Name'].' ';
55 }
56
57} else
58{
59 // $Output .= '<div style="font-size: xx-small;">';
60 if (array_key_exists('version', $_GET))
61 $Import->SetVersion($_GET['version']);
62 else
63 $Import->SetVersion($System->Config['Web']['GameVersion']);
64
65 $Output .= $Import->ImportGroup($_GET['id']); //$Config['Web']['GameVersion']
66 // $Import->UpdateTranslated();
67 // echo $_GET['id'];
68 // WriteLog('Plnění databáze z příkazové řádky', LOG_TYPE_MODERATOR);
69 // $Output .= '</div>';
70}
71
72 if (array_key_exists('version', $_GET))
73 $Output .= '<br />'.
74 'aktuálně nastavená importovávaná verze: '.$_GET['version'].'<br />';
75 else
76 $Output .= '<br />'.
77 'aktuálně nastavená importovávaná verze: '.$Config['Web']['GameVersion'].'<br />';
78
79
80$Output = str_replace('<br />','
81',$Output);
82echo($Output);
83//ShowFooter();
Note: See TracBrowser for help on using the repository browser.