(fix) Tasks list sorting

pull/91/head
Francis Lachapelle 2015-07-09 16:18:03 -04:00
parent 6f6ec58a09
commit 9a3aeb0004
3 changed files with 13 additions and 6 deletions

View File

@ -61,6 +61,12 @@
#define taskEditableIndex 9
#define taskErasableIndex 10
#define taskPriorityIndex 11
#define taskOwnerIndex 12
#define taskIsCycleIndex 13
#define taskNextAlarmIndex 14
#define taskRecurrenceIdIndex 15
#define taskIsExceptionIndex 16
#define taskDescriptionIndex 17
@interface NSArray (SOGoEventComparison)

View File

@ -120,8 +120,8 @@
NSComparisonResult result;
unsigned int selfTime, otherTime;
result = [self _compareCompletionWithStatus1: [self objectAtIndex: taskCalendarNameIndex]
andStatus2: [otherTask objectAtIndex: taskCalendarNameIndex]];
result = [self _compareCompletionWithStatus1: [self objectAtIndex: taskStatusIndex]
andStatus2: [otherTask objectAtIndex: taskStatusIndex]];
if (result == NSOrderedSame)
{
// End date

View File

@ -84,6 +84,7 @@ static NSArray *tasksFields = nil;
+ (void) initialize
{
// NOTE: Modifying one of those two static arrays requires to modify NSArray+Scheduler.h
if (!eventsFields)
{
eventsFields = [NSArray arrayWithObjects: @"c_name", @"c_folder",
@ -1430,7 +1431,7 @@ _computeBlocksPosition (NSArray *blocks)
if (statusCode != 1 || showCompleted)
{
filteredTask = [NSMutableArray arrayWithArray: task];
endDateStamp = [[task objectAtIndex: 5] intValue];
endDateStamp = [[task objectAtIndex: taskEndDateIndex] intValue];
statusFlag = [self _getStatusClassForStatusCode: statusCode
andEndDateStamp: endDateStamp];
[filteredTask addObject: statusFlag];
@ -1448,11 +1449,11 @@ _computeBlocksPosition (NSArray *blocks)
[filteredTasks addObject: filteredTask];
else if ([tasksView isEqualToString:@"view_all"])
[filteredTasks addObject: filteredTask];
else if (([tasksView isEqualToString:@"view_overdue"]) && ([[filteredTask objectAtIndex:15] isEqualToString:@"overdue"]))
else if (([tasksView isEqualToString:@"view_overdue"]) && ([[filteredTask objectAtIndex:18] isEqualToString:@"overdue"]))
[filteredTasks addObject: filteredTask];
else if ([tasksView isEqualToString:@"view_incomplete"] && (![[filteredTask objectAtIndex:15] isEqualToString:@"completed"]))
else if ([tasksView isEqualToString:@"view_incomplete"] && (![[filteredTask objectAtIndex:18] isEqualToString:@"completed"]))
[filteredTasks addObject: filteredTask];
else if ([tasksView isEqualToString:@"view_not_started"] && ([[[filteredTask objectAtIndex:3] stringValue] isEqualToString:@"0"]))
else if ([tasksView isEqualToString:@"view_not_started"] && ([[[filteredTask objectAtIndex:taskStatusIndex] stringValue] isEqualToString:@"0"]))
[filteredTasks addObject: filteredTask];
}
}