Mercurial > defr > drupal > core
comparison modules/taxonomy/taxonomy.install @ 1:c1f4ac30525a 6.0
Drupal 6.0
| author | Franck Deroche <webmaster@defr.org> |
|---|---|
| date | Tue, 23 Dec 2008 14:28:28 +0100 |
| parents | |
| children | 3edae6ecd6c6 |
comparison
equal
deleted
inserted
replaced
| 0:5a113a1c4740 | 1:c1f4ac30525a |
|---|---|
| 1 <?php | |
| 2 // $Id: taxonomy.install,v 1.7 2008/01/08 07:46:41 goba Exp $ | |
| 3 | |
| 4 /** | |
| 5 * Implementation of hook_schema(). | |
| 6 */ | |
| 7 function taxonomy_schema() { | |
| 8 $schema['term_data'] = array( | |
| 9 'description' => t('Stores term information.'), | |
| 10 'fields' => array( | |
| 11 'tid' => array( | |
| 12 'type' => 'serial', | |
| 13 'unsigned' => TRUE, | |
| 14 'not null' => TRUE, | |
| 15 'description' => t('Primary Key: Unique term ID.'), | |
| 16 ), | |
| 17 'vid' => array( | |
| 18 'type' => 'int', | |
| 19 'unsigned' => TRUE, | |
| 20 'not null' => TRUE, | |
| 21 'default' => 0, | |
| 22 'description' => t('The {vocabulary}.vid of the vocabulary to which the term is assigned.'), | |
| 23 ), | |
| 24 'name' => array( | |
| 25 'type' => 'varchar', | |
| 26 'length' => 255, | |
| 27 'not null' => TRUE, | |
| 28 'default' => '', | |
| 29 'description' => t('The term name.'), | |
| 30 ), | |
| 31 'description' => array( | |
| 32 'type' => 'text', | |
| 33 'not null' => FALSE, | |
| 34 'size' => 'big', | |
| 35 'description' => t('A description of the term.'), | |
| 36 ), | |
| 37 'weight' => array( | |
| 38 'type' => 'int', | |
| 39 'not null' => TRUE, | |
| 40 'default' => 0, | |
| 41 'size' => 'tiny', | |
| 42 'description' => t('The weight of this term in relation to other terms.'), | |
| 43 ), | |
| 44 ), | |
| 45 'primary key' => array('tid'), | |
| 46 'indexes' => array( | |
| 47 'taxonomy_tree' => array('vid', 'weight', 'name'), | |
| 48 'vid_name' => array('vid', 'name'), | |
| 49 ), | |
| 50 ); | |
| 51 | |
| 52 $schema['term_hierarchy'] = array( | |
| 53 'description' => t('Stores the hierarchical relationship between terms.'), | |
| 54 'fields' => array( | |
| 55 'tid' => array( | |
| 56 'type' => 'int', | |
| 57 'unsigned' => TRUE, | |
| 58 'not null' => TRUE, | |
| 59 'default' => 0, | |
| 60 'description' => t('Primary Key: The {term_data}.tid of the term.'), | |
| 61 ), | |
| 62 'parent' => array( | |
| 63 'type' => 'int', | |
| 64 'unsigned' => TRUE, | |
| 65 'not null' => TRUE, | |
| 66 'default' => 0, | |
| 67 'description' => t("Primary Key: The {term_data}.tid of the term's parent. 0 indicates no parent."), | |
| 68 ), | |
| 69 ), | |
| 70 'indexes' => array( | |
| 71 'parent' => array('parent'), | |
| 72 ), | |
| 73 'primary key' => array('tid', 'parent'), | |
| 74 ); | |
| 75 | |
| 76 $schema['term_node'] = array( | |
| 77 'description' => t('Stores the relationship of terms to nodes.'), | |
| 78 'fields' => array( | |
| 79 'nid' => array( | |
| 80 'type' => 'int', | |
| 81 'unsigned' => TRUE, | |
| 82 'not null' => TRUE, | |
| 83 'default' => 0, | |
| 84 'description' => t('Primary Key: The {node}.nid of the node.'), | |
| 85 ), | |
| 86 'vid' => array( | |
| 87 'type' => 'int', | |
| 88 'unsigned' => TRUE, | |
| 89 'not null' => TRUE, | |
| 90 'default' => 0, | |
| 91 'description' => t('Primary Key: The {node}.vid of the node.'), | |
| 92 ), | |
| 93 'tid' => array( | |
| 94 'type' => 'int', | |
| 95 'unsigned' => TRUE, | |
| 96 'not null' => TRUE, | |
| 97 'default' => 0, | |
| 98 'description' => t('Primary Key: The {term_data}.tid of a term assigned to the node.'), | |
| 99 ), | |
| 100 ), | |
| 101 'indexes' => array( | |
| 102 'vid' => array('vid'), | |
| 103 'nid' => array('nid'), | |
| 104 ), | |
| 105 'primary key' => array('tid', 'vid'), | |
| 106 ); | |
| 107 | |
| 108 $schema['term_relation'] = array( | |
| 109 'description' => t('Stores non-hierarchical relationships between terms.'), | |
| 110 'fields' => array( | |
| 111 'trid' => array( | |
| 112 'type' => 'serial', | |
| 113 'not null' => TRUE, | |
| 114 'description' => t('Primary Key: Unique term relation ID.'), | |
| 115 ), | |
| 116 'tid1' => array( | |
| 117 'type' => 'int', | |
| 118 'unsigned' => TRUE, | |
| 119 'not null' => TRUE, | |
| 120 'default' => 0, | |
| 121 'description' => t('The {term_data}.tid of the first term in a relationship.'), | |
| 122 ), | |
| 123 'tid2' => array( | |
| 124 'type' => 'int', | |
| 125 'unsigned' => TRUE, | |
| 126 'not null' => TRUE, | |
| 127 'default' => 0, | |
| 128 'description' => t('The {term_data}.tid of the second term in a relationship.'), | |
| 129 ), | |
| 130 ), | |
| 131 'unique keys' => array( | |
| 132 'tid1_tid2' => array('tid1', 'tid2'), | |
| 133 ), | |
| 134 'indexes' => array( | |
| 135 'tid2' => array('tid2'), | |
| 136 ), | |
| 137 'primary key' => array('trid'), | |
| 138 ); | |
| 139 | |
| 140 $schema['term_synonym'] = array( | |
| 141 'description' => t('Stores term synonyms.'), | |
| 142 'fields' => array( | |
| 143 'tsid' => array( | |
| 144 'type' => 'serial', | |
| 145 'not null' => TRUE, | |
| 146 'description' => t('Primary Key: Unique term synonym ID.'), | |
| 147 ), | |
| 148 'tid' => array( | |
| 149 'type' => 'int', | |
| 150 'unsigned' => TRUE, | |
| 151 'not null' => TRUE, | |
| 152 'default' => 0, | |
| 153 'description' => t('The {term_data}.tid of the term.'), | |
| 154 ), | |
| 155 'name' => array( | |
| 156 'type' => 'varchar', | |
| 157 'length' => 255, | |
| 158 'not null' => TRUE, | |
| 159 'default' => '', | |
| 160 'description' => t('The name of the synonym.'), | |
| 161 ), | |
| 162 ), | |
| 163 'indexes' => array( | |
| 164 'tid' => array('tid'), | |
| 165 'name_tid' => array('name', 'tid'), | |
| 166 ), | |
| 167 'primary key' => array('tsid'), | |
| 168 ); | |
| 169 | |
| 170 $schema['vocabulary'] = array( | |
| 171 'description' => t('Stores vocabulary information.'), | |
| 172 'fields' => array( | |
| 173 'vid' => array( | |
| 174 'type' => 'serial', | |
| 175 'unsigned' => TRUE, | |
| 176 'not null' => TRUE, | |
| 177 'description' => t('Primary Key: Unique vocabulary ID.'), | |
| 178 ), | |
| 179 'name' => array( | |
| 180 'type' => 'varchar', | |
| 181 'length' => 255, | |
| 182 'not null' => TRUE, | |
| 183 'default' => '', | |
| 184 'description' => t('Name of the vocabulary.'), | |
| 185 ), | |
| 186 'description' => array( | |
| 187 'type' => 'text', | |
| 188 'not null' => FALSE, | |
| 189 'size' => 'big', | |
| 190 'description' => t('Description of the vocabulary.'), | |
| 191 ), | |
| 192 'help' => array( | |
| 193 'type' => 'varchar', | |
| 194 'length' => 255, | |
| 195 'not null' => TRUE, | |
| 196 'default' => '', | |
| 197 'description' => t('Help text to display for the vocabulary.'), | |
| 198 ), | |
| 199 'relations' => array( | |
| 200 'type' => 'int', | |
| 201 'unsigned' => TRUE, | |
| 202 'not null' => TRUE, | |
| 203 'default' => 0, | |
| 204 'size' => 'tiny', | |
| 205 'description' => t('Whether or not related terms are enabled within the vocabulary. (0 = disabled, 1 = enabled)'), | |
| 206 ), | |
| 207 'hierarchy' => array( | |
| 208 'type' => 'int', | |
| 209 'unsigned' => TRUE, | |
| 210 'not null' => TRUE, | |
| 211 'default' => 0, | |
| 212 'size' => 'tiny', | |
| 213 'description' => t('The type of hierarchy allowed within the vocabulary. (0 = disabled, 1 = single, 2 = multiple)'), | |
| 214 ), | |
| 215 'multiple' => array( | |
| 216 'type' => 'int', | |
| 217 'unsigned' => TRUE, | |
| 218 'not null' => TRUE, | |
| 219 'default' => 0, | |
| 220 'size' => 'tiny', | |
| 221 'description' => t('Whether or not multiple terms from this vocabulary may be assigned to a node. (0 = disabled, 1 = enabled)'), | |
| 222 ), | |
| 223 'required' => array( | |
| 224 'type' => 'int', | |
| 225 'unsigned' => TRUE, | |
| 226 'not null' => TRUE, | |
| 227 'default' => 0, | |
| 228 'size' => 'tiny', | |
| 229 'description' => t('Whether or not terms are required for nodes using this vocabulary. (0 = disabled, 1 = enabled)'), | |
| 230 ), | |
| 231 'tags' => array( | |
| 232 'type' => 'int', | |
| 233 'unsigned' => TRUE, | |
| 234 'not null' => TRUE, | |
| 235 'default' => 0, | |
| 236 'size' => 'tiny', | |
| 237 'description' => t('Whether or not free tagging is enabled for the vocabulary. (0 = disabled, 1 = enabled)'), | |
| 238 ), | |
| 239 'module' => array( | |
| 240 'type' => 'varchar', | |
| 241 'length' => 255, | |
| 242 'not null' => TRUE, | |
| 243 'default' => '', | |
| 244 'description' => t('The module which created the vocabulary.'), | |
| 245 ), | |
| 246 'weight' => array( | |
| 247 'type' => 'int', | |
| 248 'not null' => TRUE, | |
| 249 'default' => 0, | |
| 250 'size' => 'tiny', | |
| 251 'description' => t('The weight of the vocabulary in relation to other vocabularies.'), | |
| 252 ), | |
| 253 ), | |
| 254 'primary key' => array('vid'), | |
| 255 'indexes' => array( | |
| 256 'list' => array('weight', 'name'), | |
| 257 ), | |
| 258 ); | |
| 259 | |
| 260 $schema['vocabulary_node_types'] = array( | |
| 261 'description' => t('Stores which node types vocabularies may be used with.'), | |
| 262 'fields' => array( | |
| 263 'vid' => array( | |
| 264 'type' => 'int', | |
| 265 'unsigned' => TRUE, | |
| 266 'not null' => TRUE, | |
| 267 'default' => 0, | |
| 268 'description' => t('Primary Key: the {vocabulary}.vid of the vocabulary.'), | |
| 269 ), | |
| 270 'type' => array( | |
| 271 'type' => 'varchar', | |
| 272 'length' => 32, | |
| 273 'not null' => TRUE, | |
| 274 'default' => '', | |
| 275 'description' => t('The {node}.type of the node type for which the vocabulary may be used.'), | |
| 276 ), | |
| 277 ), | |
| 278 'primary key' => array('type', 'vid'), | |
| 279 'indexes' => array( | |
| 280 'vid' => array('vid'), | |
| 281 ), | |
| 282 ); | |
| 283 | |
| 284 return $schema; | |
| 285 } | |
| 286 |
