You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by gh...@apache.org on 2013/07/29 13:21:24 UTC
svn commit: r1508000 - in /roller/trunk/app/src/main:
java/org/apache/roller/weblogger/ui/struts2/editor/ resources/
webapp/WEB-INF/jsps/editor/ webapp/roller-ui/styles/
Author: ghuber
Date: Mon Jul 29 11:21:23 2013
New Revision: 1508000
URL: http://svn.apache.org/r1508000
Log:
Some testing......
Modified:
roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/EntryEdit.java
roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileEdit.java
roller/trunk/app/src/main/resources/ApplicationResources.properties
roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Comments.jsp
roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Entries.jsp
roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryEdit.jsp
roller/trunk/app/src/main/webapp/roller-ui/styles/roller.css
Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/EntryEdit.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/EntryEdit.java?rev=1508000&r1=1507999&r2=1508000&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/EntryEdit.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/EntryEdit.java Mon Jul 29 11:21:23 2013
@@ -50,300 +50,309 @@ import org.apache.struts2.interceptor.va
*/
public final class EntryEdit extends EntryBase {
- private static Log log = LogFactory.getLog(EntryEdit.class);
+ private static Log log = LogFactory.getLog(EntryEdit.class);
- // bean for managing form data
- private EntryBean bean = new EntryBean();
+ // bean for managing form data
+ private EntryBean bean = new EntryBean();
- // the entry we are editing
- private WeblogEntry entry = null;
+ // the entry we are editing
+ private WeblogEntry entry = null;
- // url to send trackback to
- private String trackbackUrl = null;
-
- public EntryEdit() {
- this.actionName = "entryEdit";
- this.desiredMenu = "editor";
- this.pageTitle = "weblogEdit.title.editEntry";
- }
-
- @Override
- public List<String> requiredWeblogPermissionActions() {
- return Collections.singletonList(WeblogPermission.EDIT_DRAFT);
- }
-
- public void myPrepare() {
- if (getBean().getId() != null) {
- try {
- WeblogEntryManager wmgr = WebloggerFactory.getWeblogger()
- .getWeblogEntryManager();
- setEntry(wmgr.getWeblogEntry(getBean().getId()));
- } catch (WebloggerException ex) {
- log.error(
- "Error looking up entry by id - " + getBean().getId(),
- ex);
- }
- }
- }
-
- /**
- * Show form for editing an existing entry.
- *
- * @return String The result of the action.
- */
- @SkipValidation
- public String execute() {
-
- // make sure we have an entry to edit and it belongs to the action
- // weblog
- if (getEntry() == null) {
- return ERROR;
- } else if (!getEntry().getWebsite().equals(getActionWeblog())) {
- return DENIED;
- }
-
- // load bean with pojo data
- getBean().copyFrom(getEntry(), getLocale());
-
- return INPUT;
- }
-
- /**
- * Save weblog entry.
- *
- * @return String The result of the action.
- */
- public String save() {
-
- // make sure we have an entry to edit and it belongs to the action
- // weblog
- if (getEntry() == null) {
- return ERROR;
- } else if (!getEntry().getWebsite().equals(getActionWeblog())) {
- return DENIED;
- }
-
- if (!hasActionErrors())
- try {
- WeblogEntryManager weblogMgr = WebloggerFactory.getWeblogger()
- .getWeblogEntryManager();
-
- WeblogEntry entry = getEntry();
-
- // set updatetime & pubtime
- entry.setUpdateTime(new Timestamp(new Date().getTime()));
- entry.setPubTime(getBean().getPubTime(getLocale(),
- getActionWeblog().getTimeZoneInstance()));
-
- // copy data to pojo
- getBean().copyTo(entry);
-
- // handle pubtime auto set
- if (entry.isPublished()) {
- if (entry.getPubTime() == null) {
- // no time specified, use current time
- entry.setPubTime(entry.getUpdateTime());
- }
-
- // if user does not have author perms then force PENDING
- // status
- if (!getActionWeblog().hasUserPermission(
- getAuthenticatedUser(), WeblogPermission.POST)) {
- entry.setStatus(WeblogEntry.PENDING);
- }
- }
-
- // if user is an admin then apply pinned to main value as well
- GlobalPermission adminPerm = new GlobalPermission(
- Collections.singletonList(GlobalPermission.ADMIN));
- if (WebloggerFactory.getWeblogger().getUserManager()
- .checkPermission(adminPerm, getAuthenticatedUser())) {
- entry.setPinnedToMain(getBean().getPinnedToMain());
- }
-
- if (!StringUtils.isEmpty(getBean().getEnclosureURL())) {
- try {
- // Fetch MediaCast resource
- log.debug("Checking MediaCast attributes");
- MediacastResource mediacast = MediacastUtil
- .lookupResource(getBean().getEnclosureURL());
-
- // set mediacast attributes
- entry.putEntryAttribute("att_mediacast_url",
- mediacast.getUrl());
- entry.putEntryAttribute("att_mediacast_type",
- mediacast.getContentType());
- entry.putEntryAttribute("att_mediacast_length", ""
- + mediacast.getLength());
-
- } catch (MediacastException ex) {
- addMessage(getText(ex.getErrorKey()));
- }
- } else {
- try {
- // if MediaCast string is empty, clean out MediaCast
- // attributes
- weblogMgr.removeWeblogEntryAttribute(
- "att_mediacast_url", entry);
- weblogMgr.removeWeblogEntryAttribute(
- "att_mediacast_type", entry);
- weblogMgr.removeWeblogEntryAttribute(
- "att_mediacast_length", entry);
-
- } catch (WebloggerException e) {
- addMessage(getText("weblogEdit.mediaCastErrorRemoving"));
- }
- }
-
- if (log.isDebugEnabled()) {
- log.debug("entry bean is ...\n" + getBean().toString());
- log.debug("final status = " + entry.getStatus());
- log.debug("updtime = " + entry.getUpdateTime());
- log.debug("pubtime = " + entry.getPubTime());
- }
-
- log.debug("Saving entry");
- weblogMgr.saveWeblogEntry(entry);
- WebloggerFactory.getWeblogger().flush();
-
- // notify search of the new entry
- if (entry.isPublished()) {
- reindexEntry(entry);
- } else {
- removeEntryIndex(entry);
- }
-
- // notify caches
- CacheManager.invalidate(entry);
-
- // Queue applicable pings for this update.
- if (entry.isPublished()) {
- WebloggerFactory.getWeblogger().getAutopingManager()
- .queueApplicableAutoPings(entry);
- }
-
- if (entry.isPending()) {
- // implies that entry just changed to pending
- MailUtil.sendPendingEntryNotice(entry);
- addMessage("weblogEdit.submittedForReview");
- } else {
- addMessage("weblogEdit.changesSaved");
- }
-
- return INPUT;
-
- } catch (Exception e) {
- log.error("Error saving new entry", e);
- // TODO: i18n
- addError("Error saving new entry");
- }
-
- return INPUT;
- }
-
- /**
- * Send trackback to a specific url.
- */
- @SkipValidation
- public String trackback() {
-
- // make sure we have an entry to edit and it belongs to the action
- // weblog
- if (getEntry() == null) {
- return ERROR;
- } else if (!getEntry().getWebsite().equals(getActionWeblog())) {
- return DENIED;
- }
-
- if (!StringUtils.isEmpty(getTrackbackUrl())) {
- RollerMessages results = null;
- try {
- Trackback trackback = new Trackback(getEntry(),
- getTrackbackUrl());
- results = trackback.send();
- } catch (TrackbackNotAllowedException ex) {
- addError("error.trackbackNotAllowed");
- } catch (Throwable t) {
- log.error("Error sending trackback", t);
- // TODO: error handling
- addError("error.general", t.getMessage());
- }
-
- if (results != null) {
- for (Iterator mit = results.getMessages(); mit.hasNext();) {
- RollerMessage msg = (RollerMessage) mit.next();
- if (msg.getArgs() == null) {
- addMessage(msg.getKey());
- } else {
- addMessage(msg.getKey(), Arrays.asList(msg.getArgs()));
- }
- }
-
- for (Iterator eit = results.getErrors(); eit.hasNext();) {
- RollerMessage err = (RollerMessage) eit.next();
- if (err.getArgs() == null) {
- addError(err.getKey());
- } else {
- addError(err.getKey(), Arrays.asList(err.getArgs()));
- }
- }
- }
-
- // reset trackback url
- setTrackbackUrl(null);
-
- }
-
- return INPUT;
- }
-
- /**
- * Get the list of all categories for the action weblog, not including root.
- */
- public List<WeblogCategory> getCategories() {
- try {
- WeblogEntryManager wmgr = WebloggerFactory.getWeblogger()
- .getWeblogEntryManager();
- return wmgr.getWeblogCategories(getActionWeblog(), false);
- } catch (WebloggerException ex) {
- log.error(
- "Error getting category list for weblog - " + getWeblog(),
- ex);
- return Collections.EMPTY_LIST;
- }
- }
-
- public String getPreviewURL() {
- return WebloggerFactory
- .getWeblogger()
- .getUrlStrategy()
- .getPreviewURLStrategy(null)
- .getWeblogEntryURL(getActionWeblog(), null,
- getEntry().getAnchor(), true);
- }
-
- public EntryBean getBean() {
- return bean;
- }
-
- public void setBean(EntryBean bean) {
- this.bean = bean;
- }
-
- public WeblogEntry getEntry() {
- return entry;
- }
-
- public void setEntry(WeblogEntry entry) {
- this.entry = entry;
- }
-
- public String getTrackbackUrl() {
- return trackbackUrl;
- }
-
- public void setTrackbackUrl(String trackbackUrl) {
- this.trackbackUrl = trackbackUrl;
- }
+ // url to send trackback to
+ private String trackbackUrl = null;
+
+ public EntryEdit() {
+ this.actionName = "entryEdit";
+ this.desiredMenu = "editor";
+ this.pageTitle = "weblogEdit.title.editEntry";
+ }
+
+ @Override
+ public List<String> requiredWeblogPermissionActions() {
+ return Collections.singletonList(WeblogPermission.EDIT_DRAFT);
+ }
+
+ public void myPrepare() {
+ if (getBean().getId() != null) {
+ try {
+ WeblogEntryManager wmgr = WebloggerFactory.getWeblogger()
+ .getWeblogEntryManager();
+ setEntry(wmgr.getWeblogEntry(getBean().getId()));
+ } catch (WebloggerException ex) {
+ log.error(
+ "Error looking up entry by id - " + getBean().getId(),
+ ex);
+ }
+ }
+ }
+
+ /**
+ * Show form for editing an existing entry.
+ *
+ * @return String The result of the action.
+ */
+ @SkipValidation
+ public String execute() {
+
+ // make sure we have an entry to edit and it belongs to the action
+ // weblog
+ if (getEntry() == null) {
+ return ERROR;
+ } else if (!getEntry().getWebsite().equals(getActionWeblog())) {
+ return DENIED;
+ }
+
+ // load bean with pojo data
+ getBean().copyFrom(getEntry(), getLocale());
+
+ return INPUT;
+ }
+
+ /**
+ * Save weblog entry.
+ *
+ * @return String The result of the action.
+ */
+ public String save() {
+
+ // make sure we have an entry to edit and it belongs to the action
+ // weblog
+ if (getEntry() == null) {
+ return ERROR;
+ } else if (!getEntry().getWebsite().equals(getActionWeblog())) {
+ return DENIED;
+ }
+
+ if (!hasActionErrors())
+ try {
+ WeblogEntryManager weblogMgr = WebloggerFactory.getWeblogger()
+ .getWeblogEntryManager();
+
+ WeblogEntry entry = getEntry();
+
+ // set updatetime & pubtime
+ entry.setUpdateTime(new Timestamp(new Date().getTime()));
+ entry.setPubTime(getBean().getPubTime(getLocale(),
+ getActionWeblog().getTimeZoneInstance()));
+
+ // copy data to pojo
+ getBean().copyTo(entry);
+
+ // handle pubtime auto set
+ if (entry.isPublished()) {
+ if (entry.getPubTime() == null) {
+ // no time specified, use current time
+ entry.setPubTime(entry.getUpdateTime());
+ }
+
+ // if user does not have author perms then force PENDING
+ // status
+ if (!getActionWeblog().hasUserPermission(
+ getAuthenticatedUser(), WeblogPermission.POST)) {
+ entry.setStatus(WeblogEntry.PENDING);
+ }
+
+ // If the entry was published to future, set status as
+ // SCHEDULED we only consider an entry future published if
+ // it is scheduled more than 1 minute into the future
+ if (entry.getPubTime().after(
+ new Date(System.currentTimeMillis() + 60000))) {
+ getBean().setStatus(WeblogEntry.SCHEDULED);
+ }
+
+ }
+
+ // if user is an admin then apply pinned to main value as well
+ GlobalPermission adminPerm = new GlobalPermission(
+ Collections.singletonList(GlobalPermission.ADMIN));
+ if (WebloggerFactory.getWeblogger().getUserManager()
+ .checkPermission(adminPerm, getAuthenticatedUser())) {
+ entry.setPinnedToMain(getBean().getPinnedToMain());
+ }
+
+ if (!StringUtils.isEmpty(getBean().getEnclosureURL())) {
+ try {
+ // Fetch MediaCast resource
+ log.debug("Checking MediaCast attributes");
+ MediacastResource mediacast = MediacastUtil
+ .lookupResource(getBean().getEnclosureURL());
+
+ // set mediacast attributes
+ entry.putEntryAttribute("att_mediacast_url",
+ mediacast.getUrl());
+ entry.putEntryAttribute("att_mediacast_type",
+ mediacast.getContentType());
+ entry.putEntryAttribute("att_mediacast_length", ""
+ + mediacast.getLength());
+
+ } catch (MediacastException ex) {
+ addMessage(getText(ex.getErrorKey()));
+ }
+ } else {
+ try {
+ // if MediaCast string is empty, clean out MediaCast
+ // attributes
+ weblogMgr.removeWeblogEntryAttribute(
+ "att_mediacast_url", entry);
+ weblogMgr.removeWeblogEntryAttribute(
+ "att_mediacast_type", entry);
+ weblogMgr.removeWeblogEntryAttribute(
+ "att_mediacast_length", entry);
+
+ } catch (WebloggerException e) {
+ addMessage(getText("weblogEdit.mediaCastErrorRemoving"));
+ }
+ }
+
+ if (log.isDebugEnabled()) {
+ log.debug("entry bean is ...\n" + getBean().toString());
+ log.debug("final status = " + entry.getStatus());
+ log.debug("updtime = " + entry.getUpdateTime());
+ log.debug("pubtime = " + entry.getPubTime());
+ }
+
+ log.debug("Saving entry");
+ weblogMgr.saveWeblogEntry(entry);
+ WebloggerFactory.getWeblogger().flush();
+
+ // notify search of the new entry
+ if (entry.isPublished()) {
+ reindexEntry(entry);
+ } else {
+ removeEntryIndex(entry);
+ }
+
+ // notify caches
+ CacheManager.invalidate(entry);
+
+ // Queue applicable pings for this update.
+ if (entry.isPublished()) {
+ WebloggerFactory.getWeblogger().getAutopingManager()
+ .queueApplicableAutoPings(entry);
+ }
+
+ if (entry.isPending()) {
+ // implies that entry just changed to pending
+ MailUtil.sendPendingEntryNotice(entry);
+ addMessage("weblogEdit.submittedForReview");
+ } else {
+ addMessage("weblogEdit.changesSaved");
+ }
+
+ return INPUT;
+
+ } catch (Exception e) {
+ log.error("Error saving new entry", e);
+ // TODO: i18n
+ addError("Error saving new entry");
+ }
+
+ return INPUT;
+ }
+
+ /**
+ * Send trackback to a specific url.
+ */
+ @SkipValidation
+ public String trackback() {
+
+ // make sure we have an entry to edit and it belongs to the action
+ // weblog
+ if (getEntry() == null) {
+ return ERROR;
+ } else if (!getEntry().getWebsite().equals(getActionWeblog())) {
+ return DENIED;
+ }
+
+ if (!StringUtils.isEmpty(getTrackbackUrl())) {
+ RollerMessages results = null;
+ try {
+ Trackback trackback = new Trackback(getEntry(),
+ getTrackbackUrl());
+ results = trackback.send();
+ } catch (TrackbackNotAllowedException ex) {
+ addError("error.trackbackNotAllowed");
+ } catch (Throwable t) {
+ log.error("Error sending trackback", t);
+ // TODO: error handling
+ addError("error.general", t.getMessage());
+ }
+
+ if (results != null) {
+ for (Iterator mit = results.getMessages(); mit.hasNext();) {
+ RollerMessage msg = (RollerMessage) mit.next();
+ if (msg.getArgs() == null) {
+ addMessage(msg.getKey());
+ } else {
+ addMessage(msg.getKey(), Arrays.asList(msg.getArgs()));
+ }
+ }
+
+ for (Iterator eit = results.getErrors(); eit.hasNext();) {
+ RollerMessage err = (RollerMessage) eit.next();
+ if (err.getArgs() == null) {
+ addError(err.getKey());
+ } else {
+ addError(err.getKey(), Arrays.asList(err.getArgs()));
+ }
+ }
+ }
+
+ // reset trackback url
+ setTrackbackUrl(null);
+
+ }
+
+ return INPUT;
+ }
+
+ /**
+ * Get the list of all categories for the action weblog, not including root.
+ */
+ public List<WeblogCategory> getCategories() {
+ try {
+ WeblogEntryManager wmgr = WebloggerFactory.getWeblogger()
+ .getWeblogEntryManager();
+ return wmgr.getWeblogCategories(getActionWeblog(), false);
+ } catch (WebloggerException ex) {
+ log.error(
+ "Error getting category list for weblog - " + getWeblog(),
+ ex);
+ return Collections.EMPTY_LIST;
+ }
+ }
+
+ public String getPreviewURL() {
+ return WebloggerFactory
+ .getWeblogger()
+ .getUrlStrategy()
+ .getPreviewURLStrategy(null)
+ .getWeblogEntryURL(getActionWeblog(), null,
+ getEntry().getAnchor(), true);
+ }
+
+ public EntryBean getBean() {
+ return bean;
+ }
+
+ public void setBean(EntryBean bean) {
+ this.bean = bean;
+ }
+
+ public WeblogEntry getEntry() {
+ return entry;
+ }
+
+ public void setEntry(WeblogEntry entry) {
+ this.entry = entry;
+ }
+
+ public String getTrackbackUrl() {
+ return trackbackUrl;
+ }
+
+ public void setTrackbackUrl(String trackbackUrl) {
+ this.trackbackUrl = trackbackUrl;
+ }
}
Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileEdit.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileEdit.java?rev=1508000&r1=1507999&r2=1508000&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileEdit.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileEdit.java Mon Jul 29 11:21:23 2013
@@ -19,6 +19,7 @@ package org.apache.roller.weblogger.ui.s
import java.io.File;
import java.io.FileInputStream;
+
import org.apache.commons.lang.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -46,10 +47,9 @@ public class MediaFileEdit extends Media
// content types for upload file
private String uploadedFileContentType = null;
- // filename for uploaded file
+ // filename for uploaded file
private String uploadedFileName = null;
-
public MediaFileEdit() {
this.actionName = "mediaFileEdit";
this.desiredMenu = "editor";
@@ -62,7 +62,8 @@ public class MediaFileEdit extends Media
public void myPrepare() {
refreshAllDirectories();
try {
- MediaFileManager mgr = WebloggerFactory.getWeblogger().getMediaFileManager();
+ MediaFileManager mgr = WebloggerFactory.getWeblogger()
+ .getMediaFileManager();
if (!StringUtils.isEmpty(bean.getDirectoryId())) {
setDirectory(mgr.getMediaFileDirectory(bean.getDirectoryId()));
}
@@ -76,8 +77,10 @@ public class MediaFileEdit extends Media
* Validates media file metadata to be updated.
*/
public void myValidate() {
- MediaFile fileWithSameName = getDirectory().getMediaFile(getBean().getName());
- if (fileWithSameName != null && !fileWithSameName.getId().equals(getMediaFileId())) {
+ MediaFile fileWithSameName = getDirectory().getMediaFile(
+ getBean().getName());
+ if (fileWithSameName != null
+ && !fileWithSameName.getId().equals(getMediaFileId())) {
addError("MediaFile.error.duplicateName", getBean().getName());
}
}
@@ -89,7 +92,8 @@ public class MediaFileEdit extends Media
*/
@SkipValidation
public String execute() {
- MediaFileManager manager = WebloggerFactory.getWeblogger().getMediaFileManager();
+ MediaFileManager manager = WebloggerFactory.getWeblogger()
+ .getMediaFileManager();
try {
MediaFile mediaFile = manager.getMediaFile(getMediaFileId());
this.bean.copyFrom(mediaFile);
@@ -114,7 +118,8 @@ public class MediaFileEdit extends Media
public String save() {
myValidate();
if (!hasActionErrors()) {
- MediaFileManager manager = WebloggerFactory.getWeblogger().getMediaFileManager();
+ MediaFileManager manager = WebloggerFactory.getWeblogger()
+ .getMediaFileManager();
try {
MediaFile mediaFile = manager.getMediaFile(getMediaFileId());
bean.copyTo(mediaFile);
@@ -122,10 +127,19 @@ public class MediaFileEdit extends Media
if (uploadedFile != null) {
mediaFile.setLength(this.uploadedFile.length());
mediaFile.setContentType(this.uploadedFileContentType);
- manager.updateMediaFile(getActionWeblog(),
- mediaFile, new FileInputStream(this.uploadedFile));
+ manager.updateMediaFile(getActionWeblog(), mediaFile,
+ new FileInputStream(this.uploadedFile));
} else {
- manager.updateMediaFile(getActionWeblog(), mediaFile);
+ manager.updateMediaFile(getActionWeblog(), mediaFile);
+ }
+
+ // Move file
+ if (!getBean().getDirectoryId().equals(
+ mediaFile.getDirectory().getId())) {
+ log.debug("Processing move of " + mediaFile.getId());
+ setSelectedMediaFiles(new String[] { mediaFile.getId() });
+ setSelectedDirectory(getBean().getDirectoryId());
+ doMoveSelected();
}
WebloggerFactory.getWeblogger().flush();
@@ -170,7 +184,8 @@ public class MediaFileEdit extends Media
}
/**
- * @param uploadedFile the uploadedFile to set
+ * @param uploadedFile
+ * the uploadedFile to set
*/
public void setUploadedFile(File uploadedFile) {
this.uploadedFile = uploadedFile;
@@ -184,7 +199,8 @@ public class MediaFileEdit extends Media
}
/**
- * @param uploadedFileContentType the uploadedFileContentType to set
+ * @param uploadedFileContentType
+ * the uploadedFileContentType to set
*/
public void setUploadedFileContentType(String uploadedFileContentType) {
this.uploadedFileContentType = uploadedFileContentType;
@@ -198,7 +214,8 @@ public class MediaFileEdit extends Media
}
/**
- * @param uploadedFileName the uploadedFileName to set
+ * @param uploadedFileName
+ * the uploadedFileName to set
*/
public void setUploadedFileName(String uploadedFileName) {
this.uploadedFileName = uploadedFileName;
Modified: roller/trunk/app/src/main/resources/ApplicationResources.properties
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/ApplicationResources.properties?rev=1508000&r1=1507999&r2=1508000&view=diff
==============================================================================
--- roller/trunk/app/src/main/resources/ApplicationResources.properties (original)
+++ roller/trunk/app/src/main/resources/ApplicationResources.properties Mon Jul 29 11:21:23 2013
@@ -2218,6 +2218,7 @@ weblogEntryQuery.updateTime=Updated
weblogEntryQuery.status=Status
weblogEntryQuery.pending=Pending
weblogEntryQuery.draft=Draft
+weblogEntryQuery.scheduled=Scheduled
weblogEntryQuery.section.format=Format to be used
Modified: roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Comments.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Comments.jsp?rev=1508000&r1=1507999&r2=1508000&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Comments.jsp (original)
+++ roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Comments.jsp Mon Jul 29 11:21:23 2013
@@ -355,9 +355,10 @@
function saveComment(id) {
var content = $("#comment-" + id).children()[0].value;
+ var salt = $("#comments_salt").val();
$.ajax({
type: "POST",
- url: '<%= request.getContextPath()%>/roller-ui/authoring/commentdata?id=' + id,
+ url: '<%= request.getContextPath()%>/roller-ui/authoring/commentdata?id=' + id +'&salt='+salt,
data: content,
dataType: "text",
processData: "false",
Modified: roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Entries.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Entries.jsp?rev=1508000&r1=1507999&r2=1508000&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Entries.jsp (original)
+++ roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/Entries.jsp Mon Jul 29 11:21:23 2013
@@ -38,11 +38,13 @@
<s:param value="pager.items.size()" />
</s:text>
</div>
- <div style="float:right;">
- <s:date name="firstEntry.pubTime" format="MM/dd/yy hh:mm a" />
- ---
- <s:date name="lastEntry.pubTime" format="MM/dd/yy hh:mm a" />
- </div>
+ <s:if test="pager.items.size() > 0">
+ <div style="float:right;">
+ <s:date name="firstEntry.pubTime" format="MM/dd/yy hh:mm a" />
+ ---
+ <s:date name="lastEntry.pubTime" format="MM/dd/yy hh:mm a" />
+ </div>
+ </s:if>
<br />
@@ -92,7 +94,9 @@
<s:text name="weblogEntryQuery.draft" />
<span class="pendingEntryBox"> </span>
<s:text name="weblogEntryQuery.pending" />
-</p>
+ <span class="scheduledEntryBox"> </span>
+ <s:text name="weblogEntryQuery.scheduled" />
+</p>
<table class="rollertable" width="100%">
@@ -116,13 +120,16 @@
</tr>
<s:iterator id="post" value="pager.items">
- <%-- <td> with style if comment is spam or pending --%>
+ <%-- <td> with style if comment is spam or pending --%>
<s:if test="#post.status == 'DRAFT'">
<tr class="draftentry">
</s:if>
<s:elseif test="#post.status == 'PENDING'">
<tr class="pendingentry">
</s:elseif>
+ <s:elseif test="#post.status == 'SCHEDULED'">
+ <tr class="scheduledentry">
+ </s:elseif>
<s:else>
<tr>
</s:else>
Modified: roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryEdit.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryEdit.jsp?rev=1508000&r1=1507999&r2=1508000&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryEdit.jsp (original)
+++ roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryEdit.jsp Mon Jul 29 11:21:23 2013
@@ -104,6 +104,13 @@ function fullPreviewMode() {
<s:date name="entry.updateTime" />)
</span>
</s:elseif>
+ <s:elseif test="bean.scheduled">
+ <span style="color:orange; font-weight:bold">
+ <s:text name="weblogEdit.scheduled" />
+ (<s:text name="weblogEdit.updateTime" />
+ <s:date name="entry.updateTime" />)
+ </span>
+ </s:elseif>
<s:hidden name="bean.status" />
</td>
</tr>
Modified: roller/trunk/app/src/main/webapp/roller-ui/styles/roller.css
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/roller-ui/styles/roller.css?rev=1508000&r1=1507999&r2=1508000&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/roller-ui/styles/roller.css (original)
+++ roller/trunk/app/src/main/webapp/roller-ui/styles/roller.css Mon Jul 29 11:21:23 2013
@@ -359,6 +359,9 @@ td.pendingentry, tr.pendingentry {
td.draftentry, tr.draftentry {
background: #ffffcc;
}
+td.scheduledentry, tr.scheduledentry {
+ background: #EEEEE0;
+}
.draftEntryBox {
background: #ffffcc;
border: 1px gray solid;
@@ -367,6 +370,10 @@ td.draftentry, tr.draftentry {
background: #ffcccc;
border: 1px gray solid;
}
+.scheduledEntryBox {
+ background: #EEEEE0;
+ border: 1px gray solid;
+}
/* ----------------------------------------------------------------------
Calendar styles