/** * Read selected equipment from post data * @param int $checkForSportID optional * @return array */ public static function readEquipmentFromPost($checkForSportID = false) { $SelectedEquipment = array(); if (!isset($_POST['equipment']) || !is_array($_POST['equipment'])) { return $SelectedEquipment; } foreach ($_POST['equipment'] as $value) { if (is_array($value)) { $SelectedEquipment = array_merge($SelectedEquipment, array_keys($value)); } else { $SelectedEquipment[] = $value; } } if ($checkForSportID) { $Factory = new Factory(SessionAccountHandler::getId()); $TypeIDs = $Factory->equipmentTypeForSport($checkForSportID, true); foreach ($SelectedEquipment as $i => $id) { $Equipment = $Factory->equipment($id); if (!in_array($Equipment->typeid(), $TypeIDs)) { unset($SelectedEquipment[$i]); } } } return $SelectedEquipment; }
/** * @return array */ protected function generateDataForEquipment() { if ($this->EquipmentTypeID == 0) { return array(); } $RowsByID = array(); $Rows = array(); $Factory = new Factory($this->AccountID); $Statement = $this->createStatementToFetchEquipment(); while ($data = $Statement->fetch()) { if (!isset($RowsByID[$data['equipmentid']])) { $RowsByID[$data['equipmentid']] = array(); } $RowsByID[$data['equipmentid']][$data['m']] = $data['num'] . 'x'; } foreach ($RowsByID as $id => $rowData) { $Rows[$Factory->equipment($id)->name()] = $rowData; } return $Rows; }