mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2025-09-14 09:04:56 +08:00
Add permission checks for bmt filters [SCI-6099] (#3622)
Co-authored-by: Anton <anton@scinote.net>
This commit is contained in:
parent
542d432581
commit
c8fd0dce51
4 changed files with 20 additions and 12 deletions
|
@ -10,7 +10,8 @@ window.initBMTFilter = () => {
|
|||
el: '#bmtFilterContainer',
|
||||
data: () => {
|
||||
return {
|
||||
bmtApiBaseUrl: $($('#bmtFilterContainer')).data('bmt-api-base-url'),
|
||||
bmtApiBaseUrl: $('#bmtFilterContainer').data('bmt-api-base-url'),
|
||||
canManageFilters: $('#bmtFilterContainer').data('can-manage-filters'),
|
||||
savedFilters: [],
|
||||
filters: []
|
||||
};
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
v-for="(savedFilter, index) in savedFilters"
|
||||
:key="savedFilter.id"
|
||||
:savedFilter.sync="savedFilters[index]"
|
||||
:canManageFilters="canManageFilters"
|
||||
@savedFilter:load="loadFilters"
|
||||
@savedFilter:delete="savedFilters.splice(index, 1)"
|
||||
/>
|
||||
|
@ -61,7 +62,8 @@
|
|||
props: {
|
||||
container: Object,
|
||||
savedFilters: Array,
|
||||
bmtApiBaseUrl: String
|
||||
bmtApiBaseUrl: String,
|
||||
canManageFilters: Boolean
|
||||
},
|
||||
created() {
|
||||
this.fetchAdditionalDataAttributes();
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<div class="saved-filters-element">
|
||||
<span @click="loadFilters">{{ savedFilter.attributes.name }}</span>
|
||||
<button class="btn btn-light icon-btn" @click="deleteFilter">
|
||||
<button v-if="canManageFilters" class="btn btn-light icon-btn" @click="deleteFilter">
|
||||
<i class="fas fa-trash"></i>
|
||||
</button>
|
||||
</div>
|
||||
|
@ -11,7 +11,8 @@
|
|||
export default {
|
||||
name: 'SavedFilterElement',
|
||||
props: {
|
||||
savedFilter: Object
|
||||
savedFilter: Object,
|
||||
canManageFilters: Boolean
|
||||
},
|
||||
methods: {
|
||||
loadFilters() {
|
||||
|
|
|
@ -101,6 +101,7 @@
|
|||
id="bmtFilterContainer"
|
||||
data-datatable-id="#repository-table-<%= @repository.id %>"
|
||||
data-saved-filters-url="<%= bmt_filters_url %>"
|
||||
data-can-manage-filters="<%= can_manage_bmt_filters?(current_team) %>"
|
||||
data-bmt-api-base-url="<%= bmt_request_url(path: 'api') %>"
|
||||
>
|
||||
<filter-container
|
||||
|
@ -108,17 +109,20 @@
|
|||
@filters:clear="clearFilters"
|
||||
@cids:update="updateExternalIds"
|
||||
@cids:error="handleSearchError"
|
||||
:can-manage-filters="canManageFilters"
|
||||
:bmt-api-base-url="bmtApiBaseUrl"
|
||||
:saved-filters.sync="savedFilters"
|
||||
:filters.sync="filters" />
|
||||
</div>
|
||||
</div>
|
||||
<button
|
||||
class="btn btn-light open-save-bmt-modal hidden"
|
||||
type="button"
|
||||
aria-haspopup="true"
|
||||
>
|
||||
<span class="fas fa-save"></span>
|
||||
<%= t('repositories.show.bmt_search.save_filters') %>
|
||||
</button>
|
||||
<% if can_manage_bmt_filters?(current_team) %>
|
||||
<button
|
||||
class="btn btn-light open-save-bmt-modal hidden"
|
||||
type="button"
|
||||
aria-haspopup="true"
|
||||
>
|
||||
<span class="fas fa-save"></span>
|
||||
<%= t('repositories.show.bmt_search.save_filters') %>
|
||||
</button>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
|
Loading…
Add table
Reference in a new issue