mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 10:04:11 +00:00
Request-a-copy improv: Routing and module changes
This commit is contained in:
@@ -34,6 +34,48 @@ export function getBitstreamRequestACopyRoute(item, bitstream): { routerLink: st
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
export function getBitstreamDownloadWithAccessTokenRoute(bitstream, accessToken): { routerLink: string, queryParams: any } {
|
||||||
|
const url = new URLCombiner(getBitstreamModuleRoute(), bitstream.uuid, 'download').toString();
|
||||||
|
const options = {
|
||||||
|
routerLink: url,
|
||||||
|
queryParams: {},
|
||||||
|
};
|
||||||
|
if (hasValue(accessToken)) {
|
||||||
|
options.queryParams = { accessToken: accessToken };
|
||||||
|
}
|
||||||
|
return options;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Get an access token request route for a user to access approved bitstreams using a supplied access token
|
||||||
|
* @param item_uuid item UUID
|
||||||
|
* @param accessToken access token (generated by backend)
|
||||||
|
*/
|
||||||
|
export function getAccessTokenRequestRoute(item_uuid, accessToken): { routerLink: string, queryParams: any } {
|
||||||
|
const url = new URLCombiner(getItemModuleRoute(), item_uuid, getAccessByTokenModulePath()).toString();
|
||||||
|
const options = {
|
||||||
|
routerLink: url,
|
||||||
|
queryParams: {
|
||||||
|
accessToken: (hasValue(accessToken) ? accessToken : undefined),
|
||||||
|
},
|
||||||
|
};
|
||||||
|
return options;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Get an access token request route for a user to access approved bitstreams using a supplied access token
|
||||||
|
* @param item_uuid item UUID
|
||||||
|
* @param accessToken access token (generated by backend)
|
||||||
|
*/
|
||||||
|
export function getAccessTokenRequestFileRoute(item_uuid, accessToken): { routerLink: string, queryParams: any } {
|
||||||
|
const url = new URLCombiner(getItemModuleRoute(), item_uuid, ACCESS_BY_TOKEN_MODULE_PATH).toString();
|
||||||
|
const options = {
|
||||||
|
routerLink: url,
|
||||||
|
queryParams: {
|
||||||
|
accessToken: (hasValue(accessToken) ? accessToken : undefined),
|
||||||
|
},
|
||||||
|
};
|
||||||
|
return options;
|
||||||
|
}
|
||||||
|
export const COAR_NOTIFY_SUPPORT = 'coar-notify-support';
|
||||||
|
|
||||||
export const HOME_PAGE_PATH = 'home';
|
export const HOME_PAGE_PATH = 'home';
|
||||||
|
|
||||||
@@ -128,6 +170,11 @@ export function getRequestCopyModulePath() {
|
|||||||
return `/${REQUEST_COPY_MODULE_PATH}`;
|
return `/${REQUEST_COPY_MODULE_PATH}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const ACCESS_BY_TOKEN_MODULE_PATH = 'access-by-token';
|
||||||
|
export function getAccessByTokenModulePath() {
|
||||||
|
return `/${ACCESS_BY_TOKEN_MODULE_PATH}`;
|
||||||
|
}
|
||||||
|
|
||||||
export const HEALTH_PAGE_PATH = 'health';
|
export const HEALTH_PAGE_PATH = 'health';
|
||||||
|
|
||||||
export const SUBSCRIPTIONS_MODULE_PATH = 'subscriptions';
|
export const SUBSCRIPTIONS_MODULE_PATH = 'subscriptions';
|
||||||
|
@@ -6,11 +6,13 @@ import { itemBreadcrumbResolver } from '../core/breadcrumbs/item-breadcrumb.reso
|
|||||||
import { dsoEditMenuResolver } from '../shared/dso-page/dso-edit-menu.resolver';
|
import { dsoEditMenuResolver } from '../shared/dso-page/dso-edit-menu.resolver';
|
||||||
import { LinkMenuItemModel } from '../shared/menu/menu-item/models/link.model';
|
import { LinkMenuItemModel } from '../shared/menu/menu-item/models/link.model';
|
||||||
import { MenuItemType } from '../shared/menu/menu-item-type.model';
|
import { MenuItemType } from '../shared/menu/menu-item-type.model';
|
||||||
|
import { ItemAccessByTokenPageComponent } from './access-by-token/item-access-by-token-page.component';
|
||||||
import { BitstreamRequestACopyPageComponent } from './bitstreams/request-a-copy/bitstream-request-a-copy-page.component';
|
import { BitstreamRequestACopyPageComponent } from './bitstreams/request-a-copy/bitstream-request-a-copy-page.component';
|
||||||
import { UploadBitstreamComponent } from './bitstreams/upload/upload-bitstream.component';
|
import { UploadBitstreamComponent } from './bitstreams/upload/upload-bitstream.component';
|
||||||
import { ThemedFullItemPageComponent } from './full/themed-full-item-page.component';
|
import { ThemedFullItemPageComponent } from './full/themed-full-item-page.component';
|
||||||
import { itemPageResolver } from './item-page.resolver';
|
import { itemPageResolver } from './item-page.resolver';
|
||||||
import {
|
import {
|
||||||
|
ITEM_ACCESS_BY_TOKEN_PATH,
|
||||||
ITEM_EDIT_PATH,
|
ITEM_EDIT_PATH,
|
||||||
ORCID_PATH,
|
ORCID_PATH,
|
||||||
UPLOAD_BITSTREAM_PATH,
|
UPLOAD_BITSTREAM_PATH,
|
||||||
@@ -64,6 +66,10 @@ export const ROUTES: Route[] = [
|
|||||||
component: OrcidPageComponent,
|
component: OrcidPageComponent,
|
||||||
canActivate: [authenticatedGuard, orcidPageGuard],
|
canActivate: [authenticatedGuard, orcidPageGuard],
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: ITEM_ACCESS_BY_TOKEN_PATH,
|
||||||
|
component: ItemAccessByTokenPageComponent,
|
||||||
|
},
|
||||||
],
|
],
|
||||||
data: {
|
data: {
|
||||||
menu: {
|
menu: {
|
||||||
|
@@ -51,3 +51,5 @@ export const ITEM_EDIT_VERSIONHISTORY_PATH = 'versionhistory';
|
|||||||
export const ITEM_VERSION_PATH = 'version';
|
export const ITEM_VERSION_PATH = 'version';
|
||||||
export const UPLOAD_BITSTREAM_PATH = 'bitstreams/new';
|
export const UPLOAD_BITSTREAM_PATH = 'bitstreams/new';
|
||||||
export const ORCID_PATH = 'orcid';
|
export const ORCID_PATH = 'orcid';
|
||||||
|
|
||||||
|
export const ITEM_ACCESS_BY_TOKEN_PATH = 'access-by-token';
|
||||||
|
@@ -14,6 +14,9 @@ import { StoreModule } from '@ngrx/store';
|
|||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
import { ScrollToModule } from '@nicky-lenaers/ngx-scroll-to';
|
import { ScrollToModule } from '@nicky-lenaers/ngx-scroll-to';
|
||||||
|
|
||||||
|
import { ItemSecureFileDownloadLinkComponent } from '../../app/item-page/access-by-token/field-components/file-download-link/item-secure-file-download-link.component';
|
||||||
|
import { ItemSecureFileSectionComponent } from '../../app/item-page/access-by-token/field-components/file-section/item-secure-file-section.component';
|
||||||
|
import { ItemAccessByTokenPageComponent } from '../../app/item-page/access-by-token/item-access-by-token-page.component';
|
||||||
import { RootModule } from '../../app/root.module';
|
import { RootModule } from '../../app/root.module';
|
||||||
import { SearchResultsSkeletonComponent } from '../../app/shared/search/search-results/search-results-skeleton/search-results-skeleton.component';
|
import { SearchResultsSkeletonComponent } from '../../app/shared/search/search-results/search-results-skeleton/search-results-skeleton.component';
|
||||||
import { MetadataImportPageComponent } from './app/admin/admin-import-metadata-page/metadata-import-page.component';
|
import { MetadataImportPageComponent } from './app/admin/admin-import-metadata-page/metadata-import-page.component';
|
||||||
@@ -133,6 +136,9 @@ const DECLARATIONS = [
|
|||||||
CollectionPageComponent,
|
CollectionPageComponent,
|
||||||
ItemPageComponent,
|
ItemPageComponent,
|
||||||
FullItemPageComponent,
|
FullItemPageComponent,
|
||||||
|
ItemAccessByTokenPageComponent,
|
||||||
|
ItemSecureFileSectionComponent,
|
||||||
|
ItemSecureFileDownloadLinkComponent,
|
||||||
LoginPageComponent,
|
LoginPageComponent,
|
||||||
LogoutPageComponent,
|
LogoutPageComponent,
|
||||||
CreateProfileComponent,
|
CreateProfileComponent,
|
||||||
|
Reference in New Issue
Block a user