]> code.delx.au - comingnext/commitdiff
fixed DayEvents to be shown although they already passed (+12h bug in WRT API)
authorMichael Prager <michael@pragers.de>
Sat, 5 Sep 2009 14:18:32 +0000 (16:18 +0200)
committerMichael Prager <michael@pragers.de>
Sat, 5 Sep 2009 14:18:32 +0000 (16:18 +0200)
Readme.txt
build.bat
comingNext/Info.plist
comingNext/index.html
comingNextB/Info.plist
comingNextB/index.html

index 55203bd9b4aea891b773b22ff755e9186dc5c975..2679f205e767ecf66f6ca6a01a7a6235f9067074 100644 (file)
@@ -7,6 +7,8 @@ on your N97 homescreen. It consists of two seperate widgets, each displaying
 4 events.\r
 \r
 For more info or to report bugs, please refere to \r
 4 events.\r
 \r
 For more info or to report bugs, please refere to \r
+http://sourceforge.net/projects/comingnext\r
+  and\r
 http://www.symbian-freak.com/forum/viewtopic.php?t=38045\r
 \r
 You can change the appearance (background color, font color, font size etc.) \r
 http://www.symbian-freak.com/forum/viewtopic.php?t=38045\r
 \r
 You can change the appearance (background color, font color, font size etc.) \r
@@ -146,4 +148,6 @@ Changelog:
     in the list. This behaviour and the text can be changed in the settings\r
 1.19 (2009-09-04) by Oxidative\r
   - refixed problems that 1.18 should have solved (todos not showing, entries \r
     in the list. This behaviour and the text can be changed in the settings\r
 1.19 (2009-09-04) by Oxidative\r
   - refixed problems that 1.18 should have solved (todos not showing, entries \r
-    showing twice)
\ No newline at end of file
+    showing twice)\r
+1.20 (2009-09-05) by Oxidative\r
+  - fixed memos to show although they have already passed
\ No newline at end of file
index d720b8c9d3a47c0c96b190d42b91c06181e26490..bb55d31a62e9e290af1cc59ebff647c66e21f7a4 100644 (file)
--- a/build.bat
+++ b/build.bat
@@ -1,6 +1,6 @@
 @echo off\r
 \r
 @echo off\r
 \r
-set VERSION=1.19\r
+set VERSION=1.20\r
 \r
 del *.wgz\r
 del *.zip\r
 \r
 del *.wgz\r
 del *.zip\r
index 1e65795966b71e8c0aa010d9d1388a1b741961db..33921c78d9e8631441ee576368f68e13b9cdc597 100644 (file)
@@ -2,9 +2,9 @@
 <!DOCTYPE plist PUBLIC "-//Nokia//DTD PLIST 1.0//EN" "http://www.nokia.com/NOKIA_COM_1/DTDs/plist-1.0.dtd">\r
 <plist version="1.0">\r
 <dict>\r
 <!DOCTYPE plist PUBLIC "-//Nokia//DTD PLIST 1.0//EN" "http://www.nokia.com/NOKIA_COM_1/DTDs/plist-1.0.dtd">\r
 <plist version="1.0">\r
 <dict>\r
-       <key>DisplayName</key>                  <string>Coming Next 1.19</string>\r
+       <key>DisplayName</key>                  <string>Coming Next 1.20</string>\r
        <key>Identifier</key>                   <string>ar.com.cochambre.symbian.wrt.comingnext</string>\r
        <key>Identifier</key>                   <string>ar.com.cochambre.symbian.wrt.comingnext</string>\r
-       <key>Version</key>                      <string>1.19</string>\r
+       <key>Version</key>                      <string>1.20</string>\r
        <key>MainHTML</key>                     <string>index.html</string>\r
        <key>AllowNetworkAccess</key>           <false />\r
        <key>MiniViewEnabled</key>              <true/> \r
        <key>MainHTML</key>                     <string>index.html</string>\r
        <key>AllowNetworkAccess</key>           <false />\r
        <key>MiniViewEnabled</key>              <true/> \r
index 4a1c267ec53247c16923a8a2fa311785964bf3e2..5ce4fd4bc951fb706a9e72bd6eed7493ed32c7ed 100644 (file)
@@ -370,6 +370,7 @@ function updateData(){
                                        eventIds[entry.id] = 1;\r
                                }                                                       \r
 \r
                                        eventIds[entry.id] = 1;\r
                                }                                                       \r
 \r
+                               // skip events for the first panel in case this is the second one\r
                                if (panelNum == 1 && counter < eventsPerWidget + 1)\r
                                        continue;\r
 \r
                                if (panelNum == 1 && counter < eventsPerWidget + 1)\r
                                        continue;\r
 \r
@@ -391,31 +392,40 @@ function updateData(){
                                \r
                                // Convert date/time string to Date object\r
                                var date = parseDate(entryDate);\r
                                \r
                                // Convert date/time string to Date object\r
                                var date = parseDate(entryDate);\r
-                               console.info(date);\r
+                               console.info('date: ' + date);\r
+                               var endDate = ((entryEndTime == null) ? null : parseDate(entryEndTime));\r
+                               console.info('endDate: ' + endDate);\r
                                \r
                                \r
-                               // check if event has already passed\r
-                               if (entry.Type == 'Meeting' || entry.Type == 'Reminder'){\r
-                                       if (entryEndTime == null){\r
-                                               if (now.getTime() > date.getTime()){\r
-                                                       counter--;\r
-                                                       continue;\r
-                                               }\r
-                                       }else if (entryEndTime != null){\r
-                                               var endDate = parseDate(entryEndTime);\r
-                                               if (now.getTime() > endDate.getTime()){\r
-                                                       counter--;\r
-                                                       continue;\r
-                                               }\r
+                               // check if meeting event has already passed\r
+                               if (entry.Type == 'Meeting'){\r
+                                       var compareTime = ((endDate == null) ? date.getTime() : endDate.getTime());\r
+                                       if (now.getTime() > compareTime){\r
+                                               console.info('skipped (already passed) ' + entry.id);\r
+                                               counter--;\r
+                                               continue;\r
                                        }\r
                                }\r
                                \r
                                        }\r
                                }\r
                                \r
+                               // fix DayEvents end time. A bug in WRT causes end times to be off by +12 hours. It's possible that the event has already passed\r
+                               if (entry.Type == 'DayEvent' && endDate != null){\r
+                                       endDate.setHours(endDate.getHours() - 12);\r
+                                       endDate.setMinutes(endDate.getMinutes() - 1);\r
+                                       console.info('fixing DayEvent endDate: ' + endDate);\r
+                                       if (now.getTime() > endDate.getTime()){\r
+                                               console.info('event already passed');\r
+                                               counter--;\r
+                                               continue;                                               \r
+                                       }\r
+                               }\r
+\r
                                // check if the event is currently taking place\r
                                // check if the event is currently taking place\r
-                               if (entryStartTime != null && entryEndTime != null && date != null)\r
+                               if (entryStartTime != null && entryEndTime != null && date != null && endDate != null)\r
                                {\r
                                        // check if we are between start and endtime\r
                                {\r
                                        // check if we are between start and endtime\r
-                                       var endDate = parseDate(entryEndTime);\r
-                                       if (endDate != null && (date.getTime() < now.getTime()) && (now.getTime() < endDate.getTime()))\r
+                                       if ((date.getTime() < now.getTime()) && (now.getTime() < endDate.getTime())) {\r
                                                date = now; // change appointment date/time to now\r
                                                date = now; // change appointment date/time to now\r
+                                               console.info('event is currently taking place: ' + date);\r
+                                       }\r
                                }\r
                                \r
                                // generate html output\r
                                }\r
                                \r
                                // generate html output\r
index 34a0b896701fe8f02a5cad2f8972edbd5e51a539..0706ad0b4db06691bbd56abc35c5f1340fb75f9f 100644 (file)
@@ -2,9 +2,9 @@
 <!DOCTYPE plist PUBLIC "-//Nokia//DTD PLIST 1.0//EN" "http://www.nokia.com/NOKIA_COM_1/DTDs/plist-1.0.dtd">\r
 <plist version="1.0">\r
 <dict>\r
 <!DOCTYPE plist PUBLIC "-//Nokia//DTD PLIST 1.0//EN" "http://www.nokia.com/NOKIA_COM_1/DTDs/plist-1.0.dtd">\r
 <plist version="1.0">\r
 <dict>\r
-       <key>DisplayName</key>                  <string>Coming Next B 1.19</string>\r
+       <key>DisplayName</key>                  <string>Coming Next B 1.20</string>\r
        <key>Identifier</key>                   <string>ar.com.cochambre.symbian.wrt.comingnextb</string>\r
        <key>Identifier</key>                   <string>ar.com.cochambre.symbian.wrt.comingnextb</string>\r
-       <key>Version</key>                      <string>1.19</string>\r
+       <key>Version</key>                      <string>1.20</string>\r
        <key>MainHTML</key>                     <string>index.html</string>\r
        <key>AllowNetworkAccess</key>           <false />\r
        <key>MiniViewEnabled</key>              <true/> \r
        <key>MainHTML</key>                     <string>index.html</string>\r
        <key>AllowNetworkAccess</key>           <false />\r
        <key>MiniViewEnabled</key>              <true/> \r
index 4a5c0d6034883db28a4070fccbd1f32f095f5506..ead9bedb0cbf6e3fd228e396e2b5353f8f45f352 100644 (file)
@@ -370,6 +370,7 @@ function updateData(){
                                        eventIds[entry.id] = 1;\r
                                }                                                       \r
 \r
                                        eventIds[entry.id] = 1;\r
                                }                                                       \r
 \r
+                               // skip events for the first panel in case this is the second one\r
                                if (panelNum == 1 && counter < eventsPerWidget + 1)\r
                                        continue;\r
 \r
                                if (panelNum == 1 && counter < eventsPerWidget + 1)\r
                                        continue;\r
 \r
@@ -391,31 +392,40 @@ function updateData(){
                                \r
                                // Convert date/time string to Date object\r
                                var date = parseDate(entryDate);\r
                                \r
                                // Convert date/time string to Date object\r
                                var date = parseDate(entryDate);\r
-                               console.info(date);\r
+                               console.info('date: ' + date);\r
+                               var endDate = ((entryEndTime == null) ? null : parseDate(entryEndTime));\r
+                               console.info('endDate: ' + endDate);\r
                                \r
                                \r
-                               // check if event has already passed\r
-                               if (entry.Type == 'Meeting' || entry.Type == 'Reminder'){\r
-                                       if (entryEndTime == null){\r
-                                               if (now.getTime() > date.getTime()){\r
-                                                       counter--;\r
-                                                       continue;\r
-                                               }\r
-                                       }else if (entryEndTime != null){\r
-                                               var endDate = parseDate(entryEndTime);\r
-                                               if (now.getTime() > endDate.getTime()){\r
-                                                       counter--;\r
-                                                       continue;\r
-                                               }\r
+                               // check if meeting event has already passed\r
+                               if (entry.Type == 'Meeting'){\r
+                                       var compareTime = ((endDate == null) ? date.getTime() : endDate.getTime());\r
+                                       if (now.getTime() > compareTime){\r
+                                               console.info('skipped (already passed) ' + entry.id);\r
+                                               counter--;\r
+                                               continue;\r
                                        }\r
                                }\r
                                \r
                                        }\r
                                }\r
                                \r
+                               // fix DayEvents end time. A bug in WRT causes end times to be off by +12 hours. It's possible that the event has already passed\r
+                               if (entry.Type == 'DayEvent' && endDate != null){\r
+                                       endDate.setHours(endDate.getHours() - 12);\r
+                                       endDate.setMinutes(endDate.getMinutes() - 1);\r
+                                       console.info('fixing DayEvent endDate: ' + endDate);\r
+                                       if (now.getTime() > endDate.getTime()){\r
+                                               console.info('event already passed');\r
+                                               counter--;\r
+                                               continue;                                               \r
+                                       }\r
+                               }\r
+\r
                                // check if the event is currently taking place\r
                                // check if the event is currently taking place\r
-                               if (entryStartTime != null && entryEndTime != null && date != null)\r
+                               if (entryStartTime != null && entryEndTime != null && date != null && endDate != null)\r
                                {\r
                                        // check if we are between start and endtime\r
                                {\r
                                        // check if we are between start and endtime\r
-                                       var endDate = parseDate(entryEndTime);\r
-                                       if (endDate != null && (date.getTime() < now.getTime()) && (now.getTime() < endDate.getTime()))\r
+                                       if ((date.getTime() < now.getTime()) && (now.getTime() < endDate.getTime())) {\r
                                                date = now; // change appointment date/time to now\r
                                                date = now; // change appointment date/time to now\r
+                                               console.info('event is currently taking place: ' + date);\r
+                                       }\r
                                }\r
                                \r
                                // generate html output\r
                                }\r
                                \r
                                // generate html output\r