You are here

function availability_calendars_month_meta in Availability Calendars 7.2

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

Utility function to create an array of meta data for the month.

Parameters

int $year:

int $month:

object $settings:

Return value

array

2 calls to availability_calendars_month_meta()
availability_calendars_node_edit_calendar_month_form in ./availability_calendars.node.inc
Populates the node edit calendar month form.
theme_availability_calendars_month in ./availability_calendars.page.inc
Themes the calendar for a given month.

File

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

Code

function availability_calendars_month_meta($year, $month, $settings) {
  $month_meta['daysinmonth'] = date("t", mktime(0, 0, 0, $month, 1, $year));
  $month_meta['firstday'] = date("w", mktime(0, 0, 0, $month, 1, $year)) + $settings->startofweek;
  $temp_days = $month_meta['firstday'] + $month_meta['daysinmonth'];

  // padding
  $month_meta['weeksinmonth'] = ceil($temp_days / 7);

  // Stop empty weeks occuring at start of month
  if ($month_meta['firstday'] > 6) {
    $month_meta['firstday'] = $month_meta['firstday'] - 7;
    $month_meta['weeksinmonth']--;
  }
  return $month_meta;
}