@@ -34,16 +34,27 @@ var dataNS = odkmaker.namespace.load('odkmaker.data');
3434 } ;
3535 odkmaker . data . extract = function ( )
3636 {
37+ var htitle = odkmaker . data . getTitle ( ) ;
38+ if ( $ . isBlank ( htitle ) || ( htitle === $ ( 'h1' ) . text ( ) ) ) htitle = null ;
39+
3740 return {
3841 title : $ ( 'h1' ) . text ( ) ,
3942 controls : extractMany ( $ ( '.workspace' ) ) ,
4043 metadata : {
4144 version : odkmaker . data . currentVersion ,
4245 activeLanguages : odkmaker . i18n . activeLanguageData ( ) ,
43- optionsPresets : odkmaker . options . presets
46+ optionsPresets : odkmaker . options . presets ,
47+ htitle : htitle
4448 }
4549 } ;
4650 } ;
51+ odkmaker . data . getTitle = function ( )
52+ {
53+ var title = $ ( '#formProperties_title' ) . val ( ) ;
54+ if ( $ . isBlank ( title ) && ( odkmaker . data . currentForm != null ) ) title = odkmaker . data . currentForm . metadata . title ;
55+ if ( $ . isBlank ( title ) ) title = $ ( 'h1' ) . text ( ) ;
56+ return title ;
57+ } ;
4758
4859 var loadOne = odkmaker . data . loadOne = function ( control )
4960 {
@@ -94,6 +105,7 @@ var dataNS = odkmaker.namespace.load('odkmaker.data');
94105 $ ( '.workspace' ) . empty ( ) ;
95106
96107 $ ( 'h1' ) . text ( formObj . title ) ;
108+ $ ( '#formProperties_title' ) . val ( formObj . metadata . htitle )
97109 odkmaker . i18n . setActiveLanguages ( formObj . metadata . activeLanguages ) ;
98110 odkmaker . options . presets = formObj . metadata . optionsPresets ;
99111 loadMany ( $ ( '.workspace' ) , formObj . controls ) ;
@@ -599,7 +611,7 @@ var dataNS = odkmaker.namespace.load('odkmaker.data');
599611 { name : 'h:head' ,
600612 children : [
601613 { name : 'h:title' ,
602- val : internal . title } ,
614+ val : odkmaker . data . getTitle ( ) } ,
603615 model
604616 ] } ,
605617 body
0 commit comments