Skip to content

Instantly share code, notes, and snippets.

@atishgoswami
Created May 7, 2013 12:24
Show Gist options
  • Save atishgoswami/5532173 to your computer and use it in GitHub Desktop.
Save atishgoswami/5532173 to your computer and use it in GitHub Desktop.
Condition for comparing only the day and month of a repeating holiday date
if (!$conditionState) {
$condition = array(
'OR' => array(
array(
'Holiday.date' => array(
$dates['start'], $dates['end'],
)
),
array(
'EXTRACT(MONTH FROM Holiday.date)' => date('m', strtotime($dates['start'])),
'EXTRACT(DAY FROM Holiday.date)' => date('d', strtotime($dates['start'])),
'Holiday.repeat_every_year' => 1,
),
array(
'EXTRACT(MONTH FROM Holiday.date)' => date('m', strtotime($dates['end'])),
'EXTRACT(DAY FROM Holiday.date)' => date('d', strtotime($dates['end'])),
'Holiday.repeat_every_year' => 1,
),
),
'AND' => array(
'Holiday.company_id ' => AuthComponent::user('company_id'),
)
);
} else {
$condition = array(
'OR' => array(
array(
'Holiday.date >=' => $dates['start'],
'Holiday.date <=' => $dates['end'],
),
array(
'DATE_FORMAT(Holiday.date, "'.$year.'-%m-%d") >=' => $dates['start'],
'DATE_FORMAT(Holiday.date, "'.$year.'-%m-%d") <=' => $dates['end'],
'Holiday.repeat_every_year' => 1,
),
),
'AND' => array(
'Holiday.company_id ' => AuthComponent::user('company_id'),
)
);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment