/// <summary> /// Получает список активированных продуктов для пользователя, в виде обекта с ключами по типу продукта (см константы) /// </summary> /// <param name="active">Статус активациии в таблице user_chest (Активный)</param> /// <param name="lang">Локаль для перевода описания и имени продукта</param> /// <returns>Типизированный Список активированных продуктов</returns> public IHttpActionResult GetChestActivatedItems(bool active = true, string lang = "EN") { string userId = User.Identity.GetUserId(); var productTypes = _getModel().ChestActivateTypes(userId); var result = new Dictionary <int, dynamic>(); var errors = new ArrayList(); foreach (int productType in productTypes) { if (MONEY_SG_TYPE == productType) { return(Json("MONEY_SG_TYPE")); } else if (PREMIUM_TYPE == productType) { var premium = new Premium(); result.Add(PREMIUM_TYPE, premium.GetUserPremiumInfo(userId, productType)); } // else if (ACCOUNT_TYPE_SERVICE == productType) // { // return Json(productType); // } else if (BOOSTER_TYPE == productType) { result.Add(BOOSTER_TYPE, Booster.GetUserBoosterInfo(userId)); } // else if (SKIN_TYPE == productType) // { // return Json(productType); // } } if (0 < errors.Count) { result.Add(-1, errors); } return(Json(result)); }