function view_mode_page_add_entity_pattern in View Mode Page 7.2
Same name and namespace in other branches
- 8.2 view_mode_page.module \view_mode_page_add_entity_pattern()
Add a URL pattern to the database.
This does not add the pattern to the menu_router table, but only adds it to the View Mode Page table.
With entity support, we needed new arguments so this pattern was going to change. The function takes a single argument: an array of possible settings which include:
- content_type
- entity_type
- url_pattern
- show_title
- title
- view_mode
Triggers two hooks: view_mode_page_entity_pattern_added and view_mode_page_pattern_added. The first hook is preferred and the second may disappear in future versions.
Parameters
array $settings: An array of settings
5 calls to view_mode_page_add_entity_pattern()
- ViewModePageTestCase::testAddEntityPattern in ./
view_mode_page.test - Test adding a pattern with the entity based function
- ViewModePageTestCase::testDeleteEntityPattern in ./
view_mode_page.test - Test deleting a pattern with the entity based function
- ViewModePageTestCase::testDeletePattern in ./
view_mode_page.test - Test deleting a pattern with the non-entity based function
- view_mode_page_add_pattern in ./
view_mode_page.module - DEPRECATED: Add a URL pattern to the database.
- view_mode_page_form_submit in ./
view_mode_page.module - Implements hook_form_submit().
File
- ./
view_mode_page.module, line 521 - View Mode Page module allows users to add a page for a specific view mode.
Code
function view_mode_page_add_entity_pattern($settings) {
$settings = view_mode_page_assert_settings($settings, array(
'content_type',
'url_pattern',
'view_mode',
), array(
'entity_type' => 'node',
'show_title' => FALSE,
'title' => '',
));
$query = db_insert('view_mode_page');
$result = $query
->fields(array(
'content_type' => $settings['content_type'],
'view_mode' => $settings['view_mode'],
'url_pattern' => $settings['url_pattern'],
'show_title' => intval($settings['show_title']),
'title' => $settings['title'],
'entity_type' => $settings['entity_type'],
))
->execute();
// invoke our hooks
module_invoke_all('view_mode_page_pattern_added', $settings['content_type'], $settings['view_mode'], $settings['url_pattern'], $result);
module_invoke_all('view_mode_page_entity_pattern_added', $settings['entity_type'], $settings['content_type'], $settings['view_mode'], $settings['url_pattern'], $result);
return $result;
}