You are here

function page_manager_page_manager_pages_to_hook_code in Chaos Tool Suite (ctools) 7

Same name and namespace in other branches
  1. 6 page_manager/page_manager.module \page_manager_page_manager_pages_to_hook_code()

Callback to bulk export page manager pages.

File

page_manager/page_manager.module, line 1190
The page manager module provides a UI and API to manage pages.

Code

function page_manager_page_manager_pages_to_hook_code($names = array(), $name = 'foo') {
  $schema = ctools_export_get_schema('page_manager_pages');
  $export = $schema['export'];
  $objects = ctools_export_load_object('page_manager_pages', 'names', array_values($names));
  if ($objects) {
    $code = "/**\n";
    $code .= " * Implements hook_{$export['default hook']}()\n";
    $code .= " */\n";
    $code .= "function " . $name . "_{$export['default hook']}() {\n";
    foreach ($objects as $object) {

      // Have to implement our own because this export func sig requires it.
      $code .= $export['export callback']($object, TRUE, '  ');
      $code .= "  \${$export['identifier']}s['" . check_plain($object->{$export['key']}) . "'] = \${$export['identifier']};\n\n";
    }
    $code .= "  return \${$export['identifier']}s;\n";
    $code .= "}\n";
    return $code;
  }
}