/** * @param GradebookItem $item1 * @param GradebookItem $item2 * @return int */ public function sort_by_date($item1, $item2) { if (is_int($item1->get_date())) { $timestamp1 = $item1->get_date(); } else { $date = $item1->get_date(); if (!empty($date)) { $timestamp1 = api_strtotime($date, 'UTC'); } else { $timestamp1 = null; } } if (is_int($item2->get_date())) { $timestamp2 = $item2->get_date(); } else { $timestamp2 = api_strtotime($item2->get_date(), 'UTC'); } if ($timestamp1 == $timestamp2) { return $this->sort_by_name($item1, $item2); } else { return $timestamp1 < $timestamp2 ? -1 : 1; } }