Skip to content

Commit 166125f

Browse files
Merge remote-tracking branch 'origin/maven/fixes/9.1' into maven/release/9.1
2 parents 73ed730 + 2793f1c commit 166125f

File tree

10 files changed

+48
-15
lines changed

10 files changed

+48
-15
lines changed

Backend/alfresco/module/src/main/java/org/edu_sharing/metadataset/v2/MetadataQueryParameter.java

+6-1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
public class MetadataQueryParameter implements Serializable {
1515
// the used syntax, inherited by the group of queries
1616
private final String syntax;
17+
private final transient MetadataSet mds;
1718
private String name;
1819
private Map<String,String> statements;
1920
private boolean multiple;
@@ -26,8 +27,9 @@ public class MetadataQueryParameter implements Serializable {
2627
//only DSL
2728
private boolean asFilter = true;
2829

29-
public MetadataQueryParameter(String syntax){
30+
public MetadataQueryParameter(String syntax, MetadataSet mds){
3031
this.syntax = syntax;
32+
this.mds = mds;
3133
}
3234

3335
public String getSyntax() {
@@ -153,6 +155,9 @@ public boolean isMandatory() {
153155

154156
public boolean isAsFilter() { return asFilter; }
155157

158+
public MetadataSet getMds() {
159+
return mds;
160+
}
156161
@Getter
157162
@Setter
158163
@NoArgsConstructor

Backend/alfresco/module/src/main/java/org/edu_sharing/metadataset/v2/MetadataQueryPreprocessor.java

+18
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,20 @@ public String run(MetadataQueryParameter parameter,String valueIn) throws NoSuch
3434
}
3535

3636

37+
/**
38+
* DO NOT DELETE. Used via Reflection by mds
39+
*/
40+
private static String alternative_id(MetadataQueryParameter parameter,String value){
41+
try {
42+
return parameter.getMds().findWidget(parameter.getName()).getValuesAsMap().get(value).getAlternativeKeys().get(0);
43+
}catch (Throwable t){
44+
logger.info("Could not resolve alternative_id at " + parameter.getName() + ": " + t.getMessage());
45+
return value;
46+
}
47+
}
48+
/**
49+
* DO NOT DELETE. Used via Reflection by mds
50+
*/
3751
private String node_path(MetadataQueryParameter parameter,String value){
3852
return AuthenticationUtil.runAsSystem(()-> {
3953
ApplicationContext applicationContext = AlfAppContextGate.getApplicationContext();
@@ -58,6 +72,10 @@ private String node_path(MetadataQueryParameter parameter,String value){
5872
return serviceRegistry.getNodeService().getPath(nodeRef).toPrefixString(serviceRegistry.getNamespaceService());
5973
});
6074
}
75+
76+
/**
77+
* DO NOT DELETE. Used via Reflection by mds
78+
*/
6179
// convert values like YYYY-MM-DD to a unix millis string (e.g. for elastic)
6280
private String date_millis(MetadataQueryParameter parameter,String value){
6381
try {

Backend/alfresco/module/src/main/java/org/edu_sharing/metadataset/v2/MetadataReader.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -269,7 +269,7 @@ private Map<String, MetadataQueries> getQueries(MetadataSet mds) throws Exceptio
269269
if (parameterNode.getNodeName().equals("condition")) {
270270
handleQueryCondition(parameterNode, query);
271271
}
272-
MetadataQueryParameter parameter = new MetadataQueryParameter(syntaxName);
272+
MetadataQueryParameter parameter = new MetadataQueryParameter(syntaxName, mds);
273273
NodeList list3 = parameterNode.getChildNodes();
274274
NamedNodeMap attributes = parameterNode.getAttributes();
275275
if (attributes == null || attributes.getNamedItem("name") == null) {

Backend/services/core/src/main/java/org/edu_sharing/restservices/NodeDao.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -2716,7 +2716,7 @@ public static void setProperty(RepositoryDao repoDao, String nodeId, String prop
27162716
}
27172717

27182718
private static void setPropertyInternal(NodeService nodeService, String nodeId, String property, Serializable value) {
2719-
if (value == null) {
2719+
if (value == null || (value instanceof java.util.Collection && ((java.util.Collection<?>) value).isEmpty())) {
27202720
nodeService.removeProperty(StoreRef.STORE_REF_WORKSPACE_SPACESSTORE.getProtocol(), StoreRef.STORE_REF_WORKSPACE_SPACESSTORE.getIdentifier(), nodeId, property);
27212721
} else {
27222722
nodeService.setProperty(StoreRef.STORE_REF_WORKSPACE_SPACESSTORE.getProtocol(), StoreRef.STORE_REF_WORKSPACE_SPACESSTORE.getIdentifier(), nodeId, property, value, false);

Backend/services/core/src/test/java/org/edu_sharing/metadataset/v2/tools/MetadataElasticSearchHelperTest.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ void getElasticSearchQueryBasic() throws JsonProcessingException {
8383
void getElasticSearchQueryMultipleParameter() {
8484
SearchToken token = new SearchToken();
8585
List<MetadataQueryParameter> parameters = new ArrayList<>();
86-
MetadataQueryParameter parameter = new MetadataQueryParameter(query.getSyntax());
86+
MetadataQueryParameter parameter = new MetadataQueryParameter(query.getSyntax(), null);
8787
parameter.setMultiple(true);
8888
parameter.setMultiplejoin("AND");
8989
parameter.setName("parameter");
@@ -112,7 +112,7 @@ void getElasticSearchQueryMultipleParameter() {
112112

113113

114114
// 2 Parameters AND combined
115-
MetadataQueryParameter parameter2 = new MetadataQueryParameter(query.getSyntax());
115+
MetadataQueryParameter parameter2 = new MetadataQueryParameter(query.getSyntax(), null);
116116
parameter2.setMultiple(true);
117117
parameter2.setMultiplejoin("AND");
118118
parameter2.setName("parameter2");
@@ -141,7 +141,7 @@ void getElasticSearchQueryMultipleParameter() {
141141
@Test
142142
void getAggregations() {
143143
SearchToken token = new SearchToken();
144-
MetadataQueryParameter parameter = new MetadataQueryParameter(query.getSyntax());
144+
MetadataQueryParameter parameter = new MetadataQueryParameter(query.getSyntax(), null);
145145
parameter.setName("test_facet");
146146

147147
query.setParameters(Collections.singletonList(parameter));
@@ -160,7 +160,7 @@ void getAggregations() {
160160
);
161161

162162
// 2 facets
163-
MetadataQueryParameter parameter2 = new MetadataQueryParameter(query.getSyntax());
163+
MetadataQueryParameter parameter2 = new MetadataQueryParameter(query.getSyntax(), null);
164164
parameter2.setName("test_facet2");
165165
query.setParameters(Arrays.asList(parameter, parameter2));
166166

@@ -214,7 +214,7 @@ void getAggregations() {
214214
void getAggregationsSearchToken() {
215215
SearchToken token = new SearchToken();
216216
token.setQueryString("A B C");
217-
MetadataQueryParameter parameter = new MetadataQueryParameter(query.getSyntax());
217+
MetadataQueryParameter parameter = new MetadataQueryParameter(query.getSyntax(), null);
218218
parameter.setName("test_facet");
219219
MetadataWidget widget = new MetadataWidget();
220220
widget.setId("test_facet");
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
<div class="workflowStatus" [style.background-color]="getWorkflowStatus().color">
2-
{{ 'WORKFLOW.' + getWorkflowStatus().id | translate }}
1+
<div class="workflowStatus" [style.background-color]="getWorkflowStatus()?.color">
2+
{{ 'WORKFLOW.' + getWorkflowStatus()?.id | translate }}
33
</div>

Frontend/src/app/core-ui-module/ui-helper.ts

+8-3
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import { ActivatedRoute, NavigationExtras, Router } from '@angular/router';
1313
import { TranslateService } from '@ngx-translate/core';
1414
import { Ace, LoginInfo } from 'ngx-edu-sharing-api';
1515
import { ListItem, OPEN_URL_MODE, UIConstants } from 'ngx-edu-sharing-ui';
16-
import { Observable, Observer, forkJoin as observableForkJoin, of } from 'rxjs';
16+
import { forkJoin as observableForkJoin, Observable, Observer, of } from 'rxjs';
1717
import { catchError, first, take } from 'rxjs/operators';
1818
import { BridgeService } from '../services/bridge.service';
1919
import {
@@ -25,7 +25,6 @@ import {
2525
NodeLock,
2626
NodeWrapper,
2727
ParentList,
28-
Permission,
2928
} from '../core-module/rest/data-object';
3029
import { Helper } from '../core-module/rest/helper';
3130
import { RestConstants } from '../core-module/rest/rest-constants';
@@ -50,7 +49,13 @@ import { ExtendedAce } from '../features/dialogs/dialog-modules/share-dialog/sha
5049
export class UIHelper {
5150
// TODO: check, whether these parameters are still used and remove or include them in
5251
// `PRESERVED_QUERY_PARAMS` in `main/location-strategy.ts` accordingly.
53-
static COPY_URL_PARAMS = ['reurlTypes', 'reurlCreate', 'applyDirectories', 'onlyDownloadable'];
52+
static COPY_URL_PARAMS = [
53+
'reurl',
54+
'reurlTypes',
55+
'reurlCreate',
56+
'applyDirectories',
57+
'onlyDownloadable',
58+
];
5459
public static getBlackWhiteContrast(color: string) {}
5560

5661
static changeQueryParameter(router: Router, route: ActivatedRoute, name: string, value: any) {

Frontend/src/app/pages/collections-page/collections-page.component.html

+5-1
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,11 @@ <h1 *ngIf="isRootLevelCollection()" esTitle class="cdk-visually-hidden">
112112
<es-breadcrumbs
113113
class="collections-breadcrumb"
114114
[home]="'COLLECTIONS.TAB.' + tabSelected"
115-
[homeRouterLink]="{ routerLink: ['.'], queryParams: { scope: tabSelected } }"
115+
[homeRouterLink]="{
116+
routerLink: ['.'],
117+
queryParams: { scope: tabSelected, id: null },
118+
queryParamsHandling: 'merge'
119+
}"
116120
[invisibleDescription]="true"
117121
[canDropNodes]="collectionContentComponent.canDropOnCollectionBreadcrumbs"
118122
(onDrop)="collectionContentComponent.dropOnCollection($event.target, $event.source)"

Frontend/src/app/shared/components/breadcrumbs/breadcrumbs.component.scss

+1
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,7 @@ button {
100100

101101
.breadcrumb-element-home {
102102
text-decoration: none;
103+
@include clickable();
103104
}
104105

105106
.breadcrumb-inner {

deploy/docker/helm/service/src/main/chart/templates/persistentvolumeclaim.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ apiVersion: v1
2626
kind: PersistentVolumeClaim
2727
metadata:
2828
name: {{ include "edusharing_repository_service.pvc.share.safe" . }}
29-
labels: {{ include "edusharing_repository_service.labels.app" . | nindent 4 }}
29+
labels: {{ include "edusharing_common_lib.labels.app" . | nindent 4 }}
3030
annotations:
3131
"helm.sh/resource-policy": keep
3232
spec: {{ merge .Values.persistence.share.safe.spec .Values.global.cluster.storage.share.spec | toYaml | nindent 2 }}

0 commit comments

Comments
 (0)