You are here

function menu_position_menu_position_rule_pages_form in Menu Position 7

Same name and namespace in other branches
  1. 6 plugins/menu_position.pages.inc \menu_position_menu_position_rule_pages_form()
  2. 7.2 plugins/menu_position.pages.inc \menu_position_menu_position_rule_pages_form()

Adds form elements for the "node type" plugin to the rule configuration form.

Parameters

$form: A reference to the "add/edit rule" form array. New form elements should be added directly to this array.

$form_state: A reference to the current form state.

File

plugins/menu_position.pages.inc, line 40
Provides the "Pages" rule plugin for the Menu Position module.

Code

function menu_position_menu_position_rule_pages_form(&$form, &$form_state) {

  // If this is an existing rule, load the variables stored in the rule for this plugin.
  $variables = !empty($form_state['#menu-position-rule']['conditions']['pages']) ? $form_state['#menu-position-rule']['conditions']['pages'] : array();
  $form['conditions']['pages'] = array(
    '#type' => 'fieldset',
    '#title' => t('Pages'),
    '#collapsible' => TRUE,
    '#collapsed' => TRUE,
    '#attached' => array(
      'js' => array(
        drupal_get_path('module', 'menu_position') . '/plugins/menu_position.pages.js',
      ),
    ),
  );
  $form['conditions']['pages']['pages'] = array(
    '#type' => 'textarea',
    '#title' => t('Pages'),
    '#default_value' => !empty($variables['pages']) ? $variables['pages'] : '',
    '#description' => t("Specify pages by using their paths. Enter one path per line. The '*' character is a wildcard. Example paths are %blog for the blog page and %blog-wildcard for every personal blog. %front is the front page.", array(
      '%blog' => 'blog',
      '%blog-wildcard' => 'blog/*',
      '%front' => '<front>',
    )),
    '#weight' => -20,
  );

  // Add a submit handler.
  $form['#submit'][] = 'menu_position_menu_position_rule_pages_form_submit';
}