Ejemplo n.º 1
0
 function defineSubmit($value, $label = 'Submit')
 {
     $result = parent::defineSubmit($value, $label);
     $this->_submit_value = $value;
 }
Ejemplo n.º 2
0
 function execute($options = array())
 {
     if (!isset($options)) {
         $options = array();
     }
     $options = array_merge($this->getOptions(), $options);
     $formEngine = new AMPForm($this->udm->name);
     //Create the Form
     $admin = $this->_adminConfig();
     $formEngine->addFields($this->_setupUdmFields());
     $formEngine->setFieldOrder($this->udm->getFieldOrder());
     $formEngine->defineSubmit('btnUdmSubmit', $options['button_label']);
     $formEngine->Build($admin);
     //set data Requirements
     $formEngine->validateEmail();
     if (!$admin) {
         $formEngine->enforceRules();
     }
     //Populate the form
     //$formEngine->setValues( $this->udm->getStoredValues() );
     //$formEngine->setValues( $this->udm->getData() );
     $stored_values = $this->udm->getStoredValues();
     $stored_data = $this->udm->getData();
     $all_values = array_merge($stored_values, $stored_data);
     $formEngine->setValues($all_values);
     if ($form_attrs = $this->getRegisteredFieldAttrs()) {
         foreach ($form_attrs as $field => $field_attrs) {
             foreach ($field_attrs as $attr) {
                 $formEngine->addFieldAttr($field, $attr);
             }
         }
     }
     //register results with udm
     $this->udm->form = $formEngine->form;
     if ($script = $formEngine->getJavascript()) {
         $this->_register_javascript($script);
     }
     if ($this->udm->submitted) {
         if (!$formEngine->validate() && !$admin) {
             $this->udm->formInvalidCallback();
             return false;
         }
     }
     $this->_formEngine =& $formEngine;
     return $formEngine->form;
 }
Ejemplo n.º 3
0
 function __wakeup()
 {
     parent::__wakeup();
     if ($this->allow_copy) {
         $this->copy_button();
     }
 }
Ejemplo n.º 4
0
 function _addElementCaptcha($name, $field_def)
 {
     $false = false;
     if ($this->_has_captcha) {
         return $false;
     }
     $this->_has_captcha = true;
     // use recaptcha if its set up
     if (defined('RECAPTCHA_PRIVATE_KEY') && RECAPTCHA_PRIVATE_KEY) {
         require 'recaptcha/recaptchalib.php';
         $error_html = "";
         if (isset($_POST['recaptcha_response_field']) && !AMPForm::validate_recaptcha()) {
             $error_html = "<!-- BEGIN error --><span style=\"color: #ff0000\">" . AMP_TEXT_ERROR_FORM_CAPTCHA_FAILED . "</span><br /><!-- END error -->\t";
         }
         $fRef = $this->form->addElement('static', 'captcha_' . $name, "", $error_html . recaptcha_get_html(RECAPTCHA_PUBLIC_KEY));
         $this->form->addElement('hidden', 'recaptcha_response_field');
         $this->form->addRule('recaptcha_response_field', AMP_TEXT_ERROR_REQUIRED_FIELD_MISSING, 'required');
         $rule_config = array('AMPForm', 'validate_recaptcha');
         $this->form->addRule('recaptcha_response_field', AMP_TEXT_ERROR_FORM_CAPTCHA_FAILED, 'callback', $rule_config);
         return $fRef;
         // use craptastic captcha otherwise
     } else {
         $this->_addUniqueIdValue();
         require_once 'AMP/Content/Display/HTML.inc.php';
         $renderer = new AMPDisplay_HTML();
         $this->form->addElement('static', 'captcha_' . $name, "", $renderer->image(AMP_Url_AddVars(AMP_CONTENT_URL_CAPTCHA, array('key=' . AMP_SYSTEM_UNIQUE_VISITOR_ID)), array('align' => 'center')));
         $defaults = $this->_getDefault($name);
         $fRef = $this->form->addElement('text', $name, $field_def['label'], $defaults);
         require_once 'AMP/Form/Element/Captcha.inc.php';
         $captcha_demo = new PhpCaptcha(array());
         $rule_config = array($captcha_demo, 'Validate');
         $this->form->addRule($name, AMP_TEXT_ERROR_FORM_CAPTCHA_FAILED, 'callback', $rule_config);
         return $fRef;
     }
 }