public static function store() { self::check_logged_in(); $params = $_POST; $attributes = array('fname' => $params['fname'], 'price' => $params['price'], 'sale' => $params['sale'], 'description' => $params['description'], 'orderit' => $params['orderit']); $tuote = new Tuote($attributes); $errors = $tuote->errors(); if (count($errors) == 0) { $tuote->save(); $id = $tuote->id; $tuoteryhmat = $params['tuoteryhmat']; foreach ($tuoteryhmat as $tuoteryhma) { $tuote->createTuoteYhdiste($id, $tuoteryhma); } Redirect::to('/tuote/' . $tuote->id, array('message' => 'Uusi tuote on luotu')); } else { $tuoteryhmat = Tuoteryhma::all(); View::make('tuote/new.html', array('errors' => $errors, 'attributes' => $attributes, 'tuoteryhmat' => $tuoteryhmat)); } }
public static function tuote_create() { self::check_logged_in(); // POST-pyynnön muuttujat sijaitsevat $_POST nimisessä assosiaatiolistassa $params = $_POST; /* * Asetetaan päivämäärä ja timestamp. * Olisi järkevää, jos tämä tulisi aina automaattisesti. */ if (empty($params['history_date'])) { $t = time(); $params['history_date'] = date("Y-m-d", $t); } $uusi_tuote = new Tuote(array('tuote_id' => $params['tuote_id'], 'tuotteen_nimi' => $params['tuotteen_nimi'], 'valmistaja' => $params['valmistaja'], 'kuvaus' => $params['kuvaus'], 'history_date' => $params['history_date'])); $flag = true; // Koska kyseessä on lisäyskomento $errors = $uusi_tuote->errors($flag); if (count($errors) == 0) { //Kint::dump($uusi_tuote); $uusi_tuote->save(); /* Ohjataan käyttäjä lisäyksen jälkeen tuotteen esittelysivulle. * Sieltä voi mennä korjaamaan, mikäli jokin tieto meni ensimmäisellä * kerralla väärin. */ Redirect::to('/Tuote/Tuotesivu/' . $params['tuote_id'], $uusi_tuote); } else { // Annetuissa arvoissa oli jotain vikaa. View::make('Tuote/Lisaatuote.html', array('errors' => $errors, 'attiributes' => $params)); } return; }