Changeset 1041
- Timestamp:
- 06/24/09 02:05:21 (4 years ago)
- Location:
- trunk
- Files:
-
- 15 modified
-
mpdb-client/src/edu/rpi/metpetdb/client/ui/objects/details/SampleDetails.java (modified) (1 diff)
-
mpdb-client/src/edu/rpi/metpetdb/client/ui/project/ProjectInvite.java (modified) (4 diffs)
-
mpdb-client/src/edu/rpi/metpetdb/client/ui/user/UserProjectsListEx.java (modified) (1 diff)
-
mpdb-common/src/edu/rpi/metpetdb/client/locale/LocaleText.java (modified) (1 diff)
-
mpdb-common/src/edu/rpi/metpetdb/client/locale/LocaleText.properties (modified) (1 diff)
-
mpdb-common/src/edu/rpi/metpetdb/client/model/Invite.java (modified) (1 diff)
-
mpdb-common/src/edu/rpi/metpetdb/client/model/Project.java (modified) (2 diffs)
-
mpdb-common/src/edu/rpi/metpetdb/client/model/User.java (modified) (2 diffs)
-
mpdb-common/src/edu/rpi/metpetdb/client/service/ProjectService.java (modified) (1 diff)
-
mpdb-common/src/edu/rpi/metpetdb/client/service/ProjectServiceAsync.java (modified) (1 diff)
-
mpdb-server/schema/metpetdb-perms.sql (modified) (1 diff)
-
mpdb-server/src/edu/rpi/metpetdb/server/dao/Project.hbm.xml (modified) (1 diff)
-
mpdb-server/src/edu/rpi/metpetdb/server/dao/User.hbm.xml (modified) (1 diff)
-
mpdb-server/src/edu/rpi/metpetdb/server/dao/impl/ProjectDAO.java (modified) (3 diffs)
-
mpdb-server/src/edu/rpi/metpetdb/server/impl/ProjectServiceImpl.java (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/mpdb-client/src/edu/rpi/metpetdb/client/ui/objects/details/SampleDetails.java
r1011 r1041 198 198 }); 199 199 addSubsample.addStyleName(CSS.ADDLINK); 200 subsamples_ft.setWidget(0, 1, addSubsample); 200 subsamples_ft.setWidget(0, 2, addSubsample); 201 202 final MLink makeSubsamplesPublic = new MLink(LocaleHandler.lc_text 203 .makeSubsamplePublic(), new ClickListener() { 204 public void onClick(final Widget sender) { 205 206 } 207 }); 208 makeSubsamplesPublic.addStyleName(CSS.BETA); 209 subsamples_ft.setWidget(0, 1, makeSubsamplesPublic); 201 210 202 211 Label Subsamples_label = new Label(LocaleHandler.lc_text.subsamples());; -
trunk/mpdb-client/src/edu/rpi/metpetdb/client/ui/project/ProjectInvite.java
r1015 r1041 1 1 package edu.rpi.metpetdb.client.ui.project; 2 2 3 import com.google.gwt.user.client.History; 3 4 import com.google.gwt.user.client.rpc.AsyncCallback; 4 5 import com.google.gwt.user.client.ui.Button; … … 11 12 import edu.rpi.metpetdb.client.model.User; 12 13 import edu.rpi.metpetdb.client.ui.MpDb; 14 import edu.rpi.metpetdb.client.ui.TokenSpace; 13 15 import edu.rpi.metpetdb.client.ui.commands.ServerOp; 14 16 import edu.rpi.metpetdb.client.ui.input.ObjectEditorPanel; … … 46 48 if(result != null){ 47 49 i.setMember_id(result.getId()); 48 MpDb.project_svc.saveInvite(i, ac); 49 } 50 else{ 51 //TODO throw an error about the user not existing 50 new ServerOp<Invite>() { 51 public void begin() { 52 MpDb.project_svc.saveInvite(i, this); 53 } 54 public void onSuccess(final Invite result){ 55 new ServerOp<Project> () { 56 public void begin() { 57 AsyncCallback<Project> ac; 58 MpDb.project_svc.details(result.getProject_id(), this); 59 } 60 public void onSuccess(final Project result){ 61 History.newItem(TokenSpace.descriptionOf((Project) result)); 62 } 63 }.begin(); 64 } 65 }.begin(); 66 52 67 } 53 68 } … … 56 71 57 72 protected void deleteBean(final AsyncCallback<Object> ac) {} 58 59 protected void onSaveCompletion(final Project result) {60 /*if (savedNew)61 MpDb.currentUser().getProjects().add((Project) result);62 this.show(result);*/63 }64 73 }; 65 74 Button save = p_user.getSaveButton(); -
trunk/mpdb-client/src/edu/rpi/metpetdb/client/ui/user/UserProjectsListEx.java
r947 r1041 53 53 } 54 54 }); 55 56 //Look for invites and display a link only if invites exist 57 new ServerOp() { 58 public void begin(){ 59 MpDb.project_svc.getInvitesForUser(MpDb.currentUser().getId(), this); 60 } 61 public void onSuccess(final Object result){ 62 List<Project> invites = (List<Project>) result; 63 if(invites != null && invites.size() > 0){ 64 final MLink newInvites = new MLink("You have " + invites.size() + " project invite" + 65 (invites.size() > 1 ? "s!" : "!"), 66 new ClickListener(){ 67 public void onClick(Widget sender) { 68 //TODO: go to my invites page 69 } 70 }); 71 newInvites.addStyleName("beta"); 72 header1.setWidget(0, 1, newInvites); 73 } 74 } 75 }.begin(); 55 76 56 77 final MLink simple = new MLink("Simple", new ClickListener() { -
trunk/mpdb-common/src/edu/rpi/metpetdb/client/locale/LocaleText.java
r1015 r1041 40 40 String addSubsampleDescription(String sampleNumber); 41 41 String noSubsamplesFound(); 42 String makeSubsamplePublic(); 42 43 43 44 /* Mineral Analyses */ -
trunk/mpdb-common/src/edu/rpi/metpetdb/client/locale/LocaleText.properties
r1015 r1041 43 43 addSubsampleDescription = Use the form below to add a subsample to {0} 44 44 noSubsamplesFound = No subsamples associated with this sample were found. 45 makeSubsamplePublic = Make Subsamples Public 45 46 46 47 # Chemical Analyses -
trunk/mpdb-common/src/edu/rpi/metpetdb/client/model/Invite.java
r1015 r1041 11 11 12 12 public boolean mIsNew() { 13 return project_id == 0;13 return true; 14 14 } 15 15 -
trunk/mpdb-common/src/edu/rpi/metpetdb/client/model/Project.java
r1015 r1041 20 20 private Set<Sample> samples; 21 21 22 private Set< Invite> invites;22 private Set<User> invites; 23 23 24 24 public int getId() { … … 82 82 } 83 83 84 public Set< Invite> getInvites() {84 public Set<User> getInvites() { 85 85 if(invites == null) 86 invites = new HashSet< Invite>();86 invites = new HashSet<User>(); 87 87 return invites; 88 88 } 89 89 90 public void setInvites(final Set< Invite> i) {90 public void setInvites(final Set<User> i) { 91 91 invites = i; 92 92 } -
trunk/mpdb-common/src/edu/rpi/metpetdb/client/model/User.java
r1015 r1041 36 36 @ContainedIn 37 37 private Set<Sample> samples; 38 private Set< Invite> invites;38 private Set<Project> invites; 39 39 private Role role; 40 40 private Integer rank; … … 158 158 } 159 159 160 public Set< Invite> getInvites() {160 public Set<Project> getInvites() { 161 161 if(invites == null) 162 invites = new HashSet< Invite>();162 invites = new HashSet<Project>(); 163 163 return invites; 164 164 } 165 165 166 public void setInvites(final Set< Invite> i) {166 public void setInvites(final Set<Project> i) { 167 167 invites = i; 168 168 } -
trunk/mpdb-common/src/edu/rpi/metpetdb/client/service/ProjectService.java
r1015 r1041 56 56 57 57 Invite saveInvite(Invite i) throws MpDbException; 58 59 List<Project> getInvitesForUser(int id) throws MpDbException; 58 60 } -
trunk/mpdb-common/src/edu/rpi/metpetdb/client/service/ProjectServiceAsync.java
r1015 r1041 30 30 AsyncCallback<Results<User>> ac); 31 31 32 void saveInvite(Invite i, AsyncCallback<User> ac); 32 void saveInvite(Invite i, AsyncCallback<Invite> ac); 33 34 void getInvitesForUser(int id, AsyncCallback<List<Project>> ac); 33 35 } -
trunk/mpdb-server/schema/metpetdb-perms.sql
r963 r1041 1 1 GRANT select,insert ,delete ON minerals TO @APPUSER@; 2 2 GRANT select,insert ,delete ON mineral_relationships TO @APPUSER@; 3 GRANT select,insert,update,delete ON project_invites TO @APPUSER@; 3 4 GRANT select,insert,update,delete ON projects TO @APPUSER@; 4 5 GRANT select,insert ,delete ON project_members TO @APPUSER@; -
trunk/mpdb-server/src/edu/rpi/metpetdb/server/dao/Project.hbm.xml
r1015 r1041 63 63 order by p.owner.emailAddress 64 64 </query> 65 66 65 67 66 <query name="Project.samples,size"> -
trunk/mpdb-server/src/edu/rpi/metpetdb/server/dao/User.hbm.xml
r1019 r1041 62 62 where u.id = :id 63 63 </query> 64 65 <query name="User.invites"> 66 select invite 67 from User u 68 inner join u.invites as invite 69 where u.id = :id 70 </query> 64 71 65 72 <query name="User.byEmailAddress"> -
trunk/mpdb-server/src/edu/rpi/metpetdb/server/dao/impl/ProjectDAO.java
r1015 r1041 2 2 3 3 import java.util.List; 4 import java.util.Set; 4 5 5 6 import org.hibernate.Query; … … 35 36 final Query q = namedQuery("Project.byId"); 36 37 q.setLong("id", inst.getId()); 37 if (getResult(q) != null) 38 return (Project) getResult(q); 38 Project p = (Project) getResult(q); 39 if (p != null) 40 return p; 39 41 } 40 42 … … 85 87 return new Results<User>(size, l); 86 88 } 89 90 public Invite saveInvite(Invite i, User u) throws MpDbException { 91 Project p = new Project(); 92 p.setId(i.getProject_id()); 93 p = fill(p); 94 p.getInvites().add(u); 95 save(p); 96 return i; 97 } 98 99 public List<Project> getInvitesForUser(int id) throws MpDbException { 100 final Query q = namedQuery("User.invites"); 101 q.setInteger("id", id); 102 final List<Project> l = (List<Project>) getResults(q); 103 return l; 104 } 87 105 } -
trunk/mpdb-server/src/edu/rpi/metpetdb/server/impl/ProjectServiceImpl.java
r1015 r1041 17 17 import edu.rpi.metpetdb.server.dao.impl.SampleDAO; 18 18 import edu.rpi.metpetdb.server.dao.impl.UserDAO; 19 import edu.rpi.metpetdb.server.dao.impl.InviteDAO;20 19 21 20 public class ProjectServiceImpl extends MpDbServlet implements ProjectService { … … 62 61 63 62 public Invite saveInvite(Invite i) throws MpDbException { 64 return (new InviteDAO(this.currentSession()).save(i)); 63 User u = new User(); 64 u.setId(i.getMember_id()); 65 u = (new UserDAO(this.currentSession())).fill(u); 66 new ProjectDAO(this.currentSession()).saveInvite(i, u); 67 commit(); 68 return i; 69 } 70 71 public List<Project> getInvitesForUser(int id) throws MpDbException { 72 return new ProjectDAO(currentSession()).getInvitesForUser(id); 65 73 } 66 74 }
