Package org.apache.roller.pojos

Examples of org.apache.roller.pojos.UserData


        }
       
        // TODO: does the permissions data need to be invalidated?
       
        try {
            UserData ud = getRoller().getUserManager().getUserByUsername(entry.getName());
            CacheManager.invalidate(ud);
            WebsiteData wd = getRoller().getUserManager().getWebsiteByHandle(entry.getHandle());
            CacheManager.invalidate(wd);
           
            UserManager mgr = getRoller().getUserManager();
View Full Code Here


            pds = new PermissionsData[] { pd };
           
            UserManager mgr = getRoller().getUserManager();
            mgr.removePermissions(pd);
           
            UserData ud = getRoller().getUserManager().getUserByUsername(username);
            CacheManager.invalidate(ud);
            WebsiteData wd = getRoller().getUserManager().getWebsiteByHandle(handle);
            CacheManager.invalidate(wd);
            getRoller().flush();
           
View Full Code Here

        // Send commment notifications in locale of server
        ResourceBundle resources = ResourceBundle.getBundle("ApplicationResources");

        WeblogEntryData entry = cd.getWeblogEntry();
        WebsiteData site = entry.getWebsite();
        UserData user = entry.getCreator();
       
        // Send e-mail to owner and subscribed users (if enabled)
        boolean notify = RollerRuntimeConfig.getBooleanProperty("users.comments.emailnotify");
        if (notify && site.getEmailComments().booleanValue()) {
            mLogger.debug("Comment notification enabled ... preparing email");
           
            // Determine message and addressing options from init parameters
            boolean separateMessages =
                    RollerConfig.getBooleanProperty("comment.notification.separateOwnerMessage");
            boolean hideCommenterAddrs =
                    RollerConfig.getBooleanProperty("comment.notification.hideCommenterAddresses");
           
            //------------------------------------------
            // --- Determine the "from" address
            // --- Use either the site configured from address or the user's address
           
            String from =
                    (StringUtils.isEmpty(site.getEmailFromAddress()))
                    ? user.getEmailAddress()
                    : site.getEmailFromAddress();
           
            //------------------------------------------
            // --- Build list of email addresses to send notification to
           
            List comments = null;
            try {
                WeblogManager wMgr = RollerFactory.getRoller().getWeblogManager();
                // get only approved, non spam comments
                comments = entry.getComments(true, true);
            } catch(RollerException re) {
                // should never happen
                comments = new ArrayList();
            }
           
            // Get all the subscribers to this comment thread
            Set subscribers = new TreeSet();
            for (Iterator it = comments.iterator(); it.hasNext();) {
                CommentData comment = (CommentData) 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());
                    }
                }
            }
           
            // Form array of commenter addrs
            String[] commenterAddrs = (String[])subscribers.toArray(new String[0]);
           
            //------------------------------------------
            // --- Form the messages to be sent -
            // For simplicity we always build separate owner and commenter messages even if sending a single one
           
            // Determine with mime type to use for e-mail
            StringBuffer msg = new StringBuffer();
            StringBuffer ownermsg = new StringBuffer();
            boolean escapeHtml = RollerRuntimeConfig.getBooleanProperty("users.comments.escapehtml");
           
            if (!escapeHtml) {
                msg.append("<html><body style=\"background: white; ");
                msg.append(" color: black; font-size: 12px\">");
            }
           
            if (!StringUtils.isEmpty(cd.getName())) {
                msg.append(cd.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(cd.getContent())
                : Utilities.transformToHTMLSubset(Utilities.escapeHTML(cd.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
            StringBuffer commentURL = new StringBuffer(rootURL);
            commentURL.append(entry.getPermaLink());
            commentURL.append("#comments");
           
            if (escapeHtml) {
                msg.append(commentURL.toString());
            } else {
                msg.append("<a href=\""+commentURL+"\">"+commentURL+"</a></span>");
            }
           
            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 />");
           
            StringBuffer deleteURL = new StringBuffer(rootURL);
            deleteURL.append("/editor/commentManagement.do?method=query&entryid=" + entry.getId());
           
            if (escapeHtml) {
                ownermsg.append(deleteURL.toString());
            } 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(cd.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 {
                javax.naming.Context ctx = (javax.naming.Context)
                new InitialContext().lookup("java:comp/env");
                Session session = (Session)ctx.lookup("mail/Session");
                boolean isHtml = !escapeHtml;
                if (separateMessages) {
                    // Send separate messages to owner and commenters
                    sendMessage(session, from,
                            new String[]{user.getEmailAddress()}, null, null, subject, ownermsg.toString(), isHtml);
                            if (commenterAddrs.length > 0) {
                                // If hiding commenter addrs, they go in Bcc: otherwise in the To: of the second message
                                String[] to = hideCommenterAddrs ? null : commenterAddrs;
                                String[] bcc = hideCommenterAddrs ? commenterAddrs : null;
                                sendMessage(session, from, to, null, bcc, subject, msg.toString(), isHtml);
                               
                            }
                } else {
                    // Single message.  User in To: header, commenters in either cc or bcc depending on hiding option
                    String[] cc = hideCommenterAddrs ? null : commenterAddrs;
                    String[] bcc = hideCommenterAddrs ? commenterAddrs : null;
                    sendMessage(session, from, new String[]{user.getEmailAddress()}, cc, bcc, subject,
                            ownermsg.toString(), isHtml);
                }
            } catch (javax.naming.NamingException ne) {
                mLogger.error("Unable to lookup mail session.  Check configuration.  NamingException: " + ne.getMessage());
            } catch (Exception e) {
View Full Code Here

        // Send commment notifications in locale of server
        ResourceBundle resources = ResourceBundle.getBundle("ApplicationResources");
       
        WeblogEntryData entry = cd.getWeblogEntry();
        WebsiteData site = entry.getWebsite();
        UserData user = entry.getCreator();
           
        // Only send email if email notificaiton is enabled
        boolean notify = RollerRuntimeConfig.getBooleanProperty("users.comments.emailnotify");
        if (notify && site.getEmailComments().booleanValue()) {
            mLogger.debug("Comment notification enabled ... preparing email");
           

                               
            //------------------------------------------
            // --- Determine the "from" address
            // --- Use either the site configured from address or the user's address
           
            String from =
                    (StringUtils.isEmpty(site.getEmailFromAddress()))
                    ? user.getEmailAddress()
                    : site.getEmailFromAddress();
                       
            //------------------------------------------
            // --- Form the message to be sent -
           
View Full Code Here

                    String credentials = st.nextToken();
                    String userPass = new String(Base64.decode(credentials));
                    int p = userPass.indexOf(":");
                    if (p != -1) {
                        userName = userPass.substring(0, p);
                        UserData user = getRoller().getUserManager().getUserByUsername(userName);
                        if (user == null) {
                            throw new UnauthorizedException("ERROR: User does not exist: " + userName);
                        }
                        String realpassword = user.getPassword();
                        password = userPass.substring(p+1);
                        if ((userName.trim().equals(user.getUserName())) && (password.trim().equals(realpassword))) {
                            setUserName(userName);
                        }
                    }
                }
            }
View Full Code Here

                PermissionsData perms = (PermissionsData)iter.next();
                String sval = request.getParameter("perm-" + perms.getId());
                if (sval != null)
                {
                    short val = Short.parseShort(sval);
                    UserData user = rses.getAuthenticatedUser();
                    if (perms.getUser().getId().equals(user.getId())
                            && val < perms.getPermissionMask())
                    {
                        errors.add(null,new ActionError(
                            "memberPermissions.noSelfDemotions"));
                    }
View Full Code Here

            WeblogEntryFormEx  form = (WeblogEntryFormEx)actionForm;
            Roller           roller = RollerFactory.getRoller();
            RollerSession      rses = RollerSession.getRollerSession(request);
            UserManager     userMgr = roller.getUserManager();
            WeblogManager weblogMgr = roller.getWeblogManager();
            UserData           ud  = userMgr.getUser(form.getCreatorId());
            WebsiteData       site = userMgr.getWebsite(form.getWebsiteId());
            WeblogEntryData  entry = null;
           
            if ( rses.isUserAuthorizedToAuthor(site)
            || (rses.isUserAuthorized(site)
View Full Code Here

                        umgr.getUsers(entry.getWebsite(), Boolean.TRUE);
               
                // build list of reviewers (website users with author permission)
                Iterator websiteUserIter = websiteUsers.iterator();
                while (websiteUserIter.hasNext()) {
                    UserData websiteUser = (UserData)websiteUserIter.next();
                    if (entry.getWebsite().hasUserPermissions(
                            websiteUser, PermissionsData.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

            RollerSession rses = RollerSession.getRollerSession(request);
            if (rses.isUserAuthorizedToAdmin(website)) {
                Roller roller = RollerFactory.getRoller();
                UserManager umgr = roller.getUserManager();
                WeblogManager wmgr = roller.getWeblogManager();
                UserData ud = rses.getAuthenticatedUser();
                request.setAttribute("user",ud);
               
                WebsiteFormEx wf = (WebsiteFormEx)actionForm;
                wf.copyFrom(website, request.getLocale());
               
View Full Code Here

        boolean userEnabled = false;
        boolean weblogEnabled = false;
        boolean apiEnabled = false;
        boolean weblogFound = false;
        WebsiteData website = null;
        UserData user = null;
        try
        {
            // Get Roller request object for current thread
            RollerRequest rreq = RollerRequest.getRollerRequest();
           
            UserManager userMgr = RollerFactory.getRoller().getUserManager();
            user = userMgr.getUserByUsername(username);
            userEnabled = user.getEnabled().booleanValue();
           
            website = userMgr.getWebsiteByHandle(blogid);
            if (website != null) {
                weblogFound = true;
                weblogEnabled = website.getEnabled().booleanValue();
                apiEnabled = website.getEnableBloggerApi().booleanValue();
            }
           
            if (user != null)
            {   
                // are passwords encrypted?
                RollerContext rollerContext =
                    RollerContext.getRollerContext();
                String encrypted =
                        RollerConfig.getProperty("passwds.encryption.enabled");
                //System.out.print("password was [" + password + "] ");
                if ("true".equalsIgnoreCase(encrypted))
                {
                  password = Utilities.encodePassword(password,
                      RollerConfig.getProperty("passwds.encryption.algorithm"));
                }
                //System.out.println("is now [" + password + "]");
             authenticated= user.getPassword().equals(password);
                if (authenticated)
                {
                    //RollerFactory.getRoller().setUser(user);
                }
            }
View Full Code Here

TOP

Related Classes of org.apache.roller.pojos.UserData

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.