pierre@0
|
1 <?php |
sly@2
|
2 // $Id: ad_image.install,v 1.2.2.2.2.6.2.4.2.3 2009/04/02 15:48:29 jeremy Exp $ |
pierre@0
|
3 |
pierre@0
|
4 /** |
pierre@0
|
5 * @file |
pierre@0
|
6 * Ad_image module database schema. |
pierre@0
|
7 * |
pierre@0
|
8 * Copyright (c) 2005-2009. |
pierre@0
|
9 * Jeremy Andrews <jeremy@tag1consulting.com>. |
pierre@0
|
10 */ |
pierre@0
|
11 |
pierre@0
|
12 /** |
pierre@0
|
13 * Implementation of hook_schema(). |
pierre@0
|
14 */ |
pierre@0
|
15 function ad_image_schema() { |
pierre@0
|
16 $schema['ad_image'] = array( |
pierre@0
|
17 'description' => 'The ad_image table stores image information such as file ID, title, width, height of corresponding image ads.', |
pierre@0
|
18 'fields' => array( |
pierre@0
|
19 'aid' => array( |
pierre@0
|
20 'type' => 'int', |
pierre@0
|
21 'unsigned' => TRUE, |
pierre@0
|
22 'not null' => TRUE, |
pierre@0
|
23 'default' => 0, |
pierre@0
|
24 ), |
pierre@0
|
25 'fid' => array( |
pierre@0
|
26 'type' => 'int', |
pierre@0
|
27 'unsigned' => TRUE, |
pierre@0
|
28 'not null' => TRUE, |
pierre@0
|
29 'default' => 0, |
pierre@0
|
30 ), |
pierre@0
|
31 'url' => array( |
pierre@0
|
32 'type' => 'varchar', |
pierre@0
|
33 'length' => '255', |
pierre@0
|
34 'not null' => TRUE, |
pierre@0
|
35 'default' => '', |
pierre@0
|
36 ), |
pierre@0
|
37 'tooltip' => array( |
pierre@0
|
38 'type' => 'varchar', |
pierre@0
|
39 'length' => '255', |
pierre@0
|
40 'not null' => TRUE, |
pierre@0
|
41 'default' => '', |
pierre@0
|
42 ), |
pierre@1
|
43 'remote_image' => array( |
pierre@1
|
44 'type' => 'varchar', |
pierre@1
|
45 'length' => '255', |
pierre@1
|
46 'not null' => TRUE, |
pierre@1
|
47 'default' => '', |
pierre@1
|
48 ), |
pierre@0
|
49 'width' => array( |
pierre@0
|
50 'type' => 'int', |
pierre@0
|
51 'unsigned' => TRUE, |
pierre@0
|
52 'not null' => TRUE, |
pierre@0
|
53 'default' => 0, |
pierre@0
|
54 ), |
pierre@0
|
55 'height' => array( |
pierre@0
|
56 'type' => 'int', |
pierre@0
|
57 'unsigned' => TRUE, |
pierre@0
|
58 'not null' => TRUE, |
pierre@0
|
59 'default' => 0, |
pierre@0
|
60 ), |
pierre@0
|
61 ), |
pierre@0
|
62 'unique keys' => array( |
pierre@0
|
63 'aid' => array('aid') |
pierre@0
|
64 ), |
pierre@0
|
65 ); |
pierre@0
|
66 $schema['ad_image_format'] = array( |
pierre@0
|
67 'description' => 'The ad_image_format table stores dimensions for image ads.', |
pierre@0
|
68 'fields' => array( |
pierre@0
|
69 'gid' => array( |
pierre@0
|
70 'type' => 'int', |
pierre@0
|
71 'unsigned' => TRUE, |
pierre@0
|
72 'not null' => TRUE, |
pierre@0
|
73 ), |
pierre@0
|
74 'min_width' => array( |
pierre@0
|
75 'type' => 'int', |
pierre@0
|
76 'unsigned' => TRUE, |
pierre@0
|
77 'not null' => TRUE, |
pierre@0
|
78 'default' => 0, |
pierre@0
|
79 ), |
pierre@0
|
80 'max_width' => array( |
pierre@0
|
81 'type' => 'int', |
pierre@0
|
82 'unsigned' => TRUE, |
pierre@0
|
83 'not null' => TRUE, |
pierre@0
|
84 'default' => 0, |
pierre@0
|
85 ), |
pierre@0
|
86 'min_height' => array( |
pierre@0
|
87 'type' => 'int', |
pierre@0
|
88 'unsigned' => TRUE, |
pierre@0
|
89 'not null' => TRUE, |
pierre@0
|
90 'default' => 0, |
pierre@0
|
91 ), |
pierre@0
|
92 'max_height' => array( |
pierre@0
|
93 'type' => 'int', |
pierre@0
|
94 'unsigned' => TRUE, |
pierre@0
|
95 'not null' => TRUE, |
pierre@0
|
96 'default' => 0, |
pierre@0
|
97 ), |
sly@2
|
98 'max_size' => array( |
sly@2
|
99 'type' => 'int', |
sly@2
|
100 'unsigned' => TRUE, |
sly@2
|
101 'not null' => TRUE, |
sly@2
|
102 'default' => 0, |
sly@2
|
103 ), |
pierre@0
|
104 ), |
pierre@0
|
105 'primary key' => array('gid'), |
pierre@0
|
106 ); |
pierre@0
|
107 |
pierre@0
|
108 return $schema; |
pierre@0
|
109 } |
pierre@0
|
110 |
pierre@0
|
111 |
pierre@0
|
112 /** |
pierre@0
|
113 * ad_image module installation. |
pierre@0
|
114 */ |
pierre@0
|
115 function ad_image_install() { |
pierre@0
|
116 drupal_install_schema('ad_image'); |
pierre@0
|
117 } |
pierre@0
|
118 |
pierre@0
|
119 /** |
pierre@0
|
120 * Allow complete uninstallation of the ad_image module. |
pierre@0
|
121 */ |
pierre@0
|
122 function ad_image_uninstall() { |
pierre@0
|
123 // Delete all ad_image content. |
pierre@0
|
124 $result = db_query("SELECT aid FROM {ad_image}"); |
pierre@0
|
125 while ($aid = db_result($result)) { |
pierre@0
|
126 node_delete($aid); |
pierre@0
|
127 } |
pierre@0
|
128 |
pierre@0
|
129 // Remove tables. |
pierre@0
|
130 drupal_uninstall_schema('ad_image'); |
pierre@0
|
131 } |
pierre@1
|
132 |
pierre@1
|
133 /** |
pierre@1
|
134 * Introduce remote_image field for remotely hosted images. |
pierre@1
|
135 */ |
pierre@1
|
136 function ad_image_update_6001() { |
pierre@1
|
137 $ret = array(); |
pierre@1
|
138 db_add_field($ret, 'ad_image', 'remote_image', |
pierre@1
|
139 array( |
pierre@1
|
140 'type' => 'varchar', |
pierre@1
|
141 'length' => '255', |
pierre@1
|
142 'not null' => TRUE, |
pierre@1
|
143 'default' => '', |
pierre@1
|
144 )); |
pierre@1
|
145 return $ret; |
pierre@1
|
146 } |
sly@2
|
147 |
sly@2
|
148 /** |
sly@2
|
149 * Introduce remote_image field for remotely hosted images. |
sly@2
|
150 */ |
sly@2
|
151 function ad_image_update_6002() { |
sly@2
|
152 $ret = array(); |
sly@2
|
153 db_add_field($ret, 'ad_image_format', 'max_size', |
sly@2
|
154 array( |
sly@2
|
155 'type' => 'int', |
sly@2
|
156 'unsigned' => TRUE, |
sly@2
|
157 'not null' => TRUE, |
sly@2
|
158 'default' => '0', |
sly@2
|
159 )); |
sly@2
|
160 return $ret; |
sly@2
|
161 } |