You are here

function oa_messages_oa_user_settings_form_alter in Open Atrium Core 7.2

Implements hook_oa_user_settings_form_alter().

File

modules/oa_messages/oa_messages.admin.inc, line 11
Provides forms and pages for administering oa_messages.

Code

function oa_messages_oa_user_settings_form_alter(&$form, &$form_state, $user) {
  drupal_set_title(t('Notification Settings'));
  $defaults = isset($user->data['oa_messages']) ? $user->data['oa_messages'] : array();
  $form['submit_top'] = array(
    '#type' => 'submit',
    '#value' => t('Save configuration'),
    '#attributes' => array(
      'class' => array(
        'btn-primary',
      ),
    ),
    '#weight' => -99,
  );
  $form['oa_messages'] = array(
    '#type' => 'fieldgroup',
    '#tree' => TRUE,
  );
  $form['oa_messages']['delivery'] = array(
    '#type' => 'container',
    '#attributes' => array(
      'class' => array(
        'delivery-prefs',
      ),
    ),
  );
  $form['oa_messages']['delivery']['email_type'] = array(
    '#type' => 'radios',
    '#title' => t('Select your email preference:'),
    '#prefix' => '<h4>' . t('Delivery Preferences') . '</h4>',
    '#options' => array(
      EMAIL_TYPE_PLAIN => 'Plain text',
      EMAIL_TYPE_HTML => 'HTML',
    ),
    '#default_value' => isset($defaults['email_type']) ? $defaults['email_type'] : EMAIL_TYPE_HTML,
  );
  $form['oa_messages']['message_notifications'] = oa_messages_build_message_notifications_table($form_state, $user, $defaults);
  $form['oa_messages']['message_notifications']['pager'] = array(
    '#theme' => 'pager',
  );
  $form['oa_messages']['subscribed_content'] = array(
    '#prefix' => '<div class="subscribed-content">',
    '#markup' => l(t('Subscribed Content') . html_entity_decode(' &#x25b6;'), 'user/' . $user->uid . '/subscribed', array(
      'html' => TRUE,
    )),
    '#suffix' => '</div>',
  );
  $form['#attached']['js'][] = drupal_get_path('module', 'oa_messages') . '/js/oa-messages-settings.js';
  $form['#attached']['css'][] = drupal_get_path('module', 'oa_messages') . '/css/oa-messages-settings.css';
}