source: trunk/web/addons/job_monarch/lib/extjs/air/samples/tasks/js/TextDate.js @ 619

Last change on this file since 619 was 619, checked in by ramonb, 15 years ago

lib/:

  • added new AJAX dependancies: ExtJS, pChart, Lightbox2
File size: 1.6 KB
Line 
1/*
2 * Ext JS Library 0.30
3 * Copyright(c) 2006-2009, Ext JS, LLC.
4 * licensing@extjs.com
5 *
6 * http://extjs.com/license
7 */
8
9// generates a renderer function to be used for textual date groups
10Ext.util.Format.createTextDateRenderer = function(){
11    // create the cache of ranges to be reused
12    var today = new Date().clearTime(true);
13    var year = today.getFullYear();
14    var todayTime = today.getTime();
15    var yesterday = today.add('d', -1).getTime();
16    var tomorrow = today.add('d', 1).getTime();
17    var weekDays = today.add('d', 6).getTime();
18    var lastWeekDays = today.add('d', -6).getTime();
19
20    var weekAgo1 = today.add('d', -13).getTime();
21    var weekAgo2 = today.add('d', -20).getTime();
22    var weekAgo3 = today.add('d', -27).getTime();
23
24    var f = function(date){
25        if(!date) {
26            return '(No Date)';
27        }
28        var notime = date.clearTime(true).getTime();
29
30        if (notime == todayTime) {
31            return 'Today';
32        }
33        if(notime > todayTime){
34            if (notime == tomorrow) {
35                return 'Tomorrow';
36            }
37            if (notime <= weekDays) {
38                return date.format('l');
39            }
40        }else {
41                if(notime == yesterday) {
42                return 'Yesterday';
43            }
44            if(notime >= lastWeekDays) {
45                return 'Last ' + date.format('l');
46            }
47        }           
48        return date.getFullYear() == year ? date.format('D m/d') : date.format('D m/d/Y');
49   };
50   
51   f.date = today;
52   return f;
53};
Note: See TracBrowser for help on using the repository browser.