2 CREATE TABLE `Companies` (
3 `code` varchar(32) NOT NULL,
4 `name` varchar(128) default NULL,
6 `owner_id` int(11) NOT NULL,
8 `tel` varchar(32) default NULL,
9 `fax` varchar(32) default NULL,
10 `email` varchar(128) default NULL,
11 `id` int(11) NOT NULL auto_increment,
12 `isOwner` int(11) default NULL,
16 ALTER TABLE `Company_Name` ADD INDEX name_lookup (`name`);
19 alter table Companies change column isOwner isOwner int(11);
20 ALTER TABLE Companies ADD COLUMN logo_id INT(11) NOT NULL;
21 ALTER TABLE Companies ADD COLUMN background_color varchar(8) NOT NULL;
22 ALTER TABLE Companies ADD COLUMN comptype varchar(8) NOT NULL;
25 ALTER TABLE `Companies` ADD COLUMN `url` varchar(254) NOT NULL;
26 ALTER TABLE `Companies` ADD COLUMN `main_office_id` int(11) NOT NULL;
29 ALTER TABLE `Companies` ADD COLUMN `created_by` int(11) NOT NULL;
30 ALTER TABLE `Companies` ADD COLUMN `created_dt` datetime NOT NULL;
31 ALTER TABLE `Companies` ADD COLUMN `updated_by` int(11) NOT NULL;
32 ALTER TABLE `Companies` ADD COLUMN `updated_dt` datetime NOT NULL;
34 ALTER TABLE `Companies` ADD COLUMN `passwd` varchar(64) NOT NULL;
36 ALTER TABLE Companies ADD COLUMN dispatch_port varchar(255) NOT NULL DEFAULT '';
37 ALTER TABLE Companies ADD COLUMN province varchar(255) NOT NULL DEFAULT '';
38 ALTER TABLE Companies ADD COLUMN country varchar(4) NOT NULL DEFAULT '';
41 UPDATE Companies set comptype='OWNER' where isOwner=1;
43 #// core comapy types - use core enums (Company Type)
44 DROP TABLE core_company_type;
46 CREATE TABLE `Events` (
47 `id` int(11) NOT NULL auto_increment,
48 `person_name` varchar(128) default NULL,
49 `event_when` datetime default NULL,
50 `action` varchar(32) default NULL,
51 `ipaddr` varchar(16) default NULL,
52 `on_id` int(11) default NULL,
53 `on_table` varchar(64) default NULL,
54 `person_id` int(11) default NULL,
60 ALTER TABLE Events CHANGE COLUMN EventID id INT(11) AUTO_INCREMENT NOT NULL;
61 ALTER TABLE Events CHANGE COLUMN User person_name VARCHAR(128);
62 ALTER TABLE Events ADD COLUMN person_id INT(11);
63 ALTER TABLE Events CHANGE COLUMN Date event_when DATETIME;
64 ALTER TABLE Events CHANGE COLUMN Event action VARCHAR(32);
65 ALTER TABLE Events CHANGE COLUMN Host ipaddr VARCHAR(16);
66 ALTER TABLE Events CHANGE COLUMN ItemID on_id INT(11);
67 ALTER TABLE Events CHANGE COLUMN Container on_table VARCHAR(64);
68 ALTER TABLE Events ADD COLUMN remarks INT(11);
72 CREATE TABLE `Group_Members` (
73 `group_id` int(11) default NULL,
74 `id` int(11) NOT NULL auto_increment,
75 `user_id` int(11) NOT NULL default '0',
80 CREATE TABLE `Group_Rights` (
81 `rightname` varchar(64) NOT NULL,
82 `group_id` int(11) NOT NULL,
83 `AccessMask` varchar(10) NOT NULL,
84 `id` int(11) NOT NULL auto_increment,
91 CREATE TABLE `Groups` (
92 `id` int(11) NOT NULL auto_increment,
93 `name` varchar(64) NOT NULL,
94 `type` int(11) default NULL,
95 `leader` int(11) NOT NULL default '0',
101 alter table Groups add column type int(11) default 0;
102 ALTER TABLE `Groups` ADD COLUMN `leader` int(11) NOT NULL default 0;
103 ALTER TABLE Groups CHANGE COLUMN type type int(11) default 0;
108 CREATE TABLE `Office` (
109 `id` int(11) NOT NULL auto_increment,
110 `company_id` int(11) NOT NULL default '0',
111 `name` varchar(64) NOT NULL,
112 `address` text NOT NULL,
113 `phone` varchar(32) NOT NULL,
114 `fax` varchar(32) NOT NULL,
115 `email` varchar(128) NOT NULL,
116 `role` varchar(32) NOT NULL,
120 CREATE TABLE `Person` (
121 `id` int(11) NOT NULL auto_increment,
122 `office_id` int(11) default '0',
123 `name` varchar(128) NOT NULL,
124 `phone` varchar(32) NOT NULL,
125 `fax` varchar(32) NOT NULL,
126 `email` varchar(128) NOT NULL,
127 `company_id` int(11) default '0',
128 `role` varchar(32) NOT NULL,
129 `active` int(11) default NULL,
130 `remarks` text NOT NULL,
131 `passwd` varchar(64) NOT NULL,
132 `owner_id` int(11) NOT NULL,
133 `lang` varchar(8) default 'en',
134 `no_reset_sent` int(11) default '0',
140 ALTER TABLE Person ADD COLUMN no_reset_sent INT(11) DEFAULT 0;
141 ALTER TABLE Person ADD COLUMN action_type VARCHAR(32) DEFAULT '';
142 ALTER TABLE Person ADD COLUMN project_id int(11) default 0;
144 ALTER TABLE Person ADD COLUMN action_type VARCHAR(32) default '';
146 ALTER TABLE Person ADD COLUMN deleted_by INT(11) NOT NULL default 0 ;
147 ALTER TABLE Person ADD COLUMN deleted_dt DATETIME;
149 alter table Person change column active active int(11) NOT NULL DEFAULT 1 ;
152 CREATE TABLE `Projects` (
153 `id` int(11) NOT NULL auto_increment,
154 `name` varchar(254) NOT NULL,
155 `remarks` text NOT NULL,
156 `owner_id` int(11) default NULL,
157 `code` varchar(32) NOT NULL,
158 `active` int(11) default '1',
159 `type` varchar(1) NOT NULL default 'P',
160 `client_id` int(11) NOT NULL default '0',
161 `team_id` int(11) NOT NULL default '0',
162 `file_location` varchar(254) NOT NULL default '',
163 `open_date` date default NULL,
164 `open_by` int(11) NOT NULL default '0',
168 ALTER TABLE `Projects` ADD INDEX `plookup` (`code`);
170 alter table Projects add column active int(11) default 1;
171 alter table Projects add index plookup(code);
173 ALTER TABLE Projects ADD COLUMN `type` varchar(1) NOT NULL DEFAULT 'P';
174 ALTER TABLE Projects ADD COLUMN `client_id` int(11) NOT NULL DEFAULT 0 ;
175 ALTER TABLE Projects ADD COLUMN `team_id` int(11) NOT NULL DEFAULT 0;
176 ALTER TABLE Projects ADD COLUMN `file_location` varchar(254) NOT NULL DEFAULT '';
177 ALTER TABLE Projects ADD COLUMN `open_date` date ;
178 ALTER TABLE Projects ADD COLUMN `close_date` date ;
179 ALTER TABLE Projects ADD COLUMN `open_by` int(11) NOT NULL DEFAULT 0;
181 ALTER TABLE `Projects` ADD COLUMN `countries` varchar(128) NOT NULL;
182 ALTER TABLE `Projects` ADD COLUMN `languages` varchar(128) NOT NULL;
184 ALTER TABLE Projects ADD COLUMN agency_id int(11) NOT NULL DEFAULT 0 ;
187 #-- we duplicate office_id and company_id here...
188 #-- not sure if we should keep doing that in the new design...
189 #-- we should improve our links code to handle this..
192 CREATE TABLE `ProjectDirectory` (
193 `id` int(11) NOT NULL auto_increment,
194 `project_id` int(11) NOT NULL,
195 `person_id` int(11) NOT NULL,
196 `ispm` int(11) NOT NULL,
197 `role` varchar(16) NOT NULL,
202 CREATE TABLE `Images` (
203 `id` int(11) NOT NULL auto_increment,
204 `filename` varchar(255) NOT NULL default '',
205 `ontable` varchar(32) NOT NULL default '',
206 `onid` int(11) NOT NULL default '0',
207 `mimetype` varchar(64) NOT NULL default '',
208 `width` int(11) NOT NULL default '0',
209 `height` int(11) NOT NULL default '0',
210 `filesize` int(11) NOT NULL default '0',
211 `displayorder` int(11) NOT NULL default '0',
212 `language` varchar(6) NOT NULL default 'en',
213 `parent_image_id` int(11) NOT NULL default '0',
219 ALTER TABLE Images ADD COLUMN `width` int(11) NOT NULL default '0';
220 ALTER TABLE Images ADD COLUMN `height` int(11) NOT NULL default '0';
221 ALTER TABLE Images ADD COLUMN `filesize` int(11) NOT NULL default '0';
222 ALTER TABLE Images ADD COLUMN `displayorder` int(11) NOT NULL default '0';
223 ALTER TABLE Images ADD COLUMN `language` varchar(6) NOT NULL default 'en';
224 ALTER TABLE Images ADD COLUMN `parent_image_id` int(11) NOT NULL default '0';
228 ALTER TABLE `Images` ADD INDEX `lookup`(`ontable`, `onid`);
230 ALTER TABLE `Images` ADD COLUMN `created` datetime NOT NULL;
231 ALTER TABLE `Images` ADD COLUMN `imgtype` VARCHAR(32) DEFAULT '' NOT NULL;
232 ALTER TABLE `Images` ADD COLUMN `linkurl` VARCHAR(254) DEFAULT '' NOT NULL;
233 ALTER TABLE `Images` ADD COLUMN `descript` TEXT DEFAULT '' NOT NULL;
234 ALTER TABLE `Images` ADD COLUMN `title` VARCHAR(128) DEFAULT '' NOT NULL;
236 #// old core image type - merged into enum.
237 DROP TABLE core_image_type;
240 CREATE TABLE `i18n` (
241 `id` int(11) NOT NULL AUTO_INCREMENT,
242 `ltype` varchar(1) NOT NULL,
243 `lkey` varchar(8) NOT NULL,
244 `inlang` varchar(8) NOT NULL,
245 `lval` varchar(64) NOT NULL,
249 ALTER TABLE i18n ADD INDEX `lookup` (`ltype`, `lkey`, `inlang`);
254 CREATE TABLE core_locking (
255 `int` int(11) NOT NULL AUTO_INCREMENT,
256 `on_table` varchar(64) NOT NULL,
257 `on_id` int(11) NOT NULL,
258 `person_id` int(11) NOT NULL,
259 `created` datetime NOT NULL,
262 alter table core_locking ADD INDEX `lookup`(`on_table`, `on_id`, `person_id`, `created`);
265 # -- a generic enumeraction
267 CREATE TABLE `core_enum` (
268 `id` int(11) NOT NULL AUTO_INCREMENT,
269 `etype` varchar(32) NOT NULL,
270 `name` varchar(255) NOT NULL,
271 `active` int(2) NOT NULL DEFAULT 1,
272 `seqid` int(11) NOT NULL DEFAULT 0,
274 INDEX `lookup`(`seqid`, `active`, `name`, `etype`)
281 CREATE TABLE `translations` (
282 `id` int(11) NOT NULL AUTO_INCREMENT,
283 `module` varchar(64) NOT NULL,
284 tfile varchar(128) NOT NULL,
285 tlang varchar(8) NOT NULL,
286 tkey varchar(32) NOT NULL,
287 tval longtext NOT NULL,
291 ALTER TABLE translations ADD INDEX qlookup (module, tfile, tlang, tkey);
294 # - used to trigger emails about changes to items being watched.
296 CREATE TABLE `core_watch` (
297 `id` int(11) NOT NULL AUTO_INCREMENT,
298 `ontable` varchar(128) NOT NULL,
299 `onid` int(11) NOT NULL,
300 `person_id` int(11) NOT NULL,
301 `event` varchar(128) NOT NULL,
302 `medium` varchar(128) NOT NULL,
303 `active` int(11) NOT NULL DEFAULT '1',
306 ALTER TABLE core_watch ADD INDEX qlookup (`ontable`,`onid`,`user_id`,`event`,`medium`);
308 CREATE TABLE core_notify (
309 `id` int(11) NOT NULL AUTO_INCREMENT,
310 `act_when` DATETIME NOT NULL,
311 act_start DATETIME NOT NULL,
312 `onid` int(11) NOT NULL DEFAULT 0,
313 `ontable` varchar(128) NOT NULL DEFAULT '',
314 `person_id` int(11) NOT NULL DEFAULT 0,
315 `msgid` varchar(128) NOT NULL DEFAULT '',
316 `sent` DATETIME NOT NULL,
317 `event_id` int(11) NOT NULL DEFAULT 0,
320 INDEX `lookup`(`act_when`, `msgid`)
322 ALTER TABLE core_notify CHANGE COLUMN bounced event_id INT(11) NOT NULL DEFAULT 0;
324 ALTER TABLE core_notify ADD COLUMN act_start DATETIME NOT NULL;
327 # - used by email / tracker to handle alises - we have to be carefull adding to this table...
329 CREATE TABLE `core_person_alias` (
330 `id` int(11) NOT NULL AUTO_INCREMENT,
331 `person_id` varchar(128) DEFAULT NULL,
332 `alias` varchar(254) NOT NULL,
335 ALTER TABLE core_watch ADD INDEX qlookup (`alias`);