Sfoglia il codice sorgente

[spark] Fixed rendering of Leaflet in case of chart switch

Better marker bounds calculation
Fixed all </br> tags too
Enrico Berti 10 anni fa
parent
commit
2b88a683ea

+ 1 - 1
apps/beeswax/src/beeswax/templates/watch_results.mako

@@ -109,7 +109,7 @@ ${layout.menubar(section='query')}
           % if not query.is_finished():
             <div id="multiStatementsQuery" class="alert">
               <button type="button" class="close" data-dismiss="alert">&times;</button>
-              <strong>${_('Multi-statement query')}</strong></br>
+              <strong>${_('Multi-statement query')}</strong><br/>
               ${_('Hue stopped as one of your query contains some results.') }
               ${_('Click on') }
               <form action="${ url(app_name + ':watch_query_history', query.id) }?context=${ query.design.get_query_context() }" method="POST">

+ 1 - 1
apps/impala/src/impala/templates/dashboard.mako

@@ -165,7 +165,7 @@ ${ dashboard.layout_skeleton() }
   </div>
 
   <div data-bind="visible: !$root.isRetrievingResults() && $root.results().length == 0">
-    </br>
+    <br/>
     ${ _('Your search did not match any documents.') }
   </div>
 

+ 1 - 1
apps/oozie/src/oozie/templates/dashboard/list_oozie_coordinator.mako

@@ -202,7 +202,7 @@ ${ layout.menubar(section='coordinators', dashboard=True) }
                 <tfoot>
                   <tr>
                     <td data-bind="visible: !isLoading() && paginate()" colspan="10">
-                      </br>
+                      <br/>
                       <div class="alert">
                         ${ _('There are older actions to be shown:') }
                         <a class="btn" href="${ oozie_coordinator.get_absolute_url() }?show_all_actions=true">${ _('Expand') }</a>

+ 1 - 1
apps/oozie/src/oozie/templates/dashboard/list_oozie_info.mako

@@ -97,7 +97,7 @@ ${ layout.menubar(section='oozie', dashboard=True) }
                     % endif
                     ${ timer }
                     % if not loop.last:
-                        </br>
+                        <br/>
                     % endif
                     % endfor
                   </td>

+ 2 - 2
apps/search/src/search/templates/search.mako

@@ -524,7 +524,7 @@ ${ dashboard.layout_skeleton() }
       </div>
 
       <div data-bind="visible: $root.hasRetrievedResults() && $root.results().length == 0">
-        </br>
+        <br/>
         ${ _('Your search did not match any documents.') }
       </div>
 
@@ -678,7 +678,7 @@ ${ dashboard.layout_skeleton() }
 
     <div id="result-main" style="overflow-x: auto">
       <div data-bind="visible: $root.hasRetrievedResults() && $root.results().length == 0">
-        </br>
+        <br/>
         ${ _('Your search did not match any documents.') }
       </div>
 

+ 5 - 4
apps/spark/src/spark/templates/editor.mako

@@ -627,7 +627,7 @@ ${ commonheader(_('Query'), app_name, user, "68px") | n,unicode }
                   transformer: multiSerieDataTransformer, showControls: false }, visible: chartType() == ko.HUE_CHARTS.TYPES.LINECHART" class="chart"></div>
 
             <div data-bind="attr:{'id': 'leafletMapChart_'+id()}, leafletMapChart: {datum: {counts: result.data, sorting: chartSorting(), snippet: $data},
-                  transformer: leafletMapChartDataTransformer, showControls: false, height: 380, visible: chartType() == ko.HUE_CHARTS.TYPES.MAP}" class="chart"></div>
+                  transformer: leafletMapChartDataTransformer, showControls: false, height: 380, visible: chartType() == ko.HUE_CHARTS.TYPES.MAP, forceRedraw: true}" class="chart"></div>
 
             <div data-bind="attr:{'id': 'gradientMapChart_'+id()}, mapChart: {data: {counts: result.data, sorting: chartSorting(), snippet: $data},
                   transformer: mapChartDataTransformer, isScale: true, showControls: false, height: 380, maxWidth: 750, parentSelector: '.chart-container', visible: chartType() == ko.HUE_CHARTS.TYPES.GRADIENTMAP}" class="chart"></div>
@@ -647,9 +647,9 @@ ${ commonheader(_('Query'), app_name, user, "68px") | n,unicode }
         <div class="snippet-body">
           <input type="text" class="input-xlarge" data-bind="value: properties.app_jar, visible: type() =='jar'" placeholder="${ _('Path to application jar, e.g. hdfs://localhost:8020/user/hue/oozie-examples.jar') }"/>
           <input type="text" class="input-xlarge" data-bind="value: properties.py_file, visible: type() =='py'" placeholder="${ _('Path to python file, e.g. script.py') }"/>
-          </br>
+          <br/>
           <input type="text" class="input-xlarge" data-bind="value: properties.class, visible: type() =='jar'" placeholder="${ _('Class name of application, e.g. org.apache.oozie.example.SparkFileCopy') }"/>
-          </br>
+          <br/>
           <ul data-bind="foreach: properties.arguments" class="unstyled">
             <li>
               <input type="text" data-bind="value: value" placeholder="${ _('e.g. 1000, market') }"/>
@@ -661,7 +661,7 @@ ${ commonheader(_('Query'), app_name, user, "68px") | n,unicode }
           <a class="pointer" data-bind="click: function(){ $data.properties.arguments.push({'value': ''}); }">
             <i class="fa fa-plus"></i> ${ _('Add argument') }
           </a>
-          </br>
+          <br/>
           <a title="${ _('Submit') }" data-bind="click: execute, visible: status() != 'running'" class="btn btn-primary disable-feedback pointer">
             <i class="fa fa-play"></i>
           </a>
@@ -1763,6 +1763,7 @@ ${ commonheader(_('Query'), app_name, user, "68px") | n,unicode }
     $(document).on("forceChartDraw", function (e, snippet) {
       window.setTimeout(function () {
         snippet.chartX.notifySubscribers();
+        snippet.chartX.valueHasMutated();
       }, 100);
     });
 

+ 1 - 1
apps/zookeeper/src/zookeeper/templates/index.mako

@@ -48,7 +48,7 @@ ${ shared.menubar() }
 % for c in clusters:
   <h3 class="card-heading simple simpler">${ c }</h3>
   <p>
-    </br>
+    <br/>
     &nbsp;&nbsp;<a href="${ url('zookeeper:view', id=c) }">${ _("Znode Hierarchy") }</a> 
   </p>
   <table class="table">

+ 16 - 19
desktop/core/src/desktop/static/desktop/js/ko.charts.js

@@ -292,19 +292,10 @@ ko.bindingHandlers.leafletMapChart = {
     var _options = valueAccessor();
     var _data = _options.transformer(valueAccessor().datum);
 
-    if ($(element).data("mapData") == null || $(element).data("mapData") != ko.toJSON(_data)) {
+    if ($(element).data("mapData") == null || $(element).data("mapData") != ko.toJSON(_data) || _options.forceRedraw) {
 
       $(element).data("mapData", ko.toJSON(_data));
 
-      function getMapBounds(lats, lngs) {
-        lats = lats.sort();
-        lngs = lngs.sort();
-        return [
-          [lats[lats.length - 1], lngs[lngs.length - 1]], // north-east
-          [lats[0], lngs[0]] // south-west
-        ]
-      }
-
       if ($(element).data("map") != null) {
         try {
           $(element).data("map").remove();
@@ -316,16 +307,16 @@ ko.bindingHandlers.leafletMapChart = {
         }
       }
 
-      var _lats = [];
+      var _hasAtLeastOneLat = false;
       _data.forEach(function (item) {
         if (item.lat != null && $.isNumeric(item.lat)) {
-          _lats.push(item.lat);
+          _hasAtLeastOneLat = true;
         }
       });
-      var _lngs = [];
+      var _hasAtLeastOneLng = false;
       _data.forEach(function (item) {
         if (item.lng != null && $.isNumeric(item.lng)) {
-          _lngs.push(item.lng);
+          _hasAtLeastOneLng = true;
         }
       });
 
@@ -347,7 +338,8 @@ ko.bindingHandlers.leafletMapChart = {
       else {
         $(element).hide();
         if ((_options.visible != null && _options.visible) && !_options.isLoading){
-          $(element).before($("<div>").addClass("leaflet-nodata").css("textAlign", "center").text("No Data Available."));
+          $(element).siblings(".leaflet-nodata").remove();
+          $(element).before($("<div>").addClass("leaflet-nodata").css({ "textAlign": "center", "fontSize": "18px", "fontWeight": 700, "marginTop": "20px"}).text("No Data Available."));
         }
       }
 
@@ -357,7 +349,7 @@ ko.bindingHandlers.leafletMapChart = {
         element._map.remove();
       }
 
-      if (_lats.length > 0 && _lngs.length > 0) {
+      if (_hasAtLeastOneLat && _hasAtLeastOneLng) {
         try {
 
           if (_map == null) {
@@ -367,10 +359,9 @@ ko.bindingHandlers.leafletMapChart = {
             }).addTo(_map);
           }
 
-          _map.fitBounds(getMapBounds(_lats, _lngs));
-
+          var _markers = [];
           _data.forEach(function (item) {
-            if (item.lng != null && item.lat != null) {
+            if (item && item.lng != null && item.lat != null) {
               var _addMarker = false;
               try {
                 var _latLngObj = L.latLng(item.lat, item.lng);
@@ -386,9 +377,15 @@ ko.bindingHandlers.leafletMapChart = {
                 if (item.label != null) {
                   _marker.bindPopup(item.label);
                 }
+                _markers.push(_marker);
               }
             }
           });
+
+          _map.markers = new L.featureGroup(_markers);
+          _map.fitBounds(_map.markers.getBounds());
+
+
           if (_options.onComplete != null) {
             _options.onComplete();
           }