source: sandbox/2.4.2-expresso1/expressoCalendar/setup/tables_update.inc.php @ 6832

Revision 6832, 6.1 KB checked in by acoutinho, 12 years ago (diff)

Ticket #2966 - Criacao de grupo padrao, criacao de tarefas simples, correcoes de bug

Line 
1<?php
2        /**************************************************************************\
3        * ExpressoLivre - Setup                                                     *
4        * http://www.expressolivre.org                                              *
5        * --------------------------------------------                             *
6        * This program is free software; you can redistribute it and/or modify it  *
7        * under the terms of the GNU General Public License as published by the    *
8        * Free Software Foundation; either version 2 of the License, or (at your   *
9        * option) any later version.                                               *
10        \**************************************************************************/
11
12        $test[] = '1.000';
13        function expressoCalendar_upgrade1_000() {
14
15                $oProc = $GLOBALS['phpgw_setup']->oProc;
16
17                $oProc->query("ALTER TABLE calendar_participant ADD COLUMN acl character varying(10) not null DEFAULT 'r' ");
18               
19                $oProc->query("ALTER TABLE calendar_participant ADD COLUMN receive_notification smallint not null DEFAULT 1 ");
20                $oProc->query('ALTER TABLE calendar_participant RENAME COLUMN delegated_to TO delegated_from ');
21               
22                $oProc->query("UPDATE calendar_participant SET acl = 'rowi' where is_organizer = 1 ");
23
24                $oProc->query('ALTER TABLE calendar_object  ALTER COLUMN range_start TYPE bigint USING (date_part(\'epoch\',(cast(range_start as timestamp)))::bigint) * 1000');
25                $oProc->query('ALTER TABLE calendar_object  ALTER COLUMN range_end TYPE bigint USING (date_part(\'epoch\',(cast(range_end as timestamp)))::bigint) * 1000');
26
27                $oProc->query('ALTER TABLE calendar_alarm ALTER COLUMN range_end TYPE bigint USING (date_part(\'epoch\',(cast(range_end as timestamp)))::bigint) * 1000');
28                $oProc->query('ALTER TABLE calendar_alarm ALTER COLUMN range_start TYPE bigint USING (date_part(\'epoch\',(cast(range_start as timestamp)))::bigint) * 1000');
29
30                $oProc->query("ALTER TABLE attachment ADD COLUMN owner integer");
31
32                $GLOBALS['setup_info']['expressoCalendar']['currentver'] = '1.001';
33        return $GLOBALS['setup_info']['expressoCalendar']['currentver'];
34        }
35
36        $test[] = '1.001';
37        function expressoCalendar_upgrade1_001() {
38
39                $oProc = $GLOBALS['phpgw_setup']->oProc;
40
41                $oProc->query("ALTER TABLE calendar_repeat ADD COLUMN dtstart bigint");
42                $oProc->query('ALTER TABLE calendar_repeat ALTER COLUMN until DROP NOT NULL');
43
44                $oProc->CreateTable('calendar_repeat_occurrence', array(
45                                'fd' => array(
46                                    'id' => array( 'type' => 'auto', 'nullable' => False),
47                                    'occurrence' => array(  'type' => 'bigint','precision' => '16', 'nullable' => False),
48                                    'repeat_id' => array(  'type' => 'int', 'precision' => '8', 'nullable' => False)
49                                ),
50
51                                'pk' => array('id'),
52                                'fk' => array('repeat_id'),
53                                'ix' => array(),
54                                'uc' => array()
55                                )
56                );
57
58                $oProc->CreateTable('calendar_repeat_ranges', array(
59                        'fd' => array(
60                            'id' => array( 'type' => 'auto', 'nullable' => False),
61                            'range_start' => array(  'type' => 'bigint','precision' => '16', 'nullable' => False),
62                            'range_end' => array(  'type' => 'bigint', 'precision' => '16', 'nullable' => False),
63                            'user_info_id' => array(  'type' => 'bigint', 'precision' => '16', 'nullable' => False)
64                        ),
65                        'pk' => array('id'),
66                        'fk' => array(),
67                        'ix' => array(),
68                        'uc' => array()
69                            )
70                );
71
72                $oProc->query("ALTER TABLE calendar_participant ADD COLUMN receive_notification smallint not null DEFAULT 1 ");
73
74                $GLOBALS['setup_info']['expressoCalendar']['currentver'] = '1.002';
75        return $GLOBALS['setup_info']['expressoCalendar']['currentver'];
76        };
77
78        $test[] = '1.002';
79        function expressoCalendar_upgrade1_002() {
80
81        $oProc = $GLOBALS['phpgw_setup']->oProc;
82
83        $oProc->query("ALTER TABLE calendar_repeat_occurrence ADD COLUMN exception smallint DEFAULT 0");
84
85        $GLOBALS['setup_info']['expressoCalendar']['currentver'] = '1.003';
86        return $GLOBALS['setup_info']['expressoCalendar']['currentver'];
87        };
88       
89        $test[] = '1.003';
90        function expressoCalendar_upgrade1_003() {
91        $GLOBALS['setup_info']['expressoCalendar']['currentver'] = '1.004';
92        return $GLOBALS['setup_info']['expressoCalendar']['currentver'];
93        };
94
95        $test[] = '1.004';
96        function expressoCalendar_upgrade1_004() {
97        $oProc = $GLOBALS['phpgw_setup']->oProc;
98        $oProc->query("ALTER TABLE calendar_repeat_occurrence  ALTER COLUMN exception SET default 0");
99
100        $GLOBALS['setup_info']['expressoCalendar']['currentver'] = '1.005';
101        return $GLOBALS['setup_info']['expressoCalendar']['currentver'];
102        };
103       
104        $test[] = '1.005';
105        function expressoCalendar_upgrade1_005() {
106        $oProc = $GLOBALS['phpgw_setup']->oProc;
107        $oProc->query("ALTER TABLE calendar_alarm ADD COLUMN alarm_offset bigint;");
108            $oProc->query("UPDATE calendar_alarm SET alarm_offset = obj.range_start - calendar_alarm.range_start FROM calendar_object as obj WHERE obj.id = object_id;");
109            $oProc->query("ALTER TABLE calendar_alarm DROP COLUMN range_start;");
110            $oProc->query("ALTER TABLE calendar_alarm DROP COLUMN range_end;");
111        $GLOBALS['setup_info']['expressoCalendar']['currentver'] = '1.006';
112        return $GLOBALS['setup_info']['expressoCalendar']['currentver'];
113        };
114       
115       
116        $test[] = '1.006';
117        function expressoCalendar_upgrade1_006() {
118            $GLOBALS['setup_info']['expressoCalendar']['currentver'] = '1.007';
119            return $GLOBALS['setup_info']['expressoCalendar']['currentver'];
120        };
121       
122        $test[] = '1.007';
123        function expressoCalendar_upgrade1_007() {
124                $oProc = $GLOBALS['phpgw_setup']->oProc;
125
126                $oProc->query("ALTER TABLE calendar_object ADD COLUMN priority smallint DEFAULT 0;");
127                $oProc->query("ALTER TABLE calendar_object ADD COLUMN percentage smallint DEFAULT 0;");
128                $oProc->query("ALTER TABLE calendar_object ADD COLUMN status smallint DEFAULT 0;");
129
130                $oProc->query("ALTER TABLE calendar ADD COLUMN type smallint DEFAULT 0;");
131                $oProc->query("ALTER TABLE calendar_signature ADD COLUMN type smallint DEFAULT 0;");
132
133        $oProc->query("INSERT INTO calendar_object_type(id, name) VALUES ('2', 'TODO');");
134
135        $GLOBALS['setup_info']['expressoCalendar']['currentver'] = '1.008';
136        return $GLOBALS['setup_info']['expressoCalendar']['currentver'];
137        };
138       
139?>
Note: See TracBrowser for help on using the repository browser.