X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2F%2Badmin%2Fplugins%2Fplugin-search%2Fplugin-search.component.ts;h=d2c179aba2e464fd86561ee3d8fa54bd69673a1f;hb=faf7eab7d9528451570a26e27093159045346064;hp=1a6b4eba3ecf50c88aa7fdcc254c3ebf2291c096;hpb=66357162f8e1227495f09bd4f68446aad7071c6d;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/+admin/plugins/plugin-search/plugin-search.component.ts b/client/src/app/+admin/plugins/plugin-search/plugin-search.component.ts index 1a6b4eba3..d2c179aba 100644 --- a/client/src/app/+admin/plugins/plugin-search/plugin-search.component.ts +++ b/client/src/app/+admin/plugins/plugin-search/plugin-search.component.ts @@ -3,7 +3,7 @@ import { debounceTime, distinctUntilChanged } from 'rxjs/operators' import { Component, OnInit } from '@angular/core' import { ActivatedRoute, Router } from '@angular/router' import { PluginApiService } from '@app/+admin/plugins/shared/plugin-api.service' -import { ComponentPagination, ConfirmService, hasMoreItems, Notifier } from '@app/core' +import { ComponentPagination, ConfirmService, hasMoreItems, Notifier, PluginService } from '@app/core' import { PeerTubePluginIndex } from '@shared/models/plugins/peertube-plugin-index.model' import { PluginType } from '@shared/models/plugins/plugin.type' @@ -39,13 +39,14 @@ export class PluginSearchComponent implements OnInit { private searchSubject = new Subject() constructor ( - private pluginService: PluginApiService, + private pluginService: PluginService, + private pluginApiService: PluginApiService, private notifier: Notifier, private confirmService: ConfirmService, private router: Router, private route: ActivatedRoute ) { - this.pluginTypeOptions = this.pluginService.getPluginTypeOptions() + this.pluginTypeOptions = this.pluginApiService.getPluginTypeOptions() } ngOnInit () { @@ -83,7 +84,7 @@ export class PluginSearchComponent implements OnInit { loadMorePlugins () { this.isSearching = true - this.pluginService.searchAvailablePlugins(this.pluginType, this.pagination, this.sort, this.search) + this.pluginApiService.searchAvailablePlugins(this.pluginType, this.pagination, this.sort, this.search) .subscribe( res => { this.isSearching = false @@ -115,6 +116,18 @@ export class PluginSearchComponent implements OnInit { return !!this.installing[plugin.npmName] } + getPluginOrThemeHref (name: string) { + return this.pluginApiService.getPluginOrThemeHref(this.pluginType, name) + } + + getShowRouterLink (plugin: PeerTubePluginIndex) { + return [ '/admin', 'plugins', 'show', this.pluginService.nameToNpmName(plugin.name, this.pluginType) ] + } + + isThemeSearch () { + return this.pluginType === PluginType.THEME + } + async install (plugin: PeerTubePluginIndex) { if (this.installing[plugin.npmName]) return @@ -126,7 +139,7 @@ export class PluginSearchComponent implements OnInit { this.installing[plugin.npmName] = true - this.pluginService.install(plugin.npmName) + this.pluginApiService.install(plugin.npmName) .subscribe( () => { this.installing[plugin.npmName] = false