Roster/src/java/org/thdl/roster/pages/forms/ContactInfoPage.java

70 lines
2.1 KiB
Java
Executable File

package org.thdl.roster.pages.forms;
import java.util.List;
import java.util.LinkedList;
import org.apache.torque.*;
import org.apache.tapestry.html.BasePage;
import org.apache.tapestry.IRequestCycle;
import org.apache.tapestry.IEngine;
import org.apache.tapestry.PageRedirectException;
import org.apache.tapestry.ApplicationRuntimeException;
import org.thdl.roster.*;
import org.thdl.roster.om.*;
public class ContactInfoPage extends MemberFormSeries
{
//tapestry listeners
public void processForm(IRequestCycle cycle)
{
Visit visit = (Visit) getVisit();
Member member = (Member) visit.getMember();
member.save( visit.getThdlUser().getId() );
try
{
if ( member instanceof Person )
{
Person person = (Person)member;
person.getPersonData().setFirstname( visit.getThdlUser().getFirstname() );
person.getPersonData().setLastname( visit.getThdlUser().getLastname() );
person.getPersonData().setMiddlename( visit.getThdlUser().getMiddlename() );
}
member.getContactInfo().getAddress().save();
member.getContactInfo().getPhoneRelatedByPhone().save();
member.getContactInfo().getPhoneRelatedByFax().save();
member.getContactInfo().setAddressKey( member.getContactInfo().getAddress().getPrimaryKey() );
member.getContactInfo().setPhoneRelatedByPhoneKey( member.getContactInfo().getPhoneRelatedByPhone().getPrimaryKey() );
member.getContactInfo().setPhoneRelatedByFaxKey( member.getContactInfo().getPhoneRelatedByFax().getPrimaryKey() );
member.getContactInfo().save();
member.setContactInfoKey( member.getContactInfo().getPrimaryKey() );
member.save();
}
catch (Exception e )
{
throw new ApplicationRuntimeException( e );
}
}
public void detach()
{
setNextPage( "Background" );
super.detach();
}
//constructors
public ContactInfoPage()
{
try
{
if ( !Torque.isInit() )
{
Global global = (Global) getGlobal();
Torque.init( global.getTorqueConfig() );
}
}
catch ( TorqueException te )
{
throw new ApplicationRuntimeException( "Torque Exception says: " + te.getMessage(), te );
}
setNextPage("Background");
}
}