using UnityEngine; using System.Collections; using LitJson; public class ClanRequest : HttpRequest { public const string MODULE_CLAN = "clan"; public const string CTRL_INDEX = "index"; public const string CTRL_MSG = "msg"; public static ClanRequest Create(string name, string description, ClanData.Limit limit) { URLRequestData data = new URLRequestData (true); data.Add ("user_id", Session.GetInstance().myUserData.id); data.Add ("name", WWW.EscapeURL(name)); data.Add ("desc", WWW.EscapeURL(description)); data.Add ("limit", limit.GetHashCode()); data.Add ("port", Config.USER_PORT); ClanRequest request = new ClanRequest (); request.m = MODULE_CLAN; request.c = CTRL_INDEX; request.a = "create"; request.Send (data, true); return request; } public static ClanRequest Edit(string name, string description, ClanData.Limit limit) { URLRequestData data = new URLRequestData (true); data.Add ("id", Session.GetInstance().myUserData.clanId); data.Add ("name", WWW.EscapeURL(name)); data.Add ("desc", WWW.EscapeURL(description)); data.Add ("limit", limit.GetHashCode()); ClanRequest request = new ClanRequest (); request.m = MODULE_CLAN; request.c = CTRL_INDEX; request.a = "edit"; request.Send (data, true); return request; } public static ClanRequest Join(int clanId) { URLRequestData data = new URLRequestData (true); data.Add ("user_id", Session.GetInstance().myUserData.id); data.Add ("clan_id", clanId); ClanRequest request = new ClanRequest (); request.m = MODULE_CLAN; request.c = CTRL_INDEX; request.a = "join"; request.Send (data, true); return request; } public static ClanRequest Leave() { URLRequestData data = new URLRequestData (true); data.Add ("user_id", Session.GetInstance().myUserData.id); data.Add ("clan_id", Session.GetInstance().myUserData.clanId); ClanRequest request = new ClanRequest (); request.m = MODULE_CLAN; request.c = CTRL_INDEX; request.a = "leave"; request.Send (data, true); return request; } public static ClanRequest Info(int clanId) { URLRequestData data = new URLRequestData (true); data.Add ("id", clanId); ClanRequest request = new ClanRequest (); request.m = MODULE_CLAN; request.c = CTRL_INDEX; request.a = "info"; request.Send (data); return request; } public static ClanRequest Find(string key) { URLRequestData data = new URLRequestData (true); data.Add ("key", WWW.EscapeURL(key)); data.Add ("port", Config.USER_PORT); ClanRequest request = new ClanRequest (); request.m = MODULE_CLAN; request.c = CTRL_INDEX; request.a = "find"; request.Send (data); return request; } public static ClanRequest Kick(int id, int clanId) { URLRequestData data = new URLRequestData (true); data.Add ("user_id", id); data.Add ("clan_id", clanId); ClanRequest request = new ClanRequest (); request.m = MODULE_CLAN; request.c = CTRL_INDEX; request.a = "leave"; request.Send (data, true); return request; } }