Package org.apache.rave.portal.model

Examples of org.apache.rave.portal.model.User



    @Override
    public void sendPasswordReminder(NewUser newUser) {
        log.debug("Calling send password change link for user {}", newUser);
        User user = userRepository.getByUserEmail(newUser.getEmail());
        if (user == null) {
            throw new IllegalArgumentException("Could not find user for email " + newUser.getEmail());
        }
        // create user hash:
        String input = user.getEmail() + user.getUsername() + String.valueOf(user.getEntityId()) + System.nanoTime();
        // hash needs to be URL friendly:
        String safeString = new String(Base64.encode(passwordEncoder.encode(input).getBytes()));
        String  hashedInput = safeString.replaceAll("[/=]", "A");
        user.setForgotPasswordHash(hashedInput);
        user.setForgotPasswordTime(Calendar.getInstance().getTime());
        userRepository.save(user);
        String to = user.getUsername() + " <" + user.getEmail() + '>';
        Map<String, Object> templateData = new HashMap<String, Object>();
        templateData.put("user", user);
        templateData.put("reminderUrl", baseUrl + hashedInput);
        emailService.sendEmail(to, passwordReminderSubject, passwordReminderTemplate, templateData);
    }
View Full Code Here


    public boolean isValidReminderRequest(String forgotPasswordHash, int nrOfMinutesValid) {
        if (StringUtils.isBlank(forgotPasswordHash)) {
            return false;
        }

        User userForHash = userRepository.getByForgotPasswordHash(forgotPasswordHash);
        if (userForHash == null) {
            return false;
        }
        Date requestTime = userForHash.getForgotPasswordTime();
        Calendar expiredDate = Calendar.getInstance();
        expiredDate.add(Calendar.MINUTE, nrOfMinutesValid);

        if (requestTime == null || requestTime.after(expiredDate.getTime())) {
            // reset,  this is invalid state
            userForHash.setForgotPasswordHash(null);
            userForHash.setForgotPasswordTime(null);
            userRepository.save(userForHash);
            return false;
        }
        return true;
    }
View Full Code Here

    final NewUser newUser = new NewUser();
    final BindingResult errors = createNiceMock(BindingResult.class);
    final String username = "canonical"; //specified username already exists in database
    final String password = "password";
    final String confirmPassword = password;
    final User existingUser = new User();
    List<ObjectError> errorList = new ArrayList<ObjectError>();
    final ObjectError error = new ObjectError("username.exists", "Username already exists");
   
    newUser.setUsername(username);
    newUser.setPassword(password);
    newUser.setConfirmPassword(confirmPassword);
   
    existingUser.setUsername(username);
    existingUser.setPassword(password);
   
    errorList.add(error);


    expect(errors.hasErrors()).andReturn(true).anyTimes();   
View Full Code Here

   * @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.getEntityId());
        addAttributesToModel(model, user, referringPageId);
        model.addAttribute(ModelKeys.PAGE, personProfilePage);
    return ViewNames.getPersonPageView(personProfilePage.getPageLayout().getCode());
  }
View Full Code Here

    public String updateProfile(ModelMap model,
                                @RequestParam(required = false) Long referringPageId,
                                @ModelAttribute("updatedUser") User updatedUser) {
        logger.info("Updating " + updatedUser.getUsername() + " profile information");

        User user = userService.getAuthenticatedUser();

        //set the updated fields for optional information
        user.setGivenName(updatedUser.getGivenName());
        user.setFamilyName(updatedUser.getFamilyName());
        user.setDisplayName(updatedUser.getDisplayName());
        user.setAboutMe(updatedUser.getAboutMe());
        user.setStatus(updatedUser.getStatus());
        user.setEmail(updatedUser.getEmail());

        //update the user profile
        userService.updateUserProfile(user);

        //set about tag page as default page for the changes to be visible
        addAttributesToModel(model, user, referringPageId);

        return ViewNames.REDIRECT + "app/person/" + user.getUsername();
    }
View Full Code Here

    // TODO RAVE-154 why .jsp?
    @RequestMapping(value = "/userProfile.jsp")
    public void setUpForm(ModelMap model) {
        logger.debug("Initializing form");
        User user = userService.getAuthenticatedUser();
        model.addAttribute(ModelKeys.USER_PROFILE, user);
    }
View Full Code Here

     * @return the view name of the main store page
     */
    @RequestMapping(method = RequestMethod.GET)
    public String view(Model model, @RequestParam long referringPageId,
            @RequestParam(required = false, defaultValue = "0") int offset) {
        User user = userService.getAuthenticatedUser();
        widgetStoreModelHelper(model, referringPageId, user);
        model.addAttribute(ModelKeys.WIDGETS, widgetService.getPublishedWidgets(offset, getPageSize()));
        return ViewNames.STORE;
    }
View Full Code Here

    }

    @RequestMapping(method = RequestMethod.GET, value = "mine")
    public String viewMine(Model model, @RequestParam long referringPageId,
            @RequestParam(required = false, defaultValue = "0") int offset) {
        User user = userService.getAuthenticatedUser();
        widgetStoreModelHelper(model, referringPageId, user);
        model.addAttribute(ModelKeys.WIDGETS,
                widgetService.getWidgetsByOwner(user.getEntityId(), offset, getPageSize()));
        return ViewNames.STORE;
    }
View Full Code Here

     *            the source {@link org.apache.rave.portal.model.Page } ID
     * @return the view name of the widget detail page
     */
    @RequestMapping(method = RequestMethod.GET, value = "widget/{widgetId}")
    public String viewWidget(Model model, @PathVariable long widgetId, @RequestParam long referringPageId) {
        final User user = userService.getAuthenticatedUser();
        widgetStoreModelHelper(model, referringPageId, user);
        model.addAttribute(ModelKeys.WIDGET, widgetService.getWidget(widgetId));
        model.addAttribute(ModelKeys.WIDGET_STATISTICS, widgetService.getWidgetStatistics(widgetId, user.getEntityId()));
        model.addAttribute(ModelKeys.USER_PROFILE, user);
        return ViewNames.WIDGET;
    }
View Full Code Here

     * @return the view name of the main store page
     */
    @RequestMapping(method = RequestMethod.GET, value = "search")
    public String viewSearchResult(Model model, @RequestParam long referringPageId, @RequestParam String searchTerm,
            @RequestParam(required = false, defaultValue = "0") int offset) {
        User user = userService.getAuthenticatedUser();
        widgetStoreModelHelper(model, referringPageId, user);
        model.addAttribute(ModelKeys.WIDGETS,
                widgetService.getPublishedWidgetsByFreeTextSearch(searchTerm, offset, getPageSize()));
        model.addAttribute(ModelKeys.SEARCH_TERM, searchTerm);
        model.addAttribute(ModelKeys.OFFSET, offset);
View Full Code Here

TOP

Related Classes of org.apache.rave.portal.model.User

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.