You are here

function availability_calendars_options in Availability Calendars 6.2

Same name and namespace in other branches
  1. 5 availability_calendars.module \availability_calendars_options()
  2. 6 availability_calendars.module \availability_calendars_options()
  3. 7.2 availability_calendars.inc \availability_calendars_options()

availability_calendars status options. note: we return unescaped labels as they might be used as options in a select where they get escaped again

Return value

array array with the classes as the keys and the translated but unescaped labels as values

2 calls to availability_calendars_options()
availability_calendars_node_edit_calendar_month_form in ./availability_calendars.node.inc
Populates the node edit calendar month form.
availability_calendars_node_edit_form_alter in ./availability_calendars.node.inc
Alters the form for node edit forms for supported content types.

File

./availability_calendars.inc, line 41
General helper methods for Availability Calendars, like database access and settings.

Code

function availability_calendars_options() {
  static $ret = NULL;
  if ($ret === NULL) {
    $ret = array();
    $settings = availability_calendars_get_settings();
    $statuses = availability_calendars_get_states();
    foreach ($statuses as $class => $state) {
      $ret[$class] = $state['label'];
    }
    if ($settings->splitday === 1) {
      foreach ($statuses as $class => $state) {
        $sub = $statuses;
        unset($sub[$class]);
        foreach ($sub as $subclass => $substate) {
          $ret["{$class}-am {$subclass}-pm"] = t('!a (am)/!b (pm)', array(
            '!a' => $state['label'],
            '!b' => $substate['label'],
          ));
        }
      }
    }
  }
  return $ret;
}