Code Duplication    Length = 5-5 lines in 4 locations

code/MSSQLDatabase.php 4 locations

@@ 551-555 (lines=5) @@
548
            }
549
        }
550
551
        if (preg_match('/^now$/i', $date)) {
552
            $date = "CURRENT_TIMESTAMP";
553
        } elseif (preg_match('/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/i', $date)) {
554
            $date = "'$date.000'";
555
        }
556
557
        if ($format == '%U') {
558
            return "DATEDIFF(s, '1970-01-01 00:00:00', DATEADD(hour, DATEDIFF(hour, GETDATE(), GETUTCDATE()), $date))";
@@ 629-633 (lines=5) @@
626
            user_error('datetimeIntervalClause(): invalid interval ' . $interval, E_USER_WARNING);
627
        }
628
629
        if (preg_match('/^now$/i', $date)) {
630
            $date = "CURRENT_TIMESTAMP";
631
        } elseif (preg_match('/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/i', $date)) {
632
            $date = "'$date'";
633
        }
634
635
        return "CONVERT(VARCHAR, DATEADD(" . $trans[strtolower($matches[2])] . ", " . (int)$matches[1] . ", $date), 120)";
636
    }
@@ 648-652 (lines=5) @@
645
     */
646
    public function datetimeDifferenceClause($date1, $date2)
647
    {
648
        if (preg_match('/^now$/i', $date1)) {
649
            $date1 = "CURRENT_TIMESTAMP";
650
        } elseif (preg_match('/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/i', $date1)) {
651
            $date1 = "'$date1'";
652
        }
653
654
        if (preg_match('/^now$/i', $date2)) {
655
            $date2 = "CURRENT_TIMESTAMP";
@@ 654-658 (lines=5) @@
651
            $date1 = "'$date1'";
652
        }
653
654
        if (preg_match('/^now$/i', $date2)) {
655
            $date2 = "CURRENT_TIMESTAMP";
656
        } elseif (preg_match('/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/i', $date2)) {
657
            $date2 = "'$date2'";
658
        }
659
660
        return "DATEDIFF(s, $date2, $date1)";
661
    }