From: <jbo...@li...> - 2005-12-09 22:08:41
|
Author: unibrew Date: 2005-12-09 17:08:33 -0500 (Fri, 09 Dec 2005) New Revision: 1769 Added: trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-app.xml trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-portlet.xml trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-service.xml trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-web.xml trunk/forge/portal-extensions/polls/src/web/WEB-INF/portlet-instances.xml trunk/forge/portal-extensions/polls/src/web/WEB-INF/portlet.xml trunk/forge/portal-extensions/polls/src/web/WEB-INF/tld/portlet.tld trunk/forge/portal-extensions/polls/src/web/WEB-INF/web.xml Modified: trunk/forge/portal-extensions/polls/src/java/org/jboss/forge/polls/PollsPortlet.java Log: [JBLAB-407] Adding and updating files for PollsPortlet. Modified: trunk/forge/portal-extensions/polls/src/java/org/jboss/forge/polls/PollsPortlet.java =================================================================== --- trunk/forge/portal-extensions/polls/src/java/org/jboss/forge/polls/PollsPortlet.java 2005-12-09 22:01:29 UTC (rev 1768) +++ trunk/forge/portal-extensions/polls/src/java/org/jboss/forge/polls/PollsPortlet.java 2005-12-09 22:08:33 UTC (rev 1769) @@ -5,25 +5,34 @@ import javax.portlet.PortletException; import javax.portlet.PortletRequestDispatcher; import javax.portlet.PortletSession; +import javax.portlet.PortletURL; import org.jboss.forge.common.ForgeHelper; import org.jboss.forge.common.projects.PollTools; import org.jboss.forge.common.projects.ProjectsHelper; import org.jboss.portal.common.context.Context; -import org.jboss.portal.common.context.DelegateContext; import org.jboss.portal.core.model.User; import org.jboss.portal.core.servlet.jsp.PortalJsp; +import org.jboss.portlet.JBossActionRequest; +import org.jboss.portlet.JBossActionResponse; import org.jboss.portlet.JBossPortlet; import org.jboss.portlet.JBossRenderRequest; import org.jboss.portlet.JBossRenderResponse; import org.jboss.shotoku.ContentManager; import org.jboss.shotoku.aop.Inject; + +/** + * + * @author Ryszard Kozmik + * + */ public class PollsPortlet extends JBossPortlet { public static final String VOTED_PARAMETER_NAME = "org.jboss.forge.polls.voted"; - public static final String VOTED_FALSE = "false"; - public static final String VOTED_TRUE = "true"; + public static final String FALSE = "false"; + public static final String TRUE = "true"; + public static final String DETAILED_VIEW_REQUEST="details"; @Inject ContentManager contentManager; @@ -49,15 +58,29 @@ String voted = request.getParameter(VOTED_PARAMETER_NAME); Context pollContext=null; PortletRequestDispatcher rd = null; - if (voted!=null && voted.compareTo(VOTED_TRUE)==0) { + if (voted!=null && voted.compareTo(TRUE)==0) { + System.out.println ("USER VOTED"); // Getting the poll context. pollContext = PollTools.getInfoContext(portalName,projectId,contentManager,response); rd = getPortletContext().getRequestDispatcher( ForgeHelper.createRepoAccessPath(portalName, PollTools .getInfoJsp())); + } else if (request.getParameter(DETAILED_VIEW_REQUEST)!=null && + request.getParameter(DETAILED_VIEW_REQUEST).compareTo(TRUE)==0 ) { + + System.out.println ("DETAILED VIEW"); + + String pollId = request.getParameter("pollId"); + // Getting the poll context. + pollContext = PollTools.getDetailsContext(portalName,projectId,pollId,contentManager,response); + rd = getPortletContext().getRequestDispatcher( + ForgeHelper.createRepoAccessPath(portalName, PollTools + .getDetailsJsp())); + } else { -// Getting the poll context. + System.out.println ("USER HAVEN'T VOTED"); + // Getting the poll context. pollContext = PollTools.getVotingContext(portalName,projectId,contentManager,response); rd = getPortletContext().getRequestDispatcher( ForgeHelper.createRepoAccessPath(portalName, PollTools @@ -66,9 +89,52 @@ // Displaying. request.setAttribute(PortalJsp.CTX_REQUEST, pollContext); + rd.include(request, response); + } + + @Override + public void processAction(JBossActionRequest request, JBossActionResponse response) { + String portalName = ForgeHelper.getPortalName(request); + String vote=request.getParameter("vote"); + String pollId = request.getParameter("pollId"); + PortletURL url=response.createRenderURL(); + System.out.println ("HELLO I'M IN POLLPORTLET VOTE: "+vote); + String userId = request.getUser()==null?Integer.toString((int)(Math.random()*100000)):request.getUser().getUserName(); + // Getting name of the project on which the download counter is used. + String projectId = ProjectsHelper.getSelectedProjectId(request); + System.out.println("PROJECTID:"+projectId); + if (projectId==null){ + projectId = request.getParameter(ProjectsHelper.PROJECT_URL_PARAM); + System.out.println ("2 PROJECTID:"+projectId); + if (projectId==null) { + projectId="jbosswiki"; + } + } - - rd.include(request, response); + if (vote != null && !vote.equals("")) { + System.out.println ("USER VOTE"); + response.setRenderParameter(VOTED_PARAMETER_NAME,TRUE); + if (vote.equals(TRUE)){ + System.out.println ("VOTING POSITIVLY"); + System.out.println ("POLLID:"+pollId+" userId:"+userId+" PROJECTID: "+projectId); + if (PollTools.getDesc(portalName,contentManager).votePositive(pollId,userId,projectId)) { + System.out.println ("ZAGŁOSOWANO"); + } else { + System.out.println ("GŁOS ODRZUCONO"); + } + } else if (vote.equals(FALSE)){ + System.out.println("VOTING NEGATIVLY"); + System.out.println ("POLLID:"+pollId+" userId:"+userId+" PROJECTID: "+projectId); + if (PollTools.getDesc(portalName,contentManager).voteNegative(pollId,userId,projectId)) { + System.out.println ("ZAGŁOSOWANO"); + } else { + System.out.println ("GŁOS ODRZUCONO"); + } + } + } else { + System.out.println ("USER ZONK"); + } } + } Added: trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-app.xml =================================================================== --- trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-app.xml 2005-12-09 22:01:29 UTC (rev 1768) +++ trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-app.xml 2005-12-09 22:08:33 UTC (rev 1769) @@ -0,0 +1,3 @@ +<jboss-app> + <app-name>polls</app-name> +</jboss-app> Added: trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-portlet.xml =================================================================== --- trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-portlet.xml 2005-12-09 22:01:29 UTC (rev 1768) +++ trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-portlet.xml 2005-12-09 22:08:33 UTC (rev 1769) @@ -0,0 +1,5 @@ +<portlet-app> + <portlet> + <portlet-name>PollsPortlet</portlet-name> + </portlet> +</portlet-app> Added: trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-service.xml =================================================================== --- trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-service.xml 2005-12-09 22:01:29 UTC (rev 1768) +++ trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-service.xml 2005-12-09 22:08:33 UTC (rev 1769) @@ -0,0 +1,2 @@ +<server> +</server> Added: trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-web.xml =================================================================== --- trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-web.xml 2005-12-09 22:01:29 UTC (rev 1768) +++ trunk/forge/portal-extensions/polls/src/web/WEB-INF/jboss-web.xml 2005-12-09 22:08:33 UTC (rev 1769) @@ -0,0 +1,3 @@ +<?xml version="1.0"?> +<jboss-web> +</jboss-web> Added: trunk/forge/portal-extensions/polls/src/web/WEB-INF/portlet-instances.xml =================================================================== --- trunk/forge/portal-extensions/polls/src/web/WEB-INF/portlet-instances.xml 2005-12-09 22:01:29 UTC (rev 1768) +++ trunk/forge/portal-extensions/polls/src/web/WEB-INF/portlet-instances.xml 2005-12-09 22:08:33 UTC (rev 1769) @@ -0,0 +1,7 @@ +<?xml version="1.0" standalone="yes"?> +<instances> + <instance> + <instance-name>PollsPortletInstance</instance-name> + <component-ref>PollsPortlet</component-ref> + </instance> +</instances> Added: trunk/forge/portal-extensions/polls/src/web/WEB-INF/portlet.xml =================================================================== --- trunk/forge/portal-extensions/polls/src/web/WEB-INF/portlet.xml 2005-12-09 22:01:29 UTC (rev 1768) +++ trunk/forge/portal-extensions/polls/src/web/WEB-INF/portlet.xml 2005-12-09 22:08:33 UTC (rev 1769) @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<portlet-app xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_1_0.xsd /opt/SUNWps/dtd/portlet.xsd" version="1.0"> + <portlet> + <portlet-name>PollsPortlet</portlet-name> + <portlet-class>org.jboss.forge.polls.PollsPortlet</portlet-class> + <supported-locale>en</supported-locale> + <supports> + <mime-type>text/html</mime-type> + <portlet-mode>VIEW</portlet-mode> + </supports> + <supported-window-states> + <window-state>normal</window-state> + </supported-window-states> + <portlet-info> + <title>JBoss Polls Portlet</title> + </portlet-info> + </portlet> +</portlet-app> Added: trunk/forge/portal-extensions/polls/src/web/WEB-INF/tld/portlet.tld =================================================================== --- trunk/forge/portal-extensions/polls/src/web/WEB-INF/tld/portlet.tld 2005-12-09 22:01:29 UTC (rev 1768) +++ trunk/forge/portal-extensions/polls/src/web/WEB-INF/tld/portlet.tld 2005-12-09 22:08:33 UTC (rev 1769) @@ -0,0 +1,82 @@ +<taglib xmlns="http://java.sun.com/xml/ns/j2ee" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-jsptaglibrary_2_0.xsd" + version="2.0"> + <!-- + JBoss, the OpenSource J2EE webOS + Distributable under LGPL license. + See terms of license at gnu.org. + --> + <tlib-version>1.1</tlib-version> + <jsp-version>2.0</jsp-version> + <shortname>JBoss Portal tags</shortname> + <info>JBoss Portal tags</info> + + <function> + <name>i18n</name> + <function-class>org.jboss.portal.core.servlet.jsp.taglib.PortalLib</function-class> + <function-signature>java.lang.String getMessage(java.lang.String)</function-signature> + </function> + + <function> + <name>out</name> + <function-class>org.jboss.portal.core.servlet.jsp.taglib.PortalLib</function-class> + <function-signature>java.lang.String out(java.lang.String)</function-signature> + </function> + + <function> + <name>i18nout</name> + <function-class>org.jboss.portal.core.servlet.jsp.taglib.PortalLib</function-class> + <function-signature>java.lang.String i18nOut(java.lang.String)</function-signature> + </function> + + <tag> + <name>if</name> + <tagclass>org.jboss.portal.core.servlet.jsp.taglib.IfTag</tagclass> + <attribute> + <name>ctx</name> + <required>true</required> + <rtexprvalue>true</rtexprvalue> + </attribute> + </tag> + + <tag> + <name>iterate</name> + <tagclass>org.jboss.portal.core.servlet.jsp.taglib.IterateTag</tagclass> + <attribute> + <name>ctx</name> + <required>true</required> + <rtexprvalue>true</rtexprvalue> + </attribute> + </tag> + + <tag> + <name>include</name> + <tagclass>org.jboss.portal.core.servlet.jsp.taglib.IncludeTag</tagclass> + <attribute> + <name>page</name> + <required>true</required> + <rtexprvalue>true</rtexprvalue> + </attribute> + </tag> + + <tag> + <name>error</name> + <tagclass>org.jboss.portal.core.servlet.jsp.taglib.ErrorTag</tagclass> + <attribute> + <name>key</name> + <required>true</required> + <rtexprvalue>true</rtexprvalue> + </attribute> + </tag> + + <tag> + <name>errors</name> + <tagclass>org.jboss.portal.core.servlet.jsp.taglib.ErrorsTag</tagclass> + </tag> + + <tag> + <name>success</name> + <tagclass>org.jboss.portal.core.servlet.jsp.taglib.SuccessTag</tagclass> + </tag> +</taglib> Added: trunk/forge/portal-extensions/polls/src/web/WEB-INF/web.xml =================================================================== --- trunk/forge/portal-extensions/polls/src/web/WEB-INF/web.xml 2005-12-09 22:01:29 UTC (rev 1768) +++ trunk/forge/portal-extensions/polls/src/web/WEB-INF/web.xml 2005-12-09 22:08:33 UTC (rev 1769) @@ -0,0 +1,16 @@ +<?xml version="1.0"?> +<!DOCTYPE web-app PUBLIC + "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" + "http://java.sun.com/dtd/web-app_2_3.dtd"> +<web-app> + <filter> + <filter-name>filesFromRepoFilter</filter-name> + <filter-class>org.jboss.forge.common.FilesFromRepoFilter</filter-class> + </filter> + + <filter-mapping> + <filter-name>filesFromRepoFilter</filter-name> + <url-pattern>/repo-access/*</url-pattern> + <dispatcher>INCLUDE</dispatcher> + </filter-mapping> +</web-app> \ No newline at end of file |