1 dojo.requireLocalization("openils.reports", "reports");
3 var rpt_strings = dojo.i18n.getLocalization("openils.reports", "reports");
5 var OILS_RPT_FILTERS = {
7 label : rpt_strings.FILTERS_LABEL_EQUALS
11 label : rpt_strings.FILTERS_LABEL_LIKE
15 label : rpt_strings.FILTERS_LABEL_ILIKE
19 label : rpt_strings.FILTERS_LABEL_GREATER_THAN,
20 labels : { timestamp : rpt_strings.FILTERS_LABEL_GT_TIME }
24 label : rpt_strings.FILTERS_LABEL_GT_EQUAL,
25 labels : { timestamp : rpt_strings.FILTERS_LABEL_GTE_TIME }
30 label : rpt_strings.FILTERS_LABEL_LESS_THAN,
31 labels : { timestamp : rpt_strings.FILTERS_LABEL_LT_TIME }
35 label : rpt_strings.FILTERS_LABEL_LT_EQUAL,
36 labels : { timestamp : rpt_strings.FILTERS_LABEL_LSE_TIME }
40 label : rpt_strings.FILTERS_LABEL_IN
44 label : rpt_strings.FILTERS_LABEL_NOT_IN
48 label : rpt_strings.FILTERS_LABEL_BETWEEN
52 label : rpt_strings.FILTERS_LABEL_NOT_BETWEEN
56 label : rpt_strings.FILTERS_LABEL_NULL
60 label : rpt_strings.FILTERS_LABEL_NOT_NULL
64 label : rpt_strings.FILTERS_LABEL_NULL_BLANK
68 label : rpt_strings.FILTERS_LABEL_NOT_NULL_BLANK
73 function oilsRptFilterPicker(args) {
74 this.node = args.node;
75 this.dtype = args.datatype;
76 this.selector = elem('select');
77 for( var key in OILS_RPT_FILTERS )
78 this.addOpt(key, key == args.select );
79 appendClear(this.node, this.selector);
83 oilsRptFilterPicker.prototype.addOpt = function(key, select) {
84 var filter = OILS_RPT_FILTERS[key];
85 var label = filter.label;
86 var opt = insertSelectorVal( this.selector, -1, label, key);
87 if( select ) opt.selected = true;
88 if( filter.labels && filter.labels[this.dtype] )
89 insertSelectorVal( this.selector, -1, filter.labels[this.dtype], key);
92 oilsRptFilterPicker.prototype.getSelected = function() {
93 return getSelectorVal(this.selector);