Fix for Issue 35 that doesn't allow the creation of a folder which name contains...
authorNatasa Kapravelou <akapravelou@gmail.com>
Wed, 6 Oct 2010 13:48:04 +0000 (16:48 +0300)
committerNatasa Kapravelou <akapravelou@gmail.com>
Wed, 6 Oct 2010 13:48:04 +0000 (16:48 +0300)
src/gr/ebs/gss/client/FolderPropertiesDialog.java
src/gr/ebs/gss/server/rest/RequestHandler.java

index 29c6fda..007ef4d 100644 (file)
@@ -34,6 +34,8 @@ import com.google.gwt.dom.client.NativeEvent;
 import com.google.gwt.event.dom.client.ClickEvent;\r
 import com.google.gwt.event.dom.client.ClickHandler;\r
 import com.google.gwt.event.dom.client.KeyCodes;\r
+import com.google.gwt.event.dom.client.KeyDownEvent;\r
+import com.google.gwt.event.dom.client.KeyDownHandler;\r
 import com.google.gwt.http.client.URL;\r
 import com.google.gwt.i18n.client.DateTimeFormat;\r
 import com.google.gwt.json.client.JSONArray;\r
@@ -123,6 +125,10 @@ public class FolderPropertiesDialog extends DialogBox {
                        inner.add(permPanel, "Sharing");\r
                inner.selectTab(0);\r
 \r
+               final Label folderNameNote = new Label("Please note that slashes ('/') are not allowed in foldernames.", true);\r
+               folderNameNote.setVisible(false);\r
+               folderNameNote.setStylePrimaryName("gss-readForAllNote");\r
+\r
                FlexTable generalTable = new FlexTable();\r
                generalTable.setText(0, 0, "Name");\r
                generalTable.setText(1, 0, "Parent");\r
@@ -130,8 +136,19 @@ public class FolderPropertiesDialog extends DialogBox {
                generalTable.setText(3, 0, "Last modified");\r
                folderName.setText(create ? "" : folder.getName());\r
                generalTable.setWidget(0, 1, folderName);\r
-               if (create)\r
+               folderName.addKeyDownHandler(new KeyDownHandler() {\r
+\r
+                       @Override\r
+                       public void onKeyDown(KeyDownEvent event) {\r
+                               folderNameNote.setVisible(true);\r
+\r
+                       }\r
+               });\r
+\r
+               if (create){\r
                        generalTable.setText(1, 1, folder.getName());\r
+                       generalTable.setWidget(0, 2, folderNameNote);\r
+               }\r
                else if(folder.getParentName() == null)\r
                        generalTable.setText(1, 1, "-");\r
                else\r
index 4e2c78e..84270b6 100644 (file)
@@ -744,10 +744,10 @@ public class RequestHandler extends Webdav {
        }
 
        /**
-        * Reject illegal resource names, like '.' or '..'.
+        * Reject illegal resource names, like '.' or '..' or resource names containing '/'.
         */
        protected boolean isValidResourceName(String name) {
-               if (".".equals(name) || "..".equals(name))
+               if (".".equals(name) || "..".equals(name) || name.contains("/"))
                        return false;
                return true;
        }