Before you overwrite dataTables.columnFilter.js, note that we have changed a few lines
in this file.

Running a diff between the original column filter plugin (dataTables.columnFilter_orig.js) and
our modified one (dataTables.columnFilter.js):

denise@denise-DX4860:~/airtime/legacy/public/js/datatables/plugin$ diff -u dataTables.columnFilter_orig.js dataTables.columnFilter.js
--- dataTables.columnFilter_orig.js	2012-10-17 11:41:05.000000000 -0400
+++ dataTables.columnFilter.js	2012-11-22 12:20:03.997107451 -0500
@@ -103,7 +103,8 @@
             label = label.replace(/(^\s*)|(\s*$)/g, "");
             var currentFilter = oTable.fnSettings().aoPreSearchCols[i].sSearch;
             var search_init = 'search_init ';
-            var inputvalue = label;
+            //var inputvalue = label;
+            var inputvalue = '';
             if (currentFilter != '' && currentFilter != '^') {
                 if (bIsNumber && currentFilter.charAt(0) == '^')
                     inputvalue = currentFilter.substr(1); //ignore trailing ^
@@ -133,29 +134,32 @@
                 });
             } else {
                 input.keyup(function () {
-                    if (oTable.fnSettings().oFeatures.bServerSide && iFilterLength != 0) {
-                        //If filter length is set in the server-side processing mode
-                        //Check has the user entered at least iFilterLength new characters
-
-                        var currentFilter = oTable.fnSettings().aoPreSearchCols[index].sSearch;
-                        var iLastFilterLength = $(this).data("dt-iLastFilterLength");
-                        if (typeof iLastFilterLength == "undefined")
-                            iLastFilterLength = 0;
-                        var iCurrentFilterLength = this.value.length;
-                        if (Math.abs(iCurrentFilterLength - iLastFilterLength) < iFilterLength
-                        //&& currentFilter.length == 0 //Why this?
-                            ) {
-                            //Cancel the filtering
-                            return;
-                        }
-                        else {
-                            //Remember the current filter length
-                            $(this).data("dt-iLastFilterLength", iCurrentFilterLength);
+                    var advSearchFields = $("div#advanced_search").children(':visible');
+                    if(validateAdvancedSearch(advSearchFields)){
+                        if (oTable.fnSettings().oFeatures.bServerSide && iFilterLength != 0) {
+                            //If filter length is set in the server-side processing mode
+                            //Check has the user entered at least iFilterLength new characters
+
+                            var currentFilter = oTable.fnSettings().aoPreSearchCols[index].sSearch;
+                            var iLastFilterLength = $(this).data("dt-iLastFilterLength");
+                            if (typeof iLastFilterLength == "undefined")
+                                iLastFilterLength = 0;
+                            var iCurrentFilterLength = this.value.length;
+                            if (Math.abs(iCurrentFilterLength - iLastFilterLength) < iFilterLength
+                            //&& currentFilter.length == 0 //Why this?
+                                ) {
+                                //Cancel the filtering
+                                return;
+                            }
+                            else {
+                                //Remember the current filter length
+                                $(this).data("dt-iLastFilterLength", iCurrentFilterLength);
+                            }
                         }
+                        /* Filter on the column (the index) of this element */
+                        oTable.fnFilter(this.value, _fnColumnIndex(index), regex, smart); //Issue 37
+                        fnOnFiltered();
                     }
-                    /* Filter on the column (the index) of this element */
-                    oTable.fnFilter(this.value, _fnColumnIndex(index), regex, smart); //Issue 37
-                    fnOnFiltered();
                 });
             }

@@ -168,7 +172,8 @@
             input.blur(function () {
                 if (this.value == "") {
                     $(this).addClass("search_init");
-                    this.value = asInitVals[index];
+                    //this.value = asInitVals[index];
+                    this.value = "";
                 }
             });
         }
@@ -176,13 +181,25 @@
         function fnCreateRangeInput(oTable) {

             //var currentFilter = oTable.fnSettings().aoPreSearchCols[i].sSearch;
+
+            var label = "";
+            if (th.attr('id') == "bit_rate") {
+                label = $.i18n._("kbps");
+            } else if (th.attr('id') == "utime" || th.attr('id') == "mtime" || th.attr('id') == "lptime") {
+                label = $.i18n._("yyyy-mm-dd");
+            } else if (th.attr('id') == "length") {
+                label = $.i18n._("hh:mm:ss.t");
+            } else if (th.attr('id') == "sample_rate") {
+                label = $.i18n._("kHz");
+            }
+
             th.html(_fnRangeLabelPart(0));
             var sFromId = oTable.attr("id") + '_range_from_' + i;
-            var from = $('<input type="text" class="number_range_filter" id="' + sFromId + '" rel="' + i + '"/>');
+            var from = $('<input type="text" class="number_range_filter" id="' + sFromId + '" rel="' + i + '" placeholder="' + label + '"/>');
             th.append(from);
             th.append(_fnRangeLabelPart(1));
             var sToId = oTable.attr("id") + '_range_to_' + i;
-            var to = $('<input type="text" class="number_range_filter" id="' + sToId + '" rel="' + i + '"/>');
+            var to = $('<input type="text" class="number_range_filter" id="' + sToId + '" rel="' + i + '" placeholder="' + label + '"/>');
             th.append(to);
             th.append(_fnRangeLabelPart(2));
             th.wrapInner('<span class="filterColumn filter_number_range" />');
@@ -228,14 +245,16 @@


             $('#' + sFromId + ',#' + sToId, th).keyup(function () {
-
-                var iMin = document.getElementById(sFromId).value * 1;
-                var iMax = document.getElementById(sToId).value * 1;
-                if (iMin != 0 && iMax != 0 && iMin > iMax)
-                    return;
-
-                oTable.fnDraw();
-                fnOnFiltered();
+                var advSearchFields = $("div#advanced_search").children(':visible');
+                if(validateAdvancedSearch(advSearchFields)){
+                    var iMin = document.getElementById(sFromId).value * 1;
+                    var iMax = document.getElementById(sToId).value * 1;
+                    if (iMin != 0 && iMax != 0 && iMin > iMax)
+                        return;
+
+                    oTable.fnDraw();
+                    fnOnFiltered();
+                }
             });


@@ -566,7 +585,7 @@
             sRangeSeparator: "~",
             iFilteringDelay: 500,
             aoColumns: null,
-            sRangeFormat: "From {from} to {to}"
+            sRangeFormat: $.i18n._("From {from} to {to}")
         };

         properties = $.extend(defaults, options);
@@ -730,4 +749,4 @@



-})(jQuery);
\ No newline at end of file
+})(jQuery);
