summaryrefslogtreecommitdiff
path: root/modules/menu/menu.schema
blob: 0d1133caad55b4254368feeb628046b276e4f4ae (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
<?php
// $Id$

function menu_schema() {
  $schema['menu_router'] = array(
    'fields' => array(
      'path'             => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'load_functions'   => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'to_arg_functions' => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'access_callback'  => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'access_arguments' => array('type' => 'text', 'not null' => FALSE),
      'page_callback'    => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'page_arguments'   => array('type' => 'text', 'not null' => FALSE),
      'fit'              => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
      'number_parts'     => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
      'tab_parent'       => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'tab_root'         => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'title'            => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'title_callback'   => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'title_arguments'  => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'type'             => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
      'block_callback'   => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'description'      => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'position'         => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'weight'           => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
      'file'             => array('type' => 'text', 'size' => 'medium')
    ),
    'indexes' => array(
      'fit'        => array('fit'),
      'tab_parent' => array('tab_parent')
    ),
    'primary key' => array('path'),
  );

  $schema['menu_links'] = array(
    'fields' => array(
      'menu_name'    => array('type' => 'varchar', 'length' => 64, 'not null' => TRUE, 'default' => ''),
      'mlid'         => array('type' => 'serial', 'not null' => TRUE),
      'plid'         => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
      'href'         => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'router_path'  => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'hidden'       => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'small'),
      'external'     => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'small'),
      'has_children' => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
      'expanded'     => array('type' => 'int', 'not null' => TRUE, 'default' => 0, 'size' => 'small'),
      'weight'       => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
      'depth'        => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
      'p1'           => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
      'p2'           => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
      'p3'           => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
      'p4'           => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
      'p5'           => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
      'p6'           => array('type' => 'int', 'not null' => TRUE, 'default' => 0),
      'module'       => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => 'system'),
      'link_title'   => array('type' => 'varchar', 'length' => 255, 'not null' => TRUE, 'default' => ''),
      'options'      => array('type' => 'text', 'not null' => FALSE)
    ),
    'indexes' => array(
      'expanded_children' => array('expanded', 'has_children'),
      'menu_name_path' => array('menu_name', 'href'),
      'parents' => array('plid', 'p1', 'p2', 'p3', 'p4', 'p5')
    ),
    'primary key' => array('mlid'),
  );

  $schema['cache_menu'] = drupal_get_schema_unprocessed('system', 'cache');

  return $schema;
}