annotate owners/ad_owners.install @ 7:6aeff3329e01 ad

maj module ad 2.1rc1
author piotre
date Mon, 20 Jul 2009 13:54:40 +0000
parents 948362c2a207
children
rev   line source
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 }