Beispiel #1
0
        public void SendTimeChange(CRM_Calendar PreviousDateDetails, CRM_CalendarAdmin Invite, MainDataContext db, Models.Admin CurrentUser)
        {
            System.IO.StringWriter htmlStringWriter = new System.IO.StringWriter();
            HttpContext.Current.Server.Execute("/app_emails/invites/datetimechange.aspx", htmlStringWriter);

            string htmlOutput = htmlStringWriter.GetStringBuilder().ToString();

            htmlOutput = htmlOutput.Replace("@NAME@", Invite.Admin.FirstName);
            htmlOutput = htmlOutput.Replace("@EVENTNAME@", Invite.CRM_Calendar.DisplayName);
            htmlOutput = htmlOutput.Replace("@OLDDATETIME@", PreviousDateDetails.OutputDate);
            htmlOutput = htmlOutput.Replace("@NEWDATETIME@", Invite.EventDate);
            htmlOutput = htmlOutput.Replace("@CHANGED@", CurrentUser.DisplayName);

            AddTo(Invite.Admin.Email);
            Email.SendTemplateEmail(htmlOutput.ToString(), "An event you are tagged in has been rescheduled - " + Invite.EventName + " originally " + PreviousDateDetails.OutputDate, mailTo, mailCc, mailBcc, attachments);

            CRM_Note note = new CRM_Note();

            note.Body            = htmlOutput.ToString();
            note.Title           = "Reschedule sent";
            note.DateCreated     = UKTime.Now;
            note.TargetReference = Invite.CRM_Calendar.Reference;
            note.OwnerAdminID    = CurrentUser.ID;
            db.CRM_Notes.InsertOnSubmit(note);
            db.SubmitChanges();
        }
        public new void Page_PreInit(object sender, EventArgs e)
        {
            base.Page_PreInit(sender, e);

            Entity = db.CRM_Calendars.SingleOrDefault(a => a.ID.ToString() == Request.QueryString["id"]);

            if (Entity == null && !Request.RawUrl.StartsWith("/admin/calendar/details.aspx"))
            {
                NoticeManager.SetMessage("Calendar entry not found", "/admin/calendar");
            }
        }
Beispiel #3
0
        protected void ddlReasonForVisit_SelectedIndexChanged(object sender, EventArgs e)
        {
            DropDownList ddlReasonForVisit = (DropDownList)sender;

            CRM_CalendarType type = db.CRM_CalendarTypes.First(f => f.ID.ToString() == ddlReasonForVisit.SelectedValue);

            if (type.FixedRef == (int)CRM_CalendarType.TypeList.generic)
            {
                if (!db.CRM_Calendars.Any(c => c.CRM_CalendarType.FixedRef == (int)CRM_CalendarType.TypeList.generic && c.StartDateTime.Date == UKTime.Now.Date))
                {
                    CRM_Calendar Entity = new CRM_Calendar();
                    Entity.CancellationReason      = "";
                    Entity.TargetReference         = CRM_Calendar.DefaultTargetReference;
                    Entity.PriceAgreed             = 0M;
                    Entity.PriceType               = 0;
                    Entity.InvoiceTitle            = "";
                    Entity.InvoiceFirstname        = "";
                    Entity.InvoiceLastname         = "";
                    Entity.DatePaid                = null;
                    Entity.PONumber                = "";
                    Entity.PrimaryContactReference = "";

                    Entity.CRM_CalendarType = db.CRM_CalendarTypes.Single(c => c.ID == Convert.ToInt32(ddlReasonForVisit.SelectedValue));
                    Entity.CreatedByAdminID = 1;
                    Entity.DisplayName      = CRM_Calendar.DayVisit_FixedRef;
                    Entity.StartDateTime    = UKTime.Now.Date.AddHours(9);
                    Entity.EndDateTime      = UKTime.Now.Date.AddHours(10);
                    Entity.Status           = 0;
                    Entity.RequiresCatering = false;
                    Entity.PrivacyStatus    = 0;

                    db.CRM_Calendars.InsertOnSubmit(Entity);
                    db.SubmitChanges();
                }
            }

            IEnumerable <CRM_Calendar> calendarEvents = from c in db.CRM_Calendars
                                                        where !c.IsCancelled
                                                        where c.StartDateTime.Date == UKTime.Now.Date
                                                        where c.CRM_CalendarTypeID.ToString() == ddlReasonForVisit.SelectedValue
                                                        select c;
            DropDownList ddlAttending = (DropDownList)ddlReasonForVisit.Parent.FindControl("ddlAttending");

            ddlAttending.DataSource = calendarEvents;
            ddlAttending.DataBind();
        }
        protected void rptEvents_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            Repeater rptVenues = (Repeater)e.Item.FindControl("rptVenues");

            CRM_Calendar calendar = (CRM_Calendar)e.Item.DataItem;

            var venues = calendar.CRM_CalendarVenues.OrderBy(v => v.DateTimeFrom);;

            if (CRM_Venue != null)
            {
                venues = venues.Where(v => v.CRM_VenueID == CRM_Venue.ID).OrderBy(v => v.DateTimeFrom);
                rptVenues.DataSource = venues;
                rptVenues.DataBind();
            }
            else
            {
                rptVenues.DataSource = venues;
                rptVenues.DataBind();
            }

            HtmlImage imgVenues = (HtmlImage)e.Item.FindControl("imgVenues");

            imgVenues.Visible = venues.Any();
        }
Beispiel #5
0
        protected void chkCheckIn_CheckChanged(object sender, EventArgs e)
        {
            CheckBox chkCheckIn = (CheckBox)sender;

            if (chkCheckIn.Checked)
            {
                CRM_AnnualPassPerson person       = db.CRM_AnnualPassPersons.Single(c => c.ID.ToString() == chkCheckIn.Attributes["data-id"]);
                DropDownList         ddlAttending = (DropDownList)chkCheckIn.Parent.FindControl("ddlAttending");
                CRM_Calendar         CRM_Calendar = db.CRM_Calendars.SingleOrDefault(c => c.ID.ToString() == ddlAttending.SelectedValue);

                if (CRM_Calendar == null)
                {
                    CRM_Calendar = db.CRM_Calendars.FirstOrDefault(c => c.CRM_CalendarTypeID == (int)CRM_CalendarType.TypeList.generic && c.StartDateTime.Date == UKTime.Now.Date);

                    if (CRM_Calendar != null)
                    {
                        CRM_CalendarInvite attendance = new CRM_CalendarInvite()
                        {
                            CRM_CalendarID     = CRM_Calendar.ID,
                            ContactName        = person.DisplayName,
                            Reference          = person.CRM_Person.Reference,
                            IsAttended         = true,
                            IsBooked           = false,
                            IsCancelled        = false,
                            IsInvited          = false,
                            LastAmendedAdminID = AdminUser.ID,
                            LastUpdated        = UKTime.Now
                        };

                        db.CRM_CalendarInvites.InsertOnSubmit(attendance);

                        db.SubmitChanges();
                    }
                }
                else
                {
                    CRM_CalendarInvite attendance = CRM_Calendar.CRM_CalendarInvites.FirstOrDefault(f => f.Reference == person.CRM_Person.Reference);

                    if (attendance == null)
                    {
                        attendance = new CRM_CalendarInvite()
                        {
                            CRM_CalendarID     = CRM_Calendar.ID,
                            ContactName        = person.DisplayName,
                            Reference          = person.CRM_Person.Reference,
                            IsAttended         = true,
                            IsBooked           = false,
                            IsCancelled        = false,
                            IsInvited          = false,
                            LastAmendedAdminID = AdminUser.ID,
                            LastUpdated        = UKTime.Now
                        };

                        db.CRM_CalendarInvites.InsertOnSubmit(attendance);
                    }
                    else
                    {
                        attendance.IsAttended         = true;
                        attendance.LastAmendedAdminID = AdminUser.ID;
                    }

                    db.SubmitChanges();
                }
            }
        }
 public int IndexOfEventAtTime(CRM_Calendar ItemToCheck, DateTime StartDateTime, DateTime EndDateTime)
 {
     return(ItemsDuringThisTime(StartDateTime).IndexOf(ItemToCheck));
 }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Page is AdminPage)
            {
                CRM_SystemAccessAdmin AdminPermission = ((AdminPage)Page).AdminPermission;
                if (AdminPermission != null && this.ID != null)
                {
                    if (this.ID.Contains("btnSubmitChanges"))
                    {
                        this.Visible = AdminPermission.IsWrite;
                    }
                    else if (this.ID.Contains("btnSubmit") && !this.ID.Contains("Changes"))
                    {
                        this.Visible = AdminPermission.IsAdd;
                    }
                    else if (this.ID == "btnDelete")
                    {
                        this.Visible = AdminPermission.IsDelete;
                    }
                }
            }

            if (Page is CRM_CalendarPage <CRM_Calendar> )
            {
                CRM_Calendar entity = ((CRM_CalendarPage <CRM_Calendar>)Page).Entity;


                if (entity != null)
                {
                    bool IsOwner = ((CRM_CalendarPage <CRM_Calendar>)Page).AdminUser.ID == entity.CreatedByAdminID;
                    CRM_SystemAccessAdmin AdminPermission = ((AdminPage)Page).AdminPermission;



                    if (AdminPermission != null && this.ID != null)
                    {
                        if (entity.PrivacyStatus == (byte)CRM_Calendar.PrivacyTypes.Editable)
                        {
                            if (!IsOwner)
                            {
                                if (this.ID.Contains("btnSubmitChanges"))
                                {
                                    this.Visible = AdminPermission.IsWrite;
                                }
                                else if (this.ID.Contains("btnSubmit") && !this.ID.Contains("Changes"))
                                {
                                    this.Visible = AdminPermission.IsAdd;
                                }
                                else if (this.ID == "btnDelete")
                                {
                                    this.Visible = AdminPermission.IsDelete;
                                }
                            }
                        }
                        else if (entity.PrivacyStatus == (byte)CRM_Calendar.PrivacyTypes.Private || entity.PrivacyStatus == (byte)CRM_Calendar.PrivacyTypes.Viewable)
                        {
                            if (!IsOwner)
                            {
                                if (this.ID.Contains("btnSubmitChanges"))
                                {
                                    this.Visible = false;
                                }
                                else if (this.ID.Contains("btnSubmit") && !this.ID.Contains("Changes"))
                                {
                                    this.Visible = false;
                                }
                                else if (this.ID == "btnDelete")
                                {
                                    this.Visible = false;
                                }
                            }
                        }
                    }
                }
            }

            btnButton.CssClass = Class;
            if (!String.IsNullOrEmpty(Style))
            {
                btnButton.Attributes["style"] = Style;
            }

            if (!String.IsNullOrEmpty(OnClick))
            {
                pnlLink.Attributes["onclick"]   = OnClick;
                btnButton.Attributes["onclick"] = OnClick;
            }

            if (EventHandler != null)
            {
                //ButtonText = EventHandler.Method.Name;
                btnButton.Click += EventHandler;
            }
            else
            {
                pnlButton.Visible = false;
                pnlLink.Visible   = true;
            }
        }