package jspkerho; import kerho.*; import uiBeans.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; /** * Lomake joka huolehtii henkilön hakuehdoista. Hakuehtona on * Edit (input)-ikkunan johon kirjoitetaan hakuehto ja valintalista * josta valitaan mistä kentästä arvoa etsitään. * @author Vesa Lappalainen * @version 14.5.2005 */ public class HakuForm { static private Jasen apujasen = new Jasen(); private EditBox editHaku; private ComboBox cbKentat; /** * Lomake luodaan antamalla sille request ja session. * Lomake ottaa hakukenttään istunnon parametreistä vanhan arvon * jos requestissa ei ole uudempaa arvoa. * @param request HttpServletRequest jsp-sivun kutsuparamterit * @param session HttpSession istunnon parametrit */ public HakuForm(HttpServletRequest request, HttpSession session) { editHaku = new EditBox("hakusana", session, request, ""); editHaku.setColumns(10); cbKentat = new ComboBox("kentta", session); for (int i = apujasen.ekaKentta(); i < apujasen.getKenttia(); i++) cbKentat.lisaa(apujasen.getKysymys(i)); cbKentat.setValittu(request); } /** * Laittaa hakuehdot perustilaan. */ public void clear() { editHaku.setText(""); cbKentat.setSelectedIndex(0); } /** * Palauttaa valitun hakukentän indeksin. * @return int valittun hakukentän indeksi jäsenessä. */ public int geHakukentta() { return apujasen.ekaKentta() + cbKentat.getSelectedIndex(); } /** * Palauttaa viitteen Edit-ikkunaan * @return EditBox viite hakuehtoon */ public EditBox getEditHaku() { return editHaku; } /** * Palauttaa viitteen valintalista-olioon * @return ComboBox viite valintalistaan */ public ComboBox getCbKentat() { return cbKentat; } /** * Palautta käyttäjän kirjoittaman hakuehdon. * @return String hakuehto merkkijonona */ public String getHakuEhto() { String ehto = editHaku.getText(); if ( ehto.indexOf('*') < 0 ) ehto = '*' + ehto +'*'; return ehto; } /** * Paluttaa lomakkeen alkuun tulostettavan tekstin * @param page String lomakkeesta suoritettava sivu * @return String lamkkeen alkuun tulostettava html-koodi */ public String startStr(String page) { return "
"; } /** * Paluttaa nappulan tulostamiseksi tarvittavan html-koodin * @return String nappulan tekemiseksi tarvittava html-koodi */ public String submitBtn() { return ""; } }