.now { }\r
.description { }\r
.icon { }\r
+.overdue {}\r
</style>\r
\r
<script type="text/javascript" src="localizedTextStrings.js" charset="utf-8" />\r
tomorrowText: { Type: 'String', Default: getLocalizedText('settings.default.tomorrowText'), Value: getLocalizedText('settings.default.tomorrowText'),},\r
showNowAsText: { Type: 'Bool', Default: true, Value: true,},\r
nowText: { Type: 'String', Default: getLocalizedText('settings.default.nowText'), Value: getLocalizedText('settings.default.nowText'),},\r
+ markOverdueTodos: { Type: 'Bool', Default: true, Value: true,},\r
+ overdueText: {Type: 'String', Default: getLocalizedText('settings.default.overdueText'), Value: getLocalizedText('settings.default.overdueText'),},\r
dateSeparator: { Type: 'String', Default: getLocalizedText('settings.default.dateSeparator'), Value: getLocalizedText('settings.default.dateSeparator'),},\r
dateFormat: { Type: 'Enum', Default: 'auto', Value: 'auto', ValidValues: ['auto', 'DDMM', 'MMDD'],},\r
weekDayLength: { Type: 'Int', Default: 2, Value: 2,},\r
cssStyle_now: { Type: 'String', Default: 'color:#ff00ff', Value: 'color:#ff00ff',},\r
cssStyle_description: { Type: 'String', Default: '', Value: '',},\r
cssStyle_icon: { Type: 'String', Default: 'width:15px; height:15px', Value: 'width:15px; height:15px',},\r
+ cssStyle_overdue: { Type: 'String', Default: 'color:#ffff00', Value: 'color:#ffff00',},\r
}\r
\r
\r
console.info('skipping (already in first widget) ' + entry.id);\r
continue;\r
}\r
+ \r
+ // mark overdue todos\r
+ var overdue = false;\r
+ if (entry.Type == 'ToDo') {\r
+ var tmp1 = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 0,0,0);\r
+ var tmp2 = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 0,0,0);\r
+ if (tmp1.getTime() < tmp2.getTime()) {\r
+ overdue = true;\r
+ }\r
+ }\r
\r
// generate html output\r
entriesHtml += '<tr><td><img class="icon" src="' + entry.Type + '.png" /></td>';\r
var weekDay = date.toLocaleDateString().substr(0,config['weekDayLength'].Value);\r
var time = formatTime(date);\r
var dateStr = formatDate(date, entryDate);\r
- if (entry.Type == 'ToDo' || entry.Type == 'Anniversary' || entry.Type == 'DayEvent' || entry.Type == 'Reminder') {\r
+ if (entry.Type == 'ToDo' && overdue && config['markOverdueTodos'].Value) {\r
+ dateStr = '<span class="overdue">Overdue</span>';\r
+ entriesHtml += '<td colspan="4" width="1px"><span class="date">' + dateStr + '</span> ';\r
+ } else if (entry.Type == 'ToDo' || entry.Type == 'Anniversary' || entry.Type == 'DayEvent' || entry.Type == 'Reminder') {\r
if ((isToday(date) || isTomorrow(date)) && config['showTodayAsText'].Value) // show weekday if the date string is not text. looks odd otherwise\r
entriesHtml += '<td colspan="4" width="1px"><span class="date">' + dateStr + '</span> ';\r
else\r