Package org.apache.roller.weblogger.pojos

Examples of org.apache.roller.weblogger.pojos.User


    public void testWeblogStats() throws Exception {
       
        WeblogManager wmgr = WebloggerFactory.getWeblogger().getWeblogManager();
        UserManager umgr = WebloggerFactory.getWeblogger().getUserManager();
       
        User user1 = TestUtils.setupUser("statuser1");
        Weblog blog1 = TestUtils.setupWeblog("statblog1", user1);
        Weblog blog2 = TestUtils.setupWeblog("statblog2", user1);

        Weblog blog3 = TestUtils.setupWeblog("statblog3", user1);
        blog3.setEnabled(Boolean. FALSE);
        umgr.saveWebsite(blog3);

        WeblogEntry entry1 = TestUtils.setupWeblogEntry("entry1",
                testWeblog.getDefaultCategory(), blog1, user1);
        WeblogEntry entry2 = TestUtils.setupWeblogEntry("entry2",
                testWeblog.getDefaultCategory(), blog1, user1);
       
        WeblogEntry entry3 = TestUtils.setupWeblogEntry("entry3",
                testWeblog.getDefaultCategory(), blog2, user1);
        WeblogEntry entry4 = TestUtils.setupWeblogEntry("entry4",
                testWeblog.getDefaultCategory(), blog2, user1);
        WeblogEntry entry5 = TestUtils.setupWeblogEntry("entry5",
                testWeblog.getDefaultCategory(), blog2, user1);
              
        WeblogEntryComment comment1 = TestUtils.setupComment("comment1", entry1);
        WeblogEntryComment comment2 = TestUtils.setupComment("comment2", entry1);
       
        WeblogEntryComment comment3 = TestUtils.setupComment("comment3", entry3);
        WeblogEntryComment comment4 = TestUtils.setupComment("comment4", entry3);
        WeblogEntryComment comment5 = TestUtils.setupComment("comment5", entry3);
        TestUtils.endSession(true);

        try {
            blog1 = umgr.getWebsite(blog1.getId());
            blog2 = umgr.getWebsite(blog2.getId());
           
            assertEquals(2L, blog1.getEntryCount());
            assertEquals(3L, blog2.getEntryCount());
            assertEquals(5L, wmgr.getEntryCount());

            assertEquals(2L, blog1.getCommentCount());
            assertEquals(3L, blog2.getCommentCount());
            assertEquals(5L, wmgr.getCommentCount());

            assertEquals(4L, umgr.getWeblogCount());
            assertEquals(2L, umgr.getUserCount());
           
        } finally {
           
            TestUtils.teardownComment(comment1.getId());
            TestUtils.teardownComment(comment2.getId());
            TestUtils.teardownComment(comment3.getId());
            TestUtils.teardownComment(comment4.getId());
            TestUtils.teardownComment(comment5.getId());

            TestUtils.teardownWeblogEntry(entry1.getId());
            TestUtils.teardownWeblogEntry(entry2.getId());
            TestUtils.teardownWeblogEntry(entry3.getId());
            TestUtils.teardownWeblogEntry(entry4.getId());
            TestUtils.teardownWeblogEntry(entry5.getId());

            TestUtils.teardownWeblog(blog1.getId());
            TestUtils.teardownWeblog(blog2.getId());
            TestUtils.teardownWeblog(blog3.getId());

            TestUtils.teardownUser(user1.getId());     
           
            TestUtils.endSession(true);
        }
    }
View Full Code Here


    /**
     * Convenience method that creates a user and stores it.
     */
    public static User setupUser(String username) throws Exception {
       
        User testUser = new User();
        testUser.setUserName(username);
        testUser.setPassword("password");
        testUser.setScreenName("Test User Screen Name");
        testUser.setFullName("Test User");
        testUser.setEmailAddress("TestUser@dev.null");
        testUser.setLocale("en_US");
        testUser.setTimeZone("America/Los_Angeles");
        testUser.setDateCreated(new java.util.Date());
        testUser.setEnabled(Boolean.TRUE);
       
        // store the user
        UserManager mgr = WebloggerFactory.getWeblogger().getUserManager();
        mgr.addUser(testUser);
       
        // flush to db
        WebloggerFactory.getWeblogger().flush();
       
        // query for the user to make sure we return the persisted object
        User user = mgr.getUserByUserName(username);
       
        if(user == null)
            throw new WebloggerException("error inserting new user");
       
        return user;
View Full Code Here

     */
    public static void teardownUser(String id) throws Exception {
       
        // lookup the user
        UserManager mgr = WebloggerFactory.getWeblogger().getUserManager();
        User user = mgr.getUser(id);
       
        // remove the user
        mgr.removeUser(user);
       
        // flush to db
View Full Code Here

                    entry.getWebsite(), Boolean.TRUE, null, null, 0, -1);
           
            // build list of reviewers (website users with author permission)
            Iterator websiteUserIter = websiteUsers.iterator();
            while (websiteUserIter.hasNext()) {
                User websiteUser = (User)websiteUserIter.next();
                if (entry.getWebsite().hasUserPermissions(
                       
                        websiteUser,WeblogPermission.AUTHOR)
                        && websiteUser.getEmailAddress() != null) {
                    reviewers.add(websiteUser.getEmailAddress());
                }
            }
            to = (String[])reviewers.toArray(new String[reviewers.size()]);
           
            // Figure URL to entry edit page
View Full Code Here

                                             boolean notifySubscribers)
            throws MailingException {
       
        WeblogEntry entry = commentObject.getWeblogEntry();
        Weblog weblog = entry.getWebsite();
        User user = entry.getCreator();
       
        // Only send email if email notificaiton is enabled
        boolean notify = WebloggerRuntimeConfig.getBooleanProperty("users.comments.emailnotify");
        if (!notify || !weblog.getEmailComments().booleanValue()) {
            // notifications disabled, just bail
            return;
        }
       
        log.debug("Comment notification enabled ... preparing email");
       
        // Determine message and addressing options from init parameters
        boolean hideCommenterAddrs = WebloggerConfig.getBooleanProperty(
                "comment.notification.hideCommenterAddresses");
       
        // use either the weblog configured from address or the site configured from address
        String from = weblog.getEmailFromAddress();
        if(StringUtils.isEmpty(from)) {
            // TODO: this should not be the users email address
            from = user.getEmailAddress();
        }
       
        // build list of email addresses to send notification to
        Set subscribers = new TreeSet();
       
        // If we are to notify subscribers, then...
        if (notifySubscribers) {
            log.debug("Sending notification email to all subscribers");
           
            // Get all the subscribers to this comment thread
            List comments = entry.getComments(true, true);
            for (Iterator it = comments.iterator(); it.hasNext();) {
                WeblogEntryComment comment = (WeblogEntryComment) it.next();
                if (!StringUtils.isEmpty(comment.getEmail())) {
                    // If user has commented twice,
                    // count the most recent notify setting
                    if (comment.getNotify().booleanValue()) {
                        // only add those with valid email
                        if (comment.getEmail().matches(EMAIL_ADDR_REGEXP)) {
                            subscribers.add(comment.getEmail());
                        }
                    } else {
                        // remove user who doesn't want to be notified
                        subscribers.remove(comment.getEmail());
                    }
                }
            }
        } else {
            log.debug("Sending notification email only to weblog owner");
        }
       
        // Form array of commenter addrs
        String[] commenterAddrs = (String[])subscribers.toArray(new String[0]);
       
        //------------------------------------------
        // --- Form the messages to be sent -
        // Build separate owner and commenter (aka subscriber) messages
       
        // Determine with mime type to use for e-mail
        StringBuffer msg = new StringBuffer();
        StringBuffer ownermsg = new StringBuffer();
        boolean escapeHtml = !WebloggerRuntimeConfig.getBooleanProperty("users.comments.htmlenabled");
       
        // first the commenter message
       
        if (!escapeHtml) {
            msg.append("<html><body style=\"background: white; ");
            msg.append(" color: black; font-size: 12px\">");
        }
       
        if (!StringUtils.isEmpty(commentObject.getName())) {
            msg.append(commentObject.getName() + " "
                    + resources.getString("email.comment.wrote")+": ");
        } else {
            msg.append(resources.getString("email.comment.anonymous")+": ");
        }
       
        msg.append((escapeHtml) ? "\n\n" : "<br /><br />");
       
        msg.append((escapeHtml) ? Utilities.escapeHTML(commentObject.getContent())
        : Utilities.transformToHTMLSubset(Utilities.escapeHTML(commentObject.getContent())));
       
        msg.append((escapeHtml) ? "\n\n----\n"
                : "<br /><br /><hr /><span style=\"font-size: 11px\">");
        msg.append(resources.getString("email.comment.respond") + ": ");
        msg.append((escapeHtml) ? "\n" : "<br />");
       
        // Build link back to comment
        String commentURL = WebloggerFactory.getWeblogger().getUrlStrategy().getWeblogCommentsURL(weblog, null, entry.getAnchor(), true);
       
        if (escapeHtml) {
            msg.append(commentURL);
        } else {
            msg.append("<a href=\""+commentURL+"\">"+commentURL+"</a></span>");
        }
       
        // next the owner message
       
        // First, list any messages from the system that were passed in:
        if (messages.getMessageCount() > 0) {
            ownermsg.append((escapeHtml) ? "" : "<p>");
            ownermsg.append(resources.getString("commentServlet.email.thereAreSystemMessages"));
            ownermsg.append((escapeHtml) ? "\n\n" : "</p>");
            ownermsg.append((escapeHtml) ? "" : "<ul>");
        }
        for (Iterator it = messages.getMessages(); it.hasNext();) {
            RollerMessage rollerMessage = (RollerMessage)it.next();
            ownermsg.append((escapeHtml) ? "" : "<li>");
            ownermsg.append(MessageFormat.format(resources.getString(rollerMessage.getKey()), (Object[])rollerMessage.getArgs()) );
            ownermsg.append((escapeHtml) ? "\n\n" : "</li>");
        }
        if (messages.getMessageCount() > 0) {
            ownermsg.append((escapeHtml) ? "\n\n" : "</ul>");
        }
       
        // Next, list any validation error messages that were passed in:
        if (messages.getErrorCount() > 0) {
            ownermsg.append((escapeHtml) ? "" : "<p>");
            ownermsg.append(resources.getString("commentServlet.email.thereAreErrorMessages"));
            ownermsg.append((escapeHtml) ? "\n\n" : "</p>");
            ownermsg.append((escapeHtml) ? "" : "<ul>");
        }
        for (Iterator it = messages.getErrors(); it.hasNext();) {
            RollerMessage rollerMessage = (RollerMessage)it.next();
            ownermsg.append((escapeHtml) ? "" : "<li>");
            ownermsg.append(MessageFormat.format(resources.getString(rollerMessage.getKey()), (Object[])rollerMessage.getArgs()) );
            ownermsg.append((escapeHtml) ? "\n\n" : "</li>");
        }
        if (messages.getErrorCount() > 0) {
            ownermsg.append((escapeHtml) ? "\n\n" : "</ul>");
        }
       
        ownermsg.append(msg);
       
        // add link to weblog edit page so user can login to manage comments
        ownermsg.append((escapeHtml) ? "\n\n----\n" :
            "<br /><br /><hr /><span style=\"font-size: 11px\">");
        ownermsg.append("Link to comment management page:");
        ownermsg.append((escapeHtml) ? "\n" : "<br />");
       
        Map<String, String> parameters = new HashMap();
        parameters.put("bean.entryId", entry.getId());
        String deleteURL = WebloggerFactory.getWeblogger().getUrlStrategy().getActionURL(
                "comments", "/roller-ui/authoring", weblog.getHandle(), parameters, true);
       
        if (escapeHtml) {
            ownermsg.append(deleteURL);
        } else {
            ownermsg.append(
                    "<a href=\"" + deleteURL + "\">" + deleteURL + "</a></span>");
            msg.append("</Body></html>");
            ownermsg.append("</Body></html>");
        }
       
        String subject = null;
        if ((subscribers.size() > 1) ||
                (StringUtils.equals(commentObject.getEmail(), user.getEmailAddress()))) {
            subject= "RE: "+resources.getString("email.comment.title")+": ";
        } else {
            subject = resources.getString("email.comment.title") + ": ";
        }
        subject += entry.getTitle();
       
        // send message to email recipients
        try {
            boolean isHtml = !escapeHtml;
           
            // Send separate messages to owner and commenters
            if(isHtml) {
                sendHTMLMessage(
                        from,
                        new String[]{user.getEmailAddress()},
                        null,
                        null,
                        subject,
                        ownermsg.toString());
            } else {
                sendTextMessage(
                        from,
                        new String[]{user.getEmailAddress()},
                        null,
                        null,
                        subject,
                        ownermsg.toString());
            }
View Full Code Here

                                                     I18nMessages resources)
            throws MailingException {
       
        WeblogEntry entry = cd.getWeblogEntry();
        Weblog weblog = entry.getWebsite();
        User user = entry.getCreator();
       
        // Only send email if email notificaiton is enabled
        boolean notify = WebloggerRuntimeConfig.getBooleanProperty("users.comments.emailnotify");
        if (!notify || !weblog.getEmailComments().booleanValue()) {
            // notifications disabled, just bail
            return;
        }
       
        log.debug("Comment notification enabled ... preparing email");
       
        // use either the weblog configured from address or the site configured from address
        String from = weblog.getEmailFromAddress();
        if(StringUtils.isEmpty(from)) {
            // TODO: this should not be the users email address
            from = user.getEmailAddress();
        }
       
        // form the message to be sent
        String subject = resources.getString("email.comment.commentApproved");
       
View Full Code Here

                }
               
                // wrap the results
                int count = 0;
                for (Iterator it = rawUsers.iterator(); it.hasNext();) {
                    User user = (User) it.next();
                    if (count++ < length) {
                        results.add(UserWrapper.wrap(user));
                    } else {
                        more = true;
                    }
View Full Code Here

            final UISecurityEnforced theAction = (UISecurityEnforced) action;
           
            // are we requiring an authenticated user?
            if(theAction.isUserRequired()) {
               
                User authenticatedUser = ((UIAction)theAction).getAuthenticatedUser();
                if(authenticatedUser == null) {
                    log.debug("DENIED: required user not found");
                    return "access-denied";
                }
               
                // are we also enforcing a specific role?
                if(theAction.requiredUserRole() != null) {
                    if(!authenticatedUser.hasRole(theAction.requiredUserRole())) {
                        log.debug("DENIED: user does not have role = "+theAction.requiredUserRole());
                        return "access-denied";
                    }
                }
               
View Full Code Here

    public List getUsersWeblogs(String userName) {
        List results = new ArrayList();
        try {           
            Weblogger roller = WebloggerFactory.getWeblogger();
            UserManager umgr = roller.getUserManager();
            User user = umgr.getUserByUserName(userName);
            List perms = umgr.getAllPermissions(user);
            for (Iterator it = perms.iterator(); it.hasNext();) {
                WeblogPermission perm = (WeblogPermission) it.next();
                results.add(WeblogWrapper.wrap(perm.getWebsite(), urlStrategy));
            }
View Full Code Here

    public UserWrapper getUser(String username) {
        UserWrapper wrappedUser = null;
        try {           
            Weblogger roller = WebloggerFactory.getWeblogger();
            UserManager umgr = roller.getUserManager();
            User user = umgr.getUserByUserName(username, Boolean.TRUE);
            wrappedUser = UserWrapper.wrap(user);
        } catch (Exception e) {
            log.error("ERROR: fetching users by letter", e);
        }
        return wrappedUser;
View Full Code Here

TOP

Related Classes of org.apache.roller.weblogger.pojos.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.