public ActionResult Create(Beacon model, int Category)
        {
            try
            {
                var category = NHibernateHelper.Query<Domain.Category>().Where(c=>c.Id == Category).SingleOrDefault();

                if (category != null)
                {
                    model.Category = category;
                    ModelState.Remove("Category"); //im too lazy to create a viewmodel right now.
                }

                if (ModelState.IsValid)
                {
                    model.CreatedDate = DateTime.Now;
                    model.CreatedBy = ((User)HttpContext.Session["user"]).Id;
                    beaconManager.saveBeacon(model);
                    return Redirect("/my/beacons/");
                }
            }
            catch
            {
                return View();
            }

            return View();
        }
        public void addAttendee(User user, Beacon beacon)
        {
            beacon.Attendees.Add(user);

            NHibernateHelper.Save(beacon);
            NHibernateHelper.Commit();

            var creator = NHibernateHelper.Query<User>().Where(u=>u.Id == beacon.CreatedBy).SingleOrDefault();

            Notify.Send(beacon, user, creator, string.Format("Beacon \"{1}\" has a new attendee.", beacon.Name), string.Format("{0} just signed up for your beacon \"{1}\".", user.Name, beacon.Name));
        }
Beispiel #3
0
 public static void Send(Beacon beacon, User user, User creator, string subject, string text)
 {
     if (creator.ContactBySMS && !string.IsNullOrWhiteSpace(creator.PhoneNumber))
     {
         var twilio = new TwilioHelper();
             twilio.SendSMS(creator.PhoneNumber, text);
     }
     else if (creator.ContactByEmail && !string.IsNullOrWhiteSpace(creator.Email))
     {
         var sendgrid = new SendGridHelper();
             sendgrid.Send(creator.Email, subject, text);
     }
 }
        public void saveBeacon(Beacon beacon)
        {
            var address = beacon.StreetAddress1 + ", " + beacon.City + ", " + beacon.State + " " + beacon.Zip;
            var loc = GoogleHelper.getResponse(address);
            if (loc.results != null && loc.results.Count() > 0)
            {
                beacon.Lat = loc.results[0].geometry.location.lat;
                beacon.Lon = loc.results[0].geometry.location.lng;
            }
            NHibernateHelper.Save(beacon);
            NHibernateHelper.Commit();

            //IronCache cache = new IronCache("509ec7be7e4b7117f2006795","3zjqFh8J3d382xfzTOFJXNB91Vw");
            //cache.Put("Beacon", "AllBeacons", JsonConvert.SerializeObject(beacon), true, false);
        }
        public void RemoveAttendee(User user, Beacon beacon)
        {
            beacon.Attendees.Remove(user);

            NHibernateHelper.Save(beacon);
            NHibernateHelper.Commit();

            var creator = NHibernateHelper.Query<User>().Where(u=>u.Id == beacon.CreatedBy).SingleOrDefault();

            Notify.Send(beacon, user, creator, string.Format("Beacon \"{1}\" lost an attendee.", beacon.Name), string.Format("{0} just left your beacon \"{1}\".", user.Name, beacon.Name));
        }