Commit 29fd5c49 authored by Liang Ding's avatar Liang Ding

Fixed #169

parent 7da5a034
...@@ -16,12 +16,9 @@ ...@@ -16,12 +16,9 @@
package org.b3log.solo.api.metaweblog; package org.b3log.solo.api.metaweblog;
import java.text.DateFormat;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.TimeZone;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import javax.servlet.ServletInputStream; import javax.servlet.ServletInputStream;
...@@ -30,6 +27,7 @@ import javax.servlet.http.HttpServletResponse; ...@@ -30,6 +27,7 @@ import javax.servlet.http.HttpServletResponse;
import org.apache.commons.io.IOUtils; import org.apache.commons.io.IOUtils;
import org.apache.commons.lang.StringEscapeUtils; import org.apache.commons.lang.StringEscapeUtils;
import org.apache.commons.lang.time.DateFormatUtils; import org.apache.commons.lang.time.DateFormatUtils;
import org.apache.commons.lang.time.DateUtils;
import org.b3log.latke.Keys; import org.b3log.latke.Keys;
import org.b3log.latke.model.User; import org.b3log.latke.model.User;
import org.b3log.latke.repository.Transaction; import org.b3log.latke.repository.Transaction;
...@@ -74,7 +72,7 @@ import org.jsoup.Jsoup; ...@@ -74,7 +72,7 @@ import org.jsoup.Jsoup;
* </p> * </p>
* *
* @author <a href="mailto:DL88250@gmail.com">Liang Ding</a> * @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
* @version 1.0.0.7, Aug 29, 2012 * @version 1.0.0.8, Jan 18, 2013
* @since 0.4.0 * @since 0.4.0
*/ */
@RequestProcessor @RequestProcessor
...@@ -372,12 +370,7 @@ public final class MetaWeblogAPI { ...@@ -372,12 +370,7 @@ public final class MetaWeblogAPI {
} catch (final ParseException e) { } catch (final ParseException e) {
LOGGER.log(Level.WARNING, LOGGER.log(Level.WARNING,
"Parses article create date failed with ISO8601, retry to parse with pattern[yyyy-MM-dd'T'HH:mm:ss]"); "Parses article create date failed with ISO8601, retry to parse with pattern[yyyy-MM-dd'T'HH:mm:ss]");
final String timeZoneId = preference.getString(Preference.TIME_ZONE_ID); date = DateUtils.parseDate(dateString, new String[] {"yyyyMMdd'T'HH:mm:ss"});
final TimeZone timeZone = TimeZone.getTimeZone(timeZoneId);
final DateFormat format = new SimpleDateFormat("yyyyMMdd'T'HH:mm:ss");
format.setTimeZone(timeZone);
date = format.parse(dateString);
} }
ret.put(Article.ARTICLE_CREATE_DATE, date); ret.put(Article.ARTICLE_CREATE_DATE, date);
} else if ("title".equals(name)) { } else if ("title".equals(name)) {
......
...@@ -24,6 +24,7 @@ import java.util.logging.Level; ...@@ -24,6 +24,7 @@ import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang.time.DateFormatUtils;
import org.b3log.latke.Keys; import org.b3log.latke.Keys;
import org.b3log.latke.Latkes; import org.b3log.latke.Latkes;
import org.b3log.latke.event.Event; import org.b3log.latke.event.Event;
...@@ -65,7 +66,7 @@ import org.json.JSONObject; ...@@ -65,7 +66,7 @@ import org.json.JSONObject;
* Comment receiver (from B3log Symphony). * Comment receiver (from B3log Symphony).
* *
* @author <a href="mailto:DL88250@gmail.com">Liang Ding</a> * @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
* @version 1.0.0.4, Jan 4, 2013 * @version 1.0.0.5, Jan 18, 2013
* @since 0.5.5 * @since 0.5.5
*/ */
@RequestProcessor @RequestProcessor
...@@ -206,7 +207,7 @@ public final class CommentReceiver { ...@@ -206,7 +207,7 @@ public final class CommentReceiver {
final Date date = TimeZones.getTime(timeZoneId); final Date date = TimeZones.getTime(timeZoneId);
comment.put(Comment.COMMENT_DATE, date); comment.put(Comment.COMMENT_DATE, date);
ret.put(Comment.COMMENT_DATE, Comment.DATE_FORMAT.format(date)); ret.put(Comment.COMMENT_DATE, DateFormatUtils.format(date, "yyyy-MM-dd hh:mm:ss"));
if (!Strings.isEmptyOrNull(originalCommentId)) { if (!Strings.isEmptyOrNull(originalCommentId)) {
originalComment = commentRepository.get(originalCommentId); originalComment = commentRepository.get(originalCommentId);
if (null != originalComment) { if (null != originalComment) {
......
...@@ -16,15 +16,11 @@ ...@@ -16,15 +16,11 @@
package org.b3log.solo.model; package org.b3log.solo.model;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
/** /**
* This class defines all archive date model relevant keys. * This class defines all archive date model relevant keys.
* *
* @author <a href="mailto:DL88250@gmail.com">Liang Ding</a> * @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
* @version 1.0.0.3, Jul 2, 2011 * @version 1.0.0.4, Jan 18, 2013
*/ */
public final class ArchiveDate { public final class ArchiveDate {
...@@ -63,11 +59,6 @@ public final class ArchiveDate { ...@@ -63,11 +59,6 @@ public final class ArchiveDate {
*/ */
public static final String ARCHIVE_DATE_MONTH = "archiveDateMonth"; public static final String ARCHIVE_DATE_MONTH = "archiveDateMonth";
/**
* Date format(yyyy/MM).
*/
public static final DateFormat DATE_FORMAT = new SimpleDateFormat("yyyy/MM");
/** /**
* Private default constructor. * Private default constructor.
*/ */
......
...@@ -16,15 +16,11 @@ ...@@ -16,15 +16,11 @@
package org.b3log.solo.model; package org.b3log.solo.model;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
/** /**
* This class defines all comment model relevant keys. * This class defines all comment model relevant keys.
* *
* @author <a href="mailto:DL88250@gmail.com">Liang Ding</a> * @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
* @version 1.0.0.6, Oct 28, 2011 * @version 1.0.0.7, Jan 18, 2013
* @since 0.3.1 * @since 0.3.1
*/ */
public final class Comment { public final class Comment {
...@@ -99,11 +95,6 @@ public final class Comment { ...@@ -99,11 +95,6 @@ public final class Comment {
*/ */
public static final String COMMENT_ON_ID = "commentOnId"; public static final String COMMENT_ON_ID = "commentOnId";
/**
* Date format(yyyy/MM/dd hh:mm:ss).
*/
public static final DateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
/** /**
* Private default constructor. * Private default constructor.
*/ */
......
...@@ -26,6 +26,7 @@ import javax.servlet.http.HttpServletRequest; ...@@ -26,6 +26,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession; import javax.servlet.http.HttpSession;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.time.DateFormatUtils;
import org.b3log.latke.Keys; import org.b3log.latke.Keys;
import org.b3log.latke.Latkes; import org.b3log.latke.Latkes;
import org.b3log.latke.cache.PageCaches; import org.b3log.latke.cache.PageCaches;
...@@ -66,7 +67,7 @@ import org.jsoup.Jsoup; ...@@ -66,7 +67,7 @@ import org.jsoup.Jsoup;
* Article processor. * Article processor.
* *
* @author <a href="mailto:DL88250@gmail.com">Liang Ding</a> * @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
* @version 1.1.2.6, Jan 7, 2013 * @version 1.1.2.7, Jan 18, 2013
* @since 0.3.1 * @since 0.3.1
*/ */
@RequestProcessor @RequestProcessor
...@@ -1134,7 +1135,7 @@ public final class ArticleProcessor { ...@@ -1134,7 +1135,7 @@ public final class ArticleProcessor {
filler.fillBlogFooter(dataModel, preference); filler.fillBlogFooter(dataModel, preference);
final long time = archiveDate.getLong(ArchiveDate.ARCHIVE_TIME); final long time = archiveDate.getLong(ArchiveDate.ARCHIVE_TIME);
final String dateString = ArchiveDate.DATE_FORMAT.format(time); final String dateString = DateFormatUtils.format(time, "yyyy/MM");
final String[] dateStrings = dateString.split("/"); final String[] dateStrings = dateString.split("/");
final String year = dateStrings[0]; final String year = dateStrings[0];
final String month = dateStrings[1]; final String month = dateStrings[1];
......
...@@ -56,7 +56,7 @@ import org.json.JSONObject; ...@@ -56,7 +56,7 @@ import org.json.JSONObject;
* Site map (sitemap) processor. * Site map (sitemap) processor.
* *
* @author <a href="mailto:DL88250@gmail.com">Liang Ding</a> * @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
* @version 1.0.0.4, Jun 11, 2012 * @version 1.0.0.5, Jan 18, 2013
* @since 0.3.1 * @since 0.3.1
*/ */
@RequestProcessor @RequestProcessor
...@@ -248,7 +248,7 @@ public final class SitemapProcessor { ...@@ -248,7 +248,7 @@ public final class SitemapProcessor {
for (int i = 0; i < archiveDates.length(); i++) { for (int i = 0; i < archiveDates.length(); i++) {
final JSONObject archiveDate = archiveDates.getJSONObject(i); final JSONObject archiveDate = archiveDates.getJSONObject(i);
final long time = archiveDate.getLong(ArchiveDate.ARCHIVE_TIME); final long time = archiveDate.getLong(ArchiveDate.ARCHIVE_TIME);
final String dateString = ArchiveDate.DATE_FORMAT.format(time); final String dateString = DateFormatUtils.format(time, "yyyy/MM");
final URL url = new URL(); final URL url = new URL();
......
...@@ -25,11 +25,7 @@ import java.util.logging.Level; ...@@ -25,11 +25,7 @@ import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang.StringEscapeUtils; import org.apache.commons.lang.StringEscapeUtils;
import org.b3log.latke.repository.RepositoryException; import org.apache.commons.lang.time.DateFormatUtils;
import org.b3log.solo.util.Articles;
import org.b3log.solo.model.Article;
import org.b3log.solo.repository.ArticleRepository;
import org.b3log.solo.repository.TagRepository;
import org.b3log.latke.Keys; import org.b3log.latke.Keys;
import org.b3log.latke.Latkes; import org.b3log.latke.Latkes;
import org.b3log.latke.event.Event; import org.b3log.latke.event.Event;
...@@ -43,15 +39,14 @@ import org.b3log.latke.repository.*; ...@@ -43,15 +39,14 @@ import org.b3log.latke.repository.*;
import org.b3log.latke.service.ServiceException; import org.b3log.latke.service.ServiceException;
import org.b3log.latke.util.*; import org.b3log.latke.util.*;
import org.b3log.latke.util.freemarker.Templates; import org.b3log.latke.util.freemarker.Templates;
import org.b3log.solo.model.ArchiveDate;
import org.b3log.solo.model.Link;
import org.b3log.solo.model.Preference;
import org.b3log.solo.repository.CommentRepository;
import org.b3log.solo.repository.LinkRepository;
import org.b3log.solo.SoloServletListener; import org.b3log.solo.SoloServletListener;
import org.b3log.solo.model.*; import org.b3log.solo.model.*;
import org.b3log.solo.repository.ArchiveDateRepository; import org.b3log.solo.repository.ArchiveDateRepository;
import org.b3log.solo.repository.ArticleRepository;
import org.b3log.solo.repository.CommentRepository;
import org.b3log.solo.repository.LinkRepository;
import org.b3log.solo.repository.PageRepository; import org.b3log.solo.repository.PageRepository;
import org.b3log.solo.repository.TagRepository;
import org.b3log.solo.repository.UserRepository; import org.b3log.solo.repository.UserRepository;
import org.b3log.solo.repository.impl.ArchiveDateRepositoryImpl; import org.b3log.solo.repository.impl.ArchiveDateRepositoryImpl;
import org.b3log.solo.repository.impl.ArticleRepositoryImpl; import org.b3log.solo.repository.impl.ArticleRepositoryImpl;
...@@ -62,6 +57,7 @@ import org.b3log.solo.repository.impl.TagRepositoryImpl; ...@@ -62,6 +57,7 @@ import org.b3log.solo.repository.impl.TagRepositoryImpl;
import org.b3log.solo.repository.impl.UserRepositoryImpl; import org.b3log.solo.repository.impl.UserRepositoryImpl;
import org.b3log.solo.service.ArticleQueryService; import org.b3log.solo.service.ArticleQueryService;
import org.b3log.solo.service.StatisticQueryService; import org.b3log.solo.service.StatisticQueryService;
import org.b3log.solo.util.Articles;
import org.b3log.solo.util.Tags; import org.b3log.solo.util.Tags;
import org.b3log.solo.util.Users; import org.b3log.solo.util.Users;
import org.json.JSONArray; import org.json.JSONArray;
...@@ -73,7 +69,7 @@ import org.json.JSONObject; ...@@ -73,7 +69,7 @@ import org.json.JSONObject;
* Filler utilities. * Filler utilities.
* *
* @author <a href="mailto:DL88250@gmail.com">Liang Ding</a> * @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
* @version 1.0.6.1, Aug 9, 2012 * @version 1.0.6.2, Jan 18, 2013
* @since 0.3.1 * @since 0.3.1
*/ */
public final class Filler { public final class Filler {
...@@ -287,7 +283,7 @@ public final class Filler { ...@@ -287,7 +283,7 @@ public final class Filler {
for (final JSONObject archiveDate : archiveDates) { for (final JSONObject archiveDate : archiveDates) {
final long time = archiveDate.getLong(ArchiveDate.ARCHIVE_TIME); final long time = archiveDate.getLong(ArchiveDate.ARCHIVE_TIME);
final String dateString = ArchiveDate.DATE_FORMAT.format(time); final String dateString = DateFormatUtils.format(time, "yyyy/MM");
final String[] dateStrings = dateString.split("/"); final String[] dateStrings = dateString.split("/");
final String year = dateStrings[0]; final String year = dateStrings[0];
final String month = dateStrings[1]; final String month = dateStrings[1];
......
...@@ -21,6 +21,7 @@ import java.util.Iterator; ...@@ -21,6 +21,7 @@ import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import org.apache.commons.lang.time.DateUtils;
import org.b3log.latke.Keys; import org.b3log.latke.Keys;
import org.b3log.latke.repository.*; import org.b3log.latke.repository.*;
import org.b3log.latke.util.CollectionUtils; import org.b3log.latke.util.CollectionUtils;
...@@ -34,7 +35,7 @@ import org.json.JSONObject; ...@@ -34,7 +35,7 @@ import org.json.JSONObject;
* Archive date repository. * Archive date repository.
* *
* @author <a href="mailto:DL88250@gmail.com">Liang Ding</a> * @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
* @version 1.0.0.6, Dec 31, 2011 * @version 1.0.0.7, Jan 18, 2013
* @since 0.3.1 * @since 0.3.1
*/ */
public final class ArchiveDateRepositoryImpl extends AbstractRepository implements ArchiveDateRepository { public final class ArchiveDateRepositoryImpl extends AbstractRepository implements ArchiveDateRepository {
...@@ -54,7 +55,7 @@ public final class ArchiveDateRepositoryImpl extends AbstractRepository implemen ...@@ -54,7 +55,7 @@ public final class ArchiveDateRepositoryImpl extends AbstractRepository implemen
long time = 0L; long time = 0L;
try { try {
time = ArchiveDate.DATE_FORMAT.parse(archiveDate).getTime(); time = DateUtils.parseDate(archiveDate, new String[] {"yyyy/MM"}).getTime();
} catch (final ParseException e) { } catch (final ParseException e) {
LOGGER.log(Level.SEVERE, "Can not parse archive date [" + archiveDate + "]", e); LOGGER.log(Level.SEVERE, "Can not parse archive date [" + archiveDate + "]", e);
throw new RepositoryException("Can not parse archive date [" + archiveDate + "]"); throw new RepositoryException("Can not parse archive date [" + archiveDate + "]");
......
...@@ -16,15 +16,15 @@ ...@@ -16,15 +16,15 @@
package org.b3log.solo.service; package org.b3log.solo.service;
import java.text.DateFormat;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import org.apache.commons.lang.time.DateFormatUtils;
import org.apache.commons.lang.time.DateUtils;
import org.b3log.latke.Keys; import org.b3log.latke.Keys;
import org.b3log.latke.event.Event; import org.b3log.latke.event.Event;
import org.b3log.latke.event.EventException; import org.b3log.latke.event.EventException;
...@@ -68,7 +68,7 @@ import org.json.JSONObject; ...@@ -68,7 +68,7 @@ import org.json.JSONObject;
* Article management service. * Article management service.
* *
* @author <a href="mailto:DL88250@gmail.com">Liang Ding</a> * @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
* @version 1.0.1.3, Oct 12, 2012 * @version 1.0.1.4, Jan 18, 2013
* @since 0.3.5 * @since 0.3.5
*/ */
public final class ArticleMgmtService { public final class ArticleMgmtService {
...@@ -148,11 +148,6 @@ public final class ArticleMgmtService { ...@@ -148,11 +148,6 @@ public final class ArticleMgmtService {
*/ */
private static Tags tagUtils = Tags.getInstance(); private static Tags tagUtils = Tags.getInstance();
/**
* Permalink date format(yyyy/MM/dd).
*/
public static final DateFormat PERMALINK_FORMAT = new SimpleDateFormat("yyyy/MM/dd");
/** /**
* Cancels publish an article by the specified article id. * Cancels publish an article by the specified article id.
* *
...@@ -990,13 +985,13 @@ public final class ArticleMgmtService { ...@@ -990,13 +985,13 @@ public final class ArticleMgmtService {
*/ */
private void archiveDate(final JSONObject article) throws RepositoryException { private void archiveDate(final JSONObject article) throws RepositoryException {
final Date createDate = (Date) article.opt(Article.ARTICLE_CREATE_DATE); final Date createDate = (Date) article.opt(Article.ARTICLE_CREATE_DATE);
final String createDateString = ArchiveDate.DATE_FORMAT.format(createDate); final String createDateString = DateFormatUtils.format(createDate, "yyyy/MM");
JSONObject archiveDate = archiveDateRepository.getByArchiveDate(createDateString); JSONObject archiveDate = archiveDateRepository.getByArchiveDate(createDateString);
if (null == archiveDate) { if (null == archiveDate) {
archiveDate = new JSONObject(); archiveDate = new JSONObject();
try { try {
archiveDate.put(ArchiveDate.ARCHIVE_TIME, ArchiveDate.DATE_FORMAT.parse(createDateString).getTime()); archiveDate.put(ArchiveDate.ARCHIVE_TIME, DateUtils.parseDate(createDateString, new String[] {"yyyy/MM"}).getTime());
archiveDate.put(ArchiveDate.ARCHIVE_DATE_ARTICLE_COUNT, 0); archiveDate.put(ArchiveDate.ARCHIVE_DATE_ARTICLE_COUNT, 0);
archiveDate.put(ArchiveDate.ARCHIVE_DATE_PUBLISHED_ARTICLE_COUNT, 0); archiveDate.put(ArchiveDate.ARCHIVE_DATE_PUBLISHED_ARTICLE_COUNT, 0);
...@@ -1064,7 +1059,7 @@ public final class ArticleMgmtService { ...@@ -1064,7 +1059,7 @@ public final class ArticleMgmtService {
String ret = article.optString(Article.ARTICLE_PERMALINK); String ret = article.optString(Article.ARTICLE_PERMALINK);
if (Strings.isEmptyOrNull(ret)) { if (Strings.isEmptyOrNull(ret)) {
ret = "/articles/" + PERMALINK_FORMAT.format(date) + "/" + article.optString(Keys.OBJECT_ID) + ".html"; ret = "/articles/" + DateFormatUtils.format(date, "yyyy/MM/dd") + "/" + article.optString(Keys.OBJECT_ID) + ".html";
} }
if (!ret.startsWith("/")) { if (!ret.startsWith("/")) {
...@@ -1102,7 +1097,7 @@ public final class ArticleMgmtService { ...@@ -1102,7 +1097,7 @@ public final class ArticleMgmtService {
if (!oldPermalink.equals(ret)) { if (!oldPermalink.equals(ret)) {
if (Strings.isEmptyOrNull(ret)) { if (Strings.isEmptyOrNull(ret)) {
ret = "/articles/" + PERMALINK_FORMAT.format(createDate) + "/" + articleId + ".html"; ret = "/articles/" + DateFormatUtils.format(createDate, "yyyy/MM/dd") + "/" + articleId + ".html";
} }
if (!ret.startsWith("/")) { if (!ret.startsWith("/")) {
......
...@@ -23,6 +23,7 @@ import java.util.logging.Level; ...@@ -23,6 +23,7 @@ import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang.StringEscapeUtils; import org.apache.commons.lang.StringEscapeUtils;
import org.apache.commons.lang.time.DateFormatUtils;
import org.b3log.latke.Keys; import org.b3log.latke.Keys;
import org.b3log.latke.Latkes; import org.b3log.latke.Latkes;
import org.b3log.latke.event.Event; import org.b3log.latke.event.Event;
...@@ -55,7 +56,7 @@ import org.json.JSONObject; ...@@ -55,7 +56,7 @@ import org.json.JSONObject;
* Comment management service. * Comment management service.
* *
* @author <a href="mailto:DL88250@gmail.com">Liang Ding</a> * @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
* @version 1.0.0.3, Aug 12, 2012 * @version 1.0.0.4, Jan 18, 2013
* @since 0.3.5 * @since 0.3.5
*/ */
public final class CommentMgmtService { public final class CommentMgmtService {
...@@ -168,7 +169,7 @@ public final class CommentMgmtService { ...@@ -168,7 +169,7 @@ public final class CommentMgmtService {
final Date date = TimeZones.getTime(timeZoneId); final Date date = TimeZones.getTime(timeZoneId);
comment.put(Comment.COMMENT_DATE, date); comment.put(Comment.COMMENT_DATE, date);
ret.put(Comment.COMMENT_DATE, Comment.DATE_FORMAT.format(date)); ret.put(Comment.COMMENT_DATE, DateFormatUtils.format(date, "yyyy-MM-dd hh:mm:ss"));
if (!Strings.isEmptyOrNull(originalCommentId)) { if (!Strings.isEmptyOrNull(originalCommentId)) {
originalComment = commentRepository.get(originalCommentId); originalComment = commentRepository.get(originalCommentId);
if (null != originalComment) { if (null != originalComment) {
...@@ -288,7 +289,7 @@ public final class CommentMgmtService { ...@@ -288,7 +289,7 @@ public final class CommentMgmtService {
final Date date = TimeZones.getTime(timeZoneId); final Date date = TimeZones.getTime(timeZoneId);
comment.put(Comment.COMMENT_DATE, date); comment.put(Comment.COMMENT_DATE, date);
ret.put(Comment.COMMENT_DATE, Comment.DATE_FORMAT.format(date)); ret.put(Comment.COMMENT_DATE, DateFormatUtils.format(date, "yyyy-MM-dd hh:mm:ss"));
if (!Strings.isEmptyOrNull(originalCommentId)) { if (!Strings.isEmptyOrNull(originalCommentId)) {
originalComment = commentRepository.get(originalCommentId); originalComment = commentRepository.get(originalCommentId);
......
...@@ -25,6 +25,8 @@ import java.util.Set; ...@@ -25,6 +25,8 @@ import java.util.Set;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import org.apache.commons.lang.StringEscapeUtils; import org.apache.commons.lang.StringEscapeUtils;
import org.apache.commons.lang.time.DateFormatUtils;
import org.apache.commons.lang.time.DateUtils;
import org.b3log.latke.Keys; import org.b3log.latke.Keys;
import org.b3log.latke.Latkes; import org.b3log.latke.Latkes;
import org.b3log.latke.RuntimeEnv; import org.b3log.latke.RuntimeEnv;
...@@ -57,7 +59,7 @@ import org.json.JSONObject; ...@@ -57,7 +59,7 @@ import org.json.JSONObject;
* B3log Solo initialization service. * B3log Solo initialization service.
* *
* @author <a href="mailto:DL88250@gmail.com">Liang Ding</a> * @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
* @version 1.0.1.3, Jan 4, 2013 * @version 1.0.1.4, Jan 18, 2013
* @since 0.4.0 * @since 0.4.0
*/ */
public final class InitService { public final class InitService {
...@@ -345,11 +347,11 @@ public final class InitService { ...@@ -345,11 +347,11 @@ public final class InitService {
*/ */
public void archiveDate(final JSONObject article) throws RepositoryException { public void archiveDate(final JSONObject article) throws RepositoryException {
final Date createDate = (Date) article.opt(Article.ARTICLE_CREATE_DATE); final Date createDate = (Date) article.opt(Article.ARTICLE_CREATE_DATE);
final String createDateString = ArchiveDate.DATE_FORMAT.format(createDate); final String createDateString = DateFormatUtils.format(createDate, "yyyy/MM");
final JSONObject archiveDate = new JSONObject(); final JSONObject archiveDate = new JSONObject();
try { try {
archiveDate.put(ArchiveDate.ARCHIVE_TIME, ArchiveDate.DATE_FORMAT.parse(createDateString).getTime()); archiveDate.put(ArchiveDate.ARCHIVE_TIME, DateUtils.parseDate(createDateString, new String[] {"yyyy/MM"}).getTime());
archiveDate.put(ArchiveDate.ARCHIVE_DATE_ARTICLE_COUNT, 1); archiveDate.put(ArchiveDate.ARCHIVE_DATE_ARTICLE_COUNT, 1);
archiveDate.put(ArchiveDate.ARCHIVE_DATE_PUBLISHED_ARTICLE_COUNT, 1); archiveDate.put(ArchiveDate.ARCHIVE_DATE_PUBLISHED_ARTICLE_COUNT, 1);
......
...@@ -19,15 +19,13 @@ package org.b3log.solo.util; ...@@ -19,15 +19,13 @@ package org.b3log.solo.util;
import java.util.Date; import java.util.Date;
import java.util.TimeZone; import java.util.TimeZone;
import org.b3log.latke.util.freemarker.Templates; import org.b3log.latke.util.freemarker.Templates;
import org.b3log.solo.model.ArchiveDate;
import org.b3log.solo.model.Comment;
/** /**
* Time zone utilities. * Time zone utilities.
* *
* @author <a href="mailto:DL88250@gmail.com">Liang Ding</a> * @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
* @version 1.0.0.3, Dec 29, 2011 * @version 1.0.0.4, Jan 18, 2013
*/ */
public final class TimeZones { public final class TimeZones {
...@@ -64,8 +62,6 @@ public final class TimeZones { ...@@ -64,8 +62,6 @@ public final class TimeZones {
TimeZone.setDefault(timeZone); TimeZone.setDefault(timeZone);
System.setProperty("user.timezone", timeZoneId); System.setProperty("user.timezone", timeZoneId);
ArchiveDate.DATE_FORMAT.setTimeZone(timeZone);
Comment.DATE_FORMAT.setTimeZone(timeZone);
Templates.MAIN_CFG.setTimeZone(timeZone); Templates.MAIN_CFG.setTimeZone(timeZone);
Templates.MOBILE_CFG.setTimeZone(timeZone); Templates.MOBILE_CFG.setTimeZone(timeZone);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment