package is.idega.idegaweb.golf.service;
import com.idega.presentation.Image;
import java.util.*;
import is.idega.idegaweb.golf.entity.*;
import java.sql.SQLException;
public class ListedMember implements Comparable {
private int id;
private Name name;
private String eMail;
private String address;
private Character payment;
private Float handicap;
private Image img = new Image();
public ListedMember() {
id = 0;
name = new Name();
eMail = " - ";
address = " - ";
payment = new Character('o');
handicap = new Float(-1);
img = null;
}
public ListedMember(int memberId, String first, String middle, String last, String addr, String e_mail, Character pay, Float handi) {
id = memberId;
name = new Name(first, middle, last);
eMail = "";
address = "";
payment = new Character('o');
handicap = new Float(-1);
if(addr != null)
this.address = addr;
if(e_mail != null)
this.eMail = e_mail;
if(pay != null)
this.payment = pay;
if(handi != null)
this.handicap = handi;
}
public ListedMember(Member member) throws SQLException{
if(member.getName() != null)
setName(member.getName());
if(member.getAddress()[0].getName() != null)
setAddress(member.getAddress()[0].getName());
if(member.getEmail() != null)
setEmail(member.getEmail());
setHandicap(member.getHandicap());
setID(member.getID());
}
public ListedMember(int memberId, String first, String middle, String last, String addr, String e_mail, char pay, float handi) {
id = memberId;
name = new Name(first, middle, last);
eMail = "";
address = "";
payment = new Character(pay);
handicap = new Float(handi);
if(addr != null)
this.address = addr;
if(e_mail != null)
this.eMail = e_mail;
}
public ListedMember(int memberId, String fullName, String addr, String e_mail, char pay, float handi) {
id = memberId;
name = new Name();
name.setName(fullName);
eMail = "";
address = "";
payment = new Character(pay);
handicap = new Float(handi);
if(addr != null)
this.address = addr;
if(e_mail != null)
this.eMail = e_mail;
}
public int compareTo(Object o) {
// "convert" the objects to members... only members can be compared...
ListedMember p = (ListedMember) o;
// check on first name first...
int result = name.getFirstName().compareTo(p.getFirstName());
// if equal, check middle name...
if (result == 0)
result = name.getMiddleName().compareTo(p.getMiddleName());
// if equal, check last name...
if (result == 0)
result = name.getLastName().compareTo(p.getLastName());
return result;
}
public int getID() {
return id;
}
public String getFirstName() {
return name.getFirstName();
}
public String getMiddleName() {
return name.getMiddleName();
}
public String getLastName() {
return name.getLastName();
}
public void setMiddleName(String middle) {
name.setMiddleName(middle);
}
public void setFirstName(String firstName) {
name.setFirstName(firstName);
}
public void setLastName(String lastName) {
name.setLastName(lastName);
}
public String getName() {
return name.getName();
}
public void setName(String fullName) {
name.setName(fullName);
}
public String getAddress() {
return address;
}
public String getEmail() {
return eMail;
}
public Float getHandicap() {
return handicap;
}
public Character getPayment() {
return this.payment;
}
public Image getImage() {
return img;
}
public void setImage(Image img, char payment) {
this.img = img;
this.payment = new Character(payment);
}
public void setAddress(String address) {
if(address != null)
this.address = address;
}
public void setEmail(String eMail) {
if(eMail != null)
this.eMail = eMail;
}
public void setHandicap(float handicap) {
this.handicap = new Float(handicap);
}
public void setHandicap(Float handicap) {
this.handicap = handicap;
}
/*public void setPayment(Character payment) {
this.payment = payment;
}*/
public void setPayment(char payment) {
this.payment = new Character(payment);
}
public void setID(int memberId) {
id = memberId;
}
class Name {
private String firstName;
private String middleName;
private String lastName;
public Name() {
this.firstName = "";
this.lastName = "";
this.middleName = "";
}
public Name(String first, String middle, String last) {
firstName = "";
middleName = "";
lastName = "";
if(first != null)
firstName = first;
if(middle != null)
middleName = middle;
if(last != null)
lastName = last;
}
public String getName() {
if(this.middleName.equals(""))
return this.firstName+" "+this.lastName;
else return this.firstName+" "+this.middleName+" "+this.lastName;
}
public String getFirstName() {
return this.firstName;
}
public String getMiddleName() {
return this.middleName;
}
public String getLastName() {
return this.lastName;
}
public void setMiddleName(String middle) {
if(middle != null)
this.middleName = middle;
}
public void setFirstName(String firstName) {
if(firstName != null)
this.firstName = firstName;
}
public void setLastName(String lastName) {
if(lastName != null)
this.lastName = lastName;
}
public void setName(String name) {
StringTokenizer token = new StringTokenizer(name);
setFirstName(((String)token.nextElement()));
if(token.countTokens() > 1) {
setMiddleName(((String)token.nextElement()));
setLastName(((String)token.nextElement()));
}
else if(token.countTokens() > 0)
setLastName(((String)token.nextElement()));
}
}
}