From 37af50b145bce814bb222d811e0793696264794b Mon Sep 17 00:00:00 2001 From: Giancarlo Panichi Date: Fri, 12 Jun 2015 15:53:38 +0000 Subject: [PATCH] Added Tabular Resource Information Dialog git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/user/tabular-data-open-widget@115366 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../client/TabResourceInfoDialog.java | 277 ++++++++++++++++++ ...ResourcesInfoDialogPropertiesMessages.java | 129 ++++++++ .../client/TabResourcesSelectionPanel.java | 143 ++++++--- .../client/custom/DefaultAppearance.java | 75 +++++ .../openwidget/client/custom/IconButton.html | 4 + .../openwidget/client/custom/IconButton.java | 50 ++++ .../client/custom/IconButtonAppearance.java | 16 + .../client/custom/IconButtonStyle.css | 17 ++ .../resources/ResourceBundleTDOpen.java | 10 + .../client/resources/information.png | Bin 0 -> 695 bytes .../client/resources/information_32.png | Bin 0 -> 1582 bytes .../client/resources/page-white-share.png | Bin 0 -> 830 bytes .../client/resources/page-white-share_32.png | Bin 0 -> 1782 bytes .../td/openwidget/client/Messages.properties | 2 - .../openwidget/client/Messages_fr.properties | 2 - ...cesInfoDialogPropertiesMessages.properties | 37 +++ ...InfoDialogPropertiesMessages_es.properties | 37 +++ ...InfoDialogPropertiesMessages_it.properties | 37 +++ .../openwidget/client/custom/IconButton.html | 4 + .../client/custom/IconButtonStyle.css | 17 ++ .../client/resources/information.png | Bin 0 -> 695 bytes .../client/resources/information_32.png | Bin 0 -> 1582 bytes .../client/resources/page-white-share.png | Bin 0 -> 830 bytes .../client/resources/page-white-share_32.png | Bin 0 -> 1782 bytes 24 files changed, 806 insertions(+), 51 deletions(-) create mode 100644 src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourceInfoDialog.java create mode 100644 src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages.java create mode 100644 src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/DefaultAppearance.java create mode 100644 src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButton.html create mode 100644 src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButton.java create mode 100644 src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButtonAppearance.java create mode 100644 src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButtonStyle.css create mode 100644 src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/information.png create mode 100644 src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/information_32.png create mode 100644 src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/page-white-share.png create mode 100644 src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/page-white-share_32.png delete mode 100644 src/main/resources/org/gcube/portlets/user/td/openwidget/client/Messages.properties delete mode 100644 src/main/resources/org/gcube/portlets/user/td/openwidget/client/Messages_fr.properties create mode 100644 src/main/resources/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages.properties create mode 100644 src/main/resources/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages_es.properties create mode 100644 src/main/resources/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages_it.properties create mode 100644 src/main/resources/org/gcube/portlets/user/td/openwidget/client/custom/IconButton.html create mode 100644 src/main/resources/org/gcube/portlets/user/td/openwidget/client/custom/IconButtonStyle.css create mode 100644 src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/information.png create mode 100644 src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/information_32.png create mode 100644 src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/page-white-share.png create mode 100644 src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/page-white-share_32.png diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourceInfoDialog.java b/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourceInfoDialog.java new file mode 100644 index 0000000..fb986ab --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourceInfoDialog.java @@ -0,0 +1,277 @@ +package org.gcube.portlets.user.td.openwidget.client; + +import java.util.ArrayList; +import java.util.Date; + +import org.gcube.portlets.user.td.gwtservice.client.rpc.TDGWTServiceAsync; +import org.gcube.portlets.user.td.gwtservice.shared.exception.TDGWTSessionExpiredException; +import org.gcube.portlets.user.td.gwtservice.shared.licenses.LicenceData; +import org.gcube.portlets.user.td.gwtservice.shared.share.Contacts; +import org.gcube.portlets.user.td.gwtservice.shared.tr.TabResource; +import org.gcube.portlets.user.td.openwidget.client.custom.IconButton; +import org.gcube.portlets.user.td.openwidget.client.resources.ResourceBundleTDOpen; +import org.gcube.portlets.user.td.widgetcommonevent.client.event.SessionExpiredEvent; +import org.gcube.portlets.user.td.widgetcommonevent.client.type.SessionExpiredType; +import org.gcube.portlets.user.td.wizardwidget.client.util.UtilsGXT3; + +import com.allen_sauer.gwt.log.client.Log; +import com.google.gwt.core.client.GWT; +import com.google.web.bindery.event.shared.EventBus; +import com.google.gwt.i18n.client.DateTimeFormat; +import com.google.gwt.user.client.rpc.AsyncCallback; +import com.sencha.gxt.core.client.util.Margins; +import com.sencha.gxt.widget.core.client.Dialog; +import com.sencha.gxt.widget.core.client.container.BoxLayoutContainer.BoxLayoutPack; +import com.sencha.gxt.widget.core.client.container.MarginData; +import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer; +import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer.VerticalLayoutData; +import com.sencha.gxt.widget.core.client.form.CheckBox; +import com.sencha.gxt.widget.core.client.form.DateField; +import com.sencha.gxt.widget.core.client.form.FieldLabel; +import com.sencha.gxt.widget.core.client.form.FieldSet; +import com.sencha.gxt.widget.core.client.form.TextArea; +import com.sencha.gxt.widget.core.client.form.TextField; + +/** + * + * @author giancarlo email: g.panichi@isti.cnr.it + * + */ +public class TabResourceInfoDialog extends Dialog { + private static final int HEIGHT = 500; + private static final int WIDTH = 500; + private DateTimeFormat sdf = DateTimeFormat.getFormat("yyyy-MM-dd"); + private TabResource tabResource; + private TabResourcesInfoDialogPropertiesMessages msgs; + private EventBus eventBus; + private ArrayList licencesList; + + public TabResourceInfoDialog(TabResource tabResource, EventBus eventBus) { + this.tabResource = tabResource; + this.eventBus=eventBus; + this.msgs = GWT.create(TabResourcesInfoDialogPropertiesMessages.class); + initWindow(); + retrieveLicencesList(); + } + + protected void initWindow() { + setModal(true); + setHeadingText(msgs.tabResourceInfoDialogHeadingText()); + getHeader().setIcon(ResourceBundleTDOpen.INSTANCE.information()); + setPredefinedButtons(PredefinedButton.OK); + setHideOnButtonClick(true); + setButtonAlign(BoxLayoutPack.CENTER); + setWidth(WIDTH); + setHeight(HEIGHT); + + + } + + protected void create() { + FieldSet configurationFieldSet = new FieldSet(); + configurationFieldSet.setHeadingText(msgs.tabResourceDetailFieldSet()); + configurationFieldSet.setCollapsible(false); + configurationFieldSet.setBorders(true); + + VerticalLayoutContainer configurationFieldSetLayout = new VerticalLayoutContainer(); + configurationFieldSet.add(configurationFieldSetLayout, + new MarginData(0)); + + TextField trName = new TextField(); + trName.setValue(tabResource.getName()); + trName.setReadOnly(true); + FieldLabel trNameLabel = new FieldLabel(trName, msgs.nameLabel()); + configurationFieldSetLayout.add(trNameLabel, new VerticalLayoutData( + 1, -1, new Margins(0))); + + IconButton trBtnLock = new IconButton(); + if(tabResource.isLocked()){ + trBtnLock.setIcon(ResourceBundleTDOpen.INSTANCE.lock()); + } else { + trBtnLock.setIcon(ResourceBundleTDOpen.INSTANCE.lockOpen()); + } + + FieldLabel trLockLabel = new FieldLabel(trBtnLock, msgs.lockLabel()); + + configurationFieldSetLayout.add(trLockLabel, new VerticalLayoutData( + -1, -1, new Margins(0))); + + + TextArea trDescription = new TextArea(); + trDescription.setValue(tabResource.getDescription()); + trDescription.setReadOnly(true); + FieldLabel trDescriptionLabel = new FieldLabel(trDescription, + msgs.descriptionLabel()); + configurationFieldSetLayout.add(trDescriptionLabel, + new VerticalLayoutData(1, -1, new Margins(0))); + + + TextField trType = new TextField(); + trType.setValue(tabResource.getTabResourceType()); + trType.setReadOnly(true); + FieldLabel trTypeLabel = new FieldLabel(trType, msgs.typeLabel()); + configurationFieldSetLayout.add(trTypeLabel, new VerticalLayoutData( + 1, -1, new Margins(0))); + + TextField trAgency = new TextField(); + trAgency.setValue(tabResource.getAgency()); + trAgency.setReadOnly(true); + FieldLabel trAgencyLabel = new FieldLabel(trAgency, msgs.agencyLabel()); + configurationFieldSetLayout.add(trAgencyLabel, new VerticalLayoutData( + 1, -1, new Margins(0))); + + TextField trCreationDate = new TextField(); + trCreationDate.setValue(tabResource.getDate()); + trCreationDate.setReadOnly(true); + FieldLabel trCreationDateLabel = new FieldLabel(trCreationDate, + msgs.dateLabel()); + configurationFieldSetLayout.add(trCreationDateLabel, + new VerticalLayoutData(1, -1, new Margins(0))); + + + TextField trTableType = new TextField(); + trTableType.setValue(tabResource.getTableTypeName()); + trTableType.setReadOnly(true); + FieldLabel trTableTypeLabel = new FieldLabel(trTableType, msgs.tableTypeNameLabel()); + configurationFieldSetLayout.add(trTableTypeLabel, new VerticalLayoutData( + 1, -1, new Margins(0))); + + TextArea trRight = new TextArea(); + trRight.setValue(tabResource.getRight()); + trRight.setReadOnly(true); + FieldLabel trRightLabel = new FieldLabel(trRight, msgs.rightLabel()); + configurationFieldSetLayout.add(trRightLabel, new VerticalLayoutData( + 1, -1, new Margins(0))); + + DateField trValidFromField = new DateField(); + trValidFromField.setReadOnly(true); + FieldLabel trValidFromLabel=new FieldLabel(trValidFromField, msgs.validFromLabel()); + trValidFromField.clear(); + if (tabResource.getValidFrom() == null + || tabResource.getValidFrom().isEmpty()) { + Log.debug("ValidFrom null or empty"); + } else { + Date vFrom; + try { + vFrom = sdf.parse(tabResource.getValidFrom()); + trValidFromField.setValue(vFrom); + } catch (IllegalArgumentException e) { + Log.error("Error Parsing Valid From for Tabular Resource: " + + tabResource); + e.printStackTrace(); + } + } + configurationFieldSetLayout.add(trValidFromLabel, + new VerticalLayoutData(1, -1, new Margins(0))); + + + DateField trValidUntilToField = new DateField(); + trValidUntilToField.setReadOnly(true); + FieldLabel trValidUntilToLabel= new FieldLabel(trValidUntilToField, + msgs.validUntilToLabel()); + trValidUntilToField.clear(); + if (tabResource.getValidUntilTo() == null + || tabResource.getValidUntilTo().isEmpty()) { + Log.debug("ValidUntilTo null or empty"); + } else { + Date vUntilTo; + try { + vUntilTo = sdf.parse(tabResource.getValidUntilTo()); + trValidUntilToField.setValue(vUntilTo); + } catch (IllegalArgumentException e) { + Log.error("Error Parsing Valid Until To for Tabular Resource: " + + tabResource); + e.printStackTrace(); + } + } + configurationFieldSetLayout.add(trValidUntilToLabel, + new VerticalLayoutData(1, -1, new Margins(0))); + + String licence=""; + for(LicenceData licenceData:licencesList){ + if(licenceData.getLicenceId().compareTo(tabResource.getLicence())==0){ + licence=licenceData.getLicenceName(); + break; + } + } + + TextField trLicence = new TextField(); + trLicence.setValue(licence); + trLicence.setReadOnly(true); + FieldLabel trLicenceLabel = new FieldLabel(trLicence, msgs.licencesLabel()); + configurationFieldSetLayout.add(trLicenceLabel, new VerticalLayoutData( + 1, -1, new Margins(0))); + + + TextField trOwner = new TextField(); + trOwner.setValue(tabResource.getOwnerLogin()); + trOwner.setReadOnly(true); + FieldLabel trOwnerLabel = new FieldLabel(trOwner, msgs.ownerLabel()); + configurationFieldSetLayout.add(trOwnerLabel, new VerticalLayoutData( + 1, -1, new Margins(0))); + + + + IconButton trBtnShare = new IconButton(); + trBtnShare.setIcon(ResourceBundleTDOpen.INSTANCE.share()); + FieldLabel trShareLabel = new FieldLabel(trBtnShare, msgs.shareLabel()); + ArrayList contacts = tabResource.getContacts(); + if (contacts != null && contacts.size() > 0) { + trShareLabel.setVisible(true); + } else { + trShareLabel.setVisible(false); + } + configurationFieldSetLayout.add(trShareLabel, new VerticalLayoutData( + -1, -1, new Margins(0))); + + + CheckBox trValidField = new CheckBox(); + trValidField.setValue(tabResource.isValid()); + trValidField.setReadOnly(true); + FieldLabel trValidLabel=new FieldLabel(trValidField, msgs.validLabel()); + configurationFieldSetLayout.add(trValidLabel, new VerticalLayoutData( + -1, -1, new Margins(0))); + + + CheckBox trFinalizedField = new CheckBox(); + trFinalizedField.setValue(tabResource.isFinalized()); + trFinalizedField.setReadOnly(true); + FieldLabel trFinalizedLabel=new FieldLabel(trFinalizedField, msgs.finalizedLabel()); + configurationFieldSetLayout.add(trFinalizedLabel, new VerticalLayoutData( + -1, -1, new Margins(0))); + + add(configurationFieldSet, new MarginData(0)); + + } + + protected void retrieveLicencesList() { + TDGWTServiceAsync.INSTANCE + .getLicences(new AsyncCallback>() { + + public void onFailure(Throwable caught) { + if (caught instanceof TDGWTSessionExpiredException) { + eventBus.fireEvent(new SessionExpiredEvent( + SessionExpiredType.EXPIREDONSERVER)); + } else { + Log.error("Error retrieving licences:" + + caught.getLocalizedMessage()); + UtilsGXT3.alert("Error", + "Error retrieving licences."); + } + + } + + public void onSuccess(ArrayList result) { + Log.trace("loaded " + result.size() + " LicenceData"); + licencesList = result; + create(); + + } + + }); + + } + + +} diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages.java b/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages.java new file mode 100644 index 0000000..4a065f0 --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages.java @@ -0,0 +1,129 @@ +package org.gcube.portlets.user.td.openwidget.client; + +import com.google.gwt.i18n.client.Messages; + +/** + * + * @author giancarlo + * email: g.panichi@isti.cnr.it + * + */ +public interface TabResourcesInfoDialogPropertiesMessages extends Messages { + + @DefaultMessage("Tabular Resource Info") + String tabResourceInfoDialogHeadingText(); + + @DefaultMessage("Detail") + String tabResourceDetailFieldSet(); + + // + @DefaultMessage("Name") + String nameLabel(); + + @DefaultMessage("Lock") + String lockLabel(); + + @DefaultMessage("Name of tabular resource") + String nameLabelToolTip(); + + @DefaultMessage("Description") + String descriptionLabel(); + + @DefaultMessage("Description of tabular resource") + String descriptionLabelToolTip(); + + @DefaultMessage("Type") + String typeLabel(); + + @DefaultMessage("Type of tabular resource") + String typeLabelToolTip(); + + @DefaultMessage("Agency") + String agencyLabel(); + + @DefaultMessage("Agency") + String agencyLabelToolTip(); + + @DefaultMessage("Creation Date") + String dateLabel(); + + @DefaultMessage("Creation Date") + String dateLabelToolTip(); + + @DefaultMessage("Table Type") + String tableTypeNameLabel(); + + @DefaultMessage("Table Type") + String tableTypeNameLabelToolTip(); + + @DefaultMessage("Rights") + String rightLabel(); + + @DefaultMessage("Rights") + String rightLabelToolTip(); + + @DefaultMessage("Valid From") + String validFromLabel(); + + @DefaultMessage("Valid From") + String validFromLabelToolTip(); + + @DefaultMessage("Valid Until To") + String validUntilToLabel(); + + @DefaultMessage("Valid Until To") + String validUntilToLabelToolTip(); + + @DefaultMessage("Licence") + String licencesLabel(); + + @DefaultMessage("Licence") + String licencesLabelToolTip(); + + @DefaultMessage("Owner") + String ownerLabel(); + + @DefaultMessage("Owner") + String ownerLabelToolTip(); + + @DefaultMessage("Share") + String shareLabel(); + + @DefaultMessage("Share") + String shareLabelToolTip(); + + @DefaultMessage("Valid") + String validLabel(); + + @DefaultMessage("Valid") + String validLabelToolTip(); + + @DefaultMessage("Final") + String finalizedLabel(); + + @DefaultMessage("Final") + String finalizedLabelToolTip(); + + @DefaultMessage("Save") + String saveButton(); + + @DefaultMessage("Save") + String saveButtonToolTip(); + + @DefaultMessage("Validations") + String validationsButton(); + + @DefaultMessage("Validations") + String validationsButtonToolTip(); + + @DefaultMessage("Resources") + String resourcesButton(); + + @DefaultMessage("Resources") + String resourcesButtonToolTip(); + + + + + +} \ No newline at end of file diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesSelectionPanel.java b/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesSelectionPanel.java index 3da9342..3854c80 100644 --- a/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesSelectionPanel.java +++ b/src/main/java/org/gcube/portlets/user/td/openwidget/client/TabResourcesSelectionPanel.java @@ -82,7 +82,6 @@ public class TabResourcesSelectionPanel extends ContentPanel implements } - private Grid grid; private ResourceBundle res; private Menu contextMenu; @@ -105,7 +104,7 @@ public class TabResourcesSelectionPanel extends ContentPanel implements } try { buildPanel(); - + } catch (Throwable e) { Log.debug("Error building panel:" + e.getMessage()); e.printStackTrace(); @@ -132,10 +131,10 @@ public class TabResourcesSelectionPanel extends ContentPanel implements IdentityValueProvider identity = new IdentityValueProvider(); final CheckBoxSelectionModel sm = new CheckBoxSelectionModel( identity); - + TabResourcesProperties properties = GWT .create(TabResourcesProperties.class); - + final ExtendedListStore store = new ExtendedListStore( properties.id()); @@ -160,37 +159,28 @@ public class TabResourcesSelectionPanel extends ContentPanel implements store.setEnableFilters(true); - - - ColumnConfig nameColumn = new ColumnConfig( properties.name(), 90, "Name"); - - + /* - nameColumn.setCell( - new AbstractCell() { + * nameColumn.setCell( new AbstractCell() { + * + * @Override public void render(Context context, String value, + * SafeHtmlBuilder sb) { TabResource + * tabResource=store.get(context.getIndex()); + * + * final NameTooltipTemplates nameToolTipTemplates = GWT + * .create(NameTooltipTemplates.class); String valueSafe=""; String + * descriptionSafe=""; + * + * if(value!=null){ valueSafe=SafeHtmlUtils.htmlEscape(value); } + * if(tabResource!=null && tabResource.getAgency()!=null){ + * descriptionSafe=SafeHtmlUtils.htmlEscape(tabResource.getAgency()); } + * sb.append(nameToolTipTemplates.format(valueSafe, descriptionSafe)); + * + * } }); + */ - @Override - public void render(Context context, String value, SafeHtmlBuilder sb) { - TabResource tabResource=store.get(context.getIndex()); - - final NameTooltipTemplates nameToolTipTemplates = GWT - .create(NameTooltipTemplates.class); - String valueSafe=""; - String descriptionSafe=""; - - if(value!=null){ - valueSafe=SafeHtmlUtils.htmlEscape(value); - } - if(tabResource!=null && tabResource.getAgency()!=null){ - descriptionSafe=SafeHtmlUtils.htmlEscape(tabResource.getAgency()); - } - sb.append(nameToolTipTemplates.format(valueSafe, descriptionSafe)); - - } - });*/ - ColumnConfig typeColumn = new ColumnConfig( properties.tabResourceType(), 30, "Type"); ColumnConfig tableTypeNameColumn = new ColumnConfig( @@ -217,14 +207,14 @@ public class TabResourcesSelectionPanel extends ContentPanel implements } else { sb.appendHtmlConstant("true"); + + ResourceBundleTDOpen.INSTANCE.lockOpen() + .getSafeUri().asString() + "' alt='true'>"); } } }); - - List> columns=new ArrayList>(); + + List> columns = new ArrayList>(); columns.add(nameColumn); columns.add(typeColumn); columns.add(tableTypeNameColumn); @@ -232,11 +222,9 @@ public class TabResourcesSelectionPanel extends ContentPanel implements columns.add(ownerColumn); columns.add(agencyColumn); columns.add(dateColumn); - + ColumnModel cm = new ColumnModel(columns); - - RpcProxy> proxy = new RpcProxy>() { public void load(ListLoadConfig loadConfig, @@ -262,9 +250,6 @@ public class TabResourcesSelectionPanel extends ContentPanel implements }); } }; - - - sm.setSelectionMode(SelectionMode.SINGLE); grid.setLoader(loader); @@ -337,6 +322,71 @@ public class TabResourcesSelectionPanel extends ContentPanel implements }); contextMenu.add(deleteTRItem); + MenuItem infoItem = new MenuItem(); + infoItem.setText("Info"); + infoItem.setIcon(ResourceBundleTDOpen.INSTANCE.information()); + infoItem.addSelectionHandler(new SelectionHandler() { + + @Override + public void onSelection(SelectionEvent event) { + if (grid != null) { + TabResource tabResource = getSelectedItem(); + requestInfo(tabResource); + } + + } + }); + + contextMenu.add(infoItem); + + } + + protected void openInfoDialog(TabResource tabResource) { + final TabResourceInfoDialog tabResourceInfoDialog = new TabResourceInfoDialog( + tabResource, parent.getEventBus()); + tabResourceInfoDialog.show(); + } + + protected void requestInfo(TabResource tabResource) { + if(tabResource.isLocked()){ + UtilsGXT3.alert("Attention", "Tabular Resource is locked no info available!"); + return; + } + + TDGWTServiceAsync.INSTANCE.getTabResourceInformation( + tabResource.getTrId(), new AsyncCallback() { + + public void onSuccess(TabResource result) { + Log.info("Retrived TR: " + result.getTrId()); + openInfoDialog(result); + } + + public void onFailure(Throwable caught) { + if (caught instanceof TDGWTSessionExpiredException) { + parent.getEventBus() + .fireEvent( + new SessionExpiredEvent( + SessionExpiredType.EXPIREDONSERVER)); + } else { + if (caught instanceof TDGWTIsLockedException) { + Log.error("Tabular Resource is Locked: " + + caught.getLocalizedMessage()); + parent.showErrorAndHide("Error", + caught.getLocalizedMessage(), "", caught); + + + } else { + Log.error("Error: " + + caught.getLocalizedMessage()); + parent.showErrorAndHide("Error", + caught.getLocalizedMessage(), "", caught); + + } + + } + } + + }); } protected boolean select(TabResource item, String searchTerm) { @@ -377,9 +427,8 @@ public class TabResourcesSelectionPanel extends ContentPanel implements } else { Log.error("Error retrieving tabular resource: " + caught.getLocalizedMessage()); - parent.showErrorAndHide( - "Error", - caught.getLocalizedMessage(),"", caught); + parent.showErrorAndHide("Error", + caught.getLocalizedMessage(), "", caught); } callback.onFailure(caught); } @@ -389,9 +438,9 @@ public class TabResourcesSelectionPanel extends ContentPanel implements + " TabularResources"); ArrayList avaibles = new ArrayList(); for (TabResource tResource : result) { - //if (!tResource.isLocked()) { + // if (!tResource.isLocked()) { avaibles.add(tResource); - //} + // } } /* @@ -486,7 +535,7 @@ public class TabResourcesSelectionPanel extends ContentPanel implements Log.error("Error on delete TabResource: " + caught.getLocalizedMessage()); UtilsGXT3.alert("Error", - caught.getLocalizedMessage()); + caught.getLocalizedMessage()); } } } diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/DefaultAppearance.java b/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/DefaultAppearance.java new file mode 100644 index 0000000..bdd9878 --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/DefaultAppearance.java @@ -0,0 +1,75 @@ +package org.gcube.portlets.user.td.openwidget.client.custom; + + +import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.Element; +import com.google.gwt.resources.client.ClientBundle; +import com.google.gwt.resources.client.CssResource; +import com.google.gwt.resources.client.ImageResource; +import com.google.gwt.safehtml.shared.SafeHtml; +import com.google.gwt.safehtml.shared.SafeHtmlBuilder; +import com.google.gwt.user.client.ui.Image; +import com.sencha.gxt.core.client.XTemplates; +import com.sencha.gxt.core.client.dom.XElement; + +/** + * + * @author "Giancarlo Panichi" + * g.panichi@isti.cnr.it + * + */ +public class DefaultAppearance implements IconButtonAppearance { + + public interface Template extends XTemplates { + @XTemplate(source = "IconButton.html") + SafeHtml template(IconButtonStyle style); + } + + public interface IconButtonStyle extends CssResource { + @ClassName("iconButton") + public String getIconButton(); + + @ClassName("iconButtonImage") + public String getIconButtonImage(); + + @ClassName("iconButtonRef") + public String getIconButtonRef(); + + } + + private final IconButtonStyle style; + private final Template template; + + public interface IconButtonResources extends ClientBundle { + public static final IconButtonResources INSTANCE = GWT.create(IconButtonResources.class); + + @Source("IconButtonStyle.css") + IconButtonStyle style(); + } + + public DefaultAppearance() { + this(IconButtonResources.INSTANCE); + } + + public DefaultAppearance(IconButtonResources resources) { + this.style = resources.style(); + this.style.ensureInjected(); + + this.template = GWT.create(Template.class); + } + + + + public void onUpdateIcon(XElement parent, ImageResource icon) { + XElement element = parent.selectNode("." + style.getIconButtonImage()); + Image image=new Image(icon); + Element img=image.getElement(); + img.setClassName(style.getIconButtonRef()); + element.appendChild(img); + + } + + public void render(SafeHtmlBuilder sb) { + sb.append(template.template(style)); + } +} \ No newline at end of file diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButton.html b/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButton.html new file mode 100644 index 0000000..9b36b96 --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButton.html @@ -0,0 +1,4 @@ + +
+
+
\ No newline at end of file diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButton.java b/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButton.java new file mode 100644 index 0000000..531c53c --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButton.java @@ -0,0 +1,50 @@ +package org.gcube.portlets.user.td.openwidget.client.custom; + + +import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.Element; +import com.google.gwt.event.dom.client.ClickEvent; +import com.google.gwt.event.dom.client.ClickHandler; +import com.google.gwt.event.dom.client.HasClickHandlers; +import com.google.gwt.event.shared.HandlerRegistration; +import com.google.gwt.resources.client.ImageResource; +import com.google.gwt.safehtml.shared.SafeHtmlBuilder; +import com.google.gwt.user.client.Event; +import com.sencha.gxt.core.client.dom.XDOM; +import com.sencha.gxt.core.client.dom.XElement; +import com.sencha.gxt.widget.core.client.Component; + +/** + * + * @author "Giancarlo Panichi" + * g.panichi@isti.cnr.it + * + */ +public class IconButton extends Component implements HasClickHandlers { + + private IconButtonAppearance appearance; + + public IconButton() { + this((IconButtonAppearance) GWT.create(DefaultAppearance.class)); + } + + public IconButton(IconButtonAppearance appearance) { + this.appearance = appearance; + + SafeHtmlBuilder sb = new SafeHtmlBuilder(); + this.appearance.render(sb); + + XElement element=XDOM.create(sb.toSafeHtml()); + setElement((Element)element); + sinkEvents(Event.ONCLICK); + } + + public HandlerRegistration addClickHandler(ClickHandler handler) { + return addDomHandler(handler, ClickEvent.getType()); + } + + + public void setIcon(ImageResource icon) { + appearance.onUpdateIcon(getElement(), icon); + } +} diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButtonAppearance.java b/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButtonAppearance.java new file mode 100644 index 0000000..0ab89f9 --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButtonAppearance.java @@ -0,0 +1,16 @@ +package org.gcube.portlets.user.td.openwidget.client.custom; + +import com.google.gwt.resources.client.ImageResource; +import com.google.gwt.safehtml.shared.SafeHtmlBuilder; +import com.sencha.gxt.core.client.dom.XElement; + +/** + * + * @author "Giancarlo Panichi" + * g.panichi@isti.cnr.it + * + */ +public interface IconButtonAppearance { + void render(SafeHtmlBuilder sb); + void onUpdateIcon(XElement parent, ImageResource icon); +} diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButtonStyle.css b/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButtonStyle.css new file mode 100644 index 0000000..354f7dc --- /dev/null +++ b/src/main/java/org/gcube/portlets/user/td/openwidget/client/custom/IconButtonStyle.css @@ -0,0 +1,17 @@ +@CHARSET "UTF-8"; + +.iconButton { + border: none; + font-size: 12px; + margin: 0px; + padding: 0px; +} + +.iconButton .iconButtonImage { + vertical-align: center; +} + +.iconButtonRef { + vertical-align: center; + cursor: pointer; +} diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/ResourceBundleTDOpen.java b/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/ResourceBundleTDOpen.java index ac03cad..4231c31 100644 --- a/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/ResourceBundleTDOpen.java +++ b/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/ResourceBundleTDOpen.java @@ -3,6 +3,7 @@ package org.gcube.portlets.user.td.openwidget.client.resources; import com.google.gwt.core.client.GWT; import com.google.gwt.resources.client.ClientBundle; import com.google.gwt.resources.client.ImageResource; +import com.google.gwt.resources.client.ClientBundle.Source; /** * @@ -33,8 +34,17 @@ public interface ResourceBundleTDOpen extends ClientBundle { @Source("lock-open-green_32.png") ImageResource lockOpen32(); + @Source("page-white-share.png") + ImageResource share(); + @Source("page-white-share_32.png") + ImageResource share32(); + @Source("information.png") + ImageResource information(); + + @Source("information_32.png") + ImageResource information32(); } \ No newline at end of file diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/information.png b/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/information.png new file mode 100644 index 0000000000000000000000000000000000000000..fd2adeaeb60296fe841f3e988d059c5bc4e6bb03 GIT binary patch literal 695 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 IM6N<$f&zbvumAu6 literal 0 HcmV?d00001 diff --git a/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/page-white-share_32.png b/src/main/java/org/gcube/portlets/user/td/openwidget/client/resources/page-white-share_32.png new file mode 100644 index 0000000000000000000000000000000000000000..0080258004f7228dd73f4f2f6c3c9f72c545c9b9 GIT binary patch literal 1782 zcmVPx#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2i*)3 z3jzX-`8x{$00wqRL_t(o!>yNTY+P3r$A9;2GvnDj@$T4;WjBr!2NgAr6Q`sEsM(?x znzkU?kWW+;K`9D|3JF0L5J;e?WhtLPr7Trb(Gb$81-D8oL&0FM8E67ZayeC&giHWPDgXDlzxS;4cs!Ne z-Q7olSzsMd^+74fm=FTTagb7GF2`{)bJ=UzbE#B{;^JZep=p`~Dh37yUTJJ>{KCx4 zOetUjS}0ya>yA_uZTWRDd^!Ev0-?{YxXDKrcN!!YoAy)2Mh0+m1%aIFeJ zw(~SGvv-|VOB&2_z_WNImYdHBATc+?`F}h`xa~Oc*gWMMchL0tuTxaD0o%4S&a)$< zsw$C4_okGd{<$!(U|R?M_mTBqaqSgJI6LKF8j}N2&SnPFMhuc9h`ayfAtLUM3ThVIMK*7E{|_f8q&N-lQ12b)f^a08ArhH zCBL8ux5tO7Y21C^gM74QH_2p@j+c+2YuD?*QfJG7SqaGdVY5lI?nl#ggb-L( z5})6XOwJ=56Sp_GsQ4_dj4HZ255wcdaC=cyZABg|OTx`}?&J7R9;A3}HHGEX2%!+0 znxeh+IJe&S7%p#c*&2|tOfJ9EN!MSWV0L^2Z}B?ncizt}+jrj>fb$bYoYudKJKT!V z_9B`hFg>MQE`NwOJJxcjNs``FCJm_+?a%y}?vuYIX_}-E*q8cw=Z#ZryZ2FcKXhRE z8k03{1}1w3=fVe`yug?DZszaT{K(lcM9RiAN@=OpIM;fPqJYjLdpDve*CQ}F66O!z zZb4B5t~@`}(^JgP$8jXYWAl9HcO6vLZ$SuA53B*&0n{u21ynw~W7es<`%|CW$eB4m zi6mHxpM(gIND6u`OKzztWN2`VH@dEH`?fNag;a#wPT)#T&~nc{Zf*JqWmUEGzTLxI zG(p^S@E4X)zhxH(4<7s#-~mP!rQrFm)j$5n*@j(uAWw!L$j@6@1qD8} z{>YwTW(RwP+f0zBNE}O&G$qNn#7;_dAt}wbc;c6B>}$M=GTD7Sd{vv7nHopaj7&8& z41<8*OLXEtR5fg08G!9LGa@?5J(cI=OGmqzxpW1WJx@T76Y|F?3`Fs%le~HQ9Cy`@ z@!6`kKru2}53Q{w?s&M+{t}7U9JZAtnTXMK>I9)pEtEIxTv-LbIX(8n4|N}{*#G;p zN7hf3^1|t1I@&KXea%8j2d_(|p(emr?kM4|JN6Lo53#=Ko0%6`xcHm7pLA z#SwuWTtn|zoTndae*S^meAWLq0D#!U5Y5H?Yzg+!_WCddZh^EVmMKXlB(^CLj-@Z}RT=Xjv*JYQ`sBVwi~tSZE(X-KaEjsv#E@Wm^b z{b7Fav0fr$SFxqAmm}eh1rqkI8iAc4()T)=;UW@fqfPuJj!_Hg)1jo*0sExl(nVx3wF;I^Cmahj_G2!LY)|6U5@~07*qoM6N<$f)K-0ng9R* literal 0 HcmV?d00001 diff --git a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/Messages.properties b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/Messages.properties deleted file mode 100644 index c222555..0000000 --- a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/Messages.properties +++ /dev/null @@ -1,2 +0,0 @@ -sendButton = Send -nameField = Enter your name \ No newline at end of file diff --git a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/Messages_fr.properties b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/Messages_fr.properties deleted file mode 100644 index b4a7627..0000000 --- a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/Messages_fr.properties +++ /dev/null @@ -1,2 +0,0 @@ -sendButton = Envoyer -nameField = Entrez votre nom \ No newline at end of file diff --git a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages.properties b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages.properties new file mode 100644 index 0000000..b8f4057 --- /dev/null +++ b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages.properties @@ -0,0 +1,37 @@ +tabResourceInfoDialogHeadingText = Tabular Resource Info +tabResourceDetailFieldSet = Detail +nameLabel = Name +lockLabel = Lock +nameLabelToolTip = Name of tabular resource +descriptionLabel = Description +descriptionLabelToolTip = Description of tabular resource +typeLabel = Type +typeLabelToolTip = Type of tabular resource +agencyLabel = Agency +agencyLabelToolTip = Agency +dateLabel = Creation Date +dateLabelToolTip = Creation Date +tableTypeNameLabel = Table Type +tableTypeNameLabelToolTip = Table Type +rightLabel = Rights +rightLabelToolTip = Rights +validFromLabel = Valid From +validFromLabelToolTip = Valid From +validUntilToLabel = Valid Until To +validUntilToLabelToolTip = Valid Until To +licencesLabel = Licence +licencesLabelToolTip = Licence +ownerLabel = Owner +ownerLabelToolTip = Owner +shareLabel = Share +shareLabelToolTip = Share +validLabel = Valid +validLabelToolTip = Valid +finalizedLabel = Final +finalizedLabelToolTip = Final +saveButton = Save +saveButtonToolTip = Save +validationsButton = Validations +validationsButtonToolTip = Validations +resourcesButton = Resources +resourcesButtonToolTip = Resources \ No newline at end of file diff --git a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages_es.properties b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages_es.properties new file mode 100644 index 0000000..af3c871 --- /dev/null +++ b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages_es.properties @@ -0,0 +1,37 @@ +tabResourceInfoDialogHeadingText = Tabular Resource Información +tabResourceDetailFieldSet = Detalle +nameLabel = Nombre +lockLabel = Lock +nameLabelToolTip = Nombre de la tabular resource +descriptionLabel = Descripción +descriptionLabelToolTip = Descripción de la tabular resource +typeLabel = Tipo +typeLabelToolTip = Tipo de tabular resource +agencyLabel = Agencia +agencyLabelToolTip = Agencia +dateLabel = Fecha Creacion +dateLabelToolTip = Fecha Creacion +tableTypeNameLabel = Tipo Tabla +tableTypeNameLabelToolTip = Tipo Tabla +rightLabel = Derechos +rightLabelToolTip = Derechos +validFromLabel = Válida Desde +validFromLabelToolTip = Válida Desde +validUntilToLabel = Válido Hasta +validUntilToLabelToolTip = Válido Hasta +licencesLabel = Licencia +licencesLabelToolTip = Licencia +ownerLabel = Propietario +ownerLabelToolTip = Propietario +shareLabel = Cuota +shareLabelToolTip = Cuota +validLabel = Válido +validLabelToolTip = Válido +finalizedLabel = Final +finalizedLabelToolTip = Final +saveButton = Guardar +saveButtonToolTip = Guardar +validationsButton = Validaciones +validationsButtonToolTip = Validaciones +resourcesButton = Recursos +resourcesButtonToolTip = Recursos \ No newline at end of file diff --git a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages_it.properties b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages_it.properties new file mode 100644 index 0000000..f53db87 --- /dev/null +++ b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/TabResourcesInfoDialogPropertiesMessages_it.properties @@ -0,0 +1,37 @@ +tabResourceInfoDialogHeadingText = Tabular Resource Informazioni +tabResourceDetailFieldSet = Dettagli +nameLabel = Nome +lockLabel = Lock +nameLabelToolTip = Nome della tabular resource +descriptionLabel = Descrizione +descriptionLabelToolTip = Descrizione della tabular resource +typeLabel = Tipo +typeLabelToolTip = Tipo di tabular resource +agencyLabel = Agenzia +agencyLabelToolTip = Agenzia +dateLabel = Data Creazione +dateLabelToolTip = Data Creazione +tableTypeNameLabel = Tipo Tabella +tableTypeNameLabelToolTip = Tipo Tabella +rightLabel = Diritti +rightLabelToolTip = Diritti +validFromLabel = Valida Da +validFromLabelToolTip = Valida Da +validUntilToLabel = Valida Fino Al +validUntilToLabelToolTip = Valida Fino Al +licencesLabel = Licenza +licencesLabelToolTip = Licenza +ownerLabel = Proprietario +ownerLabelToolTip = Proprietario +shareLabel = Condivisione +shareLabelToolTip = Condivisione +validLabel = Valida +validLabelToolTip = Valida +finalizedLabel = Finale +finalizedLabelToolTip = Finale +saveButton = Salva +saveButtonToolTip = Salva +validationsButton = Validazioni +validationsButtonToolTip = Validazioni +resourcesButton = Risorse +resourcesButtonToolTip = Risorse \ No newline at end of file diff --git a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/custom/IconButton.html b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/custom/IconButton.html new file mode 100644 index 0000000..9b36b96 --- /dev/null +++ b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/custom/IconButton.html @@ -0,0 +1,4 @@ + +
+
+
\ No newline at end of file diff --git a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/custom/IconButtonStyle.css b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/custom/IconButtonStyle.css new file mode 100644 index 0000000..354f7dc --- /dev/null +++ b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/custom/IconButtonStyle.css @@ -0,0 +1,17 @@ +@CHARSET "UTF-8"; + +.iconButton { + border: none; + font-size: 12px; + margin: 0px; + padding: 0px; +} + +.iconButton .iconButtonImage { + vertical-align: center; +} + +.iconButtonRef { + vertical-align: center; + cursor: pointer; +} diff --git a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/information.png b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/information.png new file mode 100644 index 0000000000000000000000000000000000000000..fd2adeaeb60296fe841f3e988d059c5bc4e6bb03 GIT binary patch literal 695 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 IM6N<$f&zbvumAu6 literal 0 HcmV?d00001 diff --git a/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/page-white-share_32.png b/src/main/resources/org/gcube/portlets/user/td/openwidget/client/resources/page-white-share_32.png new file mode 100644 index 0000000000000000000000000000000000000000..0080258004f7228dd73f4f2f6c3c9f72c545c9b9 GIT binary patch literal 1782 zcmVPx#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2i*)3 z3jzX-`8x{$00wqRL_t(o!>yNTY+P3r$A9;2GvnDj@$T4;WjBr!2NgAr6Q`sEsM(?x znzkU?kWW+;K`9D|3JF0L5J;e?WhtLPr7Trb(Gb$81-D8oL&0FM8E67ZayeC&giHWPDgXDlzxS;4cs!Ne z-Q7olSzsMd^+74fm=FTTagb7GF2`{)bJ=UzbE#B{;^JZep=p`~Dh37yUTJJ>{KCx4 zOetUjS}0ya>yA_uZTWRDd^!Ev0-?{YxXDKrcN!!YoAy)2Mh0+m1%aIFeJ zw(~SGvv-|VOB&2_z_WNImYdHBATc+?`F}h`xa~Oc*gWMMchL0tuTxaD0o%4S&a)$< zsw$C4_okGd{<$!(U|R?M_mTBqaqSgJI6LKF8j}N2&SnPFMhuc9h`ayfAtLUM3ThVIMK*7E{|_f8q&N-lQ12b)f^a08ArhH zCBL8ux5tO7Y21C^gM74QH_2p@j+c+2YuD?*QfJG7SqaGdVY5lI?nl#ggb-L( z5})6XOwJ=56Sp_GsQ4_dj4HZ255wcdaC=cyZABg|OTx`}?&J7R9;A3}HHGEX2%!+0 znxeh+IJe&S7%p#c*&2|tOfJ9EN!MSWV0L^2Z}B?ncizt}+jrj>fb$bYoYudKJKT!V z_9B`hFg>MQE`NwOJJxcjNs``FCJm_+?a%y}?vuYIX_}-E*q8cw=Z#ZryZ2FcKXhRE z8k03{1}1w3=fVe`yug?DZszaT{K(lcM9RiAN@=OpIM;fPqJYjLdpDve*CQ}F66O!z zZb4B5t~@`}(^JgP$8jXYWAl9HcO6vLZ$SuA53B*&0n{u21ynw~W7es<`%|CW$eB4m zi6mHxpM(gIND6u`OKzztWN2`VH@dEH`?fNag;a#wPT)#T&~nc{Zf*JqWmUEGzTLxI zG(p^S@E4X)zhxH(4<7s#-~mP!rQrFm)j$5n*@j(uAWw!L$j@6@1qD8} z{>YwTW(RwP+f0zBNE}O&G$qNn#7;_dAt}wbc;c6B>}$M=GTD7Sd{vv7nHopaj7&8& z41<8*OLXEtR5fg08G!9LGa@?5J(cI=OGmqzxpW1WJx@T76Y|F?3`Fs%le~HQ9Cy`@ z@!6`kKru2}53Q{w?s&M+{t}7U9JZAtnTXMK>I9)pEtEIxTv-LbIX(8n4|N}{*#G;p zN7hf3^1|t1I@&KXea%8j2d_(|p(emr?kM4|JN6Lo53#=Ko0%6`xcHm7pLA z#SwuWTtn|zoTndae*S^meAWLq0D#!U5Y5H?Yzg+!_WCddZh^EVmMKXlB(^CLj-@Z}RT=Xjv*JYQ`sBVwi~tSZE(X-KaEjsv#E@Wm^b z{b7Fav0fr$SFxqAmm}eh1rqkI8iAc4()T)=;UW@fqfPuJj!_Hg)1jo*0sExl(nVx3wF;I^Cmahj_G2!LY)|6U5@~07*qoM6N<$f)K-0ng9R* literal 0 HcmV?d00001