Django

Code

Ticket #2975: dateparse.js.diff

File dateparse.js.diff, 2.4 kB (added by rich@tablexi.com, 3 years ago)

More complete fix of this issue.

  • dateparse.js

    old new  
    100100    {   re: /^(\d{1,2})(?:st|nd|rd|th)? (\w+)$/i,  
    101101        handler: function(bits) { 
    102102            var d = new Date(); 
     103            d.setDate(1); 
     104            d.setMonth(parseMonth(bits[2])); 
    103105            d.setDate(parseInt(bits[1], 10)); 
    104             d.setMonth(parseMonth(bits[2])); 
    105106            return d; 
    106107        } 
    107108    }, 
     
    109110    {   re: /^(\d{1,2})(?:st|nd|rd|th)? (\w+),? (\d{4})$/i, 
    110111        handler: function(bits) { 
    111112            var d = new Date(); 
     113            d.setDate(1); 
     114            d.setYear(bits[3]); 
     115            d.setMonth(parseMonth(bits[2])); 
    112116            d.setDate(parseInt(bits[1], 10)); 
    113             d.setMonth(parseMonth(bits[2])); 
    114             d.setYear(bits[3]); 
    115117            return d; 
    116118        } 
    117119    }, 
     
    119121    {   re: /^(\w+) (\d{1,2})(?:st|nd|rd|th)?$/i,  
    120122        handler: function(bits) { 
    121123            var d = new Date(); 
     124            d.setDate(1); 
     125            d.setMonth(parseMonth(bits[1])); 
    122126            d.setDate(parseInt(bits[2], 10)); 
    123             d.setMonth(parseMonth(bits[1])); 
    124127            return d; 
    125128        } 
    126129    }, 
     
    128131    {   re: /^(\w+) (\d{1,2})(?:st|nd|rd|th)?,? (\d{4})$/i, 
    129132        handler: function(bits) { 
    130133            var d = new Date(); 
     134            d.setDate(1); 
     135            d.setYear(bits[3]); 
     136            d.setMonth(parseMonth(bits[1])); 
    131137            d.setDate(parseInt(bits[2], 10)); 
    132             d.setMonth(parseMonth(bits[1])); 
    133             d.setYear(bits[3]); 
    134138            return d; 
    135139        } 
    136140    }, 
     
    158162    {   re: /(\d{1,2})\/(\d{1,2})\/(\d{4})/, 
    159163        handler: function(bits) { 
    160164            var d = new Date(); 
     165            d.setDate(1); 
    161166            d.setYear(bits[3]); 
     167            d.setMonth(parseInt(bits[1], 10) - 1); // Because months indexed from 0 
    162168            d.setDate(parseInt(bits[2], 10)); 
    163             d.setMonth(parseInt(bits[1], 10) - 1); // Because months indexed from 0 
    164169            return d; 
    165170        } 
    166171    }, 
     
    168173    {   re: /(\d{4})-(\d{1,2})-(\d{1,2})/, 
    169174        handler: function(bits) { 
    170175            var d = new Date(); 
     176            d.setDate(1); 
    171177            d.setYear(parseInt(bits[1])); 
    172178            d.setMonth(parseInt(bits[2], 10) - 1); 
    173179            d.setDate(parseInt(bits[3], 10));