/**
  * Toteuttaa nimenmukaisen toiminnon. Palauttaa palauteolion, mutta
  * huomaa, että se ei sisällä kokonaista html-sivua, vaan vain
  * pikakommenttilaatikon (div).
  *
  * @param <type> $max_lkm
  * @param <type> $kohde_id
  * @param <type> $max_lkm
  * @return Palauteolio $palauteolio
  */
 public function toteuta_nayta_pikakommentit($kohde_tyyppi, $kohde_id, $max_lkm)
 {
     $html = "";
     // Palautettava.
     $omaid = $this->parametriolio->omaid;
     // Haetaan tietokannasta kyseisen kohteen pikakommentit:
     $hakulause = "SELECT " . Pikakommentti::$SARAKENIMI_ID . ", henkilo_id\n                        FROM pikakommentit\n                        WHERE kohde_tyyppi={$kohde_tyyppi}\n                        AND kohde_id={$kohde_id}\n                        LIMIT {$max_lkm}";
     $osumat_kaikki = $this->tietokantaolio->tee_OMAhaku_oliotaulukkopalautteella($hakulause);
     //============= SUODATUS ALKU ==========================================
     $osumat = array();
     $suodattimet = Suodatin::hae_suodattimet($omaid, $this->tietokantaolio);
     foreach ($osumat_kaikki as $osuma) {
         $henkilo_id = $osuma->henkilo_id;
         if (!Suodatin::henkilo_suodatetaan_kevyt($henkilo_id, $omaid, $suodattimet)) {
             array_push($osumat, $osuma);
         }
     }
     //============= SUODATUS LOPPU =========================================
     if (!empty($osumat)) {
         foreach ($osumat as $pk_olio) {
             $pk = new Pikakommentti($this->tietokantaolio, $pk_olio->id);
             $html .= $pk->nayta_pikakommentti($this->parametriolio->omaid, $this->parametriolio->get_kayttajan_valtuudet());
         }
     } else {
         // Ellei kommentteja löytynyt:
         $html .= Pikakommenttitekstit::$ilmoitus_pikakommentteja_ei_loytynyt;
     }
     // Lisätään vielä tallennuspainike ja tekstinsyöttökenttä:
     $tallennuspainike = "<button type='button' id=" . Pikakommentti::$TALLENNUSPAINIKKEEN_ID . " onclick=" . "'tallenna_uusi_pikakommentti(" . $kohde_tyyppi . "," . $kohde_id . ")'" . "title='" . Pikakommenttitekstit::$tallenna_uusi_pikakommentti_title . "'>" . Pikakommenttitekstit::$tallenna_uusi_pikakommentti_value . "</button>";
     $html .= Nakyma_pikakommentit::nayta_pikakommenttilomake($tallennuspainike);
     // Paketoidaan yksittäiset yhteen taulukkoon. Tarvitaan myös
     // painike poistumiseen.
     $painikkeet = "<button type='button' onclick=" . "'piilota_pikakommentit()'title='" . Pikakommenttitekstit::$pikakommentit_sulje_title . "'>" . Pikakommenttitekstit::$pikakommentit_sulje_value . "</button>";
     $html = Nakyma_pikakommentit::nayta_pikakommentit($html, $painikkeet);
     $this->palauteolio->set_sisalto($html);
     return $this->palauteolio;
 }
/**
 * Palauttaa havainnot taulukkoon muotoiltuna.
 * @param Parametrit $parametriolio
 * @return <type> /
 */
function hae_havainnot($parametriolio)
{
    $tietokantaolio = $parametriolio->tietokantaolio;
    // Painikkeita:
    $muokkausnappi = "";
    // Määritellään myöhemmin
    $poistonappi = "";
    // Määritellään myöhemmin
    $albuminaytto = "";
    $kommentin_piilotusnappi = "<button onclick='vaihda_kommenttinakyvyys(\"" . Bongausasetuksia::$havaintotaulukon_kommenttisolun_name_arvo . "\")'" . " id='piilotusnappi'" . "title='" . Bongauspainikkeet::$HAVAINNOT_PIILOTA_KOMMENTTISARAKE_TITLE . "'>" . Bongauspainikkeet::$HAVAINNOT_PIILOTA_KOMMENTTISARAKE_VALUE . "</button>";
    // painike, josta saa näkyviin havaintolomakkeen:
    $class = "rinnakkain";
    $id = "";
    $action = "index.php";
    $name = Bongaustoimintonimet::$havaintotoiminto;
    $value = Bongauspainikkeet::$UUSI_HAVAINTO_VALUE;
    $uusi_havainto_painike = Html::luo_painikelomake($class, $id, $action, $name, $value);
    // painike, josta saa näkyviin lajiluokkalomakkeen:
    $name = Bongaustoimintonimet::$lajiluokkatoiminto;
    $value = Bongauspainikkeet::$UUSI_LAJILUOKKA_VALUE;
    $uusi_lajiluokka_painike = Html::luo_painikelomake($class, $id, $action, $name, $value);
    // Painike, joka avaa lajiluokkanäkymän:
    $avaa_lajiluokkanakyma = "<button onclick='hae_lajiluokat(" . $parametriolio->ylaluokka_id_lj . ")'" . " id=''" . " title='" . Bongauspainikkeet::$LAJILUOKAT_NAYTA_TITLE . "'>" . Bongauspainikkeet::$LAJILUOKAT_NAYTA_VALUE . "</button>";
    // painike, josta saa näkyviin albumit:
    $onsubmit_funktionimi = "bongaus_nayta_albumit";
    $onsubmit_parametrit = array();
    $form_maaritteet = array("method" => "post", "class" => "rinnakkain", "action" => "index.php");
    $input_maaritteet = array("name" => Bongaustoimintonimet::$kuvatoiminto, "value" => Bongauspainikkeet::$NAYTA_KUVA_ALBUMIT_VALUE, "title" => Bongauspainikkeet::$NAYTA_KUVA_ALBUMIT_TITLE);
    $albuminaytto = Html::luo_submit_painike_onsubmit_toiminnolla($onsubmit_funktionimi, $onsubmit_parametrit, $form_maaritteet, $input_maaritteet);
    /**************** KORJAUS MAALIS2011 *********************************
        if($parametriolio->get_kayttajan_valtuudet() == Valtuudet::$HALLINTA){
            $pikkukuvanappi = "<form method='post'id='luo_bongauspikkukuvat' ".
                        "action='{$_SERVER['PHP_SELF']}'>".
                        "<input type='submit' name='".Bongaustoimintonimet::$kuvatoiminto."'
                        value='Luo pikkukuvat'/>".
                        "</form>";
        }
        else{
            $pikkukuvanappi = "";
        }
    
        /************************************************** */
    // Ylaluokkavalikko+painike:
    $ylaluokka_id = $parametriolio->ylaluokka_id_lj;
    $otsikko = Bongaustekstit::$havaintoluokan_valinta_otsikko;
    $kieli_id = Kielet::$SUOMI;
    $js_metodinimi = "hae_luokan_havainnot";
    $js_param_array = array("this.value");
    $nayta_tyhja = "Kaikki";
    $valikko = nayta_ylaluokkavalikko($nayta_tyhja, $tietokantaolio, $ylaluokka_id, $kieli_id, $otsikko, $js_metodinimi, $js_param_array);
    $type = "submit";
    $class = "rinnakkain";
    $id = "";
    $name = Bongaustoimintonimet::$havaintotoiminto;
    $value = Bongauspainikkeet::$HAVAINNOT_VALITSE_LAJILUOKKA_VALUE;
    $onclick = "";
    $ylaluokkapainike = Html::luo_painike_ilman_formia($type, $class, $id, $name, $value, $onclick);
    $ylaluokkahtml = "<form action='index.php' class='rinnakkain'> " . $valikko . " " . $ylaluokkapainike . "</form>";
    // Palautuskoodi:
    $tulos = "";
    // Muotoillaan yläluokan lause:
    $ylaluokka_id = $parametriolio->ylaluokka_id_lj;
    if (isset($ylaluokka_id) && is_numeric($ylaluokka_id) && $ylaluokka_id > 0) {
        $ylaluokkaehto = "blajiluokat.ylaluokka_id = {$ylaluokka_id}";
    } else {
        $ylaluokkaehto = "blajiluokat.ylaluokka_id <> -1";
    }
    // Tarkistetaan, haetaanko vuoden, määrän tai jonkin muun ehdon mukaan:
    $max_lkm = $parametriolio->max_lkm_hav;
    if ($parametriolio->havaintojen_nayttomoodi == Havaintojen_nayttomoodi::$nayta_uusimmat) {
        $ehtolause = "WHERE (bkuvaukset.kieli= " . Kielet::$SUOMI . "\n                    AND {$ylaluokkaehto})\n                    ORDER by vuosi DESC, kk DESC, paiva DESC, laji\n                    LIMIT " . $max_lkm;
        $nayttoilmoitus = $parametriolio->max_lkm_hav . Bongaustekstit::$max_nayttoilm_bongaussivu1;
    } else {
        if ($parametriolio->havaintojen_nayttomoodi == Havaintojen_nayttomoodi::$nayta_vuoden_mukaan) {
            $ehtolause = "WHERE (bkuvaukset.kieli= " . Kielet::$SUOMI . "\n                    AND {$ylaluokkaehto}\n                    AND vuosi = {$parametriolio->nayttovuosi_hav})\n                    ORDER by vuosi DESC, kk DESC, paiva DESC, laji";
            $nayttoilmoitus = $parametriolio->nayttovuosi_hav;
        } else {
            $ehtolause = "WHERE (bkuvaukset.kieli= " . Kielet::$SUOMI . "\n                    AND {$ylaluokkaehto})\n                    ORDER by vuosi DESC, kk DESC, paiva DESC, laji\n                    LIMIT 3";
            $nayttoilmoitus = "?";
        }
    }
    // Tässäpä lausetta kerrakseen. Haettujen määrä rajoitetaan.
    $hakulause = "SELECT blajiluokat.id AS laji_id,\n                        bhavainnot.id AS hav_id,\n                        bhavainnot.maa AS maa,\n                        bhavainnot.varmuus AS varmuus,\n                        henkilot.etunimi AS nimi,\n                        henkilot.id AS henk_id,\n                        henkilot.valtuudet AS henk_valtuudet,\n                        bkuvaukset.nimi AS laji,\n                        bhavainnot.paikka AS paikka,\n                        bhavainnot.kommentti AS kommentti,\n                        bhavainnot.vuosi AS vuosi,\n                        bhavainnot.kk AS kk,\n                        bhavainnot.paiva AS paiva\n                FROM blajiluokat\n                JOIN bkuvaukset\n                ON bkuvaukset.lajiluokka_id = blajiluokat.id\n                JOIN bhavainnot\n                ON bhavainnot.lajiluokka_id = blajiluokat.id\n                JOIN henkilot\n                ON bhavainnot.henkilo_id = henkilot.id\n                {$ehtolause}\n               ";
    $havaintohaku = $tietokantaolio->tee_OMAhaku($hakulause);
    $havaintotaulu = $tietokantaolio->hae_osumarivit_olioina($havaintohaku);
    $tulos = "<div class=" . Bongausasetuksia::$havaintotauluotsikko_class . ">" . " (" . $nayttoilmoitus . ")" . $uusi_havainto_painike . $uusi_lajiluokka_painike . $avaa_lajiluokkanakyma . $ylaluokkahtml . $albuminaytto . $kommentin_piilotusnappi . "</div>";
    //$pikkukuvanappi."</div>";   // KORJAUS VAIN!
    if (empty($havaintotaulu)) {
        $tulos .= "<table class = " . Bongausasetuksia::$havaintotaulun_class . ">\n                <tr>\n                <th>" . Bongaustekstit::$ilm_ei_havaintoja . "</th></tr></table>";
    } else {
        // Muotoillaan tiedot nätisti:
        $tulos .= "<table class = " . Bongausasetuksia::$havaintotaulun_class . ">\n            <tr>\n                <th>Nro</th>\n                <th>Laji</th>\n                <th>Aika</th>\n                <th>Paikka</th>\n                <th name='" . Bongausasetuksia::$havaintotaulukon_kommenttisolun_name_arvo . "'>Kommentti</th>\n                <th>Bongaaja</th>\n                <th>Toiminnot</th>\n                <th>Kommentit</th>\n            </tr>";
        $laskuri = 1;
        // Auttaa joka toisen rivin eri v&auml;riseksi.
        $omaid = $parametriolio->omaid;
        // Haetaan suurin olemassaolevista havainto-id:eistä, jotta
        // mahdollisen kopioitavan/uuden havainnon id voidaan "arvata"
        // (=yhtä isompi).
        $suurin_havaintoid = hae_suurin_id($tietokantaolio, "bhavainnot");
        foreach ($havaintotaulu as $havainto) {
            // Määritellään omille havainnoille muokkaus- ja poistopainikkeet:
            // painike, josta saa näkyviin havaintolomakkeen:
            $muokkausnappi = "";
            // Nollataan, ettei kummittele!
            $poistonappi = "";
            $kuvanappi = "";
            $kuvakoodi = "";
            /* Haetaan havaintoon liittyvä kuva (1 kpl) */
            $hakulause = "SELECT kuvat.id AS id,\n                                kuvat.henkilo_id AS henkilo_id,\n                                kuvat.kuvaotsikko AS kuvaotsikko,\n                                kuvat.kuvaselitys AS kuvaselitys,\n                                kuvat.vuosi AS vuosi,\n                                kuvat.kk AS kk,\n                                kuvat.paiva AS paiva,\n                                kuvat.src AS src,\n                                kuvat.leveys AS leveys,\n                                kuvat.korkeus AS korkeus,\n                                kuvat.tiedostokoko AS tiedostokoko,\n                                kuvat.tiedostotunnus AS tiedostotunnus,\n                                kuvat.tiedostonimi AS tiedostonimi,\n                                kuvat.tallennusaika_sek AS tallennusaika_sek\n                        FROM bhavainnot\n                        JOIN bkuvalinkit\n                        ON bhavainnot.id = bkuvalinkit.havainto_id\n                        JOIN kuvat\n                        ON bkuvalinkit.kuva_id = kuvat.id\n                        WHERE bhavainnot.id = {$havainto->hav_id}\n                        LIMIT 1";
            $osumataulukko = $tietokantaolio->tee_OMAhaku_oliotaulukkopalautteella($hakulause);
            // Luodaan kuvaolio:
            if (!empty($osumataulukko)) {
                $tk_kuva = $osumataulukko[0];
                $kuvaolio = new Kuva($tk_kuva, Kuva::$KUVAT_BONGAUS);
            } else {
                $kuvaolio = "";
            }
            // Haetaan kuva_id ja koodi:
            if ($kuvaolio != "") {
                $kuvakoodi = $kuvaolio->nayta_pelkka_kuva($parametriolio->kuvien_kansio_osoite);
                $kuva_id = $kuvaolio->getId();
            } else {
                $kuvakoodi = "";
                $kuva_id = -1;
            }
            // painike, josta saa kopioitua havainnon:
            $kopioitavan_id = $suurin_havaintoid + 1;
            $url_jatke_seur = "#havainto" . $kopioitavan_id;
            if ($suurin_havaintoid == -1) {
                $url_jatke_seur = "";
            }
            $onsubmit_funktionimi = "bongaus_kopioi_havainto";
            $onsubmit_parametrit = array($havainto->hav_id);
            $form_maaritteet = array("method" => "post", "class" => "rinnakkain", "action" => "index.php" . "?id_hav=" . $havainto->hav_id . $url_jatke_seur);
            $input_maaritteet = array("name" => Bongaustoimintonimet::$havaintotoiminto, "value" => Bongauspainikkeet::$HAVAINNOT_KOPIOI_ITSELLE_VALUE, "title" => Bongauspainikkeet::$HAVAINNOT_KOPIOI_ITSELLE_TITLE);
            $kopiointipainike = Html::luo_submit_painike_onsubmit_toiminnolla($onsubmit_funktionimi, $onsubmit_parametrit, $form_maaritteet, $input_maaritteet);
            // Omiin havaintoihin ja hallitsijan oikeuksilla saa muokata,
            // poistaa ja lisätä kuvia.
            if ($havainto->henk_id == $omaid || $parametriolio->get_kayttajan_valtuudet() == Valtuudet::$HALLINTA) {
                $class = "rinnakkain";
                $id = "";
                $action = "index.php?id_hav=" . $havainto->hav_id . "&id_lj=" . $havainto->laji_id;
                $name = Bongaustoimintonimet::$havaintotoiminto;
                $value = Bongauspainikkeet::$MUOKKAA_HAVAINTO_VALUE;
                $muokkausnappi = Html::luo_painikelomake($class, $id, $action, $name, $value);
                $name = Bongaustoimintonimet::$havaintotoiminto;
                $value = Bongauspainikkeet::$POISTA_HAVAINTO_VALUE;
                $poistonappi = Html::luo_painikelomake($class, $id, $action, $name, $value);
                $name = Bongaustoimintonimet::$kuvatoiminto;
                $value = Bongauspainikkeet::$UUSI_KUVA_VALUE;
                $kuvanappi = Html::luo_painikelomake($class, $id, $action, $name, $value);
            }
            // Muokataan aika:
            $aika = anna_viikonp_suomeksi($havainto->paiva, $havainto->kk, $havainto->vuosi, true) . " " . $havainto->paiva . "." . $havainto->kk . "." . $havainto->vuosi;
            $henk_tiedot = $havainto->nimi;
            //========================== PIkakommentit =========================
            $kommenttien_lkm = 0;
            $on_uusia_pk = false;
            // Haetaan pikakommenttien lkm ja tarkastetaan samalla, onko uusia.
            $hakulause = "SELECT id, tallennushetki_sek, henkilo_id\n                    FROM pikakommentit\n                    WHERE kohde_tyyppi =" . Pikakommentti::$KOHDE_BONGAUS . " AND kohde_id=" . $havainto->hav_id . " ORDER BY tallennushetki_sek DESC";
            $osumat = $tietokantaolio->tee_OMAhaku_oliotaulukkopalautteella($hakulause);
            // Jos viimeistä katseluaikaa ei ole asetettu, asetetaan 0:
            if (!isset($_SESSION['edellinen_uloskirjausaika_sek'])) {
                $_SESSION['edellinen_uloskirjausaika_sek'] = 0;
            }
            // Korostetaan solu, jos uusin on riittävän uusi eikä oma:
            if (!empty($osumat)) {
                $kommenttien_lkm = sizeof($osumat);
                if ($osumat[0]->tallennushetki_sek > $_SESSION['edellinen_uloskirjausaika_sek'] && $osumat[0]->henkilo_id != $omaid) {
                    $on_uusia_pk = true;
                }
            }
            // Taulukon solun muotoilu:
            $onmouseover = " onclick='hae_pikakommentit(" . Pikakommentti::$KOHDE_BONGAUS . "," . $havainto->hav_id . ")'";
            $pk_class = "";
            if ($on_uusia_pk) {
                $pk_class = " class='on_uusia'";
            }
            $pikakommenttisolu = "<td" . $pk_class . $onmouseover . " title='" . Bongaustekstit::$ilm_pikakommentit_nakyviin . "'>" . "<span id='id" . $havainto->hav_id . "'>" . $kommenttien_lkm . "</span></td>";
            //============= PIkakommentit loppu ================================
            // Muokataan varmuus- ja maamerkinnät:
            // Maa merkitään, ellei Suomi:
            if ($havainto->maa == Maat::$suomi) {
                $maa = "";
            } else {
                $maa = " (" . Maat::hae_maan_kuvaus($havainto->maa) . ")";
            }
            // Vain epävarmuus näytetään
            $varmuus = "";
            if ($havainto->varmuus == Varmuus::$epavarma) {
                $varmuus = " (?)";
            }
            // Mahdollistetaan kuvan näyttö klikkaamalla:
            // Kuvaa klikkaamalla saadaan se isoksi:
            $klikkaus = "";
            $title = "";
            if ($kuvakoodi != "") {
                $klikkaus = "onclick=\"hae_kuva_ja_tiedot('" . $havainto->laji_id . "','" . $kuva_id . "','" . Kuva::$KUVAT_BONGAUS . "')\"";
                $title = "title='Klikkaa suuremmaksi!'";
            }
            if ($laskuri % 2 == 0) {
                $tulos .= "<tr class ='" . Bongausasetuksia::$havaintotaulu_parillinenrivi_class . "' id='havainto" . $havainto->hav_id . "'>";
            } else {
                $tulos .= "<tr id='havainto" . $havainto->hav_id . "'>";
            }
            $tulos .= "<td>" . $laskuri . "</td>";
            $tulos .= "<td class='huomio' title='" . Bongauspainikkeet::$HAVAINNOT_NAYTA_LAJIHAVAINNOT_TITLE . "' onclick='hae_lajihavainnot(" . $havainto->laji_id . ")'>" . $havainto->laji . $varmuus . "</td>";
            $tulos .= "<td>" . $aika . "</td>";
            $tulos .= "<td>" . stripslashes($havainto->paikka) . $maa . "</td>";
            $tulos .= "<td name=" . Bongausasetuksia::$havaintotaulukon_kommenttisolun_name_arvo . ">" . "<table><tr>" . "<td class='rajaton'>" . "<span class=" . Bongausasetuksia::$havaintokuvakommentti_class . ">" . stripslashes($havainto->kommentti) . "</span>" . "</td>" . "<td class='rajaton' " . $klikkaus . " " . $title . ">" . $kuvakoodi . "</td>" . "</tr></table>" . "</td>";
            $tulos .= "<td class='huomio' title='" . Bongauspainikkeet::$HAVAINNOT_NAYTA_HENKILON_HAVAINNOT_TITLE . "' onclick='hae_henkilon_havainnot(" . $havainto->henk_id . "," . $havainto->laji_id . ")'>" . $henk_tiedot . "</td>";
            $tulos .= "<td>" . $kopiointipainike . $muokkausnappi . $kuvanappi . $poistonappi . "</td>";
            $tulos .= $pikakommenttisolu;
            $tulos .= "</tr>";
            $laskuri++;
        }
        $tulos .= "</table>";
    }
    return $tulos;
}
示例#3
0
/**
 * Palauttaa suoritustilaston taulukkoon muotoiltuna.
 * @param Parametrit $parametriolio
 * @return Palaute Palauttaa Palaute-luokan esiintymän. /
 */
function hae_suoritustilasto($parametriolio)
{
    $tietokantaolio = $parametriolio->tietokantaolio;
    $omaid = $parametriolio->omaid;
    $palauteolio = new Palaute();
    // Painikkeita:
    $muokkausnappi = "";
    // Määritellään myöhemmin
    $poistonappi = "";
    // Määritellään myöhemmin
    $paluunappi = "";
    // Paluunappi perusnäkymään:
    $class = "rinnakkain";
    $id = "paluunappi";
    $action = "muistio.php";
    $name = Muistiotoimintonimet::$perustoiminto;
    $value = Muistiopainikkeet::$paluu_perussuoritusnakymaan;
    $paluunappi = Html::luo_painikelomake($class, $id, $action, $name, $value);
    // Paluunappi lajitarkennusnäkymään:
    $class = "rinnakkain";
    $id = "paluunappi";
    $action = "muistio.php";
    $name = Muistiotoimintonimet::$perustoiminto;
    $value = Muistiopainikkeet::$paluu_tilastot_lajeittain_nakymaan;
    $paluunappi2 = Html::luo_painikelomake($class, $id, $action, $name, $value);
    $otsikko = "";
    if ($parametriolio->vain_omat_suoritukset) {
        $otsikko = $_SESSION['tiedot']->etunimi . " " . $_SESSION['tiedot']->sukunimi . ", ";
    }
    $otsikko .= Lajitarkennukset::hae_lajitarkennuksen_kuvaus($parametriolio->lajitarkennus);
    $otsikko .= $paluunappi2 . $paluunappi;
    if ($parametriolio->vain_omat_suoritukset) {
        $mj = "<table id = 'tulostaulu'>\n            <tr><td id='kuukm' colspan='4'>{$otsikko}</td></tr>\n            <tr>\n                <th>Aika</th>\n                <th>Kuvaus</th>\n                <th>Pvm</th>\n                <th>Toiminnot</th>\n            </tr>";
    } else {
        $mj = "<table id = 'tulostaulu'>\n            <tr><td id='kuukm' colspan='5'>{$otsikko}</td></tr>\n            <tr>\n                <th>Aika</th>\n                <th>Kuvaus</th>\n                <th>Pvm</th>\n                <th>Nimi</th>\n                <th>Toiminnot</th>\n            </tr>";
    }
    // Tarkistetaan, haetaanko kaikki vaiko vain omat:
    if ($parametriolio->vain_omat_suoritukset) {
        $hakulause = "SELECT * FROM suoritukset\n                WHERE (lajitarkennus= " . $parametriolio->lajitarkennus . " AND henkilo_id = " . $omaid . ")\n                ORDER by kestotunnit, kestomin, kestosek;";
    } else {
        $hakulause = "SELECT * FROM suoritukset\n                WHERE lajitarkennus= '" . $parametriolio->lajitarkennus . "' " . "ORDER by kestotunnit, kestomin, kestosek;";
        //ORDER by henkilo_id, kestotunnit, kestomin, kestosek;"
    }
    $osumaoliot = $tietokantaolio->tee_OMAhaku_oliotaulukkopalautteella($hakulause);
    if (empty($osumaoliot)) {
        $mj .= "<tr><td colspan=5>" . Muistiotekstit::$suorituksia_ei_loytynyt . "</td></tr>";
    } else {
        $laskuri = 0;
        foreach ($osumaoliot as $suoritus) {
            // Painikkeet:
            $class = "rinnakkain";
            $id = "muokkausnappi";
            $action = "muistio.php?" . URL_muuttujat::$suoritus_id . "=" . $suoritus->id . "&" . URL_muuttujat::$valinnat . "=" . $suoritus->id . "&" . URL_muuttujat::$lajitarkennus . "=" . $suoritus->lajitarkennus . "&" . URL_muuttujat::$paluunakyma . "=" . Muistio_yleisia_arvoja::$nakyma_tulostilasto;
            $name = Muistiotoimintonimet::$perustoiminto;
            $value = Muistiopainikkeet::$muokkausnappikomento_lyhyt;
            $muokkausnappi = Html::luo_painikelomake($class, $id, $action, $name, $value);
            $id = "poistonappi";
            $value = Muistiopainikkeet::$poistonappikomento_lyhyt;
            $poistonappi = Html::luo_painikelomake($class, $id, $action, $name, $value);
            // Haetaan henkilön nimi:
            $nimi = hae_henkilon_nimi($suoritus->henkilo_id, false, $parametriolio->tietokantaolio);
            // Muotoillaan aika:
            $aika = muotoile_suorituksen_kesto($suoritus->kestotunnit, $suoritus->kestomin, $suoritus->kestosek, $suoritus->kesto);
            if ($laskuri % 2 != 0) {
                $mj .= "<tr class='parillinen_rivi'>";
            } else {
                $mj .= "<tr>";
            }
            // Nämä tulevat kaikkiin:
            $mj .= "<td>{$aika}</td>" . "<td>{$suoritus->kuvaus}</td>" . "<td class='aikasolu'>" . anna_viikonp_suomeksi($suoritus->paiva, $suoritus->kk, $suoritus->vuosi, true) . " " . $suoritus->paiva . "." . $suoritus->kk . "." . $suoritus->vuosi . "</td>";
            // Lisätään nimi, jos näytetään kaikki:
            if ($parametriolio->vain_omat_suoritukset == false) {
                $mj .= "<td>{$nimi}</td>";
            }
            // Toiminnot tulevat kaikkiin omiin ja adminille:
            if ($suoritus->henkilo_id == $parametriolio->omaid || $parametriolio->get_kayttajan_valtuudet() == Valtuudet::$HALLINTA) {
                $mj .= "<td>" . $muokkausnappi . $poistonappi . "</td>";
            } else {
                $mj .= "<td></td>";
            }
            // Lopuksi suljetaan taulukon rivi:
            $mj .= "</tr>";
            $laskuri++;
        }
    }
    $mj .= "</table>";
    $palauteolio->set_sisalto($mj);
    $palauteolio->set_nayta_kiintolinkit(false);
    return $palauteolio;
}
示例#4
0
/**
 * Toteuttaa albumin (bongaus tai kuva-albumit) esikatselukuvien näytön.
 * @param Parametrit $parametriolio
 * @return Palaute Palauttaa $palauteolio-luokan olion.
 */
function toteuta_nayta_esikatselukuvat($parametriolio)
{
    $palauteolio = new Palaute();
    if ($parametriolio->kokoelmanimi == Kuva::$KUVAT_ALBUMIT) {
        $sis = "Toimintoa ei toteutettu";
    } else {
        if ($parametriolio->kokoelmanimi == Kuva::$KUVAT_BONGAUS) {
            $sis = bongaus_nayta_albumin_esikatselu($parametriolio->omaid, $parametriolio->id_lj, $parametriolio->tietokantaolio, $parametriolio->get_kayttajan_valtuudet(), $parametriolio->kuvia_rinnakkain, $parametriolio->get_ikkunan_leveys(), $parametriolio->get_kuvahakumoodi());
        }
    }
    $palauteolio->set_ilmoitus("");
    $palauteolio->set_sisalto($sis);
    return $palauteolio;
}