diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsController.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsController.java index 1e432a9..0e5d0ef 100644 --- a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsController.java +++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsController.java @@ -205,7 +205,7 @@ public class PerformFishAnalyticsController { modal.setCloseVisible(false); modal.hide(false); final VerticalPanel vp = new VerticalPanel(); - LoaderIcon loader = new LoaderIcon("Loading Batches from service, please wait..."); + LoaderIcon loader = new LoaderIcon("Loading Batches from PerformFish service, please wait..."); vp.add(loader); loader.show(true); modal.add(vp); @@ -238,10 +238,13 @@ public class PerformFishAnalyticsController { viewController.setReloadPerformFishServiceData(true); boolean isValidForm = viewController.validatePerformFishInputFields(); + viewController.resetBatchIdStatus(); + if(isValidForm) { - viewController.resetBatchIdStatus(); + //viewController.resetBatchIdStatus(); viewController.setBatchIdStatus(ControlGroupType.INFO); viewController.enableLoadBatches(true); + viewController.showAlertForLoadBatches("Please click on 'Load Batches' button", AlertType.INFO, false); viewController.enableAllAlgorithmsForSubmit(false); }else { @@ -259,6 +262,8 @@ public class PerformFishAnalyticsController { boolean isBatchIdValid = viewController.validateBatchIdSelection(); if(isBatchIdValid) viewController.enableAllAlgorithmsForSubmit(true); + else + viewController.enableAllAlgorithmsForSubmit(false); //viewController.resyncSelectedKPIs(); } @@ -371,7 +376,7 @@ public class PerformFishAnalyticsController { public void onSuccess(DataMinerResponse dmResponse) { submitRequestPanel.showLoader(false, null); viewController.noSpinner(tab); - final AnalyticsPanelResult analyticsPanelResult = new AnalyticsPanelResult(); + AnalyticsPanelResult analyticsPanelResult = new AnalyticsPanelResult(); analyticsPanelResult.addSelectedAreas(performFishRequestParameters.get(PerformFishAnalyticsConstant.PERFORM_FISH_AREA_PARAM)); analyticsPanelResult.addSelectedKPIs(viewController.getSelectedKPIs()); analyticsPanelResult.addListBatchIds(viewController.getListBatchesID()); @@ -387,28 +392,23 @@ public class PerformFishAnalyticsController { GWT.log(caught.toString()); submitRequestPanel.showLoader(false, null); viewController.noSpinner(tab); - + try { + AnalyticsPanelResult analyticsPanelResult = new AnalyticsPanelResult(); + analyticsPanelResult.addSelectedAreas(performFishRequestParameters.get(PerformFishAnalyticsConstant.PERFORM_FISH_AREA_PARAM)); + analyticsPanelResult.addSelectedKPIs(viewController.getSelectedKPIs()); + analyticsPanelResult.addListBatchIds(viewController.getListBatchesID()); + analyticsPanelResult.addParameters(PerformFishAnalyticsConstant.DATA_INPUTS, mapParameters, viewController.getForm().getBatchType()); + submitRequestPanel.addWidget(analyticsPanelResult); + }catch (Exception e) { + // TODO: handle exception + } + Alert error = new Alert(caught.getMessage()); error.setClose(false); error.setType(AlertType.ERROR); submitRequestPanel.addWidget(error); - - Button butt = new Button("OK"); - butt.setType(ButtonType.INFO); - //butt.getElement().getStyle().setProperty("text-align", "center"); - butt.addClickHandler(new ClickHandler() { - - @Override - public void onClick(ClickEvent event) { - - //modal.hide(); - } - }); - - submitRequestPanel.addWidget(butt); } }); - //modal.show(); } diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsViewController.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsViewController.java index 300c421..1bc3186 100644 --- a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsViewController.java +++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsViewController.java @@ -361,7 +361,7 @@ public class PerformFishAnalyticsViewController { bodyPage.hideError(); List selectedKPIs = recapPage.getSelectedKPIs(); if(selectedKPIs.size()<1){ - bodyPage.showAlert("Please select at least 1 KPI", AlertType.ERROR); + bodyPage.showAlert("Please select at least 1 KPI. Expand the KPI's tree and than select at least 1 KPI by checkbox", AlertType.ERROR); //recapPage.setError("You must select a KPI"); return false; } @@ -426,9 +426,9 @@ public class PerformFishAnalyticsViewController { batchIDAndListKPI.showError(msgError, true); return false;*/ - String msgError = "Could not find valid data. Please change your selection (Areas, Periods and so on parameters)"; - cg_batch_id.setType(ControlGroupType.INFO); - batchIDAndListKPI.showError(msgError, true); + String msgError = "Could not find valid data. Please change your selection (select others parameters for Quarter and/or Area and/or Period)"; + cg_batch_id.setType(ControlGroupType.WARNING); + batchIDAndListKPI.showAlert(msgError, AlertType.WARNING, false); batchIDAndListKPI.enableButtonLoadBatches(false); return false; } @@ -543,6 +543,18 @@ public class PerformFishAnalyticsViewController { return batchIDAndListKPI.getAllBatchesID(); } + + + /** + * Show alert for load batches. + * + * @param msg the msg + * @param type the type + * @param closable the closable + */ + public void showAlertForLoadBatches(String msg, AlertType type, boolean closable){ + batchIDAndListKPI.showAlert(msg, type, closable); + } diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/viewbinder/BatchIDAndListKPIView.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/viewbinder/BatchIDAndListKPIView.java index 41b90e0..2a27848 100644 --- a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/viewbinder/BatchIDAndListKPIView.java +++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/viewbinder/BatchIDAndListKPIView.java @@ -247,6 +247,9 @@ public class BatchIDAndListKPIView extends Composite { } } + /** + * Reset batch id status. + */ public void resetBatchIdStatus() { //Resetting batch ID and panel error after calling Perform Fish Service uib_list_batch_id.clear(); @@ -271,15 +274,16 @@ public class BatchIDAndListKPIView extends Composite { panel.add(alert); } - + /** - * Show error. + * Show alert. * * @param error the error + * @param type the type * @param closable the closable */ - public void showError(String error, boolean closable){ - showAlert(error, AlertType.ERROR, closable, the_panel_error); + public void showAlert(String error, AlertType type, boolean closable){ + showAlert(error, type, closable, the_panel_error); } @@ -344,8 +348,12 @@ public class BatchIDAndListKPIView extends Composite { */ public void enableButtonLoadBatches(boolean enable) { uib_button_load_batches.setEnabled(enable); + if(enable) - uib_list_batch_id.setTitle("Press on Load Batches"); + uib_list_batch_id.setTitle("Click the 'Load Batches' button"); + else + uib_list_batch_id.setTitle(""); + } diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/viewbinder/PerformFishAnalitycsFormView.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/viewbinder/PerformFishAnalitycsFormView.java index 67a7fb2..b7ff09e 100644 --- a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/viewbinder/PerformFishAnalitycsFormView.java +++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/viewbinder/PerformFishAnalitycsFormView.java @@ -150,6 +150,15 @@ public class PerformFishAnalitycsFormView extends Composite { PerformFishAnalyticsController.eventBus.fireEvent(new PerformFishFieldFormChangedEvent(field_select_period)); } }); + + field_select_species.addChangeHandler(new ChangeHandler() { + + @Override + public void onChange(ChangeEvent event) { + PerformFishAnalyticsController.eventBus.fireEvent(new PerformFishFieldFormChangedEvent(field_select_species)); + + } + }); field_select_quarter.addChangeHandler(new ChangeHandler() { @@ -367,17 +376,17 @@ public class PerformFishAnalitycsFormView extends Composite { // cg_remote_path.setType(ControlGroupType.NONE); if (field_select_quarter.getItemCount()>0 && field_select_quarter.getSelectedIndex() == -1) { cg_select_quarter.setType(ControlGroupType.INFO); - showAlert("Please select a Quarter", AlertType.INFO); + showAlert("Quarter selection is required", AlertType.INFO); return false; } if (field_select_area.getItemCount()>0 && field_select_area.getSelectedIndex() == -1) { cg_select_area.setType(ControlGroupType.INFO); - showAlert("Please select an Area", AlertType.INFO); + showAlert("Area selection is required", AlertType.INFO); return false; } if (field_select_period.getItemCount()>0 && field_select_period.getSelectedIndex() == -1) { cg_select_period.setType(ControlGroupType.INFO); - showAlert("Please select a Period", AlertType.INFO); + showAlert("Period selection is required", AlertType.INFO); return false; } return true; diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/viewbinder/TabPanelView.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/viewbinder/TabPanelView.java index 26136d1..90c3ee7 100644 --- a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/viewbinder/TabPanelView.java +++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/viewbinder/TabPanelView.java @@ -171,7 +171,6 @@ public class TabPanelView extends Composite { * @param tab the new no spinner */ public void setNoSpinner(Tab tab) { - tab.asTabLink().getAnchor().setIcon(IconType.BAR_CHART); try{ tab.asTabLink().getAnchor().removeStyleName("icon-spin"); Element anchorElem = tab.asTabLink().getAnchor().asWidget().getElement(); @@ -179,6 +178,9 @@ public class TabPanelView extends Composite { }catch(Exception e){ //silent } + tab.asTabLink().getAnchor().setIcon(IconType.BAR_CHART); + //tab.asTabLink().getAnchor().setVisible(false); + //if(tab.asTabLink().getAnchor().setVisible(false);) }