-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathUser.m
More file actions
137 lines (120 loc) · 4.39 KB
/
User.m
File metadata and controls
137 lines (120 loc) · 4.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
//
// User.m
// TwentyFirstCenturyTag
//
// Created by Christopher Ballinger on 7/5/11.
// Copyright 2011. All rights reserved.
//
#import "User.h"
#import "JSONKit.h"
@implementation User
@synthesize firstname;
@synthesize lastname;
@synthesize photo;
@synthesize gender;
@synthesize phone;
@synthesize email;
@synthesize fid;
@synthesize fb_authcode;
@synthesize teamName;
@synthesize teamId;
@synthesize currentVenueId;
@synthesize currentVenueName;
@synthesize currentVenueTime;
@synthesize currentVenueLastTime;
@synthesize points;
@synthesize venuedata;
@synthesize history;
@synthesize poiPoints;
-(id)init
{
self = [super init];
if(self)
{
APITYPE = @"User";
USER = @"user";
FIRSTNAME = @"first_name";
LASTNAME = @"last_name";
PASSWORD = @"password";
PHOTO = @"photo";
GENDER = @"gender";
PHONE = @"phone";
EMAIL = @"email";
FID = @"fid";
TEAM = @"team_id";
TEAMNAME = @"teamname";
FBAUTHCODE = @"fb_authcode";
CURRENTVENUEID = @"currentVenueId";
CURRENTVENUENAME = @"currentVenueName";
CURRENTVENUETIME = @"currentVenueTime";
CURRENTVENUELASTTIME = @"currentVenueLastTime";
POINTS = @"points";
POINT = @"poi_pts";
VENUE = @"v";
VENUEDATA = @"venue_data";
HISTORY = @"events";
}
return self;
}
//iAPI methods
-(void) parseDictionary:(NSDictionary *)fields
{
[super parseDictionary:fields];
firstname = [fields objectForKey:FIRSTNAME];
lastname = [fields objectForKey:LASTNAME];
photo = [fields objectForKey:PHOTO];
gender = [fields objectForKey:GENDER];
phone = [fields objectForKey:PHONE];
email = [fields objectForKey:EMAIL];
fid = [fields objectForKey:FID];
password = [fields objectForKey:PASSWORD];
fb_authcode = [fields objectForKey:FBAUTHCODE];
currentVenueId = [fields objectForKey:CURRENTVENUEID];
currentVenueName = [fields objectForKey:CURRENTVENUENAME];
currentVenueTime = [fields objectForKey:CURRENTVENUETIME];
currentVenueLastTime = [fields objectForKey:CURRENTVENUELASTTIME];
teamName = [fields objectForKey:TEAMNAME];
teamId = [fields objectForKey:TEAM];
NSString *rawPoints = [fields objectForKey:POINTS];
NSLog(@"Raw Points: %@",rawPoints);
points = rawPoints;
NSArray *rawPoiPoints = [fields objectForKey:POINT];
NSMutableDictionary *pointsDictionary = [[NSMutableDictionary alloc] initWithCapacity:[rawPoiPoints count]];
for(int i = 0; i < [rawPoiPoints count]; i++)
{
NSString * tempPoiId = [NSString stringWithFormat:@"%@",[[rawPoiPoints objectAtIndex:i] objectForKey:@"poi"]];
NSString * tempPoiPoints = [NSString stringWithFormat:@"%@", [[rawPoiPoints objectAtIndex:i] objectForKey:@"pts"]];
NSLog(@"input poi pts: %@",[tempPoiId class]);
if(tempPoiId)
[pointsDictionary setObject:tempPoiPoints forKey:tempPoiId];
}
poiPoints = pointsDictionary;
NSArray * rawHistory = [fields objectForKey:HISTORY];
NSMutableArray * tempHistory = [[NSMutableArray alloc] initWithCapacity:[rawHistory count]];
for (int i =0; i<[rawHistory count]; i++)
{
Event * event = [[Event alloc] initWithDictionary:[rawHistory objectAtIndex:i]];
[tempHistory addObject:event];
}
history = tempHistory;
}
-(NSData*) toJSON;
{
NSArray *objects = [NSArray arrayWithObjects:myId, _id, firstname, lastname, photo, gender, phone, email, fid, password, fb_authcode, team, teamname, currentVenueId, currentVenueName,currentVenueTime, currentVenueLastTime, points, venuedata, history, nil];
NSArray *keys = [NSArray arrayWithObjects:ID, _ID, FIRSTNAME, LASTNAME, PHOTO, GENDER, PHONE, EMAIL, FID, PASSWORD, FBAUTHCODE, TEAM, TEAMNAME, CURRENTVENUEID, CURRENTVENUENAME, CURRENTVENUETIME, CURRENTVENUELASTTIME, POINTS, VENUEDATA, HISTORY, nil];
NSDictionary *fields = [[NSDictionary alloc] initWithObjects:objects forKeys:keys];
return [fields JSONData];
}
//end iAPI methods
-(void)addHistory:(NSString *)hist
{
if(!hist)
return;
if(!history)
{
history = [[NSMutableArray alloc] init];
}
NSString *historyString = [NSString stringWithFormat:@"%d|%@",[[NSDate date] timeIntervalSince1970],hist];
[history addObject:historyString];
}
@end