There is a javascript error on line 98 in module_filter.js when using IE8, while everything is doing fine with firefox, chrome and safari.

After digging in code, I saw that for some reason the loop in queryStrings was going through extra key values under IE8 (input, index and lastIndex) causing a non supported property error. As a fix I added a filter to not process those keys if encountered. So I suggest the following change :

for (var i in queryStrings) {
  ++ if ( i != 'input' && i != 'index' && i != 'lastIndex') { 
        var query = { operator: 'text', string: queryStrings[i] };
          if ( self.operators != undefined) {
            // Check if an operator is possibly used.
            if (queryStrings[i].indexOf(':') > 0) {
              // Determine operator used.
              var args = queryStrings[i].split(':', 2);
              var operator = args.shift();
              if (self.operators[operator] != undefined) {
                query.operator = operator;
              query.string = args.shift();
            }
          }
        }
        query.string = query.string.toLowerCase();
        self.queries.push(query);
  ++}
}

I hope this will help to have this IE8 issue fixed in a next release.

Comments

Devline’s picture

Issue summary: View changes

Updated due to an error in code tag

smustgrave’s picture

Issue summary: View changes
Status: Active » Closed (outdated)

Closing as outdated after 11 years as we transition to Drupal 10.

I'm keeping an eye on the 7.x branch of this module, reviews and majors, but active work is going toward 4.x (supporting D10)