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

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

view - temp commit of map updates. moved showmap back to global to page.showmap so that the left nav could implement save map image. Tried interactive grid/chart highlight but need new version of kendo - code saved in the Graphic.xslt. Added script to disable q builder map selection if na.

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