- # Retrieve object fields from metadata
- metadata = settings['page'].get_metadata()
- md_o = metadata.details_by_object(settings['object'])
- self.columns = md_o['column']
+ if 'object' in settings:
+ self.object = settings['object']
+
+ if 'fields' in settings:
+ self.fields = []
+ for field in settings['fields']:
+ c = {
+ 'name' : field.get('name', ''),
+ 'field' : field.get('field', ''),
+ 'type' : field.get('type', 'input'),
+ 'description' : field.get('description', ''),
+ 'validate_rx' : field.get('validate_rx', ''),
+ 'validate_err' : field.get('validate_err', ''),
+ 'old_value' : 'POST',
+ }
+ self.fields.append(c)
+ else:
+ # Attempt to retrieve object fields from metadata
+ metadata = settings['page'].get_metadata()
+ md_o = metadata.details_by_object(settings['object'])
+ self.fields = md_o['column']