DataObjects/core.sql
[Pman.Core] / DataObjects / core.sql
1
2 CREATE TABLE Companies (
3   id int(11)  NOT NULL auto_increment,
4   PRIMARY KEY   (id)
5 );
6
7
8 ALTER TABLE Companies ADD COLUMN    code varchar(32)  NOT NULL DEFAULT '';;
9 ALTER TABLE Companies ADD COLUMN    name varchar(128)  default NULL ;
10 ALTER TABLE Companies ADD COLUMN    remarks text ;
11 ALTER TABLE Companies ADD COLUMN    owner_id int(11) NOT NULL DEFAULT 0 ;
12 ALTER TABLE Companies ADD COLUMN    address text ;
13 ALTER TABLE Companies ADD COLUMN    tel varchar(32)  default NULL;
14 ALTER TABLE Companies ADD COLUMN    fax varchar(32)  default NULL;
15 ALTER TABLE Companies ADD COLUMN    email varchar(128)  default NULL;
16 ALTER TABLE Companies ADD COLUMN    isOwner int(11) default NULL;
17 ALTER TABLE Companies ADD COLUMN    logo_id INT(11)  NOT NULL DEFAULT 0;;
18 ALTER TABLE Companies ADD COLUMN    background_color varchar(8)  NOT NULL;
19 ALTER TABLE Companies ADD COLUMN    comptype varchar(8)  NOT NULL DEFAULT '';
20 ALTER TABLE Companies ADD COLUMN    url varchar(254)  NOT NULL DEFAULT '';
21 ALTER TABLE Companies ADD COLUMN    main_office_id int(11)  NOT NULL DEFAULT 0;
22 ALTER TABLE Companies ADD COLUMN    created_by int(11)  NOT NULL DEFAULT 0;
23 ALTER TABLE Companies ADD COLUMN    created_dt datetime  NOT NULL;
24 ALTER TABLE Companies ADD COLUMN    updated_by int(11)  NOT NULL DEFAULT 0;
25 ALTER TABLE Companies ADD COLUMN    updated_dt datetime  NOT NULL;
26 ALTER TABLE Companies ADD COLUMN    passwd varchar(64) NOT NULL DEFAULT '';
27 ALTER TABLE Companies ADD COLUMN    dispatch_port varchar(255) NOT NULL DEFAULT '';
28 ALTER TABLE Companies ADD COLUMN    province varchar(255) NOT NULL DEFAULT '';
29 ALTER TABLE Companies ADD COLUMN    country varchar(4) NOT NULL DEFAULT '';
30
31
32 ALTER TABLE Companies CHANGE COLUMN isOwner isOwner int(11);
33 #postres
34 ALTER TABLE Companies ALTER isOwner TYPE int(11);
35 ALTER TABLE Companies ALTER owner_id SET DEFAULT 0;
36 ALTER TABLE Companies ALTER url SET DEFAULT '';
37
38
39 ALTER TABLE Companies ADD INDEX name_lookup (name);
40
41
42 UPDATE Companies set comptype='OWNER' where isOwner=1;
43
44 #// core comapy types - use core enums (Company Type)
45 DROP TABLE core_company_type;
46
47  
48 CREATE TABLE Events (
49   id int(11) NOT NULL auto_increment,
50   
51   PRIMARY KEY  (id)
52 ) ;
53
54
55
56 ALTER TABLE Events ADD COLUMN   person_name varchar(128)  default NULL;
57
58 ALTER TABLE Events ADD COLUMN   event_when DATETIME default NULL;
59 ALTER TABLE Events ADD COLUMN   action varchar(32)  default NULL;
60 ALTER TABLE Events ADD COLUMN   ipaddr varchar(16)  default NULL;
61 ALTER TABLE Events ADD COLUMN   on_id int(11) default NULL;
62 ALTER TABLE Events ADD COLUMN   on_table varchar(64)  default NULL;
63 ALTER TABLE Events ADD COLUMN   person_id int(11) default NULL;
64 ALTER TABLE Events ADD COLUMN   remarks text ;
65  
66
67 #very old code..
68 ALTER TABLE Events CHANGE COLUMN EventID id INT(11) AUTO_INCREMENT NOT NULL;
69
70 # this are for pre-postgres support code..
71 ALTER TABLE Events CHANGE COLUMN User person_name VARCHAR(128);
72 ALTER TABLE Events RENAME COLUMN User TO person_name;
73 ALTER TABLE Events CHANGE COLUMN Date event_when DATETIME ;
74 ALTER TABLE Events CHANGE COLUMN Event action VARCHAR(32);
75 ALTER TABLE Events CHANGE COLUMN Host ipaddr VARCHAR(16);
76 ALTER TABLE Events CHANGE COLUMN ItemID on_id INT(11);
77 ALTER TABLE Events CHANGE COLUMN Container on_table VARCHAR(64);
78
79
80 ALTER TABLE Events ADD INDEX lookup (on_id, on_table, person_id, event_when);
81
82
83
84
85
86 CREATE TABLE  core_event_audit  (
87     id int(11)  NOT NULL AUTO_INCREMENT,
88     PRIMARY KEY (id)
89 );
90
91 ALTER TABLE core_event_audit ADD COLUMN   event_id int(11)  NOT NULL DEFAULT 0;
92 ALTER TABLE core_event_audit ADD COLUMN       name varchar(128)  NOT NULL DEFAULT '';
93 ALTER TABLE core_event_audit ADD COLUMN       old_audit_id int(11)  NOT NULL DEFAULT 0;
94 ALTER TABLE core_event_audit ADD COLUMN       newvalue BLOB  NOT NULL DEFAULT '';
95 ALTER TABLE core_event_audit ADD   INDEX lookup(event_id, name, old_audit_id);
96
97 CREATE TABLE  Group_Members  (
98     id int(11)  NOT NULL AUTO_INCREMENT,
99     PRIMARY KEY (id)
100 );
101 ALTER TABLE Group_Members ADD COLUMN  group_id int(11) default NULL;
102 ALTER TABLE Group_Members ADD COLUMN   user_id int(11) NOT NULL default 0;
103
104 CREATE TABLE  Group_Rights  (
105     id int(11)  NOT NULL AUTO_INCREMENT,
106     PRIMARY KEY (id)
107 );
108 ALTER TABLE Group_Rights ADD COLUMN    rightname varchar(64)  NOT NULL DEFAULT '';
109 ALTER TABLE Group_Rights ADD COLUMN     group_id int(11) NOT NULL DEFAULT 0;
110 ALTER TABLE Group_Rights ADD COLUMN   AccessMask varchar(10)  NOT NULL DEFAULT '';
111   
112
113
114
115 CREATE TABLE Groups (
116   id int(11) NOT NULL auto_increment,  
117   PRIMARY KEY   (id)
118 );
119
120 ALTER TABLE Groups ADD COLUMN name varchar(64)  NOT NULL DEFAULT '';
121 ALTER TABLE Groups ADD COLUMN   type int(11) default NULL ;
122 ALTER TABLE Groups ADD COLUMN leader int(11)  NOT NULL default 0;
123 #old mysql..
124 ALTER TABLE Groups CHANGE COLUMN type type int(11) default 0;
125
126
127
128
129
130 CREATE TABLE Office (
131   id int(11) NOT NULL auto_increment,
132  
133   PRIMARY KEY  (id)
134 );
135
136
137 ALTER TABLE Office ADD COLUMN  company_id int(11) NOT NULL default '0';
138 ALTER TABLE Office ADD COLUMN    name varchar(64)  NOT NULL  DEFAULT '';
139 ALTER TABLE Office ADD COLUMN    address text ;
140 ALTER TABLE Office ADD COLUMN    phone varchar(32)  NOT NULL  DEFAULT '';
141 ALTER TABLE Office ADD COLUMN    fax varchar(32)  NOT NULL  DEFAULT '';
142 ALTER TABLE Office ADD COLUMN    email varchar(128)  NOT NULL  DEFAULT '';
143 ALTER TABLE Office ADD COLUMN    role varchar(32)  NOT NULL  DEFAULT '';
144
145
146 CREATE TABLE Person (
147   id int(11) NOT NULL auto_increment,
148   PRIMARY KEY  (id)
149 ) ;
150
151 ALTER TABLE Person ADD COLUMN  office_id int(11) default '0';
152 ALTER TABLE Person ADD COLUMN   name varchar(128)  NOT NULL  DEFAULT '';
153 ALTER TABLE Person ADD COLUMN   phone varchar(32)  NOT NULL  DEFAULT '';
154 ALTER TABLE Person ADD COLUMN   fax varchar(32)  NOT NULL DEFAULT '';
155 ALTER TABLE Person ADD COLUMN   email varchar(128)  NOT NULL DEFAULT '';
156 ALTER TABLE Person ADD COLUMN   company_id int(11) default '0';
157 ALTER TABLE Person ADD COLUMN   role varchar(32)  NOT NULL DEFAULT '';
158 ALTER TABLE Person ADD COLUMN   active int(11) NOT NULL  default 1;
159 ALTER TABLE Person ADD COLUMN   remarks text;
160 ALTER TABLE Person ADD COLUMN   passwd varchar(64) NOT NULL  DEFAULT '';
161 ALTER TABLE Person ADD COLUMN   owner_id int(11) NOT NULL DEFAULT 0;
162 ALTER TABLE Person ADD COLUMN   lang varchar(8) default 'en';
163 ALTER TABLE Person ADD COLUMN   no_reset_sent int(11) default '0';
164
165 ALTER TABLE Person ADD COLUMN action_type VARCHAR(32) DEFAULT '';
166 ALTER TABLE Person ADD COLUMN project_id int(11) default 0;
167 ALTER TABLE Person ADD COLUMN deleted_by INT(11) NOT NULL default 0 ;
168 ALTER TABLE Person ADD COLUMN deleted_dt DATETIME ;
169
170 # old mysql
171 alter table Person change column active active int(11) NOT NULL DEFAULT 1 ;
172
173
174
175
176
177 CREATE TABLE Projects (
178   id int(11) NOT NULL auto_increment,
179   PRIMARY KEY  (id)
180   
181 ) ;
182
183
184
185 ALTER TABLE  Projects  ADD COLUMN name varchar(254)  NOT NULL  DEFAULT '';
186 ALTER TABLE  Projects  ADD COLUMN   remarks text ;
187 ALTER TABLE  Projects  ADD COLUMN   owner_id int(11) default NULL;
188 ALTER TABLE  Projects  ADD COLUMN   code varchar(32)  NOT NULL  DEFAULT '';
189 ALTER TABLE  Projects  ADD COLUMN   active int(11) default '1';
190 ALTER TABLE  Projects  ADD COLUMN   type varchar(1)  NOT NULL default 'P';
191 ALTER TABLE  Projects  ADD COLUMN   client_id int(11) NOT NULL default '0';
192 ALTER TABLE  Projects  ADD COLUMN   team_id int(11) NOT NULL default '0';
193 ALTER TABLE  Projects  ADD COLUMN file_location varchar(254)    NOT NULL default '';
194 ALTER TABLE  Projects  ADD COLUMN open_date date default NULL;
195 ALTER TABLE  Projects  ADD COLUMN open_by int(11) NOT NULL default '0';
196
197
198 # these should be removed, as they are code specific..
199 ALTER TABLE Projects ADD COLUMN countries varchar(128)  NOT NULL DEFAULT '';
200 ALTER TABLE Projects  ADD COLUMN languages varchar(128)  NOT NULL DEFAULT '';
201 ALTER TABLE  Projects ADD COLUMN agency_id int(11)  NOT NULL DEFAULT 0 ;
202
203 ALTER TABLE Projects ADD INDEX plookup (code);
204  
205
206 #-- we duplicate office_id and company_id here...
207 #-- not sure if we should keep doing that in the new design...
208 #-- we should improve our links code to handle this..
209
210
211 CREATE TABLE ProjectDirectory (
212   id int(11) NOT NULL auto_increment,
213   PRIMARY KEY  (id)
214 ) ;
215
216 ALTER TABLE  ProjectDirectory ADD COLUMN   project_id int(11) NOT NULL DEFAULT 0;
217 ALTER TABLE  ProjectDirectory ADD COLUMN   person_id int(11) NOT NULL DEFAULT 0;
218 ALTER TABLE  ProjectDirectory ADD COLUMN   ispm int(11) NOT NULL DEFAULT 0;
219 ALTER TABLE  ProjectDirectory ADD COLUMN   role varchar(16) NOT NULL DEFAULT '';
220
221 ALTER TABLE ProjectDirectory ADD INDEX plookup (project_id,person_id, ispm, role);
222
223
224 CREATE TABLE   Images (
225   id int(11) NOT NULL auto_increment,
226   PRIMARY KEY  (id)
227 );
228
229 ALTER TABLE Images    ADD COLUMN   filename varchar(255) NOT NULL default '';
230 ALTER TABLE Images    ADD COLUMN   ontable varchar(32) NOT NULL default '';
231 ALTER TABLE Images    ADD COLUMN   onid int(11) NOT NULL default '0';
232 ALTER TABLE Images    ADD COLUMN   mimetype varchar(64) NOT NULL default '';
233 ALTER TABLE Images    ADD COLUMN   width int(11) NOT NULL default '0';
234 ALTER TABLE Images    ADD COLUMN   height int(11) NOT NULL default '0';
235 ALTER TABLE Images    ADD COLUMN   filesize int(11) NOT NULL default '0';
236 ALTER TABLE Images    ADD COLUMN   displayorder int(11) NOT NULL default '0';
237 ALTER TABLE Images    ADD COLUMN   language varchar(6) NOT NULL default 'en';
238 ALTER TABLE Images    ADD COLUMN   parent_image_id int(11) NOT NULL default '0';
239
240 ALTER TABLE  Images ADD COLUMN created datetime ;
241 ALTER TABLE  Images ADD COLUMN imgtype VARCHAR(32) DEFAULT '' NOT NULL;
242 ALTER TABLE  Images ADD COLUMN linkurl VARCHAR(254) DEFAULT '' NOT NULL;
243 ALTER TABLE  Images ADD COLUMN descript TEXT DEFAULT '' NOT NULL;
244 ALTER TABLE  Images ADD COLUMN title VARCHAR(128) DEFAULT '' NOT NULL;
245
246
247 ALTER TABLE Images ADD INDEX lookup(ontable, onid);
248
249
250  
251 #// old core image type - merged into enum.
252 DROP TABLE core_image_type;
253
254
255 CREATE TABLE  i18n (
256   id int(11)  NOT NULL AUTO_INCREMENT,
257   PRIMARY KEY (id)
258   
259 );
260
261 ALTER TABLE  i18n ADD COLUMN   ltype varchar(1)  NOT NULL DEFAULT '';
262   ALTER TABLE  i18n ADD COLUMN   lkey varchar(8)  NOT NULL DEFAULT '';
263   ALTER TABLE  i18n ADD COLUMN   inlang varchar(8)  NOT NULL DEFAULT '';
264   ALTER TABLE  i18n ADD COLUMN   lval varchar(64)  NOT NULL DEFAULT '';
265   
266 ALTER TABLE i18n ADD INDEX lookup (ltype, lkey, inlang);
267
268                         
269         
270     
271 CREATE TABLE  core_locking (
272   int int(11)  NOT NULL AUTO_INCREMENT,
273   PRIMARY KEY (int)
274 );
275 ALTER TABLE  core_locking ADD COLUMN   on_table varchar(64)  NOT NULL DEFAULT '';
276 ALTER TABLE  core_locking ADD COLUMN    on_id int(11)  NOT NULL DEFAULT 0;
277 ALTER TABLE  core_locking ADD COLUMN  person_id int(11)  NOT NULL DEFAULT 0;
278 ALTER TABLE  core_locking ADD COLUMN  created datetime ;
279
280 alter table  core_locking ADD  INDEX lookup(on_table, on_id, person_id, created);
281  
282 # -- a generic enumeraction
283
284 CREATE TABLE   core_enum (
285   id int(11)  NOT NULL AUTO_INCREMENT,
286   PRIMARY KEY (id)
287  
288 );
289  
290 alter table  core_enum ADD COLUMN etype varchar(32)  NOT NULL DEFAULT '';
291 alter table  core_enum ADD COLUMN  name varchar(255)  NOT NULL DEFAULT '';
292 alter table  core_enum ADD COLUMN   active int(2)  NOT NULL DEFAULT 1;
293 alter table  core_enum ADD COLUMN  seqid int(11)  NOT NULL DEFAULT 0;
294
295  alter table  core_enum ADD  INDEX lookup(seqid, active, name, etype);
296
297
298
299
300 CREATE TABLE  translations (
301   id int(11)  NOT NULL AUTO_INCREMENT,
302   PRIMARY KEY (id)
303 );
304
305 alter table  translations ADD COLUMN    module varchar(64)  NOT NULL DEFAULT '';
306 alter table  translations ADD COLUMN    tfile varchar(128) NOT NULL DEFAULT '';
307 alter table  translations ADD COLUMN    tlang varchar(8)  NOT NULL DEFAULT '';
308 alter table  translations ADD COLUMN    tkey varchar(32)  NOT NULL DEFAULT '';
309 alter table  translations ADD COLUMN    tval longtext ;
310
311
312 ALTER TABLE translations ADD INDEX qlookup (module, tfile, tlang, tkey);
313
314
315 # - used to trigger emails about changes to items being watched.
316
317 CREATE TABLE core_watch (
318   id int(11)  NOT NULL AUTO_INCREMENT,
319   PRIMARY KEY (id)
320 ) ;
321
322
323 alter table  core_watch ADD COLUMN    ontable varchar(128) NOT NULL DEFAULT '';
324 alter table  core_watch ADD COLUMN   onid int(11) NOT NULL DEFAULT 0;
325 alter table  core_watch ADD COLUMN   person_id int(11) NOT NULL DEFAULT 0;
326 alter table  core_watch ADD COLUMN   event varchar(128) NOT NULL DEFAULT '';
327 alter table  core_watch ADD COLUMN   medium varchar(128) NOT NULL DEFAULT '';
328 alter table  core_watch ADD COLUMN  active int(11) NOT NULL DEFAULT '1';
329
330 ALTER TABLE core_watch ADD INDEX qlookup (ontable,onid,person_id,event,medium);
331
332
333
334
335 CREATE TABLE  core_notify  (
336   id int(11)  NOT NULL AUTO_INCREMENT,
337   PRIMARY KEY (id)
338 );
339
340 ALTER TABLE core_notify ADD COLUMN   act_when DATETIME ;
341 ALTER TABLE core_notify ADD COLUMN    act_start DATETIME ;
342 ALTER TABLE core_notify ADD COLUMN  onid int(11)  NOT NULL DEFAULT 0;
343 ALTER TABLE core_notify ADD COLUMN  ontable varchar(128)  NOT NULL DEFAULT '';
344 ALTER TABLE core_notify ADD COLUMN  person_id int(11)  NOT NULL DEFAULT 0;
345 ALTER TABLE core_notify ADD COLUMN  msgid varchar(128)  NOT NULL  DEFAULT '';
346 ALTER TABLE core_notify ADD COLUMN  sent DATETIME ;
347 ALTER TABLE core_notify ADD COLUMN  event_id int(11)  NOT NULL DEFAULT 0;
348 ALTER TABLE core_notify ADD COLUMN  watch_id INT(11) NOT NULL DEFAULT 0;
349 ALTER TABLE core_notify ADD COLUMN  trigger_person_id INT(11) NOT NULL DEFAULT 0;
350 ALTER TABLE core_notify ADD COLUMN  trigger_event_id INT(11) NOT NULL DEFAULT 0;
351 ALTER TABLE core_notify ADD   INDEX lookup(act_when, msgid);
352 #old mysql..
353 ALTER TABLE core_notify CHANGE COLUMN bounced event_id INT(11) NOT NULL DEFAULT 0;
354   
355
356
357
358 # - used by email / tracker to handle alises - we have to be carefull adding to this table...
359
360 CREATE TABLE core_person_alias (
361   id int(11)  NOT NULL AUTO_INCREMENT,
362
363   PRIMARY KEY (id)
364 ) ;
365 ALTER TABLE core_person_alias ADD COLUMN   person_id varchar(128) DEFAULT NULL;
366 ALTER TABLE core_person_alias ADD COLUMN  alias varchar(254) NOT NULL DEFAULT '';
367   
368 ALTER TABLE core_person_alias ADD INDEX alias (alias);