You are here

function simplenews_subscription_filter_form in Simplenews 6.2

Same name and namespace in other branches
  1. 5 simplenews.module \simplenews_subscription_filter_form()
  2. 6 simplenews.admin.inc \simplenews_subscription_filter_form()
  3. 7.2 includes/simplenews.admin.inc \simplenews_subscription_filter_form()
  4. 7 includes/simplenews.admin.inc \simplenews_subscription_filter_form()

Return form for subscription filters.

See also

simplenews_subscription_filter_form_submit()

1 call to simplenews_subscription_filter_form()
simplenews_subscription_admin in includes/simplenews.admin.inc
Menu callback: subscription administration.

File

includes/simplenews.admin.inc, line 1225
Newsletter admin, subscription admin, simplenews settings

Code

function simplenews_subscription_filter_form() {

  // Current filter selections in $session var; stored at form submission
  // Example: array('newsletter' => 'all', 'email' => 'hotmail')
  $session = isset($_SESSION['simplenews_subscriptions_filter']) ? $_SESSION['simplenews_subscriptions_filter'] : '';
  $session = is_array($session) ? $session : _simplenews_subscription_filter_default();
  $filters = simplenews_subscription_filters();
  $form['filters'] = array(
    '#type' => 'fieldset',
    '#title' => t('Subscription filters'),
    '#collapsible' => FALSE,
    '#prefix' => '<div class="simplenews-subscription-filter">',
    '#suffix' => '</div>',
  );

  // Filter values are default
  $form['filters']['newsletter'] = array(
    '#type' => 'select',
    '#title' => $filters['newsletter']['title'],
    '#options' => $filters['newsletter']['options'],
    '#default_value' => $session['newsletter'],
  );
  $form['filters']['email'] = array(
    '#type' => 'textfield',
    '#title' => $filters['email']['title'],
    '#default_value' => $session['email'],
  );
  $form['filters']['submit'] = array(
    '#type' => 'submit',
    '#value' => t('Filter'),
    '#prefix' => '<span class="spacer" />',
  );

  // Add Reset button if filter is in use
  if ($session != _simplenews_subscription_filter_default()) {
    $form['filters']['reset'] = array(
      '#type' => 'submit',
      '#value' => t('Reset'),
    );
  }
  $form['#submit'][] = 'simplenews_subscription_filter_form_submit';
  return $form;
}