diff --git a/app/institutions/dashboard/-components/institutional-users-list/component.ts b/app/institutions/dashboard/-components/institutional-users-list/component.ts index d918aa5bd94..4ac0b3d7131 100644 --- a/app/institutions/dashboard/-components/institutional-users-list/component.ts +++ b/app/institutions/dashboard/-components/institutional-users-list/component.ts @@ -14,7 +14,8 @@ interface Column { key: string; selected: boolean; label: string; - type: 'string' | 'date_by_month' | 'osf_link' | 'user_name'; + sort_key: string | false; + type: 'string' | 'date_by_month' | 'osf_link' | 'user_name' | 'orcid'; } interface InstitutionalUsersListArgs { @@ -34,7 +35,6 @@ export default class InstitutionalUsersList extends Component col.selected).map(col => col.key); // Private properties - @tracked department = this.intl.t('institutions.dashboard.select_default'); - @tracked sort = 'user_name'; @tracked hasOrcid = false; @tracked totalUsers = 0; - + orcidUrlPrefix = 'https://orcid.org/'; // Move to config? @action toggleColumnSelection(columnKey: string) { @@ -216,7 +221,6 @@ export default class InstitutionalUsersList extends Component {{institutionalUser.userGuid}} + {{else if (eq column.type 'orcid')}} + + {{institutionalUser.orcidId}} + {{else if (eq column.type 'date_by_month')}} {{#if (get institutionalUser column.key)}} {{moment-format (get institutionalUser column.key) 'MM/YYYY'}} diff --git a/tests/integration/routes/institutions/dashboard/-components/institutional-users-list/component-test.ts b/tests/integration/routes/institutions/dashboard/-components/institutional-users-list/component-test.ts index c9c4115a323..7ea72714ede 100644 --- a/tests/integration/routes/institutions/dashboard/-components/institutional-users-list/component-test.ts +++ b/tests/integration/routes/institutions/dashboard/-components/institutional-users-list/component-test.ts @@ -18,7 +18,7 @@ module('Integration | routes | institutions | dashboard | -components | institut this.owner.register('service:router', OsfLinkRouterStub); }); - test('it renders and paginates 8 default columns', async function(assert) { + test('it renders and paginates 9 default columns', async function(assert) { server.create('institution', { id: 'testinstitution', }, 'withMetrics'); @@ -41,16 +41,18 @@ module('Integration | routes | institutions | dashboard | -components | institut /> `); assert.dom('[data-test-header]') - .exists({ count: 8 }, '8 default headers'); + .exists({ count: 9 }, '9 default headers'); assert.dom('[data-test-header="department"]') .exists({ count: 1 }, '1 departments header'); + assert.dom('[data-test-header="orcid"]') + .exists('1 orcid header'); assert.dom('[data-test-header="publicProjects"]') .exists({ count: 1 }, '1 public projects header'); assert.dom('[data-test-header="privateProjects"]') .exists({ count: 1 }, '1 private projects header'); assert.dom('[data-test-item]') - .exists({ count: 80 }, '80 items 10 rows and 8 columns by default'); + .exists({ count: 90 }, '90 items 10 rows and 9 columns by default'); assert.dom('[data-test-item="department"]') .exists({ count: 10 }, '10 in the list with department'); assert.dom('[data-test-item="publicProjects"]') diff --git a/translations/en-us.yml b/translations/en-us.yml index 1129cb84be8..9c23060211c 100644 --- a/translations/en-us.yml +++ b/translations/en-us.yml @@ -815,10 +815,10 @@ institutions: download_csv: 'Download CSV' download_tsv: 'Download TSV' format_labels: - csv: '.csv' - tsv: '.tsv' - json_table: 'JSON (table)' - json_direct: 'JSON (direct)' + csv: '.csv' + tsv: '.tsv' + json_table: 'JSON (table)' + json_direct: 'JSON (direct)' download: 'Download' select_default: 'All Departments' users_list: @@ -831,6 +831,7 @@ institutions: public_registration_count: 'Public Registrations' private_registration_count: 'Private Registrations' published_preprint_count: 'Preprints' + orcid: ORCID osf_link: 'OSF Link' public_file_count: 'Files on OSF' storage_byte_count: 'Total Data Stored on OSF'