package is.idega.idegaweb.travel.business;
import is.idega.idegaweb.travel.data.GeneralBooking;
import is.idega.idegaweb.travel.data.Inquery;
import is.idega.idegaweb.travel.data.InqueryHome;
import is.idega.idegaweb.travel.data.Service;
import is.idega.idegaweb.travel.interfaces.Booking;
import is.idega.idegaweb.travel.presentation.LinkGenerator;
import is.idega.idegaweb.travel.presentation.TravelManager;
import java.rmi.RemoteException;
import java.sql.SQLException;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import javax.ejb.CreateException;
import javax.ejb.FinderException;
import javax.mail.MessagingException;
import javax.transaction.SystemException;
import javax.transaction.TransactionManager;
import com.idega.block.trade.stockroom.business.ProductBusiness;
import com.idega.block.trade.stockroom.data.Product;
import com.idega.block.trade.stockroom.data.ProductHome;
import com.idega.block.trade.stockroom.data.Reseller;
import com.idega.block.trade.stockroom.data.Settings;
import com.idega.block.trade.stockroom.data.Supplier;
import com.idega.block.trade.stockroom.data.SupplierHome;
import com.idega.block.trade.stockroom.data.TravelAddress;
import com.idega.business.IBOLookup;
import com.idega.business.IBOServiceBean;
import com.idega.core.contact.data.Email;
import com.idega.data.IDOAddRelationshipException;
import com.idega.data.IDOLookup;
import com.idega.idegaweb.IWResourceBundle;
import com.idega.presentation.IWContext;
import com.idega.presentation.Table;
import com.idega.presentation.text.Text;
import com.idega.presentation.ui.BackButton;
import com.idega.transaction.IdegaTransactionManager;
import com.idega.util.IWTimestamp;
import com.idega.util.SendMail;
/**
* Title: idegaWeb TravelBooking
* Description:
* Copyright: Copyright (c) 2001
* Company: idega
* @author <a href="mailto:gimmi@idega.is">Grimur Jonsson</a>
* @version 1.0
*/
public class InquirerBean extends IBOServiceBean implements Inquirer{
public static final String INQUERYTYPE_CREDITCARD = "inq_type_cc";
public static final String INQUERYTYPE_GENERAL = "inq_type_gen";
public InquirerBean() {
}
public int getInqueredSeats(int serviceId, IWTimestamp stamp, boolean unansweredOnly) throws RemoteException, FinderException{
return getInquiryHome().getInqueredSeats(serviceId, stamp, -1, unansweredOnly);
}
/**
* @deprecated
*/
public Inquery[] getInqueries(int serviceId, IWTimestamp stamp, boolean unansweredOnly) throws RemoteException, FinderException {
return this.collectionToInqueryArray(getInquiryHome().findInqueries(serviceId, stamp, -1, unansweredOnly, is.idega.idegaweb.travel.data.InqueryBMPBean.getInqueryDateColumnName()));
}
/**
* @deprecated
*/
public Inquery[] getInqueries(int serviceId, IWTimestamp stamp, boolean unansweredOnly, String orderBy) throws RemoteException, FinderException{
return this.collectionToInqueryArray(getInquiryHome().findInqueries(serviceId, stamp, -1, unansweredOnly, orderBy));
}
public Inquery[] getInqueries(int serviceId, IWTimestamp stamp, boolean unansweredOnly, TravelAddress travelAddress) throws RemoteException, FinderException{
return getInqueries(serviceId, stamp, unansweredOnly, travelAddress, is.idega.idegaweb.travel.data.InqueryBMPBean.getInqueryDateColumnName());
}
public Inquery[] getInqueries(int serviceId, IWTimestamp stamp, boolean unansweredOnly, TravelAddress travelAddress, String orderBy) throws RemoteException, FinderException{
return this.collectionToInqueryArray(getInquiryHome().findInqueries(serviceId, stamp,-1, unansweredOnly, travelAddress, orderBy ));
}
public int sendInquery(String name,String email, IWTimestamp inqueryDate, int productId, int numberOfSeats, String comment, int bookingId, Reseller reseller, String referenceString) throws RemoteException, FinderException, CreateException {
if ( comment == null || comment.equals("")) {
comment = "Are the available seats this day";
}
try {
int returner = -1;
Inquery inq = ((is.idega.idegaweb.travel.data.InqueryHome)com.idega.data.IDOLookup.getHome(Inquery.class)).create();
inq.setAnswered(false);
inq.setEmail(email);
inq.setInqueryDate(inqueryDate.getTimestamp());
inq.setInquery(comment);
IWTimestamp postDate = new IWTimestamp(IWTimestamp.RightNow().getDate());
inq.setInqueryPostDate(postDate.getTimestamp());
inq.setName(name);
inq.setServiceID(productId);
inq.setNumberOfSeats(numberOfSeats);
inq.setBookingId(bookingId);
if(referenceString != null) {
inq.setAuthorizationString(referenceString);
inq.setInqueryType(INQUERYTYPE_CREDITCARD);
}
else {
inq.setInqueryType(INQUERYTYPE_GENERAL);
}
inq.store();
if (reseller != null) {
inq.addReseller(reseller);
// inq.addTo(reseller);
}
returner = ((Integer)inq.getPrimaryKey()).intValue();
// System.err.println("Inquirer : inq.getID() = "+returner);
return returner;
}catch (IDOAddRelationshipException are) {
throw new CreateException(are.getMessage());
}
}
public int inquiryResponse(IWContext iwc, IWResourceBundle iwrb, int inquiryId, boolean book, Supplier supplier) {
return inquiryResponse(iwc, iwrb, inquiryId, book, true, supplier, null);
}
public int inquiryResponse(IWContext iwc, IWResourceBundle iwrb, int inquiryId, boolean book, boolean sendMail, Supplier supplier) {
return inquiryResponse(iwc, iwrb, inquiryId, book, sendMail ,supplier, null);
}
public int inquiryResponse(IWContext iwc, IWResourceBundle iwrb, int inquiryId, boolean book, Supplier supplier, Reseller reseller) {
return inquiryResponse(iwc, iwrb, inquiryId, book, true, supplier, reseller);
}
public int inquiryResponse(IWContext iwc, IWResourceBundle iwrb, int inquiryId, boolean book, boolean sendMail, Supplier supplier, Reseller reseller) {
String mailHost = "mail.idega.is";
String mailSubject = "NAT "+iwrb.getLocalizedString("travel.idega.inquiry","Inquiry");
StringBuffer responseString = new StringBuffer();
javax.transaction.TransactionManager tm = com.idega.transaction.IdegaTransactionManager.getInstance();
try {
tm.begin();
com.idega.util.SendMail sm = new com.idega.util.SendMail();
Inquery inquery = ((is.idega.idegaweb.travel.data.InqueryHome)com.idega.data.IDOLookup.getHome(Inquery.class)).findByPrimaryKey(new Integer(inquiryId));
Booking booking = inquery.getBooking();
Service tempService = booking.getService();
List inquiries = getInquiryHome().create().getMultibleInquiries(inquery);
responseString.append(iwrb.getLocalizedString("travel.dear","Dear"));
responseString.append(" "+inquery.getName()+",\n\n");
responseString.append(iwrb.getLocalizedString("travel.regarding_you_inquiry_about","Regarding your inquiry about"));
responseString.append(" "+inquery.getNumberOfSeats()+" ");
responseString.append(iwrb.getLocalizedString("travel.spaces_for_the_service","spaces for the service"));
responseString.append(" \""+tempService.getName(iwc.getCurrentLocaleId())+"\" ");
if (inquiries.size() == 1) {
responseString.append(iwrb.getLocalizedString("travel.on_the","on the"));
responseString.append(" "+new IWTimestamp(booking.getBookingDate()).getLocaleDate(iwc));
}else {
booking = getInquiryHome().findByPrimaryKey(inquiries.get(0)).getBooking();
// booking = ((Inquery) inquiries.get(0)).getBooking();
Booking booking2 = getInquiryHome().findByPrimaryKey(inquiries.get(inquiries.size()-1)).getBooking();
// Booking booking2 = ((Inquery) inquiries.get(inquiries.size()-1)).getBooking();
responseString.append(new IWTimestamp(booking.getBookingDate()).getLocaleDate(iwc)+" - "+new IWTimestamp(booking2.getBookingDate()).getLocaleDate(iwc));
}
responseString.append("\n\n");
/**
* @todo hondlar svara inquiry sem er hluti af gr�bbu....
*/
if (book == false) {
responseString.append(iwrb.getLocalizedString("travel.request_is_denied","Request is denied."));
}else if (book == true) {
this.triggerActionEvent(BookerBean.COMMAND_BOOKING, booking.getID());
responseString.append(iwrb.getLocalizedString("travel.request_is_granted_booking_confirmed","Request is granted. Booking has been confimed"));
}
for (int i = 0; i < inquiries.size(); i++) {
inquery = getInquiryHome().findByPrimaryKey(inquiries.get(i));
// inquery = (Inquery) inquiries.get(i);
inquery.setAnswered(true);
inquery.setAnswerDate(IWTimestamp.getTimestampRightNow());
inquery.store();
if (book) {
booking = inquery.getBooking();
booking.setIsValid(true);
booking.store();
getBooker().invalidateCache(Integer.toString(inquery.getBookingId()));
}
}
Collection resellersCol = inquery.getResellers();
Reseller[] resellers = (Reseller[]) resellersCol.toArray(new Reseller[]{});
// Reseller[] resellers = (Reseller[]) inquery.findRelated((Reseller) com.idega.block.trade.stockroom.data.ResellerBMPBean.getStaticInstance(Reseller.class));
try {
if (supplier != null) {
if (sendMail) {
sm.send(supplier.getEmail().getEmailAddress(),inquery.getEmail(), "","",mailHost,mailSubject,responseString.toString());
}
if (reseller == null) { // if this is not a reseller deleting his own inquiry
if (resellers != null) { // if there was a reseller who send the inquiry
responseString = new StringBuffer();
responseString.append(iwrb.getLocalizedString("travel.regarding_you_inquiry_about","Regarding your inquiry about"));
responseString.append(" "+inquery.getNumberOfSeats()+" ");
responseString.append(iwrb.getLocalizedString("travel.spaces_for_the_service","spaces for the service"));
responseString.append(" \""+tempService.getName(iwc.getCurrentLocaleId())+"\" ");
responseString.append(iwrb.getLocalizedString("travel.for","for"));
responseString.append(" "+inquery.getName()+",\n\n");
if (inquiries.size() == 1) {
responseString.append(iwrb.getLocalizedString("travel.on_the","on the"));
responseString.append(" "+new IWTimestamp(booking.getBookingDate()).getLocaleDate(iwc));
}else {
booking = getInquiryHome().findByPrimaryKey(inquiries.get(0)).getBooking();
Booking booking2 = getInquiryHome().findByPrimaryKey(inquiries.get(inquiries.size()-1)).getBooking();
// booking = ((Inquery) inquiries.get(0)).getBooking();
// Booking booking2 = ((Inquery) inquiries.get(inquiries.size()-1)).getBooking();
responseString.append(new IWTimestamp(booking.getBookingDate()).getLocaleDate(iwc)+" - "+new IWTimestamp(booking2.getBookingDate()).getLocaleDate(iwc));
}
// responseString.append(iwrb.getLocalizedString("travel.on_the","on the"));
// responseString.append(" "+new IWTimestamp(booking.getBookingDate()).getLocaleDate(iwc));
responseString.append("\n\n");
if (book == false) {
responseString.append(iwrb.getLocalizedString("travel.request_is_denied","Request is denied."));
}else if (book == true) {
responseString.append(iwrb.getLocalizedString("travel.request_is_granted_booking_confirmed","Request is granted. Booking has been confimed"));
}
//responseString.append("T - Svar vi� fyrirspurn var�andi "+inquery.getNumberOfSeats()+" s�ti fyrir \""+inquery.getName()+"\" � fer�ina \""+tempService.getName()+"\" �ann "+new IWTimestamp(booking.getBookingDate()).getLocaleDate(iwc)+"\n");
for (int i = 0; i < resellers.length; i++) {
if (resellers[i].getEmail() != null) {
if (sendMail) {
sm.send(supplier.getEmail().getEmailAddress(),resellers[i].getEmail().getEmailAddress(), "","",mailHost,mailSubject,responseString.toString());
}
}
}
}
}
}
tm.commit();
}catch (javax.mail.internet.AddressException ae) {
throw ae;
}
return 0;
}catch (Exception e) {
e.printStackTrace(System.err);
try {
tm.rollback();
}catch (javax.transaction.SystemException sy) {
sy.printStackTrace(System.err);
}
return 1;
//displayForm(iwc, getInquiryResponseError());
}
}
public int getCreditcardInqueryRespons(IWContext iwc, IWResourceBundle iwrb, int inquiryId, boolean book, boolean sendMail, Supplier supplier, Reseller reseller) {
String mailHost = "mail.idega.is";
String mailSubject = iwrb.getLocalizedString("travel.booking_confirm","Booking confirmation");
StringBuffer responseString = new StringBuffer();
TransactionManager tm = IdegaTransactionManager.getInstance();
try {
tm.begin();
SendMail sm = new SendMail();
Inquery inquery = ((is.idega.idegaweb.travel.data.InqueryHome)com.idega.data.IDOLookup.getHome(Inquery.class)).findByPrimaryKey(new Integer(inquiryId));
GeneralBooking booking = inquery.getBooking();
List inqueries = getInquiryHome().create().getMultibleInquiries(inquery);
Service tempService = booking.getService();
if(inquery != null) {
responseString.append(iwrb.getLocalizedString("travel.dear","Dear"));
responseString.append(" ").append(inquery.getName()).append(",\n\n");
responseString.append(iwrb.getLocalizedString("travel.your_booking_for","Your booking for"));
responseString.append(" ").append(tempService.getName(iwc.getCurrentLocaleId())).append(" ");
if(!book) {
responseString.append(iwrb.getLocalizedString("travel.was_cancelled", "was cancelled."));
responseString.append(" ").append(iwrb.getLocalizedString("travel.service_not_available", "The service was not available.")).append("\n");
responseString.append(" "+iwrb.getLocalizedString("travel.payment_not_processed", "The payment was also cancelled."));
}
else if(book){
responseString.append(iwrb.getLocalizedString("travel.confirmed", "has been confirmed.")).append("\n");
responseString.append(iwrb.getLocalizedString("travel.booking_info", "Booking information")).append(":").append("\n");
responseString.append(iwrb.getLocalizedString("travel.name","Name")).append(": ").append(inquery.getName()).append("\n");
responseString.append(iwrb.getLocalizedString("travel.service", "Service")).append(": ").append(tempService.getName(iwc.getCurrentLocaleId())).append("\n");
if (inqueries.size() == 1) {
responseString.append(iwrb.getLocalizedString("travel.date", "Date")).append(": ").append(new IWTimestamp(booking.getBookingDate()).getLocaleDate(iwc)).append("\n");
}else {
responseString.append(iwrb.getLocalizedString("travel.dates", "Dates")).append(": ").append("\n");
Iterator i = inqueries.iterator();
while(i.hasNext()) {
Inquery inq = getInquiryHome().findByPrimaryKey(i.next());
responseString.append("\t").append(new IWTimestamp(inq.getInqueryDate()).getLocaleDate(iwc)).append("\n");
}
}
responseString.append(iwrb.getLocalizedString("travel.quantity", "Quantity")).append(": ").append(inquery.getNumberOfSeats()).append("\n");
responseString.append(iwrb.getLocalizedString("travel.payment_done", "The payment has been processed from your creditcard")).append("\n");
responseString.append(iwrb.getLocalizedString("travel.click_on_voucher_link", "Click on the link below to view your voucher")).append(": ").append("\n");
responseString.append(LinkGenerator.getVoucherLink(booking.getReferenceNumber()));
}
if(inqueries != null) {
Iterator iter = inqueries.iterator();
while(iter.hasNext()) {
Inquery inq = getInquiryHome().findByPrimaryKey(iter.next());
inq.setAnswered(true);
inq.setAnswerDate(IWTimestamp.getTimestampRightNow());
inq.store();
if (book) {
booking = inquery.getBooking();
booking.setIsValid(true);
booking.store();
getBooker().invalidateCache(Integer.toString(inq.getBookingId()));
}
}
}
sm.send(supplier.getEmail().getEmailAddress(),inquery.getEmail(), "","",mailHost,mailSubject,responseString.toString());
}
tm.commit();
}
catch (Exception e) {
e.printStackTrace();
try {
tm.rollback();
}
catch (SystemException e1) {
e1.printStackTrace();
}
}
return 1;
}
public Table getInquiryResponseError(IWResourceBundle iwrb) {
Table table = new Table();
Text text = new Text();
text.setFontStyle(TravelManager.theTextStyle);
text.setFontColor(TravelManager.WHITE);
text.setText(iwrb.getLocalizedString("travel.error_in_inquiry_response","Operation not completed. The e-mail addresses are probably wrong."));
table.add(text,1,1);
table.add(new BackButton(iwrb.getImage("buttons/back.gif")),1,2);
table.add(Text.NON_BREAKING_SPACE,1,3);
return table;
}
/**
* returns int[], int[0] is number of current booking, int[1] is total bookings number
*/
public int[] getMultibleInquiriesNumber(Inquery inquiry) throws RemoteException, CreateException, FinderException {
List list = getInquiryHome().create().getMultibleInquiries(inquiry);
int[] returner = new int[2];
if (list == null || list.size() < 2 ) {
returner[0] = 0;
returner[1] = 0;
}else {
returner[0] = list.indexOf(inquiry) + 1;
returner[1] = list.size();
}
return returner;
}
/**
* returns 0 if valid, else -1
*/
public int sendInquiryEmails(IWContext iwc, IWResourceBundle iwrb, int inquiryId) throws RemoteException{
boolean sendEmail = false;
boolean doubleSendSuccessful = false;
try {
InqueryHome iHome = (InqueryHome) IDOLookup.getHome(Inquery.class);
ProductHome pHome = (ProductHome) IDOLookup.getHome(Product.class);
SupplierHome sHome = (SupplierHome) IDOLookup.getHome(Supplier.class);
Inquery inq = iHome.findByPrimaryKey(new Integer(inquiryId));
Product prod = pHome.findByPrimaryKey(new Integer(inq.getServiceID()));
Supplier suppl = sHome.findByPrimaryKey(prod.getSupplierId());
Settings settings = suppl.getSettings();
List inqs = getInquiryHome().create().getMultibleInquiries(inq);
int inqsSize = inqs.size();
Inquery tempInq;
String mailSubject = "";
Email sEmail = suppl.getEmail();
String suppEmail = "";
if (sEmail != null) {
suppEmail = sEmail.getEmailAddress();
}
String inqEmail = inq.getEmail();
if (settings.getIfDoubleConfirmation()) {
sendEmail = true;
StringBuffer mailText = new StringBuffer();
try {
if(inq.getInqueryType().equals(INQUERYTYPE_CREDITCARD)) {
mailSubject = iwrb.getLocalizedString("travel.your_booking", "Your booking");
mailText.append(iwrb.getLocalizedString("travel.dear","Dear"));
mailText.append(" ").append(inq.getName()).append(",\n\n");
mailText.append(iwrb.getLocalizedString("travel.your_booking_for","Your booking for"));
mailText.append(" ").append(inq.getBooking().getService().getName(iwc.getCurrentLocaleId())).append(" ");
mailText.append(iwrb.getLocalizedString("travel.received", "has been received.")).append("\n");
mailText.append(iwrb.getLocalizedString("travel.booking_info", "Booking information")).append(":").append("\n");
mailText.append(iwrb.getLocalizedString("travel.name","Name")).append(": ").append(inq.getName()).append("\n");
mailText.append(iwrb.getLocalizedString("travel.service", "Service")).append(": ").append(inq.getBooking().getService().getName(iwc.getCurrentLocaleId())).append("\n");
if (inqs.size() == 1) {
mailText.append(iwrb.getLocalizedString("travel.date", "Date")).append(": ").append(new IWTimestamp(inq.getBooking().getBookingDate()).getLocaleDate(iwc)).append("\n");
}else {
mailText.append(iwrb.getLocalizedString("travel.dates", "Dates")).append(": ").append("\n");
Iterator i = inqs.iterator();
while(i.hasNext()) {
Inquery inquery = getInquiryHome().findByPrimaryKey(i.next());
mailText.append("\t").append(new IWTimestamp(inq.getInqueryDate()).getLocaleDate(iwc)).append("\n");
}
}
mailText.append(iwrb.getLocalizedString("travel.quantity", "Quantity")).append(": ").append(inq.getNumberOfSeats()).append("\n");
mailText.append(iwrb.getLocalizedString("travel.booking_being_handled", "As previously stated your booking is now being handled.")).append("\n");
mailText.append(iwrb.getLocalizedString("travel.payment_not_pocessed", "The payment has not been processed.")).append("\n");
mailText.append(iwrb.getLocalizedString("travel.receive_email", "You will receive an email as soon as the booking is confirmed."));
}
else {
mailSubject = iwrb.getLocalizedString("travel.inquery", "Inquery");
// mailText.append(iwrb.getLocalizedString("travel.inquiry.this_is_an_automatic_response_to_your_inquiry","This is an automatic response to your inquiry."));
mailText.append(iwrb.getLocalizedString("travel.inquiry_double_confirmation","This is an automatic response to your inquiry.\nIt will be answered as soon as possible."));
mailText.append("\n\n").append(iwrb.getLocalizedString("travel.your_inquiry_was", "Your inquiry was")).append(" : ");
mailText.append("\n").append(iwrb.getLocalizedString("travel.name", "Name ")).append(" : ").append(inq.getName());
mailText.append("\n").append(iwrb.getLocalizedString("travel.service","Service ")).append(" : ").append(getProductBusiness().getProductNameWithNumber(prod, true, iwc.getCurrentLocaleId()));
if (inqsSize == 1) {
mailText.append("\n").append(iwrb.getLocalizedString("travel.date", "Date ")).append(" : ").append(new IWTimestamp(inq.getInqueryDate()).getLocaleDate(iwc));
}else {
for (int i = 0; i < inqsSize; i++) {
tempInq = getInquiryHome().findByPrimaryKey(inqs.get(i));
// tempInq = (Inquery) inqs.get(i);
if (i == 0) {
mailText.append("\n").append(iwrb.getLocalizedString("travel.dates", "Dates :"));
}
mailText.append("\n\t").append(new IWTimestamp(tempInq.getInqueryDate()).getLocaleDate(iwc));
}
}
mailText.append("\n").append(iwrb.getLocalizedString("travel.seats", "Seats ")).append(" : ").append(inq.getNumberOfSeats());
mailText.append("\n\n").append(iwrb.getLocalizedString("travel.inquiry.reply_to_this_email_if_you_wish","Please reply to this email if you wish to make changes to your inquiry or if the information is incorrect."));
}
SendMail sm = new SendMail();
sm.send(suppEmail, inqEmail, "", "", "mail.idega.is", mailSubject,mailText.toString());
doubleSendSuccessful = true;
}catch (MessagingException me) {
doubleSendSuccessful = false;
me.printStackTrace(System.err);
}
}
if (settings.getIfEmailAfterOnlineBooking()) {
try {
String subject = "Inquiry";
StringBuffer mailText = new StringBuffer();
mailText.append(iwrb.getLocalizedString("travel.email_after_online_inquiry","You have just received an inquiry through nat.sidan.is."));
mailText.append("\n\n").append(iwrb.getLocalizedString("travel.the_inquiry_was", "The inquiry was")).append(" : ");
mailText.append("\n").append(iwrb.getLocalizedString("travel.name", "Name ")).append(" : ").append(inq.getName());
mailText.append("\n").append(iwrb.getLocalizedString("travel.service","Service ")).append(" : ").append(getProductBusiness().getProductNameWithNumber(prod, true, iwc.getCurrentLocaleId()));
if (inqsSize == 1) {
mailText.append("\n").append(iwrb.getLocalizedString("travel.date", "Date ")).append(" : ").append(new IWTimestamp(inq.getInqueryDate()).getLocaleDate(iwc));
}else {
for (int i = 0; i < inqsSize; i++) {
tempInq = getInquiryHome().findByPrimaryKey(inqs.get(i));
// tempInq = (Inquery) inqs.get(i);
if (i == 0) {
mailText.append("\n").append(iwrb.getLocalizedString("travel.dates", "Dates :"));
}
mailText.append("\n\t").append(new IWTimestamp(tempInq.getInqueryDate()).getLocaleDate(iwc));
}
}
// mailText.append("\n").append(iwrb.getLocalizedString("travel.date", "Date ")).append(" : ").append(new IWTimestamp(inq.getInqueryDate()).getLocaleDate(iwc));
mailText.append("\n").append(iwrb.getLocalizedString("travel.seats", "Seats ")).append(" : ").append(inq.getNumberOfSeats());
if (doubleSendSuccessful) {
mailText.append("\n\n").append(iwrb.getLocalizedString("travel.double_confirmation_has_been_sent","Double confirmation has been sent."));
}else {
mailText.append("\n\n").append(iwrb.getLocalizedString("travel.double_confirmation_has_not_been_sent","Double confirmation has NOT been sent."));
mailText.append("\n").append(" - ").append(iwrb.getLocalizedString("travel.email_was_probably_incorrect","E-mail was probably incorrect."));
subject = "Inquiry - double confirmation failed!";
}
SendMail sm = new SendMail();
sm.send(suppEmail, suppEmail, "", "", "mail.idega.is", subject,mailText.toString());
}catch (MessagingException me) {
me.printStackTrace(System.err);
}
}
return 0;
}catch (FinderException fe) {
fe.printStackTrace(System.err);
}catch (CreateException ce) {
ce.printStackTrace(System.err);
}catch (SQLException sql) {
sql.printStackTrace(System.err);
}
return -1;
}
public InqueryHome getInquiryHome() throws RemoteException {
return (InqueryHome) IDOLookup.getHome(Inquery.class);
}
public Inquery[] collectionToInqueryArray(Collection coll) {
return (Inquery[]) coll.toArray(new Inquery[]{});
}
private Booker getBooker() throws RemoteException {
return (Booker) IBOLookup.getServiceInstance(getIWApplicationContext(), Booker.class);
}
private ProductBusiness getProductBusiness() throws RemoteException {
return (ProductBusiness) IBOLookup.getServiceInstance(getIWApplicationContext(), ProductBusiness.class);
}
}