1 18 package org.apache.roller.ui.authoring.struts.formbeans; 19 20 import java.text.DateFormat ; 21 import java.text.ParseException ; 22 import java.util.ArrayList ; 23 import java.util.Calendar ; 24 import java.util.Date ; 25 import java.util.Iterator ; 26 import java.util.List ; 27 import java.util.Locale ; 28 29 import javax.servlet.ServletRequest ; 30 import org.apache.commons.logging.Log; 31 import org.apache.commons.logging.LogFactory; 32 33 import org.apache.struts.action.ActionMapping; 34 import org.apache.roller.pojos.CommentData; 35 import org.apache.roller.util.DateUtil; 36 import org.apache.roller.util.Utilities; 37 38 42 public class CommentManagementForm 43 extends org.apache.struts.action.ActionForm 44 implements java.io.Serializable { 45 46 private static Log logger = 47 LogFactory.getFactory().getInstance(CommentManagementForm.class); 48 49 private String entryid = null; 50 private String handle = null; 51 52 private String searchString = null; 53 private String startDateString; 54 private String endDateString; 55 56 57 private String spamString = "ALL"; 58 59 60 private String approvedString = "ALL"; 61 62 63 private int count = 30; 64 65 66 private int offset = 0; 67 68 69 private String [] spamComments = new String [0]; 70 71 72 private String [] approvedComments = new String [0]; 73 74 75 private String [] deleteComments = new String [0]; 76 77 78 private String ids = null; 79 80 81 public void reset(ActionMapping mapping, ServletRequest request) { 82 Calendar cal = Calendar.getInstance(request.getLocale()); 84 Date now = new Date (); 85 cal.setTime(now); 86 87 DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT, request.getLocale()); 88 setEndDateString(df.format(now)); 89 90 cal.set(Calendar.DAY_OF_MONTH, 1); 91 setStartDateString(df.format(cal.getTime())); 92 } 93 94 public void loadCheckboxes(List comments) { 95 ArrayList all = new ArrayList (); 96 ArrayList approvedList = new ArrayList (); 97 ArrayList spamList = new ArrayList (); 98 Iterator it = comments.iterator(); 99 while (it.hasNext()) { 100 CommentData comment = (CommentData)it.next(); 101 all.add(comment.getId()); 102 if (comment.getApproved().booleanValue()) { 103 approvedList.add(comment.getId()); 104 } 105 if (comment.getSpam().booleanValue()) { 106 spamList.add(comment.getId()); 107 } 108 } 109 String [] idArray = (String [])all.toArray( 110 new String [all.size()]); 111 ids = Utilities.stringArrayToString(idArray,","); 112 113 approvedComments = (String [])approvedList.toArray( 114 new String [approvedList.size()]); 115 spamComments = (String [])spamList.toArray( 116 new String [spamList.size()]); 117 } 118 119 public Date getStartDate(Locale locale) { 120 Date startDate = null; 121 final DateFormat df = 122 DateFormat.getDateInstance(DateFormat.SHORT, locale); 123 if (null != getStartDateString() && getStartDateString().trim().length() > 0) { 124 try { 125 startDate = DateUtil.getStartOfDay(df.parse(getStartDateString())); 126 } catch (ParseException e) { 127 logger.debug("Parsing startDate", e); 129 } 130 } 131 return startDate; 132 } 133 134 public Date getEndDate(Locale locale) { 135 Date endDate = null; 136 final DateFormat df = 137 DateFormat.getDateInstance(DateFormat.SHORT, locale); 138 if (null != getEndDateString() && getEndDateString().trim().length() > 0) { 139 try { 140 endDate = DateUtil.getEndOfDay(df.parse(getEndDateString())); 141 } catch (ParseException e) { 142 logger.debug("Parsing endDate", e); 144 } 145 } 146 return endDate; 147 } 148 149 public Boolean getSpam() { 150 if (spamString.equals("ONLY_SPAM")) { 151 return Boolean.TRUE; 152 } else if (spamString.equals("NO_SPAM")) { 153 return Boolean.FALSE; 154 } 155 return null; 156 } 157 158 public Boolean getPending() { 159 if (approvedString.equals("ONLY_PENDING")) { 160 return Boolean.TRUE; 161 } 162 return null; 163 } 164 165 public Boolean getApproved() { 166 if (approvedString.equals("ONLY_APPROVED")) { 167 return Boolean.TRUE; 168 } else if (approvedString.equals("ONLY_DISAPPROVED")) { 169 return Boolean.FALSE; 170 } 171 return null; 172 } 173 174 public int getCount() { 175 return count; 176 } 177 178 public void setCount(int count) { 179 this.count = count; 180 } 181 182 public int getOffset() { 183 return offset; 184 } 185 186 public void setOffset(int offset) { 187 this.offset = offset; 188 } 189 190 public String getStartDateString() { 191 return startDateString; 192 } 193 194 public void setStartDateString(String startDateString) { 195 this.startDateString = startDateString; 196 } 197 198 public String getEndDateString() { 199 return endDateString; 200 } 201 202 public void setEndDateString(String endDateString) { 203 this.endDateString = endDateString; 204 } 205 206 public String getSpamString() { 207 return spamString; 208 } 209 210 public void setSpamString(String spamString) { 211 this.spamString = spamString; 212 } 213 214 public String getPendingString() { 215 return approvedString; 216 } 217 218 public void setPendingString(String pendingString) { 219 this.approvedString = pendingString; 220 } 221 222 public String getIds() { 223 return ids; 224 } 225 226 public void setIds(String ids) { 227 this.ids = ids; 228 } 229 230 public String getSearchString() { 231 return searchString; 232 } 233 234 public void setSearchString(String searchString) { 235 this.searchString = searchString; 236 } 237 238 public String getEntryid() { 239 return entryid; 240 } 241 242 public void setEntryid(String entryid) { 243 this.entryid = entryid; 244 } 245 246 public String getWeblog() { 247 return handle; 248 } 249 250 public void setWeblog(String handle) { 251 this.handle = handle; 252 } 253 254 public String [] getDeleteComments() { 255 return deleteComments; 256 } 257 258 public void setDeleteComments(String [] deleteComments) { 259 this.deleteComments = deleteComments; 260 } 261 262 public String [] getSpamComments() { 263 return spamComments; 264 } 265 266 public void setSpamComments(String [] commentsToMarkAsSpam) { 267 this.spamComments = commentsToMarkAsSpam; 268 } 269 270 public String [] getApprovedComments() { 271 return approvedComments; 272 } 273 274 public void setApprovedComments(String [] approvedComments) { 275 this.approvedComments = approvedComments; 276 } 277 278 } 279 | Popular Tags |