Palautelomakeen ominaisuudet määritellään YAML-muotoisessa asetustiedostossa /local/config/finna/FeedbackForms.yaml. Tiedoston alussa on dokumentoitu muokattavissa olevat asetukset. Lomakkeelle on esimerkiksi mahdollista lisätä uusia kenttiä tai ohjetekstejä. Myös uusien lomakkeiden tekeminen on mahdollista.

Muokkaukset sijoitetaan tiedostoon /local/config/vufind/FeedbackForms.yaml. Finnan esimerkkitiedoston voi kopioida malliksi ja tehdä kopioon omat muokkaukset.

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. Eli jos haluat muokata yleisen palautelomakkeen kenttiä, kopioi 'fields' alkuperäisestä ja tee muutokset siihen. Muiden asetusten kanssa riittää kun kopioi yksittäisen yliajettavan asetuksen paikalliseen tiedostoon.

Hallintaliittymä antaa tallennuksen yhteydessä virheilmoituksen mikäli asetustiedosto ei ole YAMl-formaatin mukainen. Yleinen virhe liittyy rivin sisennykseen, milloin virheilmoituksessa mainitaan "Indentation problem at line ".

Lomakkeen yleiset asetukset

AsetusSelitysMahdolliset arvot
enabledOnko lomake käytössä?
  • true
  • false
titleLomakkeen otsikkoKäännösavain
onlyForLoggedUsersNäytetäänkö lomake ainoastaan kirjautuneille käyttäjille?
  • true
  • false
emailSubject

Lomakkeen tallennuksen yhteydessä lähetettävän sähköpostiviestin otsikko.

Otsikkoon voi lisätä mukaan lomakekentän arvon. Esimerkiksi jos lomakkeella on alasvetovalikko (nimellä "toimipiste"), voi valikon arvon lisätä mukaan 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).

Lomakkeelle voi määritellä 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 siis voi kokeilla testipalvelimella.

  • email
  • database
reminderEmailJos 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
hideSenderInfoKysytäänkö lomakkeella lähettäjän yhteystietoja (nimi ja sähköposti)? Oletuksena kysytään.
  • true
  • false
senderInfoRequiredEdellytetäänkö lomakkeen lähettäjän syöttävän yhteystietonsa?
  • true
  • false
senderInfoHelpLähettäjän yhteystietojen ohjeteksti.Käännösavain
responseLomakkeen 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
fieldsLomakkeen kentätLista

Lomakkeen kenttien asetukset

AsetusSelitysMahdolliset arvot
nameKentän nimi
typeKentän tyyppi.
  • text (tekstikenttä)
  • textarea (tekstialue)
  • email (sähköpostikenttä)
  • url (URL-kenttä)
  • select (valikko)
  • radio (valintanappi)
  • checkbox (valintaruutu)
labelKentän otsikkoKäännösavain
requiredOnko kenttä pakollinen? Oletuksena ei ole.
  • true
helpElementin ohjetekstiKää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-1@email.com
    label: Vastaanottaja 1
  - value: email-2@email.com
    label: Vastaanottaja 2

tai käyttäen 'optionGroups'-asetusta:

recipient: true
optionGroups:
  - label: otsikko-1
    options:
     - value: email-1@email.com
       label: Vastaanottaja 1
     - value: email-2@email.com
       label: Vastaanottaja 2
  - label: otsikko-2
    options:
     - value: email-3@email.com
       label: Vastaanottaja 3
     - value: email-4@email.com
       label: Vastaanottaja 4
  • true
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


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@email.com

    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

Lomakkeelle voi tehdä linkin lisäämällä sivupohjaan:

<a href="<?=$this->url('feedback-form', ['id' => 'AcquisitionRequest'])?>">Tee hankintaehdotus!</a>

Navigaatiovalikkoon voi lisätä linkin lomakkeelle määrittämällä linkille toiminnon muodossa 

/Feedback/Form/<lomakkeen nimi>


  • No labels