mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-11-03 03:16:10 -06:00 
			
		
		
		
	Fix: include base href when opening global search result in new window (#10066)
This commit is contained in:
		@@ -529,6 +529,17 @@ describe('GlobalSearchComponent', () => {
 | 
			
		||||
    expect(dispatchSpy).toHaveBeenCalledTimes(2) // once for keydown, second for click
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  it('should support using base href in navigateOrOpenInNewWindow', () => {
 | 
			
		||||
    jest
 | 
			
		||||
      .spyOn(component['locationStrategy'], 'getBaseHref')
 | 
			
		||||
      .mockReturnValue('/base/')
 | 
			
		||||
    const openSpy = jest.spyOn(window, 'open')
 | 
			
		||||
    const event = new Event('click')
 | 
			
		||||
    event['ctrlKey'] = true
 | 
			
		||||
    component.primaryAction(DataType.Document, { id: 1 }, event as any)
 | 
			
		||||
    expect(openSpy).toHaveBeenCalledWith('/base/documents/1', '_blank')
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  it('should support title content search and advanced search', () => {
 | 
			
		||||
    const qfSpy = jest.spyOn(documentListViewService, 'quickFilter')
 | 
			
		||||
    component.query = 'test'
 | 
			
		||||
 
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
import { NgTemplateOutlet } from '@angular/common'
 | 
			
		||||
import { LocationStrategy, NgTemplateOutlet } from '@angular/common'
 | 
			
		||||
import {
 | 
			
		||||
  Component,
 | 
			
		||||
  ElementRef,
 | 
			
		||||
@@ -99,7 +99,8 @@ export class GlobalSearchComponent implements OnInit {
 | 
			
		||||
    private permissionsService: PermissionsService,
 | 
			
		||||
    private toastService: ToastService,
 | 
			
		||||
    private hotkeyService: HotKeyService,
 | 
			
		||||
    private settingsService: SettingsService
 | 
			
		||||
    private settingsService: SettingsService,
 | 
			
		||||
    private locationStrategy: LocationStrategy
 | 
			
		||||
  ) {
 | 
			
		||||
    this.queryDebounce = new Subject<string>()
 | 
			
		||||
 | 
			
		||||
@@ -421,10 +422,13 @@ export class GlobalSearchComponent implements OnInit {
 | 
			
		||||
    extras: Object = {}
 | 
			
		||||
  ) {
 | 
			
		||||
    if (newWindow) {
 | 
			
		||||
      const url = this.router.serializeUrl(
 | 
			
		||||
      const serializedUrl = this.router.serializeUrl(
 | 
			
		||||
        this.router.createUrlTree(commands, extras)
 | 
			
		||||
      )
 | 
			
		||||
      window.open(url, '_blank')
 | 
			
		||||
      const baseHref = this.locationStrategy.getBaseHref()
 | 
			
		||||
      const fullUrl =
 | 
			
		||||
        baseHref.replace(/\/+$/, '') + '/' + serializedUrl.replace(/^\/+/, '')
 | 
			
		||||
      window.open(fullUrl, '_blank')
 | 
			
		||||
    } else {
 | 
			
		||||
      this.router.navigate(commands, extras)
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user