id = (int)$id; $this->userId = (int)$userId; $this->date = DateTime::createFromFormat("Y-m-d", $date); } /** * create an Attendance from an assoziative array * * @param array $member * @return Attendance */ static function constructFromArray($member){ return new Attendance($member['id'], $member['userId'], $member['date']); } /** * request a users attendances from the database * * @param PDO $db * @param int/string $userId * @return array with attendances */ static function getUsersAttendance($db, $userId){ $userId = (int)$userId; $query = "SELECT `id`, `date` FROM `cwsvjudo`.`anwesenheit` WHERE `userId` = :userId"; $response = dbQuery($db, $query, [':userId'=>['value'=>$userId, 'data_type'=>PDO::PARAM_INT]]); $attendances = []; foreach($response as $r){ $attendances[] = new Attendance($r['id'], $userId, $r['date']); } return $attendances; } /** * html table with users attendances * * @param PDO $db * @param string/int $userId * @return string with html code of the attendance table */ static function userAttendanceHtmlTable($db, $userId){ $htmlTableString = ""; $htmlTableString .= ""; return $htmlTableString; } static function groupAttendances($attendances){ $groupedAttendances = []; foreach($attendances as $a){ $year = $a->date->format("Y"); if(!array_key_exists($year, $groupedAttendances)) $groupedAttendances[$year] = []; $month = $a->date->format("m"); if(!array_key_exists($month, $groupedAttendances[$year])) $groupedAttendances[$year][$month] = []; $day = $a->date->format("d"); $groupedAttendances[$year][$month][]=$day; } return $groupedAttendances; } } ?> participo
Eigene Anwesenheiten". Attendance::userAttendanceHtmlTable($dbConnection, $userData['id']) ); require_once("./lib/participoLib/participo.php"); } // ... and kids attendances if (!empty($usersKids)){ echo("

Anwesenheit der Kinder

"); foreach($usersKids as $k){ if($userData['id']==$k['kidId']) continue; echo( "

".$k['vorname']." ".$k['name']."

". Attendance::userAttendanceHtmlTable($dbConnection, $k['kidId']) ); } } ?>