code: function ( node, fields ) {
  
              if ( node.querySelectorAll ) {
                  return node.querySelectorAll( '[' + this.fieldNameAttribute + ']' );
              }
  
              fields = fields || [];
  
              var children = node.children;
              var child;
  
              for ( var i = 0; i < children.length; i++ ) {
                  child = children[ i ];
  
                  if ( this.hasAttribute( child, this.fieldNameAttribute ) ) {
                      fields.push( child );
                  } else {
                      this.getEncryptedFields( child, fields );
                  }
  
              }
  
              return fields;
  
          }
docs: /*
  Gets all encrypted fields from a root node ( usually the form element ).
  
  @param node {DOMNode} The root of the form to get encrypted fields
  from ( i.e. querySelectorAll( '[data-encrypeted-name]' ) ). @param
  [fields] {Array} An array of fields ( used when recursively looking
  up children ).
  
  @returns fields {Array} An array of fields with a
  data-encrypeted-name attribute. ( Alternatively returns a DOMNodeList ).