コード例 #1
0
 /**
  * Vrátí výchozí fieldset kontaktního formuláře
  * 
  * @author Martin Hlaváč
  * @link http://www.ktstudio.cz
  * 
  * @return \KT_Form_Fieldset
  */
 public static function getFieldset($splittedName = false, $exactedPhone = true)
 {
     $fieldset = new KT_Form_Fieldset(self::FORM_PREFIX, __("Kontakt", KT_DOMAIN));
     $fieldset->setPostPrefix(self::FORM_PREFIX);
     if ($splittedName) {
         $fieldset->addText(self::FIRST_NAME, __("Jméno*:", KT_DOMAIN))->setPlaceholder(__("Jméno*", KT_DOMAIN))->addAttribute("maxlength", 30)->addRule(KT_Field_Validator::REQUIRED, __("Jméno je povinná položka", KT_DOMAIN))->addRule(KT_Field_Validator::MAX_LENGTH, __("Jméno může mít maximálně 30 znaků", KT_DOMAIN), 30);
         $fieldset->addText(self::LAST_NAME, __("Příjmení*:", KT_DOMAIN))->setPlaceholder(__("Příjmení*", KT_DOMAIN))->addAttribute("maxlength", 30)->addRule(KT_Field_Validator::REQUIRED, __("Příjmení je povinná položka", KT_DOMAIN))->addRule(KT_Field_Validator::MAX_LENGTH, __("Příjmení může mít maximálně 30 znaků", KT_DOMAIN), 30);
     } else {
         $fieldset->addText(self::NAME, __("Jméno*:", KT_DOMAIN))->setPlaceholder(__("Jméno*", KT_DOMAIN))->addAttribute("maxlength", 30)->addRule(KT_Field_Validator::REQUIRED, __("Jméno je povinná položka", KT_DOMAIN))->addRule(KT_Field_Validator::MAX_LENGTH, __("Jméno může mít maximálně 30 znaků", KT_DOMAIN), 30);
     }
     $fieldset->addText(self::EMAIL, __("E-mail*:", KT_DOMAIN))->setPlaceholder(__("E-mail*", KT_DOMAIN))->addAttribute("maxlength", 50)->addRule(KT_Field_Validator::REQUIRED, __("E-mail je povinná položka", KT_DOMAIN))->addRule(KT_Field_Validator::EMAIL, __("E-mail je ve špatném tvaru", KT_DOMAIN))->addRule(KT_Field_Validator::MAX_LENGTH, __("E-mail může mít maximálně 50 znaků", KT_DOMAIN), 50);
     $phoneField = $fieldset->addText(self::PHONE, __("Telefon*:", KT_DOMAIN))->setPlaceholder(__("Telefon*", KT_DOMAIN))->addAttribute("maxlength", 30)->addRule(KT_Field_Validator::REQUIRED, __("Telefon je povinná položka", KT_DOMAIN))->addRule(KT_Field_Validator::MAX_LENGTH, __("Telefon může mít maximálně 30 znaků", KT_DOMAIN), 30);
     if ($exactedPhone) {
         $phoneField->addRule(KT_Field_Validator::REGULAR, __("Telefon je ve špatném tvaru", KT_DOMAIN), "^((\\+|0)(420|421) ?)?[1-9][0-9]{2} ?[0-9]{3} ?[0-9]{3}\$");
     }
     $fieldset->addTextarea(self::MESSAGE, __("Zpráva*:", KT_DOMAIN))->setPlaceholder(__("Zpráva*", KT_DOMAIN))->addAttribute("maxlength", 1000)->addRule(KT_Field_Validator::REQUIRED, __("Zpráva je povinná položka", KT_DOMAIN))->addRule(KT_Field_Validator::MAX_LENGTH, __("Zpráva může mít maximálně 1000 znaků", KT_DOMAIN), 1000);
     $fieldset->addText(self::FAVOURITE, __("Kontrola:", KT_DOMAIN))->setPlaceholder(__("Nevyplňujte, pokud jste člověk", KT_DOMAIN))->addAttrClass("hidden")->addAttribute("maxlength", 30);
     $fieldset->addWpNonce(self::NONCE, __("Kontrola:", KT_DOMAIN));
     return $fieldset;
 }
コード例 #2
0
 public static function getSimpleProfileFieldset(WP_User $currentUser = null, $withPhone = true, $isPhoneRequired = true)
 {
     $fieldset = new KT_Form_Fieldset(self::USER_PROFILE_FIELDSET);
     $fieldset->setPostPrefix(self::USER_PROFILE_FIELDSET);
     if ($currentUser === null) {
         $currentUser = wp_get_current_user();
     }
     $fieldset->addText(self::FIRST_NAME, __("Jméno*:", "KT_CORE_DOMAIN"))->setDefaultValue($currentUser->user_firstname)->setAttrMaxlength(30)->addRule(KT_Field_Validator::REQUIRED, __("Jméno je povinná položka.", "KT_CORE_DOMAIN"))->addRule(KT_Field_Validator::MAX_LENGTH, __("Jméno může mít maximálně 30 znaků.", "KT_CORE_DOMAIN"), 30);
     $fieldset->addText(self::LAST_NAME, __("Příjmení*:", "KT_CORE_DOMAIN"))->setDefaultValue($currentUser->user_lastname)->setAttrMaxlength(30)->addRule(KT_Field_Validator::REQUIRED, __("Příjmení je povinná položka.", "KT_CORE_DOMAIN"))->addRule(KT_Field_Validator::MAX_LENGTH, __("Příjmení může mít maximálně 30 znaků.", "KT_CORE_DOMAIN"), 30);
     $fieldset->addText(self::EMAIL, __("E-mail*:", "KT_CORE_DOMAIN"))->setDefaultValue($currentUser->user_email)->setAttrMaxlength(50)->addRule(KT_Field_Validator::REQUIRED, __("E-mail je povinná položka.", "KT_CORE_DOMAIN"))->addRule(KT_Field_Validator::EMAIL, __("E-mail musí být ve správném tvaru.", "KT_CORE_DOMAIN"))->addRule(KT_Field_Validator::MAX_LENGTH, __("E-mail může mít maximálně 30 znaků.", "KT_CORE_DOMAIN"), 50);
     $userPhoneKey = KT_User_Profile_Config::PHONE;
     if ($withPhone) {
         $phoneLabel = $isPhoneRequired ? __("Telefon*:", "KT_CORE_DOMAIN") : __("Telefon:", "KT_CORE_DOMAIN");
         $phoneField = $fieldset->addText(self::PHONE, $phoneLabel)->setDefaultValue($currentUser->{$userPhoneKey})->setAttrMaxlength(16)->setPlaceholder(__("+420 606 707 808", "KT_CORE_DOMAIN"))->setToolTip(__("Telefon by měl být v mezinárodní formě, např. \"+420 606 707 808\"...", "KT_CORE_DOMAIN"))->addRule(KT_Field_Validator::MAX_LENGTH, __("Telefon může mít maximálně 16 znaků.", "KT_CORE_DOMAIN"), 16);
         if ($isPhoneRequired) {
             $phoneField->addRule(KT_Field_Validator::REQUIRED, __("Telefon je povinná položka.", "KT_CORE_DOMAIN"));
         }
     }
     $fieldset->addWpNonce(self::NONCE);
     return $fieldset;
 }