// GET: Friends/Add public ActionResult Add(int?message) { FriendAddViewModel viewModel = new FriendAddViewModel(); ViewBag.IntellisenseScript = GoogleMapsAPI.getIntellisenseScriptURL(); if (message != null) { // safeguard range int index = message >= messages.Length || message < 0 ? messages.Length - 1 : (int)message; viewModel.message = messages[index]; } return(View(viewModel)); }
public ActionResult Add(FriendAddViewModel viewModel) { GoogleMapsAPI maps = GoogleMapsAPI.getInstance(); string[] location = maps.getAddressInfoByStreet(viewModel.friend.street); if (maps.statusCode == GoogleMapsAPI.RESPONSE_OK) { // grab the latitude and longitude and store them viewModel.friend.latitude = location[0]; viewModel.friend.longitude = location[1]; viewModel.friend.full_address = location[2]; // check if the friend already exists var check = (from friendList in db.friends where friendList.full_address == viewModel.friend.full_address && friendList.name == viewModel.friend.name select friendList).FirstOrDefault(); if (check != null) { return(RedirectToAction("Add", new { message = 0 })); } db.friends.Add((Friend)viewModel.friend); db.SaveChanges(); } else if (maps.statusCode == GoogleMapsAPI.RESPONSE_NOT_FOUND) { return(RedirectToAction("Add", new { message = 1 })); } else { return(RedirectToAction("Add", new { message = 2 })); } return(RedirectToAction("Index")); }