svn commit: r1125951 [7/9] - in /ofbiz/trunk: applications/order/config/ applications/order/src/org/ofbiz/order/shoppingcart/ applications/order/webapp/ordermgr/WEB-INF/actions/order/ applications/order/widget/ordermgr/ framework/base/src/org/ofbiz/bas...

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r1125951 [7/9] - in /ofbiz/trunk: applications/order/config/ applications/order/src/org/ofbiz/order/shoppingcart/ applications/order/webapp/ordermgr/WEB-INF/actions/order/ applications/order/widget/ordermgr/ framework/base/src/org/ofbiz/bas...

mrisaliti
Added: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchParties.js
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchParties.js?rev=1125951&view=auto
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchParties.js (added)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchParties.js Sun May 22 13:11:17 2011
@@ -0,0 +1,229 @@
+/*
+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.
+*/
+function partyKeyEvents() {
+    jQuery('#partyToSearch').bind('keypress', function(event) {
+        code = event.keyCode ? event.keyCode : event.which;
+        if (code.toString() == 13) {
+            partySearch();
+            return false;
+        }
+    });
+    
+    jQuery('#billingAddressSelected').bind('click', function(event) {
+        jQuery('#billingAddress').show();
+        jQuery('#shippingAddress').hide();
+        jQuery('#billingLocation').val("Y");
+        jQuery('#shippingLocation').val("N");
+        customerAddressSelected();
+        return false;
+    });
+    
+    jQuery('#shippingAddressSelected').bind('click', function(event) {
+        jQuery('#billingAddress').hide();
+        jQuery('#shippingAddress').show();
+        jQuery('#billingLocation').val("N");
+        jQuery('#shippingLocation').val("Y");
+        customerAddressSelected();
+        return false;
+    });
+    
+    jQuery('#searchPartyBy').bind('change', function(event) {
+        partyToSearchFocus();
+    });
+    
+    jQuery('#partySearchConfirm').bind('click', function(event) {
+        partySearch();
+        return false;
+    });    
+}
+
+function customerAddressSelected() {
+    if (jQuery('#billingLocation').val() == 'Y') {
+        jQuery("#billingAddressSelected").addClass("selectedAddress");
+        jQuery("#shippingAddressSelected").removeClass("selectedAddress");
+        jQuery('#shipMethodPanel').hide();
+        jQuery('#billingPanel').show();
+    } else {            
+        jQuery("#billingAddressSelected").removeClass("selectedAddress");
+        jQuery("#shippingAddressSelected").addClass("selectedAddress");
+        if (jQuery('#shipToSelected').val() != undefined && jQuery('#shipToSelected').val() == 'Y') {
+            getShipMethods();
+        }
+    }
+}
+
+function getShipMethods() {
+    var result = false;
+    if (jQuery('#shipMethod').val() == "" || jQuery('#shipMethod').val() == null) {
+        jQuery.ajax({url: 'GetShipMethods',
+            type: 'post',
+            success: function(data) {
+                getResultOfGetShipMethods(data);
+            },
+            error: function(data) {
+                getResultOfGetShipMethods(data);
+            }
+        });
+    }
+    jQuery('#billingPanel').hide();
+    jQuery('#shipMethodPanel').show();
+    jQuery('#shipMethod').bind('change', function(event) {
+        setShipMethod();
+    });
+    return result;
+}
+
+function getResultOfGetShipMethods(data) {
+    var result = false;
+    var shipOptions = null;
+    var optionList = "";
+    var serverError = getServerError(data);
+    if (serverError != "") {
+        jQuery('#shipMethodFormServerError').fadeIn('slow', function() {
+            jQuery('#shipMethodFormServerError').html(serverError);
+        });
+    } else {
+        jQuery('#shipMethodFormServerError').fadeOut('slow');
+        shipOptions = data.shippingOptions;
+        optionList = optionList + "<select id='shipMethod' name='shipMethod'>";
+        jQuery(shipOptions).each(function(idx, shipOption) {
+            if (shipOption.productStoreShipMethId){
+                optionList = optionList + "<option value = '" + shipOption.shippingMethod + ":" + shipOption.productStoreShipMethId + "'> " + shipOption.shippingDesc  + " </option>";
+            } else {
+                optionList = optionList + "<option value = '" + shipOption.shippingMethod + "'> " + shipOption.shippingDesc  + " </option>";
+            }
+        });
+        optionList = optionList + "</select>";
+        jQuery('#shipMethodSelection').html(optionList);
+        result = true;
+    }
+    return result;
+}
+
+function setShipMethod() {
+    pleaseWait('Y');
+    var result = false;
+    var shipTotal = null;
+    var shipMethod = null;
+    var param = 'shipMethod=' + jQuery('#shipMethod').val();
+    jQuery('#shipMethodFormServerError').fadeOut('slow');
+    jQuery.ajax({url: 'SetShipMethod',
+        data: param,
+        type: 'post',
+        async: false,
+        success: function(data) {
+            result = getResultOfSetShippingMethod(data);
+        },
+        error: function(data) {
+            result = getResultOfSetShippingMethod(data);
+        }
+    });
+    updateCart();
+    pleaseWait('N');
+    return result;
+}
+
+function getResultOfSetShippingMethod(data) {
+    var result = false;
+    shipTotal = data.shippingTotal;
+    var serverError = getServerError(data);
+    if (serverError != "") {
+        jQuery('#shippingOptionFormServerError').fadeIn('slow', function() {
+            jQuery('#shippingOptionFormServerError').html(serverError);
+        });
+        isShipOptionStepValidate = false;
+    } else {
+        isShipOptionStepValidate = true;
+        jQuery('#selectedShipmentOption').html(data.shippingDescription);
+        result = true;
+    }
+    return result;
+}
+
+function setParty(partyId, contactMechId, contactMechPurposeTypeId) {
+    pleaseWait('Y');
+    var param = 'partyId=' + partyId + '&contactMechId=' + contactMechId + '&contactMechPurposeTypeId=' + contactMechPurposeTypeId;
+    jQuery.ajax({url: 'SetPartyToCart',
+        data: param,
+        type: 'post',
+        async: false,
+        success: function(data) {
+            getResultOfSetParty(data);
+        },
+        error: function(data) {
+            getResultOfSetParty(data);
+        }
+    });
+    updateCustomerAddress();
+    customerAddressSelected();
+    hideOverlayDiv();
+    pleaseWait('N');
+}
+
+function partyToSearchFocus() {
+    hideOverlayDiv();
+    jQuery('#partyToSearch').focus();
+    return false;
+}
+
+function getResultOfSetParty(data) {
+    var serverError = getServerError(data);
+    if (serverError != "") {
+        jQuery('#errors').fadeIn('slow', function() {
+            jQuery('#errors').html(serverError);
+        });
+    } else {
+        clearErrorMessages();
+        jQuery('#partyToSearch').val('');
+        updateCart();
+        partyToSearchFocus();
+    }
+}
+
+function partySearch() {
+    pleaseWait('Y');
+    var param = 'partyIdentificationTypeId=' + jQuery('#partyIdentificationTypeId').val() +
+                '&billingLocation=' + jQuery('#billingLocation').val() +
+                '&shippingLocation=' + jQuery('#shippingLocation').val();
+    if (jQuery('#searchPartyBy').val() == "lastName") {
+        param = param + '&searchByPartyLastName=' + jQuery('#partyToSearch').val();
+    } else if (jQuery('#searchPartyBy').val() == "firstName") {
+        param = param + '&searchByPartyFirstName=' + jQuery('#partyToSearch').val();
+    } else if (jQuery('#searchPartyBy').val() == "idValue") {
+        param = param + '&searchByPartyIdValue=' + jQuery('#partyToSearch').val();
+    }
+    jQuery.ajax({url: 'FindParties',
+        data: param,
+        type: 'post',
+        async: false,
+        success: function(data) {
+            var parties = data.partiesList;
+            // automatically add party to cart if returned only one party
+            if (parties.length == 1) {
+                setParty(parties[0].partyId, parties[0].contactMechId, parties[0].contactMechPurposeTypeId);
+            } else {
+                buildPartiesResults(parties, 'Y');
+            }
+        },
+        error: function(data) {
+            alert("Error during party searching");
+        }
+    });
+    pleaseWait('N');
+}
\ No newline at end of file

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchParties.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchParties.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchParties.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchPartiesResults.js
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchPartiesResults.js?rev=1125951&view=auto
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchPartiesResults.js (added)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchPartiesResults.js Sun May 22 13:11:17 2011
@@ -0,0 +1,196 @@
+/*
+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.
+*/
+jQuery(document).ready(function() {
+    jQuery('#searchByPartyIdValue').bind('keypress', function(event) {
+        code = event.keyCode ? event.keyCode : event.which;
+        if (code.toString() == 13) {
+            partySearchAgain();
+            return false;
+        }
+        if (code.toString() == 27) {
+            productToSearchFocus();
+            return false;
+        }
+    });
+    
+    jQuery('#searchByPartyLastName').bind('keypress', function(event) {
+        code = event.keyCode ? event.keyCode : event.which;
+        if (code.toString() == 13) {
+            partySearchAgain();
+            return false;
+        }
+        if (code.toString() == 27) {
+            productToSearchFocus();
+            return false;
+        }
+    });
+    
+    jQuery('#searchByPartyFirstName').bind('keypress', function(event) {
+        code = event.keyCode ? event.keyCode : event.which;
+        if (code.toString() == 13) {
+            partySearchAgain();
+            return false;
+        }
+        if (code.toString() == 27) {
+            productToSearchFocus();
+            return false;
+        }
+    });
+    
+    jQuery('#searchPartiesResultsSearch').bind('click', function(event) {
+        partySearchAgain();
+        return false;
+    });
+    
+    jQuery('#searchPartiesResultsCancel').bind('click', function(event) {
+        jQuery('#searchPartiesResults').hide();
+        productToSearchFocus();
+        return false;
+    });
+});
+
+function buildPartiesResults(parties, fromPartySearch) {
+    var alt_row = false;
+    var idx = 1;
+    var tableList = "";
+    jQuery.each(parties, function(i, party) {
+        if (alt_row) {
+            classType = "class=\"pos-cart-even\"";
+        } else {
+            classType = "class=\"pos-cart-odd\"";
+        }
+        lastName = checkNull(party.lastName);
+        firstName = checkNull(party.firstName);
+        address1 = checkNull(party.address1);
+        city = checkNull(party.city);
+        postalCode = checkNull(party.postalCode);
+        stateProvinceGeoId = checkNull(party.stateProvinceGeoId);
+        countryGeoId = checkNull(party.countryGeoId);
+        contactMechPurposeTypeId = checkNull(party.contactMechPurposeTypeId);
+        billingShipping = "B";
+        if (contactMechPurposeTypeId == 'SHIPPING_LOCATION') {
+            billingShipping = "S";
+        }
+        editAddr = "editAddress" + i;
+        selectedPartyId = "selectedPartyId" + i;
+        selectedContactMechId = "selectedContactMechId" + i;
+        selectedContactMechPurposeTypeId = "selectedContactMechPurposeTypeId" + i;
+        tableList = tableList + "<tr " + classType + ">";
+        tableList = tableList + "<td><input type=\"hidden\" id=\"" + selectedPartyId + "\" name=\"" + selectedPartyId + "\" value=\"" + party.partyId + "\"/>";
+        tableList = tableList + "<input type=\"hidden\" id=\"" + selectedContactMechId + "\" name=\"" + selectedContactMechId + "\" value=\"" + party.contactMechId + "\"/>";
+        tableList = tableList + "<input type=\"hidden\" id=\"" + selectedContactMechPurposeTypeId + "\" name=\"" + selectedContactMechPurposeTypeId + "\" value=\"" + party.contactMechPurposeTypeId + "\"/>";
+        tableList = tableList + "<input type=\"checkbox\" class=\"editAddress\" id=\"" + editAddr + "\"/></td>";
+        tableList = tableList + "<td><a href=\"javascript:setParty(\'" + party.partyId + "\', \'" + party.contactMechId + "\', \'" + party.contactMechPurposeTypeId +"\');\">" + party.partyId + "</a></td>";
+        tableList = tableList + "<td><a href=\"javascript:setParty(\'" + party.partyId + "\', \'" + party.contactMechId + "\', \'" + party.contactMechPurposeTypeId +"\');\">" + lastName + "</a></td>";
+        tableList = tableList + "<td><a href=\"javascript:setParty(\'" + party.partyId + "\', \'" + party.contactMechId + "\', \'" + party.contactMechPurposeTypeId +"\');\">" + firstName + "</a></td>";
+        tableList = tableList + "<td>" + address1 + "</td>";
+        tableList = tableList + "<td>" + city + "</td>";
+        tableList = tableList + "<td>" + postalCode + "</td>";
+        tableList = tableList + "<td>" + stateProvinceGeoId + "</td>";
+        tableList = tableList + "<td>" + countryGeoId + "</td>";
+        tableList = tableList + "<td>" + billingShipping + "</td>";
+        tableList = tableList + "</tr>";
+        alt_row = !alt_row;
+        idx++;
+    });
+    jQuery('#searchPartiesResultsList').html(tableList);
+    editAddressClick();
+    jQuery('#searchPartiesResults').show();
+    if (fromPartySearch == 'Y') {
+        if (jQuery('#searchPartyBy').val() == 'lastName') {
+            jQuery('#searchByPartyLastName').val(jQuery('#partyToSearch').val());
+            jQuery('#searchByPartyFirstName').val("");
+            jQuery('#searchByPartyIdValue').val("");
+            jQuery('#searchByPartyLastName').focus();
+        } else if (jQuery('#searchPartyBy').val() == 'firstName') {
+            jQuery('#searchByPartyLastName').val("");
+            jQuery('#searchByPartyFirstName').val(jQuery('#partyToSearch').val());
+            jQuery('#searchByPartyIdValue').val("");
+            jQuery('#searchByPartyFirstName').focus();
+        } else if (jQuery('#searchPartyBy').val() == 'idValue') {
+            jQuery('#searchByPartyLastName').val("");
+            jQuery('#searchByPartyFirstName').val("");
+            jQuery('#searchByPartyIdValue').val(jQuery('#partyToSearch').val());
+            jQuery('#searchByPartyIdValue').focus();
+        }
+        
+        if (jQuery('#billingLocation').val() == 'Y') {
+            jQuery('#billingLoc').val('Y');
+            jQuery('#billingLoc').attr('checked', true);
+        } else {
+            jQuery('#billingLoc').val('N');
+            jQuery('#billingLoc').attr('checked', false);
+        }
+        
+        if (jQuery('#shippingLocation').val() == 'Y') {
+            jQuery('#shippingLoc').val('Y');
+            jQuery('#shippingLoc').attr('checked', true);
+        } else {
+            jQuery('#shippingLoc').val('N');
+            jQuery('#shippingLoc').attr('checked', false);
+        }
+    }
+}
+
+function editAddressClick() {
+    jQuery('input.editAddress').each(function(idx) {
+        var id = jQuery(this).attr('id');
+        if (id != '') {
+            id = '#' + id;
+            jQuery(id).bind('click', function(event) {
+                editAddress(jQuery('#selectedPartyId' + idx).val(), jQuery('#selectedContactMechId' + idx).val(), jQuery('#selectedContactMechPurposeTypeId' + idx).val());
+                return false;
+            });
+        }
+    });
+}
+
+function partySearchAgain() {
+    pleaseWait('Y');
+    var param = 'partyIdentificationTypeId=' + jQuery('#partyIdentificationTypeId').val() +
+                '&searchByPartyLastName=' + jQuery('#searchByPartyLastName').val() +
+                '&searchByPartyFirstName=' + jQuery('#searchByPartyFirstName').val() +
+                '&searchByPartyIdValue=' + jQuery('#searchByPartyIdValue').val();
+    
+    if (jQuery('#billingLoc').attr('checked') == true) {
+        param = param + '&billingLocation=Y';
+    } else {
+        param = param + '&billingLocation=N';
+    }
+    
+    if (jQuery('#shippingLoc').attr('checked') == true) {
+        param = param + '&shippingLocation=Y';
+    } else {
+        param = param + '&shippingLocation=N';
+    }
+    
+    jQuery.ajax({url: 'FindParties',
+        data: param,
+        type: 'post',
+        async: false,
+        success: function(data) {
+            var parties = data.partiesList;
+            buildPartiesResults(parties, 'N');
+        },
+        error: function(data) {
+            alert("Error during party searching again");
+        }
+    });
+    pleaseWait('N');
+}
\ No newline at end of file

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchPartiesResults.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchPartiesResults.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchPartiesResults.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchProducts.js
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchProducts.js?rev=1125951&r1=1125950&r2=1125951&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchProducts.js (original)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchProducts.js Sun May 22 13:11:17 2011
@@ -16,78 +16,60 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 */
-
-jQuery(document).ready( function() {
-
-    // Autocompleter for good identification field
-    var productsIdent = [];
-    var productsIdIdent = [];
-            
-    jQuery( "#productGoodIdentification" ).autocomplete({
-        minLength: 2,
-        source: function( request, response ) {
-            var term = request.term;
-            term = 'productGoodIdentification=' + term;
-            jQuery.ajax({
-                url: "FindProductsByIdentification",
-                type: 'POST',
-                async: false,
-                data: term,
-                success: function(data) {
-                    productsIdent = data.productsList;
-                    productsIdIdent = data.productsId;
-                    response( productsIdent );    
-                }
-    
-            });
-        },
-        select: function( event, ui ) {
-            var identValues = ui.item.value;
+jQuery(document).ready(function() {
+    productToSearchFocus();
     
-            jQuery.each(productsIdent, function(product) {
-                if (identValues == this) {
-                    document.getElementById('add_product_id').value = productsIdIdent[product];
-                    return false;
-                }
-            });
+    jQuery('#productToSearch').bind('keypress', function(event) {
+        code = event.keyCode ? event.keyCode : event.which;
+        if (code.toString() == 13) {
+            productSearch();
+            return false;
         }
     });
-
-    // Autocompleter for search by field
-    jQuery('#searchBy').change( function(s) {
-        document.getElementById('add_product_id').value = '';
-        document.getElementById('productToSearch').value = '';
-        jQuery('#productToSearch').focus();
-    });
     
-    jQuery( "#productToSearch" ).autocomplete({
-        minLength: 2,
-        source: function( request, response ) {
-            var term = request.term;
-            term = 'searchBy=' + document.getElementById('searchBy').value + '&productToSearch=' + term;
-            jQuery.ajax({
-                url: "FindProducts",
-                async: false,
-                type: 'POST',
-                data: term,
-                success: function(data) {
-                    products = data.productsList;
-                    productsId = data.productsId;
-                    response( products );    
-                }
+    jQuery('#searchBy').bind('change', function(event) {
+        productToSearchFocus();
+        return false;
+    });
     
-            });
+    jQuery('#productSearchConfirm').bind('click', function(event) {
+        productSearch();
+        return false;
+    });
+});
+
+function productToSearchFocus() {
+    hideOverlayDiv();
+    jQuery('#productToSearch').focus();
+    return false;
+}
+
+function productSearch() {
+    pleaseWait('Y');
+    var param = 'goodIdentificationTypeId=' + jQuery('#goodIdentificationTypeId').val();
+    if (jQuery('#searchBy').val() == "productName") {
+        param = param + '&searchByProductName=' + jQuery('#productToSearch').val();
+    } else if (jQuery('#searchBy').val() == "productDescription") {
+        param = param + '&searchByProductDescription=' + jQuery('#productToSearch').val();
+    } else if (jQuery('#searchBy').val() == "idValue") {
+        param = param + '&searchByProductIdValue=' + jQuery('#productToSearch').val();
+    }
+    jQuery.ajax({url: 'FindProducts',
+        data: param,
+        type: 'post',
+        async: false,
+        success: function(data) {
+            var products = data.productsList;
+            // automatically add item to cart if returned only one product
+            if (products.length == 1) {
+                addItem(products[0].productId, '1', 'Y');
+            } else {
+                buildProductsResults(products, 'Y');
+            }
         },
-        select: function( event, ui ) {
-            var productToSearchValues = ui.item.value;
-    
-            jQuery.each(products, function(product){
-                if (productToSearchValues == this) {
-                    document.getElementById('add_product_id').value = productsId[product];
-                    return false;
-                }
-            });
+        error: function(data) {
+            alert("Error during product searching");
         }
     });
-    
-});
\ No newline at end of file
+    pleaseWait('N');
+}
\ No newline at end of file

Added: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchProductsResults.js
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchProductsResults.js?rev=1125951&view=auto
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchProductsResults.js (added)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchProductsResults.js Sun May 22 13:11:17 2011
@@ -0,0 +1,130 @@
+/*
+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.
+*/
+jQuery(document).ready(function() {
+    jQuery('#searchByProductIdValue').bind('keypress', function(event) {
+        code = event.keyCode ? event.keyCode : event.which;  
+        if (code.toString() == 13) {
+            productSearchAgain();
+            return false;
+        }
+        if (code.toString() == 27) {
+            productToSearchFocus();
+            return false;
+        }
+    });
+    
+    jQuery('#searchByProductName').bind('keypress', function(event) {
+        code = event.keyCode ? event.keyCode : event.which;  
+        if (code.toString() == 13) {
+            productSearchAgain();
+            return false;
+        }
+        if (code.toString() == 27) {
+            productToSearchFocus();
+            return false;
+        }
+    });
+    
+    jQuery('#searchByProductDescription').bind('keypress', function(event) {
+        code = event.keyCode ? event.keyCode : event.which;  
+        if (code.toString() == 13) {
+            productSearchAgain();
+            return false;
+        }
+        if (code.toString() == 27) {
+            productToSearchFocus();
+            return false;
+        }
+    });
+    
+    jQuery('#searchProductsResultsSearch').bind('click', function(event) {
+        productSearchAgain();
+    });
+        
+    jQuery('#searchProductsResultsCancel').bind('click', function(event) {
+        jQuery('#searchProductsResults').hide();
+        productToSearchFocus();
+    });
+});
+
+function buildProductsResults(products, fromProductSearch) {
+    var alt_row = false;
+    var idx = 1;
+    var tableList = "";
+    jQuery.each(products, function(i, product) {
+        if (alt_row) {
+            classType = "class=\"pos-cart-even\"";
+        } else {
+            classType = "class=\"pos-cart-odd\"";
+        }
+        productName = checkNull(product.productName);
+        productDescription = checkNull(product.description);
+        tableList = tableList + "<tr " + classType + ">";
+        tableList = tableList + "<td><input type=\"hidden\" name=\"selectedProductId\" value=\"" + product.productId + "\"/></td>";
+        tableList = tableList + "<td><a href=\"javascript:addItem(\'" + product.productId + "\', '1', 'Y');\">" + product.productId + "</a></td>";
+        tableList = tableList + "<td><a href=\"javascript:addItem(\'" + product.productId + "\', '1', 'Y');\">" + productName + "</a></td>";
+        tableList = tableList + "<td><a href=\"javascript:addItem(\'" + product.productId + "\', '1', 'Y');\">" + productDescription + "</a></td>";
+        tableList = tableList + "</tr>";
+        alt_row = !alt_row;
+        idx++;
+    });
+    jQuery('#searchProductsResultsList').html(tableList);
+    jQuery('#searchProductsResults').show();
+    if (fromProductSearch == 'Y') {
+        if (jQuery('#searchBy').val() == 'productName') {
+            jQuery('#searchByProductIdValue').val("");
+            jQuery('#searchByProductName').val(jQuery('#productToSearch').val());
+            jQuery('#searchByProductDescription').val("");
+            jQuery('#searchByProductName').focus();
+        }
+        if (jQuery('#searchBy').val() == 'productDescription') {
+            jQuery('#searchByProductIdValue').val("");
+            jQuery('#searchByProductName').val("");
+            jQuery('#searchByProductDescription').val(jQuery('#productToSearch').val());
+            jQuery('#searchByProductDescription').focus();
+        }
+        if (jQuery('#searchBy').val() == 'idValue') {
+            jQuery('#searchByProductIdValue').val(jQuery('#productToSearch').val());
+            jQuery('#searchByProductName').val("");
+            jQuery('#searchByProductDescription').val("");
+            jQuery('#searchByProductIdValue').focus();
+        }
+    }
+}
+
+function productSearchAgain() {
+    pleaseWait('Y');
+    var param = 'goodIdentificationTypeId=' + jQuery('#goodIdentificationTypeId').val() +
+                '&searchByProductName=' + jQuery('#searchByProductName').val() +
+                '&searchByProductDescription=' + jQuery('#searchByProductDescription').val() +
+                '&searchByProductIdValue=' + jQuery('#searchByProductIdValue').val();
+    jQuery.ajax({url: 'FindProducts',
+        data: param,
+        type: 'post',
+        async: false,
+        success: function(data) {
+            var products = data.productsList;
+            buildProductsResults(products, 'N');
+        },
+        error: function(data) {
+            alert("Error during product searching again");
+        }
+    });
+    pleaseWait('N');
+}
\ No newline at end of file

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchProductsResults.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchProductsResults.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchProductsResults.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchSalesReps.js
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchSalesReps.js?rev=1125951&view=auto
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchSalesReps.js (added)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchSalesReps.js Sun May 22 13:11:17 2011
@@ -0,0 +1,81 @@
+/*
+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.
+*/
+function removeSalesRep(salesRepId) {
+    pleaseWait('Y');
+    var param = 'partyId=' + salesRepId;
+    jQuery.ajax({url: 'RemoveSalesRep',
+        data: param,
+        type: 'post',
+        async: false,
+        success: function(data) {
+            getResultOfRemoveSalesRep(data);
+        },
+        error: function(data) {
+            getResultOfRemoveSalesRep(data);
+        }
+    });
+    pleaseWait('N');
+}
+
+function getResultOfRemoveSalesRep(data) {
+    var serverError = getServerError(data);
+    if (serverError != "") {
+        jQuery('#errors').fadeIn('slow', function() {
+            jQuery('#errors').html(serverError);
+        });
+    } else {
+        clearErrorMessages();
+        updateSearchSalesReps();
+        productToSearchFocus();
+    }
+}
+
+function addSalesRep(salesRepId) {
+    pleaseWait('Y');
+    var param = 'partyId=' + salesRepId;
+    jQuery.ajax({url: 'AddSalesRep',
+        data: param,
+        type: 'post',
+        async: false,
+        success: function(data) {
+            getResultOfAddSalesRep(data);
+        },
+        error: function(data) {
+            getResultOfAddSalesRep(data);
+        }
+    });
+    pleaseWait('N');
+}
+
+function getResultOfAddSalesRep(data) {
+    var serverError = getServerError(data);
+    if (serverError != "") {
+        jQuery('#errors').fadeIn('slow', function() {
+            jQuery('#errors').html(serverError);
+        });
+    } else {
+        clearErrorMessages();
+        updateSearchSalesReps();
+        productToSearchFocus();
+    }
+}
+
+function updateSearchSalesReps() {
+    jQuery('#SearchSalesReps').load('SearchSalesRepsList', {cartLineIndex:null});
+}
\ No newline at end of file

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchSalesReps.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchSalesReps.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SearchSalesReps.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/Shortcuts.js
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/Shortcuts.js?rev=1125951&view=auto
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/Shortcuts.js (added)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/Shortcuts.js Sun May 22 13:11:17 2011
@@ -0,0 +1,55 @@
+/*
+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.
+*/
+function updateHotKeys() {
+    var item = 0;
+    var shortcutList = "";
+    jQuery.each(WebPosHotkeys.hotkeys, function(i, arr) {
+        shortcutList = shortcutList + '<li id="shortcut' + (item + 1) + '" class="notSelectedShortcut">';
+        shortcutList = shortcutList + '<a href="javascript:executeAction(' + item + ')">';
+        shortcutList = shortcutList + arr[1].toUpperCase() + '<br/>';
+        shortcutList = shortcutList + arr[4] + '</a></li>';
+        item = item + 1;
+    });
+    jQuery('#posShortcut').html(shortcutList);
+    showSelectedShortcut();
+}
+
+function executeAction(item) {
+    hideOverlayDiv();
+    var key = WebPosHotkeys.hotkeys[item];
+    var action = key[3];
+    eval(action);
+}
+
+function showSelectedShortcut() {
+    jQuery('li.notSelectedShortcut').each(function(idx) {
+        var id = jQuery(this).attr('id');
+        if (id != '') {
+            id = '#' + id;
+            jQuery(id).mouseover(function(event) {
+                jQuery(id).addClass("selectedShortcut");
+                jQuery(id).removeClass("notSelectedShortcut");
+            });
+            jQuery(id).mouseout(function(event) {
+                jQuery(id).addClass("notSelectedShortcut");
+                jQuery(id).removeClass("selectedShortcut");
+            });
+        }
+    });
+}
\ No newline at end of file

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/Shortcuts.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/Shortcuts.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/Shortcuts.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/ShowCart.js
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/ShowCart.js?rev=1125951&view=auto
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/ShowCart.js (added)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/ShowCart.js Sun May 22 13:11:17 2011
@@ -0,0 +1,66 @@
+/*
+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.
+*/
+function selectCartItem() {
+    jQuery('tr.pos-cart-even').each(function(idx) {
+        var id = jQuery(this).attr('id');
+        if (id != '') {
+            id = '#' + id;
+            jQuery(id).bind('click', function(event) {
+                showCartItemSelected(id);
+            });
+        }
+    });
+    jQuery('tr.pos-cart-odd').each(function(idx) {
+        var id = jQuery(this).attr('id');
+        if (id != '') {
+            id = '#' + id;
+            jQuery(id).bind('click', function(event) {
+                showCartItemSelected(id);
+            });
+        }
+    });
+}
+
+function showCartItemSelected(itemId) {
+    var lineIndex = itemId.substring(9, 10);
+    updateCartItemSelected(lineIndex, 'Y');
+    jQuery('#selectedItem').val(lineIndex);
+}
+
+function keyUp() {
+    var selectedItem = parseInt(jQuery('#selectedItem').value);
+    var cartSize = parseInt(jQuery('#cartSize').value);
+    cartSize = cartSize - 1;
+    if (selectedItem > 0) {
+        jQuery('#selectedItem').val(selectedItem - 1);
+        updateCartItemSelected(jQuery('#selectedItem').value, 'Y');
+    }
+    return false;
+}
+
+function keyDown() {
+    var selectedItem = parseInt(jQuery('#selectedItem').value);
+    var cartSize = parseInt(jQuery('#cartSize').value);
+    cartSize = cartSize - 1;
+    if (selectedItem < cartSize) {
+        jQuery('#selectedItem').val(selectedItem + 1);
+        updateCartItemSelected(jQuery('#selectedItem').value, 'Y');
+    }
+    return false;
+}
\ No newline at end of file

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/ShowCart.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/ShowCart.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/ShowCart.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/ShowCartItemSelected.js
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/ShowCartItemSelected.js?rev=1125951&view=auto
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/ShowCartItemSelected.js (added)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/ShowCartItemSelected.js Sun May 22 13:11:17 2011
@@ -0,0 +1,176 @@
+/*
+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.
+*/
+function cartItemSelectedEvents(focusOnQuantity) {
+    jQuery('#itemQuantity').bind('keypress', function(event) {
+        code = event.keyCode ? event.keyCode : event.which;
+        if (code.toString() == 13) {
+            updateCartItem();
+            itemQuantityFocus();
+            return false;
+        }
+    });
+    
+    jQuery('#modifyPrice').bind('keypress', function(event) {
+        code = event.keyCode ? event.keyCode : event.which;
+        if (code.toString() == 13) {
+            modifyPrice();
+            itemQuantityFocus();
+            return false;
+        }
+    });
+    
+    jQuery('#incrementQuantity').bind('click', function(event) {
+        incrementItemQuantity();
+        return false;
+    });
+    
+    jQuery('#decrementQuantity').bind('click', function(event) {
+        decrementItemQuantity();
+        return false;
+    });
+    
+    if (focusOnQuantity == undefined) {
+        focusOnQuantity = 'Y';
+    }
+    if (focusOnQuantity == 'Y') {
+        itemQuantityFocus();
+    }
+}
+
+function incrementItemQuantity() {
+    var qnt = parseInt(jQuery('#itemQuantity').val());
+    if (!isNaN(qnt)) {
+        qnt = qnt + 1;
+        jQuery('#itemQuantity').val(qnt);
+        updateCartItem();
+    }
+    itemQuantityFocus();
+    return false;
+}
+
+function decrementItemQuantity() {
+    var qnt = parseInt(jQuery('#itemQuantity').val());
+    if (!isNaN(qnt) && qnt > 1) {
+        qnt = qnt - 1;
+        jQuery('#itemQuantity').val(qnt);
+        updateCartItem();
+    }
+    itemQuantityFocus();
+    return false;
+}
+
+function itemQuantityFocus() {
+    hideOverlayDiv();
+    jQuery('#itemQuantity').focus();
+    return false;
+}
+
+function modifyPrice() {
+    pleaseWait('Y');
+    var param = 'cartLineIdx=' + jQuery('#cartLineIdx').val() + '&price=' + jQuery('#modifyPrice').val();
+    jQuery.ajax({url: 'ModifyPrice',
+        data: param,
+        type: 'post',
+        async: false,
+        success: function(data) {
+            getResultOfModifyPrice(data);
+        },
+        error: function(data) {
+            getResultOfModifyPrice(data);
+        }
+    });
+    pleaseWait('N');
+}
+
+function getResultOfModifyPrice(data) {
+    var serverError = getServerError(data);
+    if (serverError != "") {
+        jQuery('#errors').fadeIn('slow', function() {
+            jQuery('#errors').html(serverError);
+        });
+        jQuery('#itemQuantity').focus();
+    } else {
+        clearErrorMessages();
+        jQuery('#itemQuantity').focus();
+        updateCart();
+    }
+}
+
+function updateCartItem() {
+    pleaseWait('Y');
+    var param = 'cartLineIndex=' + jQuery('#lineIndex').val() + '&quantity=' + jQuery('#itemQuantity').val();
+    jQuery.ajax({url: 'UpdateCartItem',
+        data: param,
+        type: 'post',
+        async: false,
+        success: function(data) {
+            getResultOfUpdateCartItem(data);
+        },
+        error: function(data) {
+            getResultOfUpdateCartItem(data);
+        }
+    });
+    pleaseWait('N');
+}
+
+function getResultOfUpdateCartItem(data) {
+    var serverError = getServerError(data);
+    if (serverError != "") {
+        jQuery('#errors').fadeIn('slow', function() {
+            jQuery('#errors').html(serverError);
+        });
+        jQuery('#itemQuantity').focus();
+    } else {
+        clearErrorMessages();
+        jQuery('#itemQuantity').focus();
+        updateCart();
+    }
+}
+
+function deleteCartItem(cartLineIndex) {
+    pleaseWait('Y');
+    var param = 'cartLineIndex=' + cartLineIndex;
+    jQuery.ajax({url: 'DeleteCartItem',
+        data: param,
+        type: 'post',
+        async: false,
+        success: function(data) {
+            getResultOfDeleteCartItem(data);
+        },
+        error: function(data) {
+            getResultOfDeleteCartItem(data);
+        }
+    });
+    pleaseWait('N');
+}
+
+function getResultOfDeleteCartItem(data) {
+    var serverError = getServerError(data);
+    if (serverError != "") {
+        jQuery('#errors').fadeIn('slow', function() {
+            jQuery('#errors').html(serverError);
+        });
+        jQuery('#productToSearch').focus();
+    } else {
+        clearErrorMessages();
+        jQuery('#productToSearch').focus();
+        updateCart();
+        updateCartItemSelected(null, 'N');
+    }
+}
\ No newline at end of file

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/ShowCartItemSelected.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/ShowCartItemSelected.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/ShowCartItemSelected.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SideDeepCategory.js
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SideDeepCategory.js?rev=1125951&view=auto
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SideDeepCategory.js (added)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SideDeepCategory.js Sun May 22 13:11:17 2011
@@ -0,0 +1,22 @@
+/*
+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.
+*/
+function selectCategory(productCategoryId) {
+    jQuery('#SideDeepCategoryList').load('SideDeepCategory', {category_id:productCategoryId});
+    jQuery('#CategoryDetailList').load('CategoryDetail', {productCategoryId:productCategoryId});
+}
\ No newline at end of file

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SideDeepCategory.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SideDeepCategory.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/SideDeepCategory.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/VoidOrder.js
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/VoidOrder.js?rev=1125951&view=auto
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/VoidOrder.js (added)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/VoidOrder.js Sun May 22 13:11:17 2011
@@ -0,0 +1,83 @@
+/*
+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.
+*/
+jQuery(document).ready(function() {
+    jQuery('#orderId').bind('keypress', function(event) {
+        code = event.keyCode ? event.keyCode : event.which;
+        if (code.toString() == 13) {
+            voidOrderConfirm();
+            return false;
+        }
+        if (code.toString() == 27) {
+            productToSearchFocus();
+            return false;
+        }
+    });
+    
+    jQuery('#voidOrderConfirm').bind('click', function(event) {
+        voidOrderConfirm();
+        return false;
+    });
+    
+    jQuery('#voidOrderCancel').bind('click', function(event) {
+        productToSearchFocus();
+        return false;
+    });
+});
+
+function voidOrderConfirm() {
+    pleaseWait('Y');
+    var param = 'orderId=' + jQuery('#orderId').val();
+    jQuery.ajax({url: 'VoidOrder',
+        data: param,
+        type: 'post',
+        async: false,
+        success: function(data) {
+            getResultOfVoidOrder(data);
+        },
+        error: function(data) {
+            getResultOfVoidOrder(data);
+        }
+    });
+    pleaseWait('N');
+}
+
+function voidOrder(cleanErrors) {
+    if (cleanErrors == undefined) {
+        cleanErrors = "Y";
+    }
+    if (cleanErrors == "Y") {
+        hideOverlayDiv();
+        jQuery('#voidOrderFormServerError').html("");
+        jQuery('#orderId').val("");
+    }
+    jQuery('#voidOrder').show();
+    jQuery('#orderId').focus();
+}
+
+function getResultOfVoidOrder(data) {
+    var serverError = getServerError(data);
+    if (serverError != "") {
+        jQuery('#voidOrderFormServerError').html(serverError);
+        voidOrder('N');
+    } else {
+        clearErrorMessages();
+        updateCart();
+        productToSearchFocus();
+    }
+}
\ No newline at end of file

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/VoidOrder.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/VoidOrder.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/VoidOrder.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/WebPosHotkeys.js
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/WebPosHotkeys.js?rev=1125951&view=auto
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/WebPosHotkeys.js (added)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/WebPosHotkeys.js Sun May 22 13:11:17 2011
@@ -0,0 +1,9 @@
+WebPosHotkeys = {
+    hotkeys: [],
+    
+    bind: function (type, data, fnCode, fn, label) {
+        var arr = [type, data, fnCode, fn, label];
+        this.hotkeys.push(arr);
+        $(document).bind(type, data, fnCode);
+    }
+}
\ No newline at end of file

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/WebPosHotkeys.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/WebPosHotkeys.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/WebPosHotkeys.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/jquery.hotkeys-0.7.9.min.js
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/jquery.hotkeys-0.7.9.min.js?rev=1125951&view=auto
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/jquery.hotkeys-0.7.9.min.js (added)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/jquery.hotkeys-0.7.9.min.js Sun May 22 13:11:17 2011
@@ -0,0 +1,19 @@
+(function(jQuery){jQuery.fn.__bind__=jQuery.fn.bind;jQuery.fn.__unbind__=jQuery.fn.unbind;jQuery.fn.__find__=jQuery.fn.find;var hotkeys={version:'0.7.9',override:/keypress|keydown|keyup/g,triggersMap:{},specialKeys:{27:'esc',9:'tab',32:'space',13:'return',8:'backspace',145:'scroll',20:'capslock',144:'numlock',19:'pause',45:'insert',36:'home',46:'del',35:'end',33:'pageup',34:'pagedown',37:'left',38:'up',39:'right',40:'down',109:'-',112:'f1',113:'f2',114:'f3',115:'f4',116:'f5',117:'f6',118:'f7',119:'f8',120:'f9',121:'f10',122:'f11',123:'f12',191:'/'},shiftNums:{"`":"~","1":"!","2":"@","3":"#","4":"$","5":"%","6":"^","7":"&","8":"*","9":"(","0":")","-":"_","=":"+",";":":","'":"\"",",":"<",".":">","/":"?","\\":"|"},newTrigger:function(type,combi,callback){var result={};result[type]={};result[type][combi]={cb:callback,disableInInput:false};return result;}};hotkeys.specialKeys=jQuery.extend(hotkeys.specialKeys,{96:'0',97:'1',98:'2',99:'3',100:'4',101:'5',102:'6',103:'7',104:'8',10
 5:'9',106:'*',107:'+',109:'-',110:'.',111:'/'});jQuery.fn.find=function(selector){this.query=selector;return jQuery.fn.__find__.apply(this,arguments);};jQuery.fn.unbind=function(type,combi,fn){if(jQuery.isFunction(combi)){fn=combi;combi=null;}
+if(combi&&typeof combi==='string'){var selectorId=((this.prevObject&&this.prevObject.query)||(this[0].id&&this[0].id)||this[0]).toString();var hkTypes=type.split(' ');for(var x=0;x<hkTypes.length;x++){delete hotkeys.triggersMap[selectorId][hkTypes[x]][combi];}}
+return this.__unbind__(type,fn);};jQuery.fn.bind=function(type,data,fn){var handle=type.match(hotkeys.override);if(jQuery.isFunction(data)||!handle){return this.__bind__(type,data,fn);}
+else{var result=null,pass2jq=jQuery.trim(type.replace(hotkeys.override,''));if(pass2jq){result=this.__bind__(pass2jq,data,fn);}
+if(typeof data==="string"){data={'combi':data};}
+if(data.combi){for(var x=0;x<handle.length;x++){var eventType=handle[x];var combi=data.combi.toLowerCase(),trigger=hotkeys.newTrigger(eventType,combi,fn),selectorId=((this.prevObject&&this.prevObject.query)||(this[0].id&&this[0].id)||this[0]).toString();trigger[eventType][combi].disableInInput=data.disableInInput;if(!hotkeys.triggersMap[selectorId]){hotkeys.triggersMap[selectorId]=trigger;}
+else if(!hotkeys.triggersMap[selectorId][eventType]){hotkeys.triggersMap[selectorId][eventType]=trigger[eventType];}
+var mapPoint=hotkeys.triggersMap[selectorId][eventType][combi];if(!mapPoint){hotkeys.triggersMap[selectorId][eventType][combi]=[trigger[eventType][combi]];}
+else if(mapPoint.constructor!==Array){hotkeys.triggersMap[selectorId][eventType][combi]=[mapPoint];}
+else{hotkeys.triggersMap[selectorId][eventType][combi][mapPoint.length]=trigger[eventType][combi];}
+this.each(function(){var jqElem=jQuery(this);if(jqElem.attr('hkId')&&jqElem.attr('hkId')!==selectorId){selectorId=jqElem.attr('hkId')+";"+selectorId;}
+jqElem.attr('hkId',selectorId);});result=this.__bind__(handle.join(' '),data,hotkeys.handler)}}
+return result;}};hotkeys.findElement=function(elem){if(!jQuery(elem).attr('hkId')){if(jQuery.browser.opera||jQuery.browser.safari){while(!jQuery(elem).attr('hkId')&&elem.parentNode){elem=elem.parentNode;}}}
+return elem;};hotkeys.handler=function(event){var target=hotkeys.findElement(event.currentTarget),jTarget=jQuery(target),ids=jTarget.attr('hkId');if(ids){ids=ids.split(';');var code=event.which,type=event.type,special=hotkeys.specialKeys[code],character=!special&&String.fromCharCode(code).toLowerCase(),shift=event.shiftKey,ctrl=event.ctrlKey,alt=event.altKey||event.originalEvent.altKey,mapPoint=null;for(var x=0;x<ids.length;x++){if(hotkeys.triggersMap[ids[x]][type]){mapPoint=hotkeys.triggersMap[ids[x]][type];break;}}
+if(mapPoint){var trigger;if(!shift&&!ctrl&&!alt){trigger=mapPoint[special]||(character&&mapPoint[character]);}
+else{var modif='';if(alt)modif+='alt+';if(ctrl)modif+='ctrl+';if(shift)modif+='shift+';trigger=mapPoint[modif+special];if(!trigger){if(character){trigger=mapPoint[modif+character]||mapPoint[modif+hotkeys.shiftNums[character]]||(modif==='shift+'&&mapPoint[hotkeys.shiftNums[character]]);}}}
+if(trigger){var result=false;for(var x=0;x<trigger.length;x++){if(trigger[x].disableInInput){var elem=jQuery(event.target);if(jTarget.is("input")||jTarget.is("textarea")||jTarget.is("select")||elem.is("input")||elem.is("textarea")||elem.is("select")){return true;}}
+result=result||trigger[x].cb.apply(this,[event]);}
+return result;}}}};window.hotkeys=hotkeys;return jQuery;})(jQuery);
\ No newline at end of file

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/jquery.hotkeys-0.7.9.min.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/jquery.hotkeys-0.7.9.min.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/js/jquery.hotkeys-0.7.9.min.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/webpos.css
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/webpos.css?rev=1125951&r1=1125950&r2=1125951&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/webpos.css (original)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/images/webpos.css Sun May 22 13:11:17 2011
@@ -40,61 +40,42 @@ under the License.
 }
 
 .tableButtons {
-    background-color: #FFFFF;
-    color: #FFFF00;
     width: 100%;
     height: 100%;
 }
 
 .tableButtons td {
-    background-color: #000099;
-    background-image: url(/images/gradient_sub_uns.gif);
+    border: 1px solid #0099CC;
+    background-color: #fece2f;
     background-repeat: repeat-x;
-    height: 1em;
     text-align: center;
     border-width: 2px;
     padding-left: 0.5em;
     height: 5em;
     width: 5em;
-}
-
-.posButton, A.posButton, A.posButton:visited {
-    color: #ffff00;
-    font-size: 0.9em;
-    font-weight: bold;
-    padding-left: 0.2em;
-    padding-right: 0.5em;
-}
 
-A.posButton:hover {
-    color: #ffff00;
 }
-
-div#panel {
-    border: solid 2px #EBEFF7;
-    background-color: #CCFFFF;
-    padding: 10px;
-    top: 250px;
-    left: 200px;
-    position: absolute;
-    color: #333;
+.pos-cart-odd {
+    background-color: white;
     overflow: auto;
 }
-
-div.pos-cart-scroll {
-    height: 370px;
-    width: 100%;
+.pos-cart-odd:hover {
+    background-color: #FFFCCF;
+    cursor: pointer;
+}
+.pos-cart-even {
+    background-color: #eeeeee;
     overflow: auto;
 }
-
-.pos-cart-hover-bar:hover {
+.pos-cart-even:hover {
     background-color: #FFFCCF;
     cursor: pointer;
 }
-
+.pos-cart-choose {
+    background: #fece2f 50% 50% repeat-x;
+}
 .errorPosMessage {
     background-color: #FF0000;
-    border: solid #000000 0.1em;
     font-size: 1.1em;
     font-weight: bold;
     text-align: center;
@@ -103,45 +84,356 @@ div.pos-cart-scroll {
     color: #FFFCCF;
     overflow: auto;
 }
-
-/* ===== Header Styles ===== */
-#webpos-header {
-    position: relative;
-    background: #ffffff;
+#posButton {
+    list-style-type: none;
+    margin: 0;
+    padding: 0;
+}
+#posButton li {
+    margin: 2px;
+    padding: 1px;
+    float: left;
+    width: 60px;
+    height: 60px;
+    line-height: 10px;
+    font-size: 0.90em;
+    text-align: center;
+    overflow: hidden;
+}
+.notSelectedButton {
+    border: 1px solid #d19405;
+    background: #fece2f 50% 50% repeat-x;
+    font-weight: bold;
+    color: black;
+    outline: none;
+}
+.notSelectedButton a, .notSelectedButton a:link, .notSelectedButton a:visited, .notSelectedButton a:hover {
+    color: black;
+    text-decoration: none;
+    outline: none;
+}
+.selectedButton {
+    border: 1px solid #d19405;
+    background: #f39814 50% 50% repeat-x;
+    font-weight: bold;
+    color: white;
+    outline: none;
+}
+.selectedButton a, .selectedButton a:link, .selectedButton a:visited, .selectedButton a:hover {
+    color: white;
+    text-decoration: none;
+    outline: none;
+    cursor: hand;
+}
+.linkButton {
+    width: 60px;
+    height: 40px;
+    line-height: 10px;
+    font-size: 0.90em;
+    text-align: center;
+    overflow: hidden;
+}
+#posShortcut {
+    list-style-type: none;
+    margin: 0;
+    padding: 0;
+}
+#posShortcut li {
+    margin: 2px;
+    padding: 1px;
+    float: left;
+    width: 60px;
+    height: 60px;
+    line-height: 20px;
+    font-size: 0.90em;
+    text-align: center;
+}
+.notSelectedShortcut {
+    border: 1px solid #d19405;
+    background: #fece2f 50% 50% repeat-x;
+    font-weight: bold;
+    color: black;
+    outline: none;
+}
+.notSelectedShortcut a, .notSelectedShortcut a:link, .notSelectedShortcut a:visited, .notSelectedShortcut a:hover {
+    color: black;
+    text-decoration: none;
+    outline: none;
+}
+.selectedShortcut {
+    border: 1px solid #d19405;
+    background: #f39814 50% 50% repeat-x;
+    font-weight: bold;
+    color: white;
+    outline: none;
+}
+.selectedShortcut a, .selectedShortcut a:link, .selectedShortcut a:visited, .selectedShortcut a:hover {
+    color: white;
+    text-decoration: none;
+    outline: none;
+    cursor: hand;
+}
+input[type="text"]:focus, input[type="password"]:focus {
+    border: 1px solid #0099CC;
+    background: #FFFCCF;
+}
+#TopBar {
+    height: 130px;
+    width: 100%;
+}
+#TopBar .leftTopBar {
+    float: left;
+    width: 58%;
+}
+#TopBar .rightTopBar {
+    float: right;
+    width: 40%;
+}
+#centerTopBarLeft {
+    float: left;
+    margin-left: 5px;
+    margin-right: 5px;
+    width: auto;
+}
+#centerTopBarRight {
+    float: right;
+    margin-left: 5px;
+    margin-right:5px;
+    width: auto;
+}
+#SearchProducts {
     height: 100px;
-    voice-family: "\"}\"";
-    voice-family: inherit;
 }
-#webpos-header #left {
+#searchProductsResults {
+    border: solid 4px #0099CC;
+    background-color: #CCFFFF;
     position: absolute;
     top: 0px;
-    left: 0px;
-    width: 280px;
-}
-#webpos-header #middle {
-    margin-left: 290px;
-    margin-right: 210px;
-    padding-top: 10px;
-    width: auto;
-    text-align: center;
+    left: 25%;
+    width: 50%;
+    height: 280px;
+    overflow-x: hidden;
+    overflow-y: auto;
+}
+.searchProductsResultsHead {
+    height: 30px;
+}
+.searchProductsResultsCartBody {
+    height: 186px;
+    max-height: 186px;
+    overflow-x: hidden;
+    overflow-y: auto;
 }
-#webpos-header #right {
+#searchPartiesResults {
+    border: solid 4px #0099CC;
+    background-color: #CCFFFF;
     position: absolute;
     top: 0px;
-    right: 0px;
-    width: 200px;
-    padding: 0px;
-    margin-top: 20px;
-    text-align: right;
-}
-#webpos-header #middle {
-    margin-left: 290px;
-    margin-right: 210px;
-    padding-top: 10px;
+    right: 0%;
+    width: 65%;
+    height: 280px;
+    overflow-x: hidden;
+    overflow-y: auto;
+}
+.searchPartiesResultsHead {
+    height: 30px;
+}
+.searchPartiesResultsCartBody {
+    height: 168px;
+    max-height: 168px;
+    overflow-x: hidden;
+    overflow-y: auto;
+}
+#SearchSalesRepsList {
+    border: 1px solid #0099CC;
+    overflow: auto;
+    height: 120px;
+}
+#SearchSalesReps {
+    height: 110px;
+}
+#CustomerAddressList {
+    height: 120px;
+}
+#customerAddress {
+    border: 1px solid #0099CC;
+    overflow: auto;
+    height: 110px;
+}
+#billingAddressSelected  {
+    color: white;
+}
+#shippingAddressSelected {
+    color: white;
+}
+.selectedAddress {
+    border: 1px solid #0099CC;
+    background-color: #fece2f;
+}
+#CenterBar {
+    margin-top: 33px;
+    height: auto;
+}
+.leftCenterBar {
+    float: left;
+    width: 24em;
+    margin-right: 1em;
+}
+.rightCenterBar  {
+    float: right;
+    margin-left: 1em;
+    width: 24em;
+}
+.centerCenterBar  {
+    margin-left: 24em;
+    margin-right: 24em;
     width: auto;
-    text-align: center;
 }
-#webpos-header #middle-right {
-    margin-left: 290px;
-    width: auto;
+#CartHeader {
+    height: 100px;
+    width: 100%;
+}
+#Cart {
+    height: 460px;
+    width: 100%;
+}
+.basic-table .CartHead {
+    height: 30px;
+}
+.basic-table .CartBody {
+    height: 400px;
+    overflow-x: hidden;
+    overflow-y: auto;
+}
+.basic-table .CartFoot {
+    height: 30px;
+}
+#CartItemSelected {
+    height: 130px;
+    overflow: auto;
+}
+#CartItemSelectedLeft {
+    float: left;
+}
+#CartItemSelectedRight {
+    float: right;
+}
+#chooseVariant {
+    border: solid 4px #0099CC;
+    background-color: #CCFFFF;
+    position: absolute;
+    top: 300px;
+    left: 40%;
+    width: 20%;
+    height: 280px;
+}
+#payCash {
+    border: solid 4px #0099CC;
+    background-color: #CCFFFF;
+    position: absolute;
+    top: 300px;
+    left: 40%;
+    width: 20%;
+    height: 180px;
+}
+#payCheck {
+    border: solid 4px #0099CC;
+    background-color: #CCFFFF;
+    position: absolute;
+    top: 300px;
+    left: 39%;
+    width: 22%;
+    height: 210px;
+}
+#payGiftCard {
+    border: solid 4px #0099CC;
+    background-color: #CCFFFF;
+    position: absolute;
+    top: 300px;
+    left: 38%;
+    width: 24%;
+    height: 210px;
+}
+#payCreditCard {
+    border: solid 4px #0099CC;
+    background-color: #CCFFFF;
+    position: absolute;
+    top: 300px;
+    left: 23%;
+    width: 54%;
+    height: 310px;
+}
+#payFinish {
+    border: solid 4px #0099CC;
+    background-color: #CCFFFF;
+    position: absolute;
+    top: 300px;
+    left: 40%;
+    width: 20%;
+    height: 110px;
+}
+#openTerminal {
+    border: solid 4px #0099CC;
+    background-color: #CCFFFF;
+    position: absolute;
+    top: 300px;
+    left: 38%;
+    width: 24%;
+    height: 130px;
+}
+#closeTerminal {
+    border: solid 4px #0099CC;
+    background-color: #CCFFFF;
+    position: absolute;
+    top: 300px;
+    left: 30%;
+    width: 40%;
+    height: 250px;
+}
+#paidOutAndIn {
+    border: solid 4px #0099CC;
+    background-color: #CCFFFF;
+    position: absolute;
+    top: 300px;
+    left: 30%;
+    width: 40%;
+    height: 200px;
+}
+#promo {
+    border: solid 4px #0099CC;
+    background-color: #CCFFFF;
+    position: absolute;
+    top: 300px;
+    left: 36%;
+    width: 28%;
+    height: 150px;
+}
+#voidOrder {
+    border: solid 4px #0099CC;
+    background-color: #CCFFFF;
+    position: absolute;
+    top: 300px;
+    left: 30%;
+    width: 40%;
+    height: 130px;
+}
+#editAddress {
+    border: solid 4px #0099CC;
+    background-color: #CCFFFF;
+    position: absolute;
+    top: 300px;
+    left: 20%;
+    width: 60%;
+    height: 200px;
+}
+#pleaseWait {
+    border: 1px solid #d19405;
+    background: #fece2f url(/images/ajax-loader.gif) no-repeat center left;
+    position: absolute;
+    top: 50px;
+    left: 85%;
+    width: 13%;
+    height: 20px;
+    text-align: center;
+    vertical-align: middle;
 }
\ No newline at end of file

Modified: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Footer.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Footer.ftl?rev=1125951&r1=1125950&r2=1125951&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Footer.ftl (original)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Footer.ftl Sun May 22 13:11:17 2011
@@ -1,34 +0,0 @@
-<#--
-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.
--->
-
-<#assign nowTimestamp = Static["org.ofbiz.base.util.UtilDateTime"].nowTimestamp()>
-
-<br />
-<div align="center">
-    <a href="http://jigsaw.w3.org/css-validator/"><img style="border:0;width:88px;height:31px" src="<@ofbizContentUrl>/images/vcss.gif</@ofbizContentUrl>" alt="Valid CSS!"/></a>
-    <a href="http://validator.w3.org/check?uri=referer"><img style="border:0;width:88px;height:31px" src="<@ofbizContentUrl>/images/valid-xhtml10.png</@ofbizContentUrl>" alt="Valid XHTML 1.0!"/></a>
-</div>
-<br />
-<div align="center">
-    <div>Copyright (c) 2001-${nowTimestamp?string("yyyy")} The Apache Software Foundation - <a href="http://www.apache.org" class="tabletext" target="_blank">www.apache.org</a></div>
-    <div>Powered by <a href="http://ofbiz.apache.org" target="_blank">Apache OFBiz</a></div>
-</div>
-<br />
-</body>
-</html>

Modified: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Header.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Header.ftl?rev=1125951&r1=1125950&r2=1125951&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Header.ftl (original)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Header.ftl Sun May 22 13:11:17 2011
@@ -20,53 +20,37 @@ under the License.
 <html xmlns="http://www.w3.org/1999/xhtml">
 <#-- <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> -->
 <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
-    <title><#if title?has_content>${title}<#elseif titleProperty?has_content>${uiLabelMap.get(titleProperty)}</#if>: ${(productStore.storeName)?if_exists}</title>
-    <#if layoutSettings.shortcutIcon?has_content>
-      <link rel="shortcut icon" href="<@ofbizContentUrl>${layoutSettings.shortcutIcon}</@ofbizContentUrl>" />
-    </#if>
-    <#if layoutSettings.javaScripts?has_content>
-        <#--layoutSettings.javaScripts is a list of java scripts. -->
-        <#list layoutSettings.javaScripts as javaScript>
-            <script language="javascript" src="<@ofbizContentUrl>${javaScript}</@ofbizContentUrl>" type="text/javascript"></script>
-        </#list>
-    </#if>
-    <#if layoutSettings.styleSheets?has_content>
-        <#--layoutSettings.styleSheets is a list of style sheets. So, you can have a user-specified "main" style sheet, AND a component style sheet.-->
-        <#list layoutSettings.styleSheets as styleSheet>
-            <link rel="stylesheet" href="<@ofbizContentUrl>${styleSheet}</@ofbizContentUrl>" type="text/css"/>
-        </#list>
-    </#if>
-
-    <#-- Append CSS for catalog -->
-    <#if catalogStyleSheet?exists>
-        <link rel="stylesheet" href="${catalogStyleSheet}" type="text/css"/>
-    </#if>
-    <#-- Append CSS for tracking codes -->
-    <#if sessionAttributes.overrideCss?exists>
-        <link rel="stylesheet" href="${sessionAttributes.overrideCss}" type="text/css"/>
-    </#if>
-    <#-- Meta tags if defined by the page action -->
-    <#if metaDescription?exists>
-        <meta name="description" content="${metaDescription}"/>
-    </#if>
-    <#if metaKeywords?exists>
-        <meta name="keywords" content="${metaKeywords}"/>
-    </#if>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+  <title><#if title?has_content>${title}<#elseif titleProperty?has_content>${uiLabelMap.get(titleProperty)}</#if>: ${(productStore.storeName)?if_exists}</title>
+  <#if layoutSettings.shortcutIcon?has_content>
+    <link rel="shortcut icon" href="<@ofbizContentUrl>${layoutSettings.shortcutIcon}</@ofbizContentUrl>" />
+  </#if>
+  <#if layoutSettings.javaScripts?has_content>
+    <#--layoutSettings.javaScripts is a list of java scripts. -->
+    <#list layoutSettings.javaScripts as javaScript>
+      <script language="javascript" src="<@ofbizContentUrl>${javaScript}</@ofbizContentUrl>" type="text/javascript"></script>
+    </#list>
+  </#if>
+  <#if layoutSettings.styleSheets?has_content>
+    <#--layoutSettings.styleSheets is a list of style sheets. So, you can have a user-specified "main" style sheet, AND a component style sheet.-->
+    <#list layoutSettings.styleSheets as styleSheet>
+      <link rel="stylesheet" href="<@ofbizContentUrl>${styleSheet}</@ofbizContentUrl>" type="text/css"/>
+    </#list>
+  </#if>
+  <#-- Append CSS for catalog -->
+  <#if catalogStyleSheet?exists>
+    <link rel="stylesheet" href="${catalogStyleSheet}" type="text/css"/>
+  </#if>
+  <#-- Append CSS for tracking codes -->
+  <#if sessionAttributes.overrideCss?exists>
+    <link rel="stylesheet" href="${sessionAttributes.overrideCss}" type="text/css"/>
+  </#if>
+  <#-- Meta tags if defined by the page action -->
+  <#if metaDescription?exists>
+    <meta name="description" content="${metaDescription}"/>
+  </#if>
+  <#if metaKeywords?exists>
+    <meta name="keywords" content="${metaKeywords}"/>
+  </#if>
 </head>
-
-<body>
-<div id="webpos-header">
-    <div id="left">
-        <#if sessionAttributes.overrideLogo?exists>
-            <img src="<@ofbizContentUrl>${sessionAttributes.overrideLogo}</@ofbizContentUrl>" alt="Logo"/>
-        <#elseif catalogHeaderLogo?exists>
-            <img src="<@ofbizContentUrl>${catalogHeaderLogo}</@ofbizContentUrl>" alt="Logo"/>
-        <#elseif (productStore.headerLogo)?has_content>
-            <img src="<@ofbizContentUrl>${productStore.headerLogo}</@ofbizContentUrl>" alt="Logo"/>
-        </#if>
-    </div>
-    <div id="middle-right">
-        ${screens.render("component://webpos/widget/WebPosScreens.xml#MicroCart")}
-    </div>
-</div>
\ No newline at end of file
+<body>
\ No newline at end of file

Modified: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Language.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Language.ftl?rev=1125951&r1=1125950&r2=1125951&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Language.ftl (original)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Language.ftl Sun May 22 13:11:17 2011
@@ -1,39 +0,0 @@
-<#--
-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.
--->
-
-<div id="choose-language" class="screenlet">
-    <div class="screenlet-title-bar">
-        <h3>${uiLabelMap.CommonLanguageTitle}</h3>
-    </div>
-    <div class="screenlet-body" style="text-align: center;">
-        <form method="post" name="chooseLanguage" action="<@ofbizUrl>SetSessionLocale</@ofbizUrl>" style="margin: 0;">
-          <select name="newLocale" style="width:95%" onchange="submit()">
-            <#assign availableLocales = Static["org.ofbiz.base.util.UtilMisc"].availableLocales()/>
-            <#list availableLocales as availableLocale>
-              <#assign langAttr = availableLocale.toString()?replace("_", "-")>
-              <#assign langDir = "ltr">
-              <#if "ar.iw"?contains(langAttr?substring(0, 2))>
-                 <#assign langDir = "rtl">
-              </#if>
-              <option lang="${langAttr}" dir="${langDir}" value="${availableLocale.toString()}"<#if locale.toString() = availableLocale.toString()> selected="selected"</#if>>${availableLocale.getDisplayName(availableLocale)}</option>
-            </#list>
-          </select>
-        </form>
-    </div>
-</div>
\ No newline at end of file

Modified: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Messages.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Messages.ftl?rev=1125951&r1=1125950&r2=1125951&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Messages.ftl (original)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/includes/Messages.ftl Sun May 22 13:11:17 2011
@@ -62,3 +62,5 @@ under the License.
     </#if>
   </div>
 </#if>
+
+<div id="errors" style="display:none" class="errorPosMessage"/>
\ No newline at end of file

Modified: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/manager/CloseTerminal.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/manager/CloseTerminal.ftl?rev=1125951&r1=1125950&r2=1125951&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/manager/CloseTerminal.ftl (original)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/manager/CloseTerminal.ftl Sun May 22 13:11:17 2011
@@ -16,45 +16,42 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-
-<div id="panel">
-    <form method="post" action="<@ofbizUrl>CloseTerminal</@ofbizUrl>" name="CloseTerminalForm">
-        <table border="0">
-            <tr>
-                <td colspan="2"">&nbsp;</td>
-            </tr>
-            <tr>
-                <td><b>${uiLabelMap.WebPosManagerCloseTerminalCashAmount}</b></td>
-                <td><input type="text" name="endingDrawerCashAmount" id="endingDrawerCashAmount" value="${parameters.endingDrawerCashAmount?default("")}"/></td>
-            </tr>
-            <tr>
-                <td><b>${uiLabelMap.WebPosManagerCloseTerminalCheckAmount}</b></td>
-                <td><input type="text" name="endingDrawerCheckAmount" id="endingDrawerCheckAmount" value="${parameters.endingDrawerCheckAmount?default("")}"/></td>
-            </tr>
-            <tr>
-                <td><b>${uiLabelMap.WebPosManagerCloseTerminalCcAmount}</b></td>
-                <td><input type="text" name="endingDrawerCcAmount" id="endingDrawerCcAmount" value="${parameters.endingDrawerCcAmount?default("")}"/></td>
-            </tr>
-            <tr>
-                <td><b>${uiLabelMap.WebPosManagerCloseTerminalGcAmount}</b></td>
-                <td><input type="text" name="endingDrawerGcAmount" id="endingDrawerGcAmount" value="${parameters.endingDrawerGcAmount?default("")}"/></td>
-            </tr>
-            <tr>
-                <td><b>${uiLabelMap.WebPosManagerCloseTerminalOtherAmount}</b></td>
-                <td><input type="text" name="endingDrawerOtherAmount" id="endingDrawerOtherAmount" value="${parameters.endingDrawerOtherAmount?default("")}"/></td>
-            </tr>
-            <tr>
-                <td colspan="2"">&nbsp;</td>
-            </tr>
-            <tr>
-                <td colspan="2" align="center">
-                    <input type="submit" value="${uiLabelMap.CommonConfirm}" name="confirm"/>
-                    <input type="submit" value="${uiLabelMap.CommonCancel}"/>
-                </td>
-            </tr>
-        </table>
-    </form>
-</div>
-<script language="javascript" type="text/javascript">
-    document.CloseTerminalForm.endingDrawerCashAmount.focus();
-</script>
\ No newline at end of file
+<div id="closeTerminal" style="display:none">
+  <table border="0" width="100%">
+    <tr>
+      <td colspan="2"">&nbsp;</td>
+    </tr>
+    <tr>
+      <td width="50%" align="right">${uiLabelMap.WebPosManagerCloseTerminalCashAmount}</td>
+      <td width="50%" align="left"><input type="text" id="endingDrawerCashAmount" name="endingDrawerCashAmount" size="10" value=""/></td>
+    </tr>
+    <tr>
+      <td width="50%" align="right">${uiLabelMap.WebPosManagerCloseTerminalCheckAmount}</td>
+      <td width="50%" align="left"><input type="text" id="endingDrawerCheckAmount" name="endingDrawerCheckAmount" size="10" value=""/></td>
+    </tr>
+    <tr>
+      <td width="50%" align="right">${uiLabelMap.WebPosManagerCloseTerminalCcAmount}</td>
+      <td width="50%" align="left"><input type="text" id="endingDrawerCcAmount" name="endingDrawerCcAmount" size="10" value=""/></td>
+    </tr>
+    <tr>
+      <td width="50%" align="right">${uiLabelMap.WebPosManagerCloseTerminalGcAmount}</td>
+      <td width="50%" align="left"><input type="text" id="endingDrawerGcAmount" name="endingDrawerGcAmount" size="10" value=""/></td>
+    </tr>
+    <tr>
+      <td width="50%" align="right">${uiLabelMap.WebPosManagerCloseTerminalOtherAmount}</td>
+      <td width="50%" align="left"><input type="text" id="endingDrawerOtherAmount" name="endingDrawerOtherAmount" size="10" value=""/></td>
+    </tr>
+    <tr>
+      <td colspan="2"">&nbsp;</td>
+    </tr>
+    <tr>
+      <td colspan="2" align="center">
+        <input type="submit" value="${uiLabelMap.CommonConfirm}" id="closeTerminalConfirm"/>
+        <input type="submit" value="${uiLabelMap.CommonCancel}" id="closeTerminalCancel"/>
+      </td>
+    </tr>
+    <tr>
+      <td colspan="2"><div class="errorPosMessage"><span id="closeTerminalFormServerError"/></div></td>
+    </tr>
+  </table>
+</div>
\ No newline at end of file

Modified: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/manager/ModifyPrice.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/manager/ModifyPrice.ftl?rev=1125951&r1=1125950&r2=1125951&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/manager/ModifyPrice.ftl (original)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/manager/ModifyPrice.ftl Sun May 22 13:11:17 2011
@@ -1,49 +0,0 @@
-<#--
-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.
--->
-
-<div id="panel">
-    <form method="post" action="<@ofbizUrl>ModifyPrice</@ofbizUrl>" name="ModifyPriceForm">
-        <table border="0">
-            <tr>
-                <td colspan="2"">&nbsp;</td>
-            </tr>
-
-            <tr>
-                <td><b>${uiLabelMap.WebPosManagerModifyPriceSku}</b></td>
-                <td><input type="text" name="sku" id="sku"/></td>
-            </tr>
-            <tr>
-                <td><b>${uiLabelMap.WebPosManagerModifyPriceNewPrice}</b></td>
-                <td><input type="text" name="price" id="price" value="${parameters.price?default("")}"/></td>
-            </tr>
-            <tr>
-                <td colspan="2"">&nbsp;</td>
-            </tr>
-            <tr>
-                <td colspan="2" align="center">
-                    <input type="submit" value="${uiLabelMap.CommonConfirm}" name="confirm"/>
-                    <input type="submit" value="${uiLabelMap.CommonCancel}"/>
-                </td>
-            </tr>
-        </table>
-    </form>
-</div>
-<script language="javascript" type="text/javascript">
-    document.ModifyPriceForm.sku.focus();
-</script>
\ No newline at end of file

Modified: ofbiz/trunk/specialpurpose/webpos/webapp/webpos/manager/OpenTerminal.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/webpos/webapp/webpos/manager/OpenTerminal.ftl?rev=1125951&r1=1125950&r2=1125951&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/webpos/webapp/webpos/manager/OpenTerminal.ftl (original)
+++ ofbiz/trunk/specialpurpose/webpos/webapp/webpos/manager/OpenTerminal.ftl Sun May 22 13:11:17 2011
@@ -16,29 +16,26 @@ KIND, either express or implied.  See th
 specific language governing permissions and limitations
 under the License.
 -->
-
-<div id="panel">
-    <form method="post" action="<@ofbizUrl>OpenTerminal</@ofbizUrl>" name="OpenTerminalForm">
-        <table border="0">
-            <tr>
-                <td colspan="2"">&nbsp;</td>
-            </tr>
-            <tr>
-                <td><b>${uiLabelMap.WebPosManagerOpenTerminalDrawingAmount}</b></td>
-                <td><input type="text" name="startingDrawerAmount" id="startingDrawerAmount" value="${parameters.startingDrawerAmount?default("")}"/></td>
-            </tr>
-            <tr>
-                <td colspan="2"">&nbsp;</td>
-            </tr>
-            <tr>
-                <td colspan="2" align="center">
-                    <input type="submit" value="${uiLabelMap.CommonConfirm}" name="confirm"/>
-                    <input type="submit" value="${uiLabelMap.CommonCancel}"/>
-                </td>
-            </tr>
-        </table>
-    </form>
-</div>
-<script language="javascript" type="text/javascript">
-    document.OpenTerminalForm.startingDrawerAmount.focus();
-</script>
\ No newline at end of file
+<div id="openTerminal" style="display:none">
+  <table border="0" width="100%">
+    <tr>
+      <td colspan="2"">&nbsp;</td>
+    </tr>
+    <tr>
+      <td width="50%" align="right">${uiLabelMap.WebPosManagerOpenTerminalDrawingAmount}</td>
+      <td width="50%" align="left"><input type="text" id="startingDrawerAmount" name="startingDrawerAmount" size="10" value=""/></td>
+    </tr>
+    <tr>
+      <td colspan="2"">&nbsp;</td>
+    </tr>
+    <tr>
+      <td colspan="2" align="center">
+        <input type="submit" value="${uiLabelMap.CommonConfirm}" id="openTerminalConfirm"/>
+        <input type="submit" value="${uiLabelMap.CommonCancel}" id="openTerminalCancel"/>
+      </td>
+    </tr>
+    <tr>
+      <td colspan="2"><div class="errorPosMessage"><span id="openTerminalFormServerError"/></div></td>
+    </tr>
+  </table>
+</div>
\ No newline at end of file