source: main/trunk/ibisph-view/src/main/webapp/xslt/html/indicator/profile/view/Page.xslt @ 17433

Last change on this file since 17433 was 17433, checked in by Garth Braithwaite, 4 years ago

view - AVs working better. QM total row. added cache able chart and maps xml to the injected model map.

File size: 22.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2
3<xsl:stylesheet version="3.0" 
4        xmlns:xsl ="http://www.w3.org/1999/XSL/Transform" 
5        xmlns:xs  ="http://www.w3.org/2001/XMLSchema"
6        xmlns:ibis="http://www.ibisph.org"
7
8        exclude-result-prefixes="ibis xs xsl"
9>
10        <xsl:import href="../../../../xml/Interactive.xslt"/>
11        <xsl:import href="../../../../json/Dataset.xslt"/>
12        <xsl:import href="../../../../json/Kendo.xslt"/>
13        <xsl:import href="../../../../json/LeafletMap.xslt"/>
14        <xsl:import href="../../../Graphic.xslt"/>
15        <xsl:import href="../Indicator.xslt"/>
16        <xsl:import href="../Page.xslt"/>
17
18
19        <ibis:doc>
20                <name>html/indicator/profile/view/Page</name>
21                <summary>Interactive indicator profile view page</summary>
22                <description>
23                        Specific XSLT used to create the indicator profile view page.
24                </description>
25        </ibis:doc>
26
27
28
29        <xsl:param name="Page.pageTitle" ibis:doc="Page's title text based on the 'INDICATOR/TITLE' element.">
30                Health Indicator Report - <xsl:value-of select="ibis:getIndicatorTitle($indicator)"/>
31        </xsl:param>
32        <xsl:param name="Page.sectionsTitle" ibis:doc="Page's content block title text based on the 'INDICATOR/TITLE' element.">
33                Health Indicator Report of <xsl:value-of select="ibis:getIndicatorTitle($indicator)"/>
34        </xsl:param>
35
36        <xsl:param name="Page.comparisonDimensionName"  select="'GeoState'"/>
37        <xsl:param name="Page.comparisonDimensionValue" select="'35'"/>
38
39        <xsl:param name="Indicator.contentBlockType" select="'fixed'"/>
40        <xsl:param name="Indicator.contentBlockTitleLevel" select="3"/>
41
42
43
44        <xsl:template name="Page.sectionsContent" ibis:doc="Main page content template that determines if IP or Surrogate.">
45                <xsl:choose>
46                        <xsl:when test="0 = string-length($indicatorView/SURROGATE_VIEW_URL)">
47                                <xsl:call-template name="Page.interativeContent">
48                                        <xsl:with-param name="indicatorView" select="$indicatorView"/>
49                                </xsl:call-template>
50                        </xsl:when>
51                        <xsl:otherwise>
52                                <xsl:call-template name="Page.insertAJAXContent">
53                                        <xsl:with-param name="sourceContentURL" select="$indicatorView/SURROGATE_VIEW_URL"/>
54                                </xsl:call-template>
55                        </xsl:otherwise>
56                </xsl:choose>
57        </xsl:template>
58
59
60        <xsl:template name="Page.interativeContent"
61                ibis:doc="Main interactive sections content template."
62        >
63                <xsl:param name="indicatorView"/>
64
65                <xsl:variable name="measureName" select="$indicatorView/MEASURE_NAME"/>
66                <xsl:variable name="measure"     select="($indicator//MEASURE[NAME = $measureName])[1]"/>
67
68                <xsl:call-template name="ContentContainer.expandable">
69                        <xsl:with-param name="title"   select="'Why Is This Important?'"/>
70                        <xsl:with-param name="content" select="$indicator/WHY_IMPORTANT"/>
71                        <xsl:with-param name="description" select="'Text that describes why this indicator is important to the populations overall health'"/>
72                        <xsl:with-param name="show"    select="true()"/>
73                        <xsl:with-param name="additionalClasses" select="'Text'"/>
74                        <xsl:with-param name="addWikiAttribute"  select="true()"/>
75                </xsl:call-template>
76
77                <xsl:variable name="showMap" select="ibis:Graphic.showMap($indicatorView/MAP_NAME)"/> 
78                <xsl:if test="$showMap">
79                        <xsl:call-template name="ContentContainer.expandable">
80                                <xsl:with-param name="title" select="'Map'"/>
81                                <xsl:with-param name="content">
82                                        <xsl:call-template name="Graphic.mapContainer">
83                                                <xsl:with-param name="containerID" select="'map'"/>
84                                                <xsl:with-param name="title" select="ibis:getIndicatorViewMapTitle($indicator, $indicatorView, $Indicator.dimensions)"/>
85                                        </xsl:call-template>
86                                        <xsl:call-template name="Indicator.contentBlock">
87                                                <xsl:with-param name="content" select="$indicatorView/MAP_NARRATIVE"/>
88                                                <xsl:with-param name="contentBlockType" select="'fixed'" tunnel="yes"/>
89                                        </xsl:call-template>
90                                </xsl:with-param>
91                                <xsl:with-param name="show" select="true()"/>
92                                <xsl:with-param name="addWikiAttribute" select="false()"/>
93                                <xsl:with-param name="description" select="'Choropleth/thematic map.'"/>
94                        </xsl:call-template>
95                </xsl:if>
96
97                <xsl:if test="ibis:Graphic.showChart($indicatorView/CHART_NAME)">
98                        <xsl:call-template name="ContentContainer.expandable">
99                                <xsl:with-param name="title" select="if('Line'=$indicatorView/CHART_NAME) then 'Trend' else 'Chart'"/>
100                                <xsl:with-param name="content">
101                                        <xsl:call-template name="Graphic.chartContainer">
102                                                <xsl:with-param name="containerID" select="'chart'"/>
103                                                <xsl:with-param name="title" select="ibis:getIndicatorViewChartTitle($indicator, $indicatorView, $Indicator.dimensions)"/>
104                                        </xsl:call-template>
105                                        <xsl:call-template name="Indicator.contentBlock">
106                                                <xsl:with-param name="content" select="$indicatorView/CHART_NARRATIVE"/>
107                                                <xsl:with-param name="contentBlockType" select="'fixed'" tunnel="yes"/>
108                                        </xsl:call-template>
109                                </xsl:with-param>
110                                <xsl:with-param name="show" select="not($showMap)"/>
111                                <xsl:with-param name="addWikiAttribute" select="false()"/>
112                        </xsl:call-template>
113                </xsl:if>
114
115                <xsl:call-template name="ContentContainer.expandable">
116                        <xsl:with-param name="title" select="'Supplemental Graphic'"/>
117                        <xsl:with-param name="content">
118                                <xsl:call-template name="Indicator.supplementalImage">
119                                        <xsl:with-param name="indicatorView" select="$indicatorView"/>
120                                </xsl:call-template>
121                        </xsl:with-param>
122                        <xsl:with-param name="show" select="true()"/>
123                        <xsl:with-param name="addWikiAttribute" select="false()"/>
124                </xsl:call-template>
125
126                <xsl:call-template name="ContentContainer.expandable">
127                        <xsl:with-param name="title" select="'Data Notes'"/>
128                        <xsl:with-param name="content">
129                                <xsl:call-template name="Indicator.dataNotes">
130                                        <xsl:with-param name="title"         select="''"/>
131                                        <xsl:with-param name="measure"       select="$Indicator.measure"/>
132                                        <xsl:with-param name="indicatorView" select="$indicatorView"/>
133                                </xsl:call-template>
134                        </xsl:with-param>
135                        <xsl:with-param name="show" select="true()"/>
136                </xsl:call-template>
137
138                <xsl:call-template name="ContentContainer.expandable">
139                        <xsl:with-param name="title" select="'Data Table'"/>
140                        <xsl:with-param name="content">
141                                <div class="Graphic Grid ScrollableContainer">
142                                        <div id="grid"></div>
143<br/><br/>
144GARTH TODO: Data table footnote needs to include the VALUE ATTRIBUTE codes and titles.
145<br/><br/>
146                                </div>
147                        </xsl:with-param>
148                        <xsl:with-param name="show" select="false()"/>
149                        <xsl:with-param name="addWikiAttribute" select="false()"/>
150                </xsl:call-template>
151
152
153                <xsl:call-template name="ContentContainer.expandable">
154                        <xsl:with-param name="title" select="'Data Definitions &amp; Sources'"/>
155                        <xsl:with-param name="content">
156                                <xsl:call-template name="Indicator.definition"/>
157                                <xsl:call-template name="Indicator.howCalculated"/>
158                                <xsl:call-template name="Indicator.dataSources"/>
159                        </xsl:with-param>
160                        <xsl:with-param name="show"        select="false()"/>
161                        <xsl:with-param name="description" select="'Metadata for this health indicator.'"/>
162                </xsl:call-template>
163
164
165                <xsl:call-template name="ContentContainer.expandable">
166                        <xsl:with-param name="title" select="'Health Objectives and Targets'"/>
167                        <xsl:with-param name="content">
168                                <xsl:call-template name="Indicator.initiatives"/>
169                                <xsl:call-template name="Indicator.otherObjectives"/>
170                        </xsl:with-param>
171                        <xsl:with-param name="description" select="'Goals and objectives for this health indicator.'"/>
172                </xsl:call-template>
173
174                <xsl:call-template name="ContentContainer.expandable">
175                        <xsl:with-param name="title" select="'Current Outlook'"/>
176                        <xsl:with-param name="content">
177                                <xsl:call-template name="Indicator.howDoing"/>
178                                <xsl:call-template name="Indicator.howCompare"/>
179                        </xsl:with-param>
180                        <xsl:with-param name="description" select="'How are we doing, how do we compare.'"/>
181                </xsl:call-template>
182
183                <xsl:call-template name="ContentContainer.expandable">
184                        <xsl:with-param name="title" select="'Health Improvement Resources'"/>
185                        <xsl:with-param name="content">
186                                <xsl:call-template name="Indicator.whatDoing"/>
187                                <xsl:call-template name="Indicator.evidenceBasedPractices"/>
188                                <xsl:call-template name="Indicator.availableServices"/>
189                                <xsl:call-template name="Indicator.moreResources"/>
190                                <xsl:call-template name="Indicator.otherInformation"/>
191                        </xsl:with-param>
192                        <xsl:with-param name="description" select="'Other related information and resources.'"/>
193                </xsl:call-template>
194
195                <xsl:call-template name="ContentContainer.expandable">
196                        <xsl:with-param name="title" select="'References'"/>
197                        <xsl:with-param name="content">
198                                <xsl:call-template name="Indicator.footnoteReferences"/>
199                        </xsl:with-param>
200                        <xsl:with-param name="description" select="'References that may / might not be cited on this page.'"/>
201                </xsl:call-template>
202
203                <xsl:call-template name="Indicator.allDates"/>
204
205                <xsl:call-template name="Page.leafletKendoScript">
206                        <xsl:with-param name="indicatorView" select="$indicatorView"/>
207                        <xsl:with-param name="measure"       select="$Indicator.measure"/>
208                        <xsl:with-param name="showMap"       select="$showMap"/>
209                </xsl:call-template>
210        </xsl:template>
211
212
213
214        <xsl:template name="Page.leafletKendoScript" ibis:doc="Provides the kendo and leaflet javascript.">
215                <xsl:param name="indicatorView"/>
216                <xsl:param name="measure"/>
217                <xsl:param name="showMap"/> 
218
219                <xsl:if test="$showMap">
220                        <xsl:call-template name="Graphic.choroplethMapJavaScript"/>
221                </xsl:if>
222
223                <xsl:variable name="measureValueFormatPattern" select="($Indicator.valueTypes/VALUE_TYPE[NAME = $measure/VALUE_TYPE_NAME]/XSLT_FORMAT_PATTERN)[1]"/>
224                <xsl:variable name="ancillaryValueNames" select="distinct-values($indicator/DATASETS/DATASET[NAME = $indicatorView/DATASET_NAMES/DATASET_NAME]/ANCILLARY_VALUE_USAGES/ANCILLARY_VALUE_USAGE/NAME)"/>
225                <xsl:variable name="recordAncillaryValueFields">
226                        <xsl:call-template name="Interactive.getIndicatorRecordAncillaryValueFields">
227                                <xsl:with-param name="indicator"     select="$indicator"/>
228                                <xsl:with-param name="indicatorView" select="$indicatorView"/>
229                                <xsl:with-param name="ancillaryValueNames" select="$ancillaryValueNames"/>
230                                <xsl:with-param name="ancillaryValues" select="$Indicator.ancillaryValues"/>
231                                <xsl:with-param name="valueTypes"      select="$Indicator.valueTypes"/>
232                                <xsl:with-param name="measureValueFormatPattern" select="$measureValueFormatPattern"/>
233                        </xsl:call-template>
234                </xsl:variable>
235<xsl:message select="'77777777777777 IPIP IP - recordAncillaryValueFields'"/>
236<xsl:message select="$recordAncillaryValueFields"/>
237
238                <xsl:variable name="recordDimensionFields">
239                        <xsl:call-template name="Interactive.getRecordDimensionFields">
240                                <xsl:with-param name="dimensions"      select="$Indicator.dimensions"/>
241                                <xsl:with-param name="dimensionUsages" select="$indicatorView/DIMENSION_USAGES"/>
242                        </xsl:call-template>
243                </xsl:variable>
244                <xsl:variable name="datasetRecords" select="$indicator/DATASETS/DATASET[NAME = $indicatorView/DATASET_NAMES/DATASET_NAME]/RECORDS"/>
245                <xsl:variable name="indicatorViewDatasetRecords">
246                        <xsl:call-template name="Interactive.getIndicatorViewDatasetRecords">
247                                <xsl:with-param name="datasetRecords"  select="$datasetRecords"/>
248                                <xsl:with-param name="dimensionUsages" select="$indicatorView/DIMENSION_USAGES"/>
249                                <xsl:with-param name="recordDimensionFields" select="$recordDimensionFields"/>
250                        </xsl:call-template>
251                </xsl:variable>
252
253<!--
254<xsl:message select="'************** GARTH'"/>
255<xsl:message select="$indicatorViewDatasetRecords"/>
256
257<xsl:message select="concat('Page.leafletKendoScript - Records count: ', count($indicatorViewDatasetRecords/*), ', recordDimensionFields: ', count($recordDimensionFields/NAME))"/>
258<xsl:message select="'============= start of IV datasetRecords'"/>
259<xsl:message select="$recordDimensionFields"/>
260<xsl:message select="'============= end of IV datasetRecords'"/>
261-->
262
263                <!-- tried doing jsonp tech but callback func must be defined before doing the script jsonp
264                        so you'd have the variable = null, call back, end of script, include jsonp, then contructor
265                        script.  Very messy - decided just to do simple var and include it.
266                -->
267                <script type="text/javascript">
268                        var records =
269                        [<xsl:text>&#10;</xsl:text>
270                                <xsl:call-template name="Dataset.getDatasetRecordsJSON">
271                                        <xsl:with-param name="dimensions"                 select="$Indicator.dimensions"/>
272                                        <xsl:with-param name="datasetRecords"             select="$indicatorViewDatasetRecords"/>
273                                        <xsl:with-param name="recordDimensionFields"      select="$recordDimensionFields"/>
274                                        <xsl:with-param name="recordAncillaryValueFields" select="$recordAncillaryValueFields"/>
275                                        <xsl:with-param name="measureValueFormatPattern"  select="$measureValueFormatPattern"/>
276                                </xsl:call-template>
277                        ];
278
279                        var kendoDataSource = new kendo.data.DataSource(
280                                <xsl:call-template name="Kendo.dataSourceConstructorJSON">
281                                        <xsl:with-param name="javascriptRecordArrayVariableName" select="'records'"/>
282                                        <xsl:with-param name="recordDimensionFields"      select="$recordDimensionFields"/>
283                                        <xsl:with-param name="recordAncillaryValueFields" select="$recordAncillaryValueFields"/>
284                                </xsl:call-template>
285                        );
286
287                        var kendoGridConstructorJSON = $.extend
288                        (true, {}
289                                ,<xsl:call-template name="Kendo.baseGridJSON"/>
290                                ,<xsl:call-template name="Kendo.namedConfigurationJSON">
291                                        <xsl:with-param name="configurationName" select="'IndicatorProfileGrid'"/>
292                                </xsl:call-template>
293                                ,<xsl:call-template name="Kendo.requestGridJSON">
294                                        <xsl:with-param name="kendoDataSourceJavascriptVariableName" select="'kendoDataSource'"/>
295                                        <xsl:with-param name="measure" select="$measure"/>
296                                        <xsl:with-param name="recordDimensionFields"      select="$recordDimensionFields"/>
297                                        <xsl:with-param name="recordAncillaryValueFields" select="$recordAncillaryValueFields"/>
298<!-- GARTH TODO: Total row, note and label,
299NEED VALUE ATTRIBUTE SUPPORT AS WELL.
300-->
301<xsl:with-param name="showFooterRow"   select="false()"/>
302<xsl:with-param name="showNoteColumn"  select="false()"/>
303<xsl:with-param name="showLabelColumn" select="false()"/>
304                                </xsl:call-template>
305                        );
306
307
308                        var kendoChartConstructorJSON = $.extend
309                        (true, {}
310                                ,<xsl:call-template name="Kendo.baseChartJSON"/>
311                                ,<xsl:call-template name="Kendo.namedConfigurationJSON">
312                                        <xsl:with-param name="configurationName" select="$indicatorView/CHART_NAME"/>
313                                </xsl:call-template>
314                                ,<xsl:call-template name="Kendo.requestChartJSON">
315                                        <xsl:with-param name="kendoDataSourceJavascriptVariableName" select="'kendoDataSource'"/>
316                                        <xsl:with-param name="title"         select="ibis:getIndicatorViewChartTitle($indicator, $indicatorView, $Indicator.dimensions)"/>
317                                        <xsl:with-param name="seriesTitle"   select="$recordDimensionFields/RECORD_DIMENSION_FIELD[USAGE='series']/TITLE"/>
318                                        <xsl:with-param name="categoryTitle" select="$recordDimensionFields/RECORD_DIMENSION_FIELD[USAGE='category']/TITLE"/>
319                                        <xsl:with-param name="valueTitle"    select="$measure/TITLE"/>
320
321                                        <xsl:with-param name="seriesFieldName"    select="$recordDimensionFields/RECORD_DIMENSION_FIELD[USAGE='series']/NAME"/>
322                                        <xsl:with-param name="categoryFieldName"  select="$recordDimensionFields/RECORD_DIMENSION_FIELD[USAGE='category']/NAME"/>
323
324                                        <xsl:with-param name="includeDatasetSeries" select="1 &lt; $recordDimensionFields/RECORD_DIMENSION_FIELD[USAGE='series']/VALUE_COUNT"/>
325                                        <xsl:with-param name="recordAncillaryValueFields" select="$recordAncillaryValueFields"/>
326                                </xsl:call-template>
327                        );
328//console.debug("%o", kendoChartConstructorJSON);
329//console.log(JSON.stringify(kendoChartConstructorJSON,null,2)); 
330
331                        var $kendoGrid;
332                        var $kendoChart;
333                        var $leafletMap;
334                        $(document).ready(function()
335                        {
336                                $kendoGrid  = $("#grid").kendoGrid (kendoGridConstructorJSON);
337                                $kendoChart = $("#chart").kendoChart(kendoChartConstructorJSON);
338                                kendoDataSource.read();         // have to have after grid and chart because .autoBind = false.
339
340
341
342<!-- =====================================================
343// var firstSlot = $kendoChart.getKendoChart()._plotArea.axes[0].getSlot(0);
344// alert("first slot width" + firstSlot.width());
345
346<xsl:variable name="geoDimensionName" select="
347        if(0 != string-length($indicatorView/DEFAULT_GEOGRAPHY_DIM_NAME))
348        then $indicatorView/DEFAULT_GEOGRAPHY_DIM_NAME
349        else ($Indicator.dimensions/DIMENSION[
350                        exists(GEOGRAPHY_FLAG)
351                        and
352                        NAME = $indicatorView//DIMENSION_USAGE/NAME
353                ])[1]/NAME"
354/>
355
356<xsl:message select="$Indicator.dimensions/DIMENSION[exists(GEOGRAPHY_FLAG)]/NAME"/>
357<xsl:message select="exists($indicatorView/DIMENSION_USAGES/DIMENSION_USAGE[DIMENSION_NAME = $Indicator.dimensions/DIMENSION[exists(GEOGRAPHY_FLAG)]/NAME])"/>
358<xsl:message select="exists($indicatorView/DIMENSION_USAGES/DIMENSION_USAGE[DIMENSION_NAME = $Indicator.dimensions/DIMENSION[exists(GEOGRAPHY_FLAG)]/NAME])"/>
359<xsl:message select="exists($indicatorView/DIMENSION_USAGES/DIMENSION_USAGE[DIMENSION_NAME = $Indicator.dimensions/DIMENSION[exists(GEOGRAPHY_FLAG)]])"/>
360<xsl:message select="$Indicator.dimensions/DIMENSION[exists(GEOGRAPHY_FLAG)]/NAME"/>
361<xsl:message select="concat('Interactive - Show Map: ', $showMap, ', geoDimensionName:', $geoDimensionName)"/>
362
363<xsl:message select="'XXXXXXXXXXXXXXXXXXXXXXXXXXXXX interact.xslt'"/>
364<xsl:message select="$Page.comparisonDimensionName"/>
365<xsl:message select="$Page.comparisonDimensionValue"/>
366<xsl:with-param name="comparisonValue" select="$indicatorViewDatasetRecords/RECORD[ DIMENSIONS[ (2 = count(DIMENSION)) and DIMENSION[(NAME = $Page.comparisonDimensionName)     and (VALUE = $Page.comparisonDimensionValue)]]]/MEASURE/VALUE"/>
367
368Stuff to try when doing dashboard
369function dataSource_change(e) {
370  console.log(e);
371}
372kendoDataSource.bind("change", dataSource_change);
373select="$indicatorViewDatasetRecords/RECORD[ DIMENSIONS[ (2 = count(DIMENSION)) and DIMENSION[(NAME = $Page.comparisonDimensionName)     and (VALUE = $Page.comparisonDimensionValue)]]]/MEASURE/VALUE"/>
374
375**********************************************
376
377PROBLEM: "CATEGORY":"GeoCnty.4"
378                                                <xsl:with-param name="geoJSONName"      select="$indicatorView/MAP_DIMENSION_NAME"/>
379                                               
380******************
381probably need to geojson to have the geodim name + . + geodim value to uniquely ID the area.
382
383************ PROBLEM is that the QM only returns 1..31 and not GeoCnty.1
384
385The IP and QM dimension files are all 1..31
386
387So, need the field name then use the geotype and parse the .XXX from the end.
388Then in the QM will need to build the JSON fields the same way as we do with
389the IP - which is the right way to do it anyway so fields can be combined???
390
391*** also have issues with if 2d and 3d...
392        if mult series then drop down for that.
393        if mult constants then drop down for that as well.
394        when changed regen map.
395        Need to specify the category field name and value
396        Need to specify the series field name and value
397        Need to specify the constant field name and value
398       
399        GeoJSON GeoID Prefix to add when doing comparison???
400
401        <xsl:variable name="communityDatasets" select="$indicator/DATASETS/DATASET[DIMENSION_COMBINATIONS/DIMENSION_COMBINATION[not(DIMENSION_2/NAME) and DIMENSION_1/NAME = $communityDimensionName]]"/>
402        <xsl:variable name="communityDataset"  select="$communityDatasets[(MEASURE_NAME = $measureName) and DIMENSION_COMBINATIONS/DIMENSION_COMBINATION[PERIOD_DIMENSION/NAME = $periodName]]"/>
403        <xsl:variable name="stateRecord"       select="$communityDataset/RECORDS/RECORD[ DIMENSIONS[ (2 = count(DIMENSION)) and DIMENSION[(NAME = $stateDimensionName)     and (VALUE = $stateDimensionValue)]     and DIMENSION[(NAME = $periodName) and (VALUE = $periodValue)]]]"/>
404
405
406GARTH TODO:
407        <xsl:message select="'XXXXXXXXXXXXXXXXXXXXXXXXXXXXX'"/>
408<xsl:message select="$indicatorViewDatasetRecords[1]"/>
409
410
411
412<xsl:with-param name="dimensionFieldInclusionCriteria">
413records have the field names to filter.
414to include need field name and value.
415
416specifies the records held constant - This is to filter out not matching constant records
417
418for mouse overs, the title needs specifics - dimension title and dimension value title.
419        <DIMENSION><NAME>CONSTANT</NAME><VALUE>YearAll.2014</VALUE><TITLE>Year</TITLE><VALUE_TITLE>2014</VALUE_TITLE></DIMENSION>
420        <DIMENSION><NAME>SERIES</NAME><VALUE>Sex.1</VALUE><TITLE>Sex</TITLE><VALUE_TITLE>Male</VALUE_TITLE></DIMENSION>
421</xsl:with-param>
422
423==========================================================================
424<xsl:message select="$indicatorViewDatasetRecords/RECORD"/>
425-->
426
427
428<xsl:message select="'XXXXXXXXXXXXXXXXXXXXXXXXXXXXX interact.xslt'"/>
429<xsl:message select="$indicatorView/MAP_DIMENSION_NAME"/>
430<xsl:message select="$recordDimensionFields/RECORD_DIMENSION_FIELD[DIMENSION_NAMES/DIMENSION_NAME = $indicatorView/MAP_DIMENSION_NAME]/NAME"/> 
431
432
433                        <xsl:if test="$showMap">
434                                var leafletMapConstructorJSON = $.extend
435                                (true, {}
436,<xsl:call-template name="LeafletMap.baseJSON"/>
437,<xsl:call-template name="LeafletMap.namedConfigurationJSON">
438        <xsl:with-param name="configurationName" select="$indicatorView/MAP_NAME"/>
439</xsl:call-template>
440,<xsl:call-template name="LeafletMap.requestJSON"> 
441<!--    <xsl:with-param name="mapTitle"      select="'Choropleth'"/> -->
442        <xsl:with-param name="mapType"       select="'choropleth'"/>
443</xsl:call-template>
444,<xsl:call-template name="LeafletMap.choroplethJSON">
445        <xsl:with-param name="javascriptRecordArrayVariableName" select="'records'"/>
446        <xsl:with-param name="geoJSONName"      select="$indicatorView/MAP_DIMENSION_NAME"/>
447        <xsl:with-param name="geoIDFieldName"   select="$recordDimensionFields/RECORD_DIMENSION_FIELD[DIMENSION_NAMES/DIMENSION_NAME = $indicatorView/MAP_DIMENSION_NAME]/NAME"/> 
448        <xsl:with-param name="geoIDFieldValuePrefixToRemove"   select="concat($indicatorView/MAP_DIMENSION_NAME, '.')"/>
449        <xsl:with-param name="measureValueFieldName" select="'MeasureValue'"/>
450        <xsl:with-param name="legendTitle"   select="$measure/TITLE"/>
451        <xsl:with-param name="geoTypeTitle"  select="ibis:getDimensionTitle($indicator//DIMENSIONS/DIMENSION[NAME = $indicatorView/MAP_DIMENSION_NAME])"/>
452        <xsl:with-param name="reverseColors" select="$measure/DESIRABLE_VALUE = 1"/>
453        <xsl:with-param name="desirableIndexValue" select="$measure/DESIRABLE_VALUE"/>
454
455<xsl:with-param name="comparisonValue" select="$indicatorViewDatasetRecords/RECORD[ DIMENSIONS[ (2 = count(DIMENSION)) and DIMENSION[(NAME = $Page.comparisonDimensionName)     and (VALUE = $Page.comparisonDimensionValue)]]]/MEASURE/VALUE"/>
456
457</xsl:call-template>
458                                );
459                                $leafletMap = $("#map").leaflet(leafletMapConstructorJSON);
460                        </xsl:if>
461
462                        }); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ End of Function ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
463
464                </script>
465        </xsl:template>
466
467</xsl:stylesheet>
468<!-- ============================= End of File ============================= -->
Note: See TracBrowser for help on using the repository browser.