<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->

<forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
        xmlns="http://ofbiz.apache.org/Widget-Form" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Form http://ofbiz.apache.org/dtds/widget-form.xsd">
    <!-- Geo Lookup forms -->
    <form name="LookupGeo" target="LookupGeo" title="" type="single">
        <field name="geoId" title="${uiLabelMap.CommonGeoId}"><text-find/></field>
        <field name="geoTypeId" title="${uiLabelMap.CommonGeoTypeId}">
            <drop-down allow-empty="true">
                <entity-options key-field-name="geoTypeId" entity-name="GeoType">
                    <entity-order-by field-name="description"/>
                </entity-options>
            </drop-down>
        </field>
        <field name="geoName" title="${uiLabelMap.CommonGeoName}"><text-find/></field>
        <field name="geoCode" title="${uiLabelMap.CommonGeoCode}"><text-find/></field>
        <field name="geoSecCode" title="${uiLabelMap.CommonGeoSecCode}"><text-find/></field>
        <field name="abbreviation" title="${uiLabelMap.CommonGeoAbbr}"><text-find/></field>
        <field name="noConditionFind"><hidden value="Y"/><!-- if this isn't there then with all fields empty no query will be done --></field>
        <field name="submitButton" title="${uiLabelMap.CommonFind}" widget-style="smallSubmit"><submit button-type="button"/></field>
    </form>
    <form name="ListLookupGeo" list-name="listIt" target="" title="" type="list" paginate-target="LookupGeo">
        <actions>
            <service service-name="performFind" result-map="result" result-map-list="listIt">
                <field-map field-name="inputFields" from-field="parameters"/>
                <field-map field-name="entityName" value="Geo"/>
                <field-map field-name="orderBy" value="geoName"/>
                <field-map field-name="viewIndex" from-field="viewIndex"/>
                <field-map field-name="viewSize" from-field="viewSize"/>
            </service>
        </actions>
        <field name="geoId" widget-style="buttontext" title="${uiLabelMap.CommonGeoId}">
            <hyperlink also-hidden="false" target-type="plain" description="${geoId}"  target="javascript:set_value('${geoId}')"/>
        </field>
        <field name="geoTypeId" title="${uiLabelMap.CommonGeoTypeId}">
            <display-entity key-field-name="geoTypeId" entity-name="GeoType"/>
        </field>
        <field name="geoName" title="${uiLabelMap.CommonGeoName}"><display/></field>
        <field name="geoCode" title="${uiLabelMap.CommonGeoCode}"><display/></field>
        <field name="geoSecCode" title="${uiLabelMap.CommonGeoSecCode}"><display/></field>
        <field name="abbreviation" title="${uiLabelMap.CommonGeoAbbr}"><display/></field>
        <field name="wellKnownText" title="${uiLabelMap.CommonGeoWellKnownText}"><display/></field>
    </form>

    <form name="LookupGeoName" extends="LookupGeo" target="LookupGeoName"/>
    <form name="ListLookupGeoName" extends="ListLookupGeo" paginate-target="LookupGeoName">
        <field name="geoId" widget-style="buttontext" title="${uiLabelMap.CommonGeoId}">
            <hyperlink also-hidden="false" target-type="plain" description="${geoId}"  target="javascript:set_values('${geoName}', '${geoId}')"/>
        </field>
    </form>

    <form name="LookupUserLogin" type="single" target="LookupUserLogin">
        <field name="userLoginId" title="${uiLabelMap.CommonUserLoginId}"><text-find/></field>
        <field name="noConditionFind"><hidden value="Y"/><!-- if this isn't there then with all fields empty no query will be done --></field>
        <field name="submitButton" title="${uiLabelMap.CommonFind}"><submit button-type="button"/></field>
    </form>

    <form name="ListLookedUpUserLogins" type="list" list-name="listIt" paginate-target="LookupUserLogin"
        odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
        <actions>
            <service service-name="performFind" result-map="result" result-map-list="listIt">
                <field-map field-name="inputFields" from-field="parameters"/>
                <field-map field-name="orderBy" value="userLoginId"/>
                <field-map field-name="entityName" value="UserLogin"/>
                <field-map field-name="viewIndex" from-field="viewIndex"/>
                <field-map field-name="viewSize" from-field="viewSize"/>
            </service>
        </actions>
        <field name="userLoginId" title="${uiLabelMap.CommonUserLoginId}" widget-style="smallSubmit">
            <hyperlink description="${userLoginId}" target="javascript:set_value('${userLoginId}', '${userLoginId}', '${parameters.webSitePublishPoint}')" also-hidden="false" target-type="plain"/>
        </field>
        <field name="enabled"><display/></field>
        <field name="hasLoggedOut"><display/></field>
        <field name="disabledDateTime"><display/></field>
    </form>

    <form name="LookupPortalPage" type="single" target="LookupPortalPage">
        <auto-fields-entity entity-name="PortalPage" default-field-type="find"/>
        <field name="noConditionFind"><hidden value="Y"/><!-- if this isn't there then with all fields empty no query will be done --></field>
        <field name="submitButton" title="${uiLabelMap.CommonFind}"><submit button-type="button"/></field>
    </form>

    <form name="ListPortalPages" type="list" list-name="listIt" paginate-target="LookupPortalPage"
        odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
        <actions>
            <service service-name="performFind" result-map="result" result-map-list="listIt">
                <field-map field-name="inputFields" from-field="parameters"/>
                <field-map field-name="orderBy" value="portalPageId"/>
                <field-map field-name="entityName" value="PortalPage"/>
                <field-map field-name="viewIndex" from-field="viewIndex"/>
                <field-map field-name="viewSize" from-field="viewSize"/>
            </service>
        </actions>
        <auto-fields-entity entity-name="PortalPage" default-field-type="display"/>
        <field name="portalPageId" widget-style="smallSubmit">
            <hyperlink description="${portalPageId}" target="javascript:set_value('${portalPageId}')" also-hidden="false" target-type="plain"/>
        </field>
    </form>

    <form name="LookupLocale" type="single" target="LookupLocale">
        <field name="localeString"><text-find hide-options="true"/></field>
        <field name="localeName" title="${uiLabelMap.CommonLanguageTitle}"><text-find hide-options="true"/></field>
        <field name="submitButton" title="${uiLabelMap.CommonFind}"><submit button-type="button"/></field>
    </form>

    <form name="ListLocales" type="list" list-name="locales" paginate-target="LookupLocale"
        odd-row-style="alternate-row" default-table-style="basic-table hover-bar">
        <field name="localeString" widget-style="buttontext">
            <hyperlink description="${localeString}" target="javascript:set_value('${localeString}', '${localeName}')" also-hidden="false" target-type="plain"/>
        </field>
        <field name="localeName" title="${uiLabelMap.CommonLanguageTitle}"><display/></field>
    </form>
</forms>
