Removing translation directories
[project/link.git] / link.install
1 <?php
2
3 /**
4 * @file
5 * Install file for the link module.
6 */
7
8 /**
9 * Implementation of hook_install().
10 */
11 function link_install() {
12 drupal_load('module', 'content');
13 content_notify('install', 'link');
14 }
15
16 /**
17 * Implementation of hook_uninstall().
18 */
19 function link_uninstall() {
20 drupal_load('module', 'content');
21 content_notify('uninstall', 'link');
22 }
23
24 /**
25 * Implementation of hook_enable().
26 */
27 function link_enable() {
28 drupal_load('module', 'content');
29 content_notify('enable', 'link');
30 }
31
32 /**
33 * Implementation of hook_disable().
34 */
35 function link_disable() {
36 drupal_load('module', 'content');
37 content_notify('disable', 'link');
38 }
39
40 /**
41 * Removed link.module created tables, move data to content.module tables
42 *
43 * Even though most everyone will not be using this particular update, several
44 * folks have complained that their upgrades of link.module do not work because
45 * of this function being missing when schema expects it. - JCF
46 * And on further review, I'm removing the body, since some of those calls
47 * no longer exist in Drupal 6. Remember to upgrade from 4.7 to 5 first, and
48 * *then* from 5 to 6. kthx! -JCF
49 */
50 function link_update_1() {
51 $ret = array();
52 // GNDN
53 return $ret;
54 }
55
56
57 /**
58 * Ensure that content.module is updated before link module.
59 */
60 function link_update_6000() {
61 if ($abort = content_check_update('link')) {
62 return $abort;
63 }
64 return array();
65 }
66
67 /**
68 * Change the database schema to allow NULL values.
69 */
70 function link_update_6001() {
71 $ret = array();
72
73 // Build a list of fields that need updating.
74 $update_fields = array();
75 foreach (content_types_install() as $type_name => $fields) {
76 foreach ($fields as $field) {
77 if ($field['type'] == 'link') {
78 // We only process a given field once.
79 $update_fields[$field['field_name']] = $field;
80 }
81 }
82 }
83
84 // Update each field's storage to match the current definition.
85 foreach ($update_fields as $field) {
86 $db_info = content_database_info($field);
87 foreach ($db_info['columns'] as $column) {
88 db_change_field($ret, $db_info['table'], $column['column'], $column['column'], $column);
89 $ret[] = update_sql("UPDATE {". $db_info['table'] ."} SET ". $column['column'] ." = NULL WHERE ". $column['column'] ." = '' OR ". $column['column'] ." = 'N;'");
90 }
91 }
92
93 // Let CCK re-associate link fields with Link module and activate the fields.
94 content_associate_fields('link');
95
96 return $ret;
97 }