@@ -33,7 +33,8 @@ function welcome(request,response)
33
33
usage : "Add a path, available paths: /years and /runeras" ,
34
34
years : "use: /years/<YYYY> to get a specific year or: /years/<YYYY>/<key> for a specific value within a year" ,
35
35
runeras : "use: /runeras/<RunYYYYN> to get a specific run era or: /runeras/<RunYYYYN>/<key> for a specific value within a run era" ,
36
- or : "or use: /runeras/<YYYY> to get run eras of a year or: /runeras/<YYYY>/<key> to get specific values for run eras within a year"
36
+ or : "or use: /runeras/<YYYY> to get run eras of a year or: /runeras/<YYYY>/<key> to get specific values for run eras within a year" ,
37
+ queries : "for runeras, pass a query with: /runeras?<akey>=<avalue> or after <YYYY> and <key> paths"
37
38
}
38
39
response . send ( reply ) ;
39
40
}
@@ -70,13 +71,20 @@ function searchEra(request,response)
70
71
{
71
72
var era = request . params . era ;
72
73
var key = request . params . mykey ;
74
+ var filters = request . query ;
75
+ var filtered_eras = run_eras ;
76
+
77
+ for ( var reqkey in filters ) {
78
+ filtered_eras = filtered_eras . filter ( an_era => an_era [ reqkey ] == filters [ reqkey ] ) ;
79
+ }
80
+
73
81
var reply ;
74
82
75
83
if ( era )
76
84
{
77
85
if ( era . includes ( "Run" ) )
78
86
{
79
- const this_era = run_eras . filter ( an_era => an_era . run_era == era ) ;
87
+ const this_era = filtered_eras . filter ( an_era => an_era . run_era == era ) ;
80
88
reply = this_era [ 0 ] ;
81
89
if ( key )
82
90
{
@@ -87,7 +95,7 @@ function searchEra(request,response)
87
95
{
88
96
console . log ( "No 'Run' in era, consider it as year" ) ;
89
97
var year = era ;
90
- const these_eras = run_eras . filter ( an_era => an_era . year == year ) ;
98
+ const these_eras = filtered_eras . filter ( an_era => an_era . year == year ) ;
91
99
reply = these_eras ;
92
100
if ( key )
93
101
{
@@ -99,7 +107,7 @@ function searchEra(request,response)
99
107
}
100
108
else
101
109
{
102
- reply = run_eras ;
110
+ reply = filtered_eras ;
103
111
}
104
112
105
113
console . log ( reply ) ;
0 commit comments