You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by sa...@apache.org on 2011/10/20 19:33:40 UTC

svn commit: r1186950 [2/4] - in /ofbiz/branches/jackrabbit20100709: ./ applications/accounting/ applications/accounting/config/ applications/accounting/data/ applications/accounting/script/org/ofbiz/accounting/payment/ applications/accounting/script/or...

Modified: ofbiz/branches/jackrabbit20100709/applications/party/widget/partymgr/ProfileScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/party/widget/partymgr/ProfileScreens.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/party/widget/partymgr/ProfileScreens.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/party/widget/partymgr/ProfileScreens.xml Thu Oct 20 17:33:36 2011
@@ -25,6 +25,7 @@
             <actions>
                 <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/>
                 <set field="parameters.partyId" from-field="parameters.partyId" default-value="${userLogin.partyId}"/>
+                <set field="organizationLogoLinkURL" from-field="layoutSettings.organizationLogoLinkUrl"/>
                 <entity-and entity-name="PartyNameHistory" list="partyNameHistoryList">
                     <field-map field-name="partyId" from-field="parameters.partyId"/>
                     <order-by field-name="-changeDate"/>

Modified: ofbiz/branches/jackrabbit20100709/applications/product/config/ProductEntityLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/config/ProductEntityLabels.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/config/ProductEntityLabels.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/config/ProductEntityLabels.xml Thu Oct 20 17:33:36 2011
@@ -1519,63 +1519,6 @@
         <value xml:lang="zh">标准</value>
         <value xml:lang="zh_TW">標准</value>
     </property>
-    <property key="ProductFeatureCategory.description.1000">
-        <value xml:lang="en">Hazmat Features</value>
-        <value xml:lang="es">Características de Peligroso</value>
-        <value xml:lang="fr">Substances dangeureuse</value>
-        <value xml:lang="it">Caratteristiche danneggiate</value>
-        <value xml:lang="th">Hazmat Features</value>
-        <value xml:lang="zh">危险品特征</value>
-        <value xml:lang="zh_TW">危險品特征</value>
-    </property>
-    <property key="ProductFeatureCategory.description.1001">
-        <value xml:lang="de">Modelljahr Merkmale</value>
-        <value xml:lang="en">Model Year Features</value>
-        <value xml:lang="it">Caratteristiche anno modello</value>
-        <value xml:lang="zh">年型号特征</value>
-        <value xml:lang="zh_TW">年型號特征</value>
-    </property>
-    <property key="ProductFeatureCategory.description.1002">
-        <value xml:lang="de">Ausrüstungsklasse Merkmale</value>
-        <value xml:lang="en">Equipment Class Features</value>
-        <value xml:lang="it">Caratteristiche classe attrezzatura</value>
-        <value xml:lang="zh">设备分类特征</value>
-        <value xml:lang="zh_TW">設備分類特征</value>
-    </property>
-    <property key="ProductFeatureCategory.description.2000">
-        <value xml:lang="de">Gutschein Merkmale</value>
-        <value xml:lang="en">Gift Card Features</value>
-        <value xml:lang="it">Caratteristiche carta regalo</value>
-        <value xml:lang="zh">礼品卡特征</value>
-        <value xml:lang="zh_TW">禮品卡特征</value>
-    </property>
-    <property key="ProductFeatureCategory.description.2100">
-        <value xml:lang="de">Konto Merkmale</value>
-        <value xml:lang="en">Account Features</value>
-        <value xml:lang="it">Caratteristiche utenza</value>
-        <value xml:lang="zh">账户特征</value>
-        <value xml:lang="zh_TW">賬戶特征</value>
-    </property>
-    <property key="ProductFeatureCategory.description.3000">
-        <value xml:lang="de">Geschmack</value>
-        <value xml:lang="en">Taste</value>
-        <value xml:lang="it">Caratteristiche gusto</value>
-        <value xml:lang="zh">味道</value>
-        <value xml:lang="zh_TW">味道</value>
-    </property>
-    <property key="ProductFeatureCategory.description.8000">
-        <value xml:lang="de">Lizenz Merkmale</value>
-        <value xml:lang="en">License Features</value>
-        <value xml:lang="it">Caratteristiche licenza</value>
-        <value xml:lang="zh">版权特征</value>
-        <value xml:lang="zh_TW">版權特征</value>
-    </property>
-    <property key="ProductFeatureCategory.description.9000">
-        <value xml:lang="en">Widget Features</value>
-        <value xml:lang="it">Caratteristiche widget</value>
-        <value xml:lang="zh">预留名称特征</value>
-        <value xml:lang="zh_TW">預留名稱特征</value>
-    </property>
     <property key="ProductFeatureIactnType.description.FEATURE_IACTN_DEPEND">
         <value xml:lang="de">Abhängiges Merkmal</value>
         <value xml:lang="en">Dependent Feature</value>

Modified: ofbiz/branches/jackrabbit20100709/applications/product/config/ProductErrorUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/config/ProductErrorUiLabels.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/config/ProductErrorUiLabels.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/config/ProductErrorUiLabels.xml Thu Oct 20 17:33:36 2011
@@ -151,9 +151,14 @@
     </property>
     <property key="ProductNotInAnyLocation">
         <value xml:lang="en">This Product is not in any Location</value>
+        <value xml:lang="fr">Ce produit ne se trouve en aucun emplacement</value>
         <value xml:lang="zh">这个产品不在任何地方</value>
         <value xml:lang="zh_TW">這個產品不在任何地方</value>
     </property>
+    <property key="ProductFieldEmpty">
+        <value xml:lang="en">Please, fill the product field before</value>
+        <value xml:lang="fr">Sélectionnez le produit d'abord</value>
+    </property>
     <property key="ProductNumberOfOrdersMustNotBeEmptyToPrintPickSheet">
         <value xml:lang="en">The number of orders must not be empty. Please re-enter to print pick sheet.</value>
     </property>

Modified: ofbiz/branches/jackrabbit20100709/applications/product/config/ProductUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/config/ProductUiLabels.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/config/ProductUiLabels.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/config/ProductUiLabels.xml Thu Oct 20 17:33:36 2011
@@ -10672,7 +10672,7 @@
         <value xml:lang="de">Kategorie (Kategorie auswählen und Von Datum eingeben)</value>
         <value xml:lang="en">Category (select Category and enter fromDate)</value>
         <value xml:lang="es">Categoría (seleccione Categoría y ingrese fecha de inicio)</value>
-        <value xml:lang="fr">Sélectionner la catégorie et entrer la date</value>
+        <value xml:lang="fr">Sélectionnez la catégorie et entrer la date</value>
         <value xml:lang="it">Categoria (seleziona Categoria e inserire Da Data)</value>
         <value xml:lang="ro">Categoria (selectionati Categoria si introduceti De la Data)</value>
         <value xml:lang="ru">категорию (выберите категорию и введите дату начала)</value>
@@ -21881,7 +21881,7 @@
         <value xml:lang="de">Eine Einrichtung auswählen</value>
         <value xml:lang="en">Select a Facility</value>
         <value xml:lang="es">Seleccionar un almacén</value>
-        <value xml:lang="fr">Sélectionner un service</value>
+        <value xml:lang="fr">Sélectionnez un service</value>
         <value xml:lang="it">Seleziona una Stabilimento</value>
         <value xml:lang="ro">Selectioneaza un Compartiment</value>
         <value xml:lang="ru">Выбрать объект</value>
@@ -21905,7 +21905,7 @@
         <value xml:lang="de">Lieferung wählen zum entgegennehmen</value>
         <value xml:lang="en">Select Shipment to Receive</value>
         <value xml:lang="es">Seleccione envío a recibir</value>
-        <value xml:lang="fr">Sélectionner l'expédition à recevoir</value>
+        <value xml:lang="fr">Sélectionnez l'expédition à recevoir</value>
         <value xml:lang="it">Seleziona Spedizione da Ricevere</value>
         <value xml:lang="ro">Selectioneaza Expediere de Primit</value>
         <value xml:lang="ru">Выбрать поставки для получения</value>
@@ -25062,4 +25062,14 @@
         <value xml:lang="en">Use cart quantity</value>
         <value xml:lang="fr">Utiliser la quantité du panier</value>
     </property>
+    <property key="ProductOrderReturnStatus">
+        <value xml:lang="de">Zurück Sendungsstatus</value>
+        <value xml:lang="en">Return Shipment Status</value>
+        <value xml:lang="es">Volver estado del envío</value>
+        <value xml:lang="fr">Retour d'état d'expédition</value>
+        <value xml:lang="it">Stato di spedizione di ritorno</value>
+        <value xml:lang="th">สถานะการขนส่งการคืนค่า</value>
+        <value xml:lang="zh">退運狀態</value>
+        <value xml:lang="zh_TW">退運狀態</value>
+    </property>
 </resource>

Propchange: ofbiz/branches/jackrabbit20100709/applications/product/script/org/ofbiz/product/test/InventoryTests.xml
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Oct 20 17:33:36 2011
@@ -2,4 +2,4 @@
 /ofbiz/branches/dojo1.4/applications/product/script/org/ofbiz/product/test/InventoryTests.xml:951708-952957
 /ofbiz/branches/jquery/applications/product/script/org/ofbiz/product/test/InventoryTests.xml:952958-1044489
 /ofbiz/branches/multitenant20100310/applications/product/script/org/ofbiz/product/test/InventoryTests.xml:921280-927264
-/ofbiz/trunk/applications/product/script/org/ofbiz/product/test/InventoryTests.xml:962442-1178182
+/ofbiz/trunk/applications/product/script/org/ofbiz/product/test/InventoryTests.xml:962442-1186940

Modified: ofbiz/branches/jackrabbit20100709/applications/product/script/org/ofbiz/shipment/issuance/IssuanceServices.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/script/org/ofbiz/shipment/issuance/IssuanceServices.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/script/org/ofbiz/shipment/issuance/IssuanceServices.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/script/org/ofbiz/shipment/issuance/IssuanceServices.xml Thu Oct 20 17:33:36 2011
@@ -185,23 +185,18 @@ under the License.
         <set-pk-fields value-field="orderShipmentLookupPk" map="parameters"/>
         <find-by-and entity-name="OrderShipment" map="orderShipmentLookupPk" list="orderShipments"/>
         <first-from-list entry="orderShipment" list="orderShipments"/>
-        <!-- qtyForShipmentItem is the quantity we will add to the ShipmentItem -->
-        <!-- OrderShipment.quantity stores the OrderItem.quantity planned in the shipment -->
-        <calculate field="qtyForShipmentItem">
-            <calcop field="parameters.quantity" operator="subtract">
-                <calcop operator="get" field="orderShipment.quantity"/>
-            </calcop>
-        </calculate>
+
+        <!-- will create qtyForShipmentItem -->
+        <call-simple-method method-name="calcQtyForShipmentItemInline"/>
+        <log level="info" message="qtyForShipmentItem: ${qtyForShipmentItem}"/>
 
         <if-compare value="0" operator="greater-equals" field="qtyForShipmentItem" type="BigDecimal">
-            <!-- remove the orderShipment.quantity -->
             <if-not-empty field="orderShipment">
                 <field-to-result field="orderShipment.shipmentItemSeqId" result-name="shipmentItemSeqId"/>
                 <make-value entity-name="ShipmentItem" value-field="shipmentItemLookupPk"/>
                 <set-pk-fields value-field="shipmentItemLookupPk" map="parameters"/>
                 <set from-field="orderShipment.shipmentItemSeqId" field="shipmentItemLookupPk.shipmentItemSeqId"/>
                 <find-by-primary-key map="shipmentItemLookupPk" value-field="shipmentItem"/>
-                <remove-value value-field="orderShipment"/>
             </if-not-empty>
             <if-compare value="0" operator="not-equals" field="qtyForShipmentItem" type="BigDecimal">
                 <!-- add the qtyForShipmentItem to the shipmentItem -->
@@ -211,7 +206,7 @@ under the License.
                 <set from-field="originalQuantity" field="parameters.quantity"/>
             </if-compare>
         <else>
-            <!-- decrement the orderShipment.quantity -->
+            <!-- A reduction in the quantity, so OrderShipment must exist. -->
             <calculate field="orderShipment.quantity">
                 <calcop field="orderShipment.quantity" operator="subtract">
                     <calcop operator="get" field="parameters.quantity"/>
@@ -226,7 +221,6 @@ under the License.
         </else>
         </if-compare>
 
-        <!--<call-simple-method method-name="findCreateIssueShipmentItem"/>-->
         <set field="eventDate" from-field="parameters.eventDate"/>
         <set field="shipmentId" from-field="parameters.shipmentId"/>
         <call-simple-method method-name="findCreateItemIssuance"/>
@@ -251,6 +245,10 @@ under the License.
                     <set from-field="orderItem.orderItemSeqId" field="changeOrderItemStatusMap.orderItemSeqId"/>
                     <call-service service-name="changeOrderItemStatus" in-map-name="changeOrderItemStatusMap"/>
                 </if-empty>
+            <else>
+                <log level="info" message="orderId: ${orderItem.orderId} orderItemSeqId: ${orderItem.orderItemSeqId}"/>
+                <log level="info" message="Items issued but can't set order item status to ITEM_COMPLETED because shipment status is SHIPMENT_SCHEDULED" />
+            </else>
             </if-compare>
         <else>
             <store-value value-field="orderItemShipGrpInvRes"/>
@@ -274,6 +272,51 @@ under the License.
     </simple-method>
 
     <!-- some inline methods for the issuance process -->
+    
+    <simple-method method-name="calcQtyForShipmentItemInline" short-description="Calculate quantity for a shipment item - meant to be called in-line">
+
+        <!-- If our order has reserved a particular inventoryItemId, other InventoryItemIds
+            should not contribute to the adjustment calculation here
+        -->
+        <if-not-empty field="parameters.inventoryItemId">
+            <entity-and list="itemIssuances" entity-name="ItemIssuance">
+                <field-map field-name="orderId" from-field="parameters.orderId"/>
+                <field-map field-name="orderItemSeqId" from-field="parameters.orderItemSeqId"/>
+                <field-map field-name="shipGroupSeqId" from-field="parameters.shipGroupSeqId"/>
+                <field-map field-name="shipmentId" from-field="parameters.shipmentId"/>
+                <order-by field-name="-issuedDateTime"/>
+            </entity-and>
+
+            <set field="otherInventoryItemQuantity" value="0" />
+            <iterate list="itemIssuances" entry="itemIssuance">
+                <if-compare-field field="itemIssuance.inventoryItemId" operator="not-equals" to-field="parameters.inventoryItemId">
+                    <calculate field="otherInventoryItemQuantity">
+                       <calcop field="otherInventoryItemQuantity" operator="add">
+                           <calcop operator="get" field="itemIssuance.quantity"/>
+                       </calcop>
+                    </calculate>
+                </if-compare-field>
+            </iterate>
+        </if-not-empty>
+
+        <!-- If the shipmentItem includes products from more than one inventoryItemId, any items that came from a different inventoryItemId 
+            from the current one should be ignored as we calculate the adjustment to make.
+        -->
+        <calculate field="orderShipmentAmount">
+           <calcop field="orderShipment.quantity" operator="subtract">
+               <calcop operator="get" field="otherInventoryItemQuantity"/>
+           </calcop>
+        </calculate>
+        
+        <!-- qtyForShipmentItem is the quantity we will add to the ShipmentItem -->
+        <calculate field="qtyForShipmentItem">
+           <calcop field="parameters.quantity" operator="subtract">
+               <calcop operator="get" field="orderShipmentAmount"/>
+           </calcop>
+        </calculate>
+
+    </simple-method>
+    
     <simple-method method-name="findCreateIssueShipmentItem" short-description="Find or Create ShipmentItem to Issue To - meant to be called in-line">
         <!-- try to find an existing shipmentItem and attach to it, if none found create a new shipmentItem -->
         <!-- if there is NO productId on the orderItem, ALWAYS create a new shipmentItem -->
@@ -300,27 +343,52 @@ under the License.
             <find-by-primary-key entity-name="ShipmentItem" map="shipmentItemLookupPk" value-field="shipmentItem"/>
         <else>
             <calculate field="shipmentItem.quantity">
-                <calcop operator="get" field="shipmentItem.quantity"/>
-                <calcop operator="get" field="parameters.quantity"/>
+                <calcop operator="add" field="shipmentItem.quantity">
+                    <calcop operator="get" field="parameters.quantity"/>
+                </calcop>
             </calculate>
             <store-value value-field="shipmentItem"/>
         </else>
         </if-empty>
+
+        <call-simple-method method-name="createOrUpdateOrderShipmentInline" />
+        
+        <field-to-result field="shipmentItem.shipmentItemSeqId" result-name="shipmentItemSeqId"/>
+    </simple-method>
+
+    <simple-method method-name="createOrUpdateOrderShipmentInline" short-description="Create or update the OrderShipment - meant to be called in-line">
         <set from-field="parameters.shipmentId" field="orderShipmentCreate.shipmentId"/>
         <set from-field="shipmentItem.shipmentItemSeqId" field="orderShipmentCreate.shipmentItemSeqId"/>
         <set from-field="orderItem.orderId" field="orderShipmentCreate.orderId"/>
         <set from-field="orderItem.orderItemSeqId" field="orderShipmentCreate.orderItemSeqId"/>
+
         <if-not-empty field="orderItemShipGroupAssoc">
             <set from-field="orderItemShipGroupAssoc.shipGroupSeqId" field="orderShipmentCreate.shipGroupSeqId"/>
         </if-not-empty>
         <if-not-empty field="orderItemShipGrpInvRes">
             <set from-field="orderItemShipGrpInvRes.shipGroupSeqId" field="orderShipmentCreate.shipGroupSeqId"/>
         </if-not-empty>
-        <set from-field="parameters.quantity" field="orderShipmentCreate.quantity"/>
-        <call-service service-name="createOrderShipment" in-map-name="orderShipmentCreate"/>
+                
 
-        <field-to-result field="shipmentItem.shipmentItemSeqId" result-name="shipmentItemSeqId"/>
+        <make-value entity-name="OrderShipment" value-field="orderShipmentLookupPk"/>
+        <set-pk-fields value-field="orderShipmentLookupPk" map="orderShipmentCreate"/>
+        <find-by-and entity-name="OrderShipment" map="orderShipmentLookupPk" list="orderShipments"/>
+        <first-from-list entry="orderShipment" list="orderShipments"/>
+
+        <if-empty field="orderShipment">
+            <set from-field="parameters.quantity" field="orderShipmentCreate.quantity"/>
+            <call-service service-name="createOrderShipment" in-map-name="orderShipmentCreate"/>
+        <else>
+            <calculate field="orderShipment.quantity">
+                <calcop field="orderShipment.quantity" operator="add">
+                    <calcop operator="get" field="parameters.quantity"/>
+                </calcop>
+            </calculate>
+            <store-value value-field="orderShipment"/>
+        </else>
+        </if-empty>
     </simple-method>
+
     <simple-method method-name="findCreateItemIssuance" short-description="Find Create ItemIssuance - meant to be called in-line">
         <!-- If a non-sales order find ItemIssuance for orderItemSeqId-shimentItemSeqId-shipGroupSeqId pair, update it and return -->
         <if-compare field="orderHeader.orderTypeId" operator="not-equals" value="SALES_ORDER">

Modified: ofbiz/branches/jackrabbit20100709/applications/product/servicedef/secas_olap.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/servicedef/secas_olap.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/servicedef/secas_olap.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/servicedef/secas_olap.xml Thu Oct 20 17:33:36 2011
@@ -22,10 +22,10 @@ under the License.
         xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/service-eca.xsd">
 
     <!-- dimension entities -->
-    <eca service="createProduct" event="commit">
+    <eca service="createProduct" event="global-commit-post-run">
         <action service="loadType1ProductInProductDimension" mode="async"/>
     </eca>
-    <eca service="updateProduct" event="commit">
+    <eca service="updateProduct" event="global-commit-post-run">
         <action service="loadType2ProductInProductDimension" mode="async"/>
     </eca>
 </service-eca>

Propchange: ofbiz/branches/jackrabbit20100709/applications/product/src/org/ofbiz/shipment/test/
------------------------------------------------------------------------------
    bugtraq:number = true

Modified: ofbiz/branches/jackrabbit20100709/applications/product/testdef/FacilityTest.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/testdef/FacilityTest.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/testdef/FacilityTest.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/testdef/FacilityTest.xml Thu Oct 20 17:33:36 2011
@@ -35,4 +35,12 @@ under the License.
         <simple-method-test location="component://product/script/org/ofbiz/shipment/test/ShipmentTests.xml"/>
     </test-case>
 
+    <test-case case-name="loadIssuanceTestData">
+        <entity-xml action="load" entity-xml-url="component://product/testdef/data/IssuanceTestData.xml"/>
+    </test-case>
+
+    <test-case case-name="issuance-tests">
+        <junit-test-suite class-name="org.ofbiz.shipment.test.IssuanceTest"/>
+    </test-case>
+
 </test-suite>

Modified: ofbiz/branches/jackrabbit20100709/applications/product/webapp/catalog/WEB-INF/controller.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/webapp/catalog/WEB-INF/controller.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/webapp/catalog/WEB-INF/controller.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/webapp/catalog/WEB-INF/controller.xml Thu Oct 20 17:33:36 2011
@@ -826,7 +826,9 @@ under the License.
     <request-map uri="UpdateProductAssoc">
         <security https="true" auth="true"/>
         <event type="java" path="org.ofbiz.product.product.ProductEvents" invoke="updateProductAssoc"/>
-        <response name="success" type="view" value="EditProductAssoc"/>
+        <response name="success" type="request-redirect" value="EditProductAssoc">
+            <redirect-parameter name="productId"/>
+        </response>
         <response name="error" type="view" value="EditProductAssoc"/>
     </request-map>
 
@@ -1102,8 +1104,7 @@ under the License.
     <request-map uri="UpdateFeatureCategory">
         <security https="true" auth="true"/>
         <event type="service" path="" invoke="updateProductFeatureCategory"/>
-        <response name="success" type="view" value="EditFeatureCategories"/>
-        <response name="error" type="view" value="EditFeatureCategories"/>
+        <response name="success" type="request-redirect-noparam" value="EditFeatureCategories"/>
     </request-map>
 
     <request-map uri="EditFeatureCategoryFeatures">

Modified: ofbiz/branches/jackrabbit20100709/applications/product/webapp/facility/WEB-INF/actions/shipment/FindShipment.groovy
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/webapp/facility/WEB-INF/actions/shipment/FindShipment.groovy?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/webapp/facility/WEB-INF/actions/shipment/FindShipment.groovy (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/webapp/facility/WEB-INF/actions/shipment/FindShipment.groovy Thu Oct 20 17:33:36 2011
@@ -24,7 +24,11 @@ import org.ofbiz.entity.util.*
 import org.ofbiz.entity.condition.*
 import org.ofbiz.entity.transaction.*
 import org.ofbiz.base.util.*
-
+import org.ofbiz.entity.model.DynamicViewEntity;
+import org.ofbiz.entity.model.ModelKeyMap;
+import org.ofbiz.entity.model.ModelViewEntity.ComplexAlias;
+import org.ofbiz.entity.model.ModelViewEntity.ComplexAliasField;
+import org.ofbiz.entity.model.ModelViewEntity.ComplexAliasMember;
 
 lookupFlag = parameters.lookupFlag;
 shipmentTypeId = parameters.shipmentTypeId;
@@ -43,6 +47,10 @@ context.viewSize = viewSize;
 findShipmentExprs = [] as LinkedList;
 paramListBuffer = new StringBuffer();
 
+orderReturnValue = false;
+if (UtilValidate.isNotEmpty(statusId) && statusId.startsWith("RETURN_")) {
+    orderReturnValue = true;
+}
 if (parameters.shipmentId) {
     findShipmentExprs.add(EntityCondition.makeCondition("shipmentId", EntityOperator.EQUALS, parameters.shipmentId));
 }
@@ -71,7 +79,9 @@ if (destinationFacilityId) {
 if (statusId) {
     paramListBuffer.append("&statusId=");
     paramListBuffer.append(statusId);
-    findShipmentExprs.add(EntityCondition.makeCondition("statusId", EntityOperator.EQUALS, statusId));
+    if (!orderReturnValue) {
+        findShipmentExprs.add(EntityCondition.makeCondition("statusId", EntityOperator.EQUALS, statusId));
+    }
     currentStatus = delegator.findOne("StatusItem", [statusId : statusId], true);
     context.currentStatus = currentStatus;
 }
@@ -82,7 +92,12 @@ if (minDate && minDate.length() > 8) {
     }
     paramListBuffer.append("&minDate=");
     paramListBuffer.append(minDate);
-    findShipmentExprs.add(EntityCondition.makeCondition("estimatedShipDate", EntityOperator.GREATER_THAN_EQUAL_TO, ObjectType.simpleTypeConvert(minDate, "Timestamp", null, null)));
+    if (orderReturnValue) {
+        findShipmentExprs.add(EntityCondition.makeCondition("entryDate", EntityOperator.GREATER_THAN_EQUAL_TO, ObjectType.simpleTypeConvert(minDate, "Timestamp", null, null)));
+    } else {
+        findShipmentExprs.add(EntityCondition.makeCondition("estimatedShipDate", EntityOperator.GREATER_THAN_EQUAL_TO, ObjectType.simpleTypeConvert(minDate, "Timestamp", null, null)));
+    }
+    
 }
 if (maxDate && maxDate.length() > 8) {
     maxDate = maxDate.trim();
@@ -91,7 +106,12 @@ if (maxDate && maxDate.length() > 8) {
     }
     paramListBuffer.append("&maxDate=");
     paramListBuffer.append(maxDate);
-    findShipmentExprs.add(EntityCondition.makeCondition("estimatedShipDate", EntityOperator.LESS_THAN_EQUAL_TO, ObjectType.simpleTypeConvert(maxDate, "Timestamp", null, null)));
+    if (orderReturnValue) {
+        findShipmentExprs.add(EntityCondition.makeCondition("entryDate", EntityOperator.LESS_THAN_EQUAL_TO, ObjectType.simpleTypeConvert(maxDate, "Timestamp", null, null)));
+    } else {
+        findShipmentExprs.add(EntityCondition.makeCondition("estimatedShipDate", EntityOperator.LESS_THAN_EQUAL_TO, ObjectType.simpleTypeConvert(maxDate, "Timestamp", null, null)));
+    }
+    
 }
 
 if ("Y".equals(lookupFlag)) {
@@ -112,23 +132,61 @@ if ("Y".equals(lookupFlag)) {
         lowIndex = viewIndex * viewSize + 1;
         highIndex = (viewIndex + 1) * viewSize;
         findOpts.setMaxRows(highIndex);
-        // using list iterator
-        orli = delegator.find("Shipment", mainCond, null, null, orderBy, findOpts);
-
-        shipmentListSize = orli.getResultsSizeAfterPartialList();
-        if (highIndex > shipmentListSize) {
-            highIndex = shipmentListSize;
+        
+        if (!orderReturnValue) {
+            // using list iterator
+            orli = delegator.find("Shipment", mainCond, null, null, orderBy, findOpts);
+    
+            shipmentListSize = orli.getResultsSizeAfterPartialList();
+            if (highIndex > shipmentListSize) {
+                highIndex = shipmentListSize;
+            }
+    
+            // get the partial list for this page
+            if (shipmentListSize > 0) {
+                shipmentList = orli.getPartialList(lowIndex, viewSize);
+            } else {
+                shipmentList = [] as ArrayList;
+            }
+    
+            // close the list iterator
+            orli.close();
         }
-
-        // get the partial list for this page
-        if (shipmentListSize > 0) {
-            shipmentList = orli.getPartialList(lowIndex, viewSize);
-        } else {
-            shipmentList = [] as ArrayList;
+        
+        if (orderReturnValue) {
+            returnCond = null;
+            findShipmentExprs.add(EntityCondition.makeCondition("returnStatusId", EntityOperator.EQUALS, statusId));
+            returnCond = EntityCondition.makeCondition(findShipmentExprs, EntityOperator.AND);
+            OrderReturnViewEntity = new DynamicViewEntity();
+            OrderReturnViewEntity.addMemberEntity("SM", "Shipment");
+            OrderReturnViewEntity.addMemberEntity("RH", "ReturnHeader");
+            OrderReturnViewEntity.addViewLink("SM", "RH", false, ModelKeyMap.makeKeyMapList("primaryReturnId", "returnId"));
+            OrderReturnViewEntity.addAlias("SM", "shipmentId");
+            OrderReturnViewEntity.addAlias("SM", "shipmentTypeId");
+            OrderReturnViewEntity.addAlias("SM", "primaryReturnId");
+            OrderReturnViewEntity.addAlias("SM", "destinationFacilityId");
+            OrderReturnViewEntity.addAlias("SM", "originFacilityId");
+            OrderReturnViewEntity.addAlias("SM", "estimatedShipDate");
+            OrderReturnViewEntity.addAlias("SM", "statusId");
+            OrderReturnViewEntity.addAlias("RH", "returnId");
+            OrderReturnViewEntity.addAlias("RH", "entryDate");
+            OrderReturnViewEntity.addAlias("RH", "returnStatusId", "statusId", null, null, null, null);
+            
+            orderReturnIt = delegator.findListIteratorByCondition(OrderReturnViewEntity, returnCond, null, null, null, null);
+            shipmentListSize = orderReturnIt.getResultsSizeAfterPartialList();
+            
+            if (highIndex > shipmentListSize) {
+                highIndex = shipmentListSize;
+            }
+            
+            // get the partial list for this page
+            if (shipmentListSize > 0) {
+                shipmentList = orderReturnIt.getPartialList(lowIndex, viewSize);
+            } else {
+                shipmentList = [] as ArrayList;
+            }
+            orderReturnIt.close();
         }
-
-        // close the list iterator
-        orli.close();
     } catch (GenericEntityException e) {
         errMsg = "Failure in operation, rolling back transaction";
         Debug.logError(e, errMsg, module);
@@ -144,7 +202,7 @@ if ("Y".equals(lookupFlag)) {
         // only commit the transaction if we started one... this will throw an exception if it fails
         TransactionUtil.commit(beganTransaction);
     }
-
+    
     context.shipmentList = shipmentList;
     context.listSize = shipmentListSize;
     context.highIndex = highIndex;
@@ -161,6 +219,9 @@ context.facilities = delegator.findList(
 context.shipmentStatuses = delegator.findList("StatusItem", EntityCondition.makeCondition([statusTypeId : 'SHIPMENT_STATUS']), null, ['sequenceId'], null, false);
 context.purchaseShipmentStatuses = delegator.findList("StatusItem", EntityCondition.makeCondition([statusTypeId : 'PURCH_SHIP_STATUS']), null, ['sequenceId'], null, false);
 
+/// Get return status lists
+context.returnStatuses = delegator.findList("StatusItem", EntityCondition.makeCondition([statusTypeId : 'ORDER_RETURN_STTS']), null, ['sequenceId'], null, false);
+
 // create the fromDate for calendar
 fromCal = Calendar.getInstance();
 fromCal.setTimeInMillis(System.currentTimeMillis());
@@ -184,4 +245,4 @@ toCal.set(Calendar.SECOND, toCal.getActu
 toCal.set(Calendar.MILLISECOND, toCal.getActualMaximum(Calendar.MILLISECOND));
 toTs = new Timestamp(toCal.getTimeInMillis());
 toStr = toTs.toString();
-context.thruDateStr = toStr;
+context.thruDateStr = toStr;
\ No newline at end of file

Modified: ofbiz/branches/jackrabbit20100709/applications/product/webapp/facility/facility/PickMoveStock.ftl
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/webapp/facility/facility/PickMoveStock.ftl?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/webapp/facility/facility/PickMoveStock.ftl (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/webapp/facility/facility/PickMoveStock.ftl Thu Oct 20 17:33:36 2011
@@ -16,13 +16,16 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-
 <script language="JavaScript" type="text/javascript">
     function quicklookup(func, locationelement, facilityelement, productelement) {
         
         var productId = productelement.value;
+        if (productId.length == 0) {
+          alert("${StringUtil.wrapString(uiLabelMap.ProductFieldEmpty)}");
+          return;
+        }
         var facilityId = facilityelement.value;
-        var request = "LookupProductInventoryLocation?productId=" + productId + "&amp;facilityId=" + facilityId;
+        var request = "LookupProductInventoryLocation?productId=" + productId + "&facilityId=" + facilityId;
         window[func](locationelement, request);
     }
 </script>

Modified: ofbiz/branches/jackrabbit20100709/applications/product/webapp/facility/shipment/FindShipment.ftl
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/webapp/facility/shipment/FindShipment.ftl?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/webapp/facility/shipment/FindShipment.ftl (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/webapp/facility/shipment/FindShipment.ftl Thu Oct 20 17:33:36 2011
@@ -116,6 +116,13 @@ function lookupShipments() {
                     <#list purchaseShipmentStatuses as shipmentStatus>
                       <option value="${shipmentStatus.statusId}">${shipmentStatus.get("description",locale)}</option>
                     </#list>
+                    <option value="">---</option>
+                    <option value="">${uiLabelMap.ProductOrderReturnStatus}</option>
+                    <#list returnStatuses as returnStatus>
+                      <#if returnStatus.statusId != "RETURN_REQUESTED">
+                        <option value="${returnStatus.statusId}">${returnStatus.get("description",locale)}</option>
+                      </#if>
+                    </#list>
                   </select>
                 </td>
               </tr>
@@ -178,10 +185,10 @@ function lookupShipments() {
         <#if shipmentList?has_content>
           <#assign alt_row = false>
           <#list shipmentList as shipment>
-            <#assign originFacility = shipment.getRelatedOneCache("OriginFacility")?if_exists>
-            <#assign destinationFacility = shipment.getRelatedOneCache("DestinationFacility")?if_exists>
-            <#assign statusItem = shipment.getRelatedOneCache("StatusItem")?if_exists>
-            <#assign shipmentType = shipment.getRelatedOneCache("ShipmentType")?if_exists>
+            <#assign originFacility = delegator.findByPrimaryKeyCache("Facility", Static["org.ofbiz.base.util.UtilMisc"].toMap("facilityId", shipment.originFacilityId))?if_exists />
+            <#assign destinationFacility = delegator.findByPrimaryKeyCache("Facility", Static["org.ofbiz.base.util.UtilMisc"].toMap("facilityId", shipment.destinationFacilityId))?if_exists />
+            <#assign statusItem = delegator.findByPrimaryKeyCache("StatusItem", Static["org.ofbiz.base.util.UtilMisc"].toMap("statusId", shipment.statusId))?if_exists/>
+            <#assign shipmentType = delegator.findByPrimaryKeyCache("ShipmentType", Static["org.ofbiz.base.util.UtilMisc"].toMap("shipmentTypeId", shipment.shipmentTypeId))?if_exists/>
             <tr valign="middle"<#if alt_row> class="alternate-row"</#if>>
               <td><a href="<@o...@ofbizUrl>" class="buttontext">${shipment.shipmentId}</a></td>
               <td>${(shipmentType.get("description",locale))?default(shipmentType.shipmentTypeId?default(""))}</td>

Modified: ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/FeatureForms.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/FeatureForms.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/FeatureForms.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/FeatureForms.xml Thu Oct 20 17:33:36 2011
@@ -292,12 +292,12 @@
 
     <form name="FindProductFeature" type="single" target="EditFeatureCategories"
         header-row-style="header-row" default-table-style="basic-table">
-        <field name="productFeatureCategoryId" title="${uiLabelMap.CommonId}"><text-find size="25"></text-find></field>
+        <field name="productFeatureCategoryId" title="${uiLabelMap.CommonId}"><text-find size="20" maxlength="255"></text-find></field>
         <field name="description" title="${uiLabelMap.CommonDescription}"><text-find size="25"></text-find></field>
         <field name="searchButton" title="${uiLabelMap.CommonFind}" widget-style="smallSubmit find"><submit/></field>
     </form>
 
-    <form name="ListProductFeature" type="list" list-name="listIt" paginate-target="EditFeatureCategories"
+    <form name="ListProductFeature" type="list" list-name="listIt" paginate-target="EditFeatureCategories" target="UpdateFeatureCategory"
         odd-row-style="alternate-row" default-table-style="basic-table hover-bar" separate-columns="true">
         <actions>
             <set field="parameters.noConditionFind" value="Y"/>
@@ -314,8 +314,8 @@
                 <parameter param-name="productFeatureCategoryId"/>
             </hyperlink>
         </field>
-        <field name="description" title="${uiLabelMap.CommonDescription}"><display/></field>
-
+        <field name="description" title="${uiLabelMap.CommonDescription}"><text/></field>
+		<field name="update" title="${uiLabelMap.CommonUpdate}"><submit/></field>
     </form>
 
     <form name="CreateProductFeature" type="single" target="CreateFeatureCategory">

Modified: ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/FeatureScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/FeatureScreens.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/FeatureScreens.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/FeatureScreens.xml Thu Oct 20 17:33:36 2011
@@ -215,8 +215,8 @@
                 <set field="titleProperty" value="PageTitleEditProductFeatureCategories"/>
                 <set field="headerItem" value="featurecats"/>
                 <set field="tabButtonItem" value="FeatureCategory"/>
-                <set field="viewIndex" from-field="parameters.VIEW_INDEX" type="Integer" default-value="0"/>
-                <set field="viewSize" from-field="parameters.VIEW_SIZE" type="Integer" default-value="10"/>
+                <set field="viewIndex" from-field="parameters.VIEW_INDEX_1" type="Integer" default-value="0"/>
+                <set field="viewSize" from-field="parameters.VIEW_SIZE_1" type="Integer" default-value="10"/>
 
                 <!--script location="component://product/webapp/catalog/WEB-INF/actions/feature/EditFeatureCategories.groovy"/-->
             </actions>

Modified: ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/LookupScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/LookupScreens.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/LookupScreens.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/LookupScreens.xml Thu Oct 20 17:33:36 2011
@@ -30,7 +30,7 @@ under the License.
                 <set field="title" value="${uiLabelMap.PageTitleLookupProduct}"/>
                 <set field="queryString" from-field="result.queryString"/>
                 <set field="entityName" value="Product"/>
-                <set field="searchFields" value="[productId, brandName, internalName]"/>
+                <set field="searchFields" value="[productId, internalName, brandName]"/>
             </actions>
             <widgets>
                 <decorator-screen name="LookupDecorator" location="component://common/widget/CommonScreens.xml">

Modified: ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/StoreScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/StoreScreens.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/StoreScreens.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/widget/catalog/StoreScreens.xml Thu Oct 20 17:33:36 2011
@@ -577,9 +577,11 @@ under the License.
                 <screenlet title="${uiLabelMap.ProductStoreFacilityAssocList}" navigation-menu-name="ProductStoreFacility">
                     <include-menu name="ProductStoreFacility" location="component://product/widget/catalog/CatalogMenus.xml"/>
                     <container id="PrdStoreFacilityMgmtArea">
-                        <decorator-section name="body">
-                            <include-screen name="ListProductStoreFacilityFormOnly"/>
-                        </decorator-section>
+                        <decorator-screen name="CommonProductStoreDecorator" location="${parameters.mainDecoratorLocation}">
+                            <decorator-section name="body">
+                                <include-screen name="ListProductStoreFacilityFormOnly"/>
+                            </decorator-section>
+                        </decorator-screen>
                     </container>
                 </screenlet>
             </widgets>

Modified: ofbiz/branches/jackrabbit20100709/applications/product/widget/facility/CommonScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/widget/facility/CommonScreens.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/widget/facility/CommonScreens.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/widget/facility/CommonScreens.xml Thu Oct 20 17:33:36 2011
@@ -25,6 +25,7 @@ under the License.
             <actions>
                 <!-- base/top/specific map first, then more common map added for shared labels -->
                 <property-map resource="ProductUiLabels" map-name="uiLabelMap" global="true"/>
+                <property-map resource="ProductErrorUiLabels" map-name="uiLabelMap" global="true"/>
                 <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/>
                 <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/>
                 <property-map resource="AccountingUiLabels" map-name="uiLabelMap" global="true"/>

Modified: ofbiz/branches/jackrabbit20100709/applications/product/widget/facility/FacilityScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/product/widget/facility/FacilityScreens.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/product/widget/facility/FacilityScreens.xml (original)
+++ ofbiz/branches/jackrabbit20100709/applications/product/widget/facility/FacilityScreens.xml Thu Oct 20 17:33:36 2011
@@ -1281,6 +1281,7 @@ under the License.
         <section>
             <actions>
                 <property-map resource="ProductUiLabels" map-name="uiLabelMap" global="true"/>
+                <property-map resource="ProductErrorUiLabels" map-name="uiLabelMap" global="true"/>
                 <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/>
 
                 <set field="layoutSettings.companyName" from-field="uiLabelMap.FacilityCompanyName" global="true"/>

Modified: ofbiz/branches/jackrabbit20100709/applications/workeffort/src/org/ofbiz/workeffort/workeffort/ICalWorker.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/applications/workeffort/src/org/ofbiz/workeffort/workeffort/ICalWorker.java?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/applications/workeffort/src/org/ofbiz/workeffort/workeffort/ICalWorker.java (original)
+++ ofbiz/branches/jackrabbit20100709/applications/workeffort/src/org/ofbiz/workeffort/workeffort/ICalWorker.java Thu Oct 20 17:33:36 2011
@@ -191,12 +191,12 @@ public class ICalWorker {
                 List<Element> unSupportedProps = FastList.newInstance();
                 List<Element> propElements = helper.getFindPropsList(ResponseHelper.DAV_NAMESPACE_URI);
                 for (Element propElement : propElements) {
-                    if ("getetag".equals(propElement.getLocalName())) {
+                    if ("getetag".equals(propElement.getNodeName())) {
                         Element etagElement = helper.createElementSetValue("D:getetag", String.valueOf(System.currentTimeMillis()));
                         supportedProps.add(etagElement);
                         continue;
                     }
-                    if ("getlastmodified".equals(propElement.getLocalName())) {
+                    if ("getlastmodified".equals(propElement.getNodeName())) {
                         Date lastModified = getLastModifiedDate(request);
                         Element lmElement = helper.createElementSetValue("D:getlastmodified", WebDavUtil.formatDate(WebDavUtil.RFC1123_DATE_FORMAT, lastModified));
                         supportedProps.add(lmElement);

Modified: ofbiz/branches/jackrabbit20100709/framework/base/src/org/ofbiz/base/util/UtilXml.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/framework/base/src/org/ofbiz/base/util/UtilXml.java?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/framework/base/src/org/ofbiz/base/util/UtilXml.java (original)
+++ ofbiz/branches/jackrabbit20100709/framework/base/src/org/ofbiz/base/util/UtilXml.java Thu Oct 20 17:33:36 2011
@@ -757,7 +757,7 @@ public class UtilXml {
 
         if (node != null) {
             do {
-                if (node.getNodeType() == Node.ELEMENT_NODE && childElementNames.contains(node.getLocalName())) {
+                if (node.getNodeType() == Node.ELEMENT_NODE && childElementNames.contains(node.getNodeName())) {
                     Element childElement = (Element) node;
 
                     return childElement;
@@ -803,7 +803,7 @@ public class UtilXml {
         if (node != null) {
             do {
                 if (node.getNodeType() == Node.ELEMENT_NODE && (childElementName == null ||
-                        childElementName.equals(node.getLocalName()))) {
+                        childElementName.equals(node.getNodeName()))) {
                     Element childElement = (Element) node;
                     return childElement;
                 }

Modified: ofbiz/branches/jackrabbit20100709/framework/bi/config/BiUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/framework/bi/config/BiUiLabels.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/framework/bi/config/BiUiLabels.xml (original)
+++ ofbiz/branches/jackrabbit20100709/framework/bi/config/BiUiLabels.xml Thu Oct 20 17:33:36 2011
@@ -209,7 +209,7 @@
     </property>
     <property key="BusinessIntelligenceNote26">
         <value xml:lang="en">Just select using the checkboxes the fields (columns) you want to see in the report</value>
-        <value xml:lang="fr">Sélectionner simplement en utilisant les case à cocher des champs (colonnes) que vous voulez voir dans le rapport</value>
+        <value xml:lang="fr">Sélectionnez simplement en utilisant les case à cocher des champs (colonnes) que vous voulez voir dans le rapport</value>
         <value xml:lang="it">Seleziona i campi che vuoi vedere</value>
         <value xml:lang="th">จะต้องเลือกใช้เช็คบ็อก (คอลัมภ์) ตามที่คุณต้องการให้มีในรายงาน</value>
         <value xml:lang="zh">使用选择框选择你想在报告中看到的那些数据项(列),</value>
@@ -342,21 +342,21 @@
     </property>
     <property key="BusinessIntelligenceReportBuilderSelectStarSchema">
         <value xml:lang="en">Select Star Schema</value>
-        <value xml:lang="fr">Sélectionner le schéma en étoile</value>
+        <value xml:lang="fr">Sélectionnez le schéma en étoile</value>
         <value xml:lang="it">Seleziona Star Schema</value>
         <value xml:lang="th">เลือกแผนผัง</value>
         <value xml:lang="zh">选择星型模型</value>
     </property>
     <property key="BusinessIntelligenceReportBuilderSelectStarSchemaFields">
         <value xml:lang="en">Select Star Schema Fields</value>
-        <value xml:lang="fr">Sélectionner les champs du schéma en étoile</value>
+        <value xml:lang="fr">Sélectionnez les champs du schéma en étoile</value>
         <value xml:lang="it">Seleziona Campi Star Schema</value>
         <value xml:lang="th">เลือกช่องแผนผัง</value>
         <value xml:lang="zh">选择星型模型数据项</value>
     </property>
     <property key="BusinessIntelligenceReportBuilderSelectTheStarSchemaReport">
         <value xml:lang="en">Select the start schema (report)</value>
-        <value xml:lang="fr">Sélectionner le schéma en étoile (rapport)</value>
+        <value xml:lang="fr">Sélectionnez le schéma en étoile (rapport)</value>
         <value xml:lang="it">Seleziona lo start schema (report)</value>
         <value xml:lang="th">เลือกแผนผัง (รายงาน)</value>
         <value xml:lang="zh">选择星型模型(报告)</value>

Modified: ofbiz/branches/jackrabbit20100709/framework/common/config/CommonUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/framework/common/config/CommonUiLabels.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/framework/common/config/CommonUiLabels.xml (original)
+++ ofbiz/branches/jackrabbit20100709/framework/common/config/CommonUiLabels.xml Thu Oct 20 17:33:36 2011
@@ -8,7 +8,6 @@
     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,
@@ -2941,6 +2940,14 @@
         <value xml:lang="pt_BR">Índice</value>
         <value xml:lang="zh_TW">索引</value>
     </property>
+    <property key="CommonExternalDevice">
+        <value xml:lang="en">External Device</value>
+        <value xml:lang="fr">Mat. externe</value>
+    </property>
+    <property key="CommonExternalDeviceUserAction">
+        <value xml:lang="en">External Device User Action</value>
+        <value xml:lang="fr">Assoc Action/Utilisateur avec Mat. externe</value>
+    </property>
     <property key="CommonFalse">
         <value xml:lang="ar">خطأ</value>
         <value xml:lang="de">Falsch</value>
@@ -5974,6 +5981,10 @@
         <value xml:lang="zh_CN">订单</value>
         <value xml:lang="zh_TW">訂單</value>
     </property>
+    <property key="CommonOrganizationLogo">
+        <value xml:lang="en">Organization Logo</value>
+        <value xml:lang="th">โลโก้องค์กร</value>
+    </property>
     <property key="CommonOther">
         <value xml:lang="ar">أخرى</value>
         <value xml:lang="de">Andere</value>
@@ -7534,7 +7545,7 @@
     </property>
     <property key="CommonSelectPortalPage">
         <value xml:lang="en">Select Portal Page...</value>
-        <value xml:lang="fr">Sélectionner la page du portail...</value>
+        <value xml:lang="fr">Sélectionnez la page du portail...</value>
         <value xml:lang="hi_IN">पोर्टल पेज चुनें</value>
         <value xml:lang="it">Seleziona pagina...</value>
         <value xml:lang="pt_BR">Selecione Página do Portal ...</value>
@@ -8234,6 +8245,10 @@
         <value xml:lang="zh_CN">小计</value>
         <value xml:lang="zh_TW">小計</value>
     </property>
+    <property key="CommonSuccessfullyCreated">
+        <value xml:lang="en">Successfully created.</value>
+        <value xml:lang="fr">Créé avec succès.</value>
+    </property>    
     <property key="CommonSummary">
         <value xml:lang="de">Zusammenfassung</value>
         <value xml:lang="en">Summary</value>
@@ -9987,8 +10002,13 @@
     </property>
     <property key="FormFieldTitle_acceptButton">
         <value xml:lang="en">Accept</value>
+        <value xml:lang="fr">Accepter</value>
         <value xml:lang="pt_BR">Aceitar</value>
     </property>
+    <property key="FormFieldTitle_actionEnumId">
+        <value xml:lang="en">Action</value>
+        <value xml:lang="fr">Action</value>
+    </property>
     <property key="FormFieldTitle_addButton">
         <value xml:lang="ar">إضافة</value>
         <value xml:lang="de">Hinzufügen</value>
@@ -10058,6 +10078,10 @@
         <value xml:lang="zh">属性值</value>
         <value xml:lang="zh_TW">屬性值</value>
     </property>
+    <property key="FormFieldTitle_cmdToCall">
+        <value xml:lang="en">Cmd To Call</value>
+        <value xml:lang="fr">Cmd d'appel</value>
+    </property>
     <property key="FormFieldTitle_comments">
         <value xml:lang="ar">تعاليق</value>
         <value xml:lang="de">Anmerkungen</value>
@@ -10262,6 +10286,10 @@
         <value xml:lang="zh">描述</value>
         <value xml:lang="zh_TW">描述</value>
     </property>
+    <property key="FormFieldTitle_deviceLocation">
+        <value xml:lang="en">Device Location</value>
+        <value xml:lang="fr">Emplacement</value>
+    </property>
     <property key="FormFieldTitle_effectiveDate">
         <value xml:lang="ar">تاريخ الفاعلية</value>
         <value xml:lang="de">Effektives Datum</value>
@@ -10284,6 +10312,22 @@
         <value xml:lang="zh">有效日期</value>
         <value xml:lang="zh_TW">有效日</value>
     </property>
+    <property key="FormFieldTitle_externalDeviceId">
+        <value xml:lang="en">External Device Id</value>
+        <value xml:lang="fr">Réf. Mat. Externe</value>
+    </property>
+    <property key="FormFieldTitle_externalDeviceTypeId">
+        <value xml:lang="en">External Device Type Id</value>
+        <value xml:lang="fr">Type de Mat. Externe</value>
+    </property>
+    <property key="FormFieldTitle_extDevicePurposeActionId">
+        <value xml:lang="en">External Device Purpose Action Id</value>
+        <value xml:lang="fr">Obj. de l'action</value>
+    </property>
+    <property key="FormFieldTitle_deviceLocation">
+        <value xml:lang="en">Device Location</value>
+        <value xml:lang="fr">Emplacement</value>
+    </property>
     <property key="FormFieldTitle_fromDate">
         <value xml:lang="ar">تاريخ البدء</value>
         <value xml:lang="de">Von Datum</value>

Modified: ofbiz/branches/jackrabbit20100709/framework/common/servicedef/services.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/framework/common/servicedef/services.xml?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/framework/common/servicedef/services.xml (original)
+++ ofbiz/branches/jackrabbit20100709/framework/common/servicedef/services.xml Thu Oct 20 17:33:36 2011
@@ -783,6 +783,7 @@ under the License.
 
     <service name="createJsLanguageFileMapping" engine="java" auth="false" use-transaction="false"
         location="org.ofbiz.common.JsLanguageFileMappingCreator" invoke="createJsLanguageFileMapping">
+        <description>Create or update the JsLanguageFilesMapping.java. You still need to compile thereafter</description>
         <attribute name="encoding" mode="IN" type="String" optional="true" default-value="UTF-8"></attribute>
     </service>
 

Modified: ofbiz/branches/jackrabbit20100709/framework/common/src/org/ofbiz/common/JsLanguageFileMappingCreator.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/jackrabbit20100709/framework/common/src/org/ofbiz/common/JsLanguageFileMappingCreator.java?rev=1186950&r1=1186949&r2=1186950&view=diff
==============================================================================
--- ofbiz/branches/jackrabbit20100709/framework/common/src/org/ofbiz/common/JsLanguageFileMappingCreator.java (original)
+++ ofbiz/branches/jackrabbit20100709/framework/common/src/org/ofbiz/common/JsLanguageFileMappingCreator.java Thu Oct 20 17:33:36 2011
@@ -18,6 +18,8 @@ import org.ofbiz.base.util.template.Free
 import org.ofbiz.service.DispatchContext;
 import org.ofbiz.service.ServiceUtil;
 
+// Use the createJsLanguageFileMapping service to create or update the JsLanguageFilesMapping.java. You will still need to compile thereafter
+
 public class JsLanguageFileMappingCreator {
 
     private static final String module = JsLanguageFileMappingCreator.class.getName();
@@ -30,25 +32,30 @@ public class JsLanguageFileMappingCreato
         Map<String, Object> jQueryLocaleFile = FastMap.newInstance();
         Map<String, String> dateJsLocaleFile = FastMap.newInstance();
         Map<String, String> validationLocaleFile = FastMap.newInstance();
+        Map<String, String> dateTimePickerLocaleFile = FastMap.newInstance();
 
         // setup some variables to locate the js files
         String componentRoot = "component://images/webapp";
         String jqueryUiLocaleRelPath = "/images/jquery/ui/development-bundle/ui/i18n/";
         String dateJsLocaleRelPath = "/images/jquery/plugins/datejs/";
         String validateRelPath = "/images/jquery/plugins/validate/localization/";
+        String dateTimePickerJsLocaleRelPath = "/images/jquery/plugins/datetimepicker/localization/";
         String jsFilePostFix = ".js";
         String dateJsLocalePrefix = "date-";
         String validateLocalePrefix = "messages_";
         //String validateMethLocalePrefix = "methods__";
         String jqueryUiLocalePrefix = "jquery.ui.datepicker-";
+        String dateTimePickerPrefix = "jquery-ui-timepicker-";
         String defaultLocaleDateJs = "en-US";
         String defaultLocaleJquery = "en";
 
         for (Locale locale : localeList) {
             String displayCountry = locale.toString();
             String modifiedDisplayCountry = null;
+            String modifiedDisplayCountryForValidation = null;
             if (displayCountry.indexOf('_') != -1) {
                 modifiedDisplayCountry = displayCountry.replace("_", "-");
+                modifiedDisplayCountryForValidation = displayCountry.replace("_", "").toLowerCase(); // fun: in validate plugin we have also ptpt and ptbr for instance...
             } else {
                 modifiedDisplayCountry = displayCountry;
             }
@@ -66,27 +73,20 @@ public class JsLanguageFileMappingCreato
 
             if (file.exists()) {
                 fileUrl = dateJsLocaleRelPath + dateJsLocalePrefix + modifiedDisplayCountry + jsFilePostFix;
-            }
-
-            if (fileUrl == null) {
+            } else {
                 // Try to guess a language
                 String tmpLocale = strippedLocale + "-" + strippedLocale.toUpperCase();
                 fileName = componentRoot + dateJsLocaleRelPath + dateJsLocalePrefix + tmpLocale + jsFilePostFix;
                 file = FileUtil.getFile(fileName);
                 if (file.exists()) {
                     fileUrl = dateJsLocaleRelPath + dateJsLocalePrefix + tmpLocale + jsFilePostFix;
+                } else {
+                    // use default language en-US
+                    fileUrl = dateJsLocaleRelPath + dateJsLocalePrefix + defaultLocaleDateJs + jsFilePostFix;                    
                 }
             }
-
-            if (fileUrl == null) {
-                // use default language en-US
-                fileUrl = dateJsLocaleRelPath + dateJsLocalePrefix + defaultLocaleDateJs + jsFilePostFix;
-            }
-
             dateJsLocaleFile.put(displayCountry, fileUrl);
 
-            fileUrl = null;
-
             /*
              * Try to open the jquery validation language file
              */
@@ -95,40 +95,60 @@ public class JsLanguageFileMappingCreato
 
             if (file.exists()) {
                 fileUrl = validateRelPath + validateLocalePrefix + strippedLocale + jsFilePostFix;
-            }
-
-            if (fileUrl == null) {
-                fileUrl = validateRelPath + validateLocalePrefix + defaultLocaleJquery + jsFilePostFix;
+            } else {
+                // Try to guess a language (fun: in validate plugin we have also ptpt and ptbr for instance....)
+                fileName = componentRoot + validateRelPath + validateLocalePrefix + modifiedDisplayCountryForValidation + jsFilePostFix;
+                file = FileUtil.getFile(fileName);
+                if (file.exists()) {
+                    fileUrl = validateRelPath + validateLocalePrefix + modifiedDisplayCountryForValidation + jsFilePostFix;
+                } else {
+                    // use default language en
+                    fileUrl = validateRelPath + validateLocalePrefix + defaultLocaleJquery + jsFilePostFix;
+                }
             }
             validationLocaleFile.put(displayCountry, fileUrl);
 
-            fileUrl = null;
-
             /*
              * Try to open the jquery timepicker language file
              */
-            file = null;
-            fileUrl = null;
-
             fileName = componentRoot + jqueryUiLocaleRelPath + jqueryUiLocalePrefix + strippedLocale + jsFilePostFix;
             file = FileUtil.getFile(fileName);
 
             if (file.exists()) {
                 fileUrl = jqueryUiLocaleRelPath + jqueryUiLocalePrefix + strippedLocale + jsFilePostFix;
             } else {
+                // Try to guess a language
                 fileName = componentRoot + jqueryUiLocaleRelPath + jqueryUiLocalePrefix + modifiedDisplayCountry + jsFilePostFix;
                 file = FileUtil.getFile(fileName);
-
                 if (file.exists()) {
                     fileUrl = jqueryUiLocaleRelPath + jqueryUiLocalePrefix + modifiedDisplayCountry + jsFilePostFix;
+                } else {
+                    // use default language en
+                    fileUrl = jqueryUiLocaleRelPath + jqueryUiLocalePrefix + defaultLocaleJquery + jsFilePostFix;
                 }
             }
+            jQueryLocaleFile.put(displayCountry, fileUrl);
 
-            if (fileUrl == null) {
-                fileUrl = jqueryUiLocaleRelPath + jqueryUiLocalePrefix + defaultLocaleJquery + jsFilePostFix;
-            }
+            /*
+             * Try to open the datetimepicker language file
+             */
+            fileName = componentRoot + dateTimePickerJsLocaleRelPath + dateTimePickerPrefix + strippedLocale + jsFilePostFix;
+            file = FileUtil.getFile(fileName);
 
-            jQueryLocaleFile.put(displayCountry, fileUrl);
+            if (file.exists()) {
+                fileUrl = dateTimePickerJsLocaleRelPath + dateTimePickerPrefix + strippedLocale + jsFilePostFix;
+            } else {
+                // Try to guess a language
+                fileName = componentRoot + dateTimePickerJsLocaleRelPath + dateTimePickerPrefix + modifiedDisplayCountry + jsFilePostFix;
+                file = FileUtil.getFile(fileName);
+                if (file.exists()) {
+                    fileUrl = dateTimePickerJsLocaleRelPath + dateTimePickerPrefix + modifiedDisplayCountry + jsFilePostFix;
+                } else {
+                    // use default language en
+                    fileUrl = dateTimePickerJsLocaleRelPath + dateTimePickerPrefix + defaultLocaleJquery + jsFilePostFix;                    
+                }
+            }
+            dateTimePickerLocaleFile.put(displayCountry, fileUrl);
         }
 
         // check the template file
@@ -138,6 +158,7 @@ public class JsLanguageFileMappingCreato
         mapWrapper.put("datejs", dateJsLocaleFile);
         mapWrapper.put("jquery", jQueryLocaleFile);
         mapWrapper.put("validation", validationLocaleFile);
+        mapWrapper.put("dateTime", dateTimePickerLocaleFile);
 
         // some magic to create a new java file
         // render it as FTL