*/
package gr.grnet.pithos.web.client;
-import com.google.gwt.core.client.Scheduler;
-import com.google.gwt.http.client.Response;
import gr.grnet.pithos.web.client.foldertree.File;
import gr.grnet.pithos.web.client.foldertree.Folder;
-import gr.grnet.pithos.web.client.foldertree.Resource;
-import gr.grnet.pithos.web.client.rest.GetCommand;
-import gr.grnet.pithos.web.client.rest.PostCommand;
-import gr.grnet.pithos.web.client.rest.PutRequest;
-import gr.grnet.pithos.web.client.rest.RestCommand;
-import gr.grnet.pithos.web.client.rest.RestException;
-import gr.grnet.pithos.web.client.rest.resource.FileResource;
-import gr.grnet.pithos.web.client.rest.resource.FolderResource;
-import gr.grnet.pithos.web.client.rest.resource.RestResourceWrapper;
-import gr.grnet.pithos.web.client.rest.resource.UploadStatusResource;
-
-import java.util.ArrayList;
-import java.util.List;
import com.google.gwt.core.client.GWT;
import com.google.gwt.dom.client.NativeEvent;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.dom.client.KeyCodes;
-import com.google.gwt.http.client.URL;
-import com.google.gwt.json.client.JSONObject;
-import com.google.gwt.json.client.JSONString;
-import com.google.gwt.user.client.DeferredCommand;
+import com.google.gwt.user.client.Command;
+import com.google.gwt.user.client.Cookies;
import com.google.gwt.user.client.Event.NativePreviewEvent;
-import com.google.gwt.user.client.Timer;
+import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.DialogBox;
import com.google.gwt.user.client.ui.FileUpload;
import com.google.gwt.user.client.ui.FormPanel.SubmitEvent;
import com.google.gwt.user.client.ui.FormPanel.SubmitHandler;
import com.google.gwt.user.client.ui.Grid;
-import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.HasHorizontalAlignment;
import com.google.gwt.user.client.ui.Hidden;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.VerticalPanel;
-import javax.xml.transform.Templates;
/**
* The 'File upload' dialog box implementation.
/**
* The Form element that performs the file upload.
*/
- private final FormPanel form = new FormPanel();
+ protected final FormPanel form = new FormPanel();
private final FileUpload upload = new FileUpload();
protected Folder folder;
- protected GSS app;
+ protected Pithos app;
/**
* The widget's constructor.
// Create a panel to hold all of the form widgets.
VerticalPanel panel = new VerticalPanel();
form.setWidget(panel);
- final HTML info = new HTML("You may select a file to upload. Install" +
- " <a href='http://gears.google.com/' target='_blank'>Google " +
- "Gears</a><br> for uploading multiple files simultaneously.");
- info.addStyleName("pithos-uploadNote");
- panel.add(info);
final Hidden auth = new Hidden("X-Auth-Token", "");
panel.add(auth);
// form.
submit = new Button("Upload", new ClickHandler() {
@Override
- public void onClick(ClickEvent event) {
+ public void onClick(@SuppressWarnings("unused") ClickEvent event) {
prepareAndSubmit();
}
});
// dialog when the button is clicked.
final Button cancel = new Button("Cancel", new ClickHandler() {
@Override
- public void onClick(ClickEvent event) {
+ public void onClick(@SuppressWarnings("unused") ClickEvent event) {
hide();
}
});
buttons.add(cancel);
buttons.setCellHorizontalAlignment(cancel, HasHorizontalAlignment.ALIGN_CENTER);
buttons.setSpacing(8);
- buttons.addStyleName("pithos-DialogBox");
panel.add(buttons);
panel.setCellHorizontalAlignment(buttons, HasHorizontalAlignment.ALIGN_CENTER);
form.addSubmitHandler(new SubmitHandler() {
@Override
- public void onSubmit(SubmitEvent event) {
+ public void onSubmit(@SuppressWarnings("unused") SubmitEvent event) {
auth.setValue(app.getToken()); //This is done here because the app object is not available in the constructor
+ Cookies.setCookie("X-Auth-Token", app.getToken(), null, Window.Location.getHostName(), app.getApiPath(), false);
}
});
form.addSubmitCompleteHandler(new SubmitCompleteHandler() {
GWT.log(results, null);
app.displayError(results);
}
- app.updateFolder(folder);
+ if (app.getSelectedTree().equals(app.getFolderTreeView()))
+ app.updateFolder(folder, true, new Command() {
+
+ @Override
+ public void execute() {
+ app.updateStatistics();
+ }
+ });
+ else
+ app.updateOtherSharedFolder(folder, true);
hide();
}
});
-
- panel.addStyleName("pithos-DialogBox");
- addStyleName("pithos-DialogBox");
setWidget(form);
}
return;
}
final String fname = getFilename(upload.getFilename());
- String apath = app.getApiPath() + app.getUsername() + folder.getUri() + "/" + fname;
+ String apath = app.getApiPath() + folder.getOwner() + folder.getUri() + "/" + fname;
form.setAction(apath);
submit.setEnabled(false);
upload.setVisible(false);
protected File getFileForName(String name){
for (File f : folder.getFiles())
- if (!f.isInTrash() && f.getName().equals(name))
+ if (f.getName().equals(name))
return f;
return null;
}
- public void setApp(GSS app) {
+ public void setApp(Pithos app) {
this.app = app;
}