X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2FdbObjects%2FUser.java;h=a370d61a7a261ab8dfe2b90d07efc03b92c36ad9;hb=87c6ea794b343732e32514cba17d047c6fc196a4;hp=b42b6d51f6874f1314511ee2367e9b0467b298d1;hpb=e0d60e5c156b4ab7bf00084d03f8c6bd98cca817;p=gigi.git diff --git a/src/org/cacert/gigi/dbObjects/User.java b/src/org/cacert/gigi/dbObjects/User.java index b42b6d51..a370d61a 100644 --- a/src/org/cacert/gigi/dbObjects/User.java +++ b/src/org/cacert/gigi/dbObjects/User.java @@ -42,12 +42,14 @@ public class User extends CertificateOwner { name = new Name(rs.getString("fname"), rs.getString("lname"), rs.getString("mname"), rs.getString("suffix")); dob = rs.getDate("dob"); email = rs.getString("email"); + String localeStr = rs.getString("language"); if (localeStr == null || localeStr.equals("")) { locale = Locale.getDefault(); } else { locale = Language.getLocaleFromString(localeStr); } + GigiPreparedStatement psg = DatabaseConnection.getInstance().prepare("SELECT permission FROM user_groups WHERE user=? AND deleted is NULL"); psg.setInt(1, rs.getInt("id")); GigiResultSet rs2 = psg.executeQuery(); @@ -59,15 +61,15 @@ public class User extends CertificateOwner { public User() {} - public String getFname() { + public String getFName() { return name.fname; } - public String getLname() { + public String getLName() { return name.lname; } - public String getMname() { + public String getMName() { return name.mname; } @@ -75,7 +77,7 @@ public class User extends CertificateOwner { return name; } - public void setMname(String mname) { + public void setMName(String mname) { this.name.mname = mname; } @@ -87,11 +89,11 @@ public class User extends CertificateOwner { this.name.suffix = suffix; } - public Date getDob() { + public Date getDoB() { return dob; } - public void setDob(Date dob) { + public void setDoB(Date dob) { this.dob = dob; } @@ -103,11 +105,11 @@ public class User extends CertificateOwner { this.email = email; } - public void setFname(String fname) { + public void setFName(String fname) { this.name.fname = fname; } - public void setLname(String lname) { + public void setLName(String lname) { this.name.lname = lname; } @@ -195,20 +197,6 @@ public class User extends CertificateOwner { return points; } - @Override - public boolean equals(Object obj) { - if ( !(obj instanceof User)) { - return false; - } - User s = (User) obj; - return name.equals(s.name) && email.equals(s.email) && dob.toString().equals(s.dob.toString()); // This - // is - // due - // to - // day - // cutoff - } - /** * Gets the maximum allowed points NOW. Note that an assurance needs to * re-check PoJam as it has taken place in the past. @@ -238,6 +226,7 @@ public class User extends CertificateOwner { if (exp >= 50) { points += 5; } + return points; } @@ -337,15 +326,17 @@ public class User extends CertificateOwner { public void updateUserData() throws GigiApiException { synchronized (Notary.class) { + // FIXME: No assurance, not no points. if (getAssurancePoints() != 0) { throw new GigiApiException("No change after assurance allowed."); } + GigiPreparedStatement update = DatabaseConnection.getInstance().prepare("UPDATE users SET fname=?, lname=?, mname=?, suffix=?, dob=? WHERE id=?"); - update.setString(1, getFname()); - update.setString(2, getLname()); - update.setString(3, getMname()); + update.setString(1, getFName()); + update.setString(2, getLName()); + update.setString(3, getMName()); update.setString(4, getSuffix()); - update.setDate(5, getDob()); + update.setDate(5, getDoB()); update.setInt(6, getId()); update.executeUpdate(); } @@ -433,6 +424,7 @@ public class User extends CertificateOwner { if (co instanceof User) { return (User) co; } + return null; } @@ -453,7 +445,6 @@ public class User extends CertificateOwner { GigiResultSet rs = ps.executeQuery(); while (rs.next()) { results.add(User.getById(rs.getInt(1))); - System.out.println("Found user"); } return results.toArray(new User[results.size()]); } @@ -468,7 +459,7 @@ public class User extends CertificateOwner { return getAssurancePoints() > 50 && isInGroup(Group.getByString("codesigning")); case 3: case 4: - return false; // has an orga + return getOrganisations().size() > 0; default: return false; }