Author: lektran
Date: Sat Jul 7 17:00:04 2007 New Revision: 554280 URL: http://svn.apache.org/viewvc?view=rev&rev=554280 Log: Applied fix from trunk for revision: 544091 Modified: ofbiz/branches/release4.0/applications/ecommerce/webapp/ecommerce/order/checkoutshippingoptions.ftl ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutEvents.java ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutHelper.java ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java ofbiz/branches/release4.0/applications/order/webapp/ordermgr/entry/billsettings.ftl ofbiz/branches/release4.0/applications/order/webapp/ordermgr/entry/checkoutoptions.ftl Modified: ofbiz/branches/release4.0/applications/ecommerce/webapp/ecommerce/order/checkoutshippingoptions.ftl URL: http://svn.apache.org/viewvc/ofbiz/branches/release4.0/applications/ecommerce/webapp/ecommerce/order/checkoutshippingoptions.ftl?view=diff&rev=554280&r1=554279&r2=554280 ============================================================================== --- ofbiz/branches/release4.0/applications/ecommerce/webapp/ecommerce/order/checkoutshippingoptions.ftl (original) +++ ofbiz/branches/release4.0/applications/ecommerce/webapp/ecommerce/order/checkoutshippingoptions.ftl Sat Jul 7 17:00:04 2007 @@ -55,18 +55,6 @@ } } -function toggleBillingAccount(box) { - var amountName = box.value + "_amount"; - box.checked = true; - box.form.elements[amountName].disabled = false; - - for (var i = 0; i < box.form.elements[box.name].length; i++) { - if (!box.form.elements[box.name][i].checked) { - box.form.elements[box.form.elements[box.name][i].value + "_amount"].disabled = true; - } - } -} - // --> </script> Modified: ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutEvents.java URL: http://svn.apache.org/viewvc/ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutEvents.java?view=diff&rev=554280&r1=554279&r2=554280 ============================================================================== --- ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutEvents.java (original) +++ ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutEvents.java Sat Jul 7 17:00:04 2007 @@ -136,22 +136,21 @@ curPage = "payment"; } } else if ("payment".equals(curPage) == true) { - // get the currency format - String currencyFormat = UtilProperties.getPropertyValue("general.properties", "currency.decimal.format", "##0.00"); - DecimalFormat formatter = new DecimalFormat(currencyFormat); - // Set the payment options Map selectedPaymentMethods = getSelectedPaymentMethods(request); - if (selectedPaymentMethods == null) { - return "error"; - } String billingAccountId = request.getParameter("billingAccountId"); - Double billingAccountAmt = determineBillingAccountAmount(request, checkOutHelper, formatter); - if ((billingAccountId != null) && !"_NA_".equals(billingAccountId) && (billingAccountAmt == null)) { - Map messageMap = UtilMisc.toMap("billingAccountId", billingAccountId); - String errMsg = UtilProperties.getMessage(resource, "checkevents.invalid_amount_set_for_billing_account", messageMap, (cart != null ? cart.getLocale() : Locale.getDefault())); - request.setAttribute("_ERROR_MESSAGE_", errMsg); + if (UtilValidate.isNotEmpty(billingAccountId)) { + Double billingAccountAmt = null; + billingAccountAmt = determineBillingAccountAmount(billingAccountId, request.getParameter("billingAccountAmount"), dispatcher); + if ((billingAccountId != null) && !"_NA_".equals(billingAccountId) && (billingAccountAmt == null)) { + request.setAttribute("_ERROR_MESSAGE_", UtilProperties.getMessage(resource_error,"OrderInvalidAmountSetForBillingAccount", UtilMisc.toMap("billingAccountId",billingAccountId), (cart != null ? cart.getLocale() : Locale.getDefault()))); + return "error"; + } + selectedPaymentMethods.put("EXT_BILLACT", billingAccountAmt); + } + + if (UtilValidate.isEmpty(selectedPaymentMethods)) { return "error"; } @@ -174,7 +173,7 @@ } } - Map callResult = checkOutHelper.setCheckOutPayment(selectedPaymentMethods, singleUsePayments, billingAccountId, billingAccountAmt); + Map callResult = checkOutHelper.setCheckOutPayment(selectedPaymentMethods, singleUsePayments, billingAccountId); ServiceUtil.getMessages(request, callResult, null); if (!(callResult.get(ModelService.RESPONSE_MESSAGE).equals(ModelService.RESPOND_ERROR))) { @@ -283,13 +282,24 @@ LocalDispatcher dispatcher = (LocalDispatcher) request.getAttribute("dispatcher"); GenericDelegator delegator = (GenericDelegator) request.getAttribute("delegator"); - // get the currency format - String currencyFormat = UtilProperties.getPropertyValue("general.properties", "currency.decimal.format", "##0.00"); - DecimalFormat formatter = new DecimalFormat(currencyFormat); - // Set the payment options Map selectedPaymentMethods = getSelectedPaymentMethods(request); - if (selectedPaymentMethods == null) { + + CheckOutHelper checkOutHelper = new CheckOutHelper(dispatcher, delegator, cart); + + // get the billing account and amount + String billingAccountId = request.getParameter("billingAccountId"); + if (UtilValidate.isNotEmpty(billingAccountId)) { + Double billingAccountAmt = null; + billingAccountAmt = determineBillingAccountAmount(billingAccountId, request.getParameter("billingAccountAmount"), dispatcher); + if (billingAccountAmt == null) { + request.setAttribute("_ERROR_MESSAGE_", UtilProperties.getMessage(resource_error,"OrderInvalidAmountSetForBillingAccount", UtilMisc.toMap("billingAccountId",billingAccountId), (cart != null ? cart.getLocale() : Locale.getDefault()))); + return "error"; + } + selectedPaymentMethods.put("EXT_BILLACT", billingAccountAmt); + } + + if (UtilValidate.isEmpty(selectedPaymentMethods)) { return "error"; } @@ -312,7 +322,6 @@ // get a request map of parameters Map params = UtilHttp.getParameterMap(request); - CheckOutHelper checkOutHelper = new CheckOutHelper(dispatcher, delegator, cart); // if taxAuthPartyGeoIds is not empty drop that into the database if (UtilValidate.isNotEmpty(taxAuthPartyGeoIds)) { @@ -330,16 +339,6 @@ } } - // get the billing account and amount - String billingAccountId = request.getParameter("billingAccountId"); - Double billingAccountAmt = determineBillingAccountAmount(request, checkOutHelper, formatter); - if ((billingAccountId != null) && !"_NA_".equals(billingAccountId) && (billingAccountAmt == null)) { - Map messageMap = UtilMisc.toMap("billingAccountId", billingAccountId); - String errMsg = UtilProperties.getMessage(resource, "checkevents.invalid_amount_set_for_billing_account", messageMap, (cart != null ? cart.getLocale() : Locale.getDefault())); - request.setAttribute("_ERROR_MESSAGE_", errMsg); - return "error"; - } - // check for gift card not on file Map gcResult = checkOutHelper.checkGiftCard(params, selectedPaymentMethods); ServiceUtil.getMessages(request, gcResult, null); @@ -357,7 +356,7 @@ } Map optResult = checkOutHelper.setCheckOutOptions(shippingMethod, shippingContactMechId, selectedPaymentMethods, - singleUsePayments, billingAccountId, billingAccountAmt, shippingInstructions, + singleUsePayments, billingAccountId, shippingInstructions, orderAdditionalEmails, maySplit, giftMessage, isGift, internalCode, shipBeforeDate, shipAfterDate); ServiceUtil.getMessages(request, optResult, null); @@ -760,7 +759,20 @@ // Set the payment options Map selectedPaymentMethods = getSelectedPaymentMethods(request); - if (selectedPaymentMethods == null) { + + // Set the billing account (if any) + String billingAccountId = request.getParameter("billingAccountId"); + if (UtilValidate.isNotEmpty(billingAccountId)) { + Double billingAccountAmt = null; + billingAccountAmt = determineBillingAccountAmount(billingAccountId, request.getParameter("billingAccountAmount"), dispatcher); + if (billingAccountAmt == null) { + request.setAttribute("_ERROR_MESSAGE_", UtilProperties.getMessage(resource_error,"OrderInvalidAmountSetForBillingAccount", UtilMisc.toMap("billingAccountId",billingAccountId), (cart != null ? cart.getLocale() : Locale.getDefault()))); + return "error"; + } + selectedPaymentMethods.put("EXT_BILLACT", billingAccountAmt); + } + + if (UtilValidate.isEmpty(selectedPaymentMethods)) { return "error"; } @@ -771,16 +783,8 @@ selectedPaymentMethods.put(newPaymentMethodId, null); } - String billingAccountId = request.getParameter("billingAccountId"); - String currencyFormat = UtilProperties.getPropertyValue("general.properties", "currency.decimal.format", "##0.00"); - DecimalFormat formatter = new DecimalFormat(currencyFormat); - Double billingAccountAmt = determineBillingAccountAmount(request, checkOutHelper, formatter); - if ((billingAccountId != null) && !"_NA_".equals(billingAccountId) && (billingAccountAmt == null)) { - request.setAttribute("_ERROR_MESSAGE_", UtilProperties.getMessage(resource_error,"OrderInvalidAmountSetForBillingAccount", UtilMisc.toMap("billingAccountId",billingAccountId), (cart != null ? cart.getLocale() : Locale.getDefault()))); - return "error"; - } // The selected payment methods are set - errorMessages.addAll(checkOutHelper.setCheckOutPaymentInternal(selectedPaymentMethods, null, billingAccountId, billingAccountAmt)); + errorMessages.addAll(checkOutHelper.setCheckOutPaymentInternal(selectedPaymentMethods, null, billingAccountId)); // Verify if a gift card has been selected during order entry callResult = checkOutHelper.checkGiftCard(paramMap, selectedPaymentMethods); ServiceUtil.addErrors(errorMessages, errorMaps, callResult); @@ -963,37 +967,41 @@ * This method returns the amount that will be charged to the billing account. * * An amount can be associated with the billingAccountId with a - * parameter amount_${billingAccountId}. If no amount is specified, then - * the entire available ballance of the given billing account will be used. + * parameter billingAccountAmount. If no amount is specified, then + * the entire available balance of the given billing account will be used. * If there is an error, a null will be returned. * * @return Amount to charge billing account or null if there was an error */ - private static Double determineBillingAccountAmount(HttpServletRequest request, CheckOutHelper checkOutHelper, DecimalFormat formatter) { - ShoppingCart cart = (ShoppingCart) request.getSession().getAttribute("shoppingCart"); - String billingAccountId = request.getParameter("billingAccountId"); - String billingAcctAmtStr = request.getParameter("amount_" + billingAccountId); + private static Double determineBillingAccountAmount(String billingAccountId, String billingAccountAmount, LocalDispatcher dispatcher) { Double billingAccountAmt = null; - // parse the amount to a decimal - if (billingAcctAmtStr != null) { - try { - billingAccountAmt = new Double(formatter.parse(billingAcctAmtStr).doubleValue()); - } catch (ParseException e) { - return null; - } - } - // set the billing account amount to the minimum of billing account available balance or amount input if less than balance - if ((cart != null) && (billingAccountId != null) && !("".equals(billingAccountId)) && !"_NA_".equals(billingAccountId)) { - double availableBalance = checkOutHelper.availableAccountBalance(billingAccountId); + if (UtilValidate.isNotEmpty(billingAccountId)) { + // parse the amount to a decimal + if (UtilValidate.isNotEmpty(billingAccountAmount)) { + String currencyFormat = UtilProperties.getPropertyValue("general.properties", "currency.decimal.format", "##0.00"); + DecimalFormat formatter = new DecimalFormat(currencyFormat); + try { + billingAccountAmt = new Double(formatter.parse(billingAccountAmount).doubleValue()); + } catch (ParseException e) { + return null; + } + } + if (billingAccountAmt == null) { + billingAccountAmt = new Double(0.0); + } + double availableBalance = CheckOutHelper.availableAccountBalance(billingAccountId, dispatcher); // set amount to be charged to entered amount unless it exceeds the available balance double chargeAmount = 0; - if ((billingAccountAmt != null) && (billingAccountAmt.doubleValue() < availableBalance)) { + if (billingAccountAmt.doubleValue() < availableBalance) { chargeAmount = billingAccountAmt.doubleValue(); } else { chargeAmount = availableBalance; + } + if (chargeAmount < 0.0) { + chargeAmount = 0.0; } return new Double(chargeAmount); Modified: ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutHelper.java URL: http://svn.apache.org/viewvc/ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutHelper.java?view=diff&rev=554280&r1=554279&r2=554280 ============================================================================== --- ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutHelper.java (original) +++ ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/CheckOutHelper.java Sat Jul 7 17:00:04 2007 @@ -203,13 +203,13 @@ return errorMessages; } - public Map setCheckOutPayment(Map selectedPaymentMethods, List singleUsePayments, String billingAccountId, Double billingAccountAmt) { + public Map setCheckOutPayment(Map selectedPaymentMethods, List singleUsePayments, String billingAccountId) { List errorMessages = new ArrayList(); Map result; String errMsg = null; if (this.cart != null && this.cart.size() > 0) { - errorMessages.addAll(setCheckOutPaymentInternal(selectedPaymentMethods, singleUsePayments, billingAccountId, billingAccountAmt)); + errorMessages.addAll(setCheckOutPaymentInternal(selectedPaymentMethods, singleUsePayments, billingAccountId)); } else { errMsg = UtilProperties.getMessage(resource,"checkhelper.no_items_in_cart", (cart != null ? cart.getLocale() : Locale.getDefault())); errorMessages.add(errMsg); @@ -226,7 +226,7 @@ return result; } - public List setCheckOutPaymentInternal(Map selectedPaymentMethods, List singleUsePayments, String billingAccountId, Double billingAccountAmt) { + public List setCheckOutPaymentInternal(Map selectedPaymentMethods, List singleUsePayments, String billingAccountId) { List errorMessages = new ArrayList(); String errMsg = null; @@ -239,11 +239,12 @@ // clear out the old payments cart.clearPayments(); - if (billingAccountId != null && billingAccountAmt != null && !billingAccountId.equals("_NA_")) { + if (UtilValidate.isNotEmpty(billingAccountId)) { + Double billingAccountAmt = (Double)selectedPaymentMethods.get("EXT_BILLACT"); // set cart billing account data and generate a payment method containing the amount we will be charging - cart.setBillingAccount(billingAccountId, billingAccountAmt.doubleValue()); - } else if ("_NA_".equals(billingAccountId)) { - // if _NA_ was supplied, erase all billing account data + cart.setBillingAccount(billingAccountId, (billingAccountAmt != null? billingAccountAmt.doubleValue(): 0.0)); + } else { + // remove the billing account from the cart cart.setBillingAccount(null, 0.0); } @@ -346,7 +347,7 @@ public Map setCheckOutOptions(String shippingMethod, String shippingContactMechId, Map selectedPaymentMethods, - List singleUsePayments, String billingAccountId, Double billingAccountAmt, String shippingInstructions, + List singleUsePayments, String billingAccountId, String shippingInstructions, String orderAdditionalEmails, String maySplit, String giftMessage, String isGift, String internalCode, String shipBeforeDate, String shipAfterDate) { List errorMessages = new ArrayList(); Map result = null; @@ -362,7 +363,7 @@ errorMessages.addAll(setCheckOutShippingAddressInternal(shippingContactMechId)); // set the payment method(s) option - errorMessages.addAll(setCheckOutPaymentInternal(selectedPaymentMethods, singleUsePayments, billingAccountId, billingAccountAmt)); + errorMessages.addAll(setCheckOutPaymentInternal(selectedPaymentMethods, singleUsePayments, billingAccountId)); } else { errMsg = UtilProperties.getMessage(resource,"checkhelper.no_items_in_cart", (cart != null ? cart.getLocale() : Locale.getDefault())); Modified: ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java URL: http://svn.apache.org/viewvc/ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java?view=diff&rev=554280&r1=554279&r2=554280 ============================================================================== --- ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java (original) +++ ofbiz/branches/release4.0/applications/order/src/org/ofbiz/order/shoppingcart/ShoppingCart.java Sat Jul 7 17:00:04 2007 @@ -3331,6 +3331,9 @@ remainingAmount = remainingAmount.setScale(2, BigDecimal.ROUND_HALF_UP); if (getBillingAccountId() != null) { double billingAccountAvailableAmount = CheckOutHelper.availableAccountBalance(getBillingAccountId(), dispatcher); + if (this.billingAccountAmt == 0.0 && billingAccountAvailableAmount > 0) { + this.billingAccountAmt = billingAccountAvailableAmount; + } if (remainingAmount.doubleValue() < getBillingAccountAmount()) { this.billingAccountAmt = remainingAmount.doubleValue(); } Modified: ofbiz/branches/release4.0/applications/order/webapp/ordermgr/entry/billsettings.ftl URL: http://svn.apache.org/viewvc/ofbiz/branches/release4.0/applications/order/webapp/ordermgr/entry/billsettings.ftl?view=diff&rev=554280&r1=554279&r2=554280 ============================================================================== --- ofbiz/branches/release4.0/applications/order/webapp/ordermgr/entry/billsettings.ftl (original) +++ ofbiz/branches/release4.0/applications/order/webapp/ordermgr/entry/billsettings.ftl Sat Jul 7 17:00:04 2007 @@ -26,18 +26,6 @@ } } -function toggleBillingAccount(box) { - var amountName = "amount_" + box.value; - box.checked = true; - box.form.elements[amountName].disabled = false; - - for (var i = 0; i < box.form.elements[box.name].length; i++) { - if (!box.form.elements[box.name][i].checked) { - box.form.elements["amount_" + box.form.elements[box.name][i].value].disabled = true; - } - } -} - function makeExpDate() { document.checkoutsetupform.expireDate.value = document.checkoutsetupform.expMonth.options[document.checkoutsetupform.expMonth.selectedIndex].value + "/" + document.checkoutsetupform.expYear.options[document.checkoutsetupform.expYear.selectedIndex].value; } @@ -56,7 +44,35 @@ <a href="<@ofbizUrl>setBilling?createNew=Y</@ofbizUrl>" class="buttontext">${uiLabelMap.CommonCreateNew}</a> </td> </tr> - <tr><td colspan="3"><hr class="sepbar"/></td></tr> + <tr><td colspan="3"><hr class="sepbar"/></td></tr> + <#if billingAccountList?has_content> + <tr> + <td width="1%"> + <select name="billingAccountId"> + <option value=""></option> + <#list billingAccountList as billingAccount> + <#assign availableAmount = billingAccount.accountBalance?double> + <#assign accountLimit = billingAccount.accountLimit?double> + <option value="${billingAccount.billingAccountId}" <#if billingAccount.billingAccountId == selectedBillingAccountId?default("")>selected</#if>>${billingAccount.description?default("")} [${billingAccount.billingAccountId}] with available amount of <@ofbizCurrency amount=availableAmount isoCode=billingAccount.accountCurrencyUomId/> and account limit of <@ofbizCurrency amount=accountLimit isoCode=billingAccount.accountCurrencyUomId/></option> + </#list> + </select> + </td> + <td width="50%"> + <span class="tabletext">${uiLabelMap.FormFieldTitle_billingAccountId}</span> + </td> + <td> </td> + </tr> + <tr> + <td width="1%" align="right"> + <input type="text" size="5" name="billingAccountAmount" value=""/> + </td> + <td width="50%"> + ${uiLabelMap.OrderBillUpTo} + </td> + <td> </td> + </tr> + <tr><td colspan="3"><hr class="sepbar"/></td></tr> + </#if> <tr> <td width="1%"> <input type="radio" name="checkOutPaymentId" value="EXT_OFFLINE" <#if checkOutPaymentId?exists && checkOutPaymentId == "EXT_OFFLINE">checked="checked"</#if>/> @@ -74,43 +90,7 @@ <span class="tabletext">${uiLabelMap.OrderCOD}</span> </td> </tr> - <tr><td colspan="3"><hr class="sepbar"/></td></tr> - <#if billingAccountList?has_content> - <tr> - <td width="1%"> - <input type="radio" name="checkOutPaymentId" value="EXT_BILLACT"/> - </td> - <td width="50%"> - <span class="tabletext">${uiLabelMap.AccountingBillingAccountOnly}</span> - </td> - <td> </td> - </tr> - <tr><td colspan="3"><hr class="sepbar"/></td></tr> - <#list billingAccountList as billingAccount> - <#assign availableAmount = billingAccount.accountBalance?double> - <tr> - <td align="left" valign="top" width="1%"> - <input type="radio" onClick="javascript:toggleBillingAccount(this);" name="billingAccountId" value="${billingAccount.billingAccountId}" <#if (billingAccount.billingAccountId == selectedBillingAccountId?default(""))>checked="checked"</#if>/> - </td> - <td align="left" valign="top" width="99%"> - <div class="tabletext"> - ${billingAccount.description?default("Bill Account")} #<b>${billingAccount.billingAccountId}</b> (<@ofbizCurrency amount=availableAmount isoCode=billingAccount.accountCurrencyUomId/>)<br/> - <b>${uiLabelMap.AccountingBillUpTo}:</b> <input type="text" size="5" class="inputBox" name="amount_${billingAccount.billingAccountId}" value="${availableAmount?double?string("##0.00")}" <#if !(billingAccount.billingAccountId == selectedBillingAccountId?default(""))>disabled="disabled"</#if>/> - </div> - </td> - </tr> - </#list> - <tr> - <td align="left" valign="top" width="1%"> - <input type="radio" onClick="javascript:toggleBillingAccount(this);" name="billingAccountId" value="_NA_" <#if (selectedBillingAccountId?default("") == "N")>checked="checked"</#if>/> - <input type="hidden" name="_NA_amount" value="0.00"/> - </td> - <td align="left" valign="top" width="99%"> - <div class="tabletext">${uiLabelMap.AccountingNoBillingAccount}</div> - </td> - </tr> - <tr><td colspan="3"><hr class="sepbar"/></td></tr> - </#if> + <tr><td colspan="3"><hr class="sepbar"/></td></tr> <#if paymentMethodList?has_content> <#list paymentMethodList as paymentMethod> <#if paymentMethod.paymentMethodTypeId == "CREDIT_CARD"> Modified: ofbiz/branches/release4.0/applications/order/webapp/ordermgr/entry/checkoutoptions.ftl URL: http://svn.apache.org/viewvc/ofbiz/branches/release4.0/applications/order/webapp/ordermgr/entry/checkoutoptions.ftl?view=diff&rev=554280&r1=554279&r2=554280 ============================================================================== --- ofbiz/branches/release4.0/applications/order/webapp/ordermgr/entry/checkoutoptions.ftl (original) +++ ofbiz/branches/release4.0/applications/order/webapp/ordermgr/entry/checkoutoptions.ftl Sat Jul 7 17:00:04 2007 @@ -66,17 +66,6 @@ } } -function toggleBillingAccount(box) { - var amountName = "amount_" + box.value; - box.checked = true; - box.form.elements[amountName].disabled = false; - - for (var i = 0; i < box.form.elements[box.name].length; i++) { - if (!box.form.elements[box.name][i].checked) { - box.form.elements["amount_" + box.form.elements[box.name][i].value].disabled = true; - } - } -} </script> <#assign shipping = !shoppingCart.containAllWorkEffortCartItems()> <#-- contains items which need shipping? --> @@ -445,35 +434,26 @@ <tr><td colspan="2"><hr class="sepbar"/></td></tr> <tr> <td width="1%"> - <input type="radio" name="checkOutPaymentId" value="EXT_BILLACT" <#if "EXT_BILLACT" == checkOutPaymentId>checked="checked"</#if>/></hr> + <select name="billingAccountId"> + <option value=""></option> + <#list billingAccountList as billingAccount> + <#assign availableAmount = billingAccount.accountBalance?double> + <#assign accountLimit = billingAccount.accountLimit?double> + <option value="${billingAccount.billingAccountId}" <#if billingAccount.billingAccountId == selectedBillingAccountId?default("")>selected</#if>>${billingAccount.description?default("")} [${billingAccount.billingAccountId}] with available amount of <@ofbizCurrency amount=availableAmount isoCode=billingAccount.accountCurrencyUomId/> and account limit of <@ofbizCurrency amount=accountLimit isoCode=billingAccount.accountCurrencyUomId/></option> + </#list> + </select> </td> <td width="50%"> - <span class="tabletext">${uiLabelMap.AccountingPayOnlyWithBillingAccount}</span> + <span class="tabletext">${uiLabelMap.FormFieldTitle_billingAccountId}</span> </td> </tr> - <tr><td colspan="2"><hr class="sepbar"/></td></tr> - <#list billingAccountList as billingAccount> - <#assign availableAmount = billingAccount.accountLimit?double - billingAccount.accountBalance?double> - <tr> - <td align="left" valign="top" width="1%"> - <input type="radio" onClick="javascript:toggleBillingAccount(this);" name="billingAccountId" value="${billingAccount.billingAccountId}" <#if (billingAccount.billingAccountId == selectedBillingAccountId?default(""))>checked="checked"</#if>/> - </td> - <td align="left" valign="top" width="99%"> - <div class="tabletext"> - ${billingAccount.description?default("Bill Account")} [${uiLabelMap.OrderNbr}<b>${billingAccount.billingAccountId}</b>] (<@ofbizCurrency amount=availableAmount isoCode=billingAccount.accountCurrencyUomId?default(shoppingCart.getCurrency())/>)<br/> - <b>${uiLabelMap.OrderBillUpTo}:</b> <input type="text" size="8" class="inputBox" name="amount_${billingAccount.billingAccountId}" value="${availableAmount?double?string("##0.00")}" <#if !(billingAccount.billingAccountId == selectedBillingAccountId?default(""))>disabled</#if>> - </div> - </td> - </tr> - </#list> <tr> - <td align="left" valign="top" width="1%"> - <input type="radio" onClick="javascript:toggleBillingAccount(this);" name="billingAccountId" value="_NA_" <#if (selectedBillingAccountId?default("") == "N")>checked="checked"</#if>/> - <input type="hidden" name="_NA_amount" value="0.00"/> + <td width="1%" align="right"> + <input type="text" size="5" name="billingAccountAmount" value=""/> + </td> + <td width="50%"> + ${uiLabelMap.OrderBillUpTo} </td> - <td align="left" valign="top" width="99%"> - <div class="tabletext">${uiLabelMap.AccountingNoBillingAccount}</div> - </td> </tr> </#if> </#if> |
Free forum by Nabble | Edit this page |