9 if(strtolower(PHP_OS) == "winnt") {
16 $uplink['host'] = 'dev.pk910.de';
17 $uplink['user'] = 'neonserv_lang';
18 $uplink['pass'] = 'LLcrzq28RN2GBqRP'; /* just ignore it :P this user has only select access to the required 2 tables & 3 columns in them */
19 $uplink['base'] = 'neonserv_dev';
23 function shell_color($fg,$bg,$attr=1) {
24 if(WIN32) return false;
25 echo sprintf("%c[%d;%d;%dm", 0x1B, $attr, $fg + 30, $bg + 40);
38 $fp = fopen("php://stdin", "r");
40 die("ERROR: can not open stdin for reading.\n");
43 shell_color(BLUE,BLACK);
44 echo"NeonServ v5 - Languagepack Updater\n";
45 shell_color(CYAN,BLACK);
46 echo"This tool will download the actual language pack from\n";
47 echo"dev.pk910.de and copy it into your database.\n";
49 shell_color(YELLOW,BLACK);
50 echo "DATABASE INFORMATION\n";
51 echo "Please enter your database login data.\n";
52 shell_color(GREEN,BLACK);
53 echo "Hostname [localhost]: ";
54 shell_color(NORMAL,BLACK);
55 $line = fgets($fp, 4096);
56 $line = str_replace(array("\n", "\r"),array("", ""),$line);
57 if($line == "") $line = "localhost";
58 $local['host'] = $line;
59 shell_color(GREEN,BLACK);
60 echo "Username [neonserv]: ";
61 shell_color(NORMAL,BLACK);
62 $line = fgets($fp, 4096);
63 $line = str_replace(array("\n", "\r"),array("", ""),$line);
64 if($line == "") $line = "neonserv";
65 $local['user'] = $line;
66 shell_color(GREEN,BLACK);
68 shell_color(NORMAL,BLACK);
69 $line = fgets($fp, 4096);
70 $line = str_replace(array("\n", "\r"),array("", ""),$line);
71 $local['pass'] = $line;
72 shell_color(GREEN,BLACK);
73 echo "Database [neonserv]: ";
74 shell_color(NORMAL,BLACK);
75 $line = fgets($fp, 4096);
76 $line = str_replace(array("\n", "\r"),array("", ""),$line);
77 if($line == "") $line = "neonserv";
78 $local['base'] = $line;
80 shell_color(YELLOW,BLACK);
81 echo "Checking local MySQL... ";
82 $local['conn'] = @mysql_connect($local['host'], $local['user'], $local['pass']);
83 @mysql_select_db($local['base'], $local['conn']) OR $local['conn'] = NULL;
85 shell_color(GREEN,BLACK);
88 shell_color(RED,BLACK);
90 shell_color(NORMAL,NORMAL);
93 shell_color(YELLOW,BLACK);
94 echo "Checking remote MySQL... ";
95 $uplink['conn'] = @mysql_connect($uplink['host'], $uplink['user'], $uplink['pass']);
96 @mysql_select_db($uplink['base'], $uplink['conn']) OR $uplink['conn'] = NULL;
98 shell_color(GREEN,BLACK);
101 shell_color(RED,BLACK);
103 shell_color(NORMAL,NORMAL);
106 shell_color(YELLOW,BLACK);
107 echo "Copying `language` table... ";
108 shell_color(RED,BLACK);
111 $result = mysql_query("SELECT `lang`, `ident`, `text` FROM `language`", $uplink['conn']);
112 while($row = mysql_fetch_array($result)) {
113 $result2 = mysql_query("SELECT `id`, `text` FROM `language` WHERE `lang` = '".mysql_real_escape_string($row['lang'])."' AND `ident` = '".mysql_real_escape_string($row['ident'])."'", $local['conn']);
114 if(mysql_num_rows($result2)) {
115 $row2 = mysql_fetch_array($result2);
116 if($row2['text'] != $row['text']) {
118 mysql_query("UPDATE `language` SET `text` = '".mysql_real_escape_string($row['text'])."' WHERE `id` = '".$row2['id']."'", $local['conn']);
122 mysql_query("INSERT INTO `language` (`lang`, `ident`, `text`) VALUES ('".mysql_real_escape_string($row['lang'])."', '".mysql_real_escape_string($row['ident'])."', '".mysql_real_escape_string($row['text'])."');", $local['conn']);
125 shell_color(GREEN,BLACK);
126 echo"copied ".$copied." & updated ".$updated." entrys.\n";
127 shell_color(YELLOW,BLACK);
128 echo "Copying `help` table... ";
129 shell_color(RED,BLACK);
132 $result = mysql_query("SELECT `lang`, `ident`, `text` FROM `help`", $uplink['conn']);
133 while($row = mysql_fetch_array($result)) {
134 $result2 = mysql_query("SELECT `id`, `text` FROM `help` WHERE `lang` = '".mysql_real_escape_string($row['lang'])."' AND `ident` = '".mysql_real_escape_string($row['ident'])."'", $local['conn']);
135 if(mysql_num_rows($result2)) {
136 $row2 = mysql_fetch_array($result2);
137 if($row2['text'] != $row['text']) {
139 mysql_query("UPDATE `help` SET `text` = '".mysql_real_escape_string($row['text'])."' WHERE `id` = '".$row2['id']."'", $local['conn']);
143 mysql_query("INSERT INTO `help` (`lang`, `ident`, `text`) VALUES ('".mysql_real_escape_string($row['lang'])."', '".mysql_real_escape_string($row['ident'])."', '".mysql_real_escape_string($row['text'])."');", $local['conn']);
146 shell_color(GREEN,BLACK);
147 echo"copied ".$copied." & updated ".$updated." entrys.\n";
150 shell_color(NORMAL,NORMAL);