diff --git a/doc/release-notes/6634-primefaces-8.md b/doc/release-notes/6634-primefaces-8.md new file mode 100644 index 00000000000..aad8744609f --- /dev/null +++ b/doc/release-notes/6634-primefaces-8.md @@ -0,0 +1,3 @@ +##Primefaces 8 + +Primefaces, the open source UI framework upon which the Dataverse front end is built, has been updated to the most recent version. This provides security updates and bug fixes and will also allow Dataverse developers to take advantage of new features and enhancements. \ No newline at end of file diff --git a/doc/release-notes/6650-export-import-mismatch b/doc/release-notes/6650-export-import-mismatch deleted file mode 100644 index 0ab2999a603..00000000000 --- a/doc/release-notes/6650-export-import-mismatch +++ /dev/null @@ -1,3 +0,0 @@ -Run ReExportall to update JSON Exports - -http://guides.dataverse.org/en/4.19/admin/metadataexport.html?highlight=export#batch-exports-through-the-api \ No newline at end of file diff --git a/pom.xml b/pom.xml index 68406e933e8..f5b38618d62 100644 --- a/pom.xml +++ b/pom.xml @@ -303,7 +303,7 @@ org.primefaces primefaces - 7.0 + 8.0 org.primefaces.themes diff --git a/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java b/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java index 0ece7e9c4c2..d8b1a8017b1 100644 --- a/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java +++ b/src/main/java/edu/harvard/iq/dataverse/DatasetPage.java @@ -1,7 +1,6 @@ package edu.harvard.iq.dataverse; import edu.harvard.iq.dataverse.provenance.ProvPopupFragmentBean; -import edu.harvard.iq.dataverse.PackagePopupFragmentBean; import edu.harvard.iq.dataverse.api.AbstractApiBean; import edu.harvard.iq.dataverse.authorization.AuthenticationServiceBean; import edu.harvard.iq.dataverse.authorization.Permission; @@ -79,7 +78,7 @@ import javax.inject.Named; import org.primefaces.event.FileUploadEvent; -import org.primefaces.model.UploadedFile; +import org.primefaces.model.file.UploadedFile; import javax.validation.ConstraintViolation; import org.apache.commons.httpclient.HttpClient; //import org.primefaces.context.RequestContext; @@ -88,11 +87,9 @@ import javax.faces.model.SelectItem; import java.util.logging.Level; import edu.harvard.iq.dataverse.datasetutility.WorldMapPermissionHelper; -import edu.harvard.iq.dataverse.engine.command.DataverseRequest; import edu.harvard.iq.dataverse.engine.command.exception.IllegalCommandException; import edu.harvard.iq.dataverse.engine.command.impl.AbstractSubmitToArchiveCommand; import edu.harvard.iq.dataverse.engine.command.impl.CreateNewDatasetCommand; -import edu.harvard.iq.dataverse.engine.command.impl.DeleteDataFileCommand; import edu.harvard.iq.dataverse.engine.command.impl.GetLatestPublishedDatasetVersionCommand; import edu.harvard.iq.dataverse.engine.command.impl.RequestRsyncScriptCommand; import edu.harvard.iq.dataverse.engine.command.impl.PublishDatasetResult; @@ -121,8 +118,6 @@ import org.primefaces.event.TabChangeEvent; import org.primefaces.event.data.PageEvent; -import edu.harvard.iq.dataverse.makedatacount.MakeDataCountUtil; -import edu.harvard.iq.dataverse.search.FacetCategory; import edu.harvard.iq.dataverse.search.FacetLabel; import edu.harvard.iq.dataverse.search.SearchConstants; import edu.harvard.iq.dataverse.search.SearchFields; @@ -130,10 +125,6 @@ import edu.harvard.iq.dataverse.search.SearchUtil; import edu.harvard.iq.dataverse.search.SolrClientService; import java.util.Comparator; -import java.util.EnumSet; -import java.util.TimeZone; -import javax.servlet.http.HttpServletRequest; -import org.apache.solr.client.solrj.SolrClient; import org.apache.solr.client.solrj.SolrQuery; import org.apache.solr.client.solrj.impl.HttpSolrClient; import org.apache.solr.client.solrj.response.FacetField; @@ -4541,7 +4532,7 @@ public void handleLabelsFileUpload(FileUploadEvent event) { InputStream uploadStream = null; try { - uploadStream = file.getInputstream(); + uploadStream = file.getInputStream(); } catch (IOException ioex) { logger.log(Level.WARNING, ioex, ()->"the file "+file.getFileName()+" failed to upload!"); List args = Arrays.asList(file.getFileName()); diff --git a/src/main/java/edu/harvard/iq/dataverse/DatasetWidgetsPage.java b/src/main/java/edu/harvard/iq/dataverse/DatasetWidgetsPage.java index 353c7e8739b..039ad4f6f27 100644 --- a/src/main/java/edu/harvard/iq/dataverse/DatasetWidgetsPage.java +++ b/src/main/java/edu/harvard/iq/dataverse/DatasetWidgetsPage.java @@ -19,7 +19,7 @@ import javax.inject.Inject; import javax.inject.Named; import org.primefaces.event.FileUploadEvent; -import org.primefaces.model.UploadedFile; +import org.primefaces.model.file.UploadedFile; @ViewScoped @Named("DatasetWidgetsPage") @@ -132,7 +132,7 @@ public void handleImageFileUpload(FileUploadEvent event) { logger.fine("handleImageFileUpload clicked"); UploadedFile uploadedFile = event.getFile(); try { - updateDatasetThumbnailCommand = new UpdateDatasetThumbnailCommand(dvRequestService.getDataverseRequest(), dataset, UpdateDatasetThumbnailCommand.UserIntent.setNonDatasetFileAsThumbnail, null, uploadedFile.getInputstream()); + updateDatasetThumbnailCommand = new UpdateDatasetThumbnailCommand(dvRequestService.getDataverseRequest(), dataset, UpdateDatasetThumbnailCommand.UserIntent.setNonDatasetFileAsThumbnail, null, uploadedFile.getInputStream()); } catch (IOException ex) { String error = "Unexpected error while uploading file."; logger.warning("Problem uploading dataset thumbnail to dataset id " + dataset.getId() + ". " + error + " . Exception: " + ex); @@ -141,7 +141,7 @@ public void handleImageFileUpload(FileUploadEvent event) { } File file = null; try { - file = FileUtil.inputStreamToFile(uploadedFile.getInputstream()); + file = FileUtil.inputStreamToFile(uploadedFile.getInputStream()); } catch (IOException ex) { Logger.getLogger(DatasetWidgetsPage.class.getName()).log(Level.SEVERE, null, ex); return; diff --git a/src/main/java/edu/harvard/iq/dataverse/EditDatafilesPage.java b/src/main/java/edu/harvard/iq/dataverse/EditDatafilesPage.java index 8fe7651fe85..1b54b05cc45 100644 --- a/src/main/java/edu/harvard/iq/dataverse/EditDatafilesPage.java +++ b/src/main/java/edu/harvard/iq/dataverse/EditDatafilesPage.java @@ -22,7 +22,6 @@ import edu.harvard.iq.dataverse.engine.command.CommandContext; import edu.harvard.iq.dataverse.engine.command.exception.CommandException; import edu.harvard.iq.dataverse.engine.command.exception.IllegalCommandException; -import edu.harvard.iq.dataverse.engine.command.impl.DeleteDataFileCommand; import edu.harvard.iq.dataverse.engine.command.impl.RequestRsyncScriptCommand; import edu.harvard.iq.dataverse.engine.command.impl.UpdateDatasetThumbnailCommand; import edu.harvard.iq.dataverse.engine.command.impl.UpdateDatasetVersionCommand; @@ -48,9 +47,7 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; -import java.sql.Timestamp; import java.util.ArrayList; -import java.util.Date; import java.util.HashMap; import java.util.Iterator; import java.util.List; @@ -65,7 +62,7 @@ import javax.inject.Inject; import javax.inject.Named; import org.primefaces.event.FileUploadEvent; -import org.primefaces.model.UploadedFile; +import org.primefaces.model.file.UploadedFile; import javax.json.Json; import javax.json.JsonObject; import javax.json.JsonArray; @@ -75,25 +72,14 @@ import org.apache.commons.httpclient.methods.GetMethod; import java.text.DateFormat; import java.util.Arrays; -import java.util.HashSet; -import java.util.ResourceBundle; import java.util.Set; import java.util.logging.Level; -import javax.faces.component.UIComponent; -import javax.faces.component.UIInput; import javax.faces.event.AjaxBehaviorEvent; import javax.faces.event.FacesEvent; -import javax.faces.event.ValueChangeEvent; -import javax.faces.validator.ValidatorException; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletResponse; -import javax.validation.ConstraintViolation; -import javax.validation.Validation; -import javax.validation.Validator; -import javax.validation.ValidatorFactory; import org.apache.commons.lang.StringUtils; import org.primefaces.PrimeFaces; -//import org.primefaces.context.RequestContext; /** * @@ -1984,7 +1970,7 @@ public void handleFileUpload(FileUploadEvent event) throws IOException { */ if (isFileReplaceOperation()){ - handleReplaceFileUpload(event, uFile.getInputstream(), + handleReplaceFileUpload(event, uFile.getInputStream(), uFile.getFileName(), uFile.getContentType(), event, @@ -2007,7 +1993,7 @@ public void handleFileUpload(FileUploadEvent event) throws IOException { // Note: A single uploaded file may produce multiple datafiles - // for example, multiple files can be extracted from an uncompressed // zip file. - dFileList = FileUtil.createDataFiles(workingVersion, uFile.getInputstream(), uFile.getFileName(), uFile.getContentType(), null, null, systemConfig); + dFileList = FileUtil.createDataFiles(workingVersion, uFile.getInputStream(), uFile.getFileName(), uFile.getContentType(), null, null, systemConfig); } catch (IOException ioex) { logger.warning("Failed to process and/or save the file " + uFile.getFileName() + "; " + ioex.getMessage()); @@ -2865,7 +2851,7 @@ public void handleLabelsFileUpload(FileUploadEvent event) { InputStream uploadStream = null; try { - uploadStream = file.getInputstream(); + uploadStream = file.getInputStream(); } catch (IOException ioex) { logger.info("the file " + file.getFileName() + " failed to upload!"); List args = Arrays.asList(file.getFileName()); diff --git a/src/main/java/edu/harvard/iq/dataverse/LazyFileMetadataDataModel.java b/src/main/java/edu/harvard/iq/dataverse/LazyFileMetadataDataModel.java index 2ba05224c75..aaf87342417 100644 --- a/src/main/java/edu/harvard/iq/dataverse/LazyFileMetadataDataModel.java +++ b/src/main/java/edu/harvard/iq/dataverse/LazyFileMetadataDataModel.java @@ -5,10 +5,9 @@ */ package edu.harvard.iq.dataverse; -import java.util.ArrayList; import java.util.List; import java.util.Map; -import javax.ejb.EJB; +import org.primefaces.model.FilterMeta; import org.primefaces.model.LazyDataModel; import org.primefaces.model.SortOrder; @@ -29,7 +28,7 @@ public LazyFileMetadataDataModel(Long datasetVersionId, DataFileServiceBean file @Override public List load(int first, int pageSize, String sortField, - SortOrder sortOrder, Map filters) { + SortOrder sortOrder, Map filters) { List listFileMetadata = null; //fileServiceBean.findFileMetadataByDatasetVersionIdLazy(datasetVersionId, pageSize, sortField, sortField, first); //this.setRowCount(fileServiceBean.findCountByDatasetVersionId(datasetVersionId).intValue()); diff --git a/src/main/java/edu/harvard/iq/dataverse/ThemeWidgetFragment.java b/src/main/java/edu/harvard/iq/dataverse/ThemeWidgetFragment.java index 88084919acf..9f282b436db 100644 --- a/src/main/java/edu/harvard/iq/dataverse/ThemeWidgetFragment.java +++ b/src/main/java/edu/harvard/iq/dataverse/ThemeWidgetFragment.java @@ -5,12 +5,10 @@ */ package edu.harvard.iq.dataverse; -import edu.harvard.iq.dataverse.authorization.Permission; import edu.harvard.iq.dataverse.engine.command.Command; import edu.harvard.iq.dataverse.engine.command.impl.UpdateDataverseThemeCommand; import edu.harvard.iq.dataverse.util.BundleUtil; import edu.harvard.iq.dataverse.util.JsfHelper; -import static edu.harvard.iq.dataverse.util.JsfHelper.JH; import java.io.File; import java.io.IOException; import java.net.MalformedURLException; @@ -24,7 +22,6 @@ import javax.ejb.EJB; import javax.faces.application.FacesMessage; import javax.faces.component.UIComponent; -import javax.faces.component.UIInput; import javax.faces.component.html.HtmlInputText; import javax.faces.context.FacesContext; import javax.faces.validator.ValidatorException; @@ -37,7 +34,7 @@ //import org.primefaces.context.RequestContext; import org.primefaces.event.FileUploadEvent; -import org.primefaces.model.UploadedFile; +import org.primefaces.model.file.UploadedFile; /** * @@ -232,7 +229,7 @@ public void handleImageFooterFileUpload(FileUploadEvent event) { uploadedFileFooter.createNewFile(); } logger.finer("created file"); - Files.copy(uFile.getInputstream(), uploadedFileFooter.toPath(), StandardCopyOption.REPLACE_EXISTING); + Files.copy(uFile.getInputStream(), uploadedFileFooter.toPath(), StandardCopyOption.REPLACE_EXISTING); logger.finer("copied inputstream to file"); editDv.getDataverseTheme().setLogoFooter(uFile.getFileName()); @@ -259,7 +256,7 @@ public void handleImageFileUpload(FileUploadEvent event) { uploadedFile.createNewFile(); } logger.finer("created file"); - Files.copy(uFile.getInputstream(), uploadedFile.toPath(),StandardCopyOption.REPLACE_EXISTING); + Files.copy(uFile.getInputStream(), uploadedFile.toPath(),StandardCopyOption.REPLACE_EXISTING); logger.finer("copied inputstream to file"); editDv.getDataverseTheme().setLogo(uFile.getFileName()); diff --git a/src/main/java/edu/harvard/iq/dataverse/datasetutility/FileReplacePageHelper.java b/src/main/java/edu/harvard/iq/dataverse/datasetutility/FileReplacePageHelper.java index 24ba8b663bc..d79c4a48094 100644 --- a/src/main/java/edu/harvard/iq/dataverse/datasetutility/FileReplacePageHelper.java +++ b/src/main/java/edu/harvard/iq/dataverse/datasetutility/FileReplacePageHelper.java @@ -8,13 +8,9 @@ import edu.harvard.iq.dataverse.DataFile; import edu.harvard.iq.dataverse.Dataset; import edu.harvard.iq.dataverse.FileMetadata; -import java.io.IOException; import java.io.InputStream; import java.util.List; -import java.util.logging.Level; -import java.util.logging.Logger; -import org.primefaces.event.FileUploadEvent; -import org.primefaces.model.UploadedFile; + /** * Adding single file replace to the EditDatafilesPage. diff --git a/src/main/java/edu/harvard/iq/dataverse/mydata/MyDataFilterParams.java b/src/main/java/edu/harvard/iq/dataverse/mydata/MyDataFilterParams.java index b10a37aff5d..a1e94e01815 100644 --- a/src/main/java/edu/harvard/iq/dataverse/mydata/MyDataFilterParams.java +++ b/src/main/java/edu/harvard/iq/dataverse/mydata/MyDataFilterParams.java @@ -6,8 +6,6 @@ package edu.harvard.iq.dataverse.mydata; import edu.harvard.iq.dataverse.DvObject; -import static edu.harvard.iq.dataverse.DvObject.DATASET_DTYPE_STRING; -import static edu.harvard.iq.dataverse.DvObject.DATAVERSE_DTYPE_STRING; import edu.harvard.iq.dataverse.search.IndexServiceBean; import edu.harvard.iq.dataverse.authorization.DataverseRolePermissionHelper; import edu.harvard.iq.dataverse.authorization.users.AuthenticatedUser; @@ -18,14 +16,11 @@ import java.util.Arrays; import java.util.HashMap; import java.util.List; -import java.util.Map; import java.util.logging.Logger; import javax.json.Json; import javax.json.JsonArrayBuilder; import javax.json.JsonObjectBuilder; import org.apache.commons.lang.StringUtils; -import org.primefaces.json.JSONException; -import org.primefaces.json.JSONObject; /** * diff --git a/src/main/java/edu/harvard/iq/dataverse/provenance/ProvPopupFragmentBean.java b/src/main/java/edu/harvard/iq/dataverse/provenance/ProvPopupFragmentBean.java index cea26bc65db..a4b7cdf8d4e 100644 --- a/src/main/java/edu/harvard/iq/dataverse/provenance/ProvPopupFragmentBean.java +++ b/src/main/java/edu/harvard/iq/dataverse/provenance/ProvPopupFragmentBean.java @@ -10,11 +10,9 @@ import edu.harvard.iq.dataverse.FilePage; import edu.harvard.iq.dataverse.api.AbstractApiBean; import edu.harvard.iq.dataverse.engine.command.exception.CommandException; -import edu.harvard.iq.dataverse.engine.command.exception.IllegalCommandException; import java.io.IOException; import java.util.logging.Logger; import org.primefaces.event.FileUploadEvent; -import org.primefaces.model.UploadedFile; import edu.harvard.iq.dataverse.engine.command.impl.PersistProvJsonCommand; import edu.harvard.iq.dataverse.engine.command.impl.DeleteProvJsonCommand; import edu.harvard.iq.dataverse.engine.command.impl.GetProvJsonCommand; @@ -39,6 +37,7 @@ import javax.faces.context.ExternalContext; import javax.faces.context.FacesContext; import javax.json.JsonObject; +import org.primefaces.model.file.UploadedFile; /** * This bean contains functionality for the provenance json pop up @@ -92,7 +91,7 @@ public class ProvPopupFragmentBean extends AbstractApiBean implements java.io.Se public void handleFileUpload(FileUploadEvent event) throws IOException { jsonUploadedTempFile = event.getFile(); provJsonParsedEntities = new HashMap<>(); - provJsonState = IOUtils.toString(jsonUploadedTempFile.getInputstream()); + provJsonState = IOUtils.toString(jsonUploadedTempFile.getInputStream()); if(!provUtil.isProvValid(provJsonState)) { //if uploaded prov-json does not comply with schema @@ -214,7 +213,7 @@ public String stagePopupChanges(boolean saveInPopup) throws IOException{ popupDataFile.setProvEntityName(null); } if(null != jsonUploadedTempFile && "application/json".equalsIgnoreCase(jsonUploadedTempFile.getContentType())) { //delete and create again can both happen at once - stagingEntry.provJson = IOUtils.toString(jsonUploadedTempFile.getInputstream()); + stagingEntry.provJson = IOUtils.toString(jsonUploadedTempFile.getInputStream()); stagingEntry.deleteJson = false; jsonUploadedTempFile = null; diff --git a/src/main/webapp/dataset-license-terms.xhtml b/src/main/webapp/dataset-license-terms.xhtml index 0d109f73f06..92beaf3210f 100644 --- a/src/main/webapp/dataset-license-terms.xhtml +++ b/src/main/webapp/dataset-license-terms.xhtml @@ -513,70 +513,6 @@ - - -
-

- #{bundle['dataset.manageGuestbooks.tab.action.btn.view.dialog.datasetGuestbook.title']} -

-
- -
-

- #{DatasetPage.selectedGuestbook.name} -

-
-
-
- -
-

- -

    - -
  • - -
  • -
    - -
  • - -
  • -
    -
-

- - -

- -

    - -
  • - -
  • -
    - -
  • - -
  • -
    -
-

-
-
-
-
-
- -
-
+ \ No newline at end of file diff --git a/src/main/webapp/dataset-widgets.xhtml b/src/main/webapp/dataset-widgets.xhtml index 10f432eb671..34fae0ea0a6 100644 --- a/src/main/webapp/dataset-widgets.xhtml +++ b/src/main/webapp/dataset-widgets.xhtml @@ -22,9 +22,10 @@ + - +
@@ -82,47 +83,7 @@ - -

- #{bundle['dataset.thumbnailsAndWidget.removeThumbnail.tip']} -

-
- - -
-
- -
-
-

#{bundle['dataset.thumbnailsAndWidget.availableThumbnails.tip']}

- - - - - -
- - -
#{thumbnail.filename}
- -
-
-
-
-
-
-
- - -
-
-
+
@@ -184,7 +145,51 @@
+ + +

+ #{bundle['dataset.thumbnailsAndWidget.removeThumbnail.tip']} +

+
+ + +
+
+ +
+
+

#{bundle['dataset.thumbnailsAndWidget.availableThumbnails.tip']}

+ + + + + +
+ + +
#{thumbnail.filename}
+ +
+
+
+
+
+
+
+ + +
+
+ +
+ diff --git a/src/main/webapp/dataset.xhtml b/src/main/webapp/dataset.xhtml index f88d0d76138..3604aaf9d87 100644 --- a/src/main/webapp/dataset.xhtml +++ b/src/main/webapp/dataset.xhtml @@ -1323,6 +1323,13 @@ + + + + + + + diff --git a/src/main/webapp/editFilesFragment.xhtml b/src/main/webapp/editFilesFragment.xhtml index 7f7d3e5c594..04a6d8fd5f1 100644 --- a/src/main/webapp/editFilesFragment.xhtml +++ b/src/main/webapp/editFilesFragment.xhtml @@ -130,7 +130,7 @@ auto="#{!(EditDatafilesPage.directUploadEnabled())}" multiple="#{datasetPage || EditDatafilesPage.allowMultipleFileUpload()}" disabled="#{lockedFromEdits || !(datasetPage || EditDatafilesPage.showFileUploadComponent()) }" - fileUploadListener="#{EditDatafilesPage.handleFileUpload}" + listener="#{EditDatafilesPage.handleFileUpload}" process="filesTable" update=":datasetForm:filesTable, @([id$=filesButtons])" label="#{bundle['file.selectToAddBtn']}" @@ -765,7 +765,7 @@

#{bundle['file.spss-porExtraLabels.title']}

- +
diff --git a/src/main/webapp/guestbook-preview-popup-fragment.xhtml b/src/main/webapp/guestbook-preview-popup-fragment.xhtml new file mode 100644 index 00000000000..5a873d88107 --- /dev/null +++ b/src/main/webapp/guestbook-preview-popup-fragment.xhtml @@ -0,0 +1,82 @@ + + + +
+ + #{bundle['dataset.manageGuestbooks.tab.action.btn.edit']} + +
+
+ +
+

+ #{bundle['dataset.manageGuestbooks.tab.action.btn.view.dialog.datasetGuestbook.title']} +

+
+ +
+

+ #{selectedGuestbook.name} +

+
+
+
+ +
+

+ +

    + +
  • + +
  • +
    + +
  • + +
  • +
    +
+

+ + +

+ +

    + +
  • + +
  • +
    + +
  • + +
  • +
    +
+

+
+
+
+
+
+ +
+
diff --git a/src/main/webapp/manage-guestbooks.xhtml b/src/main/webapp/manage-guestbooks.xhtml index 97cbe97ccb6..1f3bde9b0bb 100644 --- a/src/main/webapp/manage-guestbooks.xhtml +++ b/src/main/webapp/manage-guestbooks.xhtml @@ -157,75 +157,11 @@
-
- - #{bundle['dataset.manageGuestbooks.tab.action.btn.edit']} - -
-
-

- #{bundle['dataset.manageGuestbooks.tab.action.btn.view.dialog.datasetGuestbook.title']} -

-
- -
-

- #{manageGuestbooksPage.selectedGuestbook.name} -

-
-
-
- -
-

- -

    - -
  • - -
  • -
    - -
  • - -
  • -
    -
-

- - -

- -

    - -
  • - -
  • -
    - -
  • - -
  • -
    -
-

-
-
-
-
-
- -
+ + + + +
diff --git a/src/main/webapp/provenance-popups-fragment.xhtml b/src/main/webapp/provenance-popups-fragment.xhtml index e32f17c5a08..6e1663fbe05 100644 --- a/src/main/webapp/provenance-popups-fragment.xhtml +++ b/src/main/webapp/provenance-popups-fragment.xhtml @@ -46,7 +46,7 @@ auto="true" multiple="false" allowTypes="/(\.|\/)(json)$/" - fileUploadListener="#{provPopupFragmentBean.handleFileUpload}" + listener="#{provPopupFragmentBean.handleFileUpload}" update="provPopupOutput,assignMessages" label="#{bundle['file.editProvenanceDialog.selectToAddBtn']}" onstart="javascript:uploadStarted();" diff --git a/src/main/webapp/themeAndWidgetsFragment.xhtml b/src/main/webapp/themeAndWidgetsFragment.xhtml index aba5f1808c1..eddf2dbb892 100644 --- a/src/main/webapp/themeAndWidgetsFragment.xhtml +++ b/src/main/webapp/themeAndWidgetsFragment.xhtml @@ -51,11 +51,11 @@