You are here

function scheduler_form_pane_content_type_render in Scheduler 8

Same name and namespace in other branches
  1. 7 plugins/content_types/scheduler_form_pane.inc \scheduler_form_pane_content_type_render()
  2. 2.x plugins/content_types/scheduler_form_pane.inc \scheduler_form_pane_content_type_render()

Content type render callback.

1 string reference to 'scheduler_form_pane_content_type_render'
scheduler_form_pane.inc in plugins/content_types/scheduler_form_pane.inc
Scheduling options for node forms.

File

plugins/content_types/scheduler_form_pane.inc, line 30
Scheduling options for node forms.

Code

function scheduler_form_pane_content_type_render($subtype, $conf, $panel_args, &$context) {
  $block = new stdClass();
  $block->module = 'node_form';
  $block->title = t('Scheduler options');
  $block->delta = 'scheduler-options';
  if (isset($context->form)) {
    if (isset($context->form['scheduler_settings'])) {

      // Lift the form elements from the original form and make sure it renders.
      $block->content['scheduler_settings'] = $context->form['scheduler_settings'];
      unset($block->content['scheduler_settings']['#pre_render']);
      unset($block->content['scheduler_settings']['#theme_wrappers']);
      $block->content['scheduler_settings']['#type'] = '';

      // Deny access on the original form element rather than removing so that
      // vertical tabs doesn't clone it. I think this is due to references.
      $context->form['scheduler_settings']['#access'] = FALSE;
    }
  }
  else {

    // Display placeholder information.
    $block->content = t('Scheduler options');
  }
  return $block;
}