public static function store() { $params = $_POST; $course_params = array('name' => $params['name'], 'city' => $params['city']); $course = new Course($course_params); $errors = $course->errors(); $number_of_holes = count($params) - count($course_params) - 1; // one hidden input for hole_count // Check hole validity before saving anything $holes = array(); for ($hole_num = 1; $hole_num <= $number_of_holes; $hole_num++) { $par = $params['hole' . $hole_num]; $hole = new Hole(array('hole_num' => $hole_num, 'par' => $par)); $holes[] = $hole; $errors = array_merge($errors, $hole->errors()); } if (count($errors) == 0) { // Course and holes were all valid $courseid = $course->save(); $course->number_of_holes = count($holes); foreach ($holes as $hole) { $hole->courseid = $courseid; $hole->save(); } Redirect::to('/course/' . $courseid, array('message' => 'Rata ja sen väylät lisätty.')); } else { View::make('course/new.html', array('errors' => $errors, 'attributes' => $params, 'hole_count' => $params['hole_count'])); } }
public static function sandbox() { // Testaa koodiasi täällä $course = new Course(array('name' => '', 'city' => '')); $errors = $course->errors(); Kint::dump($errors); $hole = new Hole(array('hole_num' => 'yksi', 'par' => 'kolme')); $errors = $hole->errors(); Kint::dump($errors); echo Course::next_courseid(); }