<!--
 * Copyright (c) 2001, 2003, Oracle Corporation.  All rights reserved.  
 *
 *      NAME
 *       searchPolicyRules.uix
 *
 *      NOTES
 *       Search for Policy Rules
 *
 * MODIFIED (MM/DD/YY)  VERSION
 *    kchias 10/08/03 - add login to title 
 *    groyal 09/12/03 - Add Objects category 
 *    groyal 09/05/03 - Fix filters 
 *    groyal 07/24/03 - Remove policy group column
 *    groyal 06/11/03 - Add nls support
 *    groyal 05/23/03 - groyal_policy_0521
 *    groyal 05/22/03 - Creation
 *
 *
 *  @author  groyal
 *
-->
<page xmlns="http://bali.us.oracle.com/cabo/baja"
      xmlns:baja="http://bali.us.oracle.com/cabo/baja"
      xmlns:marlin="http://bali.us.oracle.com/cabo/marlin"
      xmlns:uix="http://bali.us.oracle.com/cabo/marlin"
      xmlns:html="http://www.w3.org/TR/REC-html40"
      xmlns:data="http://bali.us.oracle.com/cabo/marlin">

 <baja:head   xmlns="http://bali.us.oracle.com/cabo/marlin"
              xmlns:uix="http://bali.us.oracle.com/cabo/marlin"
              xmlns:html="http://www.w3.org/TR/REC-html40">
  <dataScope>
   <contents>
         <head>
           <boundAttribute name="title">
             <concat>
                <dataObject select="loginTitle"
                            source="getLoginTitle"/>
                <fixed javaType="string">&nbsp;-&nbsp;</fixed>
                <dataObject select="TITLE_SEARCHPOLICYRULES" source="ResourceBundle"/>
             </concat>
           </boundAttribute>
         </head> 
   </contents>
      <provider>
       <data name="getLoginTitle">
          <method class="oracle.sysman.eml.ecm.util.EcmSessionUtil" method="getLoginTitle"/>
        </data>
        <data name="ResourceBundle">
         <bundle class = "oracle.sysman.eml.ecm.search.util.SearchResourceBundle"/>
        </data>
      </provider>
  </dataScope>

 </baja:head>
    <!-- special handler to load help topic -->
   <handlers>
    <event name="null">
      <method class="oracle.sysman.eml.ecm.OnlineHelp"
              method="loadSearchHelpTopic"/>
    </event>
   </handlers>

 <baja:content xmlns="http://bali.us.oracle.com/cabo/marlin">
  <dataScope>
   <contents>
    <script>
     <contents>
      // clear out the previous selections
      function clearParams()
      {
       with(document.searchPolicyRules)
       {
       }
      }
     </contents>
    </script>
    <form name="searchPolicyRules" >
     <contents>
      <formValue name="blockStart" uix:value="blockStart@patchList"/>
      <formValue name="anchor" uix:value="anchor@patchList"/>
      <pageLayout xmlns="http://bali.us.oracle.com/cabo/marlin"
             uix:title="TITLE_SEARCHPOLICYRULES@ResourceBundle">
 
       <mediumAdvertisement>
        <include baja:node="../../oemBanner" />
       </mediumAdvertisement>
       <marlin:globalButtons>
        <include baja:node="../../globalButtonBar" />
       </marlin:globalButtons>
       <marlin:tabs>
        <include baja:node="../../globalTabs" />
       </marlin:tabs>
       <marlin:location>
        <include baja:node="../../breadCrumbs" />
       </marlin:location>
       <marlin:pageHeader>
        <include baja:node="../../globalHeader" />
       </marlin:pageHeader>
       <copyright>
        <include baja:node="../../copyright" />
       </copyright>

       <pageButtons>
        <pageButtonBar>
        <contents>
            <submitButton name="event"
                          value="doSQLSearch"
                          uix:text="BTN_SEARCHSQL@ResourceBundle"/>
        </contents>
        </pageButtonBar>
       </pageButtons>

       <contents>
        <messageBox automatic="true" />
         <!-- make sure valid policy data -->
         <switcher uix:childName="status@searchList" childName="success">
          <case name="failure">
           <messageBox automatic="false"
                       uix:text="errHdr@searchList"
                       uix:message="errMsg@searchList"
                       messageType="error" />
          </case>
          <case name="success">
           <stackLayout>
            <contents>
            <include baja:node="../../targetTime" />

              <header uix:text="HDR_SEARCHCRITERIA@ResourceBundle">
               <contents>
                <tableLayout width="40%" align="center">
                 <contents>

                 <rowLayout>
                 <contents>
                  <rowLayout hAlign="right">
                   <contents>
                    <cellFormat wrappingDisabled="true">
                     <contents>
                      <spacer width="10"/>
                      <styledText labeledNodeId="priorityID" styleClass="OraPromptText" uix:text="LBL_POLICYPRIORITY@ResourceBundle"/>
                     </contents>
                    </cellFormat>
                  </contents>
                  </rowLayout>
                  <rowLayout hAlign="right">
                   <contents>
                    <spacer width="10"/>
                    <choice name="priorityEnum"
                            id="priorityID"
                            uix:selectedValue="priorityEnum@searchData">
                     <contents>
                        <option uix:text="OPT_ALL@ResourceBundle"
                                value="OPT_ALL"/>
                        <option uix:text="OPT_HIGH@ResourceBundle"
                                value="4"/>
                        <option uix:text="OPT_MEDIUM@ResourceBundle"
                                value="3"/>    
                        <option uix:text="OPT_INFORMATIONAL@ResourceBundle"
                                value="1"/>                                  
                     </contents>
                    </choice>
                   </contents>
                  </rowLayout>
                 </contents>
                </rowLayout>

                 <rowLayout>
                 <contents>
                  <rowLayout hAlign="right">
                   <contents>
                    <cellFormat wrappingDisabled="true">
                     <contents>
                      <spacer width="10"/>
                      <styledText labeledNodeId="categoryID" styleClass="OraPromptText" uix:text="LBL_POLICYCATEGORY@ResourceBundle"/>
                     </contents>
                    </cellFormat>
                  </contents>
                  </rowLayout>
                  <rowLayout hAlign="right">
                   <contents>
                    <spacer width="10"/>
                    <choice name="categoryEnum"
                            id="categoryID"
                            uix:selectedValue="categoryEnum@searchData">
                     <contents>
                        <option uix:text="OPT_ALL@ResourceBundle"
                                value="OPT_ALL"/>
                        <option uix:text="CATEGORY_CONFIGURATION@PolicyResourceBundle"
                                value="Configuration"/>                                                                   
                        <option uix:text="CATEGORY_OBJECTS@PolicyResourceBundle"
                                value="Objects"/>
                        <option uix:text="CATEGORY_SECURITY@PolicyResourceBundle"
                                value="Security"/>
                        <option uix:text="CATEGORY_STORAGE@PolicyResourceBundle"
                                value="Storage"/>                                   
                     </contents>
                    </choice>
                   </contents>
                  </rowLayout>
                 </contents>
                </rowLayout>

                 <rowLayout>
                 <contents>
                  <rowLayout hAlign="right">
                   <contents>
                    <cellFormat wrappingDisabled="true">
                     <contents>
                      <spacer width="10"/>
                      <styledText labeledNodeId="targetTypeID" styleClass="OraPromptText" uix:text="LBL_POLICYTARGETTYPE@ResourceBundle"/>
                     </contents>
                    </cellFormat>
                  </contents>
                  </rowLayout>
                  <rowLayout hAlign="right">
                   <contents>
                    <spacer width="10"/>
                    <choice name="targetTypeEnum"
                            id="targetTypeID"
                            uix:selectedValue="targetTypeEnum@searchData">
                     <contents>
                        <option uix:text="OPT_ALL@ResourceBundle"
                                value="OPT_ALL"/>
                        <option uix:text="OPT_DATABASE@ResourceBundle"
                                value="Database"/>     
                        <option uix:text="OPT_HOST@ResourceBundle"
                                value="Host"/>                                     
                     </contents>
                    </choice>
                   </contents>
                  </rowLayout>
                 </contents>
                </rowLayout>

                </contents>
               </tableLayout>
              </contents>
             </header>
             
             <tableLayout width="45%" >
              <contents>
               <spacer height="5"/>
               <rowLayout hAlign="right">
                <contents>
                 <cellFormat wrappingDisabled="true">
                  <contents>
                   <submitButton name="event"
                                 value="doSearch"
                                 uix:text="BTN_SEARCH@ResourceBundle"/>
                   <spacer width="8"/>
                   <button uix:text="BTN_CLEAR@ResourceBundle"
                           onClick="clearParams();" />
                   <spacer width="8"/>
                  </contents>
                 </cellFormat>
                </contents>
               </rowLayout>
              </contents>
             </tableLayout>
             
             <header uix:text="HDR_RESULTS@ResourceBundle">
              <contents>

                <rowLayout hAlign="right">
                    <contents>
                     <button uix:text="BTN_SAVETOFILE@ResourceBundle"
                        destination="export/exportSearch$searchType=searchPolicyRules"/>
                    </contents>
                  </rowLayout>
                  <html:br></html:br>
                  <spacer height="5"/>

               <table name="resultsTable"
                      width="100%"
                      formSubmitted="true"
                      minValue="1"
                      uix:value="value@searchList"
                      uix:maxValue="maxValue@searchList"
                      uix:blockSize="blockSize@searchList"
                      uix:alternateText="MSG_PRESSSEARCH@ResourceBundle"
                      uix:tableData="tabledata@searchList">
                <tableFormat tableBanding="rowBanding"/>

                <columnHeaderData>
                 <col uix:text="LBL_POLICYPRIORITY@ResourceBundle"   uix:sort="SORT_POLICYPRIORITY@searchList"   value="LBL_POLICYPRIORITY"/>                           
                 <col uix:text="LBL_POLICYRULE@ResourceBundle"       uix:sort="SORT_POLICYRULE@searchList"       value="LBL_POLICYRULE"/>                                 
                 <col uix:text="LBL_POLICYCATEGORY@ResourceBundle"   uix:sort="SORT_POLICYCATEGORY@searchList"   value="LBL_POLICYCATEGORY"/>                 
                 <col uix:text="LBL_POLICYTARGETTYPE@ResourceBundle" uix:sort="SORT_POLICYTARGETTYPE@searchList" value="LBL_POLICYTARGETTYPE"/>                
                 <col uix:text="LBL_POLICYDESC@ResourceBundle"       uix:sort="SORT_POLICYDESC@searchList"       value="LBL_POLICYDESC"/>
                </columnHeaderData>

                <columnHeaderStamp>
                 <sortableHeader data:text="text"
                                uix:value="value"
                                uix:sortable="sort">
                   <boundAttribute name="sortable">
                    <defaulting>
                        <dataObject data:source="(value)@sortColumnHeader"/>
                        <dataObject select="sort"/>
                    </defaulting>
                   </boundAttribute>
                 </sortableHeader>
                </columnHeaderStamp>

                <columnFormats>
                    <columnFormat columnDataFormat="iconButtonFormat"/>                
                    <columnFormat columnDataFormat="textFormat"/>
                    <columnFormat columnDataFormat="textFormat"/>
                    <columnFormat columnDataFormat="textFormat"/>
                    <columnFormat columnDataFormat="textFormat"/>                
                </columnFormats>

                <contents>
                 <image data:source="LBL_POLICYPRIORITY"/>   
                 <styledText uix:text="LBL_POLICYRULE"/>                 
                 <styledText uix:text="LBL_POLICYCATEGORY"/>
                 <styledText uix:text="LBL_POLICYTARGETTYPE"/>  
                 <styledText uix:text="LBL_POLICYDESC"/>                 
                </contents>
               </table>
              </contents>
             </header>
          </contents>
         </stackLayout>
        </case>
       </switcher>
      </contents>
     </pageLayout>
    </contents>
   </form>
  </contents>
  <provider>
   <data name="searchCallbackText">
    <inline innerQuery="select priority as LBL_POLICYPRIORITY, policy_rule_display_id || '_NAME%' ||  policy_rule_name as LBL_POLICYRULE, policy_rule_display_id || '_CATEGORY%' || category as LBL_POLICYCATEGORY, target_type as LBL_POLICYTARGETTYPE, policy_rule_display_id || '_DESC%' || description as LBL_POLICYDESC, category as LBL_CATEGORY_FILTER from MGMT$POLICY_RULES order by LBL_POLICYPRIORITY desc" />
   </data>
    <data name="columnListInfo">
     <inline>  
      <column displayName="LBL_POLICYPRIORITY"
              iconColumn="true"
              filterOp="OPT_ENUMERATION"
              filterVal="priorityEnum"
              valFormat="numericFormat"/>          
      <column displayName="LBL_POLICYRULE"
              nlsIdColumn="true"/> 
      <column displayName="LBL_POLICYCATEGORY"
              nlsIdColumn="true"/> 
      <column displayName="LBL_POLICYTARGETTYPE"
              filterOp="OPT_ENUMERATION"
              filterVal="targetTypeEnum"/>               
      <column displayName="LBL_POLICYDESC"
              nlsIdColumn="true"/>  
      <column displayName="LBL_CATEGORY_FILTER"
              selectColumn="false"
              filterOp="OPT_ENUMERATION"
              filterVal="categoryEnum"/> 
     </inline>
    </data>

    <data name="iconSourceData">
      <inline>           
        <condition value="1"
                   iconImage = "images/infoicon_active.gif" />
        <condition value="3"
                   iconImage = "images/warning.gif" />
        <condition value="4"
                   iconImage = "images/critical.gif" />    
      </inline>
    </data>
    
    <data name="ResourceBundle">
     <bundle class = "oracle.sysman.eml.ecm.search.util.SearchResourceBundle"/>
    </data>
    <data name="PolicyResourceBundle">
      <bundle class = "oracle.sysman.eml.ecm.policy.util.PolicyResourceBundle"/>
    </data>    
    <data name="searchData">
     <method class="oracle.sysman.eml.ecm.search.SearchData"
             method="populateSearchData"/>
    </data>
    <data xmlns="http://bali.us.oracle.com/cabo/marlin" name="searchList">
     <method class="oracle.sysman.eml.ecm.search.SearchData"
             method="populateResultsTable"/>
    </data>
   <data name="sortColumnHeader">
     <method class="oracle.sysman.eml.ecm.search.SearchData"
             method="getSortColumnHeader"/>
    </data>


   </provider>
  </dataScope>
 </baja:content>

 <handlers>

  <event name="sort">
   <method class="oracle.sysman.eml.ecm.search.SearchHandler"
           method="doSort"/>
  </event>
  <event name="doSearch">
   <method class="oracle.sysman.eml.ecm.search.SearchHandler"
           method="doSearch"/>
  </event>
  <event name="doSQLSearch">
   <method class="oracle.sysman.eml.ecm.search.SearchHandler"
           method="doSQLSearch"/>
  </event>

  <!-- This handles the next/prev buttons in the results table -->
  <event name="goto">
   <method class="oracle.sysman.eml.ecm.search.SearchHandler"
           method ="tableGoto"/>
  </event>
 </handlers>
</page>


