Palautelomakeen ominaisuudet määritellään YAML-muotoisessa asetustiedostossa /local/config/finna/FeedbackForms.yaml. Tiedoston alussa on dokumentoitu muokattavissa olevat asetukset. Voit esimerkiksi lisätä lomakkeelle uusia kenttiä tai ohjetekstejä. Voit myös tehdä uusia lomakkeita.
Sijoita lomakkeiden asetukset tiedostoon /local/config/vufind/FeedbackForms.yaml. Voit katsoa mallia Finnan Finnan esimerkkitiedosta.
Lomakkeet sijaitsevat päätason 'forms' -listan sisällä. Oletuksena tämä sisältää ainoastaan yleisen palautelomakkeen (FeedbackSite).
'fields' asetus (joka sisältää lomakkeen kentät) yliajetaan kokonaisuudessaan, muut kentät yksitellen. Jos haluat muokata yleisen palautelomakkeen kenttiä, kopioi 'fields' alkuperäisestä ja tee muutokset siihen. Muiden asetusten kanssa riittää kun kopioit yksittäisen yliajettavan asetuksen paikalliseen tiedostoon.
Hallintaliittymä tarkistaa tallennettavan tiedoston ja antaa virheilmoituksen jos tiedosto ei ole YAMl-formaatin mukainen. Yleinen virhe liittyy rivin sisennykseen, milloin virheilmoituksessa mainitaan millä rivillä virhe esiintyy ("Indentation problem at line..").
Lomakkeen yleiset asetukset
Asetus | Selitys | Mahdolliset arvot |
---|---|---|
enabled | Onko lomake käytössä? |
|
title | Lomakkeen otsikko | Käännösavain |
onlyForLoggedUsers | Näytetäänkö lomake ainoastaan kirjautuneille käyttäjille? |
|
emailSubject | Lomakkeen tallennuksen yhteydessä lähetettävän sähköpostiviestin otsikko. Voit lisätä otsikkoon lomakekentän arvon. Esimerkiksi jos lomakkeella on alasvetovalikko (nimellä "toimipiste"), voit lisätä valikon arvon viestin otsikkoon näin: emailSubject: Hankintaehdotus - %%toimipiste%% | Käännösavain |
recipient | Lomakkeen vastaanottajan nimi ja sähköpostiosoite. recipient name: nimi email: osoite Mikäli 'recipient' ei ole määritely, käytetään näkymän yleistä palauteosoitetta (Yleiset asetukset > Näkymän ylläpidon sähköpostiosoite). Voit määritellä lomakkeelle useamman vastaaanottajan asettamalla recipientin listaksi: recipient: - name: nimi-1 email: osoite-1 - name: nimi-2 email: osoite-2 | ks. esimerkit |
sendMethod | Lähetetäänkö lomakkeen vastaukset sähköpostilla (email) vai tallennetaanko vastaukset tietokantaan (database)? Oletuksena lomakkeen kautta kerätyt palautteet lähetetään määriteltyyn sähköpostiosoitteeseen (ks. 'recipient'). Mikäli palautteita ei tietoturvasyistä johtuen voida lähettää sähköpostin välityksellä, voidaan palautteet tallentaa tietokantaan. Tallennettujen palautteiden käsittely tapahtuu hallintaliittymän Lomakkeet-osiossa. Osiossa listataan tuotantonäkymien kautta lähetetyt palautteet. Tietokantaan tallennusta ei voi kokeilla testipalvelimella. |
|
reminderEmail | Jos lomakkeen vastaukset tallennetaan tietokantaan (ks. 'sendMethod'), lähetetään käsittelemättömistä palautteista muistutus tähän sähköpostiosoitteeseen. Jos osoitetta ei ole määritelty, lähetetään muistutukset näkymän yleiseen palauteosoiteeseen (Yleiset asetukset > Näkymän ylläpidon sähköpostiosoite). | Sähköpostiosoite |
hideSenderInfo | Kysytäänkö lomakkeella lähettäjän yhteystietoja (nimi ja sähköposti)? Oletuksena kysytään. |
|
senderInfoRequired | Edellytetäänkö lomakkeen lähettäjän syöttävän yhteystietonsa? |
|
senderInfoHelp | Lähettäjän yhteystietojen ohjeteksti. | Käännösavain |
response | Lomakkeen lähetyksen jälkeen näytettävä viesti. | Käännösavain |
help | Lomakkeen ohjetekstit, näytetään lomakkeen alussa ('pre') ja/tai lopussa ('post). Käännös voi sisältää HTML-muotoiluja. help: pre: feedback_help_pre post: feedback_help_post | Käännösavain |
fields | Lomakkeen kentät | Lista |
Lomakkeen kenttien asetukset
Asetus | Selitys | Mahdolliset arvot |
---|---|---|
name | Kentän nimi | |
type | Kentän tyyppi. |
|
label | Kentän otsikko | Käännösavain |
required | Onko kenttä pakollinen? Oletuksena ei ole. |
|
help | Elementin ohjeteksti | Käännösavain |
settings | Lista HTML-elementin arvoista. Esimerkki: listätään elementille omat CSS-luokat: settings: - [class, "css-luokka1 css-luokka2"] | Lista |
options | Elementin valinnat (vain kun type on 'select', 'radio' tai 'checkbox'). options: - valinta-1 - valinta-2 - valinta-3 tai listana options: - value: valinta-1 label: Valinta 1 - value: valinta-2 label: Valinta 2 - value: valinta-3 label: Valinta 3 Ensimmäisessä vaihto options: - valinta-1 - valinta-2 - valinta-3 | Lista käännösavaimia. |
optionGroups | Elementin valinnat eroteltuna omiin ryhmiinsä (vain kun type on 'select'). 'label' määrittää ryhmän otsikon (käännösavain). optionGroups: - label: otsikko-1 options: - valinta-1a - valinta-1b - label: otsikko-2 options: - valinta 2a - valinta 2b | Lista. |
recipient | Elementin arvo määrittää lomakkeen sähköpostin vastaanottajan (vain kun type on 'select'). Asetuksen avulla voi tehdä lomakkeen, jonka vastaanottaja määrittyy käyttäjän valinnan mukaan. Esimerkiksi hankintaehdotus voidaan ohjata suoraan käyttäjän valitsemaan kirjastoon. Vastaanottajien sähköpostiosoitteet määritellään 'options' tai 'optionGroups' -listaan käyttämällä jokaisessa valinnassa 'value' ja 'label' kenttiä. Näistä 'label' on käännösavain joka näytetään lomakkeella. 'value' kentän määrittämää vastaanottajan sähköpostiosoitetta ei näytetä käyttäjille. Esimerkki: recipient: true options: - value: [email protected] label: Vastaanottaja 1 - value: [email protected] label: Vastaanottaja 2 tai käyttäen 'optionGroups'-asetusta: recipient: true optionGroups: - label: otsikko-1 options: - value: [email protected] label: Vastaanottaja 1 - value: [email protected] label: Vastaanottaja 2 - label: otsikko-2 options: - value: [email protected] label: Vastaanottaja 3 - value: [email protected] label: Vastaanottaja 4 |
|
placeholder | Select-valikon ensimmäinen elementti (vain kun type on 'select'). Jos 'placeholder' on määritelty ja elementti on pakollinen ('required = true'), lomakkeen voi lähettää vain jos on valinnut valikosta jonkin muun kuin oletuksena näytettävän ensimmäisen elementin. Esimerkki: select-valikko, jonka ensimmäinen elementti on "Valitse toimipiste" ja tämän jälkeen valittavissa olevat toimipisteet: type: select required: true placeholder: Valitse toimipiste options: - toimipiste-1 - toimipiste-2 | Käännösavain |
Esimerkkejä
Esimerkki: poistetaan palautelomakkeelta Aihe-valikko ja lisätään Toimipiste-valikko.
Lisätään Toimipiste-valikko fields-listan alkuun. "label" määrittää käännösavaimen, mille pitää lisätä käännöstekstit. "options" -lista sisältää valikossa näytettävät valinnat (käännösavaimet). Toimipisteiden käännöskoodit löytyvät tiedostosta /local/languages/finna/fi.ini
Muut asetukset periytyvät Finnan yleisestä palautelomakkeesta.
forms: # Main Feedback form FeedbackSite: fields: - name: feedback_choose_library type: select options: - 1/Vaski/1/ - 1/Vaski/5/ - 1/Vaski/6/ label: feedback_choose_library - name: message type: textarea label: feedback_message required: true settings: - name: url type: url label: feedback_url settings: - [placeholder, http://...] - [class, 'url']
Esimerkki: lisätään Hankintaehdotus-lomake
Kentän "required" asetus määrittää onko kenttä pakollinen.
recipient-kentässä määritellään mihin sähköpostiosoitteeseen lomakkeen tiedot lähetetään. Vastaanottajan ei tarvitse olla sama kuin yleisellä palautelomakkeella.
forms: AcquisitionRequest: title: Acquisition request enabled: true useCaptcha: false recipient: name: Your Library email: [email protected] onlyForLoggedUsers: false emailSubject: Hankintaehdotus (%%library%%) response: Thank you for your feedback. senderInfoRequired: false #senderInfoHelp: feedback_info #help: # pre: feedback_help_pre # post: feedback_help_post fields: - name: library type: select options: - 1/Vaski/1/ - 1/Vaski/5/ - 1/Vaski/6/ label: feedback_choose_library - name: author type: text label: Author required: true - name: title type: text label: Title required: true - name: format type: select options: - 0/Book/ - 0/Journal/ - 1/Sound/CD/ - 1/Video/DVD/ - 1/Other/Other/ label: Format - name: info type: textarea label: Additional Information required: false
Linkitys lomakkeeseen
Voit linkittää lomakkeeseen lisäämällä sivupohjaan:
<a href="<?=$this->url('feedback-form', ['id' => 'AcquisitionRequest'])?>">Tee hankintaehdotus!</a>
Voit lisätä navigaatiovalikkoon linkin lomakkeelle määrittämällä linkin toiminnon muodossa
/Feedback/Form/<lomakkeen nimi>