pierre@0
|
1 <?php |
pierre@1
|
2 // $Id: ad_owners.install,v 1.1.2.2.2.1 2009/02/23 22:39:04 jeremy Exp $ |
pierre@0
|
3 |
pierre@0
|
4 /** |
pierre@0
|
5 * @file |
pierre@0
|
6 * Ad_owners module database schema. |
pierre@0
|
7 * |
pierre@0
|
8 * Copyright (c) 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_owners_schema() { |
pierre@0
|
16 $schema['ad_owners'] = array( |
pierre@0
|
17 'description' => 'Stores information about ad owners. Every ad can have one or more owners.', |
pierre@0
|
18 'fields' => array( |
pierre@0
|
19 'oid' => array( |
pierre@0
|
20 'type' => 'serial', |
pierre@0
|
21 'not null' => TRUE, |
pierre@0
|
22 'unsigned' => TRUE, |
pierre@0
|
23 'description' => 'Unique owner pair ID.', |
pierre@0
|
24 ), |
pierre@0
|
25 'aid' => array( |
pierre@0
|
26 'type' => 'int', |
pierre@0
|
27 'not null' => TRUE, |
pierre@0
|
28 'unsigned' => TRUE, |
pierre@0
|
29 'default' => 0, |
pierre@0
|
30 'description' => 'Ad id.', |
pierre@0
|
31 ), |
pierre@0
|
32 'uid' => array( |
pierre@0
|
33 'type' => 'int', |
pierre@0
|
34 'not null' => TRUE, |
pierre@0
|
35 'unsigned' => TRUE, |
pierre@0
|
36 'default' => 0, |
pierre@0
|
37 'description' => 'The {users}.uid that owns ad.', |
pierre@0
|
38 ), |
pierre@0
|
39 ), |
pierre@0
|
40 'primary key' => array('oid'), |
pierre@0
|
41 'indexes' => array( |
pierre@0
|
42 'aid' => array('aid'), |
pierre@0
|
43 'uid' => array('uid'), |
pierre@0
|
44 ), |
pierre@0
|
45 ); |
pierre@0
|
46 |
pierre@0
|
47 /** |
pierre@0
|
48 * Permissions can be granted to each owner of each ad. The same owner |
pierre@0
|
49 * can own multiple ads, and can have different permissions for each ad. |
pierre@0
|
50 */ |
pierre@0
|
51 $schema['ad_permissions'] = array( |
pierre@0
|
52 'description' => 'Permissions can be granted to each owner of each ad. The same owner can own multiple ads, and can have different permissions for each ad.', |
pierre@0
|
53 'fields' => array( |
pierre@0
|
54 'oid' => array( |
pierre@0
|
55 'type' => 'int', |
pierre@0
|
56 'not null' => TRUE, |
pierre@0
|
57 'unsigned' => TRUE, |
pierre@0
|
58 'default' => 0, |
pierre@0
|
59 'description' => 'Owner pair ID.', |
pierre@0
|
60 ), |
pierre@0
|
61 'permissions' => array( |
pierre@0
|
62 'type' => 'text', |
pierre@0
|
63 'not null' => FALSE, |
pierre@0
|
64 'size' => 'big', |
pierre@0
|
65 'description' => 'Ad permission info.', |
pierre@0
|
66 ), |
pierre@0
|
67 ), |
pierre@0
|
68 'primary key' => array('oid'), |
pierre@0
|
69 ); |
pierre@0
|
70 |
pierre@1
|
71 /** |
pierre@1
|
72 * The ad_hosts table is used to configure users that can display ads |
pierre@1
|
73 * remotely. |
pierre@1
|
74 */ |
pierre@1
|
75 $schema['ad_hosts'] = array( |
pierre@1
|
76 'description' => 'The ad_hosts table is used to configure users that can display ads remotely. ', |
pierre@1
|
77 'fields' => array( |
pierre@1
|
78 'uid' => array( |
pierre@1
|
79 'type' => 'int', |
pierre@1
|
80 'not null' => TRUE, |
pierre@1
|
81 'unsigned' => TRUE, |
pierre@1
|
82 'default' => 0, |
pierre@1
|
83 'description' => '', |
pierre@1
|
84 ), |
pierre@1
|
85 'hostid' => array( |
pierre@1
|
86 'type' => 'varchar', |
pierre@1
|
87 'length' => 32, |
pierre@1
|
88 'not null' => TRUE, |
pierre@1
|
89 'default' => '', |
pierre@1
|
90 'description' => 'Host from which acion was made.', |
pierre@1
|
91 ), |
pierre@1
|
92 'status' => array( |
pierre@1
|
93 'type' => 'int', |
pierre@1
|
94 'size' => 'tiny', |
pierre@1
|
95 'not null' => TRUE, |
pierre@1
|
96 'unsigned' => TRUE, |
pierre@1
|
97 'default' => 0, |
pierre@1
|
98 'description' => '', |
pierre@1
|
99 ), |
pierre@1
|
100 'description' => array( |
pierre@1
|
101 'type' => 'text', |
pierre@1
|
102 'not null' => FALSE, |
pierre@1
|
103 'description' => 'Host from which acion was made.', |
pierre@1
|
104 ), |
pierre@1
|
105 ), |
pierre@1
|
106 'primary key' => array('uid'), |
pierre@1
|
107 'indexes' => array( |
pierre@1
|
108 'status' => array('status'), |
pierre@1
|
109 'hostid' => array('hostid'), |
pierre@1
|
110 ), |
pierre@1
|
111 ); |
pierre@1
|
112 |
pierre@0
|
113 return $schema; |
pierre@0
|
114 } |
pierre@0
|
115 |
pierre@0
|
116 /** |
pierre@0
|
117 * ad_external module installation. |
pierre@0
|
118 */ |
pierre@0
|
119 function ad_owners_install() { |
pierre@0
|
120 drupal_install_schema('ad_owners'); |
pierre@0
|
121 } |
pierre@0
|
122 |
pierre@0
|
123 /** |
pierre@0
|
124 * Allow complete uninstallation of the ad_external module. |
pierre@0
|
125 */ |
pierre@0
|
126 function ad_owners() { |
pierre@0
|
127 drupal_uninstall_schema('ad_owners'); |
pierre@0
|
128 } |