/**
  * Update config for given values
  * @param array $vals.  An array of values (presumably from $_POST) to update magic data from
  * @returns  true on sucess
  */
 public function processValues($vals)
 {
     if (array_key_exists('check_bad_percent', $vals) && is_scalar($c = $vals['check_bad_percent'])) {
         $this->setField('check_bad_percent', $c ? 1 : 0);
     }
     return parent::processValues($vals);
 }
 protected function displayMeta($mainNode, $transient_options, $action)
 {
     if (!parent::displayMeta($mainNode, $transient_options, $action)) {
         return false;
     }
     if (!($listNode = $this->template->getElementByName('list', 0, $mainNode)) instanceof DOMNode) {
         I2CE::raiseError("Don't know where to add lists");
         return false;
     }
     $list = $this->getField('list');
     foreach ($this->getListForms() as $form) {
         $attrs = array('value' => $form);
         if ($list == $form) {
             $attrs['selected'] = 'selected';
         }
         $listNode->appendChild($this->template->createElement('option', $attrs, $form));
     }
     $this->renameInputs(array('list'), $mainNode);
     return true;
 }