View | Details | Raw Unified | Return to bug 31028
Collapse All | Expand All

(-)a/koha-tmpl/intranet-tmpl/prog/js/datatables.js (-2 / +5 lines)
Lines 584-596 jQuery.fn.dataTable.ext.errMode = function(settings, note, message) { Link Here
584
                                        var part = {};
584
                                        var part = {};
585
                                        var attr = attributes[i];
585
                                        var attr = attributes[i];
586
                                        let criteria = options.criteria;
586
                                        let criteria = options.criteria;
587
                                        if ( value.match(/^\^(.*)\$$/) ) {
587
                                        if ( value !== null && value.match(/^\^(.*)\$$/) ) {
588
                                            value = value.replace(/^\^/, '').replace(/\$$/, '');
588
                                            value = value.replace(/^\^/, '').replace(/\$$/, '');
589
                                            criteria = "exact";
589
                                            criteria = "exact";
590
                                        } else {
590
                                        } else {
591
                                           // escape SQL LIKE special characters % and _
591
                                           // escape SQL LIKE special characters % and _
592
                                           value = value.replace(/(\%|\_|\\)/g, "\\$1");
592
                                           value = value.replace(/(\%|\_|\\)/g, "\\$1");
593
                                        }
593
                                        }
594
                                        if ( value === 'special:undefined' ) {
595
                                            value = null;
596
                                            criteria = "exact";
597
                                        }
594
                                        part[!attr.includes('.')?'me.'+attr:attr] = criteria === 'exact'
598
                                        part[!attr.includes('.')?'me.'+attr:attr] = criteria === 'exact'
595
                                            ? value
599
                                            ? value
596
                                            : {like: (['contains', 'ends_with'].indexOf(criteria) !== -1?'%':'') + value + (['contains', 'starts_with'].indexOf(criteria) !== -1?'%':'')};
600
                                            : {like: (['contains', 'ends_with'].indexOf(criteria) !== -1?'%':'') + value + (['contains', 'starts_with'].indexOf(criteria) !== -1?'%':'')};
597
- 

Return to bug 31028