Skip to content
This repository has been archived by the owner on May 12, 2021. It is now read-only.

Commit

Permalink
(RAVE-771) Updated the user profile page to work with entity id. Now …
Browse files Browse the repository at this point in the history
…its working for all users.

git-svn-id: https://svn.apache.org/repos/asf/rave/trunk@1376704 13f79535-47bb-0310-9956-ffa450edef68
  • Loading branch information
ramindersingh committed Aug 23, 2012
1 parent 50f939e commit 9a50212
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 15 deletions.
Expand Up @@ -62,24 +62,25 @@ public ProfileController(UserService userService, PageService pageService) {
/**
* Views the main page of another user's profile
*
* @param username username (allows for a period in the username)
* @param userid userid
* @param model {@link Model} map
* @param referringPageId page reference id (optional)
* @return the view name of the user profile page
*/
@RequestMapping(value = {"/{username:.*}"}, method = RequestMethod.GET)
public String viewProfile(@PathVariable String username, ModelMap model, @RequestParam(required = false) Long referringPageId) {
logger.debug("Viewing person profile for: " + username);
User user = userService.getUserByUsername(username);
Page personProfilePage = pageService.getPersonProfilePage(user.getId());

@RequestMapping(value = {"/{userid:.*}"}, method = RequestMethod.GET)
public String viewProfile(@PathVariable Long userid, ModelMap model, @RequestParam(required = false) Long referringPageId) {
User user = userService.getUserById(userid);
logger.debug("Viewing person profile for: " + user.getUsername());

Page personProfilePage = pageService.getPersonProfilePage(user.getId());
addAttributesToModel(model, user, referringPageId);
model.addAttribute(ModelKeys.PAGE, personProfilePage);
String view = ViewNames.getPersonPageView(personProfilePage.getPageLayout().getCode());
List<Person> friendRequests = userService.getFriendRequestsReceived(username);
List<Person> friendRequests = userService.getFriendRequestsReceived(user.getUsername());
addNavItemsToModel(view, model, referringPageId, user, friendRequests);
return view;
}

/**
* Updates the user's personal information
*
Expand Down
Expand Up @@ -72,14 +72,13 @@ public static void addNavItemsToModel(String view, Model model, long referringPa
public static NavigationMenu getTopMenu(String view, long referringPageId, User user, boolean addStoreLink) {
NavigationMenu menu = new NavigationMenu("topnav");
if(view.startsWith(ViewNames.PAGE) || view.startsWith(ViewNames.MOBILE_HOME)) {
NavigationItem profile = new NavigationItem("page.profile.title", getDisplayName(user), "/app/person/" + user.getUsername() + "?referringPageId=" + referringPageId);
NavigationItem profile = new NavigationItem("page.profile.title", getDisplayName(user), "/app/person/" + user.getId() + "?referringPageId=" + referringPageId);
menu.addNavigationItem(profile);

if(addStoreLink){
NavigationItem store = new NavigationItem("page.store.title", null, "/app/store?referringPageId=" + referringPageId);
menu.addNavigationItem(store);
}

NavigationItem admin = getAdminItem();
menu.addNavigationItem(admin);

Expand Down
Expand Up @@ -106,13 +106,13 @@ public void viewPerson_ShouldAddAttributeForUser() {
personProfile.setPageLayout(pageLayout);
List<Person> personObjects = new ArrayList<Person>();

expect(userService.getUserByUsername(username)).andReturn(user).once();
expect(userService.getUserById(USER_ID)).andReturn(user).once();
expect(pageService.getPersonProfilePage(user.getId())).andReturn(personProfile);
expect(userService.getFriendRequestsReceived(username)).andReturn(personObjects);

replay(userService, pageService);

String view = profileController.viewProfile(username, model, null);
String view = profileController.viewProfile(USER_ID, model, null);

//assert that the model is not null
assertThat(model, CoreMatchers.notNullValue());
Expand All @@ -137,17 +137,17 @@ public void viewPersonProfile_invalidUser() {
final User user = null;
final ModelMap model = new ModelMap();
final int modelSize = 4;
final String username="Canonical";
final String username="canonical";
Page personProfile = new PageImpl();
PageLayout pageLayout = new PageLayoutImpl();
pageLayout.setCode("person_profile");
personProfile.setPageLayout(pageLayout);

expect(userService.getUserByUsername(username)).andThrow(new UsernameNotFoundException("Username does not exist"));
expect(userService.getUserById(USER_ID)).andThrow(new UsernameNotFoundException("Username does not exist"));

replay(userService, pageService);

profileController.viewProfile(username, model, null);
profileController.viewProfile(USER_ID, model, null);

verify(userService, pageService);
}
Expand Down

0 comments on commit 9a50212

Please sign in to comment.