- (NSCalendarDate *)selectedDate {
NSString *s;
NSCalendarDate *cdate;
-
+
s = [self queryParameterForKey:@"day"];
cdate = ([s length] > 0)
? [self dateForDateString:s]
: [NSCalendarDate date];
[cdate setTimeZone:[self viewTimeZone]];
+ s = [self queryParameterForKey:@"hm"];
+ if([s length] == 4) {
+ unsigned hour, minute;
+
+ hour = [[s substringToIndex:2] unsignedIntValue];
+ minute = [[s substringFromIndex:2] unsignedIntValue];
+ cdate = [cdate hour:hour minute:minute];
+ }
+ else {
+ cdate = [cdate hour:12 minute:0];
+ }
return cdate;
}
}
- (NSCalendarDate *)dateForDateString:(NSString *)_dateString {
- NSTimeZone *tz;
-
- tz = [self viewTimeZone];
- /* Note: we should give a time, best is noon to avoid edge conditions */
- _dateString = [_dateString stringByAppendingFormat:@"12:00:00 %@",
- [tz abbreviation]];
return [NSCalendarDate dateWithString:_dateString
- calendarFormat:@"%Y%m%d %H:%M:%S %Z"];
+ calendarFormat:@"%Y%m%d"];
}