danielebarchiesi@0: title = $t('Default'); danielebarchiesi@0: $shortcut_set->links = array( danielebarchiesi@0: array( danielebarchiesi@0: 'link_path' => 'node/add', danielebarchiesi@0: 'link_title' => $t('Add content'), danielebarchiesi@0: 'weight' => -20, danielebarchiesi@0: ), danielebarchiesi@0: array( danielebarchiesi@0: 'link_path' => 'admin/content', danielebarchiesi@0: 'link_title' => $t('Find content'), danielebarchiesi@0: 'weight' => -19, danielebarchiesi@0: ), danielebarchiesi@0: ); danielebarchiesi@0: // If Drupal is being installed, rebuild the menu before saving the shortcut danielebarchiesi@0: // set, to make sure the links defined above can be correctly saved. (During danielebarchiesi@0: // installation, the menu might not have been built at all yet, or it might danielebarchiesi@0: // have been built but without the node module's links in it.) danielebarchiesi@0: if (drupal_installation_attempted()) { danielebarchiesi@0: menu_rebuild(); danielebarchiesi@0: } danielebarchiesi@0: shortcut_set_save($shortcut_set); danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: /** danielebarchiesi@0: * Implements hook_uninstall(). danielebarchiesi@0: */ danielebarchiesi@0: function shortcut_uninstall() { danielebarchiesi@0: drupal_load('module', 'shortcut'); danielebarchiesi@0: // Delete the menu links associated with each shortcut set. danielebarchiesi@0: foreach (shortcut_sets() as $shortcut_set) { danielebarchiesi@0: menu_delete_links($shortcut_set->set_name); danielebarchiesi@0: } danielebarchiesi@0: } danielebarchiesi@0: danielebarchiesi@0: /** danielebarchiesi@0: * Implements hook_schema(). danielebarchiesi@0: */ danielebarchiesi@0: function shortcut_schema() { danielebarchiesi@0: $schema['shortcut_set'] = array( danielebarchiesi@0: 'description' => 'Stores information about sets of shortcuts links.', danielebarchiesi@0: 'fields' => array( danielebarchiesi@0: 'set_name' => array( danielebarchiesi@0: 'type' => 'varchar', danielebarchiesi@0: 'length' => 32, danielebarchiesi@0: 'not null' => TRUE, danielebarchiesi@0: 'default' => '', danielebarchiesi@0: 'description' => "Primary Key: The {menu_links}.menu_name under which the set's links are stored.", danielebarchiesi@0: ), danielebarchiesi@0: 'title' => array( danielebarchiesi@0: 'type' => 'varchar', danielebarchiesi@0: 'length' => 255, danielebarchiesi@0: 'not null' => TRUE, danielebarchiesi@0: 'default' => '', danielebarchiesi@0: 'description' => 'The title of the set.', danielebarchiesi@0: ), danielebarchiesi@0: ), danielebarchiesi@0: 'primary key' => array('set_name'), danielebarchiesi@0: 'foreign keys' => array( danielebarchiesi@0: 'menu_name' => array( danielebarchiesi@0: 'table' => 'menu_links', danielebarchiesi@0: 'columns' => array('set_name' => 'menu_name'), danielebarchiesi@0: ), danielebarchiesi@0: ), danielebarchiesi@0: ); danielebarchiesi@0: danielebarchiesi@0: $schema['shortcut_set_users'] = array( danielebarchiesi@0: 'description' => 'Maps users to shortcut sets.', danielebarchiesi@0: 'fields' => array( danielebarchiesi@0: 'uid' => array( danielebarchiesi@0: 'type' => 'int', danielebarchiesi@0: 'unsigned' => TRUE, danielebarchiesi@0: 'not null' => TRUE, danielebarchiesi@0: 'default' => 0, danielebarchiesi@0: 'description' => 'The {users}.uid for this set.', danielebarchiesi@0: ), danielebarchiesi@0: 'set_name' => array( danielebarchiesi@0: 'type' => 'varchar', danielebarchiesi@0: 'length' => 32, danielebarchiesi@0: 'not null' => TRUE, danielebarchiesi@0: 'default' => '', danielebarchiesi@0: 'description' => "The {shortcut_set}.set_name that will be displayed for this user.", danielebarchiesi@0: ), danielebarchiesi@0: ), danielebarchiesi@0: 'primary key' => array('uid'), danielebarchiesi@0: 'indexes' => array( danielebarchiesi@0: 'set_name' => array('set_name'), danielebarchiesi@0: ), danielebarchiesi@0: 'foreign keys' => array( danielebarchiesi@0: 'set_user' => array( danielebarchiesi@0: 'table' => 'users', danielebarchiesi@0: 'columns' => array('uid' => 'uid'), danielebarchiesi@0: ), danielebarchiesi@0: 'set_name' => array( danielebarchiesi@0: 'table' => 'shortcut_set', danielebarchiesi@0: 'columns' => array('set_name' => 'set_name'), danielebarchiesi@0: ), danielebarchiesi@0: ), danielebarchiesi@0: ); danielebarchiesi@0: danielebarchiesi@0: return $schema; danielebarchiesi@0: }