public void Checkout(Action<KnetikResult<Cart>> cb) { Client.CartCheckout((res) => { var result = new KnetikResult<Cart> { Response = res }; if (!res.IsSuccess) { cb(result); return; } result.Value = this; cb(result); }); }
public void Add(CatalogSku sku, int quantity, Action<KnetikResult<CartItem>> cb) { Client.CartAdd(sku.CatalogID, sku.ID, quantity, (res) => { var result = new KnetikResult<CartItem> { Response = res }; if (!res.IsSuccess) { cb(result); return; } var item = new CartItem(Client, this); item.FromSku(sku, quantity); Items.Add(item); result.Value = item; cb(result); }); }
private KnetikResult<RelationshipsQuery> OnLoad(KnetikApiResponse res) { var result = new KnetikResult<RelationshipsQuery> { Response = res }; if (!res.IsSuccess) { return result; } Response = res; if (res.Body ["result"].Value != "null") { this.Deserialize(res.Body ["result"]); } else { Relationships = new Dictionary<String, UserHierarchy>(); } result.Value = this; return result; }
private KnetikResult<AchievementsQuery> OnLoad(KnetikApiResponse res) { var result = new KnetikResult<AchievementsQuery> { Response = res }; if (!res.IsSuccess) { return result; } Response = res; if (res.Body["result"].Value != "null") { this.Deserialize(res.Body ["result"]); } else { Achievements = new List<Achievement> (); HasMore = false; } result.Value = this; return result; }
public void Load(Action<KnetikResult<Leaderboard>> cb) { string identifier; if (ID > 0) { identifier = ID.ToString(); } else { identifier = UniqueKey; } Client.GetLeaderboard(identifier, Level, (res) => { var result = new KnetikResult<Leaderboard> { Response = res }; if (!res.IsSuccess) { cb(result); return; } Response = res; this.Deserialize(res.Body["result"]); result.Value = this; cb(result); }); }
private KnetikResult<Game> OnLoadWithGame(KnetikApiResponse res) { var result = new KnetikResult<Game> { Response = res }; if (!res.IsSuccess) { return result; } Response = res; if (res.Body["result"]["product_item"].AsObject == null) { result.Response.Status = KnetikApiResponse.StatusType.Error; result.Response.ErrorMessage = "Item not found"; return result; } Game game = new Game(Client); result.Value = game; this.Deserialize(res.Body["result"]); game.Deserialize(res.Body["result"]["product_item"]); return result; }
private KnetikResult<UserInfo> OnLoad(KnetikApiResponse res) { var result = new KnetikResult<UserInfo> { Response = res }; if (!res.IsSuccess) { return result; } Response = res; this.Deserialize(res.Body ["result"]); result.Value = this; return result; }
public void SetStatus(string status, Action<KnetikResult<Cart>> cb) { Client.CartStatus(status, (res) => { var result = new KnetikResult<Cart> { Response = res }; if (!res.IsSuccess) { cb(result); return; } Status = status; result.Value = this; cb(result); }); }
public void QuickPurchase(CatalogSku sku, Action<KnetikResult<Cart>> cb) { Client.CartGet((res) => { if (res.IsSuccess) { KnetikJSONNode existingItems = res.Body["result"]["items"]; foreach (KnetikJSONNode json in existingItems.Children) { Client.CartModify(json["catalog_id"].AsInt, json["sku_id"].AsInt, 0); } } Client.CartAdd(sku.CatalogID, sku.ID, 1, (addResponse) => { var result = new KnetikResult<Cart> { Response = addResponse }; if (!addResponse.IsSuccess) { cb(result); return; } Client.CartCheckout((checkoutResponse) => { result.Response = checkoutResponse; if (!checkoutResponse.IsSuccess) { cb(result); return; } result.Value = this; cb(result); }); }); }); }
public void Load(Action<KnetikResult<Cart>> cb) { Client.CartGet ((res) => { var result = new KnetikResult<Cart> { Response = res }; if (!res.IsSuccess) { cb(result); return; } Response = res; this.Deserialize(res.Body["result"]); result.Value = this; cb(result); }); }