Created
          April 27, 2015 04:09 
        
      - 
      
- 
        Save josedigital/829d9e55728d2a4f4d6b to your computer and use it in GitHub Desktop. 
    form from page input fields - pw
  
        
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | <?php | |
| // Get the page you need to edit | |
| $mypage = $pages->get('/some/page/'); | |
| // Populate with the names of the fields you want to exclude OR include (see instructions below) | |
| // Leave empty to output all the fields | |
| $myfields = array('body', 'email'); | |
| $form = $modules->get('InputfieldForm'); | |
| $fields = $mypage->getInputfields(); | |
| // If array is not empty use it to filter the fields | |
| if ($myfields){ | |
| foreach($fields as $f){ | |
| // Output all the fields minus the ones listed in the $myfields array | |
| // Instead, to output only the fields that are in the array, remove the (!) from the condition | |
| if (!in_array($f->name, $myfields)){ | |
| $form->append($f); | |
| } | |
| } | |
| } | |
| // Else, include all the fields | |
| else { | |
| $form->append($fields); | |
| } | |
| // Add save button | |
| $field = $this->modules->get('InputfieldSubmit'); | |
| $field->attr('id+name', 'submit_save'); | |
| $field->attr('value', 'Save'); | |
| $field->label = "submit herei"; | |
| $form->append($field); | |
| // Process the form | |
| // (code replaced by a new one provided by Ryan) | |
| if($input->post->submit_save) { | |
| $form->processInput($input->post); | |
| if(!$form->getErrors()) { | |
| $mypage->of(false); // turn off output formatting before setting values | |
| foreach($mypage->fields as $f) { | |
| $mypage->set($f->name, $form->get($f->name)->value); | |
| } | |
| } | |
| } | |
| include("./head.inc"); | |
| // Render the form | |
| echo $form->render(); | |
| include("./foot.inc"); | 
  
    Sign up for free
    to join this conversation on GitHub.
    Already have an account?
    Sign in to comment