Skip to content

Commit

Permalink
Merge pull request #1793 from CSCfi/qa
Browse files Browse the repository at this point in the history
Qa
  • Loading branch information
ommann authored Oct 25, 2023
2 parents 33d59ef + 25b7365 commit ca4df73
Show file tree
Hide file tree
Showing 11 changed files with 710 additions and 159 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -485,12 +485,8 @@ <h3 class="th">
<ng-template #tooltipTemplate>
<div [innerHtml]="row.tooltip"></div>
</ng-template>
<span
[tooltip]="tooltipTemplate"
tabindex="0"
placement="top"
#elem
>

<span [tooltip]="tooltipTemplate" tabindex="0" placement="top" #elem>
<fa-icon class="info-icon" icon="info-circle"></fa-icon>
</span>
</ng-container>
Expand Down
8 changes: 4 additions & 4 deletions src/app/portal/models/publication/publication.model.ts
Original file line number Diff line number Diff line change
Expand Up @@ -126,10 +126,10 @@ export class PublicationAdapter implements Adapter<Publication> {
];
}

let archiveCodeText = '';
if (item.selfArchivedCode === 1) {
let archiveCodeText: string;
if (item.selfArchivedCode === "1") {
archiveCodeText = $localize`:@@yes:Kyllä`;
} else if (item.selfArchivedCode === 0) {
} else if (item.selfArchivedCode === "0") {
archiveCodeText = $localize`:@@no:Ei`;
} else {
archiveCodeText = $localize`:@@unknown:Ei tietoa`;
Expand Down Expand Up @@ -160,7 +160,7 @@ export class PublicationAdapter implements Adapter<Publication> {

// Open Access
const openAccess: boolean =
item.openAccess === 1 || item.selfArchivedCode === 1;
item.openAccess === 1 || item.selfArchivedCode === "1";

let openAccessText = '';

Expand Down
12 changes: 12 additions & 0 deletions src/app/portal/services/filters/filter.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -993,8 +993,10 @@ export class FilterService {
if (searchTerm.length === 0 && !this.timestamp) {
this.generateTimeStamp();
}

// Generate query based on tab and term
const query = this.constructQuery(tab.slice(0, -1), searchTerm);

// Use random score when no search term
const randomQuery = {
function_score: {
Expand All @@ -1004,6 +1006,7 @@ export class FilterService {
},
},
};

// Randomize results if no search term and no sorting activated. Random score doesn't work if sort isn't based with score
if (
searchTerm.length === 0 &&
Expand All @@ -1016,8 +1019,17 @@ export class FilterService {
} else {
sortOrder.push('_score');
}
} else {
if (tab === 'publications') {
sortOrder.push('_score');
sortOrder.push({publicationYear: {order:'desc'}});
} else {
sortOrder.push('_score');
}
}

const queryPayload = searchTerm.length > 0 ? query : randomQuery;

return {
query: queryPayload,
size: pageSize || 10,
Expand Down
6 changes: 3 additions & 3 deletions src/app/portal/services/search.service.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ describe('SearchService', () => {
searchService.searchTerm = 'searchtext';
searchService.fromPage = 1;
tabChangeService.tab = 'publications';
sortService.sort = '';
sortService.sort = [];

testTotal()

Expand All @@ -88,7 +88,7 @@ describe('SearchService', () => {
searchService.searchTerm = 'searchtext';
searchService.fromPage = 1;
tabChangeService.tab = 'fundings';
sortService.sort = '';
sortService.sort = [];

testTotal()

Expand All @@ -108,7 +108,7 @@ describe('SearchService', () => {
searchService.searchTerm = 'searchtext';
searchService.fromPage = 1;
tabChangeService.tab = 'infrastructures';
sortService.sort = '';
sortService.sort = [];

testTotal()

Expand Down
2 changes: 1 addition & 1 deletion src/app/portal/services/sort.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import { AppSettingsService } from '@shared/services/app-settings.service';
export class SortService {
sortMethod: string;
currentTab: string;
sort: any;
sort: any[];
yearField: string;
sortColumn: string;
sortDirection: boolean;
Expand Down
95 changes: 66 additions & 29 deletions src/app/portal/services/static-data.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -102,29 +102,29 @@ export class StaticDataService {
{
id: 1,
class: 'A',
label: $localize`Vertaisarvioidut tieteelliset artikkelit`,
label: $localize`:@@publicationClassA:Vertaisarvioidut tieteelliset artikkelit`,
types: [
{
type: 'A1',
label: $localize`Alkuperäisartikkeli tieteellisessä aikakauslehdessä`,
label: $localize`:@@publicationClassA1:Alkuperäisartikkeli tieteellisessä aikakauslehdessä`,
key: '',
doc_count: 0,
},
{
type: 'A2',
label: $localize`Katsausartikkeli tieteellisessä aikakauslehdessä`,
label: $localize`:@@publicationClassA2:Katsausartikkeli tieteellisessä aikakauslehdessä`,
key: '',
doc_count: 0,
},
{
type: 'A3',
label: $localize`Kirjan tai muun kokoomateoksen osa`,
label: $localize`:@@publicationClassA3:Kirjan tai muun kokoomateoksen osa`,
key: '',
doc_count: 0,
},
},
{
type: 'A4',
label: $localize`Artikkeli konferenssijulkaisussa`,
label: $localize`:@@publicationClassA4:Artikkeli konferenssijulkaisussa`,
key: '',
doc_count: 0,
},
Expand All @@ -134,23 +134,23 @@ export class StaticDataService {
{
id: 2,
class: 'B',
label: $localize`Vertaisarvioimattomat tieteelliset kirjoitukset`,
label: $localize`:@@publicationClassB:Vertaisarvioimattomat tieteelliset kirjoitukset`,
types: [
{
type: 'B1',
label: $localize`Kirjoitus tieteellisessä aikakauslehdessä`,
label: $localize`:@@publicationClassB1:Kirjoitus tieteellisessä aikakauslehdessä`,
key: '',
doc_count: 0,
},
{
type: 'B2',
label: $localize`Kirjan tai muun kokoomateoksen osa`,
label: $localize`:@@publicationClassB2:Kirjan tai muun kokoomateoksen osa`,
key: '',
doc_count: 0,
},
{
type: 'B3',
label: $localize`Vertaisarvioimaton artikkeli konferenssijulkaisussa`,
label: $localize`:@@publicationClassB3:Vertaisarvioimaton artikkeli konferenssijulkaisussa`,
key: '',
doc_count: 0,
},
Expand All @@ -160,17 +160,17 @@ export class StaticDataService {
{
id: 3,
class: 'C',
label: $localize`Tieteelliset kirjat (monografiat)`,
label: $localize`:@@publicationClassC:Tieteelliset kirjat`,
types: [
{
type: 'C1',
label: $localize`Kustannettu tieteellinen erillisteos`,
label: $localize`:@@publicationClassC1:Kustannettu tieteellinen erillisteos`,
key: '',
doc_count: 0,
},
{
type: 'C2',
label: $localize`Toimitettu kirja, kokoomateos, konferenssijulkaisu tai lehden erikoisnumero`,
label: $localize`:@@publicationClassC2:Toimitettu kirja, kokoomateos, konferenssijulkaisu tai lehden erikoisnumero`,
key: '',
doc_count: 0,
},
Expand All @@ -180,42 +180,41 @@ export class StaticDataService {
{
id: 4,
class: 'D',
label: $localize`Ammattiyhteisölle suunnatut julkaisut`,
label: $localize`:@@publicationClassD:Ammattiyhteisölle suunnatut julkaisut`,
types: [
{
type: 'D1',
label: $localize`Artikkeli ammattilehdessä`,
label: $localize`:@@publicationClassD1:Artikkeli ammattilehdessä`,
key: '',
doc_count: 0,
},
// tslint:disable-next-line: max-line-length
{
type: 'D2',
label: $localize`Artikkeli ammatillisessa käsi- tai opaskirjassa, ammatillisessa tietojärjestelmässä tai oppikirja-aineisto`,
label: $localize`:@@publicationClassD2:Artikkeli ammatillisessa kokoomateoksessa`,
key: '',
doc_count: 0,
},
{
type: 'D3',
label: $localize`Artikkeli ammatillisessa konferenssijulkaisussa`,
label: $localize`:@@publicationClassD3:Artikkeli ammatillisessa konferenssijulkaisussa`,
key: '',
doc_count: 0,
},
{
type: 'D4',
label: $localize`Julkaistu kehittämis- tai tutkimusraportti taikka -selvitys`,
label: $localize`:@@publicationClassD4:Julkaistu kehittämis- tai tutkimusraportti taikka -selvitys`,
key: '',
doc_count: 0,
},
{
type: 'D5',
label: $localize`Oppikirja, ammatillinen käsi- tai opaskirja taikka sanakirja`,
label: $localize`:@@publicationClassD5:Ammatillinen kirja`,
key: '',
doc_count: 0,
},
{
type: 'D6',
label: $localize`Toimitettu ammatillinen teos`,
label: $localize`:@@publicationClassD6:Toimitettu ammatillinen teos`,
key: '',
doc_count: 0,
},
Expand All @@ -225,23 +224,23 @@ export class StaticDataService {
{
id: 5,
class: 'E',
label: $localize`Suurelle yleisölle suunnatut julkaisut`,
label: $localize`:@@publicationClassE:Suurelle yleisölle suunnatut julkaisut`,
types: [
{
type: 'E1',
label: $localize`Yleistajuinen artikkeli, sanomalehtiartikkeli`,
label: $localize`:@@publicationClassE1:Yleistajuinen artikkeli, sanomalehtiartikkeli`,
key: '',
doc_count: 0,
},
{
type: 'E2',
label: $localize`Yleistajuinen monografia`,
label: $localize`:@@publicationClassE2:Yleistajuinen monografia`,
key: '',
doc_count: 0,
},
{
type: 'E3',
label: $localize`Toimitettu yleistajuinen teos`,
label: $localize`:@@publicationClassE3:Toimitettu yleistajuinen teos`,
key: '',
doc_count: 0,
},
Expand All @@ -251,23 +250,23 @@ export class StaticDataService {
{
id: 6,
class: 'F',
label: $localize`Julkinen taiteellinen ja taideteollinen toiminta`,
label: $localize`:@@publicationClassF:Julkinen taiteellinen ja taideteollinen toiminta`,
types: [
{
type: 'F1',
label: $localize`Erillisjulkaisu`,
label: $localize`:@@publicationClassF1:Itsenäinen teos tai esitys`,
key: '',
doc_count: 0,
},
{
type: 'F2',
label: $localize`Julkinen taiteellinen teoksen osatoteutus`,
label: $localize`:@@publicationClassF2:Taiteellisen teoksen tai esityksen osatoteutus`,
key: '',
doc_count: 0,
},
{
type: 'F3',
label: $localize`Ei-taiteellisen julkaisun taiteellinen osa`,
label: $localize`:@@publicationClassF3:Ei-taiteellisen julkaisun taiteellinen osa`,
key: '',
doc_count: 0,
},
Expand Down Expand Up @@ -311,6 +310,44 @@ export class StaticDataService {
},
],
},
{
id: 8,
class: 'H',
label: $localize`:@@publicationClassH:Patentit ja keksintöilmoitukset`,
types: [
{
type: 'H1',
label: $localize`:@@publicationClassH1:Myönnetty patentti`,
key: '',
doc_count: 0,
},
{
type: 'H2',
label: $localize`:@@publicationClassH2:Keksintöilmoitus`,
key: '',
doc_count: 0,
}
],
},
{
id: 9,
class: 'I',
label: $localize`:@@publicationClassI:Audiovisuaaliset julkaisut ja tieto- ja viestintätekniset sovellukset`,
types: [
{
type: 'I1',
label: $localize`:@@publicationClassI1:Audiovisuaaliset julkaisut`,
key: '',
doc_count: 0,
},
{
type: 'I2',
label: $localize`:@@publicationClassI2:Tieto- ja viestintätekniset sovellukset`,
key: '',
doc_count: 0,
}
],
}
];

targets: Target[] = [
Expand Down
22 changes: 9 additions & 13 deletions src/app/shared/components/pagination/pagination.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
class="col-auto ps-0 d-block d-md-none"
[icon]="faAngleDoubleLeft"
[iconOnly]="true"
(click)="goToFirstPage(pageSize)"
(click)="goToFirstPage()"
[disabled]="fromPage <= 1"
>
</app-secondary-button>
Expand All @@ -31,24 +31,20 @@
</div>
</div>

<div class="pages col-12 col-md-6" [class.order-last]="!order">
<button
*ngFor="let number of pages"
class="page-button"
[disabled]="page === number"
(click)="goToPage(number, pageSize)"
[class.current-page]="page === number"
>
{{ number }}
</button>
<div class="pages col-12 col-md-6" [class.order-last]="!(order$ | async)">
<ng-container *ngFor='let number of pages$ | async'>
<button class="page-button" [class.current-page]="page === number" [disabled]="page === number" (click)="goToPage(number)" >
{{ number }}
</button>
</ng-container>
</div>

<div class="col-auto col-md-3 col-xl-auto p-0">
<div class="row d-flex justify-content-end">
<app-secondary-button
class="col-auto p-0 pe-3 pe-md-0 pagination-button text-end text-lg-start"
[class.pagination-link-active]="fromPage + pageSize < total"
(click)="goToPage(page + 1, pageSize)"
(click)="goToPage(page + 1)"
[disabled]="fromPage + pageSize >= total"
[content]="next"
[icon]="faAngleRight"
Expand All @@ -62,7 +58,7 @@
class="col-auto p-0 d-block d-md-none"
[icon]="total >= 10000 ? faInfoCircle : faAngleDoubleRight"
[iconOnly]="true"
(click)="total >= 10000 ? null : goToLastPage(pageSize)"
(click)="total >= 10000 ? null : goToLastPage()"
[disabled]="fromPage + pageSize >= total"
[tooltip]="total >= 10000 ? tooManyResultstext : null"
triggers="focus"
Expand Down
Loading

0 comments on commit ca4df73

Please sign in to comment.