ryxeo-glpi-git / htdocs / install / update_051_06.php @ 1c14bcc4
Historique | Voir | Annoter | Télécharger (25,3 ko)
1 | 1c14bcc4 | Eric Seigne | <?php
|
---|---|---|---|
2 | /*
|
||
3 | * @version $Id: update_051_06.php 7763 2009-01-06 18:44:50Z moyo $
|
||
4 | -------------------------------------------------------------------------
|
||
5 | GLPI - Gestionnaire Libre de Parc Informatique
|
||
6 | Copyright (C) 2003-2009 by the INDEPNET Development Team.
|
||
7 | |||
8 | http://indepnet.net/ http://glpi-project.org
|
||
9 | -------------------------------------------------------------------------
|
||
10 | |||
11 | LICENSE
|
||
12 | |||
13 | This file is part of GLPI.
|
||
14 | |||
15 | GLPI is free software; you can redistribute it and/or modify
|
||
16 | it under the terms of the GNU General Public License as published by
|
||
17 | the Free Software Foundation; either version 2 of the License, or
|
||
18 | (at your option) any later version.
|
||
19 | |||
20 | GLPI is distributed in the hope that it will be useful,
|
||
21 | but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
22 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
23 | GNU General Public License for more details.
|
||
24 | |||
25 | You should have received a copy of the GNU General Public License
|
||
26 | along with GLPI; if not, write to the Free Software
|
||
27 | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||
28 | --------------------------------------------------------------------------
|
||
29 | */
|
||
30 | |||
31 | // ----------------------------------------------------------------------
|
||
32 | // Original Author of file:
|
||
33 | // Purpose of file:
|
||
34 | // ----------------------------------------------------------------------
|
||
35 | |||
36 | /// Update from 0.51x to 0.6
|
||
37 | function update051to06(){ |
||
38 | global $DB,$LANG; |
||
39 | |||
40 | echo "<p class='center'>Version 0.6 </p>"; |
||
41 | |||
42 | /*******************************GLPI 0.6***********************************************/
|
||
43 | $query= "UPDATE `glpi_tracking` SET `category`='0' WHERE `category` IS NULL;"; |
||
44 | $DB->query($query) or die("0.6 prepare for alter category tracking ".$LANG["update"][90].$DB->error()); |
||
45 | |||
46 | $query= "ALTER TABLE `glpi_tracking` CHANGE `category` `category` INT(11) DEFAULT '0' NOT NULL"; |
||
47 | $DB->query($query) or die("0.6 alter category tracking ".$LANG["update"][90].$DB->error()); |
||
48 | |||
49 | // state pour les template
|
||
50 | if(!FieldExists("glpi_state_item","is_template")) { |
||
51 | $query= "ALTER TABLE `glpi_state_item` ADD `is_template` ENUM('0', '1') DEFAULT '0' NOT NULL ;"; |
||
52 | $DB->query($query) or die("0.6 add is_template in state_item ".$LANG["update"][90].$DB->error()); |
||
53 | } |
||
54 | |||
55 | |||
56 | if(!TableExists("glpi_dropdown_cartridge_type")) { |
||
57 | |||
58 | $query = "CREATE TABLE glpi_dropdown_cartridge_type ( |
||
59 | ID int(11) NOT NULL auto_increment,
|
||
60 | name varchar(255) NOT NULL default '',
|
||
61 | PRIMARY KEY (ID)
|
||
62 | ) TYPE=MyISAM;";
|
||
63 | |||
64 | $DB->query($query) or die("0.6 add table dropdown_cartridge_type ".$LANG["update"][90].$DB->error()); |
||
65 | |||
66 | $query="INSERT INTO glpi_dropdown_cartridge_type (name) VALUES ('".$LANG["cartridges"][11]."');"; |
||
67 | $DB->query($query) or die("0.6 add entries to dropdown_cartridge_type ".$LANG["update"][90].$DB->error()); |
||
68 | $query="INSERT INTO glpi_dropdown_cartridge_type (name) VALUES ('".$LANG["cartridges"][10]."');"; |
||
69 | $DB->query($query) or die("0.6 add entries to dropdown_cartridge_type ".$LANG["update"][90].$DB->error()); |
||
70 | $query="INSERT INTO glpi_dropdown_cartridge_type (name) VALUES ('".$LANG["cartridges"][37]."');"; |
||
71 | $DB->query($query) or die("0.6 add entries to dropdown_cartridge_type ".$LANG["update"][90].$DB->error()); |
||
72 | } |
||
73 | |||
74 | // specific alarm pour les cartouches
|
||
75 | if(!FieldExists("glpi_cartridges_type","alarm")) { |
||
76 | $query= "ALTER TABLE `glpi_cartridges_type` ADD `alarm` TINYINT DEFAULT '10' NOT NULL ;"; |
||
77 | $DB->query($query) or die("0.6 add alarm in cartridges_type ".$LANG["update"][90].$DB->error()); |
||
78 | } |
||
79 | |||
80 | // email for enterprises
|
||
81 | if(!FieldExists("glpi_enterprises","email")) { |
||
82 | $query= "ALTER TABLE `glpi_enterprises` ADD `email` VARCHAR(255) NOT NULL;"; |
||
83 | $DB->query($query) or die("0.6 add email in enterprises ".$LANG["update"][90].$DB->error()); |
||
84 | } |
||
85 | |||
86 | // ldap_port for config
|
||
87 | if(!FieldExists("glpi_config","ldap_port")) { |
||
88 | $query= "ALTER TABLE `glpi_config` ADD `ldap_port` VARCHAR(10) DEFAULT '389' NOT NULL AFTER `ID` ;"; |
||
89 | $DB->query($query) or die("0.6 add ldap_port in config ".$LANG["update"][90].$DB->error()); |
||
90 | } |
||
91 | |||
92 | // CAS configuration
|
||
93 | if(!FieldExists("glpi_config","cas_host")) { |
||
94 | $query= "ALTER TABLE `glpi_config` ADD `cas_host` VARCHAR(255) NOT NULL , |
||
95 | ADD `cas_port` VARCHAR(255) NOT NULL ,
|
||
96 | ADD `cas_uri` VARCHAR(255) NOT NULL ;";
|
||
97 | $DB->query($query) or die("0.6 add cas config in config ".$LANG["update"][90].$DB->error()); |
||
98 | } |
||
99 | |||
100 | // Limit Item for contracts and correct template bug
|
||
101 | if(!FieldExists("glpi_contracts","device_countmax")) { |
||
102 | $query= "ALTER TABLE `glpi_contracts` ADD `device_countmax` INT DEFAULT '0' NOT NULL ;"; |
||
103 | $DB->query($query) or die("0.6 add device_countmax in contracts ".$LANG["update"][90].$DB->error()); |
||
104 | } |
||
105 | |||
106 | if(!FieldExists("glpi_contract_device","is_template")) { |
||
107 | $query= "ALTER TABLE `glpi_contract_device` ADD `is_template` ENUM('0', '1') DEFAULT '0' NOT NULL ;"; |
||
108 | $DB->query($query) or die("0.6 add is_template in contract_device ".$LANG["update"][90].$DB->error()); |
||
109 | //$query= " ALTER TABLE `glpi_contract_device` ADD INDEX (`is_template `) ";
|
||
110 | //$DB->query($query) or die("0.6 alter is_template in contract_device ".$LANG["update"][90].$DB->error());
|
||
111 | } |
||
112 | |||
113 | if(!FieldExists("glpi_doc_device","is_template")) { |
||
114 | $query= "ALTER TABLE `glpi_doc_device` ADD `is_template` ENUM('0', '1') DEFAULT '0' NOT NULL ;"; |
||
115 | $DB->query($query) or die("0.6 add is_template in doc_device ".$LANG["update"][90].$DB->error()); |
||
116 | $query= "ALTER TABLE `glpi_doc_device` ADD INDEX (`is_template`) ;"; |
||
117 | $DB->query($query) or die("0.6 alter is_template in doc_device ".$LANG["update"][90].$DB->error()); |
||
118 | } |
||
119 | |||
120 | // Contract Type to dropdown
|
||
121 | if(!TableExists("glpi_dropdown_contract_type")) { |
||
122 | |||
123 | $query = "CREATE TABLE glpi_dropdown_contract_type ( |
||
124 | ID int(11) NOT NULL auto_increment,
|
||
125 | name varchar(255) NOT NULL default '',
|
||
126 | PRIMARY KEY (ID)
|
||
127 | ) TYPE=MyISAM;";
|
||
128 | |||
129 | $DB->query($query) or die("0.6 add table dropdown_contract_type ".$LANG["update"][90].$DB->error()); |
||
130 | |||
131 | $query="INSERT INTO glpi_dropdown_contract_type (name) VALUES ('".$LANG["financial"][50]."');"; |
||
132 | $DB->query($query) or die("0.6 add entries to dropdown_contract_type ".$LANG["update"][90].$DB->error()); |
||
133 | $query="INSERT INTO glpi_dropdown_contract_type (name) VALUES ('".$LANG["financial"][51]."');"; |
||
134 | $DB->query($query) or die("0.6 add entries to dropdown_contract_type ".$LANG["update"][90].$DB->error()); |
||
135 | $query="INSERT INTO glpi_dropdown_contract_type (name) VALUES ('".$LANG["financial"][52]."');"; |
||
136 | $DB->query($query) or die("0.6 add entries to dropdown_contract_type ".$LANG["update"][90].$DB->error()); |
||
137 | $query="INSERT INTO glpi_dropdown_contract_type (name) VALUES ('".$LANG["financial"][53]."');"; |
||
138 | $DB->query($query) or die("0.6 add entries to dropdown_contract_type ".$LANG["update"][90].$DB->error()); |
||
139 | $query="INSERT INTO glpi_dropdown_contract_type (name) VALUES ('".$LANG["financial"][54]."');"; |
||
140 | $DB->query($query) or die("0.6 add entries to dropdown_contract_type ".$LANG["update"][90].$DB->error()); |
||
141 | $query="INSERT INTO glpi_dropdown_contract_type (name) VALUES ('".$LANG["financial"][55]."');"; |
||
142 | $DB->query($query) or die("0.6 add entries to dropdown_contract_type ".$LANG["update"][90].$DB->error()); |
||
143 | $query="INSERT INTO glpi_dropdown_contract_type (name) VALUES ('".$LANG["financial"][56]."');"; |
||
144 | $DB->query($query) or die("0.6 add entries to dropdown_contract_type ".$LANG["update"][90].$DB->error()); |
||
145 | |||
146 | } |
||
147 | |||
148 | //// Update author and assign from tracking / followups
|
||
149 | if(!FieldExists("glpi_tracking","assign_type")) { |
||
150 | |||
151 | // Create assin_type field
|
||
152 | $query= "ALTER TABLE `glpi_tracking` ADD `assign_type` TINYINT DEFAULT '0' NOT NULL AFTER `assign` ;"; |
||
153 | $DB->query($query) or die("0.6 add assign_type in tracking ".$LANG["update"][90].$DB->error()); |
||
154 | |||
155 | $users=array(); |
||
156 | // Load All users
|
||
157 | $query="SELECT ID, name FROM glpi_users"; |
||
158 | $result=$DB->query($query); |
||
159 | while($line = $DB->fetch_array($result)) { |
||
160 | $users[$line["name"]]=$line["ID"]; |
||
161 | } |
||
162 | $DB->free_result($result); |
||
163 | |||
164 | // Update authors tracking
|
||
165 | $query= "UPDATE `glpi_tracking` SET `author`='0' WHERE `author` IS NULL;"; |
||
166 | $DB->query($query) or die("0.6 prepare for alter category tracking ".$LANG["update"][90].$DB->error()); |
||
167 | |||
168 | // Load tracking authors tables
|
||
169 | $authors=array(); |
||
170 | $query="SELECT ID, author FROM glpi_tracking"; |
||
171 | $result=$DB->query($query); |
||
172 | while($line = $DB->fetch_array($result)) { |
||
173 | $authors[$line["ID"]]=$line["author"]; |
||
174 | } |
||
175 | $DB->free_result($result); |
||
176 | |||
177 | if (count($authors)>0) |
||
178 | foreach ($authors as $ID => $val){ |
||
179 | if (isset($users[$val])){ |
||
180 | $query="UPDATE glpi_tracking SET author='".$users[$val]."' WHERE ID='$ID'"; |
||
181 | $DB->query($query); |
||
182 | } |
||
183 | } |
||
184 | unset($authors); |
||
185 | |||
186 | $query= "ALTER TABLE `glpi_tracking` CHANGE `author` `author` INT(11) DEFAULT '0' NOT NULL"; |
||
187 | $DB->query($query) or die("0.6 alter author in tracking ".$LANG["update"][90].$DB->error()); |
||
188 | |||
189 | $assign=array(); |
||
190 | |||
191 | |||
192 | // Load tracking assign tables
|
||
193 | $query="SELECT ID, assign FROM glpi_tracking"; |
||
194 | $result=$DB->query($query); |
||
195 | while($line = $DB->fetch_array($result)) { |
||
196 | $assign[$line["ID"]]=$line["assign"]; |
||
197 | } |
||
198 | $DB->free_result($result); |
||
199 | |||
200 | |||
201 | if (count($assign)>0) |
||
202 | foreach ($assign as $ID => $val){ |
||
203 | if (isset($users[$val])){ |
||
204 | $query="UPDATE glpi_tracking SET assign='".$users[$val]."', assign_type='".USER_TYPE."' WHERE ID='$ID'"; |
||
205 | $DB->query($query); |
||
206 | } |
||
207 | } |
||
208 | unset($assign); |
||
209 | |||
210 | // Update assign tracking
|
||
211 | $query= "ALTER TABLE `glpi_tracking` CHANGE `assign` `assign` INT(11) DEFAULT '0' NOT NULL"; |
||
212 | $DB->query($query) or die("0.6 alter assign in tracking ".$LANG["update"][90].$DB->error()); |
||
213 | |||
214 | $authors=array(); |
||
215 | // Load followup authors tables
|
||
216 | $query="SELECT ID, author FROM glpi_followups"; |
||
217 | $result=$DB->query($query); |
||
218 | while($line = $DB->fetch_array($result)) { |
||
219 | $authors[$line["ID"]]=$line["author"]; |
||
220 | } |
||
221 | $DB->free_result($result); |
||
222 | |||
223 | |||
224 | if (count($authors)>0) |
||
225 | foreach ($authors as $ID => $val){ |
||
226 | if (isset($users[$val])){ |
||
227 | $query="UPDATE glpi_followups SET author='".$users[$val]."' WHERE ID='$ID'"; |
||
228 | $DB->query($query); |
||
229 | } |
||
230 | } |
||
231 | unset($authors); |
||
232 | |||
233 | // Update authors tracking
|
||
234 | $query= "ALTER TABLE `glpi_followups` CHANGE `author` `author` INT(11) DEFAULT '0' NOT NULL"; |
||
235 | $DB->query($query) or die("0.6 alter author in followups ".$LANG["update"][90].$DB->error()); |
||
236 | |||
237 | // Update Enterprise Tracking
|
||
238 | $query="SELECT computer, ID FROM glpi_tracking WHERE device_type='".ENTERPRISE_TYPE."'"; |
||
239 | $result=$DB->query($query); |
||
240 | |||
241 | if ($DB->numrows($result)>0) |
||
242 | while($line = $DB->fetch_array($result)) { |
||
243 | $query="UPDATE glpi_tracking SET assign='".$line["computer"]."', assign_type='".ENTERPRISE_TYPE."', device_type='0', computer='0' WHERE ID='".$line["ID"]."'"; |
||
244 | $DB->query($query); |
||
245 | } |
||
246 | $DB->free_result($result); |
||
247 | } |
||
248 | |||
249 | // Add planning feature
|
||
250 | |||
251 | if(!TableExists("glpi_tracking_planning")) { |
||
252 | |||
253 | $query = "CREATE TABLE `glpi_tracking_planning` ( |
||
254 | `ID` bigint(20) NOT NULL auto_increment,
|
||
255 | `id_tracking` int(11) NOT NULL default '0',
|
||
256 | `id_assign` int(11) NOT NULL default '0',
|
||
257 | `begin` datetime NOT NULL default '0000-00-00 00:00:00',
|
||
258 | `end` datetime NOT NULL default '0000-00-00 00:00:00',
|
||
259 | PRIMARY KEY (`ID`),
|
||
260 | KEY `id_tracking` (`id_tracking`),
|
||
261 | KEY `begin` (`begin`),
|
||
262 | KEY `end` (`end`)
|
||
263 | ) TYPE=MyISAM ;";
|
||
264 | |||
265 | $DB->query($query) or die("0.6 add table glpi_tracking_planning ".$LANG["update"][90].$DB->error()); |
||
266 | } |
||
267 | |||
268 | if(!FieldExists("glpi_config","planning_begin")) { |
||
269 | $query="ALTER TABLE `glpi_config` ADD `planning_begin` TIME DEFAULT '08:00:00' NOT NULL"; |
||
270 | |||
271 | $DB->query($query) or die("0.6 add planning begin in config".$LANG["update"][90].$DB->error()); |
||
272 | } |
||
273 | if(!FieldExists("glpi_config","planning_end")) { |
||
274 | $query="ALTER TABLE `glpi_config` ADD `planning_end` TIME DEFAULT '20:00:00' NOT NULL"; |
||
275 | |||
276 | $DB->query($query) or die("0.6 add planning end in config".$LANG["update"][90].$DB->error()); |
||
277 | } |
||
278 | |||
279 | // Merge glpi_users and glpi_prefs
|
||
280 | if(!FieldExists("glpi_users","language")) { |
||
281 | // Create fields
|
||
282 | $query="ALTER TABLE `glpi_users` ADD `tracking_order` ENUM('yes', 'no') DEFAULT 'no' NOT NULL ;"; |
||
283 | $DB->query($query) or die("0.6 add tracking_order in users".$LANG["update"][90].$DB->error()); |
||
284 | $query="ALTER TABLE `glpi_users` ADD `language` VARCHAR(255) NOT NULL DEFAULT 'english';"; |
||
285 | $DB->query($query) or die("0.6 add language in users".$LANG["update"][90].$DB->error()); |
||
286 | |||
287 | // Move data
|
||
288 | $query="SELECT * from glpi_prefs"; |
||
289 | $result=$DB->query($query); |
||
290 | if ($DB->numrows($result)>0) |
||
291 | while ($data=$DB->fetch_array($result)){ |
||
292 | $query2="UPDATE glpi_users SET language='".$data['language']."', tracking_order='".$data['tracking_order']."' WHERE name='".$data['username']."';"; |
||
293 | $DB->query($query2) or die("0.6 move pref to users".$LANG["update"][90].$DB->error()); |
||
294 | } |
||
295 | $DB->free_result($result); |
||
296 | // Drop glpi_prefs
|
||
297 | $query="DROP TABLE `glpi_prefs`;"; |
||
298 | $DB->query($query) or die("0.6 drop glpi_prefs".$LANG["update"][90].$DB->error()); |
||
299 | |||
300 | |||
301 | } |
||
302 | |||
303 | // Create glpi_dropdown_ram_type
|
||
304 | if(!TableExists("glpi_dropdown_ram_type")) { |
||
305 | $query = "CREATE TABLE `glpi_dropdown_ram_type` ( |
||
306 | `ID` int(11) NOT NULL auto_increment,
|
||
307 | `name` varchar(255) NOT NULL default '',
|
||
308 | PRIMARY KEY (`ID`)
|
||
309 | ) TYPE=MyISAM;";
|
||
310 | |||
311 | $DB->query($query) or die("0.6 add table glpi_dropdown_ram_type ".$LANG["update"][90].$DB->error()); |
||
312 | $query="ALTER TABLE `glpi_device_ram` ADD `new_type` INT(11) DEFAULT '0' NOT NULL ;"; |
||
313 | $DB->query($query) or die("0.6 create new type field for glpi_device_ram ".$LANG["update"][90].$DB->error()); |
||
314 | $query="INSERT INTO `glpi_dropdown_ram_type` (`name`) VALUES ('EDO');"; |
||
315 | $DB->query($query) or die("0.6 insert value in glpi_dropdown_ram ".$LANG["update"][90].$DB->error()); |
||
316 | $query="INSERT INTO `glpi_dropdown_ram_type` (`name`) VALUES ('DDR');"; |
||
317 | $DB->query($query) or die("0.6 insert value in glpi_dropdown_ram ".$LANG["update"][90].$DB->error()); |
||
318 | $query="INSERT INTO `glpi_dropdown_ram_type` (`name`) VALUES ('SDRAM');"; |
||
319 | $DB->query($query) or die("0.6 insert value in glpi_dropdown_ram ".$LANG["update"][90].$DB->error()); |
||
320 | $query="INSERT INTO `glpi_dropdown_ram_type` (`name`) VALUES ('SDRAM-2');"; |
||
321 | $DB->query($query) or die("0.6 insert value in glpi_dropdown_ram ".$LANG["update"][90].$DB->error()); |
||
322 | |||
323 | // Get values
|
||
324 | $query="SELECT * from glpi_dropdown_ram_type"; |
||
325 | $result=$DB->query($query); |
||
326 | $val=array(); |
||
327 | while ($data=$DB->fetch_array($result)){ |
||
328 | $val[$data['name']]=$data['ID']; |
||
329 | } |
||
330 | $DB->free_result($result); |
||
331 | |||
332 | // Update glpi_device_ram
|
||
333 | $query="SELECT * from glpi_device_ram"; |
||
334 | $result=$DB->query($query); |
||
335 | if ($DB->numrows($result)>0) |
||
336 | while ($data=$DB->fetch_array($result)){ |
||
337 | $query2="UPDATE glpi_device_ram SET new_type='".$val[$data['type']]."' WHERE ID ='".$data['ID']."';"; |
||
338 | $DB->query($query2); |
||
339 | } |
||
340 | $DB->free_result($result); |
||
341 | // ALTER glpi_device_ram
|
||
342 | $query="ALTER TABLE `glpi_device_ram` DROP `type`;"; |
||
343 | $DB->query($query) or die("0.6 drop type in glpi_dropdown_ram ".$LANG["update"][90].$DB->error()); |
||
344 | $query="ALTER TABLE `glpi_device_ram` CHANGE `new_type` `type` INT(11) DEFAULT '0' NOT NULL "; |
||
345 | $DB->query($query) or die("0.6 rename new_type in glpi_dropdown_ram ".$LANG["update"][90].$DB->error()); |
||
346 | |||
347 | |||
348 | } |
||
349 | |||
350 | // Create external links
|
||
351 | if(!TableExists("glpi_links")) { |
||
352 | $query = "CREATE TABLE `glpi_links` ( |
||
353 | `ID` int(11) NOT NULL auto_increment,
|
||
354 | `name` varchar(255) NOT NULL default '',
|
||
355 | PRIMARY KEY (`ID`)
|
||
356 | ) TYPE=MyISAM;";
|
||
357 | |||
358 | $DB->query($query) or die("0.6 add table glpi_links ".$LANG["update"][90].$DB->error()); |
||
359 | } |
||
360 | |||
361 | if(!TableExists("glpi_links_device")) { |
||
362 | |||
363 | $query = "CREATE TABLE `glpi_links_device` ( |
||
364 | `ID` int(11) NOT NULL auto_increment,
|
||
365 | `FK_links` int(11) NOT NULL default '0',
|
||
366 | `device_type` int(11) NOT NULL default '0',
|
||
367 | PRIMARY KEY (`ID`),
|
||
368 | KEY `device_type` (`device_type`),
|
||
369 | KEY `FK_links` (`FK_links`),
|
||
370 | UNIQUE `device_type_2` (`device_type`,`FK_links`)
|
||
371 | ) TYPE=MyISAM;";
|
||
372 | |||
373 | $DB->query($query) or die("0.6 add table glpi_links_device ".$LANG["update"][90].$DB->error()); |
||
374 | } |
||
375 | |||
376 | // Initial count page for printer
|
||
377 | if(!FieldExists("glpi_printers","initial_pages")) { |
||
378 | $query="ALTER TABLE `glpi_printers` ADD `initial_pages` VARCHAR(30) DEFAULT '0' NOT NULL ;"; |
||
379 | $DB->query($query) or die("0.6 add initial_pages in printers".$LANG["update"][90].$DB->error()); |
||
380 | } |
||
381 | |||
382 | // Auto assign intervention
|
||
383 | if(!FieldExists("glpi_config","auto_assign")) { |
||
384 | $query="ALTER TABLE `glpi_config` ADD `auto_assign` ENUM('0', '1') DEFAULT '0' NOT NULL ;"; |
||
385 | $DB->query($query) or die("0.6 add auto_assign in config".$LANG["update"][90].$DB->error()); |
||
386 | } |
||
387 | |||
388 | // Create glpi_dropdown_network
|
||
389 | if(!TableExists("glpi_dropdown_network")) { |
||
390 | $query = "CREATE TABLE `glpi_dropdown_network` ( |
||
391 | `ID` int(11) NOT NULL auto_increment,
|
||
392 | `name` varchar(255) NOT NULL default '',
|
||
393 | PRIMARY KEY (`ID`)
|
||
394 | ) TYPE=MyISAM;";
|
||
395 | $DB->query($query) or die("0.6 add table glpi_dropdown_network ".$LANG["update"][90].$DB->error()); |
||
396 | } |
||
397 | if(!FieldExists("glpi_computers","network")) { |
||
398 | $query="ALTER TABLE `glpi_computers` ADD `network` INT(11) DEFAULT '0' NOT NULL AFTER `location` ;"; |
||
399 | $DB->query($query) or die("0.6 a network in computers".$LANG["update"][90].$DB->error()); |
||
400 | } |
||
401 | if(!FieldExists("glpi_printers","network")) { |
||
402 | $query="ALTER TABLE `glpi_printers` ADD `network` INT(11) DEFAULT '0' NOT NULL AFTER `location` ;"; |
||
403 | $DB->query($query) or die("0.6 add network in printers".$LANG["update"][90].$DB->error()); |
||
404 | } |
||
405 | if(!FieldExists("glpi_networking","network")) { |
||
406 | $query="ALTER TABLE `glpi_networking` ADD `network` INT(11) DEFAULT '0' NOT NULL AFTER `location` ;"; |
||
407 | $DB->query($query) or die("0.6 a network in networking".$LANG["update"][90].$DB->error()); |
||
408 | } |
||
409 | |||
410 | // Create glpi_dropdown_domain
|
||
411 | if(!TableExists("glpi_dropdown_domain")) { |
||
412 | $query = "CREATE TABLE `glpi_dropdown_domain` ( |
||
413 | `ID` int(11) NOT NULL auto_increment,
|
||
414 | `name` varchar(255) NOT NULL default '',
|
||
415 | PRIMARY KEY (`ID`)
|
||
416 | ) TYPE=MyISAM;";
|
||
417 | $DB->query($query) or die("0.6 add table glpi_dropdown_domain ".$LANG["update"][90].$DB->error()); |
||
418 | } |
||
419 | if(!FieldExists("glpi_computers","domain")) { |
||
420 | $query="ALTER TABLE `glpi_computers` ADD `domain` INT(11) DEFAULT '0' NOT NULL AFTER `location` ;"; |
||
421 | $DB->query($query) or die("0.6 a domain in computers".$LANG["update"][90].$DB->error()); |
||
422 | } |
||
423 | if(!FieldExists("glpi_printers","domain")) { |
||
424 | $query="ALTER TABLE `glpi_printers` ADD `domain` INT(11) DEFAULT '0' NOT NULL AFTER `location` ;"; |
||
425 | $DB->query($query) or die("0.6 a domain in printers".$LANG["update"][90].$DB->error()); |
||
426 | } |
||
427 | if(!FieldExists("glpi_networking","domain")) { |
||
428 | $query="ALTER TABLE `glpi_networking` ADD `domain` INT(11) DEFAULT '0' NOT NULL AFTER `location` ;"; |
||
429 | $DB->query($query) or die("0.6 a domain in networking".$LANG["update"][90].$DB->error()); |
||
430 | } |
||
431 | |||
432 | // Create glpi_dropdown_vlan
|
||
433 | if(!TableExists("glpi_dropdown_vlan")) { |
||
434 | $query = "CREATE TABLE `glpi_dropdown_vlan` ( |
||
435 | `ID` int(11) NOT NULL auto_increment,
|
||
436 | `name` varchar(255) NOT NULL default '',
|
||
437 | PRIMARY KEY (`ID`)
|
||
438 | ) TYPE=MyISAM;";
|
||
439 | $DB->query($query) or die("0.6 add table glpi_dropdown_vlan ".$LANG["update"][90].$DB->error()); |
||
440 | } |
||
441 | |||
442 | if(!TableExists("glpi_networking_vlan")) { |
||
443 | $query = "CREATE TABLE `glpi_networking_vlan` ( |
||
444 | `ID` int(11) NOT NULL auto_increment,
|
||
445 | `FK_port` int(11) NOT NULL default '0',
|
||
446 | `FK_vlan` int(11) NOT NULL default '0',
|
||
447 | PRIMARY KEY (`ID`),
|
||
448 | KEY `FK_port` (`FK_port`),
|
||
449 | KEY `FK_vlan` (`FK_vlan`),
|
||
450 | UNIQUE `FK_port_2` (`FK_port`,`FK_vlan`)
|
||
451 | ) TYPE=MyISAM;";
|
||
452 | $DB->query($query) or die("0.6 add table glpi_networking_vlan ".$LANG["update"][90].$DB->error()); |
||
453 | } |
||
454 | |||
455 | // Global Peripherals
|
||
456 | if(!FieldExists("glpi_peripherals","is_global")) { |
||
457 | $query="ALTER TABLE `glpi_peripherals` ADD `is_global` ENUM('0', '1') DEFAULT '0' NOT NULL AFTER `FK_glpi_enterprise` ;"; |
||
458 | $DB->query($query) or die("0.6 add is_global in peripherals".$LANG["update"][90].$DB->error()); |
||
459 | } |
||
460 | |||
461 | // Global Monitors
|
||
462 | if(!FieldExists("glpi_monitors","is_global")) { |
||
463 | $query="ALTER TABLE `glpi_monitors` ADD `is_global` ENUM('0', '1') DEFAULT '0' NOT NULL AFTER `FK_glpi_enterprise` ;"; |
||
464 | $DB->query($query) or die("0.6 add is_global in peripherals".$LANG["update"][90].$DB->error()); |
||
465 | } |
||
466 | |||
467 | // Mailing Resa
|
||
468 | if(!FieldExists("glpi_config","mailing_resa_admin")) { |
||
469 | $query="ALTER TABLE `glpi_config` ADD `mailing_resa_admin` VARCHAR(200) NOT NULL DEFAULT '1' AFTER `admin_email` ;"; |
||
470 | $DB->query($query) or die("0.6 add mailing_resa_admin in config".$LANG["update"][90].$DB->error()); |
||
471 | } |
||
472 | if(!FieldExists("glpi_config","mailing_resa_user")) { |
||
473 | $query="ALTER TABLE `glpi_config` ADD `mailing_resa_user` VARCHAR(200) NOT NULL DEFAULT '1' AFTER `admin_email` ;"; |
||
474 | $DB->query($query) or die("0.6 add mailing_resa_user in config".$LANG["update"][90].$DB->error()); |
||
475 | } |
||
476 | if(!FieldExists("glpi_config","mailing_resa_all_admin")) { |
||
477 | $query="ALTER TABLE `glpi_config` ADD `mailing_resa_all_admin` VARCHAR(200) NOT NULL DEFAULT '0' AFTER `admin_email` ;"; |
||
478 | $DB->query($query) or die("0.6 add mailing_resa_all_admin in config".$LANG["update"][90].$DB->error()); |
||
479 | } |
||
480 | |||
481 | // Mod�e ordinateurs
|
||
482 | if(!TableExists("glpi_dropdown_model")) { |
||
483 | // model=type pour faciliter la gestion en post mise �jour : ya plus qu'a deleter les elements non voulu
|
||
484 | // cela conviendra a tout le monde en fonction de l'utilisation du champ type
|
||
485 | |||
486 | $query="ALTER TABLE `glpi_type_computers` RENAME `glpi_dropdown_model` ;"; |
||
487 | $DB->query($query) or die("0.6 rename table glpi_type_computers ".$LANG["update"][90].$DB->error()); |
||
488 | |||
489 | $query = "CREATE TABLE `glpi_type_computers` ( |
||
490 | `ID` int(11) NOT NULL auto_increment,
|
||
491 | `name` varchar(255) NOT NULL default '',
|
||
492 | PRIMARY KEY (`ID`)
|
||
493 | ) TYPE=MyISAM;";
|
||
494 | |||
495 | $DB->query($query) or die("0.6 add table glpi_type_computers ".$LANG["update"][90].$DB->error()); |
||
496 | |||
497 | // copie model dans type
|
||
498 | $query="SELECT * FROM glpi_dropdown_model"; |
||
499 | $result=$DB->query($query); |
||
500 | if ($DB->numrows($result)>0) |
||
501 | while ($data=$DB->fetch_array($result)){ |
||
502 | $query="INSERT INTO `glpi_type_computers` (`ID`,`name`) VALUES ('".$data['ID']."','".addslashes($data['name'])."');"; |
||
503 | $DB->query($query) or die("0.6 insert value in glpi_type_computers ".$LANG["update"][90].$DB->error()); |
||
504 | } |
||
505 | $DB->free_result($result); |
||
506 | |||
507 | $query="INSERT INTO `glpi_type_computers` (`name`) VALUES ('".$LANG["common"][52]."');"; |
||
508 | $DB->query($query) or die("0.6 insert value in glpi_type_computers ".$LANG["update"][90].$DB->error()); |
||
509 | $serverid=$DB->insert_id(); |
||
510 | |||
511 | // Type -> mod�e
|
||
512 | $query="ALTER TABLE `glpi_computers` CHANGE `type` `model` INT(11) DEFAULT NULL "; |
||
513 | $DB->query($query) or die("0.6 add model in computers".$LANG["update"][90].$DB->error()); |
||
514 | |||
515 | $query="ALTER TABLE `glpi_computers` ADD `type` INT(11) DEFAULT NULL AFTER `model` ;"; |
||
516 | $DB->query($query) or die("0.6 add model in computers".$LANG["update"][90].$DB->error()); |
||
517 | |||
518 | // Update server values and drop flags_server
|
||
519 | $query="UPDATE glpi_computers SET type='$serverid' where flags_server='1'"; |
||
520 | $DB->query($query) or die("0.6 update type of computers".$LANG["update"][90].$DB->error()); |
||
521 | |||
522 | $query="ALTER TABLE `glpi_computers` DROP `flags_server`;"; |
||
523 | $DB->query($query) or die("0.6 drop type in glpi_dropdown_ram ".$LANG["update"][90].$DB->error()); |
||
524 | |||
525 | } |
||
526 | |||
527 | if(!TableExists("glpi_consumables_type")) { |
||
528 | |||
529 | $query = "CREATE TABLE `glpi_consumables_type` ( |
||
530 | `ID` int(11) NOT NULL auto_increment,
|
||
531 | `name` varchar(255) NOT NULL default '',
|
||
532 | `ref` varchar(255) NOT NULL default '',
|
||
533 | `location` int(11) NOT NULL default '0',
|
||
534 | `type` tinyint(4) NOT NULL default '0',
|
||
535 | `FK_glpi_enterprise` int(11) NOT NULL default '0',
|
||
536 | `tech_num` int(11) default '0',
|
||
537 | `deleted` enum('Y','N') NOT NULL default 'N',
|
||
538 | `comments` text NOT NULL,
|
||
539 | `alarm` tinyint(4) NOT NULL default '10',
|
||
540 | PRIMARY KEY (`ID`),
|
||
541 | KEY `FK_glpi_enterprise` (`FK_glpi_enterprise`),
|
||
542 | KEY `tech_num` (`tech_num`),
|
||
543 | KEY `deleted` (`deleted`)
|
||
544 | ) TYPE=MyISAM;";
|
||
545 | |||
546 | $DB->query($query) or die("0.6 add table glpi_consumables_type ".$LANG["update"][90].$DB->error()); |
||
547 | |||
548 | $query = "CREATE TABLE `glpi_consumables` ( |
||
549 | `ID` int(11) NOT NULL auto_increment,
|
||
550 | `FK_glpi_consumables_type` int(11) default NULL,
|
||
551 | `date_in` date default NULL,
|
||
552 | `date_out` date default NULL,
|
||
553 | PRIMARY KEY (`ID`),
|
||
554 | KEY `FK_glpi_cartridges_type` (`FK_glpi_consumables_type`),
|
||
555 | KEY `date_in` (`date_in`),
|
||
556 | KEY `date_out` (`date_out`)
|
||
557 | ) TYPE=MyISAM;";
|
||
558 | |||
559 | $DB->query($query) or die("0.6 add table glpi_consumables ".$LANG["update"][90].$DB->error()); |
||
560 | |||
561 | $query = "CREATE TABLE `glpi_dropdown_consumable_type` ( |
||
562 | `ID` int(11) NOT NULL auto_increment,
|
||
563 | `name` varchar(255) NOT NULL default '',
|
||
564 | PRIMARY KEY (`ID`)
|
||
565 | ) TYPE=MyISAM;";
|
||
566 | |||
567 | $DB->query($query) or die("0.6 add table glpi_dropdown_consumable_type ".$LANG["update"][90].$DB->error()); |
||
568 | |||
569 | } |
||
570 | |||
571 | // HDD connect type
|
||
572 | if(!TableExists("glpi_dropdown_hdd_type")) { |
||
573 | $query = "CREATE TABLE `glpi_dropdown_hdd_type` ( |
||
574 | `ID` int(11) NOT NULL auto_increment,
|
||
575 | `name` varchar(255) NOT NULL default '',
|
||
576 | PRIMARY KEY (`ID`)
|
||
577 | ) TYPE=MyISAM;";
|
||
578 | |||
579 | $DB->query($query) or die("0.6 add table glpi_dropdown_hdd_type ".$LANG["update"][90].$DB->error()); |
||
580 | |||
581 | $query="INSERT INTO `glpi_dropdown_hdd_type` (`name`) VALUES ('IDE');"; |
||
582 | $DB->query($query) or die("0.6 insert value in glpi_dropdown_hdd_type ".$LANG["update"][90].$DB->error()); |
||
583 | $query="INSERT INTO `glpi_dropdown_hdd_type` (`name`) VALUES ('SATA');"; |
||
584 | $DB->query($query) or die("0.6 insert value in glpi_dropdown_hdd_type ".$LANG["update"][90].$DB->error()); |
||
585 | $query="INSERT INTO `glpi_dropdown_hdd_type` (`name`) VALUES ('SCSI');"; |
||
586 | $DB->query($query) or die("0.6 insert value in glpi_dropdown_hdd_type ".$LANG["update"][90].$DB->error()); |
||
587 | |||
588 | // Insertion des enum dans l'ordre - le alter garde donc les bonne valeurs
|
||
589 | $query="ALTER TABLE `glpi_device_hdd` CHANGE `interface` `interface` INT(11) DEFAULT '0' NOT NULL"; |
||
590 | $DB->query($query) or die("0.6 alter interface of glpi_device_hdd".$LANG["update"][90].$DB->error()); |
||
591 | } |
||
592 | |||
593 | } |
||
594 | |||
595 | ?> |