MailForm Widget

Permette la creazione di un form con campi personalizzati per l'invio di mail

// API dBJs-ui  

Davide Bausach /

Standard sintax

    <form class="mailForm" enctype="multipart/form-data"> 
      <input type="hidden" name="to[]" value="example@example.com" />
      <!--
      ...
      -->
      <input type="email" name="from" required="required" />
      <input type="text" name="subject" />
      <input type="myInputType" name="field[myFiedName]" />
      <!--
      ...
      -->
      <input type="file" name="attachment[]" />
      <!--
      ...
      -->
      <span class="antiSpam"></span>
      <input type="number" class="sum" min="1" required="required" />
      <button type="submit">Send</button> 
      <span class="status"></span>
    </form>
  

Questo widget della libreria dBJs-ui richiede esplicitamente l'impostazione della proprietà data-dBJs per il tag html del documento in cui è: tale proprietà deve avere il valore del percorso assoluto della cartella dBJs in cui è contenuta la libreria. Nel seguente snippet si ipotizza che tale cartella sia stata insetita nella root del proggetto. Inoltre richiede che sia presente nelal libreria la cartella php.

    <html data-dBJs="http://www.example.com/">
  

Per implementare il widget MailForm ` necessario che ogni form contenuto nella pagina abbaia la classe mailForm, tale widget permentte di avere un form per invio mail in modo veloce, pratico e personalizzabile.
Sono obbligatori l'imput con name to[] (se ne possono inserire diversi per inviare la mail a più indirizzi oppure tale input si può omettere se viene modificato direttamente il file php della libreria inserendo i destinatari nell'array $to), l'input con name from per ottenere l'email del mittente e il button di tipo submit per l'invio.
Qualora si vogli inviare anche l'oggetto della mail il name del campo deve essere subject, i campi inviati possono essere si svariato tipo ma devono avere come name field[] e nelle parentesi quadre contenere il nome che si preferisce per indicare quello specifico campo.
Anche i campi file possono essere molteplici purchè il form abbia come enctype il valore multipart/form-data e in name del campo file sia attachment[].
Se si vuole avere un controllo di tipo antispam con una somma algebrica è sufficiente inserire nel form uno span con classe antiSpam e un input di tipo number con classe sum.

Example 1
radio1 radio2
    <form class="mailForm" enctype="multipart/form-data"> 
      <input type="hidden" name="to[]" value="example@example.com" />
      <input type="hidden" name="to[]" value="example2@example.com" />
      <input type="email" name="from" required="required" />
      <input type="text" name="subject" />
      <input type="text" name="field[text]" />
      <input type="radio" name="field[radio]" value="radio1" />
      <input type="radio" name="field[radio]" value="radio2" />
      <input type="checkbox" name="field[checkbox]" />
      <select name="field[select]">
        <option value="option1"></option>
        <option value="option2"></option>
        <option value="option3"></option>
      </select>
      <textarea name="field[textarea]" required="required"></textarea>
      <input type="file" name="attachment[]" />
      <input type="file" name="attachment[]" />
      <span class="antiSpam"></span>
      <input type="number" class="sum" min="1" required="required" />
      <button type="submit">Send</button> 
      <span class="status"></span>
    </form>
  
Operazione eseguita con successo!