diff --git a/package.json b/package.json index df88c01327cc427469e906e17b92c6976e3fedcf..7bb978eea323df1c3f94525d159a4b2abcbdffeb 100644 --- a/package.json +++ b/package.json @@ -51,8 +51,8 @@ "@dbp-toolkit/font-source-sans-pro": "^0.2.0", "@dbp-toolkit/language-select": "^0.3.0", "@dbp-toolkit/notification": "^0.3.0", - "@dbp-toolkit/organization-select": "^0.2.0", "@dbp-toolkit/person-profile": "^0.2.0", + "@dbp-toolkit/resource-select": "^0.1.0", "@digital-blueprint/annotpdf": "^1.0.13-a", "@open-wc/scoped-elements": "^2.1.0", "@webcomponents/scoped-custom-element-registry": "^0.0.5", diff --git a/src/dbp-official-signature-pdf-upload.js b/src/dbp-official-signature-pdf-upload.js index 3c53378f5b473372c24ab30d9c78deec074f9b58..a8c07ade9e03f2fdddf089681e57deecd308482a 100644 --- a/src/dbp-official-signature-pdf-upload.js +++ b/src/dbp-official-signature-pdf-upload.js @@ -15,7 +15,6 @@ import {TextSwitch} from './textswitch.js'; import {FileSink} from '@dbp-toolkit/file-handling'; import {name as pkgName} from './../package.json'; import {send as notify} from '@dbp-toolkit/common/notification'; -import {OrganizationSelect} from '@dbp-toolkit/organization-select'; import metadata from './dbp-official-signature-pdf-upload.metadata.json'; import {Activity} from './activity.js'; import {PdfAnnotationView} from './dbp-pdf-annotation-view'; @@ -72,7 +71,6 @@ class OfficialSignaturePdfUpload extends ScopedElementsMixin(DBPSignatureLitElem 'dbp-mini-spinner': MiniSpinner, 'dbp-button': Button, 'dbp-textswitch': TextSwitch, - 'dbp-organization-select': OrganizationSelect, 'dbp-pdf-annotation-view': PdfAnnotationView, }; } diff --git a/src/dbp-pdf-annotation-view.js b/src/dbp-pdf-annotation-view.js index d145c2e8613bfdac90690be1e5c9c82778e88ae1..7df79251c486dc5abc262af998beb8f5a884273f 100644 --- a/src/dbp-pdf-annotation-view.js +++ b/src/dbp-pdf-annotation-view.js @@ -4,7 +4,7 @@ import {classMap} from 'lit/directives/class-map.js'; import {ScopedElementsMixin} from '@open-wc/scoped-elements'; import DBPLitElement from '@dbp-toolkit/common/dbp-lit-element'; import {MiniSpinner, Icon} from '@dbp-toolkit/common'; -import {OrganizationSelect} from '@dbp-toolkit/organization-select'; +import {ResourceSelect} from '@dbp-toolkit/resource-select'; import {send} from '@dbp-toolkit/common/notification'; import * as commonStyles from '@dbp-toolkit/common/styles'; import * as utils from './utils'; @@ -28,7 +28,7 @@ export class PdfAnnotationView extends ScopedElementsMixin(DBPLitElement) { return { 'dbp-mini-spinner': MiniSpinner, 'dbp-icon': Icon, - 'dbp-organization-select': OrganizationSelect, + 'dbp-resource-select': ResourceSelect, }; } @@ -360,6 +360,17 @@ export class PdfAnnotationView extends ScopedElementsMixin(DBPLitElement) { const ids = Object.keys(annotations); let results = []; + let buildUrl = (select, url) => { + url += '/' + encodeURIComponent(select.auth['person-id']); + url += '/organizations'; + url += '?' + new URLSearchParams({lang: select.lang}).toString(); + return url; + }; + + let formatResource = (select, resource) => { + return `${resource['name']}`; + }; + ids.forEach((id) => { const data = this.annotationRows[id] || []; const annotationTypeData = utils.getAnnotationTypes(data.annotationType); @@ -383,18 +394,21 @@ export class PdfAnnotationView extends ScopedElementsMixin(DBPLitElement) { </button> </div> - <dbp-organization-select + <dbp-resource-select subscribe="lang:lang,entry-point-url:entry-point-url,auth:auth" class="${classMap({hidden: !annotationTypeData.hasOrganization})}" + resource-path="base/people" + .buildUrl="${buildUrl}" + .formatResource="${formatResource}" value="${data.organizationValue}" @change=${(e) => { this.updateAnnotation(id, 'organizationValue', e.target.value); this.updateAnnotation( id, 'organizationNumber', - JSON.parse(e.target.getAttribute('data-object')).alternateName + e.target.valueObject.identifier ); - }}></dbp-organization-select> + }}></dbp-resource-select> <input type="text"