5 * Installation routines for page manager module.
9 * Implements hook_schema().
11 function page_manager_schema() {
12 // This should always point to our 'current' schema. This makes it relatively easy
13 // to keep a record of schema as we make changes to it.
14 return page_manager_schema_1();
18 * Schema version 1 for Panels in D6.
20 function page_manager_schema_1() {
21 $schema['page_manager_handlers'] = array(
23 'identifier' => 'handler',
24 'bulk export' => TRUE,
25 'export callback' => 'page_manager_export_task_handler',
26 'load callback' => 'page_manager_export_task_handler_load',
27 'delete callback' => 'page_manager_delete_task_handler',
28 'primary key' => 'did',
30 'owner' => 'page_manager',
31 'api' => 'pages_default',
32 'minimum_version' => 1,
33 'current_version' => 1,
40 'description' => 'Primary ID field for the table. Not used for anything except internal lookups.',
46 'description' => 'Unique ID for this task handler. Used to identify it programmatically.',
51 'description' => 'ID of the task this handler is for.',
56 'description' => 'ID of the subtask this handler is for.',
63 'description' => 'ID of the task handler being used.',
67 'description' => 'The order in which this handler appears. Lower numbers go first.',
72 'description' => 'Serialized configuration of the handler, if needed.',
75 'object default' => array(),
78 'primary key' => array('did'),
79 'unique keys' => array(
80 'name' => array('name'),
82 'indexes' => array('fulltask' => array('task', 'subtask', 'weight')),
85 $schema['page_manager_weights'] = array(
86 'description' => 'Contains override weights for page_manager handlers that are in code.',
91 'description' => 'Unique ID for this task handler. Used to identify it programmatically.',
97 'description' => 'The order in which this handler appears. Lower numbers go first.',
100 'primary key' => array('name'),
102 'weights' => array('name', 'weight'),
106 $schema['page_manager_pages'] = array(
107 'description' => 'Contains page subtasks for implementing pages with arbitrary tasks.',
109 'identifier' => 'page',
110 'bulk export' => TRUE,
111 'export callback' => 'page_manager_page_export',
113 'owner' => 'page_manager',
114 'api' => 'pages_default',
115 'minimum_version' => 1,
116 'current_version' => 1,
123 'description' => 'Primary ID field for the table. Not used for anything except internal lookups.',
129 'description' => 'Unique ID for this subtask. Used to identify it programmatically.',
134 'description' => 'What type of page this is, so that we can use the same mechanism for creating tighter UIs for targeted pages.',
137 'admin_title' => array(
140 'description' => 'Human readable title for this page subtask.',
142 'admin_description' => array(
145 'description' => 'Administrative description of this item.',
146 'object default' => '',
151 'description' => 'The menu path that will invoke this task.',
156 'description' => 'Access configuration for this path.',
159 'object default' => array(),
164 'description' => 'Serialized configuration of Drupal menu visibility settings for this item.',
167 'object default' => array(),
169 'arguments' => array(
172 'description' => 'Configuration of arguments for this menu item.',
175 'object default' => array(),
180 'description' => 'Serialized configuration of the page, if needed.',
183 'object default' => array(),
186 'primary key' => array('pid'),
187 'unique keys' => array(
188 'name' => array('name'),
190 'indexes' => array('task' => array('task')),
197 * Implements hook_install().
199 function page_manager_install() {
201 ->fields(array('weight' => 99))
202 ->condition('name', 'page_manager')