You are here

function availability_calendars_get_settings_old in Availability Calendars 7.2

Same name and namespace in other branches
  1. 6.2 availability_calendars.install \availability_calendars_get_settings_old()

Helper method for availability_calendars_update_7202. Returns setings, at node or system scope, based on the old way of storing the settings.

1 call to availability_calendars_get_settings_old()
availability_calendars_update_7202 in ./availability_calendars.install
Optimize storage for Availability Calendars settings (issue #31107230).

File

./availability_calendars.install, line 478
Install, update and uninstall functions for the Availability Calendars module.

Code

function availability_calendars_get_settings_old($arg = NULL) {
  $settings = new stdClass();
  if ($arg !== NULL) {

    // Per node settings
    $settings->startofweek = variable_get('availability_calendars_settings_node_' . $arg . '_startofweek');
    $settings->showteaser = variable_get('availability_calendars_settings_node_' . $arg . '_showteaser');
    $settings->showkey = variable_get('availability_calendars_settings_node_' . $arg . '_showkey');
    $settings->firstletter = variable_get('availability_calendars_settings_node_' . $arg . '_firstletter');
    $settings->hideold = variable_get('availability_calendars_settings_node_' . $arg . '_hideold');
    $settings->defaultstatus = variable_get('availability_calendars_settings_node_' . $arg . '_defaultstatus');
    $settings->monthcount = variable_get('availability_calendars_settings_node_' . $arg . '_monthcount');
    $settings->splitday = variable_get('availability_calendars_settings_node_' . $arg . '_splitday');
  }
  else {
    $settings->startofweek = variable_get('availability_calendars_settings_system_startofweek');
    $settings->showteaser = variable_get('availability_calendars_settings_system_showteaser');
    $settings->showkey = variable_get('availability_calendars_settings_system_showkey');
    $settings->firstletter = variable_get('availability_calendars_settings_system_firstletter');
    $settings->hideold = variable_get('availability_calendars_settings_system_hideold');
    $settings->defaultstatus = variable_get('availability_calendars_settings_system_defaultstatus');
    $settings->monthcount = variable_get('availability_calendars_settings_system_monthcount');
    $settings->splitday = variable_get('availability_calendars_settings_system_splitday');
    $settings->nodeview = variable_get('availability_calendars_settings_system_nodeview');
  }

  // Remove NULL values
  $settings = (array) $settings;

  // PHP4 cannot iterate objects
  $result = array();
  foreach ($settings as $key => $value) {
    if ($value !== NULL) {
      $result[$key] = $value;
    }
  }
  return $result;
}