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

Diff of /contributions/modules/multisite_manager/multisite_manager.install

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

revision 1.3, Fri Feb 8 20:25:25 2008 UTC revision 1.3.4.1, Wed Mar 12 16:47:45 2008 UTC
# Line 1  Line 1 
1  <?php  <?php
2  // $Id: multisite_manager.install,v 1.2 2007/09/04 20:24:16 schuyler1d Exp $  // $Id: multisite_manager.install,v 1.3 2008/02/08 20:25:25 schuyler1d Exp $
3    
4  function multisite_manager_install() {  function multisite_manager_schema() {
5    switch ($GLOBALS['db_type']) {    $schema['drupal_site'] = array(
6      case 'mysql':      'fields' => array(
7      case 'mysqli':        'vid' => array('type'=>'int','unsigned'=>TRUE, 'not null'=>TRUE, 'default'=> 0),
8        db_query("        'nid' => array('type'=>'int','unsigned'=>TRUE, 'not null'=>TRUE, 'default'=> 0),
9            CREATE TABLE {drupal_site} (        'shortname' => array('type'=>'varchar', 'not null'=>TRUE, 'length'=>45),
10              vid int(10) unsigned NOT NULL default '0',        'profile' => array('type'=>'varchar', 'not null'=>TRUE, 'length'=>255),
11              nid int(10) unsigned NOT NULL default '0',        'link' => array('type'=>'varchar', 'not null'=>TRUE, 'default'=> '', 'length'=>255),
12              shortname varchar(45) NOT NULL,        'installed' => array('type'=>'int','size'=>'tiny', 'not null'=>TRUE, 'default'=> 0),
13              profile varchar(255) NOT NULL,        'run_cron' => array('type'=>'int','size'=>'tiny', 'not null'=>TRUE, 'default'=> 0),
14              link varchar(255) NOT NULL default '',        'db_prefix' => array('type'=>'varchar','length'=>45, 'not null'=>TRUE, 'default'=> ''),
15              installed tinyint NOT NULL default '0',        'db_user' => array('type'=>'varchar','length'=>45, 'not null'=>TRUE, 'default'=> ''),
16              run_cron tinyint NOT NULL default '0',        'db_path' => array('type'=>'varchar','length'=>45, 'not null'=>TRUE, 'default'=> ''),
17              db_prefix varchar(45) NOT NULL default '',      ),
18              db_user varchar(45) NOT NULL default '',      'indexes' => array(
19              db_path varchar(45) NOT NULL default '',        'drupal_site_nid'    => array('nid')
20              PRIMARY KEY (vid, nid),      ),
21              KEY drupal_site_nid (nid)      'primary key' => array('vid','nid'),
22            ) /*!40100 DEFAULT CHARACTER SET utf8 */;    );
23        ");    return $schema;
24        break;  }
     case 'pgsql':  
       db_query("  
           CREATE TABLE {drupal_site} (  
             vid int NOT NULL default '0',  
             nid int NOT NULL default '0',  
             shortname varchar(45) NOT NULL,  
             profile varchar(255) NOT NULL,  
             link varchar(255) NOT NULL default '',  
             installed tinyint NOT NULL default '0',  
             run_cron smallint NOT NULL default '0',  
             db_prefix varchar(45) NOT NULL default '',  
             db_user varchar(45) NOT NULL default '',  
             db_path varchar(45) NOT NULL default '',  
             PRIMARY KEY (vid, nid));  
       ");  
       db_query("CREATE INDEX {drupal_site}_nid_idx ON {drupal_site} (nid)");  
       break;  
   }  
25    
26    function multisite_manager_install() {
27      drupal_install_schema('multisite_manager');
28  }  }
29    
30  /**  /**
31   * Implementation of hook_uninstall().   * Implementation of hook_uninstall().
32   */   */
33  function multisite_manager_uninstall() {  function multisite_manager_uninstall() {
34    db_query('DROP TABLE {drupal_site}');    drupal_uninstall_schema('multisite_manager');
35    variable_del('multisite_manager_dbprefix_default');    variable_del('multisite_manager_dbprefix_default');
36    variable_del('multisite_manager_dbpath_default');    variable_del('multisite_manager_dbpath_default');
37    variable_del('multisite_manager_link_default');    variable_del('multisite_manager_link_default');
# Line 58  function multisite_manager_uninstall() { Line 42  function multisite_manager_uninstall() {
42  // X = Drupal major number (eg 5 = 5.x)  // X = Drupal major number (eg 5 = 5.x)
43  // Y = Module major number (eg 0 = 0.x, 1 = 1.x)  // Y = Module major number (eg 0 = 0.x, 1 = 1.x)
44  // ZZ = increment  // ZZ = increment
 function multisite_manager_update_5000() {  
   $items = array();  
   switch ($GLOBALS['db_type']) {  
     case 'mysql':  
     case 'mysqli':  
       $items[] = update_sql("ALTER TABLE {drupal_site} ADD COLUMN run_cron tinyint NOT NULL default '0' AFTER link");  
       break;  
     case 'pgsql':  
       $items[] = update_sql("ALTER TABLE {drupal_site} ADD COLUMN run_cron smallint NOT NULL default '0'");  
       break;  
   } // end switch db_type  
   return $items;  
 } // end function multisite_manager_update_5000()  
   
 function multisite_manager_update_5001() {  
   $items = array();  
   switch ($GLOBALS['db_type']) {  
     case 'mysql':  
     case 'mysqli':  
       $items[] = update_sql("ALTER TABLE {drupal_site} ADD COLUMN installed tinyint NOT NULL default '0' AFTER link");  
       break;  
     case 'pgsql':  
       $items[] = update_sql("ALTER TABLE {drupal_site} ADD COLUMN installed smallint NOT NULL default '0'");  
       break;  
   } // end switch db_type  
   return $items;  
 } // end function multisite_manager_update_5000()  
   
 // vim:fenc=utf-8:ft=php:ai:si:ts=2:sw=2:et:  
   

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.3.4.1

  ViewVC Help
Powered by ViewVC 1.1.2