public void ListEventAsAsked() { EventManager eventManager = new EventManager(); DateTime dateOne = new DateTime(2000, 01, 01, 00, 00, 00); DateTime dateTwo = new DateTime(2010, 12, 31, 23, 59, 59); DateTime dateThree = new DateTime(2019, 05, 16, 13, 30, 00); CalendarEvent calendarEventOne = new CalendarEvent(dateOne, "party", "somewhere"); CalendarEvent calendarEventTwo = new CalendarEvent(dateTwo, "exam", "somewhere"); CalendarEvent calendarEventThree = new CalendarEvent(dateThree, "party", "club"); CalendarEvent calendarEventFour = new CalendarEvent(dateOne, "exam", "academy"); CalendarEvent calendarEventFive = new CalendarEvent(dateTwo, "sleep", null); CalendarEvent calendarEventSix = new CalendarEvent(dateThree, "sleep", null); CalendarEvent calendarEventSeven = new CalendarEvent(dateTwo, "party", null); eventManager.AddEvent(calendarEventOne); eventManager.AddEvent(calendarEventTwo); eventManager.AddEvent(calendarEventThree); eventManager.AddEvent(calendarEventFour); eventManager.AddEvent(calendarEventFive); eventManager.AddEvent(calendarEventSix); eventManager.AddEvent(calendarEventSeven); IEnumerable<CalendarEvent> list = eventManager.ListEvents(dateOne, 5); Assert.AreEqual(5, list.Count()); }
private Exception AddSession(CalendarEvent entity) { if (!CanSave(entity)) return new ConstraintException(); _calendarEventRepository.MakePersistent(entity); return null; }
public void AddEventDuplicate() { EventManager eventManager = new EventManager(); DateTime dateOne = new DateTime(2000, 01, 01, 00, 00, 00); DateTime dateTwo = new DateTime(2010, 12, 31, 23, 59, 59); DateTime dateThree = new DateTime(2019, 05, 16, 13, 30, 00); CalendarEvent calendarEventOne = new CalendarEvent(dateOne, "party", "somewhere"); CalendarEvent calendarEventTwo = new CalendarEvent(dateTwo, "exam", "academy"); CalendarEvent calendarEventThree = new CalendarEvent(dateThree, "sleep", null); CalendarEvent calendarEventFour = new CalendarEvent(dateTwo, "party", null); eventManager.AddEvent(calendarEventOne); eventManager.AddEvent(calendarEventTwo); eventManager.AddEvent(calendarEventThree); eventManager.AddEvent(calendarEventFour); eventManager.AddEvent(calendarEventTwo); eventManager.AddEvent(calendarEventTwo); eventManager.AddEvent(calendarEventOne); Assert.AreEqual(3, eventManager.CalendarByDate.Count); Assert.AreEqual(3, eventManager.CalendarByTitle.Count); Assert.IsTrue(eventManager.CalendarByTitle.ContainsKey("exam")); Assert.IsTrue(eventManager.CalendarByTitle.ContainsKey("party")); Assert.IsTrue(eventManager.CalendarByTitle.ContainsKey("sleep")); }
public static int addEvent(ImproperCalendarEvent improperEvent) { CalendarEvent cevent = new CalendarEvent() { title = improperEvent.title, description = improperEvent.description, purpose = improperEvent.purpose, start = DateTime.ParseExact(improperEvent.start, "dd-MM-yyyy hh:mm:ss tt", CultureInfo.InvariantCulture), end = DateTime.ParseExact(improperEvent.end, "dd-MM-yyyy hh:mm:ss tt", CultureInfo.InvariantCulture), contactNumber = improperEvent.contactNumber, CPAID=int.Parse(System.Web.HttpContext.Current.Session["userID"].ToString()), interval = 30 }; if (CheckAlphaNumeric(cevent.title) && CheckAlphaNumeric(cevent.description)) { int key = EventDAO.addEvent(cevent); List<int> idList = (List<int>)System.Web.HttpContext.Current.Session["idList"]; if (idList != null) { idList.Add(key); } return key;//return the primary key of the added cevent object } return -1;//return a negative number just to signify nothing has been added }
public void DatePropertyWithValidDataTest() { DateTime date = new DateTime(2002, 01, 02, 02, 02, 02); CalendarEvent singleEvent = new CalendarEvent(date, "Title", null); Assert.AreEqual(date, singleEvent.Date); }
//this method retrieves all events within range start-end public static List<CalendarEvent> getEvents(DateTime start, DateTime end) { List<CalendarEvent> events = new List<CalendarEvent>(); SqlConnection con = new SqlConnection(connectionString); SqlCommand cmd = new SqlCommand("SELECT event_id, description, title, event_start, event_end, all_day FROM ECICalendarEvent_Test where event_start>=@start AND event_end<=@end", con); cmd.Parameters.Add("@start", SqlDbType.DateTime).Value = start; cmd.Parameters.Add("@end", SqlDbType.DateTime).Value = end; using (con) { con.Open(); SqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { CalendarEvent cevent = new CalendarEvent(); cevent.id = (int)reader["event_id"]; cevent.title = (string)reader["title"]; cevent.description = (string)reader["description"]; cevent.start = (DateTime)reader["event_start"]; cevent.end = (DateTime)reader["event_end"]; cevent.allDay = (bool)reader["all_day"]; events.Add(cevent); } } return events; //side note: if you want to show events only related to particular users, //if user id of that user is stored in session as Session["userid"] //the event table also contains an extra field named 'user_id' to mark the event for that particular user //then you can modify the SQL as: //SELECT event_id, description, title, event_start, event_end FROM event where user_id=@user_id AND event_start>=@start AND event_end<=@end //then add paramter as:cmd.Parameters.AddWithValue("@user_id", HttpContext.Current.Session["userid"]); }
//this method adds events to the database public static int addEvent(CalendarEvent cevent) { //add event to the database and return the primary key of the added event row //insert SqlConnection con = new SqlConnection(connectionString); int key = 0; using (con) { con.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = con; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "[OpenAppointments]"; cmd.Parameters.AddWithValue("@start", cevent.start.ToUniversalTime()); cmd.Parameters.AddWithValue("@end", cevent.end.ToUniversalTime()); cmd.Parameters.AddWithValue("@interval", cevent.interval); cmd.Parameters.AddWithValue("@CPAID", cevent.CPAID); cmd.Parameters.AddWithValue("@customerName", cevent.title); cmd.Parameters.AddWithValue("@purposeOfVisit", cevent.purpose); cmd.Parameters.AddWithValue("@contactNumber", cevent.contactNumber); cmd.Parameters.AddWithValue("@note", cevent.description); cmd.Parameters.AddWithValue("@isOpen", string.IsNullOrEmpty(cevent.title)); cmd.ExecuteNonQuery(); } return key; }
public void Example() { // Model var calendarEvent = new CalendarEvent { EventDate = new DateTime(2008, 12, 15, 20, 30, 0), Title = "Company Holiday Party" }; var config = new MapperConfiguration(cfg => { // Configure AutoMapper cfg.CreateMap<CalendarEvent, CalendarEventForm>() .ForMember(dest => dest.EventDate, opt => opt.MapFrom(src => src.EventDate.Date)) .ForMember(dest => dest.EventHour, opt => opt.MapFrom(src => src.EventDate.Hour)) .ForMember(dest => dest.EventMinute, opt => opt.MapFrom(src => src.EventDate.Minute)); }); // Perform mapping var mapper = config.CreateMapper(); CalendarEventForm form = mapper.Map<CalendarEvent, CalendarEventForm>(calendarEvent); form.EventDate.ShouldEqual(new DateTime(2008, 12, 15)); form.EventHour.ShouldEqual(20); form.EventMinute.ShouldEqual(30); form.Title.ShouldEqual("Company Holiday Party"); }
private string ProccessAddEventCommand(Command command, string result) { if ((command.Name == "AddEvent")) { if (command.Parameters.Length == 2) { DateTime date = DateTime.ParseExact( command.Parameters[0], DATE_FORMAT, CultureInfo.InvariantCulture); CalendarEvent calendarEvent = new CalendarEvent(date, command.Parameters[1], null); this.EventManager.AddEvent(calendarEvent); result = "Event added"; } else if (command.Parameters.Length == 3) { DateTime date = DateTime.ParseExact( command.Parameters[0], DATE_FORMAT, CultureInfo.InvariantCulture); CalendarEvent calendarEvent = new CalendarEvent(date, command.Parameters[1], command.Parameters[2]); this.EventManager.AddEvent(calendarEvent); result = "Event added"; } } return result; }
//this method adds events to the database public static int addEvent(CalendarEvent cevent) { //add event to the database and return the primary key of the added event row //insert SqlConnection con = new SqlConnection(connectionString); SqlCommand cmd = new SqlCommand("INSERT INTO ECICalendarEvent_Test(title, description, event_start, event_end, all_day) VALUES(@title, @description, @event_start, @event_end, @all_day)", con); cmd.Parameters.Add("@title", SqlDbType.VarChar).Value = cevent.title; cmd.Parameters.Add("@description", SqlDbType.VarChar).Value = cevent.description; cmd.Parameters.Add("@event_start", SqlDbType.DateTime).Value = cevent.start; cmd.Parameters.Add("@event_end", SqlDbType.DateTime).Value = cevent.end; cmd.Parameters.Add("@all_day", SqlDbType.Bit).Value = cevent.allDay; int key = 0; using (con) { con.Open(); cmd.ExecuteNonQuery(); //get primary key of inserted row cmd = new SqlCommand("SELECT max(event_id) FROM ECICalendarEvent_Test where title=@title AND description=@description AND event_start=@event_start AND event_end=@event_end AND all_day=@all_day", con); cmd.Parameters.Add("@title", SqlDbType.VarChar).Value = cevent.title; cmd.Parameters.Add("@description", SqlDbType.VarChar).Value = cevent.description; cmd.Parameters.Add("@event_start", SqlDbType.DateTime).Value = cevent.start; cmd.Parameters.Add("@event_end", SqlDbType.DateTime).Value = cevent.end; cmd.Parameters.Add("@all_day", SqlDbType.Bit).Value = cevent.allDay; key = (int)cmd.ExecuteScalar(); } return key; }
public void DeleteEventMultiple() { EventManager eventManager = new EventManager(); DateTime dateOne = new DateTime(2000, 01, 01, 00, 00, 00); DateTime dateTwo = new DateTime(2010, 12, 31, 23, 59, 59); DateTime dateThree = new DateTime(2019, 05, 16, 13, 30, 00); CalendarEvent calendarEventOne = new CalendarEvent(dateOne, "party", "somewhere"); CalendarEvent calendarEventTwo = new CalendarEvent(dateTwo, "exam", "somewhere"); CalendarEvent calendarEventThree = new CalendarEvent(dateThree, "party", "club"); CalendarEvent calendarEventFour = new CalendarEvent(dateOne, "exam", "academy"); CalendarEvent calendarEventFive = new CalendarEvent(dateTwo, "sleep", null); CalendarEvent calendarEventSix = new CalendarEvent(dateThree, "sleep", null); CalendarEvent calendarEventSeven = new CalendarEvent(dateTwo, "party", null); eventManager.AddEvent(calendarEventOne); eventManager.AddEvent(calendarEventTwo); eventManager.AddEvent(calendarEventThree); eventManager.AddEvent(calendarEventFour); eventManager.AddEvent(calendarEventFive); eventManager.AddEvent(calendarEventSix); eventManager.AddEvent(calendarEventSeven); int firstCount = eventManager.DeleteEventsByTitle("party"); Assert.AreEqual(3, firstCount); Assert.AreEqual(2, eventManager.CalendarByTitle.Count); Assert.IsFalse(eventManager.CalendarByTitle.ContainsKey("party")); int secondCount = eventManager.DeleteEventsByTitle("party"); Assert.AreEqual(0, secondCount); Assert.AreEqual(2, eventManager.CalendarByTitle.Count); }
private string AddEventWithDateTitleAndLocation(Command command) { var date = DateTime.ParseExact(command.Arguments[0], "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture); var currentEvent = new CalendarEvent(date, command.Arguments[1], command.Arguments[2]); this.EventsManager.AddEvent(currentEvent); return "Event added"; }
public void AddEventMethodCheckTitlesCollectionRegularTest() { EventsManagerFast eventsManager = new EventsManagerFast(); DateTime date = new DateTime(2002, 01, 02, 02, 02, 02); CalendarEvent singleEvent = new CalendarEvent(date, "Title", null); eventsManager.AddEvent(singleEvent); Assert.AreEqual(1, eventsManager.TitlesColection.Count); }
public void OpenItem(CalendarEvent calendarEvent) { try { System.Diagnostics.Process.Start(calendarEvent.Url); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public static CalendarEvent GetExistingEvent() { var beerParty = new CalendarEvent(); var friends = new Attendee[1]; var andriy = new Attendee { FirstName = "Andriy", LastName = "Buday" }; friends[0] = andriy; beerParty.Attendees = friends; beerParty.StartDateAndTime = new DateTime(2010, 7, 23, 19, 0, 0); beerParty.Priority = Priority.High(); return beerParty; }
public void DeleteEvent() { EventManager eventManager = new EventManager(); DateTime date = new DateTime(2012, 01, 21, 20, 00, 00); CalendarEvent calendarEvent = new CalendarEvent(date, "party", "somewhere"); eventManager.AddEvent(calendarEvent); int count = eventManager.DeleteEventsByTitle("party"); Assert.AreEqual(1, count); Assert.AreEqual(0, eventManager.CalendarByTitle.Count); Assert.AreEqual(0, eventManager.CalendarByDate.Count); }
/// <summary> /// Gets a list of all events in outlook /// </summary> public static List<CalendarEvent> GetAllEvents() { List<CalendarEvent> events = new List<CalendarEvent>(); Microsoft.Office.Interop.Outlook.Application oApp = null; Microsoft.Office.Interop.Outlook.NameSpace mapiNamespace = null; Microsoft.Office.Interop.Outlook.MAPIFolder CalendarFolder = null; Microsoft.Office.Interop.Outlook.Items outlookCalendarItems = null; oApp = new Microsoft.Office.Interop.Outlook.Application(); mapiNamespace = oApp.GetNamespace("MAPI"); CalendarFolder = mapiNamespace.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderCalendar); outlookCalendarItems = CalendarFolder.Items; outlookCalendarItems.IncludeRecurrences = true; CalendarEvent cEvent = null; foreach (Microsoft.Office.Interop.Outlook.AppointmentItem item in outlookCalendarItems) { cEvent = null; if (item.IsRecurring) { Microsoft.Office.Interop.Outlook.RecurrencePattern rp = item.GetRecurrencePattern(); DateTime first = new DateTime(2008, 8, 31, item.Start.Hour, item.Start.Minute, 0); DateTime last = new DateTime(2008, 10, 1); Microsoft.Office.Interop.Outlook.AppointmentItem recur = null; for (DateTime cur = first; cur <= last; cur = cur.AddDays(1)) { try { recur = rp.GetOccurrence(cur); cEvent = new CalendarEvent(recur.GlobalAppointmentID, recur.Start, recur.End, recur.Location, recur.Subject, recur.Body); } catch { } } } else { cEvent = new CalendarEvent(item.GlobalAppointmentID, item.Start, item.End, item.Location, item.Subject, item.Body); } if (cEvent != null) events.Add(cEvent); } return events; }
public void AddEventMethodWithDuplicatedTitleCheckDatesCollectionTest() { EventsManagerFast eventsManager = new EventsManagerFast(); DateTime firstDate = new DateTime(2002, 01, 02, 02, 02, 02); CalendarEvent firstEvent = new CalendarEvent(firstDate, "Title", null); DateTime secondDate = new DateTime(2003, 01, 02, 02, 02, 02); CalendarEvent secondEvent = new CalendarEvent(secondDate, "Title", null); eventsManager.AddEvent(firstEvent); eventsManager.AddEvent(secondEvent); Assert.AreEqual(2, eventsManager.DatesCollection.Count); }
public void TitlePropertyWithEmptyDataIsItTheCorrectExceptionTest() { DateTime date = new DateTime(2002, 01, 02, 02, 02, 02); string message = ""; try { CalendarEvent singleEvent = new CalendarEvent(date, String.Empty, null); } catch (Exception exc) { message = exc.Message; } Assert.AreEqual("Title shouldn't be empty", message); }
public override void ViewDidLoad() { base.ViewDidLoad(); if (ClubEventSwitch.On) { throw new NotImplementedException(); } if (Event == null) { Event = new CalendarEvent(); } _keyboardHandler.DismissKeyboardOnBackgroundTap(); AttendeesTextView.Delegate = new AttendeeTextViewDelegate() { ParentController = this }; StartDateTextField.Delegate = new DateTextFieldDelegate() { DateType = DatePickerType.StartDate, DatePickerTitle = "APP/CAL/PICK_START_DATE", DatePickerTitleColor = UIColor.Green, DisplayDatePicker = PresentDatePicker }; EndDateTextField.Delegate = new DateTextFieldDelegate() { DateType = DatePickerType.EndDate, DatePickerTitle = "APP/CAL/PICK_END_DATE", DatePickerTitleColor = UIColor.Red, DisplayDatePicker = PresentDatePicker }; TitleTextField.Delegate = new LimitTextFieldDelegate() { MaxTextLength = 128 }; DescriptionTextView.Delegate = new DescriptionTextViewDelegate() { MaxTextLength = 2048, ParentController = this }; }
public static CalendarEvent InsertCalendarEvent(SiteCalenderApiController.CalendarEvents calendarEvent) { var dataModel = new DesignEntities(); var item = new CalendarEvent { CalendarEventTypeId = calendarEvent.CalendarEventTypeId, Title = calendarEvent.Title, Description = calendarEvent.Description, StartDate = calendarEvent.StartDate, EndDate = calendarEvent.EndDate, Editable = calendarEvent.Editable }; dataModel.CalendarEvents.Add(item); dataModel.SaveChanges(); return item; }
//this method adds events to the database public static int addEvent(CalendarEvent cevent) { //add event to the database and return the primary key of the added event row //insert SqlConnection con = new SqlConnection(connectionString); SqlCommand cmd = new SqlCommand("INSERT INTO event(title, description, event_start, event_end,purpose) VALUES(@title, @description, @event_start, @event_end,@purpose)", con); cmd.Parameters.AddWithValue("@title", cevent.title); cmd.Parameters.AddWithValue("@purpose", cevent.purpose); cmd.Parameters.AddWithValue("@description", cevent.description); cmd.Parameters.AddWithValue("@event_start", cevent.start); cmd.Parameters.AddWithValue("@event_end", cevent.end); int key = 0; using (con) { con.Open(); cmd.ExecuteNonQuery(); //get primary key of inserted row cmd = new SqlCommand("SELECT max(event_id) FROM event where title=@title AND description=@description AND event_start=@event_start AND event_end=@event_end", con); cmd.Parameters.AddWithValue("@title", cevent.title); cmd.Parameters.AddWithValue("@description", cevent.description); cmd.Parameters.AddWithValue("@event_start", cevent.start); cmd.Parameters.AddWithValue("@event_end", cevent.end); key = (int)cmd.ExecuteScalar(); cmd = new SqlCommand(); cmd.Connection = con; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "[OpenAppointments]"; cmd.Parameters.AddWithValue("@start", cevent.start); cmd.Parameters.AddWithValue("@end", cevent.end); cmd.Parameters.AddWithValue("@interval", cevent.interval); cmd.Parameters.AddWithValue("@CPAID", cevent.CPAID); cmd.Parameters.AddWithValue("@customerName", cevent.title); cmd.Parameters.AddWithValue("@purposeOfVisit", cevent.purpose); cmd.Parameters.AddWithValue("@contactNumber", cevent.contactNumber); cmd.Parameters.AddWithValue("@note", cevent.description); cmd.Parameters.AddWithValue("@isOpen", string.IsNullOrEmpty(cevent.title)); cmd.ExecuteNonQuery(); } return key; }
public void UpdateSnoozeOptions(CalendarEvent calendarEvent) { if (calendarEvent == null) return; SnoozeCollection.Remove(-5); SnoozeCollection.Remove(-10); if (calendarEvent.StartTime.Subtract(TimeUtility.GetTimeSpan(10)) > DateTime.Now) { SnoozeCollection.Insert(0, -10); } if (calendarEvent.StartTime.Subtract(TimeUtility.GetTimeSpan(5)) > DateTime.Now) { SnoozeCollection.Insert(0, -5); } }
public virtual void SendWithCalendarEvent(string address, string subject, string body, CalendarEvent calendarEvent, int releaseDuration) { //var config = Configuration.GetPluginConfiguration(); var mail = ConstructMailMessage(new List<string> { address }, subject, _config.UserName); var client = ConstructSmtpClient(_config.Smtp, _config.UserName, _config.Password); var outlookEvent = Mapper.Map<CalendarEvent, OutlookEventEntity>(calendarEvent); new IcsConstructor().Build(outlookEvent, mail, body, releaseDuration, string.IsNullOrWhiteSpace(outlookEvent.Organizer) ? _config.UserName : outlookEvent.Organizer); DisableServerSertificateValidation(); client.Send(mail); }
public JsonResult Add(WijmoEvent ev) { var y = HttpContext.Request.InputStream; y.Position = 0; var json = string.Empty; using (var reader = new StreamReader(y)) { json = reader.ReadToEnd(); } var repository = new Calendar.Respository.MongoDB.CalendarRepository<CalendarEvent>("CalendarEvents"); var calendarEvent = new CalendarEvent { WijmoEvent = ev }; var smr = repository.Insert(calendarEvent); if (smr != null) { return Json(new { success = true }); } return Json(new { success = false }); }
public override void SendWithCalendarEvent(string address, string subject, string body, CalendarEvent outlookEvent, int releaseDuration) { var config = PluginConfiguration.GetPluginConfiguration(); if (!string.IsNullOrEmpty(config.RedirectToEmail) && !address.Equals(config.RedirectToEmail, StringComparison.InvariantCultureIgnoreCase)) { base.SendWithCalendarEvent( config.RedirectToEmail, subject, "Original addresses: " + address + "<br/ >---------------------<br/ >" + body, outlookEvent, releaseDuration); return; } base.SendWithCalendarEvent(address, subject, body, outlookEvent, releaseDuration); }
public static string UpdateEvent(CalendarEvent cevent) { List<int> idList = (List<int>)System.Web.HttpContext.Current.Session["idList"]; if (idList != null && idList.Contains(cevent.id)) { if (CheckAlphaNumeric(cevent.title) && CheckAlphaNumeric(cevent.description)) { EventDAO.updateEvent(cevent.id, cevent.title, cevent.description); return "updated event with id:" + cevent.id + " update title to: " + cevent.title + " update description to: " + cevent.description; } } return "unable to update event with id:" + cevent.id + " title : " + cevent.title + " description : " + cevent.description; }
public IObservable<ICalendarEvent> LoadCalendar(IProfile activeProfile) { return Observable.Create<ICalendarEvent>(o => { var x = new CalendarEvent { Start = DateTimeOffset.UtcNow.Date.AddDays(3).AddHours(10), End = DateTimeOffset.UtcNow.Date.AddDays(3).AddHours(12), Name = "Lunch with Lee", Provider = GoogleCalendarProvider.Instance }; o.OnNext(x); x = new CalendarEvent { Start = DateTimeOffset.UtcNow.Date.AddDays(1).AddHours(18), End = DateTimeOffset.UtcNow.Date.AddDays(1).AddHours(19.5), Name = "Training", Provider = GoogleCalendarProvider.Instance }; o.OnNext(x); x = new CalendarEvent { Start = DateTimeOffset.UtcNow.Date.AddHours(18), End = DateTimeOffset.UtcNow.Date.AddHours(19.5), Name = "Document review", Provider = GoogleCalendarProvider.Instance }; o.OnNext(x); x = new CalendarEvent { Start = DateTimeOffset.UtcNow.Date.AddDays(-10).AddHours(18), End = DateTimeOffset.UtcNow.Date.AddDays(-10).AddHours(19.5), Name = "Document design session", Provider = GoogleCalendarProvider.Instance }; o.OnNext(x); o.OnCompleted(); return Disposable.Empty; }); }
public void SendAssignmentReminderEmail(CalendarEvent calendarEvent) { var email = Email .From("*****@*****.**","Congregation Assignment Reminder") .To(calendarEvent.Email) .Subject("Congregation Assignment Reminder: " + calendarEvent.Title + " " + calendarEvent.AssignmnetDate.ToShortDateString()) .UsingClient(_smtpClient) .UsingTemplateFromFile("emailtemplate.txt", new { Name = calendarEvent.Name, Assignment = calendarEvent.Assignment, Date = calendarEvent.AssignmnetDate.ToShortDateString() }); if (calendarEvent.Assignment.Contains("Tidying Assignment") || calendarEvent.Assignment.Contains("Cleaning Assignment")) { var location = string.Concat(AppDomain.CurrentDomain.BaseDirectory, "\\Lists\\GroupCleaningReminders.pdf"); var attachment = new Attachment(location, MediaTypeNames.Application.Pdf); email.Attach(attachment); } email.Send(); }
public void ListEventCheckOrder() { EventManager eventManager = new EventManager(); DateTime dateOne = new DateTime(2000, 01, 01, 00, 00, 00); DateTime dateTwo = new DateTime(2010, 12, 31, 23, 59, 59); DateTime dateThree = new DateTime(2019, 05, 16, 13, 30, 00); CalendarEvent calendarEventOne = new CalendarEvent(dateOne, "party", "somewhere"); CalendarEvent calendarEventTwo = new CalendarEvent(dateTwo, "exam", "somewhere"); CalendarEvent calendarEventThree = new CalendarEvent(dateThree, "party", "club"); CalendarEvent calendarEventFour = new CalendarEvent(dateOne, "exam", "academy"); CalendarEvent calendarEventFive = new CalendarEvent(dateTwo, "sleep", null); CalendarEvent calendarEventSix = new CalendarEvent(dateThree, "party", null); CalendarEvent calendarEventSeven = new CalendarEvent(dateTwo, "party", null); eventManager.AddEvent(calendarEventOne); eventManager.AddEvent(calendarEventTwo); eventManager.AddEvent(calendarEventThree); eventManager.AddEvent(calendarEventFour); eventManager.AddEvent(calendarEventFive); eventManager.AddEvent(calendarEventSix); eventManager.AddEvent(calendarEventSeven); IEnumerable<CalendarEvent> list = eventManager.ListEvents(dateTwo, 5); Assert.AreEqual(5, list.Count()); string expected = calendarEventTwo.ToString() + "\n" + calendarEventSeven.ToString() + "\n" + calendarEventFive.ToString() + "\n" + calendarEventSix.ToString() + "\n" + calendarEventThree.ToString(); string actual = list.First().ToString() + "\n" + list.Skip(1).First().ToString() + "\n" + list.Skip(2).First().ToString() + "\n" + list.Skip(3).First().ToString() + "\n" + list.Skip(4).First().ToString(); Assert.AreEqual(expected, actual); }
public string GetCalendar() { var now = DateTime.Now; var estart = now.AddDays(1); var eend = now.AddMinutes(30); var calendar = new Ical.Net.Calendar(); IList <Attendee> attendees = new List <Attendee>(); Organizer orgniser = new Organizer { CommonName = "Face My Resume", Value = new Uri($"mailto:[email protected]") }; //attendees.Add(new Attendee("MAILTO:[email protected]") //{ // CommonName = "Siva Shankaran", // Role = ParticipationRole.RequiredParticipant, // ParticipationStatus = ToDoParticipationStatus.Tentative, // Rsvp = true, // Type = "INDIVIDUAL" //}); attendees.Add(new Attendee("MAILTO:[email protected]") { //Role = ParticipationRole.RequiredParticipant, //ParticipationStatus = ToDoParticipationStatus.Tentative, //Rsvp = true, //Type = "INDIVIDUAL" }); Alarm ealarm = new Alarm(); ealarm.Action = AlarmAction.Display; ealarm.Trigger = new Trigger(TimeSpan.FromMinutes(-30)); const string eTz = "Eastern Standard Time"; var tzi = TimeZoneInfo.FindSystemTimeZoneById(eTz); var timezone = VTimeZone.FromSystemTimeZone(tzi); calendar.AddTimeZone(timezone); // calendar.AddTimeZone(new VTimeZone("America/New_York")); calendar.Method = "REQUEST"; var e = new CalendarEvent { Start = new CalDateTime(estart), End = new CalDateTime(eend), LastModified = new CalDateTime(now), Location = "", Alarms = { ealarm }, Sequence = 0, Summary = "Telephonic Interview", Description = "Calendar sent using Face My Resume App", Status = "CONFIRMED", Attendees = attendees, Organizer = orgniser }; calendar.Events.Add(e); var e2 = new CalendarEvent { Start = new CalDateTime(eend), End = new CalDateTime(eend), LastModified = new CalDateTime(now), Location = "", Alarms = { ealarm }, Sequence = 0, Summary = "InPerson Interview", Description = "Calendar sent using Face My Resume App", Status = "CONFIRMED", Attendees = attendees, Organizer = orgniser }; //calendar.Events.Add(e2); var serializer = new CalendarSerializer(); var serializedCalendar = serializer.SerializeToString(calendar); //return serializedCalendar.Replace("github.com/rianjs/","facemyresume.com/app/").Replace("ical.net", "cal"); return(serializedCalendar.Replace("\n ", "")); }
public void Post([FromForm] CalendarEvent calEvent) { calEvent.id = Guid.NewGuid().ToString(); events.Add(calEvent); }
//this method retrieves all events within range start-end public static List <CalendarEvent> getEvents(DateTime start, DateTime end) { int value = Convert.ToInt32(HttpContext.Current.Session["viewusertimetable"]); int value2 = Convert.ToInt32(HttpContext.Current.Session["userid"]); int usernumber = 0; if (value == 0) { List <CalendarEvent> events = new List <CalendarEvent>(); SqlConnection con = new SqlConnection(connectionString); SqlCommand cmd = new SqlCommand("SELECT eventID, description, title, event_start, event_end, userID FROM SIS_EVENT WHERE userID IN (0, @user_id) AND event_start >= @start AND event_end <= @end ", con); cmd.Parameters.AddWithValue("@start", start); cmd.Parameters.AddWithValue("@end", end); cmd.Parameters.AddWithValue("@user_id", value2); using (con) { con.Open(); SqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { CalendarEvent cevent = new CalendarEvent(); cevent.id = (int)reader["eventID"]; cevent.title = (string)reader["title"]; cevent.description = (string)reader["description"]; cevent.start = (DateTime)reader["event_start"]; cevent.end = (DateTime)reader["event_end"]; events.Add(cevent); } } return(events); } else { List <CalendarEvent> events = new List <CalendarEvent>(); SqlConnection con = new SqlConnection(connectionString); SqlCommand cmd = new SqlCommand("SELECT eventID, description, title, event_start, event_end, userID FROM SIS_EVENT WHERE userID IN (0, @user_id) AND event_start >= @start AND event_end <= @end", con); cmd.Parameters.AddWithValue("@start", start); cmd.Parameters.AddWithValue("@end", end); cmd.Parameters.AddWithValue("@user_id", HttpContext.Current.Session["viewusertimetable"]); using (con) { con.Open(); SqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { CalendarEvent cevent = new CalendarEvent(); cevent.id = (int)reader["eventID"]; cevent.title = (string)reader["title"]; cevent.description = (string)reader["description"]; cevent.start = (DateTime)reader["event_start"]; cevent.end = (DateTime)reader["event_end"]; events.Add(cevent); } } return(events); } //side note: if you want to show events only related to particular users, //if user id of that user is stored in session as Session["userid"] //the event table also contains a extra field named 'user_id' to mark the event for that particular user //then you can modify the SQL as: //SELECT event_id, description, title, event_start, event_end FROM event where user_id=@user_id AND event_start>=@start AND event_end<=@end //then add paramter as:cmd.Parameters.AddWithValue("@user_id", HttpContext.Current.Session["userid"]); }
public override void RebuildIndex( PageSettings pageSettings, string indexPath) { if (WebConfigSettings.DisableSearchIndex) { return; } if (pageSettings == null) { return; } //don't index pending/unpublished pages if (pageSettings.IsPending) { return; } log.Info("CalendarEventIndexBuilderProvider indexing page - " + pageSettings.PageName); try { Guid calendarFeatureGuid = new Guid("71183E1F-FBCD-4d00-98DC-F1FC17522199"); ModuleDefinition calendarFeature = new ModuleDefinition(calendarFeatureGuid); List <PageModule> pageModules = PageModule.GetPageModulesByPage(pageSettings.PageId); DataTable dataTable = CalendarEvent.GetEventsByPage(pageSettings.SiteId, pageSettings.PageId); foreach (DataRow row in dataTable.Rows) { IndexItem indexItem = new IndexItem(); indexItem.SiteId = pageSettings.SiteId; indexItem.PageId = pageSettings.PageId; indexItem.PageName = pageSettings.PageName; indexItem.PageIndex = pageSettings.PageIndex; indexItem.ViewRoles = pageSettings.AuthorizedRoles; indexItem.ModuleViewRoles = row["ViewRoles"].ToString(); indexItem.FeatureId = calendarFeatureGuid.ToString(); indexItem.FeatureName = calendarFeature.FeatureName; indexItem.FeatureResourceFile = calendarFeature.ResourceFile; indexItem.ItemId = Convert.ToInt32(row["ItemID"], CultureInfo.InvariantCulture); indexItem.ModuleId = Convert.ToInt32(row["ModuleID"], CultureInfo.InvariantCulture); indexItem.ModuleTitle = row["ModuleTitle"].ToString(); indexItem.Title = row["Title"].ToString(); indexItem.Content = row["Description"].ToString(); indexItem.ViewPage = "EventCalendar/EventDetails.aspx"; // lookup publish dates foreach (PageModule pageModule in pageModules) { if (indexItem.ModuleId == pageModule.ModuleId) { indexItem.PublishBeginDate = pageModule.PublishBeginDate; indexItem.PublishEndDate = pageModule.PublishEndDate; } } IndexHelper.RebuildIndex(indexItem, indexPath); if (log.IsDebugEnabled) { log.Debug("Indexed " + indexItem.Title); } } } catch (System.Data.Common.DbException ex) { log.Error(ex); } }
/// <summary> /// Add new event to a calendar or update an existing event. /// Throws if Calendar ID is empty, calendar does not exist, or calendar is read-only. /// </summary> /// <param name="calendar">Destination calendar</param> /// <param name="calendarEvent">Event to add or update</param> /// <exception cref="System.ArgumentException">Calendar is not specified, does not exist on device, or is read-only</exception> /// <exception cref="System.UnauthorizedAccessException">Calendar access denied</exception> /// <exception cref="System.InvalidOperationException">Editing recurring events is not supported</exception> /// <exception cref="Plugin.Calendars.Abstractions.PlatformException">Unexpected platform-specific error</exception> public async Task AddOrUpdateEventAsync(Calendar calendar, CalendarEvent calendarEvent) { await RequestCalendarAccess().ConfigureAwait(false); EKCalendar deviceCalendar = null; if (string.IsNullOrEmpty(calendar.ExternalID)) { throw new ArgumentException("Missing calendar identifier", nameof(calendar)); } else { deviceCalendar = _eventStore.GetCalendar(calendar.ExternalID); if (deviceCalendar == null) { throw new ArgumentException("Specified calendar not found on device"); } } EKEvent iosEvent = null; // If Event already corresponds to an existing EKEvent in the target // Calendar, then edit that instead of creating a new one. // if (!string.IsNullOrEmpty(calendarEvent.ExternalID)) { var existingEvent = _eventStore.EventFromIdentifier(calendarEvent.ExternalID); if (existingEvent?.HasRecurrenceRules == true) { throw new InvalidOperationException("Editing recurring events is not supported"); } if (existingEvent?.Calendar.CalendarIdentifier == deviceCalendar.CalendarIdentifier) { iosEvent = existingEvent; } } if (iosEvent == null) { iosEvent = EKEvent.FromStore(_eventStore); } iosEvent.Title = calendarEvent.Name; iosEvent.Notes = calendarEvent.Description; iosEvent.AllDay = calendarEvent.AllDay; iosEvent.Location = calendarEvent.Location ?? string.Empty; iosEvent.StartDate = calendarEvent.Start.ToNSDate(); // If set to AllDay and given an EndDate of 12am the next day, EventKit // assumes that the event consumes two full days. // (whereas WinPhone/Android consider that one day, and thus so do we) // iosEvent.EndDate = calendarEvent.AllDay ? calendarEvent.End.AddMilliseconds(-1).ToNSDate() : calendarEvent.End.ToNSDate(); iosEvent.Calendar = deviceCalendar; NSError error = null; if (!_eventStore.SaveEvent(iosEvent, EKSpan.ThisEvent, out error)) { // Without this, the eventStore will continue to return the "updated" // event even though the save failed! // (this obviously also resets any other changes, but since we own the eventStore // we can be pretty confident that won't be an issue) // _eventStore.Reset(); // Technically, probably any ekerrordomain error would be an ArgumentException? // - but we don't necessarily know *which* argument (at least not without the code) // - for now, just focusing on the start > end scenario and translating the rest to PlatformException. Can always add more later. if (error.Domain == _ekErrorDomain && error.Code == (int)EKErrorCode.DatesInverted) { throw new ArgumentException(error.LocalizedDescription, new NSErrorException(error)); } else { throw new PlatformException(error.LocalizedDescription, new NSErrorException(error)); } } calendarEvent.ExternalID = iosEvent.EventIdentifier; }
public Success(CalendarEvent @event, string createdBy, DateTimeOffset timestamp) { this.Event = @event; this.CreatedBy = createdBy; this.Timestamp = timestamp; }
protected virtual void OnCalendarEvent(CalendarEventArgs e) { Console.WriteLine("Day has changed. It is now {0}", _currentDay); CalendarEvent?.Invoke(this, e); }
private static void IndexItem(CalendarEvent calendarEvent) { if (WebConfigSettings.DisableSearchIndex) { return; } if (calendarEvent == null) { return; } try { //SiteSettings siteSettings = CacheHelper.GetCurrentSiteSettings(); //if ((siteSettings == null) // || (calendarEvent == null)) //{ // return; //} Module module = new Module(calendarEvent.ModuleId); Guid calendarFeatureGuid = new Guid("71183E1F-FBCD-4d00-98DC-F1FC17522199"); ModuleDefinition calendarFeature = new ModuleDefinition(calendarFeatureGuid); // get list of pages where this module is published List <PageModule> pageModules = PageModule.GetPageModulesByModule(calendarEvent.ModuleId); foreach (PageModule pageModule in pageModules) { PageSettings pageSettings = new PageSettings( calendarEvent.SiteId, pageModule.PageId); //don't index pending/unpublished pages if (pageSettings.IsPending) { continue; } IndexItem indexItem = new IndexItem(); if (calendarEvent.SearchIndexPath.Length > 0) { indexItem.IndexPath = calendarEvent.SearchIndexPath; } indexItem.SiteId = calendarEvent.SiteId; indexItem.PageId = pageSettings.PageId; indexItem.PageName = pageSettings.PageName; indexItem.ViewRoles = pageSettings.AuthorizedRoles; indexItem.ModuleViewRoles = module.ViewRoles; indexItem.ItemId = calendarEvent.ItemId; indexItem.ModuleId = calendarEvent.ModuleId; indexItem.ViewPage = "EventCalendar/EventDetails.aspx"; indexItem.FeatureId = calendarFeatureGuid.ToString(); indexItem.FeatureName = calendarFeature.FeatureName; indexItem.FeatureResourceFile = calendarFeature.ResourceFile; indexItem.ModuleTitle = module.ModuleTitle; indexItem.Title = calendarEvent.Title; indexItem.Content = calendarEvent.Description; indexItem.PublishBeginDate = pageModule.PublishBeginDate; indexItem.PublishEndDate = pageModule.PublishEndDate; IndexHelper.RebuildIndex(indexItem); } if (log.IsDebugEnabled) { log.Debug("Indexed " + calendarEvent.Title); } } catch (System.Data.Common.DbException ex) { if (log.IsErrorEnabled) { log.Error("CalendarEventIndexBuilderProvider.IndexItem", ex); } } }
public override T Convert <T, U>(U entity) { if (entity is Notification) { Notification notification = entity as Notification; if (notification == null) { return(default(T)); } BO.Notification notificationBO = new BO.Notification(); notificationBO.ID = notification.Id; notificationBO.CompanyId = notification.CompanyId; notificationBO.LocationId = notification.LocationId; notificationBO.StartDate = notification.StartDate; notificationBO.EndDate = notification.EndDate; notificationBO.IsViewed = notification.IsViewed; notificationBO.CreateByUserID = notification.CreateByUserID; if (notification.IsDeleted.HasValue) { notificationBO.IsDeleted = notification.IsDeleted.Value; } if (notification.UpdateByUserID.HasValue) { notificationBO.UpdateByUserID = notification.UpdateByUserID.Value; } //if (notification.Company != null) //{ // BO.Company boCompany = new BO.Company(); // using (CompanyRepository cmp = new CompanyRepository(_context)) // { // boCompany = cmp.Convert<BO.Company, Company>(notification.Company); // notificationBO.Company = boCompany; // } //} //if (notification.Location != null) //{ // BO.Location boLocation = new BO.Location(); // using (LocationRepository cmp = new LocationRepository(_context)) // { // boLocation = cmp.Convert<BO.Location, Location>(notification.Location); // notificationBO.Location = boLocation; // } //} return((T)(object)notificationBO); } else if (entity is CalendarEvent) { CalendarEvent CalendarEventDB = entity as CalendarEvent; if (CalendarEventDB == null) { return(default(T)); } BO.CalendarEvent CalendarEvent = new BO.CalendarEvent(); using (CalendarEventRepository calEventRep = new CalendarEventRepository(_context)) { CalendarEvent = calEventRep.Convert <BO.CalendarEvent, CalendarEvent>(CalendarEventDB); } return((T)(object)CalendarEvent); } return(default(T)); }
private void AddToPendingActions(CalendarEvent @event) { this.logger.Debug($"Employee {this.employeeId}. Pending action added for event {@event.EventId}."); this.pendingActionEvents[@event.EventId] = @event; }
public PrintingCalendarEvent(CalendarEvent calendarEvent) { _calendarEvent = calendarEvent; CharactersPrinted = 0; }
private static string SerializeToString(CalendarEvent e) => SerializeToString(new Calendar { Events = { e } });
public void CompleteEvent(int eventId, bool isComplete) { CalendarEvent.CompleteEvent(eventId, isComplete); }
public static void Delete(int eventId) { CalendarEvent cal = new CalendarEvent(); cal.Delete(eventId); }
public AppointmentInfo(CalendarEvent app) { InitializeComponent(); this.BindingContext = new AppointmentInfoViewModel(app); }
public override void DeleteContent(int moduleId, Guid moduleGuid) { CalendarEvent.DeleteByModule(moduleId); }
public InsertSickLeave(CalendarEvent @event, string createdBy, DateTimeOffset timestamp) { this.Event = @event; this.CreatedBy = createdBy; this.Timestamp = timestamp; }
public async Task <IActionResult> Index() { var CalendarModel = new List <CalendarEvent>(); // Check if database has existing prediction values if (repository.CheckPredictions()) { // If database prediction table is empty // Calculate predictions for all room types occupancy and rates CalendarModel = CalendarPredictions(); } else { // If database already has existing predicted data var list = repository.GetPredictions(); foreach (var pred in list) { var modal = new CalendarEvent(); float totalRevenue = 0; // Calculate the ADR var totalOccupancy = pred.SprOccupancy + pred.StdOccupancy + pred.FamOccupancy + pred.SuiteOccupancy + pred.DlxOccupancy; if (pred.SelectedRoomRate == 1) { totalRevenue = (pred.SprRoomRate * pred.SprOccupancy) + (pred.StdRoomRate * pred.StdOccupancy) + (pred.FamRoomRate * pred.FamOccupancy) + (pred.SuiteRoomRate * pred.SuiteOccupancy) + (pred.DlxRoomRate * pred.DlxOccupancy); } else if (pred.SelectedRoomRate == 2) { totalRevenue = (DEFAULT_SPR * pred.SprOccupancy) + (DEFAULT_STD * pred.StdOccupancy) + (DEFAULT_FAM * pred.FamOccupancy) + (DEFAULT_SUITE * pred.SuiteOccupancy) + (DEFAULT_DLX * pred.DlxOccupancy); } else { totalRevenue = (pred.AdjSprRoomRate * pred.SprOccupancy) + (pred.AdjStdRoomRate * pred.StdOccupancy) + (pred.AdjFamRoomRate * pred.FamOccupancy) + (pred.AdjSuiteRoomRate * pred.SuiteOccupancy) + (pred.AdjDlxRoomRate * pred.DlxOccupancy); } var adr = totalRevenue / totalOccupancy; var revpar = totalRevenue / 71; var occupancyRate = totalOccupancy / 71; var percent = Math.Round((adr - DEFAULT_ADR) / DEFAULT_ADR * 100, 2); modal.Date = pred.Date; modal.Adr = adr.ToString("N0"); modal.RevPar = revpar.ToString("N0"); modal.Occupancy = occupancyRate.ToString("#0.##%"); modal.SelectedPlan = pred.SelectedRoomRate; if (adr > DEFAULT_ADR) { modal.Type = "success"; } else if (adr == DEFAULT_ADR) { modal.Type = "warning"; } else { modal.Type = "danger"; } if (percent < 0) { modal.Percent = percent.ToString() + "%"; } else { modal.Percent = "+" + percent.ToString() + "%"; } CalendarModel.Add(modal); } // If there's no new predictions in the database if (repository.CheckIfNeedsPredictions(DateTime.Today) == true) { var Predictionlist = new List <CalendarEvent>(); Predictionlist = CalendarPredictions(); foreach (var item in Predictionlist) { CalendarModel.Add(item); } } } return(View(CalendarModel)); }
public static string SerializeToString(CalendarEvent calendarEvent) => SerializeToString(new Calendar { Events = { calendarEvent } });
static void Main(string[] args) { Parser.Default.ParseArguments <Options>(args).WithParsed <Options>(o => { ICinema cinema = o.City switch { City.Basel => new BaselCinema(), City.Bern => new BernCinema(), City.Geneva => new GenevaCinema(), City.LausanneFlo => new LausanneFloCinema(), City.LausanneGal => new LausanneGalCinema(), City.Lucerne => new LucerneCinema(), City.Spreitenbach => new SpreitenbachCinema(), City.Zurich => new ZurichCinema(), _ => new GenevaCinema() }; /* Retrieve from pathe.ch upcoming movies */ RestClient client = new RestClient("https://pathe.ch/solr/pathe-movies"); IRestRequest upcomingRequest = new RestRequest("upcoming?{fq}", Method.GET).AddParameter("fq", $"site:({cinema.Site})"); IRestResponse <UpcomingApi.Upcoming> upcomingResponse = client.Execute <UpcomingApi.Upcoming>(upcomingRequest); /* Maybe the user has no internet or an error occured during deserialization */ if (!upcomingResponse.IsSuccessful || upcomingResponse.Data == null) { Console.Error.WriteLine($"An error occured during the upcoming request ({upcomingResponse.ErrorMessage})."); return; } if (upcomingResponse.Data.Response.Docs.Count == 0) { Console.Error.WriteLine($"No upcoming movie for the cinema in {o.City}."); return; } /* Retrieve details for all upcoming movies */ IRestRequest detailRequest = new RestRequest("detail?{fq}").AddParameter("fq", $"id:({String.Join(" ", upcomingResponse.Data.Response.Docs.Select(m => m.MovieId).ToArray())})"); IRestResponse <DetailApi.Detail> detailResponse = client.Execute <DetailApi.Detail>(detailRequest); /* Maybe the user has no internet or an error occured during deserialization */ if (!detailResponse.IsSuccessful || detailResponse.Data == null) { Console.Error.WriteLine($"An error occured during the detail request ({detailResponse.ErrorMessage})."); return; } if (detailResponse.Data.Response.Docs.Count == 0) { Console.Error.WriteLine($"No description retrieved for {o.City} cinema films."); return; } Calendar calendar = new Calendar(); foreach (DetailApi.Doc doc in detailResponse.Data.Response.Docs) { CalendarEvent calendarEvent = new CalendarEvent(); switch (o.Language) { case Language.De: calendarEvent.Summary = doc.TitleDe; calendarEvent.Description = doc.SynopsisDe; break; case Language.En: calendarEvent.Summary = doc.Title; calendarEvent.Description = doc.SynopsisEn; break; case Language.Fr: calendarEvent.Summary = doc.TitleFr; calendarEvent.Description = doc.SynopsisFr; break; } ; switch (o.City) { case City.Basel: calendarEvent.Start = new CalDateTime(doc.ReleaseDeCh.Value.DateTime); calendarEvent.End = new CalDateTime(doc.ReleaseDeCh.Value.DateTime); break; case City.Bern: calendarEvent.Start = new CalDateTime(doc.ReleaseDeCh.Value.DateTime); calendarEvent.End = new CalDateTime(doc.ReleaseDeCh.Value.DateTime); break; case City.Geneva: calendarEvent.Start = new CalDateTime(doc.ReleaseFrCh.Value.DateTime); calendarEvent.End = new CalDateTime(doc.ReleaseFrCh.Value.DateTime); break; case City.LausanneFlo: calendarEvent.Start = new CalDateTime(doc.ReleaseFrCh.Value.DateTime); calendarEvent.End = new CalDateTime(doc.ReleaseFrCh.Value.DateTime); break; case City.LausanneGal: calendarEvent.Start = new CalDateTime(doc.ReleaseFrCh.Value.DateTime); calendarEvent.End = new CalDateTime(doc.ReleaseFrCh.Value.DateTime); break; case City.Lucerne: calendarEvent.Start = new CalDateTime(doc.ReleaseDeCh.Value.DateTime); calendarEvent.End = new CalDateTime(doc.ReleaseDeCh.Value.DateTime); break; case City.Spreitenbach: calendarEvent.Start = new CalDateTime(doc.ReleaseDeCh.Value.DateTime); calendarEvent.End = new CalDateTime(doc.ReleaseDeCh.Value.DateTime); break; case City.Zurich: calendarEvent.Start = new CalDateTime(doc.ReleaseDeCh.Value.DateTime); calendarEvent.End = new CalDateTime(doc.ReleaseDeCh.Value.DateTime); break; } calendarEvent.Location = cinema.Address; calendarEvent.GeographicLocation = new GeographicLocation(cinema.Latitude, cinema.Longitude); string vimeoId = o.TrailerLanguage switch { TrailerLanguage.De => !string.IsNullOrEmpty(doc.TrailerEmbedDe) ? doc.TrailerEmbedDe.Remove(0, 1) : "", TrailerLanguage.Ov => !string.IsNullOrEmpty(doc.TrailerEmbedOv) ? doc.TrailerEmbedOv.Remove(0, 1) : "", TrailerLanguage.Fr => !string.IsNullOrEmpty(doc.TrailerEmbedFr) ? doc.TrailerEmbedFr.Remove(0, 1) : "", _ => "" }; if (!string.IsNullOrEmpty(o.VimeoBypassUrl) && !string.IsNullOrEmpty(vimeoId)) { calendarEvent.Url = new Uri($"{o.VimeoBypassUrl}?v={vimeoId}"); } calendar.Events.Add(calendarEvent); } CalendarSerializer serializer = new CalendarSerializer(); string serializedCalendar = serializer.SerializeToString(calendar); try { File.WriteAllText(o.Output, serializedCalendar); Console.WriteLine($"Calendar has been exported to '{o.Output}'."); } catch (Exception ex) { Console.Error.WriteLine(ex.Message); } }); }
public List <CalendarEvent> GetCalendarItems(int userId, string userRole) { if (userRole == "Student") { var events = (from a in _classDbContext.Assignments join uc in _classDbContext.UserCourses on a.CourseID equals uc.CourseID where uc.UserID == userId select new CalendarEvent { Id = a.AssignmentID.ToString(), AllDay = true, Start = a.DueDate, Title = a.AssignmentTitle }).ToList(); var classesDays = (from uc in _classDbContext.UserCourses join c in _classDbContext.Courses on uc.CourseID equals c.CourseID where uc.UserID == userId select c).ToList(); classesDays.ForEach(c => { CalendarEvent calendarEvent = new CalendarEvent(); calendarEvent.AllDay = true; calendarEvent.Title = c.Title; calendarEvent.DaysOfWeek = new List <int>(); char[] days = c.MeetingDays.ToUpper().ToCharArray(); if (days.Contains('M')) { calendarEvent.DaysOfWeek.Add(1); } if (days.Contains('T')) { calendarEvent.DaysOfWeek.Add(2); } if (days.Contains('W')) { calendarEvent.DaysOfWeek.Add(3); } if (days.Contains('R')) { calendarEvent.DaysOfWeek.Add(4); } if (days.Contains('F')) { calendarEvent.DaysOfWeek.Add(5); } calendarEvent.ClassNames = new string[] { "courseCalendarEvent" }; events.Add(calendarEvent); }); return(events); } else { var events = (from a in _classDbContext.Assignments join c in _classDbContext.Courses on a.CourseID equals c.CourseID where c.TeacherID == userId select new CalendarEvent { Id = a.AssignmentID.ToString(), AllDay = true, Start = a.DueDate, Title = a.AssignmentTitle }).ToList(); var classesDays = (from c in _classDbContext.Courses where c.TeacherID == userId select c).ToList(); classesDays.ForEach(c => { CalendarEvent calendarEvent = new CalendarEvent(); calendarEvent.AllDay = true; calendarEvent.Title = c.Title; calendarEvent.DaysOfWeek = new List <int>(); char[] days = c.MeetingDays.ToUpper().ToCharArray(); if (days.Contains('M')) { calendarEvent.DaysOfWeek.Add(1); } if (days.Contains('T')) { calendarEvent.DaysOfWeek.Add(2); } if (days.Contains('W')) { calendarEvent.DaysOfWeek.Add(3); } if (days.Contains('R')) { calendarEvent.DaysOfWeek.Add(4); } if (days.Contains('F')) { calendarEvent.DaysOfWeek.Add(5); } calendarEvent.ClassNames = new string[] { "courseCalendarEvent" }; events.Add(calendarEvent); }); return(events); } }
public void DeleteCalendarEvent(int id) { CalendarEvent calendarEventToDelete = _repo.Query <CalendarEvent>().Where(c => c.Id == id).FirstOrDefault(); _repo.Delete(calendarEventToDelete); }
/// <summary> Retrieves events from the cloud, Stores the data and loads the ListView </summary> private static void LoadEvents() { m_Events = new List <CalendarEvent>(GameManager.Azure.GetEventsByPartitionKeyContains(EventsContainer, CalendarEvent.DateToPartitionMonth(DateTime.Today))); m_Events = m_Events.OrderBy(o => o.Start).ThenBy(o => o.Start).ToList(); }
public CalendarEventEmployeeMetadataFailed(CalendarEvent @event, Exception exception) { this.Event = @event; this.Exception = exception; }
public ConflictCalendarEvent(CalendarEvent entity) { _entity = entity; }
private ValidationResult <RegtimeRegistration> ConvertToRegtimeRegistration(CalendarEvent calendarEvent) { var validationResult = new ValidationResult <RegtimeRegistration>(); var datetime = calendarEvent.DateFrom; var dataFields = calendarEvent.Subject.Split('-'); for (int i = 0; i < dataFields.Length; i++) { dataFields[i] = dataFields[i].Trim(); } if (dataFields.Length > 0 && dataFields[0].Trim() == "IGN") { return(null); } if (dataFields.Length != 4) { int caseNumber; if (dataFields.Length == 2 && (dataFields[0] == "SICK" || dataFields[0] == "FLEX")) { validationResult.IsValid = true; validationResult.Object = new RegtimeRegistration { Type = dataFields[0] == "SICK" ? RegistrationType.HoursS : RegistrationType.HoursF, Id = calendarEvent.Id, Date = datetime, Hours = calendarEvent.Duration, Note = dataFields[1] }; } else { validationResult.Message = $"Missing fields: [{calendarEvent.Subject}] please use format: {EntryFormat} - no dashes in note field!"; } return(validationResult); } else { var customerAlias = dataFields[0]; var customer = _configuration.Customers.FirstOrDefault(x => x.Alias == customerAlias); if (customer == null) { validationResult.Message = $"No customer for entry: [{calendarEvent.Subject}]"; return(validationResult); } var projectAlias = dataFields[1]; var project = customer.GetProject(projectAlias); if (project == null) { validationResult.Message = $"No project for entry: [{calendarEvent.Subject}]"; return(validationResult); } var caseNumberString = dataFields[2]; int caseNumber = 0; if (!string.IsNullOrEmpty(caseNumberString) && !int.TryParse(caseNumberString, out caseNumber)) { validationResult.Message = $"Not valid casenumber for entry: [{calendarEvent.Subject}] please be int or empty"; return(validationResult); } if (calendarEvent.Duration == 0) { validationResult.Message = $"Duration must be over zero for entry: [{calendarEvent.Subject}]"; return(validationResult); } validationResult.IsValid = true; validationResult.Object = new RegtimeRegistration { Type = RegistrationType.HoursA, Id = calendarEvent.Id, Date = datetime, CaseNumber = caseNumberString, Customer = customer.Name, Project = project.Name, Fogbugz = string.IsNullOrEmpty(customer.Fogbugz) ? _configuration.DefaultFogbugz : customer.Fogbugz, Hours = calendarEvent.Duration, Note = dataFields[3] }; } return(validationResult); }
private static string SerializeEvent(CalendarEvent e) => new CalendarSerializer().SerializeToString(new Calendar { Events = { e } });
private List <CalendarEvent> CalendarPredictions() { var CalendarList = new List <CalendarEvent>(); // Get predicted rates for the different room type var SprRoomPred = RoomRatePredictions(7); var StdRoomPred = RoomRatePredictions(8); var FamRoomPred = RoomRatePredictions(9); var SuiteRoomPred = RoomRatePredictions(10); var DlxRoomPred = RoomRatePredictions(11); // Get the predicted occupancy for the different room type var SprOccPred = OccupancyPredictions(7); var StdOccPred = OccupancyPredictions(8); var FamOccPred = OccupancyPredictions(9); var SuiteOccPred = OccupancyPredictions(10); var DlxOccPred = OccupancyPredictions(11); var PredictionList = new List <DailyPredictionModel>(); foreach (var item in SprRoomPred) { // Store into database var pred = new DailyPredictionModel(); var modal = new CalendarEvent(); pred.Date = item.Item1; pred.SprRoomRate = item.Item2; pred.SprOccupancy = SprOccPred.Where(i => i.Item1 == item.Item1).FirstOrDefault().Item2; pred.StdRoomRate = StdRoomPred.Where(i => i.Item1 == item.Item1).FirstOrDefault().Item2; pred.StdOccupancy = StdOccPred.Where(i => i.Item1 == item.Item1).FirstOrDefault().Item2; pred.FamRoomRate = FamRoomPred.Where(i => i.Item1 == item.Item1).FirstOrDefault().Item2; pred.FamOccupancy = FamOccPred.Where(i => i.Item1 == item.Item1).FirstOrDefault().Item2; pred.SuiteRoomRate = SuiteRoomPred.Where(i => i.Item1 == item.Item1).FirstOrDefault().Item2; pred.SuiteOccupancy = SuiteOccPred.Where(i => i.Item1 == item.Item1).FirstOrDefault().Item2; pred.DlxRoomRate = SuiteRoomPred.Where(i => i.Item1 == item.Item1).FirstOrDefault().Item2; pred.DlxOccupancy = DlxOccPred.Where(i => i.Item1 == item.Item1).FirstOrDefault().Item2; pred.SelectedRoomRate = 1; pred.AdjSprRoomRate = 0; pred.AdjStdRoomRate = 0; pred.AdjFamRoomRate = 0; pred.AdjSuiteRoomRate = 0; pred.AdjDlxRoomRate = 0; PredictionList.Add(pred); // Calculate the ADR var totalOccupancy = pred.SprOccupancy + pred.StdOccupancy + pred.FamOccupancy + pred.SuiteOccupancy + pred.DlxOccupancy; var totalRevenue = (pred.SprRoomRate * pred.SprOccupancy) + (pred.StdRoomRate * pred.StdOccupancy) + (pred.FamRoomRate * pred.FamOccupancy) + (pred.SuiteRoomRate * pred.SuiteOccupancy) + (pred.DlxRoomRate * pred.DlxOccupancy); var adr = totalRevenue / totalOccupancy; var revpar = totalRevenue / 71; var occupancyRate = totalOccupancy / 71; var percent = Math.Round((adr - DEFAULT_ADR) / DEFAULT_ADR * 100, 0); modal.Date = item.Item1; modal.Adr = adr.ToString("N0"); modal.RevPar = revpar.ToString("N0"); modal.Occupancy = occupancyRate.ToString("#0.##%"); modal.SelectedPlan = 1; if (adr > DEFAULT_ADR) { modal.Type = "success"; } else if (adr == DEFAULT_ADR) { modal.Type = "warning"; } else { modal.Type = "danger"; } if (percent < 0) { modal.Percent = percent.ToString() + "%"; } else { modal.Percent = "+" + percent.ToString() + "%"; } CalendarList.Add(modal); } // Add the list of new predictions into database repository.AddPredictions(PredictionList); return(CalendarList); }
} // = new List<Contact>(); public void AddEvent(CalendarEvent inEvent) { Events.Add(inEvent); }
public async Task DoLoadCalendarEventsListed(DateTime dStart, DateTime dEnd, int iMax = 0, int iError = 0) { xLog.Debug("DoLoadCalendarEventsListed: Start: " + bIsLoadingCalendarEventsListed.ToString()); if (bIsLoadingCalendarEventsListed) { xLog.Debug("xxxxxxxxxxxxxxxDoLoadCalendarEventsListed: Start: " + bIsLoadingCalendarEventsListed.ToString()); } if (false) { while (bIsLoadingCalendarEventsListed) { Task.Delay(25).Wait(); } bIsLoadingCalendarEventsListed = true; xLog.Debug("DoLoadCalendarEventsListed: Start Now"); } bIsLoadingCalendarEventsListed = true; try { int iMs = 0; var newEvents = new SortedDictionary <DateTime, CalendarEvent>(); LocationTimeHolder lthCheck = LocationTimeHolder.LocalInstanceClone; DateTime swStart = DateTime.Now; if (sys.isWindows) { var rnd = new Random(DateTime.Now.Second); for (int i = 0; i < rnd.Next(5) * 2; i++) { string name = "win"; var calEvent = new CalendarEvent(); calEvent.Title = $"{name} event {i}"; calEvent.Description = $"This is {name} event{i}'s description!"; calEvent.Start = dStart.AddHours(new Random().Next(8) + 10).AddMinutes(new Random().Next(50)); calEvent.End = calEvent.Start.AddHours(new Random().Next(5) + 1); calEvent.EventColor = xColor.FromRgb(rnd.Next(200), rnd.Next(200), rnd.Next(200)); calEvent.DisplayColorString = calEvent.EventColorString; //CheckEventLocationTime(lthCheck, calendar, calEvent); newEvents.Add(calEvent.SortTime.AddMilliseconds(iMs++), calEvent); } } else { var calendars = new List <DeviceCalendar.Calendar>(await DeviceCalendar.DeviceCalendar.GetCalendarsAsync()); foreach (DeviceCalendar.Calendar calendar in calendars) { if (string.IsNullOrEmpty(CalendarFilter) || !CalendarFilter.Contains("|" + calendar.ExternalID + "|")) { var calEvents = await DeviceCalendar.DeviceCalendar.GetEventsAsync(calendar, dStart, dEnd); foreach (CalendarEvent calEvent in calEvents) { CheckEventLocationTime(lthCheck, calendar, calEvent); newEvents.Add(calEvent.SortTime.AddMilliseconds(iMs++), calEvent); if (iMax > 0 && iMs >= iMax) { break; } iMs++; } } } } xLog.Debug("LoadAndCheckEvents took " + (DateTime.Now - swStart).TotalMilliseconds.ToString() + "ms for " + iMs.ToString() + " Events"); lock (ListedDates) { ListedDates.Clear(); ListedDates.AddRange(newEvents.Values); } } catch (Exception ex) { base.Clear(); xLog.Debug("Error reading Calendar Events: " + ex.GetType().Name + ": " + ex.Message); } finally { bIsLoadingCalendarEventsListed = false; } xLog.Debug("DoLoadCalendarEventsListed: Stop"); }