Vytvoří jednoduchý kontaktní formulář.
Popis: Vytvoří kontaktní formulář.
void nClient::renderContactForm ( string
$formID [, array
$attrs, array
$...
] )
Parametry:
formID – Jednoznačný název formuláře.
attrs – Jedno nebo více polí obsahující atributy formuláře.
Parametry jsou tvořeny asociativním polem [form_send_button_value => "Odeslat", form_target_email => "", inputs => array(), lagn => $language]
, kde:
form_send_button_value
→Text na tlačítku pro odeslání emailu.
form_target_email
→ Cílový email formuláře. Pokud není zadaný, vzniká chyba
InvalidArgumentException
.
lang
→ ISO 639-1 kód jazyka, pro který dané atributy platí. V případě více polí atributů se stejným jazykem je vždy vybrán ten první.
inputs
→ Asociativní pole inputů daného formuláře. Klíč udává název daného inputu a pole hodnot tohoto klíče jeho atributy. Pole atributů inputu vypadá následovně:
[
'type' => 'text','name' => key,'sequence' => 2,'label' => false,'id' => hash'value' => '','placeholder' => '','class' => array(),'min' => '','max' => '','step' => '','autofocus' => false,'checked' => false,'selected' => false,'required' => false,'options' => array(),'wrap' => true,'wrap_class' => array('form-input-wrapper'),'wrap_style' => '','auto_populate' => false,'exception' => false]
, kde:
type → Je typ inputu. Povolené hodnoty jsou ["checkbox", "radio", "text", "textarea", "select", "email", "hidden"].
name → Název inputu.
sequence → Pořadí, v jakém bude input vykreslen. Min 0 max 100.
label → Label pro input.
id → ID inputu. Výchozí je: ripemd160 hash.
value → Hodnota inputu.
placeholder → Placeholder pro input.
class → Pole tříd pro input.
min → Min hodnota pro číselné inputy.
max → Max hodnota pro číselné inputy.
step → Krok pro číselné inputy.
autofocus → Autofokus (TRUE / FALSE).
checked → Zda bude výchozí stav pro checkbox „zatržený“ (TRUE / FALSE).
selected → Zda bude vybraný ve výchozím stavu (TRUE / FALSE).
required → Zda je požadovaný (TRUE / FALSE).
options → Volby pro checkbox a select. Skládají se z asociativního pole value => name.
wrap → Zda bude obalen divem (TRUE / FALSE).
wrap_class → Html třída pro wrap div.
wrap_style → Css styl pro wrap div.
Návratová hodnota:
Tato funkce neobsahuje návratovou hodnotu. Pouze vygeneruje kontaktní formulář. Při validním CSFR je výsledek odeslání emailu uložen jako flash zpráva s klíčem „_form_module“, kterou je možné získat pomocí funkce
getFlash např
nClient::getFlash ("_form_module")
. Pro výchozí mail funkci se bude jednat o hodnoty
TRUE
při validním odeslání a
FALSE
v jiných případech viz.
https://secure.php.net/manual/en/function.mail.php
<?php
nClient::renderContactForm("contactform", array('form_target_email' => "test@simpliko.cz",
"inputs" =>
array(
'text' => array('placeholder' => "Vaše zpráva:", 'type' => "textarea"),
'select' => array('type' => "select", 'options' => array('a' => "first", 'b' => "second", 'c' => "third")
)
)));
?>
<form method="post" enctype="application/x-www-form-urlencoded" action="https://nala.one/build/nClient.php">
<div class="form-input-wrapper ">
<textarea id="53ba8934437d496a02aafbfc8d1a278b2a3e7046" name="text" placeholder="Vaše zpráva:"></textarea></div>
<div class="form-input-wrapper ">
<select id="c1334a28a6b3c1d254b8abf7be2c8f4eac56b9e6" name="select">
<option value="a">first</option>
<option value="b">second</option>
<option value="c">third</option>
</select></div>
<input id="5a37a84e03eda22f0c3b0bd6664ff1cd6153192f" name="contact-form-id" class="contact-form-id" type="hidden"
value="4f78d02b75fd0429bb69294d2ce39a7a85c689fe">
<input id="0a3f6e529bc90778b1632ebb3437c04c2aa5b790" name="contact-form-id-raw" class="contact-form-id-raw"
type="hidden" value="contactform">
<input id="64c8dc47d55a7e04121ad23f7817933818e5447b" name="contact-form-csfr" class="contact-form-csfr"
type="hidden"
value="MTU1MTE5MTgyMmY4NWNjOThkOWY5NzQyZGU4NmQ1ZjcyYTE5MTFiZGE2MTU3YjM5OWIxNjc0NzJhZTNiNjNiYmJlNWM5NTUxZjNiMTAzZTE2Yg==">
<input id="602ea3c966770377272496aa11c0e0905506e544" name="contact-form-csfr-id" class="contact-form-csfr-id"
type="hidden" value="dff7695f9ce02940d34f719804bd504cf80eef3f">
<div class="form-input-wrapper ">
<input id="a422a4b4da95666a0f5239eb0565bfd1ebe5f489" name="contact-form-submit" class="contact-form-submit"
type="submit" value="Odeslat"></div>
</form>