Skip to content
Snippets Groups Projects
Commit 8135a9af authored by Xiao Gui's avatar Xiao Gui
Browse files

bugfix: use proper filtering of methods

feat: unauthenticated user will look at release only data
parent f970b5c8
No related branches found
No related tags found
No related merge requests found
......@@ -37,6 +37,8 @@ app.use(session({
* async function, but can start server without
*/
configureAuth(app)
.then(() => console.log('configure auth properly'))
.catch(e => console.error('configure auth failed', e))
const publicPath = process.env.NODE_ENV === 'production'
? path.join(__dirname, 'public')
......
......@@ -16,13 +16,10 @@ let getPublicAccessToken
const fetchDatasetFromKg = async (arg) => {
const accessToken = arg && arg.user && arg.user.tokenset && arg.user.tokenset.access_token
const releasedOnly = !accessToken
let publicAccessToken
if (!accessToken && getPublicAccessToken) {
try {
publicAccessToken = await getPublicAccessToken()
} catch (e) {
console.log('getPublicAccessToken Error', e)
}
publicAccessToken = await getPublicAccessToken()
}
const option = accessToken || publicAccessToken || process.env.ACCESS_TOKEN
? {
......@@ -32,7 +29,7 @@ const fetchDatasetFromKg = async (arg) => {
}
: {}
return await new Promise((resolve, reject) => {
request(queryUrl, option, (err, resp, body) => {
request(`${queryUrl}${releasedOnly ? '&databaseScope=RELEASED' : ''}`, option, (err, resp, body) => {
if (err)
return reject(err)
if (resp.statusCode >= 400)
......@@ -132,7 +129,7 @@ const filterByPRs = (prs, atlasPr) => atlasPr
const manualFilter = require('./supplements/parcellation')
const filter = (datasets, {templateName, parcellationName}) => datasets
const filter = (datasets = [], {templateName, parcellationName}) => datasets
.filter(ds => {
if (/infant/.test(ds.name))
return false
......@@ -149,7 +146,7 @@ const filter = (datasets, {templateName, parcellationName}) => datasets
? longBundle
: parcellationName === 'Fibre Bundle Atlas - Short Bundle' && shortBundle
? shortBundle
: parcellationName === 'Whole Brain (v2.0)'
: parcellationName === 'Waxholm Space rat brain atlas v.2.0'
? waxholm
: null
)
......@@ -174,7 +171,8 @@ const filter = (datasets, {templateName, parcellationName}) => datasets
exports.init = async () => {
const { getPublicAccessToken: getPublic } = await kgQueryUtil()
getPublicAccessToken = getPublic
cachedData = await fetchDatasetFromKg()
const {results = []} = await fetchDatasetFromKg()
cacheData = results
}
exports.getDatasets = ({ templateName, parcellationName, user }) => getDs({ user })
......
This diff is collapsed.
import { Component, OnDestroy, OnInit, ViewChild } from "@angular/core";
import { DataEntry, DataStateInterface } from "src/services/stateStore.service";
import { DataEntry } from "src/services/stateStore.service";
import { Subscription, merge } from "rxjs";
import { DatabrowserService, CountedDataModality, getModalityFromDE } from "../databrowser.service";
import { DatabrowserService, CountedDataModality } from "../databrowser.service";
import { ModalityPicker } from "../modalityPicker/modalityPicker.component";
@Component({
......
......@@ -14,11 +14,9 @@ export class FilterDataEntriesbyMethods implements PipeTransform{
const includeEmpty = dataModalities.some(d => d.name === noMethodDisplayName)
return dataEntries && dataModalities && dataModalities.length > 0
? dataEntries.filter(dataEntry => {
return dataEntry.activity.some(a =>
includeEmpty
? a.methods.length === 0
: a.methods.some(m =>
dataModalities.findIndex(dm => dm.name === temporaryFilterDataentryName(m)) >= 0))
return includeEmpty && dataEntry.methods.length === 0
|| dataEntry.methods.some(m =>
dataModalities.findIndex(dm => dm.name === temporaryFilterDataentryName(m)) >= 0)
})
: dataEntries
}
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment