svn commit: r600585 - in /lenya/trunk/src/modules-core/sitemanagement: java/src/org/apache/lenya/cms/site/usecases/Paste.java resources/i18n/cmsui.xml

[email protected]
Newsgroups gmane.comp.cms.lenya.cvs
Message-ID <[email protected]>
Author: rfrovarp
Date: Mon Dec  3 08:21:32 2007
New Revision: 600585

URL: http://svn.apache.org/viewvc?rev=600585&view=rev
Log:
Prevents copied documents from being pasted to itself. Fixes 44005. Needs German version of error message.

Modified:
    lenya/trunk/src/modules-core/sitemanagement/java/src/org/apache/lenya/cms/site/usecases/Paste.java
    lenya/trunk/src/modules-core/sitemanagement/resources/i18n/cmsui.xml

Modified: lenya/trunk/src/modules-core/sitemanagement/java/src/org/apache/lenya/cms/site/usecases/Paste.java
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules-core/sitemanagement/java/src/org/apache/lenya/cms/site/usecases/Paste.java?rev=600585&r1=600584&r2=600585&view=diff
==============================================================================
--- lenya/trunk/src/modules-core/sitemanagement/java/src/org/apache/lenya/cms/site/usecases/Paste.java (original)
+++ lenya/trunk/src/modules-core/sitemanagement/java/src/org/apache/lenya/cms/site/usecases/Paste.java Mon Dec  3 08:21:32 2007
@@ -66,13 +66,21 @@
         if (clipboard == null) {
             addErrorMessage("clipboard-empty");
         }
-        else if (clipboard.getMethod() == Clipboard.METHOD_CUT) {
+        else {
             Document doc = getSourceDocument();
             if(doc != null) {
                 Document clippedDoc = clipboard.getDocument(getDocumentFactory(), doc.getPublication());
                 String uuid = clippedDoc.getUUID();
-                if (willPasteInOwnSubtree(doc.getLink().getNode(), uuid)) {
-                    addErrorMessage("will-paste-in-own-subtree");
+                SiteNode node = doc.getLink().getNode();
+                if (clipboard.getMethod() == Clipboard.METHOD_CUT) {
+                    if (willPasteInOwnSubtree(node, uuid)) {
+                        addErrorMessage("will-paste-in-own-subtree");
+                    }
+                }
+                else if(clipboard.getMethod() == Clipboard.METHOD_COPY) {
+                    if(uuid.equals(node.getUuid())) {
+                        addErrorMessage("will-copy-to-self");
+                    }
                 }
             }
         }

Modified: lenya/trunk/src/modules-core/sitemanagement/resources/i18n/cmsui.xml
URL: http://svn.apache.org/viewvc/lenya/trunk/src/modules-core/sitemanagement/resources/i18n/cmsui.xml?rev=600585&r1=600584&r2=600585&view=diff
==============================================================================
--- lenya/trunk/src/modules-core/sitemanagement/resources/i18n/cmsui.xml (original)
+++ lenya/trunk/src/modules-core/sitemanagement/resources/i18n/cmsui.xml Mon Dec  3 08:21:32 2007
@@ -72,6 +72,7 @@
   <message key="no-rollback-no-privileges">Rollback disabled. You do not
   have sufficient privileges.</message>
   <message key="will-paste-in-own-subtree">Can't paste a cut document in its own subtree.</message>
+  <message key="will-copy-to-self">Can't paste a copied document to itself.</message>
   <message key="Change Document URL">Change Document URL</message>
   <message key="change-document-url">Change the URL of document <q>{0}</q></message>
   <message key="New URL Fragment">New URL Fragment</message>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.