//

// User.swift

//情感夜空

//

// Created by柯木超on 15/10/7.

// Copyright 2015年柯木超. All rights reserved.

//


import UIKit

import Foundation

import SwiftyJSON

class User: NSObject ,NSCoding{

var icon:String?; //头像

var name:String?; //昵称

var loginName:String?; //登录名

var password:String?; //登录名

var brityday:String?; //出生日期

var occupation:String?; //职业

var interest:String?; //兴趣爱好

var emotionStatus:String?; //情感状态

var city:City?; //城市

var coordinateX:String?; //横坐标(经度)

var coordinateY:String?; //纵坐标(纬度)

var sex:String?; //性别

var gender:String?; //星座

var token:String?; //融云token

var hight:String?; //身高

init(json:JSON) {

super.init();

self.name = json["name"].stringValue;

self.loginName = json["loginName"].stringValue;

self.password = json["password"].stringValue;

self.brityday = json["brityday"].stringValue;

self.occupation = json["occupation"].stringValue;

self.interest = json["interest"].stringValue;

self.emotionStatus = json["emotionStatus"].stringValue;

self.city = City(json: json["city"])

self.coordinateX = json["coordinateX"].stringValue;

self.coordinateY = json["coordinateY"].stringValue;

self.sex = json["sex"].stringValue;

self.gender = json["gender"].stringValue;

self.token = json["token"].stringValue;

self.hight = json["hight"].stringValue;

}


override init(){

}

func encodeWithCoder(aCoder: NSCoder) {

aCoder.encodeObject(self.name, forKey: "name");

aCoder.encodeObject(self.loginName, forKey: "loginName");

aCoder.encodeObject(self.password, forKey: "password");

aCoder.encodeObject(self.brityday, forKey: "brityday");

aCoder.encodeObject(self.occupation, forKey: "occupation");

aCoder.encodeObject(self.interest, forKey: "interest");

aCoder.encodeObject(self.emotionStatus, forKey: "emotionStatus");

aCoder.encodeObject(self.city, forKey: "city");

aCoder.encodeObject(self.coordinateX, forKey: "coordinateX");

aCoder.encodeObject(self.coordinateY, forKey: "coordinateY");

aCoder.encodeObject(self.sex, forKey: "sex");

aCoder.encodeObject(self.gender, forKey: "gender");

aCoder.encodeObject(self.token, forKey: "token");

aCoder.encodeObject(self.hight, forKey: "hight");


}

required init?(coder aDecoder: NSCoder) {

self.name = aDecoder.decodeObjectForKey("name") as? String;

self.loginName = aDecoder.decodeObjectForKey("loginName") as? String;

self.password = aDecoder.decodeObjectForKey("password") as? String;

self.brityday = aDecoder.decodeObjectForKey("brityday") as? String;

self.occupation = aDecoder.decodeObjectForKey("occupation") as? String;

self.interest = aDecoder.decodeObjectForKey("interest") as? String;

self.emotionStatus = aDecoder.decodeObjectForKey("emotionStatus") as? String;

self.city = aDecoder.decodeObjectForKey("city") as? City;

self.coordinateX = aDecoder.decodeObjectForKey("coordinateX") as? String;

self.coordinateY = aDecoder.decodeObjectForKey("coordinateY") as? String;

self.sex = aDecoder.decodeObjectForKey("sex") as? String;

self.gender = aDecoder.decodeObjectForKey("gender") as? String;

self.token = aDecoder.decodeObjectForKey("token") as? String;

self.hight = aDecoder.decodeObjectForKey("hight") as? String;

}

}



//用户用user default保存

let userData = NSKeyedArchiver.archivedDataWithRootObject(user);

let userDefault = NSUserDefaults.standardUserDefaults();

userDefault.setValue(userData, forKey: "user”);




//取

let userdata:NSData = (NSUserDefaults.standardUserDefaults().valueForKey("user") as? NSData)!;

//反序列化


let user:User = (NSKeyedUnarchiver.unarchiveObjectWithData(userdata) as? User)!;