diff --git a/.classpath b/.classpath index 181d678..3fa75a2 100644 --- a/.classpath +++ b/.classpath @@ -1,6 +1,6 @@ - + @@ -19,7 +19,7 @@ - + @@ -34,5 +34,5 @@ - + diff --git a/.settings/com.google.gdt.eclipse.core.prefs b/.settings/com.google.gdt.eclipse.core.prefs index 72cb460..4767aff 100644 --- a/.settings/com.google.gdt.eclipse.core.prefs +++ b/.settings/com.google.gdt.eclipse.core.prefs @@ -1,6 +1,6 @@ eclipse.preferences.version=1 jarsExcludedFromWebInfLib= -lastWarOutDir=/home/costantino/workspace/gcube-ckan-datacatalog/target/gcube-ckan-datacatalog-1.0.0-SNAPSHOT +lastWarOutDir=/home/francesco-mangiacrapa/wseclipseluna/gcube-ckan-datacatalog-TRUNK/target/gcube-ckan-datacatalog-1.6.0-SNAPSHOT launchConfigExternalUrlPrefix= warSrcDir=src/main/webapp warSrcDirIsOutput=false diff --git a/pom.xml b/pom.xml index 62c6603..26f618f 100644 --- a/pom.xml +++ b/pom.xml @@ -89,6 +89,11 @@ + + org.gcube.core + common-encryption + + org.gcube.portlets-widgets @@ -109,12 +114,19 @@ compile + + + + + + + org.gcube.resources registry-publisher provided - + org.gcube.common authorization-client diff --git a/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/client/view/CkanMetadataManagementPanel.java b/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/client/view/CkanMetadataManagementPanel.java index 2e086b8..bba7e6d 100644 --- a/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/client/view/CkanMetadataManagementPanel.java +++ b/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/client/view/CkanMetadataManagementPanel.java @@ -38,6 +38,11 @@ import com.google.gwt.user.client.ui.InlineHTML; */ public class CkanMetadataManagementPanel extends FlowPanel{ + /** + * + */ + private static final String MY_PREFIX = "My "; + private static final String MANAGE_ITEM_TOOLTIP = "By pushing on this button, you will be able to manage the item you are viewing." + " Manageable items are the GRSF ones."; @@ -69,7 +74,8 @@ public class CkanMetadataManagementPanel extends FlowPanel{ /** * Instantiates a new ckan metadata management panel. - * @param eventBus + * + * @param eventBus the event bus */ public CkanMetadataManagementPanel(HandlerManager eventBus){ this.eventBus = eventBus; @@ -150,7 +156,7 @@ public class CkanMetadataManagementPanel extends FlowPanel{ } /** - * + * Adds the handlers. */ private void addHandlers() { @@ -294,8 +300,9 @@ public class CkanMetadataManagementPanel extends FlowPanel{ } /** - * Those buttons can be only visible when the logged user has role edit/admin/sysadmin - * @param show + * Those buttons can be only visible when the logged user has role edit/admin/sysadmin. + * + * @param show the show */ public void showInsertAndEditProductButtons(boolean show){ @@ -307,29 +314,33 @@ public class CkanMetadataManagementPanel extends FlowPanel{ /** * Button to manage the product.. for example in grsf case + * * @param value true or false - * @param isManageProductEnabled */ public void showManageProductButton(boolean value){ manageProduct.setVisible(value); } /** - * Enable or disable the manage product button + * Enable or disable the manage product button. + * + * @param value the value */ public void enableManageProductButton(boolean value){ manageProduct.setEnabled(value); } /** - * Enable or disable the share link button + * Enable or disable the share link button. + * + * @param value the value */ public void enableShareItemButton(boolean value){ shareLink.setEnabled(value); } /** - * Show only home/statistics buttons + * Show only home/statistics buttons. */ public void doNotShowUserRelatedInfo(){ @@ -345,6 +356,9 @@ public class CkanMetadataManagementPanel extends FlowPanel{ } + /** + * Removes the generic management buttons. + */ public void removeGenericManagementButtons() { home.setVisible(true); @@ -375,15 +389,50 @@ public class CkanMetadataManagementPanel extends FlowPanel{ if(labelName==null || labelName.isEmpty() || translateValue==null || translateValue.isEmpty()) return; - if(labelName==organizations.getText()){ +// GWT.log("labelName "+labelName); +// GWT.log("translateValue "+translateValue); +// GWT.log("organizations "+organizations.getText()); + + if(labelName.compareToIgnoreCase(organizations.getText().trim())==0){ organizations.setText(translateValue); - }else if(labelName==groups.getText()){ + //return; + }else if(labelName.compareToIgnoreCase(groups.getText().trim())==0){ groups.setText(translateValue); - }else if(labelName==items.getText()){ + //return; + }else if(labelName.compareToIgnoreCase(items.getText().trim())==0){ items.setText(translateValue); - }else if(labelName==types.getText()){ + //return; + }else if(labelName.compareToIgnoreCase(types.getText().trim())==0){ types.setText(translateValue); + //return; + } + + String mylabelName = MY_PREFIX+labelName; +// GWT.log("mylabelName "+mylabelName); +// GWT.log("myDatasets.getText() "+myDatasets.getText()); + + if(mylabelName.compareToIgnoreCase(myDatasets.getText().trim())==0){ + myDatasets.setText(MY_PREFIX+translateValue); + return; + }else if(labelName.compareToIgnoreCase(myOrganizations.getText().trim())==0){ + myOrganizations.setText(MY_PREFIX+translateValue); + return; + }else if(labelName.compareToIgnoreCase(myGroups.getText().trim())==0){ + myGroups.setText(MY_PREFIX+translateValue); + return; } } + + + /** + * Capitalize. + * + * @param stringValue the translate value + * @return the string + */ + public static String capitalize(String stringValue){ + return stringValue.substring(0,1).toUpperCase()+stringValue.substring(1, stringValue.length()); + } + } diff --git a/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/client/view/GCubeCkanDataCatalogPanel.java b/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/client/view/GCubeCkanDataCatalogPanel.java index 4a38747..61d46c1 100644 --- a/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/client/view/GCubeCkanDataCatalogPanel.java +++ b/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/client/view/GCubeCkanDataCatalogPanel.java @@ -413,9 +413,11 @@ public class GCubeCkanDataCatalogPanel extends BaseViewTemplate { //Supporting Task #12286: parsing the translate values for 'dataset', 'organization' and so on if(object.containsKey("translate")){ JSONObject theTranslate = (JSONObject) object.get("translate"); + GWT.log("theTranslate is " + object); for (String key : theTranslate.keySet()) { - String value = object.get(key).isString().stringValue(); - GWT.log("Customizing key " + key +" with translate: "+value); + GWT.log("theTranslate key " + key); + String value = theTranslate.get(key).isString().stringValue(); + printString("Customizing navigation link '" + key +"' with translate: "+value); managementPanel.customizeLabelAccordingTranslate(key,value); } diff --git a/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/server/GcubeCkanDataCatalogServiceImpl.java b/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/server/GcubeCkanDataCatalogServiceImpl.java index 353e9a4..23d5e67 100644 --- a/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/server/GcubeCkanDataCatalogServiceImpl.java +++ b/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/server/GcubeCkanDataCatalogServiceImpl.java @@ -96,10 +96,12 @@ public class GcubeCkanDataCatalogServiceImpl extends RemoteServiceServlet implem logger.info("queryStringParameters detected like Base64 and decoded like: "+queryStringParameters); } - ScopeBean scopeBean = new ScopeBean(scopePerCurrentUrl); - if(scopeBean.is(Type.VRE) && !checksItemCatalogueResourceUpdated.containsKey(scopePerCurrentUrl)){ - new UpdateItemCatalogueResource(scopePerCurrentUrl, SessionUtil.getCurrentClientUrl(getThreadLocalRequest()).split("\\?")[0]).start(); - checksItemCatalogueResourceUpdated.put(scopePerCurrentUrl, true); + if(SessionUtil.isIntoPortal()){ + ScopeBean scopeBean = new ScopeBean(scopePerCurrentUrl); + if(scopeBean.is(Type.VRE) && !checksItemCatalogueResourceUpdated.containsKey(scopePerCurrentUrl)){ + new UpdateItemCatalogueResource(scopePerCurrentUrl, SessionUtil.getCurrentClientUrl(getThreadLocalRequest()).split("\\?")[0]).start(); + checksItemCatalogueResourceUpdated.put(scopePerCurrentUrl, true); + } } if(pathInfoParameter == null || pathInfoParameter.isEmpty()){ @@ -181,8 +183,8 @@ public class GcubeCkanDataCatalogServiceImpl extends RemoteServiceServlet implem SessionUtil.getCurrentUser( getThreadLocalRequest()).getEmail(), scopePerCurrentUrl, - getCatalogue(scopePerCurrentUrl), - isViewPerVREEnabled() != null, + getCatalogue(scopePerCurrentUrl), + isViewPerVREEnabled() != null, getThreadLocalRequest().getSession()); ckan.addListOfVREs(roleForVre); diff --git a/src/main/resources/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/GCubeCkanDataCatalog.gwt.xml b/src/main/resources/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/GCubeCkanDataCatalog.gwt.xml new file mode 100644 index 0000000..17c7d19 --- /dev/null +++ b/src/main/resources/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/GCubeCkanDataCatalog.gwt.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +