Author: vmassol
Date: 2007-11-25 08:15:33 +0100 (Sun, 25 Nov 2007)
New Revision: 6068
Modified:
xwiki-platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/web/DeleteAction.java
Log:
XWIKI-1890: Calling the delete action in a XWiki URL when the document has
already been deleted generates an exception
Modified:
xwiki-platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/web/DeleteAction.java
===================================================================
---
xwiki-platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/web/DeleteAction.java
2007-11-25 06:25:21 UTC (rev 6067)
+++
xwiki-platform/core/trunk/xwiki-core/src/main/java/com/xpn/xwiki/web/DeleteAction.java
2007-11-25 07:15:33 UTC (rev 6068)
@@ -46,10 +46,10 @@
XWikiDocument doc = context.getDoc();
boolean redirected = false;
- if (doc.isNew()) {
- // delete from recycle bin
- if (xwiki.hasRecycleBin(context)) {
- String sindex = request.getParameter("id");
+ // If the document doesn't exist then delete it form the recycle bin.
+ if (doc.isNew() && xwiki.hasRecycleBin(context)) {
+ String sindex = request.getParameter("id");
+ if (sindex != null) {
long index = Long.parseLong(sindex);
XWikiDeletedDocument dd = xwiki.getRecycleBinStore()
.getDeletedDocument(doc, index, context, true);
@@ -57,11 +57,16 @@
if (!ddapi.canDelete()) {
throw new
XWikiException(XWikiException.MODULE_XWIKI_ACCESS,
XWikiException.ERROR_XWIKI_ACCESS_DENIED,
- "You can't delete from recycle bin before certain time
will passed");
+ "You can't delete from recycle bin before some time
has passed");
}
xwiki.getRecycleBinStore().deleteFromRecycleBin(doc, index,
context, true);
sendRedirect(response, doc.getURL("view", context));
redirected = true;
+ } else {
+ // No index parameter passed, redirect the user to the view
template so that he gets the document
+ // don't exist dialog box.
+ sendRedirect(response, doc.getURL("view", context));
+ redirected = true;
}
} else {
// delete to recycle bin
_______________________________________________
notifications mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/notifications