source: trunk/Common/Setup/Updates.php@ 677

Last change on this file since 677 was 677, checked in by chronos, 11 years ago
  • Upraveno: Zobrazovat online stav zařízení a rozhraní.
  • Přidáno: Zobrazení bezdrátových spojení vztažených k rozhraní.
File size: 42.9 KB
Line 
1<?php
2
3function UpdateTo493($Manager)
4{
5 $Manager->Execute("ALTER TABLE `UserOnline` CHANGE `User` `User` INT( 11 ) NULL DEFAULT NULL COMMENT 'User.Id'");
6}
7
8function UpdateTo494($Manager)
9{
10 $Manager->Execute("ALTER TABLE `FinanceOperation` DROP FOREIGN KEY `FinanceOperation_ibfk_2` ;\n".
11 "ALTER TABLE `FinanceOperation` CHANGE `Bill` `File` INT( 11 ) NULL DEFAULT NULL;\n".
12 "ALTER TABLE `FinanceOperation` ADD FOREIGN KEY ( `File` ) REFERENCES `File` (`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;");
13}
14
15function UpdateTo495($Manager)
16{
17 $Manager->Execute("INSERT INTO `MapPosition` (SELECT NULL AS `Id`, `Name`, `MapPositionX` AS `Latitude`, `MapPositionY` AS `Longitude` FROM `Subject`)");
18 $Manager->Execute("ALTER TABLE `Subject` ADD `MapPosition` INT NULL AFTER `PayVAT`");
19 $Manager->Execute("UPDATE `Subject` SET `MapPosition` = (SELECT `MapPosition`.`Id` FROM `MapPosition` WHERE `MapPosition`.`Name` = `Subject`.`Name` LIMIT 1)");
20 $Manager->Execute("ALTER TABLE `Subject` DROP `MapPositionX`, DROP `MapPositionY`;");
21 $Manager->Execute("ALTER TABLE `Subject` ADD INDEX ( `MapPosition` ) ");
22 $Manager->Execute("ALTER TABLE `Subject` ADD FOREIGN KEY ( `MapPosition` ) REFERENCES `MapPosition` (".
23 "`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;");
24}
25
26function UpdateTo497($Manager)
27{
28 $Manager->Execute("ALTER TABLE `FinanceCharge` ADD `Id` INT NOT NULL AUTO_INCREMENT FIRST , ADD PRIMARY KEY ( `Id` ) ");
29 $Manager->Execute("ALTER TABLE `FinanceCharge` ADD `ReplaceId` INT NULL ,ADD INDEX ( `ReplaceId` ) ");
30 $Manager->Execute("DELETE FROM `FinanceCharge` WHERE `FinanceCharge`.`Period` = 1");
31 $Manager->Execute("ALTER TABLE `FinanceCharge` DROP `Period`");
32 $Manager->Execute("ALTER TABLE `FinanceCharge` ADD `Action` ENUM( 'add', 'modify', 'remove' ) NULL AFTER `TopTariffPrice` ");
33 $Manager->Execute("ALTER TABLE `FinanceCharge` ADD FOREIGN KEY ( `ReplaceId` ) REFERENCES `FinanceCharge` (".
34 "`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;");
35 $Manager->Execute("ALTER TABLE `FinanceCharge` ADD INDEX ( `Action` )");
36 $Manager->Execute("INSERT INTO `ISMenuItem` (`Id` ,`Name` ,`Parent` ,`Table` ,`IconName`) ".
37 "VALUES (NULL , 'Parametry účtování', '2', 'FinanceCharge', '');");
38 $Manager->Execute("INSERT INTO `ISMenuItem` (`Id` ,`Name` ,`Parent` ,`Table` ,`IconName`) ".
39 "VALUES (NULL , 'Úseky sítě', '2', 'NetworkSegment', '');");
40 $Manager->Execute("ALTER TABLE `ServiceCustomerRel` ADD `Action` ENUM( 'add', 'modify', 'remove' ) NULL , ".
41 "ADD `ReplaceId` INT NULL");
42 $Manager->Execute("DELETE FROM `ServiceCustomerRel` WHERE `Period`=1");
43 $Manager->Execute("ALTER TABLE `ServiceCustomerRel` DROP `Period`");
44 $Manager->Execute("ALTER TABLE `ServiceCustomerRel` ADD INDEX ( `Action` )");
45 $Manager->Execute("ALTER TABLE `ServiceCustomerRel` ADD INDEX ( `ReplaceId` ) ");
46 $Manager->Execute("ALTER TABLE `ServiceCustomerRel` ADD FOREIGN KEY ( `ReplaceId` ) REFERENCES `ServiceCustomerRel` (".
47 "`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;");
48 $Manager->Execute("ALTER TABLE `Service` ADD `Action` ENUM( 'add', 'modify', 'remove' ) NULL AFTER `CustomerCount`");
49 $Manager->Execute("ALTER TABLE `Service` ADD INDEX ( `Action` )");
50 $Manager->Execute("INSERT INTO `ISMenuItem` (`Id` ,`Name` ,`Parent` ,`Table` ,`IconName`) ".
51 "VALUES (NULL , 'Placení zákazníků', '2', 'MemberPayment', '');");
52}
53
54function UpdateTo498($Manager)
55{
56 $Manager->Execute("INSERT INTO `ISMenuItem` (`Id` ,`Name` ,`Parent` ,`Table` ,`IconName`) ".
57 "VALUES (NULL , 'Síťové služby', '1', 'NetworkConfiguration', '');");
58 $Manager->Execute("INSERT INTO `ISMenuItem` (`Id` ,`Name` ,`Parent` ,`Table` ,`IconName`) ".
59 "VALUES (NULL , 'Fronta e-mailů', '23', 'EmailQueue', '');");
60 $Manager->Execute("CREATE TABLE IF NOT EXISTS `FinanceVAT` (
61 `Id` int(11) NOT NULL AUTO_INCREMENT,
62 `Name` varchar(255) NOT NULL,
63 `ValidFrom` date NOT NULL,
64 `Value` int(11) NOT NULL,
65 PRIMARY KEY (`Id`)
66) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
67INSERT INTO `FinanceVAT` (`Id`, `Name`, `ValidFrom`, `Value`) VALUES
68(1, 'DPH snížená sazba', '2013-01-01', 15),
69(2, 'DPH běžná sazba', '2013-01-01', 21);");
70 $Manager->Execute("ALTER TABLE `Service` ADD `VAT` INT NOT NULL AFTER `Price`");
71 $Manager->Execute("ALTER TABLE `Service` ADD INDEX ( `VAT` ) ");
72 $Manager->Execute("UPDATE `Service` SET `VAT` = 2;");
73 $Manager->Execute("ALTER TABLE `Service` ADD FOREIGN KEY ( `VAT` ) REFERENCES `FinanceVAT` (".
74 "`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;");
75 $Manager->Execute("ALTER TABLE `FinanceInvoice` ADD `Cash` INT NOT NULL DEFAULT '0'");
76}
77
78function UpdateTo499($Manager)
79{
80 $Manager->Execute("CREATE TABLE IF NOT EXISTS `Currency` (
81 `Id` int(11) NOT NULL AUTO_INCREMENT,
82 `Code` varchar(3) NOT NULL,
83 `Name` varchar(255) NOT NULL,
84 `Symbol` varchar(255) NOT NULL,
85 PRIMARY KEY (`Id`)
86) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;
87
88INSERT INTO `Currency` (`Id`, `Code`, `Name`, `Symbol`) VALUES
89(1, 'CZK', 'Česká koruna', 'Kč'),
90(2, 'EUR', 'Euro', '€'),
91(3, 'USD', 'Americký dolar', '$'),
92(4, 'CNY', 'Čínský jüan', '¥');");
93 $Manager->Execute("CREATE TABLE IF NOT EXISTS `FinanceBankImport` (
94 `Id` int(11) NOT NULL AUTO_INCREMENT,
95 `BankAccount` int(11) NOT NULL,
96 `Time` date NOT NULL,
97 `Identification` varchar(255) NOT NULL,
98 `AccountNumber` varchar(255) NOT NULL,
99 `VariableSymbol` varchar(255) NOT NULL,
100 `ConstantSymbol` varchar(255) NOT NULL,
101 `SpecificSymbol` varchar(255) NOT NULL,
102 `Value` decimal(10,0) NOT NULL,
103 `Currency` int(11) NOT NULL,
104 `Description` varchar(255) NOT NULL,
105 `OffsetAccountName` varchar(255) NOT NULL,
106 `FinanceOperation` int(11) DEFAULT NULL,
107 PRIMARY KEY (`Id`),
108 KEY `FinanceOperation` (`FinanceOperation`),
109 KEY `Currency` (`Currency`),
110 KEY `BankAccount` (`BankAccount`)
111) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
112
113ALTER TABLE `FinanceBankImport`
114 ADD CONSTRAINT `FinanceBankImport_ibfk_3` FOREIGN KEY (`FinanceOperation`) REFERENCES `FinanceOperation` (`Id`),
115 ADD CONSTRAINT `FinanceBankImport_ibfk_1` FOREIGN KEY (`BankAccount`) REFERENCES `FinanceBankAccount` (`Id`),
116 ADD CONSTRAINT `FinanceBankImport_ibfk_2` FOREIGN KEY (`Currency`) REFERENCES `Currency` (`Id`);");
117 $Manager->Execute("INSERT INTO `ISMenuItem` (`Id` ,`Name` ,`Parent` ,`Table` ,`IconName`)".
118 "VALUES (NULL , 'Měny', '2', 'Currency', '');");
119 $Manager->Execute("INSERT INTO `ISMenuItem` (`Id` ,`Name` ,`Parent` ,`Table` ,`IconName`) ".
120 "VALUES (NULL , 'Import z účtu', '2', 'FinanceBankImport', '');");
121}
122
123function UpdateTo500($Manager)
124{
125 $Manager->Execute("CREATE TABLE IF NOT EXISTS `FinanceBank` (
126 `Id` int(11) NOT NULL AUTO_INCREMENT,
127 `Name` varchar(255) NOT NULL,
128 `Code` varchar(4) NOT NULL,
129 `BIC` varchar(255) NOT NULL,
130 `Country` int(11) NOT NULL,
131 PRIMARY KEY (`Id`),
132 KEY `Country` (`Country`)
133) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;");
134 $Manager->Execute("ALTER TABLE `FinanceBank`
135 ADD CONSTRAINT `FinanceBank_ibfk_1` FOREIGN KEY (`Country`) REFERENCES `Country` (`Id`);");
136 $Manager->Execute("ALTER TABLE `FinanceBankAccount` ADD `Bank` INT NOT NULL AFTER `Number` ,".
137 " ADD INDEX ( `Bank` )");
138 $Manager->Execute("INSERT INTO `FinanceBank` (`Id`, `Name`, `Code`, `BIC`, `Country`) VALUES
139 (1, 'Neznámá banka', '', '', 1);");
140 $Manager->Execute("UPDATE `FinanceBankAccount` SET `Bank` = 1 WHERE `Bank` = 0");
141 $Manager->Execute("ALTER TABLE `FinanceBankAccount` ADD FOREIGN KEY ( `Bank` ) REFERENCES `FinanceBank` (".
142 "`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;");
143 $Manager->Execute("INSERT INTO `ISMenuItem` (`Id` ,`Name` ,`Parent` ,`Table` ,`IconName`) ".
144 "VALUES (NULL , 'Banky', '2', 'FinanceBank', '');");
145}
146
147function UpdateTo502($Manager)
148{
149 $Manager->Execute("ALTER TABLE `FinanceBankAccount` ADD `LoginName` VARCHAR( 255 ) NOT NULL ");
150 $Manager->Execute("ALTER TABLE `FinanceBankAccount` ADD `LoginPassword` VARCHAR( 255 ) NOT NULL");
151 $Manager->Execute("ALTER TABLE `FinanceBankAccount` ADD `Currency` INT NOT NULL AFTER `Use` ,".
152 "ADD INDEX ( `Currency` ) ");
153 $Manager->Execute("INSERT INTO `ISMenuItem` (`Id` ,`Name` ,`Parent` ,`Table` ,`IconName`) ".
154 "VALUES (NULL , 'Banka', '2', '', '');");
155 $Id = $Manager->Database->insert_id;
156 $Manager->Execute("UPDATE `ISMenuItem` SET `Parent` = '".$Id."' WHERE `ISMenuItem`.`Id` ='Bankovní účty'; ".
157 "UPDATE `ISMenuItem` SET `Parent` = '".$Id."' WHERE `ISMenuItem`.`Id` ='Import z účtu';".
158 "UPDATE `ISMenuItem` SET `Parent` = '".$Id."' WHERE `ISMenuItem`.`Name` ='Banky';");
159}
160
161function UpdateTo505($Manager)
162{
163 $Manager->Execute("UPDATE `ISMenuItem` SET `Name` = 'Služby', `Table` = 'Service' WHERE `ISMenuItem`.`Name` ='Tarify';");
164 $Manager->Execute("INSERT INTO `ISMenuItem` (`Id` ,`Name` ,`Parent` ,`Table` ,`IconName`) ".
165 "VALUES (NULL , 'Kategorie služeb', '2', 'ServiceCategory', '');");
166 $Manager->Execute("CREATE TABLE IF NOT EXISTS `NetworkShareItem` (
167 `Id` int(11) NOT NULL AUTO_INCREMENT,
168 `Name` varchar(255) NOT NULL DEFAULT '',
169 `Parent` int(11) NOT NULL DEFAULT '0',
170 `Host` int(11) NOT NULL DEFAULT '0',
171 `Size` bigint(20) NOT NULL DEFAULT '0',
172 `Ext` varchar(64) NOT NULL DEFAULT '',
173 `Date` date NOT NULL DEFAULT '0000-00-00',
174 `Type` int(11) NOT NULL DEFAULT '0',
175 PRIMARY KEY (`Id`),
176 KEY `Parent` (`Parent`),
177 KEY `Search` (`Name`,`Size`),
178 KEY `Name` (`Name`)
179) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;");
180 $Manager->Execute("CREATE TABLE IF NOT EXISTS `NetworkShareError` (
181 `Id` int(11) NOT NULL AUTO_INCREMENT,
182 `Host` varchar(16) NOT NULL DEFAULT '',
183 `Message` varchar(255) NOT NULL DEFAULT '',
184 PRIMARY KEY (`Id`)
185) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;");
186}
187
188function UpdateTo507($Manager)
189{
190 $Manager->Execute("INSERT INTO `ISMenuItem` (`Id` ,`Name` ,`Parent` ,`Table` ,`IconName`) ".
191 "VALUES (NULL , 'Aktuality', NULL, '', '');");
192 $Id = $Manager->Database->insert_id;
193 $Manager->Execute("INSERT INTO `ISMenuItem` (`Id` ,`Name` ,`Parent` ,`Table` ,`IconName`) ".
194 "VALUES (NULL , 'Aktuality', '".$Id."', 'News', '');");
195 $Manager->Execute("INSERT INTO `ISMenuItem` (`Id` ,`Name` ,`Parent` ,`Table` ,`IconName`) ".
196 "VALUES (NULL , 'Kategorie aktualit', '".$Id."', 'NewsCategory', '');");
197 $Manager->Execute("INSERT INTO `FileDirectory` (`Id` ,`Name` ,`Parent`".
198 ") VALUES (NULL , 'news', NULL);");
199 $Manager->Execute("ALTER TABLE `File` ADD `Time` DATETIME NOT NULL ");
200 // Convert Hire column to Service item
201 $Manager->Execute("INSERT INTO `ServiceCategory` (
202`Id` ,`Name`) VALUES (NULL , 'Pevný nájem');");
203 $ServiceCategoryHire = $Manager->Database->insert_id;
204 $DbResult = $Manager->Execute("SELECT * FROM Member WHERE Hire>0");
205 while($Member = $DbResult->fetch_assoc())
206 {
207 $Manager->Execute("INSERT INTO `Service` (
208`Id` ,`Name` ,`Category` ,`Price` ,`VAT` ,`CustomerCount` ,`Action` ,`ReplaceId` ,
209`Public` ,`InternetSpeedMin` ,`InternetSpeedMax` ,`UploadAsymmetry` ,`Memory` ,`MemorySwap` ,`Storage` ,`CPUCount`)
210VALUES (
211NULL , 'Nájem', '".$ServiceCategoryHire."', '-".$Member['Hire']."', '2', '', NULL , NULL , '', '', '', '', '', '', '', ''
212);");
213 $ServiceHire = $Manager->Database->insert_id;
214 $Manager->Execute("INSERT INTO `ServiceCustomerRel` (`Service`, `Customer`) VALUES ".
215 "(".$ServiceHire.",".$Member['Id'].")");
216 }
217 $Manager->Execute("ALTER TABLE `Member` DROP `Hire`");
218 // Each device and subnet have to be assigned to payed service to determine service parameters
219 $Manager->Execute("ALTER TABLE `NetworkDevice` ADD `Service` INT NULL AFTER `Location` ,
220ADD INDEX ( `Service` )");
221 $Manager->Execute("ALTER TABLE `NetworkDevice` ADD FOREIGN KEY ( `Service` ) REFERENCES `ServiceCustomerRel` (
222`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;");
223 $Manager->Execute("UPDATE `NetworkDevice` SET `Service` = (SELECT `Id` FROM `ServiceCustomerRel` WHERE `ServiceCustomerRel`.`Customer` = `NetworkDevice`.`Member` LIMIT 1)");
224 $Manager->Execute("ALTER TABLE `NetworkSubnet` ADD `Service` INT NULL AFTER `Member` ,
225ADD INDEX ( `Service` ) ");
226 $Manager->Execute("ALTER TABLE `NetworkSubnet` ADD FOREIGN KEY ( `Service` ) REFERENCES `ServiceCustomerRel` (
227`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;");
228 $Manager->Execute("UPDATE `NetworkSubnet` SET `Service` = (SELECT `Id` FROM `ServiceCustomerRel` WHERE `ServiceCustomerRel`.`Customer` = `NetworkSubnet`.`Member` LIMIT 1)");
229}
230
231function UpdateTo515($Manager)
232{
233 $Manager->Execute("ALTER TABLE `PermissionUserAssignment` CHANGE `User` `User` INT( 11 ) NULL");
234}
235
236function UpdateTo517($Manager)
237{
238 $Manager->Execute("ALTER TABLE `Log` ADD `IPAddress` VARCHAR( 16 ) NOT NULL");
239}
240
241function UpdateTo526($Manager)
242{
243 $Manager->Execute("ALTER TABLE `Hyperlink` CHANGE `Name` `Title` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_czech_ci NOT NULL");
244 $Manager->Execute("ALTER TABLE `Hyperlink` ADD `Name` VARCHAR( 255 ) NOT NULL AFTER `Id`");
245 //$Manager->Execute("ALTER TABLE `Hyperlink` ADD UNIQUE ( `Name` )");
246 $Manager->Execute("ALTER TABLE `Hyperlink` ADD `Type` INT NOT NULL AFTER `Title` , ADD INDEX ( `Type` )");
247 $Manager->Execute("RENAME TABLE `Hyperlink` TO `Action` ;");
248 $Manager->Execute("RENAME TABLE `HyperlinkGroup` TO `ActionGroup` ;");
249 $Manager->Execute("CREATE TABLE IF NOT EXISTS `ActionType` (
250 `Id` int(11) NOT NULL AUTO_INCREMENT,
251 `Name` varchar(255) NOT NULL,
252 PRIMARY KEY (`Id`)
253 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;
254
255 INSERT INTO `ActionType` (`Id`, `Name`) VALUES
256 (1, 'Odkaz'),
257 (2, 'Obrázek');");
258 $Manager->Execute("UPDATE `Action` SET `Type` = 1;");
259 $Manager->Execute("ALTER TABLE `Action` ADD FOREIGN KEY ( `Type` ) REFERENCES `ActionType` (".
260 "`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;");
261 $Manager->Execute("UPDATE `Panel` SET `Module` = 'ActionGroup' WHERE `Module` = 'HyperlinkGroup'");
262 $Manager->Execute("CREATE TABLE IF NOT EXISTS `ActionIcon` (
263 `Id` int(11) NOT NULL AUTO_INCREMENT,
264 `Name` varchar(255) NOT NULL,
265 PRIMARY KEY (`Id`)
266) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;");
267 $Manager->Execute("INSERT INTO `ActionIcon` (SELECT NULL AS `Id`, `IconFile` AS `Name` FROM `Action` WHERE `IconFile` != '' GROUP BY `IconFile`)");
268 $Manager->Execute("ALTER TABLE `Action` CHANGE `IconFile` `IconFile` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL");
269 $Manager->Execute("UPDATE `Action` SET `IconFile` = (SELECT `Id` FROM `ActionIcon` WHERE `ActionIcon`.`Name` = `Action`.`IconFile`) ");
270 $Manager->Execute("ALTER TABLE `Action` CHANGE `IconFile` `Icon` INT NULL ");
271 $Manager->Execute("UPDATE `Action` SET `Icon` = NULL WHERE `Icon` = 0");
272 $Manager->Execute("ALTER TABLE `Action` ADD INDEX ( `Icon` ) ");
273 $Manager->Execute("ALTER TABLE `Action` ADD FOREIGN KEY ( `Icon` ) REFERENCES `ActionIcon` (`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;");
274 $Manager->Execute("INSERT INTO `ISMenuItem` (`Id` ,`Name` ,`Parent` ,`Table` ,`IconName`) ".
275 "VALUES (NULL , 'Akce', '23', 'Action', '');");
276}
277
278function UpdateTo527($Manager)
279{
280 $Manager->Execute("RENAME TABLE `ISMenuItem` TO `MenuItem` ;");
281 $Manager->Execute("CREATE TABLE IF NOT EXISTS `Menu` (
282 `Id` int(11) NOT NULL AUTO_INCREMENT,
283 `Name` varchar(255) NOT NULL,
284 PRIMARY KEY (`Id`)
285) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;");
286 $Manager->Execute("INSERT INTO `Menu` (`Id` ,`Name`)VALUES (NULL , 'IS');");
287 $Manager->Execute("ALTER TABLE `MenuItem` ADD `Menu` INT NOT NULL , ADD INDEX ( `Menu` )");
288 $Manager->Execute("UPDATE `MenuItem` SET `Menu` = 1");
289 $Manager->Execute("ALTER TABLE `MenuItem` ADD FOREIGN KEY ( `Menu` ) REFERENCES `Menu` (".
290 "`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;");
291 $Manager->Execute("ALTER TABLE `Action` CHANGE `Group` `Group` INT( 11 ) NULL ");
292 $Manager->Execute("INSERT INTO `Action` (SELECT NULL AS `Id`, '' AS `Name`, `Name` AS `Title`, 1 AS `Type`, CONCAT('/is/?t=', `Table`, '&a=list') AS `URL`, NULL AS `Group`, NULL AS `Icon`, NULL AS `PermisionModule`, NULL AS `PermissionOperation`, 1 AS `Enable` FROM `MenuItem` WHERE `Parent` IS NOT NULL)");
293 $Manager->Execute("ALTER TABLE `MenuItem` DROP `IconName`");
294 $Manager->Execute("UPDATE `MenuItem` SET `Table` = (SELECT `Id` FROM `Action` WHERE `Action`.`URL` = CONCAT('/is/?t=', `MenuItem`.`Table`, '&a=list')) WHERE `MenuItem`.`Table` != ''");
295 $Manager->Execute("ALTER TABLE `MenuItem` CHANGE `Table` `Action` INT NULL");
296 $Manager->Execute("UPDATE `MenuItem` SET `Action` = NULL WHERE `Action` = 0");
297 $Manager->Execute("ALTER TABLE `MenuItem` ADD INDEX ( `Action` ) ");
298 $Manager->Execute("ALTER TABLE `MenuItem` ADD FOREIGN KEY ( `Action` ) REFERENCES `Action` (`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;");
299 $Manager->Execute("INSERT INTO `Action` (`Id` ,`Name` ,`Title` ,`Type` ,`URL` ,`Group` ,`Icon` ,`PermissionModule` ,`PermissionOperation` ,`Enable`)".
300 "VALUES (NULL , '', 'Nabídky', '1', '/is/?t=Menu&a=list', NULL , NULL , '', '', '1');");
301 $ActionId = $Manager->Database->insert_id;
302 $Manager->Execute("INSERT INTO `MenuItem` (`Id` ,`Name` ,`Parent` ,`Action` ,`Menu`) ".
303 "VALUES (NULL , 'Nabídky', '23', '".$ActionId."', '1');");
304}
305
306function UpdateTo535($Manager)
307{
308 // Set all string collation to utf8 general
309 $DbResult = $Manager->Execute("SHOW TABLES");
310 while($DbRow = $DbResult->fetch_row())
311 {
312 $Manager->Execute("ALTER TABLE `".$DbRow[0]."` CONVERT TO CHARACTER SET utf8");
313 }
314}
315
316function UpdateTo549($Manager)
317{
318 $Manager->Execute("ALTER TABLE `FinanceOperation` ADD `Generate` INT NOT NULL DEFAULT '0',
319ADD INDEX ( `Generate` ) ;");
320 $Manager->Execute("ALTER TABLE `FinanceInvoice` ADD `Generate` INT NOT NULL DEFAULT '0',
321ADD INDEX ( `Generate` ) ;");
322}
323
324function UpdateTo550($Manager)
325{
326 $Manager->Execute('ALTER TABLE `FinanceBankAccount` ADD `LastImportId` VARCHAR( 255 ) NOT NULL ;');
327 $Manager->Execute('ALTER TABLE `FinanceBankAccount` ADD `LastImportDate` DATE NULL ;');
328 $Manager->Execute('ALTER TABLE `FinanceBankImport` ADD `BankCode` VARCHAR( 255 ) NOT NULL AFTER `AccountNumber` ;');
329}
330
331function UpdateTo551($Manager)
332{
333 $Manager->Execute('ALTER TABLE `FinanceOperation` ADD `DocumentLine` INT NULL AFTER `Value` ,
334ADD INDEX ( `DocumentLine` ) ;');
335 $Manager->Execute('ALTER TABLE `FinanceOperation` ADD FOREIGN KEY ( `DocumentLine` ) REFERENCES `DocumentLine` (
336`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;');
337 $Manager->Execute('ALTER TABLE `FinanceInvoice` ADD `DocumentLine` INT NULL AFTER `Id` ,
338ADD INDEX ( `DocumentLine` ) ;');
339 $Manager->Execute('ALTER TABLE `FinanceInvoice` ADD FOREIGN KEY ( `DocumentLine` ) REFERENCES `DocumentLine` (
340`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;');
341 $Manager->Execute('DROP TABLE `FinanceBillsItemsOld`');
342 $Manager->Execute('DROP TABLE `FinanceBillsOld`');
343}
344
345function UpdateTo565($Manager)
346{
347 $Manager->Execute('CREATE TABLE IF NOT EXISTS `WikiPage` (
348 `Id` int(11) NOT NULL AUTO_INCREMENT,
349 `Name` varchar(255) NOT NULL,
350 `NormalizedName` varchar(255) NOT NULL,
351 `VisibleInMenu` int(11) NOT NULL,
352 PRIMARY KEY (`Id`),
353 UNIQUE KEY `Name` (`Name`),
354 KEY `VisibleInMenu` (`VisibleInMenu`)
355 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;');
356 $Manager->Execute('CREATE TABLE IF NOT EXISTS `WikiPageContent` (
357 `Id` int(11) NOT NULL AUTO_INCREMENT,
358 `Page` int(11) NOT NULL,
359 `Time` datetime NOT NULL,
360 `Content` text NOT NULL,
361 `User` int(11) NOT NULL,
362 PRIMARY KEY (`Id`),
363 KEY `User` (`User`),
364 KEY `Page` (`Page`)
365 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;');
366 $Manager->Execute('ALTER TABLE `WikiPageContent`
367 ADD CONSTRAINT `WikiPageContent_ibfk_2` FOREIGN KEY (`Page`) REFERENCES `WikiPage` (`Id`),
368ADD CONSTRAINT `WikiPageContent_ibfk_1` FOREIGN KEY (`User`) REFERENCES `User` (`ID`);');
369}
370
371function UpdateTo571($Manager)
372{
373 $Manager->Execute('ALTER TABLE `NetworkDevice` ADD `LoginName` VARCHAR( 255 ) NOT NULL ,
374ADD `LoginPassword` VARCHAR( 255 ) NOT NULL ;');
375}
376
377function UpdateTo574($Manager)
378{
379 $Manager->Execute('ALTER TABLE `MapPosition` ADD `Pos` VARCHAR( 255 ) NOT NULL ;');
380 $Manager->Execute('UPDATE `MapPosition` SET `Pos`=CONCAT(`Latitude`, ";", `Longitude`)');
381 $Manager->Execute('ALTER TABLE `MapPosition` DROP `Latitude`');
382 $Manager->Execute('ALTER TABLE `MapPosition` DROP `Longitude`');
383}
384
385function UpdateTo584($Manager)
386{
387 $Manager->Execute("CREATE TABLE IF NOT EXISTS `Module` (
388 `Id` int(11) NOT NULL AUTO_INCREMENT,
389 `Name` varchar(255) NOT NULL,
390 `Title` varchar(255) NOT NULL,
391 PRIMARY KEY (`Id`)
392 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=33 ;");
393
394 $Manager->Execute("INSERT INTO `Module` (`Id`, `Name`, `Title`) VALUES
395 (1, 'Customer', 'Zákazník'),
396 (2, 'EmailQueue', 'Fronta emailů'),
397 (3, 'Error', 'Obsluha chyb'),
398 (4, 'File', 'Správa souborů'),
399 (5, 'Finance', 'Finance'),
400 (6, 'FinanceBankAPI', 'Rozhraní pro bankovní účty'),
401 (7, 'Chat', 'Pokec'),
402 (8, 'IS', 'Informační systém'),
403 (9, 'Log', 'Záznam událostí'),
404 (10, 'Map', 'Mapa'),
405 (11, 'Meals', 'Jídelníček'),
406 (12, 'Meteostation', 'Meteostanice'),
407 (13, 'Network', 'Síť'),
408 (14, 'NetworkConfig', 'Nastavení sítě'),
409 (15, 'NetworkConfigLinux', 'Nastavení linuxových zařízení'),
410 (16, 'NetworkConfigRouterOS', 'Nastavení RouterOS zařízení'),
411 (17, 'NetworkShare', 'Síťové sdílení'),
412 (18, 'NetworkTopology', 'Síťová topologie'),
413 (19, 'News', 'Aktuality'),
414 (20, 'OpeningHours', 'Otvírací doby'),
415 (21, 'Portal', 'Portál'),
416 (22, 'Search', 'Vyhledávání'),
417 (23, 'Setup', 'Instalace systému'),
418 (24, 'SpeedTest', 'Měření rychlosti'),
419 (25, 'Stock', 'Sklad'),
420 (26, 'System', 'Systém'),
421 (27, 'Task', 'Úlohy'),
422 (28, 'TimeMeasure', 'Časové průběhy'),
423 (29, 'TV', 'Televize'),
424 (30, 'User', 'Uživatelé'),
425 (31, 'WebCam', 'Web kamery'),
426 (32, 'Wiki', 'Wiki');");
427 $Manager->Execute("UPDATE `PermissionOperation` SET `Module` = 'Meals' WHERE `PermissionOperation`.`Module` ='EatingPlace';");
428 $Manager->Execute("UPDATE `PermissionOperation` SET `Module` = 'NetworkShare' WHERE `PermissionOperation`.`Module` ='Share';");
429 $Manager->Execute("UPDATE `PermissionOperation` SET `Module` = 'OpeningHours' WHERE `PermissionOperation`.`Module` ='SubjectOpenTime';");
430 $Manager->Execute("UPDATE `PermissionOperation` SET `Module`=(SELECT `Id` FROM `Module` WHERE `Module`.`Name` = `PermissionOperation`.`Module`)");
431 $Manager->Execute("ALTER TABLE `PermissionOperation` CHANGE `Module` `Module` INT( 11 ) NOT NULL ;");
432 $Manager->Execute("ALTER TABLE `PermissionOperation` ADD FOREIGN KEY ( `Module` ) REFERENCES `Module` (
433`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;");
434 $Manager->Execute("UPDATE `Action` SET `Action`.`PermissionOperation` =(SELECT Id FROM `PermissionOperation` WHERE `PermissionOperation`.`Operation`=`Action`.`PermissionOperation` AND `PermissionOperation`.`Module` = (SELECT Id FROM `Module` WHERE `Module`.`Name`=`Action`.`PermissionModule`))");
435 $Manager->Execute("ALTER TABLE `Action` CHANGE `PermissionOperation` `PermissionOperation` INT( 11 ) NULL ;");
436 $Manager->Execute("ALTER TABLE `Action` DROP `PermissionModule` ;");
437 $Manager->Execute("UPDATE `Action` SET `PermissionOperation`=NULL WHERE `PermissionOperation`=0");
438 $Manager->Execute("ALTER TABLE `Action` ADD INDEX (`PermissionOperation`);");
439 $Manager->Execute("ALTER TABLE `Action` ADD FOREIGN KEY ( `PermissionOperation` ) REFERENCES `PermissionOperation` (
440`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;");
441}
442
443function UpdateTo591($Manager)
444{
445 $Manager->Execute('ALTER TABLE `StockItem` ADD `Esemble` INT NULL ,
446ADD INDEX ( `Esemble` ) ;');
447 $Manager->Execute('ALTER TABLE `StockItem` ADD FOREIGN KEY ( `Esemble` ) REFERENCES `StockItem` (
448`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;');
449}
450
451function UpdateTo597($Manager)
452{
453 $Manager->Execute('CREATE TABLE IF NOT EXISTS `Model` (
454 `Id` int(11) NOT NULL AUTO_INCREMENT,
455 `Name` varchar(255) NOT NULL,
456 `Module` int(11) NOT NULL,
457 PRIMARY KEY (`Id`),
458 KEY `Module` (`Module`)
459) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;');
460
461 $Manager->Execute('ALTER TABLE `Model`
462 ADD CONSTRAINT `Model_ibfk_1` FOREIGN KEY (`Module`) REFERENCES `Module` (`Id`);');
463}
464
465function UpdateTo601($Manager)
466{
467 $Manager->Execute('CREATE TABLE IF NOT EXISTS `NetworkInterfaceWireless` (
468 `Id` int(11) NOT NULL AUTO_INCREMENT,
469 `NetworkInterface` int(11) NOT NULL,
470 `TxPower` int(11) NOT NULL,
471 `CableAttenuation` int(11) NOT NULL,
472 `AntenaGain` int(11) NOT NULL,
473 `Frequency` float NOT NULL,
474 `ChannelWidth` int(11) NOT NULL,
475 `SSID` varchar(255) NOT NULL,
476 PRIMARY KEY (`Id`),
477 KEY `NetworkInterface` (`NetworkInterface`)
478) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;');
479
480 $Manager->Execute('ALTER TABLE `NetworkInterfaceWireless`
481 ADD CONSTRAINT `NetworkInterfaceWireless_ibfk_1` FOREIGN KEY (`NetworkInterface`) REFERENCES `NetworkInterface` (`Id`);');
482 $Manager->Execute("INSERT INTO `Action` (
483`Id` ,`Name` ,`Title` ,`Type` ,`URL` ,`Group` ,`Icon` ,`PermissionOperation` ,
484`Enable`) VALUES (NULL , '', 'Wifi rozhraní', '1', '/is/?t=NetworkInterfaceWireless&a=list', NULL , NULL , NULL , '1'
485);");
486 $ActionId = $Manager->Database->insert_id;
487 $Manager->Execute("INSERT INTO `MenuItem` (`Id` ,`Name` ,`Parent` ,`Action` ,`Menu`) ".
488 "VALUES (NULL , 'Bezdrátové rozhraní', '1', '".$ActionId."', '1');");
489}
490
491function UpdateTo615($Manager)
492{
493 $Manager->Execute('ALTER TABLE `NetworkInterfaceWireless` ADD `AntennaPolarity` INT NOT NULL ,
494ADD `Description` VARCHAR( 255 ) NOT NULL ;');
495 $Manager->Execute('CREATE TABLE IF NOT EXISTS `NewsImport` (
496 `Id` int(11) NOT NULL,
497 `Name` varchar(255) NOT NULL,
498 `Enabled` int(11) NOT NULL,
499 `Source` varchar(255) NOT NULL,
500 `Category` int(11) NOT NULL,
501 `BlockStart` varchar(255) NOT NULL,
502 `BlockEnd` varchar(255) NOT NULL,
503 `ItemStart` varchar(255) NOT NULL,
504 `ItemEnd` varchar(255) NOT NULL,
505 `TitleStart` varchar(255) NOT NULL,
506 `TitleEnd` varchar(255) NOT NULL,
507 `ContentStart` varchar(255) NOT NULL,
508 `ContentEnd` varchar(255) NOT NULL,
509 `LinkStart` varchar(255) NOT NULL,
510 `LinkEnd` varchar(255) NOT NULL,
511 `DateStart` varchar(255) NOT NULL,
512 `DateEnd` varchar(255) NOT NULL,
513 KEY `Category` (`Category`)
514) ENGINE=InnoDB DEFAULT CHARSET=utf8;');
515 $Manager->Execute('ALTER TABLE `NewsImport` '.
516 'ADD CONSTRAINT `NewsImport_ibfk_1` FOREIGN KEY (`Category`) '.
517 ' REFERENCES `NewsCategory` (`Id`);');
518 $Manager->Execute('ALTER TABLE `NetworkInterfaceWireless` ADD `Antenna` INT NULL AFTER `AntennaPolarity` ,
519ADD INDEX ( `Product` ) ;');
520 $Manager->Execute('ALTER TABLE `NetworkInterfaceWireless` ADD FOREIGN KEY ( `Antenna` ) REFERENCES `Product` (
521`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;');
522 $Manager->Execute('ALTER TABLE `NetworkInterfaceWireless` ADD `MAC` VARCHAR( 17 ) NOT NULL ;');
523}
524
525function UpdateTo619($Manager)
526{
527 $Manager->Execute('ALTER TABLE `UserOnline` ADD `StayLogged` INT NOT NULL ;');
528}
529
530function UpdateTo620($Manager)
531{
532 $Manager->Execute('ALTER TABLE `NetworkInterfaceWireless` ADD `ChannelWidthLower` INT NOT NULL ,
533ADD `ChannelWidthUpper` INT NOT NULL ;');
534 $Manager->Execute('ALTER TABLE `NetworkInterfaceWireless` ADD `Mode` INT NOT NULL ;');
535 $Manager->Execute('DROP TABLE `NetworkAP`');
536}
537
538function UpdateTo627($Manager)
539{
540 $Manager->Execute('ALTER TABLE `FinanceInvoice` CHANGE `TimeCreation` `Time` DATETIME NOT NULL DEFAULT "0000-00-00 00:00:00";');
541 $Manager->Execute('ALTER TABLE `FinanceYear` ADD `Closed` INT NOT NULL ;');
542}
543
544function UpdateTo632($Manager)
545{
546 $Manager->Execute('CREATE TABLE IF NOT EXISTS `FinanceInvoiceOperationRel` (
547 `Id` int(11) NOT NULL AUTO_INCREMENT,
548 `Invoice` int(11) NOT NULL,
549 `Operation` int(11) NOT NULL,
550 PRIMARY KEY (`Id`),
551 KEY `Invoice` (`Invoice`),
552 KEY `Operation` (`Operation`)
553) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;');
554 $Manager->Execute('ALTER TABLE `FinanceInvoiceOperationRel`
555 ADD CONSTRAINT `FinanceInvoiceOperationRel_ibfk_2` FOREIGN KEY (`Operation`) REFERENCES `FinanceOperation` (`Id`),
556 ADD CONSTRAINT `FinanceInvoiceOperationRel_ibfk_1` FOREIGN KEY (`Invoice`) REFERENCES `FinanceInvoice` (`Id`);');
557}
558
559function UpdateTo633($Manager)
560{
561 $Manager->Execute('ALTER TABLE `UserOnline` ADD `StayLoggedHash` VARCHAR( 40 ) NOT NULL ;');
562}
563
564function UpdateTo645($Manager)
565{
566 $Manager->Execute('CREATE TABLE IF NOT EXISTS `FinanceVATType` (
567 `Id` int(11) NOT NULL,
568 `Name` varchar(255) NOT NULL,
569 PRIMARY KEY (`Id`)
570) ENGINE=InnoDB DEFAULT CHARSET=utf8;');
571 $Manager->Execute('INSERT INTO `FinanceVATType` (SELECT Id, Name FROM `FinanceVAT`)');
572 $Manager->Execute('ALTER TABLE `FinanceVAT` ADD `ValidTo` DATE NULL ,
573ADD `Type` INT NOT NULL ;');
574 $Manager->Execute('UPDATE `FinanceVAT` SET `Type`=(SELECT `Id` FROM `FinanceVATType` WHERE `FinanceVATType`.`Name`=`FinanceVAT`.`Name`)');
575 $Manager->Execute('ALTER TABLE `FinanceVAT` DROP `Name`');
576}
577
578function UpdateTo646($Manager)
579{
580 $Manager->Execute('CREATE TABLE IF NOT EXISTS `Contract` (
581 `Id` int(11) NOT NULL AUTO_INCREMENT,
582 `BillCode` varchar(255) NOT NULL,
583 `Subject` int(11) NOT NULL,
584 `DocumentLine` int(11) NOT NULL,
585 `ValidFrom` date NOT NULL,
586 `ValidTo` date DEFAULT NULL,
587 `File` int(11) DEFAULT NULL,
588 PRIMARY KEY (`Id`),
589 KEY `Subject` (`Subject`),
590 KEY `DocumentLine` (`DocumentLine`),
591 KEY `File` (`File`)
592) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;');
593 $Manager->Execute('ALTER TABLE `Contract`
594 ADD CONSTRAINT `Contract_ibfk_3` FOREIGN KEY (`File`) REFERENCES `File` (`Id`),
595 ADD CONSTRAINT `Contract_ibfk_1` FOREIGN KEY (`Subject`) REFERENCES `Subject` (`Id`),
596 ADD CONSTRAINT `Contract_ibfk_2` FOREIGN KEY (`DocumentLine`) REFERENCES `DocumentLine` (`Id`);
597');
598 $Manager->Execute("INSERT INTO `Action` (
599`Id` ,`Name` ,`Title` ,`Type` ,`URL` ,`Group` ,`Icon` ,`PermissionOperation` ,
600`Enable`) VALUES (NULL , '', 'Smlouvy', '1', '/is/?t=Contract&a=list', NULL , NULL , NULL , '1'
601);");
602 $ActionId = $Manager->Database->insert_id;
603 $Manager->Execute("INSERT INTO `MenuItem` (`Id` ,`Name` ,`Parent` ,`Action` ,`Menu`) ".
604 "VALUES (NULL , 'Smlouvy', '2', '".$ActionId."', '1');");
605 $Manager->Execute("INSERT INTO `Action` (
606`Id` ,`Name` ,`Title` ,`Type` ,`URL` ,`Group` ,`Icon` ,`PermissionOperation` ,
607`Enable`) VALUES (NULL , '', 'Sazby DPH', '1', '/is/?t=FinanceVAT&a=list', NULL , NULL , NULL , '1'
608);");
609 $ActionId = $Manager->Database->insert_id;
610 $Manager->Execute("INSERT INTO `MenuItem` (`Id` ,`Name` ,`Parent` ,`Action` ,`Menu`) ".
611 "VALUES (NULL , 'Sazby DPH', '2', '".$ActionId."', '1');");
612}
613
614function UpdateTo647($Manager)
615{
616 $Manager->Execute('ALTER TABLE `EmployeeSalary` ADD FOREIGN KEY ( `Employee` ) REFERENCES `Employee` (
617`Id`
618) ON DELETE RESTRICT ON UPDATE RESTRICT ;');
619 $Manager->Execute('ALTER TABLE `EmployeeSalary` ADD `Contract` INT NULL ,
620ADD INDEX ( `Contract` ) ;');
621 $Manager->Execute('ALTER TABLE `EmployeeSalary` ADD FOREIGN KEY ( `Contract` ) REFERENCES `Contract` (
622`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;');
623 $Manager->Execute("INSERT INTO `Action` (
624`Id` ,`Name` ,`Title` ,`Type` ,`URL` ,`Group` ,`Icon` ,`PermissionOperation` ,
625`Enable`) VALUES (NULL , '', 'Zaměstnanci', '1', '/is/?t=Employee&a=list', NULL , NULL , NULL , '1'
626);");
627 $ActionId = $Manager->Database->insert_id;
628 $Manager->Execute("INSERT INTO `MenuItem` (`Id` ,`Name` ,`Parent` ,`Action` ,`Menu`) ".
629 "VALUES (NULL , 'Zaměstnanci', '2', '".$ActionId."', '1');");
630 $Manager->Execute("INSERT INTO `MenuItem` (`Id` ,`Name` ,`Parent` ,`Action` ,`Menu`) ".
631 "VALUES (NULL , 'Roční výkazy', '2', NULL, '1');");
632 $MenuId = $Manager->Database->insert_id;
633 $Manager->Execute("INSERT INTO `Action` (
634`Id` ,`Name` ,`Title` ,`Type` ,`URL` ,`Group` ,`Icon` ,`PermissionOperation` ,
635`Enable`) VALUES (NULL , '', 'Roční přehled', '1', '/is/?t=FinanceYearReport&a=list', NULL , NULL , NULL , '1'
636);");
637 $ActionId = $Manager->Database->insert_id;
638 $Manager->Execute("INSERT INTO `MenuItem` (`Id` ,`Name` ,`Parent` ,`Action` ,`Menu`) ".
639 "VALUES (NULL , 'Roční přehled', '".$MenuId."', '".$ActionId."', '1');");
640 $Manager->Execute("INSERT INTO `Action` (
641`Id` ,`Name` ,`Title` ,`Type` ,`URL` ,`Group` ,`Icon` ,`PermissionOperation` ,
642`Enable`) VALUES (NULL , '', 'Výkaz subjektů', '1', '/is/?t=SubjectReport&a=list', NULL , NULL , NULL , '1'
643);");
644 $ActionId = $Manager->Database->insert_id;
645 $Manager->Execute("INSERT INTO `MenuItem` (`Id` ,`Name` ,`Parent` ,`Action` ,`Menu`) ".
646 "VALUES (NULL , 'Výkaz subjektů', '".$MenuId."', '".$ActionId."', '1');");
647}
648
649function UpdateTo656($Manager)
650{
651 $Manager->Execute('CREATE TABLE IF NOT EXISTS `Measure` (
652 `Id` int(11) NOT NULL AUTO_INCREMENT,
653 `Name` varchar(255) NOT NULL,
654 `Method` int(11) NOT NULL,
655 `Continuity` int(11) NOT NULL,
656 `Period` int(11) NOT NULL,
657 `Enabled` int(11) NOT NULL,
658 `Description` text NOT NULL,
659 `DataType` varchar(255) NOT NULL,
660 `DataTable` varchar(255) NOT NULL,
661 `Group` int(11) DEFAULT NULL,
662 `Cumulative` int(11) NOT NULL DEFAULT "0",
663 PRIMARY KEY (`Id`),
664 KEY `Group` (`Group`),
665 KEY `Method` (`Method`)
666) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;');
667
668 $Manager->Execute('CREATE TABLE IF NOT EXISTS `MeasureData` (
669 `Id` int(11) NOT NULL AUTO_INCREMENT,
670 `Time` datetime NOT NULL,
671 `Level` int(11) NOT NULL,
672 `Measure` int(11) NOT NULL,
673 `Continuity` int(11) NOT NULL,
674 `Min` int(11) NOT NULL,
675 `Avg` int(11) NOT NULL,
676 `Max` int(11) NOT NULL,
677 PRIMARY KEY (`Id`),
678 KEY `Time` (`Time`),
679 KEY `Measure` (`Measure`)
680) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;');
681
682 $Manager->Execute('CREATE TABLE IF NOT EXISTS `MeasureGroup` (
683 `Id` int(11) NOT NULL AUTO_INCREMENT,
684 `Name` varchar(255) NOT NULL,
685 `Parent` int(11) DEFAULT NULL,
686 PRIMARY KEY (`Id`),
687 KEY `Parent` (`Parent`)
688) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;');
689
690 $Manager->Execute('CREATE TABLE IF NOT EXISTS `MeasureMethod` (
691 `Id` int(11) NOT NULL AUTO_INCREMENT,
692 `Name` varchar(255) NOT NULL,
693 `Unit` varchar(255) NOT NULL,
694 PRIMARY KEY (`Id`)
695) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;');
696
697 $Manager->Execute('ALTER TABLE `Measure`
698 ADD CONSTRAINT `Measure_ibfk_1` FOREIGN KEY (`Group`) REFERENCES `MeasureGroup` (`Id`),
699 ADD CONSTRAINT `Measure_ibfk_2` FOREIGN KEY (`Method`) REFERENCES `MeasureMethod` (`Id`);');
700
701 $Manager->Execute('ALTER TABLE `MeasureData`
702 ADD CONSTRAINT `MeasureData_ibfk_1` FOREIGN KEY (`Measure`) REFERENCES `Measure` (`Id`);');
703
704 $Manager->Execute('ALTER TABLE `MeasureGroup`
705 ADD CONSTRAINT `MeasureGroup_ibfk_1` FOREIGN KEY (`Parent`) REFERENCES `MeasureGroup` (`Id`);');
706}
707
708function UpdateTo657($Manager)
709{
710 $Manager->Execute('CREATE TABLE IF NOT EXISTS `NetworkInterfaceUpDown` (
711 `Id` int(11) NOT NULL AUTO_INCREMENT,
712 `Time` datetime NOT NULL,
713 `Interface` int(11) NOT NULL,
714 `State` int(11) NOT NULL,
715 PRIMARY KEY (`Id`),
716 KEY `Interface` (`Interface`)
717) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci AUTO_INCREMENT=1 ;');
718 $Manager->Execute('ALTER TABLE `NetworkInterfaceUpDown`
719 ADD CONSTRAINT `NetworkInterfaceUpDown_ibfk_1` FOREIGN KEY (`Interface`) REFERENCES `NetworkInterface` (`Id`);');
720 $Manager->Execute("INSERT INTO `Action` (
721`Id` ,`Name` ,`Title` ,`Type` ,`URL` ,`Group` ,`Icon` ,`PermissionOperation` ,
722`Enable`) VALUES (NULL , '', 'Změny stavu rozhraní', '1', '/is/?t=NetworkInterfaceUpDown&a=list', NULL , NULL , NULL , '1'
723);");
724 $ActionId = $Manager->Database->insert_id;
725 $Manager->Execute("INSERT INTO `MenuItem` (`Id` ,`Name` ,`Parent` ,`Action` ,`Menu`) ".
726 "VALUES (NULL , 'Změny stavu rozhraní', 4, '".$ActionId."', '1');");
727}
728
729function UpdateTo661($Manager)
730{
731 $Manager->Execute('CREATE TABLE IF NOT EXISTS `Contact` (
732 `Id` int(11) NOT NULL AUTO_INCREMENT,
733 `Category` int(11) NOT NULL,
734 `Value` varchar(255) NOT NULL,
735 `Subject` int(11) DEFAULT NULL,
736 `User` int(11) DEFAULT NULL,
737 PRIMARY KEY (`Id`),
738 KEY `Category` (`Category`),
739 KEY `User` (`User`),
740 KEY `Subject` (`Subject`)
741 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;');
742
743 $Manager->Execute('CREATE TABLE IF NOT EXISTS `ContactCategory` (
744 `Id` int(11) NOT NULL AUTO_INCREMENT,
745 `Name` varchar(255) NOT NULL,
746 PRIMARY KEY (`Id`)
747 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;');
748
749 $Manager->Execute('ALTER TABLE `Contact`
750 ADD CONSTRAINT `Contact_ibfk_3` FOREIGN KEY (`User`) REFERENCES `User` (`Id`),
751 ADD CONSTRAINT `Contact_ibfk_1` FOREIGN KEY (`Category`) REFERENCES `ContactCategory` (`Id`),
752 ADD CONSTRAINT `Contact_ibfk_2` FOREIGN KEY (`Subject`) REFERENCES `Subject` (`Id`);');
753
754 $Manager->Execute("INSERT INTO `Action` (
755`Id` ,`Name` ,`Title` ,`Type` ,`URL` ,`Group` ,`Icon` ,`PermissionOperation` ,
756`Enable`) VALUES (NULL , '', 'Kontakty', '1', '/is/?t=Contact&a=list', NULL , NULL , NULL , '1'
757);");
758 $ActionId = $Manager->Database->insert_id;
759 $Manager->Execute("INSERT INTO `MenuItem` (`Id` ,`Name` ,`Parent` ,`Action` ,`Menu`) ".
760 "VALUES (NULL , 'Kontakty', '12', '".$ActionId."', '1');");
761 $ContactMenuId = $Manager->Database->insert_id;
762
763 $Manager->Execute("INSERT INTO `Action` (
764`Id` ,`Name` ,`Title` ,`Type` ,`URL` ,`Group` ,`Icon` ,`PermissionOperation` ,
765`Enable`) VALUES (NULL , '', 'Druhy kontakty', '1', '/is/?t=ContactCategory&a=list', NULL , NULL , NULL , '1'
766);");
767 $ActionId = $Manager->Database->insert_id;
768 $Manager->Execute("INSERT INTO `MenuItem` (`Id` ,`Name` ,`Parent` ,`Action` ,`Menu`) ".
769 "VALUES (NULL , 'Druhy kontaktů', ".$ContactMenuId.", '".$ActionId."', '1');");
770
771 $Manager->Execute("INSERT INTO `ContactCategory` (`Id` ,`Name`)
772VALUES (NULL , 'Telefón'), (NULL , 'ICQ'), (NULL , 'Jabber'), (NULL , 'Email'), (NULL , 'Skype');");
773}
774
775function UpdateTo662($Manager)
776{
777 $Manager->Execute('INSERT INTO `Contact` (SELECT NULL AS `Id`, 2 AS `Category`, `ICQ` AS `Value`, NULL AS `Subject`, `Id` AS `User` FROM `User`
778WHERE (`ICQ` != "") AND (`ICQ` != 0))');
779 $Manager->Execute('ALTER TABLE `User` DROP `ICQ`;');
780 $Manager->Execute('INSERT INTO `ActionIcon` (`Id`, `Name`) VALUES (NULL, "Contact.png");');
781 $IconId = $Manager->Database->insert_id;
782 $Manager->Execute('UPDATE `Action` SET `Icon` = '.$IconId.' WHERE `Title`="Kontakty"');
783}
784
785function UpdateTo668($Manager)
786{
787 $Manager->Execute('CREATE TABLE IF NOT EXISTS `APIToken` (
788 `Id` int(11) NOT NULL AUTO_INCREMENT,
789 `User` int(11) NOT NULL,
790 `Token` varchar(255) NOT NULL,
791 PRIMARY KEY (`Id`),
792 KEY `User` (`User`)
793) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;');
794
795 $Manager->Execute('ALTER TABLE `APIToken`
796 ADD CONSTRAINT `APIToken_ibfk_1` FOREIGN KEY (`User`) REFERENCES `User` (`Id`);');
797 $Manager->Execute('INSERT INTO `Module` (`Id` ,`Name` ,`Title`)
798VALUES (NULL , "RSS", "RSS kanály");');
799}
800
801function UpdateTo671($Manager)
802{
803 $Manager->Execute('CREATE TABLE IF NOT EXISTS `NetworkSignal` (
804 `Id` int(11) NOT NULL AUTO_INCREMENT,
805 `Time` datetime NOT NULL,
806 `MAC` varchar(17) NOT NULL,
807 `Interface` int(11) DEFAULT NULL,
808 `Value` int(11) NOT NULL,
809 PRIMARY KEY (`Id`),
810 KEY `Interface` (`Interface`)
811) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;');
812
813 $Manager->Execute('ALTER TABLE `NetworkSignal`
814 ADD CONSTRAINT `NetworkSignal_ibfk_1` FOREIGN KEY (`Interface`) REFERENCES `NetworkInterface` (`Id`);');
815 $Manager->Execute('INSERT INTO `Action` (`Id` ,`Name` ,`Title` ,`Type` ,`URL` ,
816`Group` ,`Icon` ,`PermissionOperation` ,`Enable`) VALUES (
817NULL , "", "Signál rozhraní", "1", "/is/?t=NetworkSignal&a=list", NULL , NULL , NULL , "1");');
818 $ActionId = $Manager->Database->insert_id;
819 $Manager->Execute("INSERT INTO `MenuItem` (`Id` ,`Name` ,`Parent` ,`Action` ,`Menu`) ".
820 "VALUES (NULL , 'Signál rozhraní', 4, '".$ActionId."', '1');");
821
822 $Manager->Execute('ALTER TABLE `NetworkDevice` ADD `API` INT NULL ,ADD INDEX ( `API` ) ;');
823 $Manager->Execute('CREATE TABLE IF NOT EXISTS `DeviceAPIType` (
824 `Id` int(11) NOT NULL AUTO_INCREMENT,
825 `Name` varchar(255) NOT NULL,
826 PRIMARY KEY (`Id`)
827) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;');
828
829 $Manager->Execute('INSERT INTO `DeviceAPIType` (`Id`, `Name`) VALUES
830(1, "RouterOS API"),
831(2, "AirOS");');
832 $Manager->Execute('ALTER TABLE `NetworkDevice` ADD FOREIGN KEY ( `API` ) REFERENCES `DeviceAPIType` (
833`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;');
834}
835
836function UpdateTo674($Manager)
837{
838 $Manager->Execute('ALTER TABLE `NetworkSignal` ADD `RateRx` INT NOT NULL ;');
839 $Manager->Execute('ALTER TABLE `NetworkSignal` ADD `RateTx` INT NOT NULL ;');
840}
841
842function UpdateTo676($Manager)
843{
844 $Manager->Execute('ALTER TABLE `NetworkSignal` ADD `Device` INT NULL ,
845ADD INDEX ( `Device` ) ;');
846 $Manager->Execute('ALTER TABLE `NetworkSignal` ADD FOREIGN KEY ( `Device` ) REFERENCES `NetworkDevice` (
847`Id`) ON DELETE RESTRICT ON UPDATE RESTRICT ;');
848}
849
850class Updates
851{
852 function Get()
853 {
854 return(array(
855 491 => array('Revision' => 493, 'Function' => 'UpdateTo493'),
856 493 => array('Revision' => 494, 'Function' => 'UpdateTo494'),
857 494 => array('Revision' => 495, 'Function' => 'UpdateTo495'),
858 495 => array('Revision' => 497, 'Function' => 'UpdateTo497'),
859 497 => array('Revision' => 498, 'Function' => 'UpdateTo498'),
860 498 => array('Revision' => 499, 'Function' => 'UpdateTo499'),
861 499 => array('Revision' => 500, 'Function' => 'UpdateTo500'),
862 500 => array('Revision' => 502, 'Function' => 'UpdateTo502'),
863 502 => array('Revision' => 505, 'Function' => 'UpdateTo505'),
864 505 => array('Revision' => 507, 'Function' => 'UpdateTo507'),
865 507 => array('Revision' => 515, 'Function' => 'UpdateTo515'),
866 515 => array('Revision' => 517, 'Function' => 'UpdateTo517'),
867 517 => array('Revision' => 526, 'Function' => 'UpdateTo526'),
868 526 => array('Revision' => 527, 'Function' => 'UpdateTo527'),
869 527 => array('Revision' => 535, 'Function' => 'UpdateTo535'),
870 535 => array('Revision' => 549, 'Function' => 'UpdateTo549'),
871 549 => array('Revision' => 550, 'Function' => 'UpdateTo550'),
872 550 => array('Revision' => 551, 'Function' => 'UpdateTo551'),
873 551 => array('Revision' => 565, 'Function' => 'UpdateTo565'),
874 565 => array('Revision' => 571, 'Function' => 'UpdateTo571'),
875 571 => array('Revision' => 574, 'Function' => 'UpdateTo574'),
876 574 => array('Revision' => 584, 'Function' => 'UpdateTo584'),
877 584 => array('Revision' => 591, 'Function' => 'UpdateTo591'),
878 591 => array('Revision' => 597, 'Function' => 'UpdateTo597'),
879 597 => array('Revision' => 601, 'Function' => 'UpdateTo601'),
880 601 => array('Revision' => 615, 'Function' => 'UpdateTo615'),
881 615 => array('Revision' => 619, 'Function' => 'UpdateTo619'),
882 619 => array('Revision' => 620, 'Function' => 'UpdateTo620'),
883 620 => array('Revision' => 627, 'Function' => 'UpdateTo627'),
884 627 => array('Revision' => 632, 'Function' => 'UpdateTo632'),
885 632 => array('Revision' => 633, 'Function' => 'UpdateTo633'),
886 633 => array('Revision' => 645, 'Function' => 'UpdateTo645'),
887 645 => array('Revision' => 646, 'Function' => 'UpdateTo646'),
888 646 => array('Revision' => 647, 'Function' => 'UpdateTo647'),
889 647 => array('Revision' => 657, 'Function' => 'UpdateTo657'),
890 657 => array('Revision' => 661, 'Function' => 'UpdateTo661'),
891 661 => array('Revision' => 662, 'Function' => 'UpdateTo662'),
892 662 => array('Revision' => 668, 'Function' => 'UpdateTo668'),
893 668 => array('Revision' => 671, 'Function' => 'UpdateTo671'),
894 671 => array('Revision' => 674, 'Function' => 'UpdateTo674'),
895 674 => array('Revision' => 676, 'Function' => 'UpdateTo676'),
896 ));
897 }
898}
Note: See TracBrowser for help on using the repository browser.