Changeset 3680 in main


Ignore:
Timestamp:
04/01/12 23:55:54 (10 years ago)
Author:
Garth Braithwaite
Message:

view and java - finished and briefly tested sticky query def functionality.

Location:
branches/2.1/src/main
Files:
12 added
10 edited

Legend:

Unmodified
Added
Removed
  • branches/2.1/src/main/java/org/ibisph/web/modelmap/ModelFromHTTPSessionAttribute.java

    r3654 r3680  
    3838   */
    3939  public Object getModel(HttpServletRequest request) throws Exception {
    40     return( request.getSession().getAttribute(this.modelObjectSessionAttributeName) );
     40    Object object = request.getSession().getAttribute(this.modelObjectSessionAttributeName);
     41    return(object);
    4142  } //-------------------------- End of Method ------------------------------
    4243
  • branches/2.1/src/main/webapps/ibisph-view/WEB-INF/config/spring/common.xml

    r3663 r3680  
    138138
    139139        <!--  M O D E L   M A P S -->
    140         <bean id="Common.XMLModelMapKey" class="java.lang.String">
     140        <bean id="Common.XML.ModelMapKey" class="java.lang.String">
    141141                <constructor-arg value="XML"/>
    142142        </bean>
     
    145145        </bean>
    146146        <bean id="Common.XMLModelMap.CommonProperties" abstract="true">
    147                 <property name="modelMapKey" ref="Common.XMLModelMapKey"/>
     147                <property name="modelMapKey" ref="Common.XML.ModelMapKey"/>
    148148        </bean>
    149149
     
    161161        </bean>
    162162        <bean id="Common.ModifiedDateFromFileSystemID.ModelMap" class="org.ibisph.modelmap.AddModelDateModelToModelMap">
    163                 <property name="sourceModelModelMapKey"   ref="Common.XMLModelMapKey"/>
     163                <property name="sourceModelModelMapKey"   ref="Common.XML.ModelMapKey"/>
    164164                <property name="formattedDateModelMapKey" ref="Common.ModifiedDateModelMapKey"/>
    165165                <property name="dateFormat"               ref="Common.DateFormat"/>
     
    314314                <constructor-arg ref="Common.HTMLContent.XSLT.SystemID"/>
    315315                <constructor-arg ref="Common.XSLT.Transformation"/>
    316                 <property name="XMLModelMapKey" ref="Common.XMLModelMapKey"/>
     316                <property name="XMLModelMapKey" ref="Common.XML.ModelMapKey"/>
    317317                <property name="contentType" value="text/html"/>
    318318        </bean>
  • branches/2.1/src/main/webapps/ibisph-view/WEB-INF/config/spring/dispatcher_servlet.xml

    r3679 r3680  
    105105                                <entry key="/query/criteria/List.html"    value-ref="QueryDefinition.CriteriaList.Controller"/>
    106106                                <entry key="/query/definition/List.html"  value-ref="QueryDefinition.DefinitionList.Controller"/>
    107 <!--
    108         IF STICKY then PUT THE CURRENT QUERY DEF INTO THE SESSION ANYTIME ONE IS SELECTED
    109        
    110         MAYBE BY DEFINITION YOU SAY SELECTIONS ARE STICKY GOING FORWARD - APPLY ALL GOING
    111         FORWARD???   NO BECAUSE WHEN POST QM YOU'D HAVE TO CONVERT/UPDATE ETC.
    112 -->
     107
     108                                <entry key="/apply/sticky/query/definition" value-ref="QueryDefinition.SetSessionStickyFlag.Controller"/>
    113109
    114110                                <entry key="/run/query/definition/**"    value-ref="QueryDefinition.RunDefinition.Controller"/>
  • branches/2.1/src/main/webapps/ibisph-view/WEB-INF/config/spring/query.xml

    r3677 r3680  
    8585
    8686        <bean id="Query.Module.XMLModelMapKey" abstract="true">
    87                 <property name="queryModuleModelMapKey" ref="Common.XMLModelMapKey"/>
     87                <property name="queryModuleModelMapKey" ref="Common.XML.ModelMapKey"/>
    8888        </bean>
    8989        <bean id="Query.Module.AddUserSelections.ModelMap" class="org.ibisph.querymodule.modelmap.AddHTTPRequestParametersToQueryModule" parent="Query.Module.XMLModelMapKey">
     
    102102
    103103        <bean id="Query.Module.ModifiedDate.ModelMap" class="org.ibisph.modelmap.AddModelDateModelToModelMap">
    104                 <property name="sourceModelModelMapKey"   ref="Common.XMLModelMapKey"/>
     104                <property name="sourceModelModelMapKey"   ref="Common.XML.ModelMapKey"/>
    105105                <property name="formattedDateModelMapKey" ref="Common.ModifiedDateModelMapKey"/>
    106106                <property name="sourceModelDateXPath"     value="/QUERY_MODULE/FILE_LAST_MODIFIED_DTS"/>
     
    110110
    111111        <bean id="Query.Module.DeleteIBISQResult.ModelMap" class="org.ibisph.xml.modelmap.DeleteElementsFromDocument">
    112                 <property name="documentToDeleteNodesFromModelMapKey" ref="Common.XMLModelMapKey"/>
     112                <property name="documentToDeleteNodesFromModelMapKey" ref="Common.XML.ModelMapKey"/>
    113113                <property name="elementToDeleteXPathList">
    114114                        <list>
     
    156156                                <ref bean="Query.Module.DocumentFromHTTPRequest.ModelMap"/>
    157157                                <ref bean="Query.Module.ModifiedDate.ModelMap"/>
     158                                <ref bean="QueryDefinition.AddStickyDefinition.ModelMap"/>
    158159                                <ref bean="Common.WebAppURLContextPrefixFromHTTPRequest.ModelMap"/>
    159160                        </list>
  • branches/2.1/src/main/webapps/ibisph-view/WEB-INF/config/spring/query_definition.xml

    r3679 r3680  
    2525                <constructor-arg type="java.lang.String" value="queryDefinitionName"/>
    2626        </bean>
     27        <bean id="QueryDefinition.StickyQueryDefinitionFlag.SessionName" class="java.lang.String">
     28                <constructor-arg type="java.lang.String" value="StickyQueryDefinitionFlag"/>
     29        </bean>
     30        <bean id="QueryDefinition.StickyQueryDefinition.SessionName" class="java.lang.String">
     31                <constructor-arg type="java.lang.String" value="StickyQueryDefinition"/>
     32        </bean>
    2733
    2834
     
    161167        </bean>
    162168
     169        <bean id="QueryDefinition.AddStickyQueryDefinitionToSession.ModelMap" class="org.ibisph.querydefinition.modelmap.AddStickyQueryDefinitionToSession">
     170                <description>
     171                        Model processor that sets the user's "sticky" session stored query
     172                        definition.  This only is stored IF the user's query definition
     173                        flag session variable is set.
     174                </description>
     175                <property name="stickyQueryDefinitionFlagSessionName" ref="QueryDefinition.StickyQueryDefinitionFlag.SessionName"/>
     176                <property name="stickyQueryDefinitionSessionName"     ref="QueryDefinition.StickyQueryDefinition.SessionName"/>
     177                <property name="queryDefinitionModelMapKey"           ref="QueryDefinition.QueryDefinition.ModelMapKey"/>
     178        </bean>
     179
     180        <bean id="QueryDefinition.AddStickyDefinition.ModelMap" class="org.ibisph.querydefinition.modelmap.StickyQueryDefinitionToQueryModule">
     181                <description>
     182                        Model processor that supplements the query module selections with
     183                        a user's "sticky", session stored query definition's.  This only
     184                        is applied IF the user's query definition flag session variable is
     185                        set AND if a query definition exists in the session.
     186                </description>
     187                <property name="queryModuleModelMapKey"               ref="Common.XML.ModelMapKey"/>
     188                <property name="stickyQueryDefinitionFlagSessionName" ref="QueryDefinition.StickyQueryDefinitionFlag.SessionName"/>
     189                <property name="stickyQueryDefinitionSessionName"     ref="QueryDefinition.StickyQueryDefinition.SessionName"/>
     190                <property name="queryModuleService"                   ref="Query.Module.XML.Service"/>
     191                <property name="queryDefinitionToQueryModuleService"  ref="QueryDefinition.DefinitionToModule.Service"/>
     192        </bean>
     193
     194        <bean id="QueryDefinition.StickyFlagFromSession.ModelMap" class="org.ibisph.web.modelmap.ModelFromHTTPSessionAttribute" parent="Common.XMLModelMap.CommonProperties">
     195                <property name="modelObjectSessionAttributeName" ref="QueryDefinition.StickyQueryDefinitionFlag.SessionName"/>
     196                <property name="modelMapKey"                     ref="QueryDefinition.StickyQueryDefinitionFlag.SessionName"/>
     197        </bean>
    163198
    164199
     
    169204                        <list>
    170205                                <ref bean="QueryDefinition.QueryDefinitionsFromHTTPRequest.ModelMap"/>
     206                                <ref bean="QueryDefinition.StickyFlagFromSession.ModelMap"/>
    171207                                <ref bean="Common.HTTPRequestParameters.ModelMap"/>
    172208                                <ref bean="Common.WebAppURLContextPrefixFromHTTPRequest.ModelMap"/>
     
    200236                                <ref bean="QueryDefinition.QueryDefinitionFromHTTPRequest.ModelMap"/>
    201237                                <ref bean="QueryDefinition.QueryModuleFromHTTPRequestAndQueryDefinition.ModelMap"/>
     238                                <ref bean="QueryDefinition.AddStickyDefinition.ModelMap"/>
    202239                                <ref bean="Common.HTTPRequestParameters.ModelMap"/>
    203240                                <ref bean="Common.WebAppURLContextPrefixFromHTTPRequest.ModelMap"/>
     
    219256                                <ref bean="QueryDefinition.DeleteQueryDefinitionParamaeters.ModelMap"/>
    220257                                <ref bean="QueryDefinition.QueryModuleFromHTTPRequestAndQueryDefinition.ModelMap"/>
     258                                <ref bean="QueryDefinition.AddStickyDefinition.ModelMap"/>
    221259                                <ref bean="Common.HTTPRequestParameters.ModelMap"/>
    222260                                <ref bean="Common.WebAppURLContextPrefixFromHTTPRequest.ModelMap"/>
     
    224262                </property>
    225263                <property name="view" ref="Query.Builder.View"/>
     264        </bean>
     265
     266        <bean id="QueryDefinition.SetSessionStickyFlag.Controller" class="org.ibisph.querymodule.springmvc.SetStickyQueryDefinitionSessionFlagController">
     267                <description>
     268                        AJAX handler that sets the user's session flag.
     269                </description>
     270                <property name="stickyQueryDefinitionFlagSessionName" ref="QueryDefinition.StickyQueryDefinitionFlag.SessionName"/>
     271                <property name="stickyHTTPRequestParameterName"       value="sticky"/>
    226272        </bean>
    227273
     
    234280                        <list>
    235281                                <ref bean="QueryDefinition.QueryDefinitionFromHTTPRequest.ModelMap"/>
     282                                <ref bean="QueryDefinition.AddStickyQueryDefinitionToSession.ModelMap"/>
    236283                                <ref bean="QueryDefinition.DeleteQueryDefinitionParamaeters.ModelMap"/>
    237284                                <ref bean="QueryDefinition.QueryModuleFromHTTPRequestAndQueryDefinition.ModelMap"/>
  • branches/2.1/src/main/webapps/ibisph-view/xslt/html/query/definition/detail/Page.xslt

    r3679 r3680  
    4343                <script type="text/javascript">
    4444                        var webappPrefix = '<xsl:value-of select="$ibis.urlPrefix"/>';
    45                         var validNameCharactersRegEx = /^[a-z0-9_\-\.]+$/i; //    [A-Za-z0-9\-\_\.]*;
     45                        var validNameCharactersRegEx = /^[a-z0-9_\-]+$/i; //    [A-Za-z0-9\-\_\.]*;
     46
    4647                        // <![CDATA[
    47 // ~`!@#$%^&*()=+{}[]|\\:;\"\'<>,?/ r.test(document.form.input.value);
    4848                        function submitDefinition()
    4949                        {
     
    5151                                if(document.form.name.value < " ")
    5252                                {
    53                                         alert("Name MUST be populated.");
     53                                        alert("Name MUST be populated.  This value is the unique identifier that is used by the system to access this query definition.");
    5454                                        document.form.name.focus();
    5555                                        return(false);
     
    5757                                else if(!validNameCharactersRegEx.test(document.form.name.value))
    5858                                {
    59                                         alert("Name contains invalid characters.  Valid values are A-z, 0-9, '.', '-', '_'");
     59                                        alert("Name contains invalid characters.  Valid values are A-z, 0-9, '-', '_'");
    6060                                        document.form.name.focus();
    6161                                        return(false);
     
    6363                                else if(document.form.title.value < " ")
    6464                                {
    65                                         alert("Title MUST be populated.");
     65                                        alert("Title MUST be populated.  This is the text you will see in your query definition selection list.");
    6666                                        document.form.title.focus();
    6767                                        return(false);
     
    128128                                                                <br/><br/>
    129129
    130                                                                 Valid values for a name inlucde A-z, 0-9, ".", "-", and "_".
     130                                                                Valid values for a name inlucde A-z, 0-9, "-", and "_".
    131131                                                        </xsl:with-param>
    132132                                                </xsl:call-template>
    133133                                                <input id="name" name="name"  maxlength="180" type="text"
    134134                                                        value="{translate(
    135                                                                 concat(/QUERY_MODULE/REQUEST/CONFIGURATION_PATH, '-', /QUERY_MODULE/REQUEST/CONFIGURATION_NAME),
    136                                                                 '/\:%', '----')
     135                                                                concat(substring(/QUERY_MODULE/REQUEST/CONFIGURATION_PATH,2), '-', /QUERY_MODULE/REQUEST/CONFIGURATION_NAME),
     136                                                                '/', '_')
    137137                                                        }"
    138138                                                /><br/>
  • branches/2.1/src/main/webapps/ibisph-view/xslt/html/query/definition/index/criteria/Page.xslt

    r3679 r3680  
    2323        </ibis:doc>
    2424
     25
     26        <xsl:param name="StickyQueryDefinitionFlag" select="''" ibis:doc="session sticky flag value."/>
    2527
    2628        <xsl:param name="Page.pageTitle" ibis:doc="Page's title text.">Saved Query Criteria Definition List</xsl:param>
     
    6062                        </xsl:with-param>
    6163                </xsl:call-template>
    62                 <input name="makeSelectionSticky" type="Checkbox" onselect="sendStickyRequest()" title="apply selected criteria to any subsequent query dataset for this session."/>&#160;
     64                <input name="makeSelectionSticky" id="makeSelectionSticky" type="Checkbox" value="true" onclick="sendStickyRequest()" title="apply selected criteria to any subsequent query dataset for this session.">
     65                        <xsl:if test="string-length($StickyQueryDefinitionFlag) != 0">
     66                                <xsl:attribute name="checked">checked</xsl:attribute>
     67                        </xsl:if>
     68                </input>&#160;
    6369                <label for="makeSelectionSticky">Apply criteria to any and all subsequent dataset queries.</label>
    6470
     
    6672                        function sendStickyRequest()
    6773                        {
    68                                 var url = "<xsl:value-of select="$ibis.urlPrefix"/>query/criteria/sticky";
     74                                var stickyCheckBoxElement = new EnhancedElement("makeSelectionSticky");
     75                                var stickyValue = stickyCheckBoxElement.value;
     76                                if(!stickyCheckBoxElement.checked) stickyValue = "";
     77                                var url = "<xsl:value-of select="$ibis.urlPrefix"/>apply/sticky/query/definition?sticky=" + stickyValue;
    6978                                var httpRequest = new XMLHttpRequest();
    7079                                httpRequest.open('GET', url, true);
Note: See TracChangeset for help on using the changeset viewer.