Closed Bug 191508 Opened 22 years ago Closed 21 years ago

Calendar month names in top left aren't localized

Categories

(Calendar :: Sunbird Only, defect)

x86
All
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: kairo, Assigned: mikeypotter)

References

Details

(Keywords: l12y)

The top left part of the window (upper part of sidebar) has an additional
calendar view that is not localizable. This includes the tab labels
"Calendar"/"Calendars" as well as the Month names and the "Go to today" button.
Blocks: 190457
The top left XUL files are all changed.
The month names come from the calendar.xml file which still needs to be localized.
Changing summary.
The change needs to be made in content/datepicker/calendar.xml
Summary: Calendar View on top left is not localizable → Calendar month names in top left aren't localized
I haven't much idea of Javascript. But, maybe the issue of the hardcoded month
names array will be solved if you will give indices as value to the array. In
any case it isn't allowed to type English month names into the calendar.xml.
I think I found the solution. 

Replace in /content/datepicker/calendar.xml the line 
var monthNames = ["January", "February", "..."];
by the lines

<-- begin of the text
this.dateStringBundle =
srGetStrBundle("chrome://calendar/locale/dateFormat.properties");
         var monthNames=new Array(12);
monthNames[0]=this.dateStringBundle.GetStringFromName("month.1.name" );
monthNames[1]=this.dateStringBundle.GetStringFromName("month.2.name" );
monthNames[2]=this.dateStringBundle.GetStringFromName("month.3.name" );
monthNames[3]=this.dateStringBundle.GetStringFromName("month.4.name" );
monthNames[4]=this.dateStringBundle.GetStringFromName("month.5.name" );
monthNames[5]=this.dateStringBundle.GetStringFromName("month.6.name" );
monthNames[6]=this.dateStringBundle.GetStringFromName("month.7.name" );
monthNames[7]=this.dateStringBundle.GetStringFromName("month.8.name" );
monthNames[8]=this.dateStringBundle.GetStringFromName("month.9.name" );
monthNames[9]=this.dateStringBundle.GetStringFromName("month.10.name" );
monthNames[10]=this.dateStringBundle.GetStringFromName("month.11.name" );
monthNames[11]=this.dateStringBundle.GetStringFromName("month.12.name" );

end of the text --> 

I found those lines in printDialog.js. The advantage is that any translation
isn't necessary because the keys (e.g. month.0.name, nonth.1.name)have been
already defined in the file dateFormat.properties and thus translated. 
Thanks, fixed in cvs.
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
To Mike: Wow, you are quick!
*** Bug 208919 has been marked as a duplicate of this bug. ***
The bugspam monkeys have been set free and are feeding on Calendar :: Sunbird Only. Be afraid for your sanity!
QA Contact: gurganbl → sunbird
You need to log in before you can comment on or make changes to this bug.