Changeset 21640 in main


Ignore:
Timestamp:
09/23/20 20:48:53 (5 weeks ago)
Author:
GarthBraithwaite_STG
Message:

view - leaflet updates to better support interactive layers. Spring security - added notes on spring auth forcing https and turned on by default.

Location:
trunk/ibisph-view/src/main/webapp
Files:
7 edited
1 moved

Legend:

Unmodified
Added
Removed
  • trunk/ibisph-view/src/main/webapp/WEB-INF/config/spring/security.xml

    r21259 r21640  
    210210                </constructor-arg>
    211211                <property name="useForward" value="false"/>
    212                 <property name="forceHttps" value="false"/>
     212<!-- turns HTTPS on for the login and for all following requests.  This unless
     213        the channel is explicitly configured for HTTP and HTTPS. 
     214        GOTCHAS:
     215        - app server has to be configured to handle the protocol.
     216        - If the app uses the default context then first request sets the protocol
     217                for all resource requests ie if the first request the app makes is HTTP
     218                then all resource requests will be http.  Likewise for HTTPS.
     219        - certs are needed with some browsers not wanting to use self signed certs.
     220        RECOMMENDED:
     221        - If public server have a proxy that does only HTTPS and has a valid cert.
     222                Behind the DMZ setup everything else to be HTTP to avoid cert issues.
     223        - If mixing HTTP and S then configure the channel filters.  Can have the
     224                force on if wanted but if channels are setup correctly it is not needed.
     225-->
     226                <property name="forceHttps" value="true"/>
    213227        </bean>
    214228
  • trunk/ibisph-view/src/main/webapp/css/DataViz.css

    r20061 r21640  
    142142        background-image:       url("../image/icon/leaflet/alcohol.png");
    143143}
     144.DataViz.Map .GeoSuperfundIconMarker
     145{
     146        background:             red;
     147        color:                          white;
     148        border-radius:          50%;
     149    width:                              20px;
     150    height:                     20px;
     151}
    144152
    145153
     
    223231}
    224232
     233.DataViz.Map .leaflet-popup-content a:hover
     234{
     235    color: var(--color-hover);
     236}
     237
    225238
    226239/* Leaflet overrides - if these get large might make sense to split out - similar to kendo overrides.css */
  • trunk/ibisph-view/src/main/webapp/js/L.GeoJSON.Interactive.js

    r20174 r21640  
    9494                                ,"autoPan": true               
    9595                        }
     96                        ,"featureDataTitleProperty": ["TITLE", "Title", "title", "Name", "name"]
    9697                }
    9798
     
    213214                        ({
    214215                                contextmenuInheritItems: this.options.contextmenuInheritItems
    215                                 ,contextmenuItems: this.options.contextmenuItems
     216                                ,contextmenuItems:       this.options.contextmenuItems
    216217                        });
    217218                }
     
    393394                if(!e.target) e = this.contextMenuEvent;
    394395                var layer = e.target;
     396
     397                var latLng;
     398                if("function" == typeof layer.getCenter)
     399                        latLng = layer.getCenter();
     400                else if("function" == typeof layer.getLatLng)
     401                        latLng = layer.getLatLng();
     402
    395403                var popup = L.popup(this.options.interactive.popupOptions, layer)
    396404                        .setContent(this.getSelectionFeatureDataHTML(layer.feature))
    397                         .setLatLng(layer.getBounds().getCenter())
     405                        .setLatLng(latLng)
    398406                        .openOn(layer._map)
    399407                ;
     
    417425                console.debug(this);
    418426                if(!e || !e.target) e = this.contextMenuEvent;
    419                 e.target._map.fitBounds(e.target.getBounds());
     427
     428                var bounds = null;
     429                if("function" == typeof e.target.getBounds)
     430                        bounds = e.target.getBounds();
     431                else if("function" == typeof e.target.getLatLngs)
     432                        bounds = e.target.getLatLngs();
     433
     434                if(bounds) e.target._map.fitBounds(bounds);
    420435        } //~~~~~~~~~~~~~~~~~~~~~~~~~~~ End of Method  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    421436
     
    444459        ,getSelectionFeatureDataHTML: function(feature)
    445460        {
    446                 var geoTitle = feature.properties[this.options.dataObject.fieldName.geoTitle];
    447                 if(!geoTitle) geoTitle = feature.properties["TITLE"];
    448                 if(!geoTitle) geoTitle = "Unknown Area";
    449                 var titleHTML = "<h4>" + geoTitle + "</h4>";
     461                var geoTitle = null;
     462                var titleHTML = null;
    450463                var dataHTML  = "";
    451                 for(key in feature.properties) dataHTML = dataHTML + key + ": " + feature.properties[key] + "<br/>";
     464                for(key in feature.properties)
     465                {
     466                        if(-1 != this.options.interactive.featureDataTitleProperty.indexOf(key))
     467                                geoTitle = feature.properties[key];
     468                        else if("links" == key)
     469                        {
     470                                feature.properties[key].forEach
     471                                        (link =>
     472                                                (dataHTML = dataHTML + "<a href='"
     473                                                        + link.url
     474                                                        + "'>"
     475                                                        + link.title
     476                                                        + "</a><br/>"
     477                                                )
     478                                        );
     479                        }
     480                        else
     481                                dataHTML = dataHTML + key + ": " + feature.properties[key] + "<br/>";
     482                }
     483
     484                if(!geoTitle) geoTitle = feature.properties[this.options.dataObject.fieldName.geoTitle];
     485                if(geoTitle) titleHTML = "<h4>" + geoTitle + "</h4>";
     486
    452487                return(titleHTML + dataHTML);
    453488        } //~~~~~~~~~~~~~~~~~~~~~~~~~~~ End of Method  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  • trunk/ibisph-view/src/main/webapp/xslt/html/SiteSpecific.xslt

    r21259 r21640  
    247247                                <div class="Block" style="float: right; width: 270px; padding: 0.3em 1rem 1rem 1rem; background-color: #6688aa; margin: 1em 0 0 1em;">
    248248                                        <h3>Help us help you by providing feedback about this site or page:</h3>
    249                                         <input type="button" value="Email Us..." style="width: 100%; font-size: 1rem; padding: 1rem; cursor: pointer; margin-top: 0.5em;"/>
     249                                        <input type="button" value="Email Us..."
     250                                                onclick="location.href='mailto:ibis@doh.mystate.gov'"
     251                                                style="width: 100%; font-size: 1rem; padding: 1rem; cursor: pointer; margin-top: 0.5em;"
     252                                        />
     253                                        <!-- a href="mailto:ibis@doh.mystate.gov" style="width: 100%; font-size: 1rem; padding: 1rem; cursor: pointer; margin-top: 0.5em;">
     254                                                Email Us
     255                                        </a-->
    250256                                </div>
    251257
  • trunk/ibisph-view/src/main/webapp/xslt/html/indicator/profile/summary/Page.xslt

    r20667 r21640  
    4040                </xsl:call-template>
    4141
     42
     43
    4244                <!-- DataViz: loop for all views
    4345GARTH TODO: When this is scrutinized/decided upon need to account for external
    4446viz's etc.
    4547                -->
     48
     49
    4650                <xsl:if test="exists($indicator/INDICATOR_VIEWS/INDICATOR_VIEW/NAME)">
    4751                        <xsl:call-template name="DataViz.choroplethMapJavaScript"/>
  • trunk/ibisph-view/src/main/webapp/xslt/html/query/module/result/Page.xslt

    r21448 r21640  
    8181        <xsl:param name="Page.pleaseWaitMessageContent">
    8282                <div class="PleaseWait">
    83                         <h2>Please wait.  Processing query.</h2>
     83                        <h2>Please wait.  Processing Dataset Request.</h2>
    8484                        The system is processing your data request.  Your browser should
    8585                        be actively trying to load a page.  This is typically indicated by
  • trunk/ibisph-view/src/main/webapp/xslt/html/user/login/Login.xslt

    r21259 r21640  
    6767                                                <input type="text" id="username" name="username"
    6868                                                        size="40" maxlength="100" required="required"
    69                                                         value="{$ibis.userProfile/ID}" placeholder="Email or User ID"
     69                                                        value="{$ibis.userProfile/ID}" placeholder="Email Address or User ID"
    7070                                                        title="Login account username - typically your email address."
    7171                                                />
     
    8282                                                <input type="password" id="password" name="password"
    8383                                                        size="40" maxlength="100" required="required"
    84                                                         placeholder="password"
     84                                                        placeholder="Password"
    8585                                                        title="Your password for this application."
    8686                                                />
Note: See TracChangeset for help on using the changeset viewer.