View Javadoc

1   package org.musicontroller.gui.admin;
2   
3   import java.util.Date;
4   import java.util.List;
5   
6   import org.apache.hivemind.util.PropertyUtils;
7   import org.apache.tapestry.IPage;
8   import org.apache.tapestry.IRequestCycle;
9   import org.apache.tapestry.html.BasePage;
10  import org.musicontroller.security.IUser;
11  import org.musicontroller.security.Role;
12  import org.musicontroller.security.User;
13  import org.musicontroller.service.UserService;
14  import org.varienaja.util.DateTools;
15  
16  /**
17   * @author Varienaja
18   * @version $Id: Usermanagement.java,v 1.1 2010/03/16 18:55:43 varienaja Exp $
19   */
20  public abstract class Usermanagement extends BasePage {
21  	public abstract UserService getUserService();
22  	
23  	public abstract void setUser(IUser user);
24  	public abstract IUser getUser();
25  	
26  	public abstract String getFeedback();
27  	public abstract void setFeedback(String feedback);
28  	
29  	/**
30  	 * A list of all Users.
31  	 * @return The userlist.
32  	 */
33  	public List<IUser> getUsers() {
34  		return getUserService().listUsers();
35  	}
36  	
37  	/**
38  	 * @return The role(s) of the user as a readable string.
39  	 */
40  	public String getRoles() {
41  		StringBuilder sb = new StringBuilder();
42  		for(Role role : getUser().getRoles()) {
43  			sb.append(role.getName());
44  			sb.append(" ");
45  		}
46  		return sb.toString();
47  	}
48  	
49  	public IPage onAddUser(IRequestCycle cycle) {
50  		IPage page = cycle.getPage("admin/Adduser");
51  		PropertyUtils.write(page, "user", new User());
52  		return page;
53  	}
54  	
55  	public IPage onEditUser(IRequestCycle cycle, long userid) {
56  		IPage page = cycle.getPage("admin/Adduser");
57  		PropertyUtils.write(page, "user", getUserService().getUserById(userid));
58  		return page;
59  	}
60  	
61  	public String getExpiryDate() {
62  		Date d = getUser().getExpiryDate();
63  		return d == null ? "" : DateTools.formatDate(d,"dd-MM-yyyy");
64  	}
65  	
66  	
67  }