public static function update($drinkki_id) { $params = $_POST; $v = new Valitron\Validator($_POST); $v->rule('required', 'nimi')->message('{field} pitää antaa')->label('Nimi'); $v->rule('required', 'ainekset')->message('Valitse vähintään yksi {field}')->label('Aines'); $v->rule('lengthMin', 'nimi', 1)->message('{field} pitää olla 1-50 merkkiä pitkä')->label('Nimen'); $v->rule('lengthMax', 'nimi', 50)->message('{field} pitää olla 1-50 merkkiä pitkä')->label('Nimen'); $v->rule('lengthMax', 'tyyppi', 30)->message('{field} saa olla korkeintaan 30 merkkiä pitkä')->label('Tyyppi'); $v->rule('lengthMax', 'lasi', 30)->message('{field} nimi saa olla korkeintaan 30 merkkiä pitkä')->label('Lasin'); if (!isset($params['alkoholiton'])) { $params['alkoholiton'] = 0; } $params['tyovaiheet'] = " "; $drink = new Drink(array('nimi' => $params['nimi'], 'tyyppi' => $params['tyyppi'], 'lasi' => $params['lasi'], 'alkoholiton' => $params['alkoholiton'], 'kuvaus' => $params['kuvaus'], 'tyovaiheet' => $params['tyovaiheet'])); if ($v->validate()) { $ainekset = $params['ainekset']; $drink->update($drinkki_id, $ainekset); Redirect::to('/drinks/' . $drink->drinkki_id, array('message' => 'Reseptiä muokattu onnistuneesti')); } else { if (!isset($params['ainekset'])) { $ainekset = array(); } else { $ainekset = $params['ainekset']; } $aineslista = Aines::all(); $drink->drinkki_id = $drinkki_id; View::make('drinks/edit.html', array('errors' => $v->errors(), 'attributes' => $drink, 'ainekset' => $ainekset, 'aineslista' => $aineslista)); } }
public static function update($id) { $params = $_POST; $category = $params['category']; $attributes = array('id' => $id, 'name' => $params['name'], 'publisher' => $params['publisher'], 'published' => $params['published'], 'category_id' => $category, 'description' => $params['description']); // Alustetaan drink-olio käyttäjän syöttämillä tiedoilla $drink = new Drink($attributes); $errors = $drink->errors(); $categories = Category::all(); if (count($errors) > 0) { View::make('drink/edit.html', array('errors' => $errors, 'attributes' => $drink, 'categories' => $categories)); } else { // Kutsutaan alustetun olion update-metodia, joka päivittää pelin tiedot tietokannassa $drink->update(); Redirect::to('/drink/' . $drink->id, array('message' => 'Drinkkiä on muokattu onnistuneesti!')); } }