You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by ag...@apache.org on 2005/09/15 21:21:53 UTC
svn commit: r289295 - in /incubator/roller/branches/roller_2.0:
src/org/roller/presentation/weblog/actions/WeblogEntryFormAction.java
src/org/roller/presentation/weblog/formbeans/WeblogEntryFormEx.java
web/weblog/WeblogEdit.jsp
Author: agilliland
Date: Thu Sep 15 12:21:41 2005
New Revision: 289295
URL: http://svn.apache.org/viewcvs?rev=289295&view=rev
Log:
new process for setting entry pubtime. pubtime is now NULL by default until it is set manually by the user, or the entry is first published.
Modified:
incubator/roller/branches/roller_2.0/src/org/roller/presentation/weblog/actions/WeblogEntryFormAction.java
incubator/roller/branches/roller_2.0/src/org/roller/presentation/weblog/formbeans/WeblogEntryFormEx.java
incubator/roller/branches/roller_2.0/web/weblog/WeblogEdit.jsp
Modified: incubator/roller/branches/roller_2.0/src/org/roller/presentation/weblog/actions/WeblogEntryFormAction.java
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller_2.0/src/org/roller/presentation/weblog/actions/WeblogEntryFormAction.java?rev=289295&r1=289294&r2=289295&view=diff
==============================================================================
--- incubator/roller/branches/roller_2.0/src/org/roller/presentation/weblog/actions/WeblogEntryFormAction.java (original)
+++ incubator/roller/branches/roller_2.0/src/org/roller/presentation/weblog/actions/WeblogEntryFormAction.java Thu Sep 15 12:21:41 2005
@@ -285,6 +285,26 @@
entry = weblogMgr.retrieveWeblogEntry(wf.getId());
entry.save(); // should throw if save not permitted
}
+
+ mLogger.debug("setting update time now");
+ wf.setUpdateTime(new Timestamp(new Date().getTime()));
+
+ if("PUBLISHED".equals(wf.getStatus()) &&
+ "0/0/0".equals(wf.getDateString())) {
+ mLogger.debug("setting pubtime now");
+
+ /* NOTE: the wf.copyTo() method will override this value
+ * based on data submitted with the form if that data is
+ * not null. check the method to verify.
+ *
+ * this means that setting the pubtime here only takes
+ * effect if the entry is being published for the first
+ * time.
+ */
+ wf.setPubTime(wf.getUpdateTime());
+ }
+
+ mLogger.debug("copying submitted form data to entry object");
wf.copyTo(entry, request.getLocale(),request.getParameterMap());
// Fetch MediaCast content type and length
Modified: incubator/roller/branches/roller_2.0/src/org/roller/presentation/weblog/formbeans/WeblogEntryFormEx.java
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller_2.0/src/org/roller/presentation/weblog/formbeans/WeblogEntryFormEx.java?rev=289295&r1=289294&r2=289295&view=diff
==============================================================================
--- incubator/roller/branches/roller_2.0/src/org/roller/presentation/weblog/formbeans/WeblogEntryFormEx.java (original)
+++ incubator/roller/branches/roller_2.0/src/org/roller/presentation/weblog/formbeans/WeblogEntryFormEx.java Thu Sep 15 12:21:41 2005
@@ -15,6 +15,8 @@
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang.StringUtils;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
import org.roller.RollerException;
import org.roller.pojos.CommentData;
import org.roller.pojos.EntryAttributeData;
@@ -32,6 +34,9 @@
*/
public class WeblogEntryFormEx extends WeblogEntryForm
{
+ private static Log mLogger =
+ LogFactory.getFactory().getInstance(WeblogEntryFormEx.class);
+
private String mCategoryId = null;
private String mCreatorId = null;
private String mWebsiteId = null;
@@ -50,11 +55,13 @@
public WeblogEntryFormEx()
{
super();
+ mLogger.debug("default construction");
}
public WeblogEntryFormEx(WeblogEntryData entryData, java.util.Locale locale)
throws RollerException
{
+ mLogger.debug("construction from existing entry");
copyFrom(entryData, locale);
}
@@ -64,6 +71,8 @@
*/
public void initNew(HttpServletRequest request, HttpServletResponse response)
{
+ mLogger.debug("init new called");
+
RollerRequest rreq = RollerRequest.getRollerRequest(request);
RollerSession rses = RollerSession.getRollerSession(request);
if (rreq.getWebsite().getDefaultPlugins() != null)
@@ -73,9 +82,11 @@
}
status = WeblogEntryData.DRAFT;
allowComments = Boolean.TRUE;
- updateTime = new Timestamp(new Date().getTime());
- pubTime = updateTime;
- initPubTimeDateStrings(rreq.getWebsite(), request.getLocale());
+
+ // we want pubTime and updateTime to be empty for new entries -- AG
+ //updateTime = new Timestamp(new Date().getTime());
+ //pubTime = updateTime;
+ //initPubTimeDateStrings(rreq.getWebsite(), request.getLocale());
}
/**
@@ -84,14 +95,17 @@
public void copyTo(WeblogEntryData entry, Locale locale, Map paramMap)
throws RollerException
{
+ mLogger.debug("copy to called");
+
super.copyTo(entry, locale);
// First parts the date string from the calendar
final DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT, locale);
- final Date newDate;
+ Date newDate = null;
try
{
- newDate = df.parse(getDateString());
+ if(getDateString() != null && !"0/0/0".equals(getDateString()))
+ newDate = df.parse(getDateString());
}
catch (ParseException e)
{
@@ -99,13 +113,15 @@
}
// Now handle the time from the hour, minute and second combos
- final Calendar cal = Calendar.getInstance(locale);
- cal.setTime(newDate);
- cal.setTimeZone(entry.getWebsite().getTimeZoneInstance());
- cal.set(Calendar.HOUR_OF_DAY, getHours().intValue());
- cal.set(Calendar.MINUTE, getMinutes().intValue());
- cal.set(Calendar.SECOND, getSeconds().intValue());
- entry.setPubTime(new Timestamp(cal.getTimeInMillis()));
+ if(newDate != null) {
+ final Calendar cal = Calendar.getInstance(locale);
+ cal.setTime(newDate);
+ cal.setTimeZone(entry.getWebsite().getTimeZoneInstance());
+ cal.set(Calendar.HOUR_OF_DAY, getHours().intValue());
+ cal.set(Calendar.MINUTE, getMinutes().intValue());
+ cal.set(Calendar.SECOND, getSeconds().intValue());
+ entry.setPubTime(new Timestamp(cal.getTimeInMillis()));
+ }
entry.setPlugins( StringUtils.join(this.pluginsArray,",") );
@@ -151,6 +167,8 @@
public void copyFrom(WeblogEntryData entry, Locale locale)
throws RollerException
{
+ mLogger.debug("copy from called");
+
super.copyFrom(entry, locale);
mCategoryId = entry.getCategory().getId();
mCreatorId = entry.getCreator().getId();
@@ -203,16 +221,27 @@
*/
private void initPubTimeDateStrings(WebsiteData website, Locale locale)
{
- Calendar cal = Calendar.getInstance();
- cal.setTime(getPubTime());
- cal.setTimeZone(website.getTimeZoneInstance());
- mHours = new Integer(cal.get(Calendar.HOUR_OF_DAY));
- mMinutes = new Integer(cal.get(Calendar.MINUTE));
- mSeconds = new Integer(cal.get(Calendar.SECOND));
+ mLogger.debug("init pub time date sting called");
- DateFormat df = DateFormat.getDateInstance(
- DateFormat.SHORT, locale);
- mDateString = df.format(getPubTime());
+ if(getPubTime() != null) {
+ mLogger.debug("figuring pubtime values");
+
+ Calendar cal = Calendar.getInstance();
+ cal.setTime(getPubTime());
+ cal.setTimeZone(website.getTimeZoneInstance());
+ mHours = new Integer(cal.get(Calendar.HOUR_OF_DAY));
+ mMinutes = new Integer(cal.get(Calendar.MINUTE));
+ mSeconds = new Integer(cal.get(Calendar.SECOND));
+
+ DateFormat df = DateFormat.getDateInstance(
+ DateFormat.SHORT, locale);
+ mDateString = df.format(getPubTime());
+
+ } else {
+ mLogger.debug("pubtime is null, must be a draft");
+
+ mDateString = "0/0/0";
+ }
}
/**
@@ -286,6 +315,7 @@
*/
public void setDateString(String dateString) throws ParseException
{
+ mLogger.debug("somebody setting date string");
mDateString = dateString;
}
@@ -346,10 +376,12 @@
javax.servlet.ServletRequest request)
{
super.doReset(mapping, request);
+ mLogger.debug("reset called");
pluginsArray = new String[0];
// reset time fields to current time
+ /* we want the date fields to be empty by default now -- Allen G
Calendar cal = Calendar.getInstance(request.getLocale());
Date now = new Date();
cal.setTime(now);
@@ -358,6 +390,8 @@
mSeconds = new Integer(cal.get(Calendar.SECOND));
DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT, request.getLocale());
mDateString = df.format(now);
+ */
+ mDateString = "0/0/0";
}
/**
Modified: incubator/roller/branches/roller_2.0/web/weblog/WeblogEdit.jsp
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller_2.0/web/weblog/WeblogEdit.jsp?rev=289295&r1=289294&r2=289295&view=diff
==============================================================================
--- incubator/roller/branches/roller_2.0/web/weblog/WeblogEdit.jsp (original)
+++ incubator/roller/branches/roller_2.0/web/weblog/WeblogEdit.jsp Thu Sep 15 12:21:41 2005
@@ -84,7 +84,8 @@
<html:hidden property="creatorId"/>
<html:hidden property="websiteId"/>
<html:hidden property="anchor"/>
- <html:hidden property="updateTime"/>
+ <%-- updateTime is now set after the entry is submitted -- Allen G
+ <html:hidden property="updateTime"/> --%>
<html:hidden property="status"/>
<html:hidden property="link"/>
<html:hidden name="method" property="method" value="save"/>