MailForm Widget
Permette la creazione di un form con campi personalizzati per l'invio di mail
// API dBJs-ui
Davide Bausach
/ 18-05-2015
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.
<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>

