summaryrefslogtreecommitdiff
path: root/modules/blogapi/blogapi.install
blob: 2e1129c7dde2828f1f3dbaa7f44b2beb0a270204 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
<?php
// $Id$

/**
 * @file
 * Install, update and uninstall functions for the blogapi module.
 */

/**
 * Implement hook_install().
 */
function blogapi_install() {
  // Create tables.
  drupal_install_schema('blogapi');
}

/**
 * Implement hook_uninstall().
 */
function blogapi_uninstall() {
  // Remove tables.
  drupal_uninstall_schema('blogapi');
}


/**
 * Implement hook_schema().
 */
function blogapi_schema() {
  $schema['blogapi_files'] = array(
    'description' => 'Stores information for files uploaded via the blogapi.',
    'fields' => array(
      'fid' => array(
        'description' => 'Primary Key: Unique file ID.',
        'type' => 'serial',
      ),
      'uid' => array(
        'description' => 'The {users}.uid of the user who is associated with the file.',
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
      'filepath' => array(
        'description' => 'Path of the file relative to Drupal root.',
        'type' => 'varchar',
        'length' => 255,
        'not null' => TRUE,
        'default' => '',
      ),
      'filesize' => array(
        'description' => 'The size of the file in bytes.',
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
    ),
    'primary key' => array('fid'),
    'indexes' => array(
      'uid' => array('uid'),
    ),
  );

  return $schema;
}

/**
 * @defgroup updates-5.x-to-6.x Blog API updates from 5.x to 6.x
 * @{
 */

/**
 * Inform users about the new permission.
 */
function blogapi_update_6000() {
  drupal_set_message("Blog API module does not depend on blog module's permissions anymore, but provides its own 'administer content with blog api' permission instead. Until <a href=\"" . url('admin/user/permissions', array('fragment' => 'module-blogapi')) . '">this permission is assigned</a> to at least one user role, only the site administrator will be able to use Blog API features.');
  return array();
}

/**
 * Add blogapi_files table to enable size restriction for BlogAPI file uploads.
 *
 * This table was introduced in Drupal 6.4.
 */
function blogapi_update_6001() {
  $ret = array();

  if (!db_table_exists('blogapi_files')) {
    $schema = blogapi_schema();
    db_create_table($ret, 'blogapi_files', $schema['blogapi_files']);
  }

  return $ret;
}

/**
 * @} End of "defgroup updates-5.x-to-6.x"
 * The next series of updates should start at 7000.
 */