зеркало из https://github.com/mozilla/gecko-dev.git
Fixing bug 200085, adding in week numbers for month view and day view.
This commit is contained in:
Родитель
4175027e76
Коммит
1a2fc7defd
|
@ -469,9 +469,12 @@ DayView.prototype.refreshDisplay = function dayview_refreshDisplay( )
|
|||
dayNameNext1 = this.calendarWindow.dateFormater.getDayName( this.calendarWindow.getSelectedDate().getDay() + 1);
|
||||
dayNameNext2 = this.calendarWindow.dateFormater.getDayName( this.calendarWindow.getSelectedDate().getDay() + 2);
|
||||
}
|
||||
var monthName = this.calendarWindow.dateFormater.getMonthName( this.calendarWindow.getSelectedDate().getMonth() );
|
||||
|
||||
var dateString = monthName + " " + this.calendarWindow.getSelectedDate().getDate() + " " + this.calendarWindow.getSelectedDate().getFullYear();
|
||||
var weekNumber = DateUtils.getWeekNumber( this.calendarWindow.getSelectedDate() );
|
||||
|
||||
var weekViewStringBundle = srGetStrBundle("chrome://calendar/locale/calendar.properties");
|
||||
|
||||
var dateString = weekViewStringBundle.GetStringFromName( "Week" )+" "+weekNumber+ ": " + this.calendarWindow.dateFormater.getFormatedDate( this.calendarWindow.getSelectedDate() ) ;
|
||||
|
||||
var dayTextItemPrev2 = document.getElementById( "-2-day-title" );
|
||||
var dayTextItemPrev1 = document.getElementById( "-1-day-title" );
|
||||
|
|
|
@ -172,7 +172,7 @@ function MonthView( calendarWindow )
|
|||
|
||||
this.dayNumberItemArray = new Array();
|
||||
this.dayBoxItemArray = new Array();
|
||||
// this.weekNumberItemArray = new Array();
|
||||
this.weekNumberItemArray = new Array();
|
||||
this.kungFooDeathGripOnEventBoxes = new Array();
|
||||
this.firstDateOfView = new Date();
|
||||
this.lastDateOfView = new Date();
|
||||
|
@ -181,8 +181,8 @@ function MonthView( calendarWindow )
|
|||
|
||||
for( var weekIndex = 1; weekIndex <= 6; ++weekIndex )
|
||||
{
|
||||
// var weekNumberItem = document.getElementById( "month-week-" + weekIndex + "-left" );
|
||||
// this.weekNumberItemArray[ weekIndex ] = weekNumberItem;
|
||||
var weekNumberItem = document.getElementById( "month-week-" + weekIndex + "-left" );
|
||||
this.weekNumberItemArray[ weekIndex ] = weekNumberItem;
|
||||
|
||||
for( var dayIndex = 1; dayIndex <= 7; ++dayIndex )
|
||||
{
|
||||
|
@ -529,21 +529,21 @@ MonthView.prototype.refreshDisplay = function monthView_refreshDisplay( )
|
|||
document.getElementById( "month-week-6-row" ).removeAttribute( "collapsed" );
|
||||
}
|
||||
|
||||
// // To Set Week Number
|
||||
// var weekNumberItem;
|
||||
// var weekNumber ;
|
||||
// var mondayDate ;
|
||||
// var newoffset = (Offset >= 5) ? 8 -Offset : 1 - Offset ;
|
||||
// for( var weekIndex = 0; weekIndex < 6; ++weekIndex )
|
||||
// {
|
||||
// weekNumberItem = this.weekNumberItemArray[ weekIndex+1 ] ;
|
||||
// mondayDate = new Date( this.firstDateOfView.getFullYear(),
|
||||
// this.firstDateOfView.getMonth(),
|
||||
// this.firstDateOfView.getDate()+newoffset+7*weekIndex );
|
||||
// To Set Week Number
|
||||
var weekNumberItem;
|
||||
var weekNumber ;
|
||||
var mondayDate ;
|
||||
var newoffset = (Offset >= 5) ? 8 -Offset : 1 - Offset ;
|
||||
for( var weekIndex = 0; weekIndex < 6; ++weekIndex )
|
||||
{
|
||||
weekNumberItem = this.weekNumberItemArray[ weekIndex+1 ] ;
|
||||
mondayDate = new Date( this.firstDateOfView.getFullYear(),
|
||||
this.firstDateOfView.getMonth(),
|
||||
this.firstDateOfView.getDate()+newoffset+7*weekIndex );
|
||||
|
||||
// weekNumber=DateUtils.getWeekNumber(mondayDate);
|
||||
// weekNumberItem.setAttribute( "value" , weekNumber );
|
||||
// }
|
||||
weekNumber=DateUtils.getWeekNumber(mondayDate);
|
||||
weekNumberItem.setAttribute( "value" , weekNumber );
|
||||
}
|
||||
|
||||
// loop through all the day boxes
|
||||
|
||||
|
|
|
@ -118,6 +118,7 @@
|
|||
<box id="month-grid-box" flex="1">
|
||||
<grid id="month-grid" flex="1">
|
||||
<columns>
|
||||
<column id="month-view-leftcol" class="month-leftcol-class"/>
|
||||
<column id="month-view-column-1" class="month-column-class" flex="1"/>
|
||||
<column id="month-view-column-2" class="month-column-class" flex="1"/>
|
||||
<column id="month-view-column-3" class="month-column-class" flex="1"/>
|
||||
|
@ -129,6 +130,8 @@
|
|||
|
||||
<rows >
|
||||
<row id="month-week-header-row" flex="1">
|
||||
<vbox>
|
||||
</vbox>
|
||||
<vbox class="month-column-center-day-class">
|
||||
<label class="month-view-header-days" id="month-view-header-day-1"/>
|
||||
</vbox>
|
||||
|
@ -153,6 +156,11 @@
|
|||
</row>
|
||||
|
||||
<row id="month-week-1-row" flex="1" >
|
||||
<vbox class="month-leftcol-box-class" flex="1" id="month-week-1-left-box">
|
||||
<label class="week-short-text" value="&week.short;"/>
|
||||
<label class="month-leftcol-number-class" id="month-week-1-left"/>
|
||||
</vbox>
|
||||
|
||||
<vbox class="month-day-box-class" flex="1" id="month-week-1-day-1-box">
|
||||
<label class="month-day-number-class" id="month-week-1-day-1"/>
|
||||
</vbox>
|
||||
|
@ -183,6 +191,11 @@
|
|||
</row>
|
||||
|
||||
<row flex="1" >
|
||||
<vbox class="month-leftcol-box-class" flex="1" id="month-week-2-left-box">
|
||||
<label class="week-short-text" value="&week.short;" />
|
||||
<label class="month-leftcol-number-class" id="month-week-2-left"/>
|
||||
</vbox>
|
||||
|
||||
<vbox class="month-day-box-class" flex="1" id="month-week-2-day-1-box">
|
||||
<label class="month-day-number-class" id="month-week-2-day-1"/>
|
||||
</vbox>
|
||||
|
@ -213,6 +226,11 @@
|
|||
</row>
|
||||
|
||||
<row flex="1" >
|
||||
<vbox class="month-leftcol-box-class" flex="1" id="month-week-3-left-box">
|
||||
<label class="week-short-text" value="&week.short;" />
|
||||
<label class="month-leftcol-number-class" id="month-week-3-left"/>
|
||||
</vbox>
|
||||
|
||||
<vbox class="month-day-box-class" flex="1" id="month-week-3-day-1-box">
|
||||
<label class="month-day-number-class" id="month-week-3-day-1"/>
|
||||
</vbox>
|
||||
|
@ -243,6 +261,11 @@
|
|||
</row>
|
||||
|
||||
<row flex="1" >
|
||||
<vbox class="month-leftcol-box-class" flex="1" id="month-week-4-left-box">
|
||||
<label class="week-short-text" value="&week.short;" />
|
||||
<label class="month-leftcol-number-class" id="month-week-4-left"/>
|
||||
</vbox>
|
||||
|
||||
<vbox class="month-day-box-class" flex="1" id="month-week-4-day-1-box">
|
||||
<label class="month-day-number-class" id="month-week-4-day-1"/>
|
||||
</vbox>
|
||||
|
@ -273,6 +296,11 @@
|
|||
</row>
|
||||
|
||||
<row flex="1" >
|
||||
<vbox class="month-leftcol-box-class" flex="1" id="month-week-5-left-box">
|
||||
<label class="week-short-text" value="&week.short;" />
|
||||
<label class="month-leftcol-number-class" id="month-week-5-left"/>
|
||||
</vbox>
|
||||
|
||||
<vbox class="month-day-box-class" flex="1" id="month-week-5-day-1-box">
|
||||
<label class="month-day-number-class" id="month-week-5-day-1"/>
|
||||
</vbox>
|
||||
|
@ -303,6 +331,11 @@
|
|||
</row>
|
||||
|
||||
<row id="month-week-6-row" flex="1">
|
||||
<vbox class="month-leftcol-box-class" flex="1" id="month-week-6-left-box">
|
||||
<label class="week-short-text" value="&week.short;" />
|
||||
<label class="month-leftcol-number-class" id="month-week-6-left"/>
|
||||
</vbox>
|
||||
|
||||
<vbox class="month-day-box-class" flex="1" id="month-week-6-day-1-box">
|
||||
<label class="month-day-number-class" id="month-week-6-day-1"/>
|
||||
</vbox>
|
||||
|
|
|
@ -568,15 +568,19 @@ WeekView.prototype.refreshDisplay = function( )
|
|||
var firstDayOfWeek = new Date( viewYear, viewMonth, dateOfFirstDayInWeek );
|
||||
var lastDayOfWeek = new Date( viewYear, viewMonth, dateOfLastDayInWeek );
|
||||
|
||||
var firstDayMonthName = this.calendarWindow.dateFormater.getMonthName( firstDayOfWeek.getMonth() );
|
||||
var lastDayMonthName = this.calendarWindow.dateFormater.getMonthName( lastDayOfWeek.getMonth() );
|
||||
var firstDayMonthName = this.calendarWindow.dateFormater.getFormatedDateWithoutYear( firstDayOfWeek );
|
||||
var lastDayMonthName = this.calendarWindow.dateFormater.getFormatedDateWithoutYear( lastDayOfWeek );
|
||||
|
||||
var weekNumber = this.getWeekNumber();
|
||||
var newoffset = (Offset >= 5) ? 8 -Offset : 1 - Offset ;
|
||||
var mondayDate = new Date( firstDayOfWeek.getFullYear(),
|
||||
firstDayOfWeek.getMonth(),
|
||||
firstDayOfWeek.getDate()+newoffset );
|
||||
|
||||
var weekNumber = DateUtils.getWeekNumber(mondayDate);
|
||||
|
||||
var weekViewStringBundle = srGetStrBundle("chrome://calendar/locale/calendar.properties");
|
||||
|
||||
var dateString = weekViewStringBundle.GetStringFromName( "Week" )+" "+weekNumber+ ": "+firstDayMonthName + " " + firstDayOfWeek.getDate() + " - " +
|
||||
lastDayMonthName + " " + lastDayOfWeek.getDate();
|
||||
var dateString = weekViewStringBundle.GetStringFromName( "Week" )+" "+weekNumber+ ": "+firstDayMonthName + " - " + lastDayMonthName ;
|
||||
|
||||
var weekTextItem = document.getElementById( "week-title-text" );
|
||||
weekTextItem.setAttribute( "value" , dateString );
|
||||
|
@ -830,25 +834,3 @@ WeekView.prototype.clearSelectedDate = function( )
|
|||
SelectedBoxes[i].removeAttribute( "weekselected" );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
WeekView.prototype.getWeekNumber = function()
|
||||
{
|
||||
var today = new Date( this.calendarWindow.getSelectedDate() );
|
||||
var Year = today.getYear() + 1900;
|
||||
var Month = today.getMonth();
|
||||
var Day = today.getDate();
|
||||
var now = new Date(Year,Month,Day+1);
|
||||
now = now.getTime();
|
||||
var Firstday = new Date( this.calendarWindow.getSelectedDate() );
|
||||
Firstday.setYear(Year);
|
||||
Firstday.setMonth(0);
|
||||
Firstday.setDate(1);
|
||||
var then = new Date(Year,0,1);
|
||||
then = then.getTime();
|
||||
var Compensation = Firstday.getDay();
|
||||
if (Compensation > 3) Compensation -= 4;
|
||||
else Compensation += 3;
|
||||
NumberOfWeek = Math.round((((now-then)/86400000)+Compensation)/7);
|
||||
return NumberOfWeek;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче