Plugin Directory

Changeset 1290031


Ignore:
Timestamp:
11/19/2015 05:05:09 PM (10 years ago)
Author:
latorante
Message:

Updating to version 3.0.7 - fixed when Form not set

File:
1 edited

Legend:

Unmodified
Added
Removed
  • genoo/trunk/libs/Genoo/HtmlForm.php

    r1289849 r1290031  
    5151    {
    5252        // Get all elements we can
    53         $formElements['form'] = array($this->form);
    54         $formElements['wrapper'] = $this->form->getElementsByTagName("p");
    55         $formElements['label'] = $this->form->getElementsByTagName("label");
    56         $formElements['input'] = $this->form->getElementsByTagName("input");
    57         $formElements['select'] = $this->form->getElementsByTagName("select");
    58         $formElements['textarea'] = $this->form->getElementsByTagName("textarea");
    59         $formElements['button'] = $this->form->getElementsByTagName("button");
    60         // Go through each filter type
    61         foreach($formElements as $filter => $elements)
    62         {
    63             // Class name
    64             $class = apply_filters('wpmktengine_form_element_class_' . $filter, NULL);
    65             // Only if class assigned
    66             if(!is_null($class)){
    67                 // can we go through?
    68                 if($elements instanceof \DOMNodeList || is_array($elements)){
    69                     // Can we assign these?
    70                     foreach($elements as $element){
    71                         if(
    72                             method_exists($element, 'getAttribute')
    73                             &&
    74                             method_exists($element, 'setAttribute')
    75                             &&
    76                             method_exists($element, 'hasAttribute')
    77                         ){
    78                             if($filter == 'input' && $element->hasAttribute('type') && $element->getAttribute('type') == 'hidden'){
    79                                 continue;
    80                             }
    81                             if($element->hasAttribute('class')){
    82                                 $prep = $element->getAttribute('class');
    83                                 $element->setAttribute('class', $prep . ' ' . $class);
    84                             } else {
    85                                 $element->setAttribute('class', $class);
     53        if(isset($this->form) && method_exists($this->form, 'getElementsByTagName')){
     54            $formElements['form'] = array($this->form);
     55            $formElements['wrapper'] = $this->form->getElementsByTagName("p");
     56            $formElements['label'] = $this->form->getElementsByTagName("label");
     57            $formElements['input'] = $this->form->getElementsByTagName("input");
     58            $formElements['select'] = $this->form->getElementsByTagName("select");
     59            $formElements['textarea'] = $this->form->getElementsByTagName("textarea");
     60            $formElements['button'] = $this->form->getElementsByTagName("button");
     61            // Go through each filter type
     62            foreach($formElements as $filter => $elements)
     63            {
     64                // Class name
     65                $class = apply_filters('wpmktengine_form_element_class_' . $filter, NULL);
     66                // Only if class assigned
     67                if(!is_null($class)){
     68                    // can we go through?
     69                    if($elements instanceof \DOMNodeList || is_array($elements)){
     70                        // Can we assign these?
     71                        foreach($elements as $element){
     72                            if(
     73                                method_exists($element, 'getAttribute')
     74                                &&
     75                                method_exists($element, 'setAttribute')
     76                                &&
     77                                method_exists($element, 'hasAttribute')
     78                            ){
     79                                if($filter == 'input' && $element->hasAttribute('type') && $element->getAttribute('type') == 'hidden'){
     80                                    continue;
     81                                }
     82                                if($filter == 'input' && $element->hasAttribute('type') && $element->getAttribute('type') == 'submit'){
     83                                    $class = apply_filters('wpmktengine_form_element_class_button', NULL);
     84                                }
     85                                if($element->hasAttribute('class')){
     86                                    $prep = $element->getAttribute('class');
     87                                    $element->setAttribute('class', $prep . ' ' . $class);
     88                                } else {
     89                                    $element->setAttribute('class', $class);
     90                                }
    8691                            }
    8792                        }
Note: See TracChangeset for help on using the changeset viewer.