var calendarService = null;\r
var cacheEntriesHtml = [];\r
var months_translated = [];\r
+var weekdays_translated = [];\r
var orientation = '';\r
var now = new Date();\r
var mode = 0; // 0 = homescreen, 1 = fullscreen, 2 = settings, 3 = about, 4 = check for update\r
error("collectLocales: " + e + ', line ' + e.line);\r
}\r
}\r
+ for (weekday = 0; weekday < 7; weekday++) {\r
+ var startDate = new Date(2000, 0, 2 + weekday); // date that we know for sure is a sunday\r
+\r
+ var item = new Object();\r
+ item.Type = "DayEvent";\r
+ item.StartTime = startDate;\r
+ item.Summary = "__weekday_temp" + weekday;\r
+\r
+ var criteria = new Object();\r
+ criteria.Type = "CalendarEntry";\r
+ criteria.Item = item;\r
+\r
+ try {\r
+ var result = calendarService.IDataSource.Add(criteria);\r
+ if (result.ErrorCode)\r
+ throw(result.ErrorMessage);\r
+ } catch (e) {\r
+ error("collectLocales: " + e + ', line ' + e.line);\r
+ }\r
+ }\r
try {\r
var startTime = new Date(tmpyear,0,1);\r
var endTime = new Date(tmpyear,11,31);\r
error("collectLocales: " + e + ', line ' + e.line);\r
return;\r
}\r
+ try {\r
+ var startTime = new Date(2000,0,2);\r
+ var endTime = new Date(2000,0,9);\r
+ var listFiltering = {\r
+ Type:'CalendarEntry', \r
+ Filter:{\r
+ StartRange: startTime,\r
+ EndRange: endTime,\r
+ SearchText: '__weekday_temp',\r
+ Type: 'DayEvent'\r
+ }\r
+ }\r
+ var result = calendarService.IDataSource.GetList(listFiltering);\r
+ if (result.ErrorCode)\r
+ throw(result.ErrorMessage);\r
+ var weekdaylist = result.ReturnValue;\r
+ } catch(e) {\r
+ error("collectLocales: " + e + ', line ' + e.line);\r
+ return;\r
+ }\r
+ try {\r
+ var entry;\r
+ var counter2 = 0;\r
+ var curWeekday = "";\r
+\r
+ while (weekdaylist && (entry = weekdaylist.getNext()) != undefined) {\r
+ curWeekday = (entry.StartTime + '').split(',')[0];\r
+ log(entry.StartTime + ' -> ' + curWeekday + ' ' + counter2);\r
+ ids[counter + counter2] = entry.id;\r
+ weekdays_translated[counter2] = curWeekday;\r
+ counter2++;\r
+ }\r
+ } catch(e) {\r
+ error("collectLocales: " + e + ', line ' + e.line);\r
+ return;\r
+ }\r
log(ids);\r
try {\r
var criteria = new Object();\r
return result;\r
}\r
\r
+function getWeekdayLocalized(date) {\r
+ var localizedString = date.toLocaleDateString();\r
+ if (localizedString.match(/\d\d\/\d\d\/\d\d/)) {\r
+ return weekdays_translated[date.getDay()];\r
+ } else\r
+ return localizedString.split(',')[0];\r
+}\r
+\r
// returns a short date as string ("31.12" or "12.31") based on the format string which should look like "Wednesday, 26 August, 2009 12:00:00 am"\r
function formatDate(date, format)\r
{\r
// some languages have very strange locale date formats, can't parse all those. Also some todos don't have dates at all.\r
entriesHtml += '<td colspan="4"><span class="date">' + entryDate + '</span> ';\r
} else {\r
- var weekDay = date.toLocaleDateString().substr(0,config['weekDayLength'].Value);\r
+ var weekDay = getWeekdayLocalized(date).substr(0,config['weekDayLength'].Value);\r
+ log('date.toLocaleDateString(): ' + date.toLocaleDateString());\r
+ log('weekDay: ' + weekDay);\r
var time = formatTime(date);\r
var dateStr = formatDate(date, entryDate);\r
if (entry.Type == 'ToDo' && overdue && config['markOverdueTodos'].Value) {\r