original_string: public function outputGroupedErrors()
      {
          if (empty($this->errors)) {
              return '';
          }
          if (!empty($this->options['errors_prefix'])) {
              $errorHtml = str_replace(array('<qf:message>', '</qf:message>', '{message}'),
                                       array('', '', $this->options['errors_prefix']),
                                       $this->templatesForClass['special:error']['prefix']);
          } else {
              $errorHtml = preg_replace('!<qf:message>.*</qf:message>!isU', '',
                                        $this->templatesForClass['special:error']['prefix']);
          }
          $errorHtml .= implode($this->templatesForClass['special:error']['separator'], $this->errors);
          if (!empty($this->options['errors_suffix'])) {
              $errorHtml .= str_replace(array('<qf:message>', '</qf:message>', '{message}'),
                                        array('', '', $this->options['errors_suffix']),
                                        $this->templatesForClass['special:error']['suffix']);
          } else {
              $errorHtml .= preg_replace('!<qf:message>.*</qf:message>!isU', '',
                                        $this->templatesForClass['special:error']['suffix']);
          }
          return $errorHtml;
      }
code: public function outputGroupedErrors()
      {
          if (empty($this->errors)) {
              return '';
          }
          if (!empty($this->options['errors_prefix'])) {
              $errorHtml = str_replace(array('<qf:message>', '</qf:message>', '{message}'),
                                       array('', '', $this->options['errors_prefix']),
                                       $this->templatesForClass['special:error']['prefix']);
          } else {
              $errorHtml = preg_replace('!<qf:message>.*</qf:message>!isU', '',
                                        $this->templatesForClass['special:error']['prefix']);
          }
          $errorHtml .= implode($this->templatesForClass['special:error']['separator'], $this->errors);
          if (!empty($this->options['errors_suffix'])) {
              $errorHtml .= str_replace(array('<qf:message>', '</qf:message>', '{message}'),
                                        array('', '', $this->options['errors_suffix']),
                                        $this->templatesForClass['special:error']['suffix']);
          } else {
              $errorHtml .= preg_replace('!<qf:message>.*</qf:message>!isU', '',
                                        $this->templatesForClass['special:error']['suffix']);
          }
          return $errorHtml;
      }
code_tokens: public function outputGroupedErrors ( ) { if ( empty ( $ this -> errors ) ) { return '' ; } if ( ! empty ( $ this -> options [ 'errors_prefix' ] ) ) { $ errorHtml = str_replace ( array ( '<qf:message>' , '</qf:message>' , '{message}' ) , array ( '' , '' , $ this -> options [ 'errors_prefix' ] ) , $ this -> templatesForClass [ 'special:error' ] [ 'prefix' ] ) ; } else { $ errorHtml = preg_replace ( '!<qf:message>.*</qf:message>!isU' , '' , $ this -> templatesForClass [ 'special:error' ] [ 'prefix' ] ) ; } $ errorHtml .= implode ( $ this -> templatesForClass [ 'special:error' ] [ 'separator' ] , $ this -> errors ) ; if ( ! empty ( $ this -> options [ 'errors_suffix' ] ) ) { $ errorHtml .= str_replace ( array ( '<qf:message>' , '</qf:message>' , '{message}' ) , array ( '' , '' , $ this -> options [ 'errors_suffix' ] ) , $ this -> templatesForClass [ 'special:error' ] [ 'suffix' ] ) ; } else { $ errorHtml .= preg_replace ( '!<qf:message>.*</qf:message>!isU' , '' , $ this -> templatesForClass [ 'special:error' ] [ 'suffix' ] ) ; } return $ errorHtml ; }
docstring: Creates a error list if 'group_errors' option is true
  
  @return   string  HTML with a list of all validation errors
docstring_tokens: Creates a error list if group_errors option is true