blob: 5897a684d2b1d9f2b83756a81566b453dceb972d [file] [log] [blame]
/*
* 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.
*/
import org.ofbiz.base.util.*;
// stores
productStores = from("ProductStore").orderBy("storeName").cache(true).queryList();
context.productStores = productStores;
// current store
productStoreId = parameters.productStoreId;
if (productStoreId) {
productStore = from("ProductStore").where("productStoreId", productStoreId).queryOne();
context.currentStore = productStore;
}
// payment settings
paymentSettings = from("Enumeration").where("enumTypeId", "PRDS_PAYSVC").orderBy("sequenceId").queryList();
context.paymentSettings = paymentSettings;
// payment method (for auto-fill)
paymentMethodId = parameters.paymentMethodId;
context.paymentMethodId = paymentMethodId;
// payment method type
paymentMethodTypeId = parameters.paymentMethodTypeId;
context.paymentMethodTypeId = paymentMethodTypeId;
// service type (transaction type)
txType = parameters.transactionType;
context.txType = txType;
if (txType) {
currentTx = from("Enumeration").where("enumId", txType).queryOne();
context.currentTx = currentTx;
}
if (paymentMethodId) {
paymentMethod = from("PaymentMethod").where("paymentMethodId", paymentMethodId).queryOne();
if (paymentMethod) {
// payment method type
paymentMethodTypeId = paymentMethod.paymentMethodTypeId;
// party information
party = paymentMethod.getRelatedOne("Party", false);
if (party && "PERSON".equals(party.partyTypeId)) {
person = party.getRelatedOne("Person", false);
context.person = person;
} else if (party && "PARTY_GROUP".equals(party.partyTypeId)) {
partyGroup = party.getRelatedOne("PartyGroup", false);
context.partyGroup = partyGroup;
}
// method info + address
creditCard = paymentMethod.getRelatedOne("CreditCard", false);
context.put("creditCard", creditCard);
if (creditCard) {
postalAddress = creditCard.getRelatedOne("PostalAddress", false);
context.postalFields = postalAddress;
}
giftCard = paymentMethod.getRelatedOne("GiftCard", false);
context.giftCard = giftCard;
// todo add support for eft account
}
}
if (paymentMethodTypeId) {
paymentMethodType = from("PaymentMethodType").where("paymentMethodTypeId", paymentMethodTypeId).queryOne();
context.paymentMethodType = paymentMethodType;
context.paymentMethodTypeId = paymentMethodTypeId;
}
context.showToolTip = "true";