Example #1
0
        public string listofbeers([FromBody] JObject BeerNa)
        {
            string OutPutVVar = string.Empty;

            string BeerName = BeerNa["BeerName"].ToString();

            BeerName = BeerName.ToLower().Trim();
            if (BeerName == "")
            {
                return("Invalid Beer name");
            }
            DataManupulation dfdsfsd  = new DataManupulation();
            IList <BeerInfo> sdsadasd = dfdsfsd.GetAllLList("https://api.punkapi.com/v2/beers", BeerName);

            if (sdsadasd != null && sdsadasd.Count > 0)
            {
                int idBeer    = sdsadasd[0].id;
                var beerddata = dfdsfsd.GetUserDetails(idBeer);

                BeerInfo sadasd = new BeerInfo();
                sadasd.id = idBeer;

                sadasd.name        = sdsadasd[0].name;
                sadasd.description = sdsadasd[0].description;
                sadasd.userRatings = beerddata;
                var dssd = new JavaScriptSerializer().Serialize(sadasd);

                return(dssd);
            }
            else
            {
                return("Invalid Beer name");
            }
        }
        public async static Task <BeerInfo> FindBeer(string beerName)
        {
            // Build the url
            var builtUrl = new UriBuilder(BackendConstants.BreweryDbSearchUrl);
            var query    = HttpUtility.ParseQueryString(builtUrl.Query);

            query["key"]    = APIKeys.BreweryDbAPIKey;
            query["format"] = "json";
            query["t"]      = "beer";
            query["q"]      = beerName;

            builtUrl.Query = query.ToString();

            var beerNameNoWhiteSpace = beerName.StripWhitespaces().ToUpper();

            var theBeers = await GetDataObjectFromAPI <BreweryDbSearchResult, string>(builtUrl.ToString()).ConfigureAwait(false);

            var firstFound = theBeers.Data.FirstOrDefault(ff => ff.NameDisplay.StripWhitespaces().ToUpper() == beerNameNoWhiteSpace);

            if (firstFound != null)
            {
                var beerInfo = new BeerInfo
                {
                    ABV         = firstFound.Abv,
                    Description = firstFound.Description,
                    Label       = firstFound.Labels.Medium,
                    Style       = firstFound.Style.Description,
                    Name        = firstFound.NameDisplay
                };

                return(beerInfo);
            }

            return(null);
        }
Example #3
0
        public string listofbeersByID(int id)
        {
            if (id == 0)
            {
                return("Invalid Beer ID");
            }


            DataManupulation dfdsfsd = new DataManupulation();
            string           vgd     = "https://api.punkapi.com/v2/beers/" + id;
            var BeerData             = dfdsfsd.start_get(vgd);

            if (BeerData.Status)
            {
                var beerddata = dfdsfsd.GetUserDetails(id);

                BeerInfo sadasd = new BeerInfo();
                sadasd.id          = id;
                sadasd.name        = BeerData.BeetInfoData.name;
                sadasd.description = BeerData.BeetInfoData.description;
                sadasd.userRatings = beerddata;
                var dssd = new JavaScriptSerializer().Serialize(sadasd);

                return(dssd);
            }
            else
            {
                return("Invalid Beer ID");
            }
        }
    public static void ImportBeerTypes()
    {
        for (int i = 1; i < 20; i++)
        {
            string       assetPath = "Assets/Json/Parsed/Beer" + i + ".asset";
            string       jsonPath  = "Assets/Json/beer" + i + ".json";
            StreamReader reader    = new StreamReader(jsonPath);
            string       json      = reader.ReadToEnd();
            reader.Close();

            print(json);

            BeerInfo beerInfo = UnityEditor.AssetDatabase.LoadAssetAtPath <BeerInfo>(assetPath);
            if (beerInfo == null)
            {
                beerInfo = ScriptableObject.CreateInstance <BeerInfo>();
                UnityEditor.AssetDatabase.CreateAsset(beerInfo, assetPath);
                UnityEditor.AssetDatabase.SaveAssets();
            }

            JsonUtility.FromJsonOverwrite(json, beerInfo);

            print(beerInfo.title);

            beerInfo.SetDirty();
            UnityEditor.AssetDatabase.SaveAssets();
        }
    }
 public void SetBeerInfo(BeerInfo item)
 {
     beerInfo = item;
     if (beerInfo.CheckIns.Any(ch => ch.Latitude != 0))
     {
         AddCheckInMap();
     }
 }
Example #6
0
        public async Task <APIResponse <List <BeerInfo> > > GetBeerInfosByUserAsync()
        {
            //are we in?
            var results = new List <BeerInfo>();
            var id      = GetUserId;

            if (!string.IsNullOrEmpty(id))
            {
                try
                {
                    //Sync checkins
                    var table = serviceClient.GetSyncTable <CheckInItem>();
                    await SyncAsync(table, id);

                    var beerTable = serviceClient.GetSyncTable <BeerItem>();
                    await SyncAsync(beerTable, id);

                    //unique list of beer ids consumed by current user
                    var beerIds =
                        (await table.Where(f => f.CheckedInBy.ToString() == id).ToListAsync()).Select(b => b.BeerId)
                        .GroupBy(x => x)
                        .Select(y => y.First());
                    foreach (var beerId in beerIds)
                    {
                        var beerInfo = new BeerInfo();
                        var beerItem = (await beerTable.Where(f => f.Id == beerId).ToListAsync()).FirstOrDefault();
                        if (beerItem != null)
                        {
                            beerInfo.Name        = beerItem.Name;
                            beerInfo.BreweryDbId = beerId;
                            var checkinsResponse = await GetBeerCheckIns(beerId.ToString());

                            if (checkinsResponse.Result != null && checkinsResponse.Result.Any())
                            {
                                beerInfo.CheckIns      = checkinsResponse.Result;
                                beerInfo.AverageRating = beerInfo.CheckIns.Select(f => f.Rating).Average();
                            }
                            results.Add(beerInfo);
                        }
                    }
                    return(new APIResponse <List <BeerInfo> >(results, null));
                }
                catch (Exception ex)
                {
                    return(new APIResponse <List <BeerInfo> >(results, ex));
                }
            }
            return(new APIResponse <List <BeerInfo> >(results, new UnauthorizedAccessException("User is unauthenticated")));
        }
        public IList <BeerInfo> GetAllLList(string DataURL, string Name)
        {
            IList <BeerInfo> LstBeerData = new List <BeerInfo>();



            try
            {
                HttpWebRequest WebReq = (HttpWebRequest)WebRequest.Create(string.Format(DataURL));

                WebReq.Method = "GET";


                HttpWebResponse WebResp = (HttpWebResponse)WebReq.GetResponse();
                if (WebResp.StatusCode == HttpStatusCode.OK)
                {
                    string jsonString;
                    using (Stream stream = WebResp.GetResponseStream())   //modified from your code since the using statement disposes the stream automatically when done
                    {
                        StreamReader reader = new StreamReader(stream, System.Text.Encoding.UTF8);
                        jsonString = reader.ReadToEnd();

                        JavaScriptSerializer jss = new JavaScriptSerializer();
                        var d = jss.Deserialize <dynamic>(jsonString);

                        foreach (var dsad in d)
                        {
                            string   dsfssdsdd = dsad["name"];
                            BeerInfo BeerData  = new BeerInfo();
                            if (dsfssdsdd.ToLower().Trim() == Name.ToLower().Trim())
                            {
                                BeerData.id          = dsad["id"];
                                BeerData.name        = dsad["name"];
                                BeerData.description = dsad["description"];

                                LstBeerData.Add(BeerData);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                LstBeerData = new List <BeerInfo>();
            }

            return(LstBeerData);
        }
        public FinalDisplay start_get(string DataURL)
        {
            FinalDisplay dataView = new FinalDisplay();
            BeerInfo     BeerData = new BeerInfo();


            bool returnSTatus = false;

            try
            {
                HttpWebRequest WebReq = (HttpWebRequest)WebRequest.Create(string.Format(DataURL));

                WebReq.Method = "GET";


                HttpWebResponse WebResp = (HttpWebResponse)WebReq.GetResponse();
                if (WebResp.StatusCode == HttpStatusCode.OK)
                {
                    string jsonString;
                    using (Stream stream = WebResp.GetResponseStream())   //modified from your code since the using statement disposes the stream automatically when done
                    {
                        StreamReader reader = new StreamReader(stream, System.Text.Encoding.UTF8);
                        jsonString = reader.ReadToEnd();

                        JavaScriptSerializer jss = new JavaScriptSerializer();
                        var d       = jss.Deserialize <dynamic>(jsonString);
                        var fgsdgds = d[0];
                        BeerData.id          = fgsdgds["id"];
                        BeerData.name        = fgsdgds["name"];
                        BeerData.description = fgsdgds["description"];
                        //     dynamic stuff = JsonConvert.DeserializeObject(jsonString);
                        //stuff[0].
                        // List<Item> items = JsonConvert.DeserializeObject<List<Item>>(jsonString);
                        returnSTatus = true;
                    }

                    //   List<Item> items = JsonConvert.DeserializeObject<List<Item>>(jsonString);
                }
            }
            catch (Exception ex)
            {
            }
            dataView.Status       = returnSTatus;
            dataView.BeetInfoData = BeerData;
            return(dataView);
        }
Example #9
0
        void AddHeaderInfo()
        {
            var headerCellIdentifier = new NSString("headerCell");
            var headerCell           = tableView.DequeueReusableCell(headerCellIdentifier) as BeerHeaderCell ??
                                       new BeerHeaderCell(headerCellIdentifier);

            headerCell.Name    = beer?.Name;
            headerCell.Brewery = beer?.Brewery;
            headerCell.Abv     = beer.ABV.ToString();

            headerCell.ConsumedAlpha = 0.3f;
            headerCell.RatingAlpha   = 0.3f;
            //Lets fire up another thread so we can continue loading our UI and makes the app seem faster.
            Task.Run(() => {
                var response = Client.Instance.BeerDrinkinClient.GetBeerInfoAsync(beer.Id.ToString()).Result;
                if (response.Result != null)
                {
                    beerInfo = response.Result;
                }

                InvokeOnMainThread(() => {
                    if (beerInfo == null)
                    {
                        return;
                    }

                    headerCell.Consumed = beerInfo?.CheckIns.ToList().Count.ToString();
                    headerCell.Rating   = beerInfo?.AverageRating != 0 ? beerInfo.AverageRating.ToString(CultureInfo.InvariantCulture) : "NA";

                    UIView.Animate(0.3, 0, UIViewAnimationOptions.TransitionCurlUp, () => {
                        headerCell.ConsumedAlpha = 1f;
                        headerCell.RatingAlpha   = 1f;
                    }, () => {
                    });
                });
            });


            cells.Add(headerCell);
        }
Example #10
0
        // GET api/BeerInfo
        public async Task <BeerInfo> Get(string userId, string beerId)
        {
            if (string.IsNullOrEmpty(BreweryDB.BreweryDBClient.ApplicationKey))
            {
                string apiKey;
                // Try to get the BreweryDB API key  app settings.
                if (!(Services.Settings.TryGetValue("BREWERYDB_API_KEY", out apiKey)))
                {
                    Services.Log.Error("Could not retrieve BreweryDB API key.");
                    return(null);
                }
                Services.Log.Info(string.Format("BreweryDB API Key {0}", apiKey));
                BreweryDB.BreweryDBClient.Initialize(apiKey);
            }

            try
            {
                var beer = await new BreweryDB.BreweryDBClient().QueryBeerById(beerId);
                if (beer != null)
                {
                    var beerInfo = new BeerInfo();
                    beerInfo.Name        = beer.Name;
                    beerInfo.BreweryDBId = beer.Id;
                    var beerCheckins = Context.CheckInItems.Where(f => f.BeerId == beer.Id);
                    beerInfo.CheckIns      = beerCheckins.Where(f => f.CheckedInBy == userId);
                    beerInfo.AverageRating = Math.Round(beerCheckins.Select(f => f.Rating).Average(), 1);
                    beerInfo.Reviews       = Context.ReviewItems.Where(f => f.BeerId == beer.Id);
                    beerInfo.ImagesURLs    = Context.BinaryItems.Where(f => f.ObjectId == beer.Id).Select(f => f.BinaryUrl);

                    return(beerInfo);
                }
            }
            catch (Exception ex)
            {
                Services.Log.Error(ex.Message);
            }

            return(null);
        }
        // GET api/BeerInfo
        public async Task<BeerInfo> Get(string userId, string beerId)
        {
            if (string.IsNullOrEmpty(BreweryDB.BreweryDBClient.ApplicationKey))
            {
                string apiKey;
                // Try to get the BreweryDB API key  app settings.  
                if (!(Services.Settings.TryGetValue("BREWERYDB_API_KEY", out apiKey)))
                {
                    Services.Log.Error("Could not retrieve BreweryDB API key.");
                    return null;
                }
                Services.Log.Info(string.Format("BreweryDB API Key {0}", apiKey));
                BreweryDB.BreweryDBClient.Initialize(apiKey);
            }

            try
            {
                var beer = await new BreweryDB.BreweryDBClient().QueryBeerById(beerId);
                if (beer != null)
                {
                    var beerInfo = new BeerInfo();
                    beerInfo.Name = beer.Name;
                    beerInfo.BreweryDBId = beer.Id;
                    var beerCheckins = Context.CheckInItems.Where(f => f.BeerId == beer.Id);
                    beerInfo.CheckIns = beerCheckins.Where(f => f.CheckedInBy == userId);
                    beerInfo.AverageRating = Math.Round(beerCheckins.Select(f => f.Rating).Average(), 1);
                    beerInfo.Reviews = Context.ReviewItems.Where(f => f.BeerId == beer.Id);
                    beerInfo.ImagesURLs = Context.BinaryItems.Where(f => f.ObjectId == beer.Id).Select(f=>f.BinaryUrl);

                     return beerInfo; 
                }
            }
            catch (Exception ex)
            {
                Services.Log.Error(ex.Message);
            }

            return null;
        }
        void AddHeaderInfo()
        {
            var headerCellIdentifier = new NSString("headerCell");
            var headerCell = TableView.DequeueReusableCell(headerCellIdentifier) as BeerHeaderCell ??
                             new BeerHeaderCell(headerCellIdentifier);
            headerCell.Name = beer?.Name;
            headerCell.Brewery = beer?.Brewery;
            headerCell.Abv = beer?.ABV;

            headerCell.ConsumedAlpha = 0.3f;
            headerCell.RatingAlpha = 0.3f;
            //Lets fire up another thread so we can continue loading our UI and makes the app seem faster.
            Task.Run(() =>
                {
                    var response = Client.Instance.BeerDrinkinClient.GetBeerInfoAsync(beer.Id).Result;
                    if (response.Result != null)
                        beerInfo = response.Result;

                    InvokeOnMainThread(() =>
                        {
                            if (beerInfo == null)
                                return;

                            headerCell.Consumed = beerInfo?.CheckIns.ToList().Count.ToString();
                            headerCell.Rating = beerInfo?.AverageRating != 0 ? beerInfo.AverageRating.ToString(CultureInfo.InvariantCulture) : "NA";

                            UIView.Animate(0.3, 0, UIViewAnimationOptions.TransitionCurlUp, () =>
                                {
                                    headerCell.ConsumedAlpha = 1f;
                                    headerCell.RatingAlpha = 1f;

                                }, () =>
                                {
                                });
                        });
                });


            cells.Add(headerCell);
        }
Example #13
0
 public void SetBeerInfo(BeerInfo item)
 {
     beerInfo = item;
 }