Code Duplication    Length = 26-26 lines in 2 locations

code/adapters/ShopSearchSolr.php 2 locations

@@ 415-440 (lines=26) @@
412
            $fq[] = '+('.implode(' ', $requireq).')';
413
        }
414
415
        foreach ($query->exclude as $field => $values) {
416
            $excludeq = array();
417
            $missing = false;
418
419
            foreach ($values as $value) {
420
                if ($value === SearchQuery::$missing) {
421
                    $missing = true;
422
                } elseif ($value === SearchQuery::$present) {
423
                    $excludeq[] = "{$field}:[* TO *]";
424
                } elseif ($value instanceof SearchQuery_Range) {
425
                    $start = $value->start;
426
                    if ($start === null) {
427
                        $start = '*';
428
                    }
429
                    $end = $value->end;
430
                    if ($end === null) {
431
                        $end = '*';
432
                    }
433
                    $excludeq[] = "$field:[$start TO $end]";
434
                } else {
435
                    $excludeq[] = $field.':"'.$value.'"';
436
                }
437
            }
438
439
            $fq[] = ($missing ? "+{$field}:[* TO *] " : '') . '-('.implode(' ', $excludeq).')';
440
        }
441
442
//		if(!headers_sent()) {
443
//			if ($q) header('X-Query: '.implode(' ', $q));
@@ 610-635 (lines=26) @@
607
            $fq[] = '+('.implode(' ', $requireq).')';
608
        }
609
610
        foreach ($query->exclude as $field => $values) {
611
            $excludeq = array();
612
            $missing = false;
613
614
            foreach ($values as $value) {
615
                if ($value === SearchQuery::$missing) {
616
                    $missing = true;
617
                } elseif ($value === SearchQuery::$present) {
618
                    $excludeq[] = "{$field}:[* TO *]";
619
                } elseif ($value instanceof SearchQuery_Range) {
620
                    $start = $value->start;
621
                    if ($start === null) {
622
                        $start = '*';
623
                    }
624
                    $end = $value->end;
625
                    if ($end === null) {
626
                        $end = '*';
627
                    }
628
                    $excludeq[] = "$field:[$start TO $end]";
629
                } else {
630
                    $excludeq[] = $field.':"'.$value.'"';
631
                }
632
            }
633
634
            $fq[] = ($missing ? "+{$field}:[* TO *] " : '') . '-('.implode(' ', $excludeq).')';
635
        }
636
637
//		if(!headers_sent()) {
638
//			if ($q) header('X-Query: '.implode(' ', $q));