/[drupal]/contributions/modules/freelinking/freelinking.install
ViewVC logotype

Contents of /contributions/modules/freelinking/freelinking.install

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.5 - (show annotations) (download) (as text)
Thu Oct 4 15:19:53 2007 UTC (2 years, 1 month ago) by eafarris
Branch: MAIN
CVS Tags: DRUPAL-6--1-0, HEAD
Changes since 1.4: +4 -0 lines
File MIME type: text/x-php
Compatibility with Drupal 6.x
1 <?php
2
3 function freelinking_install() {
4
5 switch ($GLOBALS['db_type']) {
6 case 'mysql':
7 case 'mysqli':
8 db_query('CREATE TABLE {freelinking} (
9 hash CHAR(32) NOT NULL,
10 phrase VARCHAR(200) NOT NULL,
11 path VARCHAR(200) NOT NULL,
12 args VARCHAR(200) NOT NULL,
13 PRIMARY KEY(hash))
14 TYPE=MyISAM /*!40100 DEFAULT CHARACTER SET utf8 */;');
15 break;
16 case 'pgsql':
17 db_query('CREATE TABLE {freelinking} (
18 hash CHAR(32) NOT NULL,
19 phrase VARCHAR(200) NOT NULL,
20 path VARCHAR(200) NOT NULL,
21 args VARCHAR(200) NOT NULL,
22 PRIMARY KEY(hash));');
23 break;
24 }
25 } // endfunction freelinking_install
26
27 function freelinking_update_1() {
28 $ret = array();
29 switch ($GLOBALS['db_type']) {
30 case 'mysql':
31 case 'mysqli':
32 $ret[] = update_sql('ALTER TABLE {freelinking} DROP PRIMARY KEY');
33 break;
34 case 'pgsql':
35 $ret[] = update_sql('ALTER TABLE {freelinking} DROP CONSTRAINT {freelinking}_pkey');
36 break;
37 } // endswitch on db type
38
39 $ret[] = _system_update_utf8(array('freelinking'));
40
41 return $ret;
42 };
43
44 function freelinking_update_2() { // this is the update to the 4.7 version
45 $ret = array();
46
47 switch ($GLOBALS['db_type']) {
48 case 'mysql':
49 case 'mysqli':
50 $ret[] = update_sql('ALTER TABLE {freelinking} ADD COLUMN hash CHAR(32)');
51 $ret[] = update_sql('ALTER TABLE {freelinking} ADD COLUMN path VARCHAR(200)');
52 $ret[] = update_sql('ALTER TABLE {freelinking} ADD COLUMN args VARCHAR(200)');
53 $ret[] = update_sql('UPDATE {freelinking} SET path = target');
54 $ret[] = update_sql('UPDATE {freelinking} SET hash = MD5(CONCAT(phrase, path))');
55 $ret[] = update_sql('ALTER TABLE {freelinking} DROP COLUMN target');
56 $ret[] = update_sql('ALTER TABLE {freelinking} ADD PRIMARY KEY hash (hash)');
57 break;
58
59 case 'pgsql':
60 $ret[] = update_sql('ALTER TABLE {freelinking} DROP COLUMN target');
61 db_add_column($ret, 'freelinking', 'hash', 'char(32)');
62 db_add_column($ret, 'freelinking', 'path', 'varchar(200)');
63 db_add_column($ret, 'freelinking', 'args', 'varchar(200)');
64 $ret[] = update_sql('ALTER TABLE {freelinking} ADD PRIMARY KEY hash');
65 break;
66 } // endswitch db_table
67 return $ret;
68 }
69
70 function freelinking_uninstall() {
71 drupal_uninstall_schema('freelinking');
72 }
73
74 // vim: tw=300 nowrap syn=php
75 ?>

  ViewVC Help
Powered by ViewVC 1.1.2