/** * @param string $order * @throws InvalidOrderException */ protected function orderData($order) { try { $order = explode(" ", $order); if (in_array($order[0], $this->getColumnNames()) && in_array($order[1], array("ASC", "DESC")) && $this['columns']->components[$order[0]]->isSortable()) { $this->dataSource->orderData($order[0], $order[1]); } else { throw new InvalidOrderException("Neplatné usporiadanie."); } } catch (InvalidOrderException $e) { $this->flashMessage($e->getMessage(), "grid-error"); $this->redirect("this", array("order" => NULL)); } }