public static function save() { $params = $_POST; $v = new Valitron\Validator($params); $v->rule('required', 'content'); $v->rule('lengthMin', 'content', 1); $v->rule('required', 'site-id'); $v->rule('numeric', 'site-id'); if ($v->validate()) { $kommentti = new Kommentti(array('comment_content' => $params['content'], 'site_id' => $params['site-id'], 'kayttaja_id' => $_SESSION['user'])); $kommentti->save(); Redirect::to('/site/show_site/' . $params['site-id'], array('message' => 'Kommentti lisätty')); } else { $site = Site::find($params['site-id']); $kommentit = Kommentti::getAllComments($params['site-id']); View::make('site/show_site.html', array('site' => $site, 'kommentit' => $kommentit, 'errors' => $v->errors())); } }
public static function haeLuetutKayttajalla($kayttaja_id) { $query = DB::connection()->prepare('SELECT * ' . 'FROM Kirjoitus ' . 'INNER JOIN KirjoituksenLukenutKayttaja ' . 'ON Kirjoitus.id = KirjoituksenLukenutKayttaja.kirjoitus_id ' . 'WHERE KirjoituksenLukenutKayttaja.kayttaja_id=:kayttaja_id'); $query->execute(array('kayttaja_id' => $kayttaja_id)); $rows = $query->fetchAll(); $kirjoitukset = array(); foreach ($rows as $row) { $kirjoitukset[] = new Kirjoitus(array('id' => $row['id'], 'nimi' => $row['nimi'], 'sisalto' => $row['sisalto'], 'julkaistu' => $row['julkaistu'], 'julkaisija' => Kayttaja::hae($row['julkaisija']), 'kommentteja' => sizeof(Kommentti::haeKirjoituksella($row['id'])))); } return $kirjoitukset; }
public static function nayta($id) { self::check_logged_in(); $kayttaja = Kayttaja::hae($id); $kayttaja->kirjoitukset = Kirjoitus::haeKayttajalla($kayttaja->id); $kayttaja->kirjoituksia = sizeof($kayttaja->kirjoitukset); $kayttaja->kommentteja = sizeof(Kommentti::haeKayttajalla($kayttaja->id)); $kayttaja->luetutKirjoitukset = KirjoituksenLukenutKayttaja::haeLuetutKayttajalla($kayttaja->id); $kayttaja->ryhma = Ryhma::hae($kayttaja->ryhma_id); View::make('kayttaja/nayta.html', array('kayttaja' => $kayttaja)); }
public function poista() { $kirjoitukset = Kirjoitus::haeKayttajalla($this->id); foreach ($kirjoitukset as $kirjoitus) { $kirjoitus->poista(); } $kommentit = Kommentti::haeKayttajalla($this->id); foreach ($kommentit as $kommentti) { $kommentti->poista(); } $query = DB::connection()->prepare("DELETE FROM Kayttaja WHERE id=:id"); $query->execute(array('id' => $this->id)); }
public static function show($id) { $site = Site::find($id); $kommentit = Kommentti::getAllComments($id); View::make('site/show_site.html', array('site' => $site, 'kommentit' => $kommentit)); }
public static function lisaaKommentti() { self::check_logged_in(); self::check_detention(); $params = $_POST; $kirjoitus_id = intval($params['kirjoitus_id']); $kommentti = new Kommentti(array('kirjoitus' => $kirjoitus_id, 'sisalto' => $params['sisalto'], 'julkaisija' => self::get_user_logged_in()->id, 'julkaistu' => date('d-m-Y H:i:s', time()))); $errors = $kommentti->errors(); if (count($errors) == 0) { $kommentti->tallenna(); Redirect::to('/kirjoitus/' . $kirjoitus_id, array('message' => 'Uusi kommentti on lisätty kirjoitukseen!')); } else { Redirect::to('/kirjoitus/' . $kirjoitus_id, array('errors' => $errors)); } }