Update of
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/forms
In directory
james.mmbase.org:/tmp/cvs-serv18989/src/java/com/finalist/newsletter/forms
Modified Files:
NewsletterPublicationManagementAction.java
NewsletterSubscriberSearchAction.java
NewsletterSubscriptionAddRelAction.java
Added Files:
NewsletterSubscriberDeleteAction.java
Removed Files:
NewsletterNewsletterSubscriberDeleteAction.java
Log Message:
CMSC-990 replace subscriber parts : showing,paging with ui tags
See also:
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/forms
See also: http://www.mmbase.org/jira/browse/CMSC-990
NewsletterSubscriberDeleteAction.java is new
Index: NewsletterPublicationManagementAction.java
===================================================================
RCS file:
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/forms/NewsletterPublicationManagementAction.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- NewsletterPublicationManagementAction.java 24 Jul 2008 09:04:16 -0000
1.3
+++ NewsletterPublicationManagementAction.java 27 Jul 2008 07:38:09 -0000
1.4
@@ -43,21 +43,6 @@
if (StringUtils.isNotBlank(request.getParameter("offset"))) {
offset =
Integer.parseInt(request.getParameter("offset"));
}
- // <<<<<<< NewsletterPublicationManagementAction.java
- // =======
- // String forwardType = "";
- //
if(StringUtils.isNotBlank(request.getParameter("searchForwardType")))
- // {
- // forwardType =request.getParameter("searchForwardType");
- // }
- // if(forwardType.equals("statistics")){
- // request.setAttribute("newsletterId", newsletterId);
- // ActionForward ret= new
- //
ActionForward(mapping.findForward("statisticmanagement").getPath() +
- // "?newsletterId=" + newsletterId);
- // return ret;
- // }
- // >>>>>>> 1.2
int resultCount =
publicationService.searchPublicationCountForEdit(newsletterId, "", "", null,
now);
publications =
publicationService.searchPublication(newsletterId, "", "", null, now, pagesize,
offset * pagesize, "number", "UP");
List<Map<String, String>> results =
convertPublicationsToMap(publications);
@@ -156,21 +141,6 @@
}
private List convertPublicationsToMap(List<Publication> publications) {
-
- // =======
- // public ActionForward termList(ActionMapping mapping,
ActionForm form,
- // HttpServletRequest request, HttpServletResponse response){
- //
if(StringUtils.isNotBlank(request.getParameter("newsletterId"))){
- // request.setAttribute("newsletterId",
- // request.getParameter("newsletterId"));
- // }
- // return mapping.findForward("termlist");
- // }
- //
- // private List convertPublicationsToMap(Set<Publication>
publications)
- // {
- //
- // >>>>>>> 1.2
List<Map> results = new ArrayList<Map>();
for (Publication publication : publications) {
Map result = new HashMap();
Index: NewsletterSubscriberSearchAction.java
===================================================================
RCS file:
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/forms/NewsletterSubscriberSearchAction.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- NewsletterSubscriberSearchAction.java 24 Jul 2008 09:04:16 -0000
1.3
+++ NewsletterSubscriberSearchAction.java 27 Jul 2008 07:38:09 -0000
1.4
@@ -1,8 +1,8 @@
package com.finalist.newsletter.forms;
import java.util.ArrayList;
-import java.util.HashMap;
import java.util.HashSet;
+import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -19,10 +19,10 @@
import org.springframework.web.struts.DispatchActionSupport;
import com.finalist.cmsc.mmbase.PropertiesUtil;
-import com.finalist.cmsc.services.community.person.Person;
+import com.finalist.cmsc.paging.PagingStatusHolder;
+import com.finalist.cmsc.paging.PagingUtils;
import com.finalist.cmsc.services.community.person.PersonService;
import com.finalist.cmsc.services.community.security.AuthenticationService;
-
import com.finalist.newsletter.services.NewsletterPublicationService;
import com.finalist.newsletter.services.NewsletterService;
import com.finalist.newsletter.services.NewsletterSubscriptionServices;
@@ -52,67 +52,52 @@
protected ActionForward unspecified(ActionMapping mapping, ActionForm
form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
+ PagingStatusHolder pagingHolder =
PagingUtils.getStatusHolder(request);
+
log.debug("No parameter specified,go to subscriber page ,show
related subscribers");
int newsletterId =
Integer.parseInt(request.getParameter("newsletterId"));
- int pagesize = 10;
- if
(StringUtils.isNotEmpty(PropertiesUtil.getProperty("repository.search.results.per.page")))
{
- pagesize =
Integer.parseInt(PropertiesUtil.getProperty("repository.search.results.per.page"));
- }
- int resultCount = CountsearchSubscribers(newsletterId, "", "",
"", "");
- List results = searchSubscribers(newsletterId, "", "", "", "",
pagesize, 0, "number", "ASC");
- if (results != null) {
+
+ int resultCount = countsearchSubscribers(newsletterId, "", "",
"", "");
+ if (resultCount > 0) {
+ List results = searchSubscribers(newsletterId, "", "",
"", "");
request.setAttribute("results", results);
- request.setAttribute("resultCount", resultCount);
+ pagingHolder.setPageCount(resultCount);
}
+
+ request.setAttribute("resultCount", resultCount);
request.setAttribute("newsletterId", newsletterId);
- request.setAttribute("offset", 0);
- request.setAttribute("order", "number");
- request.setAttribute("direction", 1);
+
return mapping.findForward("success");
}
public ActionForward subScriberSearch(ActionMapping mapping, ActionForm
form, HttpServletRequest request, HttpServletResponse response) {
+ PagingUtils.getStatusHolder(request);
+
log.debug("parameter action specified, go to the subscribers
page, show related subscriber list");
int newsletterId =
Integer.parseInt(request.getParameter("newsletterId"));
- int pagesize = 10;
- if
(StringUtils.isNotEmpty(PropertiesUtil.getProperty("repository.search.results.per.page")))
{
- pagesize =
Integer.parseInt(PropertiesUtil.getProperty("repository.search.results.per.page"));
- }
- int offset = 0;
- if (StringUtils.isNotBlank(request.getParameter("offset"))) {
- offset =
Integer.parseInt(request.getParameter("offset"));
- }
- String order = "number";
- if (StringUtils.isNotBlank(request.getParameter("order"))) {
- order = request.getParameter("order");
- }
- String direction = "ASC";
- String tmpDir = request.getParameter("direction");
- if (StringUtils.isNotBlank(tmpDir)) {
- direction = "1".equals(tmpDir) ? "ASC" : "DESC";
- }
+
NewsletterSubscriberSearchForm myForm =
(NewsletterSubscriberSearchForm) form;
String tmpTerm = myForm.getTerm();
String tmpFullName = myForm.getFullname();
String tmpUserName = myForm.getUsername();
String tmpEmail = myForm.getEmail();
- int resultCount = CountsearchSubscribers(newsletterId, tmpTerm,
tmpFullName, tmpUserName, tmpEmail);
- List results = searchSubscribers(newsletterId, tmpTerm,
tmpFullName, tmpUserName, tmpEmail, pagesize, offset * pagesize, order,
direction);
- if (results != null) {
+ int resultCount = countsearchSubscribers(newsletterId, tmpTerm,
tmpFullName, tmpUserName, tmpEmail);
+
+ if (resultCount > 0) {
+ List results = searchSubscribers(newsletterId, tmpTerm,
tmpFullName, tmpUserName, tmpEmail);
request.setAttribute("results", results);
- request.setAttribute("resultCount", resultCount);
}
+
+ request.setAttribute("resultCount", resultCount);
request.setAttribute("newsletterId", newsletterId);
- request.setAttribute("offset", offset);
- request.setAttribute("order", order);
- request.setAttribute("direction", tmpDir);
+
return mapping.findForward("success");
}
private void AddToMap(List<Map> results, String fullName, String
userName, String email, String newsletters, String terms, int authenticationId)
{
- Map result = new HashMap();
+ Map result = new LinkedHashMap();
result.put("fullname", fullName);
result.put("username", userName);
result.put("email", email);
@@ -123,14 +108,14 @@
}
- private List<Map> searchSubscribers(int newsletterId, String terms,
String fullName, String userName, String email, int pageSize, int offset,
- String order, String direction) {
+ private List<Map> searchSubscribers(int newsletterId, String terms,
String fullName, String userName, String email) {
List<Map> results = new ArrayList<Map>();
+ PagingStatusHolder pagingHolder =
PagingUtils.getStatusHolderInSorting("number", "asc");
+
Set<Long> authenticationIds = new HashSet<Long>();
authenticationIds =
subscriptionService.getAuthenticationByTerms(newsletterId, terms);
- List<Object[]> qResults =
subscriptionHService.getSubscribersRelatedInfo(authenticationIds, fullName,
userName, email, pageSize, offset,
- order, direction);
+ List<Object[]> qResults =
subscriptionHService.getSubscribersRelatedInfo(authenticationIds, fullName,
userName, email, true);
for (Object[] result : qResults) {
String tmpFullName = result[0].toString() + " " +
result[1].toString();
String tmpEmail = result[2].toString();
@@ -143,10 +128,13 @@
return results;
}
- private int CountsearchSubscribers(int newsletterId, String terms,
String fullName, String userName, String email) {
+ private int countsearchSubscribers(int newsletterId, String terms,
String fullName, String userName, String email) {
+ int resultCount = 0;
Set<Long> authenticationIds = new HashSet<Long>();
authenticationIds =
subscriptionService.getAuthenticationByTerms(newsletterId, terms);
- int resultCount =
subscriptionHService.getSubscribersCount(authenticationIds, fullName, userName,
email);
+ if (authenticationIds.size() > 0) {
+ resultCount =
subscriptionHService.getSubscribersRelatedInfo(authenticationIds, fullName,
userName, email, false).size();
+ }
return resultCount;
}
}
Index: NewsletterSubscriptionAddRelAction.java
===================================================================
RCS file:
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/forms/NewsletterSubscriptionAddRelAction.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- NewsletterSubscriptionAddRelAction.java 24 Jul 2008 09:04:16 -0000
1.1
+++ NewsletterSubscriptionAddRelAction.java 27 Jul 2008 07:38:09 -0000
1.2
@@ -1,5 +1,7 @@
package com.finalist.newsletter.forms;
+import java.util.Enumeration;
+
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -32,4 +34,25 @@
request.setAttribute("newsletterId",
request.getParameter("newsletterId"));
return mapping.findForward("success");
}
+
+ public ActionForward subscribeNewsletters(ActionMapping mapping,
ActionForm form, HttpServletRequest request, HttpServletResponse response)
+ throws Exception {
+ log.debug("With parameter subscribeNewsletters,go to search
page");
+ // TODO: merge Eva's code
+ if
(StringUtils.isNotBlank(request.getParameter("newsletterId"))) {
+ int newsletterId =
Integer.parseInt(request.getParameter("newsletterId"));
+ Enumeration<String> parameterNames =
request.getParameterNames();
+ while (parameterNames.hasMoreElements()) {
+ String paraName =
parameterNames.nextElement().trim();
+ if (paraName.startsWith("chk_")) {
+ int chkNumber =
Integer.parseInt(request.getParameter(paraName));
+ if
(subscriptionServices.noSubscriptionRecord(chkNumber, newsletterId)) {
+
subscriptionServices.addNewRecord(chkNumber, newsletterId);
+ }
+ }
+ }
+ }
+ request.setAttribute("newsletterId",
request.getParameter("newsletterId"));
+ return mapping.findForward("success");
+ }
}
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs