1 |
|
2 | module.exports = function( vs ){
|
3 |
|
4 |
|
5 | if( !vs.isset('input:name') ||
|
6 | !vs.isset('phrase:analyzer') ||
|
7 | !vs.isset('phrase:field') ||
|
8 | !vs.isset('phrase:boost') ||
|
9 | !vs.isset('phrase:slop') ){
|
10 | return null;
|
11 | }
|
12 |
|
13 |
|
14 | var view = { 'match': {} };
|
15 |
|
16 |
|
17 | view.match[ vs.var('phrase:field') ] = {
|
18 | analyzer: vs.var('phrase:analyzer'),
|
19 | type: 'phrase',
|
20 | boost: vs.var('phrase:boost'),
|
21 | slop: vs.var('phrase:slop'),
|
22 | query: vs.var('input:name')
|
23 | };
|
24 |
|
25 | if (vs.isset('phrase:fuzziness')) {
|
26 | view.match[ vs.var('phrase:field') ].fuzziness = vs.var('phrase:fuzziness');
|
27 | }
|
28 |
|
29 | if (vs.isset('phrase:cutoff_frequency')) {
|
30 | view.match[ vs.var('phrase:field') ].cutoff_frequency = vs.var('phrase:cutoff_frequency');
|
31 | }
|
32 |
|
33 | return view;
|
34 | };
|