[jboss-svn-commits] JBL Code SVN: r9928 - in labs/jbossforums/branches/forums101P22/forums/src: bin/portal-forums-war/default_graphics/images and 3 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Mar 3 10:37:46 EST 2007
Author: unibrew
Date: 2007-03-03 10:37:46 -0500 (Sat, 03 Mar 2007)
New Revision: 9928
Modified:
labs/jbossforums/branches/forums101P22/forums/src/bin/portal-forums-war/default_graphics/forums_styles.css
labs/jbossforums/branches/forums101P22/forums/src/bin/portal-forums-war/default_graphics/images/forum_ico_new_open.gif
labs/jbossforums/branches/forums101P22/forums/src/main/org/jboss/portlet/forums/ui/PortalUtil.java
labs/jbossforums/branches/forums101P22/forums/src/main/org/jboss/portlet/forums/ui/ThemeHelper.java
labs/jbossforums/branches/forums101P22/forums/src/main/org/jboss/portlet/forums/ui/view/PageNavigator.java
labs/jbossforums/branches/forums101P22/forums/src/resources/portal-forums-war/views/forums/viewforum_body.xhtml
Log:
[JBFORUMS-169] Finishing ForumView redesign.
Modified: labs/jbossforums/branches/forums101P22/forums/src/bin/portal-forums-war/default_graphics/forums_styles.css
===================================================================
--- labs/jbossforums/branches/forums101P22/forums/src/bin/portal-forums-war/default_graphics/forums_styles.css 2007-03-03 15:36:19 UTC (rev 9927)
+++ labs/jbossforums/branches/forums101P22/forums/src/bin/portal-forums-war/default_graphics/forums_styles.css 2007-03-03 15:37:46 UTC (rev 9928)
@@ -4,6 +4,10 @@
font-size:11px;
}
+.forumscontainer a {
+ text-decoration:underline;
+ }
+
.forumsectionhdr {
border-bottom: 1px solid #a1a1a1;
text-align:right;
Modified: labs/jbossforums/branches/forums101P22/forums/src/bin/portal-forums-war/default_graphics/images/forum_ico_new_open.gif
===================================================================
(Binary files differ)
Modified: labs/jbossforums/branches/forums101P22/forums/src/main/org/jboss/portlet/forums/ui/PortalUtil.java
===================================================================
--- labs/jbossforums/branches/forums101P22/forums/src/main/org/jboss/portlet/forums/ui/PortalUtil.java 2007-03-03 15:36:19 UTC (rev 9927)
+++ labs/jbossforums/branches/forums101P22/forums/src/main/org/jboss/portlet/forums/ui/PortalUtil.java 2007-03-03 15:37:46 UTC (rev 9928)
@@ -24,6 +24,7 @@
import java.io.StringWriter;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
+import java.util.Calendar;
import java.util.Date;
import java.util.Iterator;
import java.util.Locale;
@@ -412,7 +413,9 @@
{
User user = PortalUtil.getUser();
String property = PortalUtil.userProperty(user.getProperties(), "INFO_USER_LAST_LOGIN_DATE");
- return PortalUtil.getSDF().parse(property);
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTimeInMillis(Long.parseLong(property));
+ return calendar.getTime();
} catch (Exception e)
{
JSFUtil.handleException(e);
Modified: labs/jbossforums/branches/forums101P22/forums/src/main/org/jboss/portlet/forums/ui/ThemeHelper.java
===================================================================
--- labs/jbossforums/branches/forums101P22/forums/src/main/org/jboss/portlet/forums/ui/ThemeHelper.java 2007-03-03 15:36:19 UTC (rev 9927)
+++ labs/jbossforums/branches/forums101P22/forums/src/main/org/jboss/portlet/forums/ui/ThemeHelper.java 2007-03-03 15:37:46 UTC (rev 9928)
@@ -23,6 +23,7 @@
import java.util.Locale;
import java.util.ResourceBundle;
+import java.util.Date;
import javax.faces.component.UIViewRoot;
import javax.faces.context.FacesContext;
@@ -131,7 +132,16 @@
if(!isAnonymous)
{
- folderTypeURL = folderType.folderNew;
+ Date lastPostDate = topic.getLastPostDate();
+ Date lastLoginDate = PortalUtil.getUserLastLoginDate();
+
+ if (lastPostDate==null || lastLoginDate==null || lastPostDate.compareTo(lastLoginDate)<=0)
+ {
+ folderTypeURL = folderType.folder;
+ } else
+ {
+ folderTypeURL = folderType.folderNew;
+ }
}
else
{
Modified: labs/jbossforums/branches/forums101P22/forums/src/main/org/jboss/portlet/forums/ui/view/PageNavigator.java
===================================================================
--- labs/jbossforums/branches/forums101P22/forums/src/main/org/jboss/portlet/forums/ui/view/PageNavigator.java 2007-03-03 15:36:19 UTC (rev 9927)
+++ labs/jbossforums/branches/forums101P22/forums/src/main/org/jboss/portlet/forums/ui/view/PageNavigator.java 2007-03-03 15:37:46 UTC (rev 9928)
@@ -24,6 +24,8 @@
import java.io.Serializable;
import java.util.Collection;
import java.util.ArrayList;
+import java.util.SortedSet;
+import java.util.TreeSet;
/*
* Created on May 11, 2006
@@ -33,6 +35,9 @@
*/
public abstract class PageNavigator implements Serializable
{
+
+ public static final int PAGINATION_SIZE = 8;
+
/**
*
*/
@@ -41,6 +46,8 @@
private int currentPage = 0;
private int numberOfEntries=0;
private Collection page = null;
+ private SortedSet currentPaginationLeft = null;
+ private SortedSet currentPaginationRight = null;
/**
*
@@ -62,6 +69,36 @@
double pageCountDbl = numberOfEntries/pageSizeDbl;
this.totalPages = (int)Math.ceil(pageCountDbl);
+ this.currentPaginationLeft = new TreeSet();
+ this.currentPaginationRight = new TreeSet();
+
+ // Initializing pagination so that selected page will be in the middle.
+ if (currentPage >= totalPages)
+ {
+ for (int i=2;i<=PAGINATION_SIZE && i<=totalPages;i++)
+ {
+ this.currentPaginationRight.add(Integer.valueOf(i));
+ }
+ } else {
+ int counter = 1;
+ for (int j=1;j<totalPages && counter<PAGINATION_SIZE;j++)
+ {
+ if ( (currentPage+1) -j > 0) {
+ this.currentPaginationLeft.add(Integer.valueOf( (currentPage+1) -j ));
+ counter++;
+ if (counter==PAGINATION_SIZE)
+ {
+ break;
+ }
+ }
+ if ( (currentPage+1) +j <= totalPages)
+ {
+ counter++;
+ this.currentPaginationRight.add(Integer.valueOf( (currentPage+1) +j ));
+ }
+ }
+ }
+
this.page = initializePage();
}
@@ -196,4 +233,13 @@
{
this.currentPage = currentPage;
}
+
+ public Object[] getCurrentPaginationLeft() {
+ return this.currentPaginationLeft.toArray();
+ }
+
+ public Object[] getCurrentPaginationRight() {
+ return this.currentPaginationRight.toArray();
+ }
+
}
Modified: labs/jbossforums/branches/forums101P22/forums/src/resources/portal-forums-war/views/forums/viewforum_body.xhtml
===================================================================
--- labs/jbossforums/branches/forums101P22/forums/src/resources/portal-forums-war/views/forums/viewforum_body.xhtml 2007-03-03 15:36:19 UTC (rev 9927)
+++ labs/jbossforums/branches/forums101P22/forums/src/resources/portal-forums-war/views/forums/viewforum_body.xhtml 2007-03-03 15:37:46 UTC (rev 9928)
@@ -102,64 +102,13 @@
<div class="forumtitletext">
<input type="hidden" name="f" value="#{forum.forum.id}" />
- <h4>
- <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
- <f:param name="f" value="#{forum.forum.id}"/>
- <h:outputText value="#{forum.forum.name}" />
- </h:outputLink>
+ <h4>
+ ${forum.forum.name}
</h4>
</div>
-
-<!-- TODO: MISSING DESIGN -->
- <!-- page navigation -->
- <c:if test="#{forum.pageNavigator.totalPages gt 100}">
- <td align="right" valign="middle" nowrap="nowrap">
- <span class="gensmall"></span><br/>
- <span class="nav">
- ${resource.Goto_page}
- <!-- previous link -->
- <c:if test="#{forum.pageNavigator.pageNumber gt 1}">
-   
- <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
- <f:param name="f" value="#{forum.forum.id}"/>
- <f:param name="page" value="#{forum.pageNavigator.currentPage-1}"/>
- <h:outputText value="${resource.Previous}"/>
- </h:outputLink>
-   
- </c:if>
- <!-- actual pages -->
- <c:forEach items="#{forum.pageNavigator.pages}" var="page" varStatus="idx">
- <c:choose>
- <c:when test="#{forum.pageNavigator.pageNumber==page}">
- <b>${page}</b>
- </c:when>
- <c:otherwise>
- <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
- <f:param name="f" value="#{forum.forum.id}"/>
- <f:param name="page" value="#{page-1}"/>
- <h:outputText value="${page}"/>
- </h:outputLink>
- </c:otherwise>
- </c:choose>
- <c:if test="${idx.index-1 ne forum.pageNavigator.totalPages-1}">
- <f:verbatim>,</f:verbatim>
- </c:if>
- </c:forEach>
- <!-- Next link -->
- <c:if test="#{forum.pageNavigator.pageNumber lt forum.pageNavigator.totalPages}">
-   
- <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
- <f:param name="f" value="#{forum.forum.id}"/>
- <f:param name="page" value="#{forum.pageNavigator.currentPage+1}"/>
- <h:outputText value="${resource.Next}"/>
- </h:outputLink>
-   
- </c:if>
- </span>
- </td>
- </c:if>
-
+ <!-- PAGINATION -->
+ <c:if test="#{forum.pageNavigator.totalPages gt 1}">
<div class="forumpagination">
<ul>
<li class="disablepage">
@@ -168,21 +117,87 @@
<f:param value="${forum.pageNavigator.totalPages}"/>
</h:outputFormat>
</li>
- <li class="disablepage">First</li>
- <li class="disablepage">< Previous</li>
- <li class="currentpage">1</li>
- <li><a href="#">2</a></li>
- <li><a href="#">3</a></li>
- <li><a href="#">4</a></li>
- <li><a href="#">5</a></li>
- <li><a href="#">6</a></li>
- <li><a href="#">7</a></li>
- <li><a href="#">8</a></li>
- <li><a href="#">Next ></a></li>
- <li><a href="#">Last</a></li>
+
+ <c:choose>
+ <c:when test="#{forum.pageNavigator.currentPage eq 0}">
+ <li class="disablepage">
+ ${resource.First}
+ </li>
+ <li class="disablepage">
+ < ${resource.Previous}
+ </li>
+ </c:when>
+ <c:otherwise>
+ <li>
+ <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
+ <f:param name="f" value="#{forum.forum.id}"/>
+ <f:param name="page" value="0"/>
+ <h:outputText value="${resource.First}"/>
+ </h:outputLink>
+ </li>
+ <li>
+ <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
+ <f:param name="f" value="#{forum.forum.id}"/>
+ <f:param name="page" value="${forum.pageNavigator.currentPage-1}"/>
+ <h:outputText value="< ${resource.Previous}"/>
+ </h:outputLink>
+ </li>
+ </c:otherwise>
+ </c:choose>
+
+ <c:forEach items="#{forum.pageNavigator.currentPaginationLeft}" var="pageNumber">
+ <li>
+ <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
+ <f:param name="f" value="#{forum.forum.id}"/>
+ <f:param name="page" value="${pageNumber-1}"/>
+ <h:outputText value="${pageNumber}"/>
+ </h:outputLink>
+ </li>
+ </c:forEach>
+
+ <li class="currentpage">
+ ${forum.pageNavigator.currentPage+1}
+ </li>
+
+ <c:forEach items="#{forum.pageNavigator.currentPaginationRight}" var="pageNumber">
+ <li>
+ <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
+ <f:param name="f" value="#{forum.forum.id}"/>
+ <f:param name="page" value="${pageNumber-1}"/>
+ <h:outputText value="${pageNumber}"/>
+ </h:outputLink>
+ </li>
+ </c:forEach>
+
+ <c:choose>
+ <c:when test="#{forum.pageNavigator.currentPage eq (forum.pageNavigator.totalPages-1) }">
+ <li class="disablepage">
+ ${resource.Next} >
+ </li>
+ <li class="disablepage">
+ ${resource.Last}
+ </li>
+ </c:when>
+ <c:otherwise>
+ <li>
+ <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
+ <f:param name="f" value="#{forum.forum.id}"/>
+ <f:param name="page" value="${forum.pageNavigator.currentPage+1}"/>
+ <h:outputText value="${resource.Next} >"/>
+ </h:outputLink>
+ </li>
+ <li>
+ <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
+ <f:param name="f" value="#{forum.forum.id}"/>
+ <f:param name="page" value="${forum.pageNavigator.totalPages-1}"/>
+ <h:outputText value="${resource.Last}"/>
+ </h:outputLink>
+ </li>
+ </c:otherwise>
+ </c:choose>
</ul>
</div>
-<!-- TODO: MISSING DESING - END -->
+ </c:if>
<forums:isAllowed fragment="acl://newTopic" contextData="#{forum.forum}">
<div class="actionbuttons">
@@ -583,6 +598,7 @@
</c:choose>
</table>
+ <!-- PAGINATION -->
<c:if test="#{forum.pageNavigator.totalPages gt 1}">
<div class="forumpagination">
<ul>
@@ -592,23 +608,89 @@
<f:param value="${forum.pageNavigator.totalPages}"/>
</h:outputFormat>
</li>
- <li class="disablepage">First</li>
- <li class="disablepage">< Previous</li>
- <li class="currentpage">1</li>
- <li><a href="#">2</a></li>
- <li><a href="#">3</a></li>
- <li><a href="#">4</a></li>
- <li><a href="#">5</a></li>
- <li><a href="#">6</a></li>
- <li><a href="#">7</a></li>
- <li><a href="#">8</a></li>
- <li><a href="#">Next ></a></li>
- <li><a href="#">Last</a></li>
+
+ <c:choose>
+ <c:when test="#{forum.pageNavigator.currentPage eq 0}">
+ <li class="disablepage">
+ ${resource.First}
+ </li>
+ <li class="disablepage">
+ < ${resource.Previous}
+ </li>
+ </c:when>
+ <c:otherwise>
+ <li>
+ <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
+ <f:param name="f" value="#{forum.forum.id}"/>
+ <f:param name="page" value="0"/>
+ <h:outputText value="${resource.First}"/>
+ </h:outputLink>
+ </li>
+ <li>
+ <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
+ <f:param name="f" value="#{forum.forum.id}"/>
+ <f:param name="page" value="${forum.pageNavigator.currentPage-1}"/>
+ <h:outputText value="< ${resource.Previous}"/>
+ </h:outputLink>
+ </li>
+ </c:otherwise>
+ </c:choose>
+
+ <c:forEach items="#{forum.pageNavigator.currentPaginationLeft}" var="pageNumber">
+ <li>
+ <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
+ <f:param name="f" value="#{forum.forum.id}"/>
+ <f:param name="page" value="${pageNumber-1}"/>
+ <h:outputText value="${pageNumber}"/>
+ </h:outputLink>
+ </li>
+ </c:forEach>
+
+ <li class="currentpage">
+ ${forum.pageNavigator.currentPage+1}
+ </li>
+
+ <c:forEach items="#{forum.pageNavigator.currentPaginationRight}" var="pageNumber">
+ <li>
+ <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
+ <f:param name="f" value="#{forum.forum.id}"/>
+ <f:param name="page" value="${pageNumber-1}"/>
+ <h:outputText value="${pageNumber}"/>
+ </h:outputLink>
+ </li>
+ </c:forEach>
+
+ <c:choose>
+ <c:when test="#{forum.pageNavigator.currentPage eq (forum.pageNavigator.totalPages-1) }">
+ <li class="disablepage">
+ ${resource.Next} >
+ </li>
+ <li class="disablepage">
+ ${resource.Last}
+ </li>
+ </c:when>
+ <c:otherwise>
+ <li>
+ <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
+ <f:param name="f" value="#{forum.forum.id}"/>
+ <f:param name="page" value="${forum.pageNavigator.currentPage+1}"/>
+ <h:outputText value="${resource.Next} >"/>
+ </h:outputLink>
+ </li>
+ <li>
+ <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
+ <f:param name="f" value="#{forum.forum.id}"/>
+ <f:param name="page" value="${forum.pageNavigator.totalPages-1}"/>
+ <h:outputText value="${resource.Last}"/>
+ </h:outputLink>
+ </li>
+ </c:otherwise>
+ </c:choose>
</ul>
</div>
</c:if>
- <!-- newtopic, forum, and page navigation -->
+ <!-- NEWTOPIC -->
<forums:isAllowed fragment="acl://newTopic" contextData="#{forum.forum}">
<div class="actionbuttons">
<ul>
@@ -635,6 +717,7 @@
</div>
</forums:isAllowed>
+ <!-- MODERATION -->
<c:if test="#{shared.anonymous==false}">
<forums:isAllowed fragment="acl://moderateForum" contextData="#{forum.forum}">
<div class="modtools">
@@ -655,6 +738,7 @@
</forums:isAllowed>
</c:if>
+ <!-- ADMINISTRATION -->
<c:if test="#{shared.anonymous==false}">
<forums:isAllowed fragment="acl://lockForums" contextData="#{forum.forum}" >
<div class="admintools">
@@ -796,60 +880,11 @@
</forums:isAllowedChoose>
</div>
+
+ </h:form>
+ <ui:include src="/views/jumpbox.xhtml" />
-
-
- <!-- page navigation -->
- <c:if test="#{forum.pageNavigator.totalPages gt 100}">
- <td align="right" valign="middle" nowrap="nowrap">
- <span class="gensmall"></span><br/>
- <span class="nav">
- ${resource.Goto_page}
- <!-- previous link -->
- <c:if test="#{forum.pageNavigator.pageNumber gt 1}">
-   
- <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
- <f:param name="f" value="#{forum.forum.id}"/>
- <f:param name="page" value="#{forum.pageNavigator.currentPage-1}"/>
- <h:outputText value="${resource.Previous}"/>
- </h:outputLink>
-   
- </c:if>
- <!-- actual pages -->
- <c:forEach items="#{forum.pageNavigator.pages}" var="page" varStatus="idx">
- <c:choose>
- <c:when test="#{forum.pageNavigator.pageNumber==page}">
- <b>${page}</b>
- </c:when>
- <c:otherwise>
- <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
- <f:param name="f" value="#{forum.forum.id}"/>
- <f:param name="page" value="#{page-1}"/>
- <h:outputText value="${page}"/>
- </h:outputLink>
- </c:otherwise>
- </c:choose>
- <c:if test="${idx.index-1 ne forum.pageNavigator.totalPages-1}">
- <f:verbatim>,</f:verbatim>
- </c:if>
- </c:forEach>
- <!-- Next link -->
- <c:if test="#{forum.pageNavigator.pageNumber lt forum.pageNavigator.totalPages}">
-   
- <h:outputLink value="#{forums:outputLink(shared.links['forum'],true)}">
- <f:param name="f" value="#{forum.forum.id}"/>
- <f:param name="page" value="#{forum.pageNavigator.currentPage+1}"/>
- <h:outputText value="${resource.Next}"/>
- </h:outputLink>
-   
- </c:if>
- </span>
- </td>
- </c:if>
-
- </h:form>
-
</forums:isAllowed>
</forums:isAllowed>
</c:if>
More information about the jboss-svn-commits
mailing list