/** * * @author Martin Hlaváč * @link http://www.ktstudio.cz * * @param WP_User $currentUser * @return \KT_Form_Fieldset */ public static function getCommentFieldset(WP_User $currentUser = null) { $fieldset = new KT_Form_Fieldset(self::COMMENT_FIELDSET); $fieldset->setPostPrefix(self::COMMENT_FIELDSET); if ($currentUser === null) { $currentUser = wp_get_current_user(); } $fieldset->addText(self::FIRST_NAME, __("Autor*:", KT_DOMAIN))->setValue($currentUser->display_name)->setAttrMaxlength(30)->addRule(KT_Field_Validator::REQUIRED, __("Autor je povinná položka.", KT_DOMAIN))->addRule(KT_Field_Validator::MAX_LENGTH, __("Autor může mít maximálně 30 znaků.", KT_DOMAIN), 30); $fieldset->addText(self::EMAIL, __("E-mail*:", KT_DOMAIN))->setValue($currentUser->user_email)->setAttrMaxlength(50)->addRule(KT_Field_Validator::REQUIRED, __("E-mail je povinná položka.", KT_DOMAIN))->addRule(KT_Field_Validator::EMAIL, __("E-mail musí být ve správném tvaru.", KT_DOMAIN))->addRule(KT_Field_Validator::MAX_LENGTH, __("E-mail může mít maximálně 50 znaků.", KT_DOMAIN), 50); $fieldset->addText(self::URL, __("URL:", KT_DOMAIN))->setAttrMaxlength(100)->addRule(KT_Field_Validator::MAX_LENGTH, __("URL může mít maximálně 100 znaků.", KT_DOMAIN), 100); $fieldset->addTextarea(self::COMMENT, __("Komentář*:", KT_DOMAIN))->setAttrMaxlength(1000)->addRule(KT_Field_Validator::REQUIRED, __("Komentář je povinná položka.", KT_DOMAIN))->addRule(KT_Field_Validator::MAX_LENGTH, __("Komentář může mít maximálně 1000 znaků.", KT_DOMAIN), 1000); $fieldset->addField(self::getCommentFavouriteField(__("Kontrola:", KT_DOMAIN))); $fieldset->addField(self::getCommentNonceField($fieldset->getName(), __("Kontrola:", KT_DOMAIN))); return $fieldset; }
/** * Přidá objekt KT_Form_Fieldset do kolekce fieldsetů formu * * @author Tomáš Kocifaj * @link http://www.ktstudio.cz * * @param \KT_Form_Fieldset * @return \KT_Form_Fieldset */ public function addFieldSetByObject(KT_Form_Fieldset $fieldSet) { $this->fieldsets[$fieldSet->getName()] = $fieldSet; return $fieldSet; }
/** * Vytvoří metabox na základě @see KT_Form_Fieldset a dalších pouze nutných parametrů pro datový typ KT_MetaBox_Data_Type_Enum::CRUD i s případnou registrací * * @author Martin Hlaváč * @link http://www.ktstudio.cz * * @param KT_Form_Fieldset $fieldset * @param string $screen * @param string $className * @param string $idParamName * @param boolean $register Označení, zda se po vytvoření MetaBoxů rovnou zavolat i registrace (do systému) * @return \KT_MetaBox */ public static function createCrud(KT_Form_Fieldset $fieldset, $screen, $className, $idParamName, $register = true) { $id = $fieldset->getName(); $title = $fieldset->getTitle(); $metaBox = new KT_MetaBox($id, $title, $screen, KT_MetaBox_Data_Type_Enum::CRUD, $fieldset); $metaBox->setClassName($className); $metaBox->setIdParamName($idParamName); if ($register) { $metaBox->Register(); } return $metaBox; }