mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-15 05:53:03 +00:00
bugfix for users without metadata value for cookie
This commit is contained in:
@@ -7,7 +7,7 @@ import { environment } from '../../../environments/environment';
|
|||||||
import { switchMap, take } from 'rxjs/operators';
|
import { switchMap, take } from 'rxjs/operators';
|
||||||
import { EPerson } from '../../core/eperson/models/eperson.model';
|
import { EPerson } from '../../core/eperson/models/eperson.model';
|
||||||
import { KlaroService } from './klaro.service';
|
import { KlaroService } from './klaro.service';
|
||||||
import { hasValue, isNotEmpty } from '../empty.util';
|
import { hasValue, isEmpty, isNotEmpty } from '../empty.util';
|
||||||
import { CookieService } from '../../core/services/cookie.service';
|
import { CookieService } from '../../core/services/cookie.service';
|
||||||
import { EPersonDataService } from '../../core/eperson/eperson-data.service';
|
import { EPersonDataService } from '../../core/eperson/eperson-data.service';
|
||||||
import { cloneDeep } from 'lodash';
|
import { cloneDeep } from 'lodash';
|
||||||
@@ -214,7 +214,11 @@ export class BrowserKlaroService extends KlaroService {
|
|||||||
* @param config The consent settings for the user to save
|
* @param config The consent settings for the user to save
|
||||||
*/
|
*/
|
||||||
setSettingsForUser(user: EPerson, config: object) {
|
setSettingsForUser(user: EPerson, config: object) {
|
||||||
user.setMetadata(COOKIE_MDFIELD, undefined, JSON.stringify(config));
|
if (isNotEmpty(config)) {
|
||||||
|
user.setMetadata(COOKIE_MDFIELD, undefined, JSON.stringify(config));
|
||||||
|
} else {
|
||||||
|
user.removeMetadata(COOKIE_MDFIELD);
|
||||||
|
}
|
||||||
this.ePersonService.createPatchFromCache(user)
|
this.ePersonService.createPatchFromCache(user)
|
||||||
.pipe(
|
.pipe(
|
||||||
take(1),
|
take(1),
|
||||||
|
Reference in New Issue
Block a user