You are here

function sms_carriers_admin_form in SMS Framework 6.2

Same name and namespace in other branches
  1. 7 sms.admin.inc \sms_carriers_admin_form()

Form builder for the list of sms carriers.

See also

sms_carriers_admin_form_submit().

1 string reference to 'sms_carriers_admin_form'
sms_menu in ./sms.module
Implements hook_menu().

File

./sms.admin.inc, line 137
The admin sms functions.

Code

function sms_carriers_admin_form() {
  $carriers = sms_carriers();
  $form = array();
  foreach ($carriers as $id => $carrier) {
    $actions = array();
    $css_safe_id = str_replace('.', '-', $id);
    switch ($carrier['type']) {
      case SMS_CARRIER_DEFAULT:
        $storage = t('Default');
        break;
      case SMS_CARRIER_OVERRIDDEN:
        $storage = t('Overridden');
        break;
      case SMS_CARRIER_NORMAL:
        $storage = t('Normal');
        break;
    }
    $form['status']['#tree'] = TRUE;
    $form['status'][$css_safe_id] = array(
      '#type' => 'checkbox',
      '#title' => $carrier['name'],
      '#description' => $storage,
      '#default_value' => $carrier['status'],
    );
    $form['domain'][$css_safe_id] = array(
      '#type' => 'markup',
      '#value' => $id,
    );
    $actions[] = l(t('Edit'), "admin/smsframework/carriers/{$id}");
    if ($carrier['type'] == SMS_CARRIER_OVERRIDDEN) {
      $actions[] = l(t('Revert'), "admin/smsframework/carriers/delete/{$id}");
    }
    else {
      if ($carrier['type'] == SMS_CARRIER_NORMAL) {
        $actions[] = l(t('Delete'), "admin/smsframework/carriers/delete/{$id}");
      }
    }
    $form['actions'][$css_safe_id] = array(
      '#type' => 'markup',
      '#value' => implode(' | ', $actions),
    );
  }
  $form['submit'] = array(
    '#type' => 'submit',
    '#value' => t('Save settings'),
  );
  return $form;
}