Пример #1
0
 /**
  * ======================== SECURITY ====================================
  * Noukitaan valituista poistettaviin/muokattaviin sellaiset havainnot, joihin
  * käyttäjällä on oikeudet. Palauttaa ne taulukossa, joka voi olla
  * tyhjä.
  */
 private function poimi_valituista_mahdolliset($valitut)
 {
     $mahdolliset = array();
     $omaid = $this->get_parametriolio()->omaid;
     foreach ($valitut as $id_hav) {
         $ehdokas = new Havainto($this->get_tietokantaolio(), $id_hav);
         // Ok, jos käyttäjä on kuningas tai havainto oma:
         if ($ehdokas->olio_loytyi_tietokannasta) {
             if (on_kuningas($omaid, $this->get_tietokantaolio()) || $ehdokas->get_henkilo_id() === $omaid) {
                 // Lisätään muokattaviin:
                 array_push($mahdolliset, $ehdokas);
             }
         }
     }
     return $mahdolliset;
 }
Пример #2
0
 /**
  * Toteuttaa nimenmukaisen toiminnon. Palauttaa palauteolion, mutta
  * huomaa, että se ei sisällä kokonaista html-sivua, vaan vain
  * lajiluokkalaatikon (div).
  * @return Palauteolio $palauteolio
  */
 public function toteuta_nayta_lajiluokat()
 {
     $html = "";
     // Palautettava.
     $ylaluokka_id = $this->parametriolio->ylaluokka_id_lj;
     $lajiluokat = array();
     // Haetaan tietokannasta ylaluokkaan kuuluvat lajiluokat. Jotta
     // järjestys saadaan suomen mukaan, pitää yhdistää bkuvaukset-tauluun.
     $hakulause = "SELECT blajiluokat." . Lajiluokka::$SARAKENIMI_ID . " FROM " . Tietokannan_taulunimet::$blajiluokat . " JOIN " . Tietokannan_taulunimet::$bkuvaukset . " WHERE blajiluokat." . Lajiluokka::$SARAKENIMI_YLALUOKKA_ID . "=" . $ylaluokka_id . " AND bkuvaukset." . Kuvaus::$SARAKENIMI_LAJILUOKKA_ID . "=blajiluokat.id" . " AND bkuvaukset." . Kuvaus::$SARAKENIMI_KIELI . "=" . Kielet::$SUOMI . " ORDER BY bkuvaukset." . Kuvaus::$SARAKENIMI_NIMI;
     $osumat = $this->tietokantaolio->tee_OMAhaku_oliotaulukkopalautteella($hakulause);
     if (!empty($osumat)) {
         foreach ($osumat as $lj) {
             $olio = new Lajiluokka($this->tietokantaolio, $lj->id);
             array_push($lajiluokat, $olio);
         }
     } else {
         // Ellei lajiluokkia löytynyt:
         $ilm = Bongaustekstit::$lajiluokka_virheilmoitus_yhtaan_lajiluokkaa_ei_loytynyt;
         $html .= $ilm;
         $this->palauteolio->set_ilmoitus($ilm);
     }
     // Paketoidaan yksittäiset yhteen taulukkoon. Tarvitaan myös
     // painike poistumiseen.
     $painikkeet = "<button type='button' onclick=" . "'sulje_ruutu2(\"lajiluokkalaatikko\")' title='" . Bongauspainikkeet::$LAJILUOKAT_SULJE_NAKYMA_TITLE . "'>" . Bongauspainikkeet::$LAJILUOKAT_SULJE_NAKYMA_VALUE . "</button>";
     // TArkistetaan admin-oikeudet:
     $on_admin = false;
     if (on_kuningas($this->parametriolio->omaid, $this->tietokantaolio)) {
         $on_admin = true;
     }
     $html = Nakymat_lj::nayta_lajiluokat($lajiluokat, $painikkeet, $on_admin);
     $this->palauteolio->set_sisalto($html);
     return $this->palauteolio;
 }
Пример #3
0
 // Haetaan yleisten lukemattomien viestien lkm täällä, koska
 // muuten uusien lkm häviää automaattisen viestien
 // näyttämisen takia.
 // Haetaan sisäänkirjautumisaika. Haetaan vain sitä uudemmat viestit.
 //$viimeksi_ulos = hae_vika_ulosaika($_SESSION['tiedot']->id,$tietokantaolio);
 $sisaankirjautumisaika = $_SESSION['kirjautumisaika'];
 $teema = 1;
 // Yleinen-luokan tunnus.
 $uusien_yleisten_lkm = hae_uusien_viestien_lkm($omaid, $teema, $tietokantaolio, $sisaankirjautumisaika);
 // Aktiivisuusmerkintä:
 $viimeksi_aktiivi = time();
 $aktiivisuuslaji = Aktiivisuus::$ALBUMIEN_KATSELU;
 // Kuvapuolelle tulo.
 paivita_aktiivisuus($omaid, $tietokantaolio, $viimeksi_aktiivi, $aktiivisuuslaji);
 // Verkkosivujen hallitsijan totuusarvo:
 $kuningas = on_kuningas($omaid, $tietokantaolio);
 // Seuraavissa REQUEST-toiminto sisältää sekä GET- että POST-toiminnot
 // name-kentän arvo tulee muuttujan nimeksi ja value-kentän arvo arvoksi.
 $toiminta = isset($_REQUEST['toiminta']) ? $_REQUEST['toiminta'] : "";
 // Henkilö, joka voi olla kuka tahansa sivun käyttäjä.
 $henkilo_id = isset($_REQUEST['henkilo_id']) ? $_REQUEST['henkilo_id'] : "";
 $paluu = "Takaisin";
 // Päästään palaamaan taaksepäin edelliseen juttuun.
 // Poistumisnappi:
 $id = Yleisarvoja::$ulosnappiID;
 $id2 = $id . "2";
 $name = Yleisarvoja::$keskustelusivun_toimintonimi;
 $value = Painikkeet::$KIRJAUDU_ULOS_VALUE;
 $ulosnappi1 = luo_uloskirjauspainike($id, $name, $value);
 $ulosnappi2 = luo_uloskirjauspainike($id2, $name, $value);
 $sisaltoteksti = "";