Пример #1
0
 /**
  * Luo uuden lajiluokan annetuilla arvoilla, tallentaa sen tietokantaan
  * ja palauttaa tallennetun id:n tai arvon
  * Lajiluokka::$MUUTTUJAA_EI_MAARITELTY, jos jokin menee vikaan.
  *
  * @param type $ylaluokka_id
  * @param type $nimi_latina
  * @return type 
  */
 public function luo_ja_tallenna_lajiluokka($ylaluokka_id, $nimi_latina)
 {
     $tallennetun_id = Lajiluokka::$MUUTTUJAA_EI_MAARITELTY;
     $id = Lajiluokka::$PARAMETRI_EI_KAYTOSSA;
     $lajiluokka = new Lajiluokka($this->tietokantaolio, $id);
     $this->lisaa_testikommentti("Uusi tyhja lajiluokka luotu!", false);
     // Ei pitäisi olla tallennuskelpoinen:
     if ($lajiluokka->on_tallennuskelpoinen(true)) {
         $this->lisaa_virheilmoitus("Ei pitaisi olla tallennuskelpoinen!");
     } else {
         /*$this->lisaa_testikommentti("Muuttujia ei ole asetettu, joten".
           " saatiin aivan oikein seuraava palaute: ".
           $lajiluokka->tulosta_virheilmoitukset(),false);*/
     }
     /*$this->lisaa_testikommentti("Asetetaan lajiluokan ylaluokka_id,
       ja nimi_latina. Testataan
       uudelleen, onko nyt tallennuskelpoinen:",false);*/
     $lajiluokka->set_ylaluokka_id($ylaluokka_id);
     $lajiluokka->set_nimi_latina($nimi_latina);
     // Tässä vaiheessa ongelmaksi voi tulla myös se, että nimi_latina on
     // jo olemassa. Siitä annetaan erillinen ilmoitus.
     if ($lajiluokka->on_tallennuskelpoinen(true)) {
         $this->lisaa_testikommentti("Lajiluokka on tallennuskelpoinen", false);
         $onnistuminen = $lajiluokka->tallenna_uusi();
         if ($onnistuminen === Lajiluokka::$OPERAATIO_ONNISTUI) {
             $tallennetun_id = mysql_insert_id();
             $this->lisaa_testikommentti("Lajiluokan tallennus onnistui!", false);
         } else {
             $this->lisaa_testikommentti($onnistuminen . " Virhe tallennuksessa (luo_\n                    ja_tallenna_lajiluokka())!" . " Arvot: ylaluokka_id=" . $lajiluokka->get_ylaluokka_id() . ", nimi_latina=" . $lajiluokka->get_nimi_latina(), true);
         }
     } else {
         // Tämä ei aina ole vastoin toivomuksia!
         $this->lisaa_testikommentti($lajiluokka->tulosta_virheilmoitukset(), false);
     }
     return $tallennetun_id;
 }
Пример #2
0
 /**
  * Uuden lajiluokan tallennus!
  * @return Palaute
  */
 public function toteuta_tallenna_uusi()
 {
     $pal = $this->palauteolio;
     $uusi = new Lajiluokka($this->tietokantaolio, Lajiluokka::$PARAMETRI_EI_KAYTOSSA);
     // Lajiluokka:
     $ylaluokka_id = $this->parametriolio->ylaluokka_id_lj;
     $nimi_latina = $this->parametriolio->nimi_latina_lj;
     // Kuvaus:
     // Nykyään kieli on tuossa aina suomi. Voi muuttaa tarvittaessa.
     $kieli_kuv = Kielet::$SUOMI;
     $kuv_kuv = $this->parametriolio->kuv_kuv;
     $nimi_kuv = $this->parametriolio->nimi_kuv;
     // Asetetaan arvot kohdalleen:
     $uusi->set_ylaluokka_id($ylaluokka_id);
     $uusi->set_nimi_latina($nimi_latina);
     // Kokeillaan tallentaa:
     $tallennus = $uusi->tallenna_uusi();
     // Jos kaikki hyvin, tallennetaan myös kuvaus lajiluokalle:
     if ($tallennus === Lajiluokka::$OPERAATIO_ONNISTUI) {
         // tallennetaan aktiivisuus:
         paivita_aktiivisuus($this->parametriolio->omaid, $this->tietokantaolio, time(), Aktiivisuus::$LAJILUOKKA_UUDEN_TALLENNUS);
         $uusi_kuv = new Kuvaus($this->tietokantaolio, Kuvaus::$PARAMETRI_EI_KAYTOSSA);
         // Asetetaan arvot:
         $uusi_kuv->set_kieli($kieli_kuv);
         $uusi_kuv->set_kuvaus($kuv_kuv);
         $uusi_kuv->set_lajiluokka($uusi->get_id());
         $uusi_kuv->set_nimi($nimi_kuv);
         // Kokeillaan tallentaa:
         $tallennus_kuv = $uusi_kuv->tallenna_uusi();
         // Jos kaikki hyvin:
         if ($tallennus_kuv === Kuvaus::$OPERAATIO_ONNISTUI) {
             // tallennetaan aktiivisuus:
             paivita_aktiivisuus($this->parametriolio->omaid, $this->tietokantaolio, time(), Aktiivisuus::$LAJILUOKKAKUVAUS_UUDEN_TALLENNUS);
             $pal->set_operaatio_onnistui(true);
             $pal->set_ilmoitus(Bongaustekstit::$lajiluokka_ja_kuvaus_tallennus_ok);
             // Asetetaan kuitenkin palautusolioon luodun lajiluokan id:
             $pal->set_muokatun_id($uusi->get_id());
             $pal->set_sisalto($this->nayta_havainnot());
         } else {
             $pal->set_operaatio_onnistui(false);
             $pal->set_ilmoitus(Bongaustekstit::$kuvaus_virheilm_tallennus_eiok . Html::luo_br() . $uusi_kuv->tulosta_virheilmoitukset());
             $pal->set_sisalto($this->toteuta_nayta_lajiluokkalomake()->get_sisalto());
         }
     } else {
         $pal->set_operaatio_onnistui(false);
         $pal->set_ilmoitus(Bongaustekstit::$lajiluokka_virheilm_tallennus_eiok . Html::luo_br() . $uusi->tulosta_virheilmoitukset());
         $pal->set_sisalto($this->toteuta_nayta_lajiluokkalomake()->get_sisalto());
     }
     return $pal;
 }