@@ -404,11 +404,13 @@ BrutusinForms.create = function (schema) {
404404 var pseudoSchema = createPseudoSchema ( schema ) ;
405405 schemaMap [ name ] = pseudoSchema ;
406406 if ( schema . type === "object" ) {
407- pseudoSchema . properties = new Object ( ) ;
408- for ( var prop in schema . properties ) {
409- var childProp = name + "." + prop ;
410- pseudoSchema . properties [ prop ] = childProp ;
411- populateSchemaMap ( childProp , schema . properties [ prop ] ) ;
407+ if ( schema . properties ) {
408+ pseudoSchema . properties = new Object ( ) ;
409+ for ( var prop in schema . properties ) {
410+ var childProp = name + "." + prop ;
411+ pseudoSchema . properties [ prop ] = childProp ;
412+ populateSchemaMap ( childProp , schema . properties [ prop ] ) ;
413+ }
412414 }
413415 if ( schema . additionalProperties ) {
414416 var childProp = name + "[*]" ;
@@ -806,7 +808,6 @@ BrutusinForms.create = function (schema) {
806808 appendChild ( tbody , tr , s ) ;
807809 appendChild ( table , tbody , s ) ;
808810 render ( null , td2 , id , current , pp , value ) ;
809- nameInput . onkeyup ( ) ;
810811 if ( name ) {
811812 nameInput . value = name ;
812813 nameInput . onblur ( ) ;
@@ -829,7 +830,7 @@ BrutusinForms.create = function (schema) {
829830 var tbody = document . createElement ( "tbody" ) ;
830831 appendChild ( table , tbody , s ) ;
831832 var propNum = 0 ;
832- if ( s . properties ) {
833+ if ( s . hasOwnProperty ( " properties" ) ) {
833834 propNum = s . properties . length ;
834835 for ( var prop in s . properties ) {
835836 var tr = document . createElement ( "tr" ) ;
0 commit comments