import com.google.gwt.core.client.Scheduler;\r
import com.google.gwt.json.client.JSONArray;\r
import com.google.gwt.json.client.JSONString;\r
+import com.google.gwt.user.client.Window;\r
import com.google.gwt.user.client.ui.Anchor;\r
import com.google.gwt.user.client.ui.Label;\r
import gr.grnet.pithos.web.client.foldertree.File;\r
permPanel.add(permForAll);\r
}\r
\r
- final HorizontalPanel pathPanel = new HorizontalPanel();\r
- pathPanel.setWidth("100%");\r
- pathPanel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT);\r
- pathPanel.add(new Label("Link"));\r
- pathPanel.setSpacing(8);\r
- pathPanel.addStyleName("pithos-TabPanelBottom");\r
-\r
- TextBox path = new TextBox();\r
- path.setWidth("100%");\r
- path.addClickHandler(new ClickHandler() {\r
- @Override\r
- public void onClick(ClickEvent event) {\r
- Pithos.enableIESelection();\r
- ((TextBox) event.getSource()).selectAll();\r
- Pithos.preventIESelection();\r
- }\r
- });\r
- path.setText(file.getUri());\r
- path.setTitle("Use this link for sharing the file via e-mail, IM, etc. (crtl-C/cmd-C to copy to system clipboard)");\r
- path.setWidth("100%");\r
- path.setReadOnly(true);\r
- pathPanel.add(path);\r
- permPanel.add(pathPanel);\r
+ if (file.isPublished()) {\r
+ final HorizontalPanel pathPanel = new HorizontalPanel();\r
+ pathPanel.setWidth("100%");\r
+ pathPanel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT);\r
+ pathPanel.add(new Label("Link"));\r
+ pathPanel.setSpacing(8);\r
+ pathPanel.addStyleName("pithos-TabPanelBottom");\r
+\r
+ TextBox path = new TextBox();\r
+ path.setWidth("100%");\r
+ path.addClickHandler(new ClickHandler() {\r
+ @Override\r
+ public void onClick(ClickEvent event) {\r
+ Pithos.enableIESelection();\r
+ ((TextBox) event.getSource()).selectAll();\r
+ Pithos.preventIESelection();\r
+ }\r
+ });\r
+ path.setText(Window.Location.getHost() + file.getPublicUri());\r
+ path.setTitle("Use this link for sharing the file via e-mail, IM, etc. (crtl-C/cmd-C to copy to system clipboard)");\r
+ path.setWidth("100%");\r
+ path.setReadOnly(true);\r
+ pathPanel.add(path);\r
+ permPanel.add(pathPanel);\r
+ }\r
\r
return permPanel;\r
}\r
private boolean published;
+ private String publicUri;
+
public String getContentType() {
return contentType;
}
lastModified = unmarshallDate(o, "last_modified");
modifiedBy = unmarshallString(o, "modified_by");
versionTimestamp = unmarshallDate(o, "version_timestamp");
- published = unmarshallBoolean(o, "x_object_public");
+ published = o.containsKey("x_object_public") ? true : false;
+ publicUri = unmarshallString(o, "x_object_public");
this.container = container;
for (String key : o.keySet())
public boolean isPublished() {
return published;
}
+
+ public String getPublicUri() {
+ return publicUri;
+ }
}