fixed GUI on performing actions (changing moderation status)
This commit is contained in:
parent
cff1e2a78f
commit
3fcd1f3f3a
|
@ -89,6 +89,12 @@ public class CkanContentModeratorWidgetController {
|
||||||
// if items selected are > 0 then shows button "Update status as.."
|
// if items selected are > 0 then shows button "Update status as.."
|
||||||
howeView.setVisibleUpdateStatusAction(items.size() > 0);
|
howeView.setVisibleUpdateStatusAction(items.size() > 0);
|
||||||
|
|
||||||
|
if(howeView.getDisplayingItemStatus().equals(ItemStatus.APPROVED)) {
|
||||||
|
GWT.log("The Item Status displayed is "+ItemStatus.APPROVED +" hiding update status actions");
|
||||||
|
howeView.setVisibleUpdateStatusAction(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -209,7 +215,7 @@ public class CkanContentModeratorWidgetController {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
t.schedule(12000);
|
t.schedule(15000);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -8,6 +8,7 @@ import org.gcube.portlets.widgets.ckancontentmoderator.client.CkanContentModerat
|
||||||
import org.gcube.portlets.widgets.ckancontentmoderator.client.events.CheckBoxSelectIemsEvent;
|
import org.gcube.portlets.widgets.ckancontentmoderator.client.events.CheckBoxSelectIemsEvent;
|
||||||
import org.gcube.portlets.widgets.ckancontentmoderator.client.events.SelectItemsWithItemStatusEvent;
|
import org.gcube.portlets.widgets.ckancontentmoderator.client.events.SelectItemsWithItemStatusEvent;
|
||||||
import org.gcube.portlets.widgets.ckancontentmoderator.client.ui.table.ItemsTable.DISPLAY_FIELD;
|
import org.gcube.portlets.widgets.ckancontentmoderator.client.ui.table.ItemsTable.DISPLAY_FIELD;
|
||||||
|
import org.gcube.portlets.widgets.ckancontentmoderator.client.ui.util.LoadingPanel;
|
||||||
import org.gcube.portlets.widgets.ckancontentmoderator.client.ui.util.UtilFunct;
|
import org.gcube.portlets.widgets.ckancontentmoderator.client.ui.util.UtilFunct;
|
||||||
import org.gcube.portlets.widgets.ckancontentmoderator.shared.CatalogueDataset;
|
import org.gcube.portlets.widgets.ckancontentmoderator.shared.CatalogueDataset;
|
||||||
import org.gcube.portlets.widgets.ckancontentmoderator.shared.OperationReport;
|
import org.gcube.portlets.widgets.ckancontentmoderator.shared.OperationReport;
|
||||||
|
@ -33,6 +34,7 @@ import com.google.gwt.uibinder.client.UiField;
|
||||||
import com.google.gwt.user.client.Window;
|
import com.google.gwt.user.client.Window;
|
||||||
import com.google.gwt.user.client.rpc.AsyncCallback;
|
import com.google.gwt.user.client.rpc.AsyncCallback;
|
||||||
import com.google.gwt.user.client.ui.Composite;
|
import com.google.gwt.user.client.ui.Composite;
|
||||||
|
import com.google.gwt.user.client.ui.HTML;
|
||||||
import com.google.gwt.user.client.ui.HTMLPanel;
|
import com.google.gwt.user.client.ui.HTMLPanel;
|
||||||
import com.google.gwt.user.client.ui.ScrollPanel;
|
import com.google.gwt.user.client.ui.ScrollPanel;
|
||||||
import com.google.gwt.user.client.ui.Widget;
|
import com.google.gwt.user.client.ui.Widget;
|
||||||
|
@ -62,6 +64,9 @@ public class HomeView extends Composite {
|
||||||
@UiField
|
@UiField
|
||||||
Heading pageHeader;
|
Heading pageHeader;
|
||||||
|
|
||||||
|
@UiField
|
||||||
|
HTMLPanel actionLoaderPanel;
|
||||||
|
|
||||||
@UiField
|
@UiField
|
||||||
HTMLPanel confirmPanel;
|
HTMLPanel confirmPanel;
|
||||||
|
|
||||||
|
@ -76,6 +81,8 @@ public class HomeView extends Composite {
|
||||||
|
|
||||||
private HandlerManager eventBus;
|
private HandlerManager eventBus;
|
||||||
|
|
||||||
|
private LoadingPanel actionInProgressLoader = new LoadingPanel(new HTML("Performing action..."));
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The Interface HomeViewUiBinder.
|
* The Interface HomeViewUiBinder.
|
||||||
*
|
*
|
||||||
|
@ -114,12 +121,20 @@ public class HomeView extends Composite {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
showActionLoader(false);
|
||||||
|
actionLoaderPanel.add(actionInProgressLoader);
|
||||||
|
|
||||||
setStatusOptions(status);
|
setStatusOptions(status);
|
||||||
bindEvents();
|
bindEvents();
|
||||||
confirmPanel.add(confirmPanelContainer);
|
confirmPanel.add(confirmPanelContainer);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void showActionLoader(boolean showActionInProgress) {
|
||||||
|
GWT.log("Show action in progress: "+showActionInProgress);
|
||||||
|
actionLoaderPanel.setVisible(showActionInProgress);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sets the status options according to item status selected
|
* Sets the status options according to item status selected
|
||||||
*/
|
*/
|
||||||
|
@ -141,6 +156,11 @@ public class HomeView extends Composite {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Hiding the changing of any status from the APPROVED
|
||||||
|
if(selectedStatus.equals(ItemStatus.APPROVED)) {
|
||||||
|
navLink.setVisible(false);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -297,10 +317,11 @@ public class HomeView extends Composite {
|
||||||
* Show do action delete permanently.
|
* Show do action delete permanently.
|
||||||
*/
|
*/
|
||||||
private void showDoActionViewDeletePermanently() {
|
private void showDoActionViewDeletePermanently() {
|
||||||
|
|
||||||
confirmPanelContainer.clear();
|
confirmPanelContainer.clear();
|
||||||
GWT.log("showDoActionViewDeletePermanently...");
|
GWT.log("showDoActionViewDeletePermanently...");
|
||||||
|
|
||||||
DoActionCMSView doActionCMS = new DoActionCMSView();
|
final DoActionCMSView doActionCMS = new DoActionCMSView();
|
||||||
final List<CatalogueDataset> selectedItems = paginatedView.getSelectItems();
|
final List<CatalogueDataset> selectedItems = paginatedView.getSelectItems();
|
||||||
doActionCMS.permanentlyDelete(selectedItems);
|
doActionCMS.permanentlyDelete(selectedItems);
|
||||||
|
|
||||||
|
@ -319,6 +340,23 @@ public class HomeView extends Composite {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(ClickEvent event) {
|
public void onClick(ClickEvent event) {
|
||||||
confirmPanelContainer.clear();
|
confirmPanelContainer.clear();
|
||||||
|
showActionLoader(true);
|
||||||
|
|
||||||
|
List<String> listDatasetNames = UtilFunct.toListDatasetNames(doActionCMS.getListSelectItems());
|
||||||
|
CkanContentModeratorWidgetController.contentModeratorService.permanentlyDelete(listDatasetNames, new AsyncCallback<OperationReport>() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onFailure(Throwable caught) {
|
||||||
|
showActionLoader(false);
|
||||||
|
Window.alert(caught.getMessage());
|
||||||
|
eventBus.fireEvent(new SelectItemsWithItemStatusEvent(displayingItemStatus,
|
||||||
|
"Sorry an error occurred. Please, refresh and try again", AlertType.ERROR));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onSuccess(OperationReport result) {
|
||||||
|
showActionLoader(false);
|
||||||
AlertType alert = AlertType.SUCCESS;
|
AlertType alert = AlertType.SUCCESS;
|
||||||
int count = selectedItems.size();
|
int count = selectedItems.size();
|
||||||
String msg = "Deleted permanently";
|
String msg = "Deleted permanently";
|
||||||
|
@ -331,7 +369,21 @@ public class HomeView extends Composite {
|
||||||
|
|
||||||
msg += " from Catalogue";
|
msg += " from Catalogue";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int errorCount = result.getErrorMapItems().size();
|
||||||
|
if (errorCount > 0) {
|
||||||
|
msg += " <br/>Error occurred on deleting permanently " + errorCount + " item/s:";
|
||||||
|
for (String key : result.getErrorMapItems().keySet()) {
|
||||||
|
msg += "<br/> "+ key+". Error: "+ result.getErrorMapItems().get(key);
|
||||||
|
}
|
||||||
|
|
||||||
|
alert = AlertType.WARNING;
|
||||||
|
}
|
||||||
|
|
||||||
eventBus.fireEvent(new SelectItemsWithItemStatusEvent(displayingItemStatus, msg, alert));
|
eventBus.fireEvent(new SelectItemsWithItemStatusEvent(displayingItemStatus, msg, alert));
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -374,8 +426,9 @@ public class HomeView extends Composite {
|
||||||
*
|
*
|
||||||
* @param doActionCMSView the do action CMS view
|
* @param doActionCMSView the do action CMS view
|
||||||
*/
|
*/
|
||||||
private void performCMSAction(DoActionCMSView doActionCMSView) {
|
private void performCMSAction(final DoActionCMSView doActionCMSView) {
|
||||||
|
|
||||||
|
showActionLoader(true);
|
||||||
final ItemStatus toStatus = doActionCMSView.getToStatus();
|
final ItemStatus toStatus = doActionCMSView.getToStatus();
|
||||||
List<String> listDatasetNames = UtilFunct.toListDatasetNames(doActionCMSView.getListSelectItems());
|
List<String> listDatasetNames = UtilFunct.toListDatasetNames(doActionCMSView.getListSelectItems());
|
||||||
switch (toStatus) {
|
switch (toStatus) {
|
||||||
|
@ -386,7 +439,7 @@ public class HomeView extends Composite {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess(OperationReport result) {
|
public void onSuccess(OperationReport result) {
|
||||||
|
showActionLoader(false);
|
||||||
AlertType alert = AlertType.SUCCESS;
|
AlertType alert = AlertType.SUCCESS;
|
||||||
int count = result.getPassedListItems().size();
|
int count = result.getPassedListItems().size();
|
||||||
String msg = "";
|
String msg = "";
|
||||||
|
@ -415,6 +468,7 @@ public class HomeView extends Composite {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
|
showActionLoader(false);
|
||||||
Window.alert(caught.getMessage());
|
Window.alert(caught.getMessage());
|
||||||
eventBus.fireEvent(new SelectItemsWithItemStatusEvent(displayingItemStatus,
|
eventBus.fireEvent(new SelectItemsWithItemStatusEvent(displayingItemStatus,
|
||||||
"Sorry an error occurred. Please, refresh and try again", AlertType.ERROR));
|
"Sorry an error occurred. Please, refresh and try again", AlertType.ERROR));
|
||||||
|
@ -431,6 +485,7 @@ public class HomeView extends Composite {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
|
showActionLoader(false);
|
||||||
Window.alert(caught.getMessage());
|
Window.alert(caught.getMessage());
|
||||||
eventBus.fireEvent(new SelectItemsWithItemStatusEvent(displayingItemStatus,
|
eventBus.fireEvent(new SelectItemsWithItemStatusEvent(displayingItemStatus,
|
||||||
"Sorry an error occurred. Please, refresh and try again", AlertType.ERROR));
|
"Sorry an error occurred. Please, refresh and try again", AlertType.ERROR));
|
||||||
|
@ -439,7 +494,7 @@ public class HomeView extends Composite {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess(OperationReport result) {
|
public void onSuccess(OperationReport result) {
|
||||||
|
showActionLoader(false);
|
||||||
AlertType alert = AlertType.SUCCESS;
|
AlertType alert = AlertType.SUCCESS;
|
||||||
int count = result.getPassedListItems().size();
|
int count = result.getPassedListItems().size();
|
||||||
String msg = "";
|
String msg = "";
|
||||||
|
@ -459,6 +514,8 @@ public class HomeView extends Composite {
|
||||||
for (String key : result.getErrorMapItems().keySet()) {
|
for (String key : result.getErrorMapItems().keySet()) {
|
||||||
msg += "<br/> "+ key+". Error: "+ result.getErrorMapItems().get(key);
|
msg += "<br/> "+ key+". Error: "+ result.getErrorMapItems().get(key);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
alert = AlertType.WARNING;
|
||||||
}
|
}
|
||||||
|
|
||||||
eventBus.fireEvent(new SelectItemsWithItemStatusEvent(displayingItemStatus, msg, alert));
|
eventBus.fireEvent(new SelectItemsWithItemStatusEvent(displayingItemStatus, msg, alert));
|
||||||
|
@ -476,6 +533,7 @@ public class HomeView extends Composite {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
|
showActionLoader(false);
|
||||||
Window.alert(caught.getMessage());
|
Window.alert(caught.getMessage());
|
||||||
eventBus.fireEvent(new SelectItemsWithItemStatusEvent(displayingItemStatus,
|
eventBus.fireEvent(new SelectItemsWithItemStatusEvent(displayingItemStatus,
|
||||||
"Sorry an error occurred. Please, refresh and try again", AlertType.ERROR));
|
"Sorry an error occurred. Please, refresh and try again", AlertType.ERROR));
|
||||||
|
@ -483,7 +541,7 @@ public class HomeView extends Composite {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess(OperationReport result) {
|
public void onSuccess(OperationReport result) {
|
||||||
|
showActionLoader(false);
|
||||||
AlertType alert = AlertType.SUCCESS;
|
AlertType alert = AlertType.SUCCESS;
|
||||||
int count = result.getPassedListItems().size();
|
int count = result.getPassedListItems().size();
|
||||||
String msg = "";
|
String msg = "";
|
||||||
|
@ -494,8 +552,15 @@ public class HomeView extends Composite {
|
||||||
msg += count + " items";
|
msg += count + " items";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
boolean isPermanentlyDelete = doActionCMSView.isPermanentlyDelete();
|
||||||
|
|
||||||
|
if(isPermanentlyDelete) {
|
||||||
|
msg += " deleted permanently from Catalogue";
|
||||||
|
}
|
||||||
|
else {
|
||||||
msg += " moved to " + toStatus + " status.";
|
msg += " moved to " + toStatus + " status.";
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
int errorCount = result.getErrorMapItems().size();
|
int errorCount = result.getErrorMapItems().size();
|
||||||
if (errorCount > 0) {
|
if (errorCount > 0) {
|
||||||
|
@ -503,6 +568,8 @@ public class HomeView extends Composite {
|
||||||
for (String key : result.getErrorMapItems().keySet()) {
|
for (String key : result.getErrorMapItems().keySet()) {
|
||||||
msg += "<br/> "+ key+". Error: "+ result.getErrorMapItems().get(key);
|
msg += "<br/> "+ key+". Error: "+ result.getErrorMapItems().get(key);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
alert = AlertType.WARNING;
|
||||||
}
|
}
|
||||||
|
|
||||||
eventBus.fireEvent(new SelectItemsWithItemStatusEvent(displayingItemStatus, msg, alert));
|
eventBus.fireEvent(new SelectItemsWithItemStatusEvent(displayingItemStatus, msg, alert));
|
||||||
|
@ -517,4 +584,8 @@ public class HomeView extends Composite {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ItemStatus getDisplayingItemStatus() {
|
||||||
|
return displayingItemStatus;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -54,6 +54,7 @@
|
||||||
addStyleNames="{style.button-style}" type="LINK" visible="false">Permanently
|
addStyleNames="{style.button-style}" type="LINK" visible="false">Permanently
|
||||||
Delete</b:Button>
|
Delete</b:Button>
|
||||||
</g:HorizontalPanel>
|
</g:HorizontalPanel>
|
||||||
|
<g:HTMLPanel ui:field="actionLoaderPanel"></g:HTMLPanel>
|
||||||
<g:HTMLPanel ui:field="confirmPanel"></g:HTMLPanel>
|
<g:HTMLPanel ui:field="confirmPanel"></g:HTMLPanel>
|
||||||
<g:HTMLPanel ui:field="panelContainer"></g:HTMLPanel>
|
<g:HTMLPanel ui:field="panelContainer"></g:HTMLPanel>
|
||||||
</g:HTMLPanel>
|
</g:HTMLPanel>
|
||||||
|
|
|
@ -7,7 +7,6 @@ import com.google.gwt.user.client.ui.HTML;
|
||||||
import com.google.gwt.user.client.ui.HorizontalPanel;
|
import com.google.gwt.user.client.ui.HorizontalPanel;
|
||||||
import com.google.gwt.user.client.ui.Image;
|
import com.google.gwt.user.client.ui.Image;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The Class LoadingPanel.
|
* The Class LoadingPanel.
|
||||||
*
|
*
|
||||||
|
@ -28,11 +27,11 @@ public class LoadingPanel extends HorizontalPanel {
|
||||||
this.getElement().getStyle().setMargin(5.0, Unit.PX);
|
this.getElement().getStyle().setMargin(5.0, Unit.PX);
|
||||||
// LOADING_PANEL.setSpacing(3);
|
// LOADING_PANEL.setSpacing(3);
|
||||||
this.add(LOADING_IMAGE);
|
this.add(LOADING_IMAGE);
|
||||||
if (html != null) {
|
|
||||||
HTML loadingText = new HTML("Loading...");
|
|
||||||
loadingText.getElement().getStyle().setPaddingLeft(5.0, Unit.PX);
|
|
||||||
this.add(loadingText);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
if (html == null)
|
||||||
|
html = new HTML("Loading...");
|
||||||
|
|
||||||
|
html.getElement().getStyle().setPaddingLeft(5.0, Unit.PX);
|
||||||
|
this.add(html);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue