1 | <?php
|
---|
2 |
|
---|
3 | include('includes/global.php');
|
---|
4 | include('dbc/dbc.php');
|
---|
5 |
|
---|
6 | ShowPage();
|
---|
7 |
|
---|
8 | echo('Načítání textů z databáze MaNGOSu: ');
|
---|
9 | echo('<div style="font-size: xx-small;">');
|
---|
10 |
|
---|
11 | foreach($TranslationTree as $Group)
|
---|
12 | {
|
---|
13 | if(($Group['MangosTable'] != '') and ($Group['TablePrefix'] != ''))
|
---|
14 | {
|
---|
15 | echo('<br />'.$Group['Name'].'<br />');
|
---|
16 | $Columns = '`'.$Group['MangosDatabase'].'`.`'.$Group['MangosTable'].'`.`'.$Group['MangosTableIndex'].'`';
|
---|
17 | foreach($Group['Items'] as $GroupItem)
|
---|
18 | $Columns .= ', `'.$Group['MangosDatabase'].'`.`'.$Group['MangosTable'].'`.`'.$GroupItem['MangosColumn'].'` AS `'.$GroupItem['Column'].'`';
|
---|
19 | $Query = 'SELECT '.$Columns.' FROM `'.$Group['MangosDatabase'].'`.`'.$Group['MangosTable'].'`';
|
---|
20 | //echo($Query.'<br />');
|
---|
21 | $Count = 0;
|
---|
22 | $NewCount = 0;
|
---|
23 | $DbResult = $Database->SQLCommand($Query);
|
---|
24 | while($DbRow = mysql_fetch_assoc($DbResult))
|
---|
25 | {
|
---|
26 | //echo('SELECT ID FROM '.$Group['TablePrefix'].' WHERE entry='.$DbRow[$Group['MangosTableIndex']].' AND Language=0'."<br>");
|
---|
27 | $DbResult2 = $Database->SQLCommand('SELECT ID FROM '.$Group['TablePrefix'].' WHERE entry='.$DbRow[$Group['MangosTableIndex']].' AND Language=0');
|
---|
28 | if(isset($DbResult2) and (mysql_num_rows($DbResult2) > 0))
|
---|
29 | {
|
---|
30 | $DbRow2 = mysql_fetch_assoc($DbResult2);
|
---|
31 | //echo($DbRow2['ID']);
|
---|
32 | $ColumnsValues = '';
|
---|
33 | foreach($Group['Items'] as $GroupItem)
|
---|
34 | {
|
---|
35 | $ColumnsValues .= ', `'.$GroupItem['Column'].'`="'.addslashes($DbRow[$GroupItem['MangosColumn']]).'"';
|
---|
36 | }
|
---|
37 | $ColumnsValues = substr($ColumnsValues, 2);
|
---|
38 | echo('. '); //'UPDATE `'.$Group['TablePrefix'].'` SET '.$ColumnsValues.' WHERE ID='.$DbRow2['ID']."<br>");
|
---|
39 | //print_r($DbRow2);
|
---|
40 | $Database->SQLCommand('UPDATE `'.$Group['TablePrefix'].'` SET '.$ColumnsValues.' WHERE ID='.$DbRow2['ID']);
|
---|
41 | } else
|
---|
42 | {
|
---|
43 | $Columns = 'entry, language';
|
---|
44 | $Values = $DbRow[$Group['MangosTableIndex']].', 0';
|
---|
45 | foreach($Group['Items'] as $GroupItem)
|
---|
46 | {
|
---|
47 | $Columns .= ', `'.$GroupItem['Column'].'`';
|
---|
48 | $Values .= ', "'.addslashes($DbRow[$GroupItem['MangosColumn']]).'"';
|
---|
49 | }
|
---|
50 | //$Columns = substr($Columns, 2);
|
---|
51 | //$Values = substr($Values, 2);
|
---|
52 | $Database->SQLCommand('INSERT `'.$Group['TablePrefix'].'` ('.$Columns.') VALUES ('.$Values.')');
|
---|
53 | echo('# ');
|
---|
54 | //echo('INSERT `'.$Group['TablePrefix'].'` ('.$Columns.') VALUES ('.$Values.')'."<br>");
|
---|
55 | $NewCount++;
|
---|
56 | }
|
---|
57 | $Count++;
|
---|
58 | }
|
---|
59 | echo('<br />Celkem: '.$Count.' Nových: '.$NewCount.'<br />');
|
---|
60 | } else
|
---|
61 | if(($Group['DBCFileName'] != '') and ($Group['TablePrefix'] != ''))
|
---|
62 | {
|
---|
63 | echo('<br />'.$Group['Name'].'<br />');
|
---|
64 | $DBCFile = new DBCFile();
|
---|
65 | $DBCFile->OpenFile('dbc/'.$Group['DBCFileName'].'.dbc', $Group['DBCColumns']);
|
---|
66 | $ItemCount = $DBCFile->RecordCount();
|
---|
67 | $NewCount = 0;
|
---|
68 | $Count = 0;
|
---|
69 | for($i = 0; $i < $ItemCount; $i++)
|
---|
70 | {
|
---|
71 | $ItemId = $DBCFile->GetUint($i, 0);
|
---|
72 | $DbResult2 = $Database->SQLCommand('SELECT ID FROM '.$Group['TablePrefix'].' WHERE entry='.$ItemId.' AND Language=0');
|
---|
73 | if(isset($DbResult2) and (mysql_num_rows($DbResult2) > 0))
|
---|
74 | {
|
---|
75 | $DbRow2 = mysql_fetch_assoc($DbResult2);
|
---|
76 | //echo($DbRow2['ID']);
|
---|
77 | $ColumnsValues = '';
|
---|
78 | foreach($Group['Items'] as $GroupItem)
|
---|
79 | {
|
---|
80 | $ColumnsValues .= ', `'.$GroupItem['Column'].'`="'.addslashes($DBCFile->GetString($i, $GroupItem['DBCColumnIndex'])).'"';
|
---|
81 | }
|
---|
82 | $ColumnsValues = substr($ColumnsValues, 2);
|
---|
83 | echo('. '); //'UPDATE `'.$Group['TablePrefix'].'` SET '.$ColumnsValues.' WHERE ID='.$DbRow2['ID']."<br>");
|
---|
84 | //print_r($DbRow2);
|
---|
85 | $Database->SQLCommand('UPDATE `'.$Group['TablePrefix'].'` SET '.$ColumnsValues.' WHERE ID='.$DbRow2['ID']);
|
---|
86 | } else
|
---|
87 | {
|
---|
88 | $Columns = 'entry, language';
|
---|
89 | $Values = $ItemId.', 0';
|
---|
90 | foreach($Group['Items'] as $GroupItem)
|
---|
91 | {
|
---|
92 | $Columns .= ', `'.$GroupItem['Column'].'`';
|
---|
93 | $Values .= ', "'.addslashes($DBCFile->GetString($i, $GroupItem['DBCColumnIndex'])).'"';
|
---|
94 | }
|
---|
95 | //$Columns = substr($Columns, 2);
|
---|
96 | //$Values = substr($Values, 2);
|
---|
97 | $Database->SQLCommand('INSERT `'.$Group['TablePrefix'].'` ('.$Columns.') VALUES ('.$Values.')');
|
---|
98 | echo('# ');
|
---|
99 | //echo('INSERT `'.$Group['TablePrefix'].'` ('.$Columns.') VALUES ('.$Values.')'."<br>");
|
---|
100 | $NewCount++;
|
---|
101 | }
|
---|
102 | $Count++;
|
---|
103 | }
|
---|
104 | echo('<br />Celkem: '.$Count.' Nových: '.$NewCount.'<br />');
|
---|
105 | }
|
---|
106 | }
|
---|
107 | echo('Dokončeno.</div>');
|
---|
108 |
|
---|
109 | WriteLog('Plnění databáze', 4);
|
---|
110 |
|
---|
111 | ShowFooter();
|
---|
112 |
|
---|
113 | ?>
|
---|