//Wanneer er op een calendar item is geklikt, open een dialog met de gegevens van deze exam.
 private void ClnExams_CalendarItemClick(CalendarEvent calendarEvent, Point point)
 {
     if(calendarEvent.Event is CustomEvent) {
         ExamOverviewTeacherDetailDialog dialog = new ExamOverviewTeacherDetailDialog(this, (CustomEvent)calendarEvent.Event);
         dialog.Show();
     }
 }
Ejemplo n.º 2
0
        private void MenuItemPropertiesClick(object sender, EventArgs e)
        {
            if (_clickedEvent == null)
                return;

            var ed = new EventDetails { Event = _clickedEvent.Event };

            if (ed.ShowDialog(this) == DialogResult.OK)
            {
                _events.Remove(_clickedEvent.Event);
                _events.Add(ed.NewEvent);
                Refresh();
            }
            _clickedEvent = null;
        }
Ejemplo n.º 3
0
        private void RenderMonthCalendar(PaintEventArgs e)
        {
            _calendarDays.Clear();
            _calendarEvents.Clear();
            var bmp = new Bitmap(ClientSize.Width, ClientSize.Height);
            Graphics g = Graphics.FromImage(bmp);
            e.Graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
            g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
            SizeF sunSize = g.MeasureString("Zondag", _dayOfWeekFont);
            SizeF monSize = g.MeasureString("Maandag", _dayOfWeekFont);
            SizeF tueSize = g.MeasureString("Dinsdag", _dayOfWeekFont);
            SizeF wedSize = g.MeasureString("Woensdag", _dayOfWeekFont);
            SizeF thuSize = g.MeasureString("Donderdag", _dayOfWeekFont);
            SizeF friSize = g.MeasureString("Vrijdag", _dayOfWeekFont);
            SizeF satSize = g.MeasureString("Zaterdag", _dayOfWeekFont);
            SizeF dateHeaderSize = g.MeasureString(
                _calendarDate.ToString("MMMM") + " " + _calendarDate.Year.ToString(CultureInfo.InvariantCulture), _dateHeaderFont);
            int headerSpacing = Max(sunSize.Height, monSize.Height, tueSize.Height, wedSize.Height, thuSize.Height, friSize.Height,
                          satSize.Height) + 5;
            int controlsSpacing = ((!_showTodayButton) && (!_showDateInHeader) && (!_showArrowControls)) ? 0 : 30;
            int cellWidth = (ClientSize.Width - MarginSize * 2) / 7;
            int numWeeks = NumberOfWeeks(_calendarDate.Year, _calendarDate.Month);
            int cellHeight = (ClientSize.Height - MarginSize * 2 - headerSpacing - controlsSpacing) / numWeeks;
            int xStart = MarginSize;
            int yStart = MarginSize;
            DayOfWeek startWeekEnum = new DateTime(_calendarDate.Year, _calendarDate.Month, 1).DayOfWeek;
            int startWeek = ((int)startWeekEnum) + 1;
            int rogueDays = startWeek - 1;

            yStart += headerSpacing + controlsSpacing;

            int counter = 1;
            int counter2 = 1;

            bool first = false;
            bool first2 = false;

            _btnToday.Location = new Point(MarginSize, MarginSize);

            for (int y = 0; y < numWeeks; y++)
            {
                for (int x = 0; x < 7; x++)
                {
                    if (rogueDays == 0 && counter <= DateTime.DaysInMonth(_calendarDate.Year, _calendarDate.Month))
                    {
                        if (!_calendarDays.ContainsKey(counter))
                            _calendarDays.Add(counter, new Point(xStart, (int)(yStart + 2f + g.MeasureString(counter.ToString(CultureInfo.InvariantCulture), _daysFont).Height)));

                        if (_calendarDate.Year == DateTime.Now.Year && _calendarDate.Month == DateTime.Now.Month
                         && counter == DateTime.Now.Day && _highlightCurrentDay)
                        {
                            g.FillRectangle(new SolidBrush(Color.FromArgb(234, 234, 234)), xStart, yStart, cellWidth, cellHeight);
                        }

                        if (first == false)
                        {
                            first = true;
                            if (_calendarDate.Year == DateTime.Now.Year && _calendarDate.Month == DateTime.Now.Month
                         && counter == DateTime.Now.Day)
                            {
                                g.DrawString(
                                    _calendarDate.ToString("MMM") + " " + counter.ToString(CultureInfo.InvariantCulture),
                                    _todayFont, Brushes.Black, xStart + 5, yStart + 2);
                            }
                            else
                            {
                                g.DrawString(
                                    _calendarDate.ToString("MMM") + " " + counter.ToString(CultureInfo.InvariantCulture),
                                    _daysFont, Brushes.Black, xStart + 5, yStart + 2);
                            }
                        }
                        else
                        {
                            if (_calendarDate.Year == DateTime.Now.Year && _calendarDate.Month == DateTime.Now.Month
                         && counter == DateTime.Now.Day)
                            {
                                g.DrawString(counter.ToString(CultureInfo.InvariantCulture), _todayFont, Brushes.Black, xStart + 5, yStart + 2);
                            }
                            else
                            {
                                g.DrawString(counter.ToString(CultureInfo.InvariantCulture), _daysFont, Brushes.Black, xStart + 5, yStart + 2);
                            }
                        }
                        counter++;
                    }
                    else if (rogueDays > 0)
                    {
                        int dm =
                            DateTime.DaysInMonth(_calendarDate.AddMonths(-1).Year, _calendarDate.AddMonths(-1).Month) -
                            rogueDays + 1;
                        g.DrawString(dm.ToString(CultureInfo.InvariantCulture), _daysFont, new SolidBrush(Color.FromArgb(170, 170, 170)), xStart + 5, yStart + 2);
                        rogueDays--;
                    }

                    g.DrawRectangle(Pens.DarkGray, xStart, yStart, cellWidth, cellHeight);
                    if (rogueDays == 0 && counter > DateTime.DaysInMonth(_calendarDate.Year, _calendarDate.Month))
                    {
                        if (first2 == false)
                            first2 = true;
                        else
                        {
                            if (counter2 == 1)
                            {
                                g.DrawString(_calendarDate.AddMonths(1).ToString("MMM") + " " + counter2.ToString(CultureInfo.InvariantCulture), _daysFont,
                                             new SolidBrush(Color.FromArgb(170, 170, 170)), xStart + 5, yStart + 2);
                            }
                            else
                            {
                                g.DrawString(counter2.ToString(CultureInfo.InvariantCulture), _daysFont,
                                             new SolidBrush(Color.FromArgb(170, 170, 170)), xStart + 5, yStart + 2);
                            }
                            counter2++;
                        }
                    }
                    xStart += cellWidth;
                }
                xStart = MarginSize;
                yStart += cellHeight;
            }
            xStart = MarginSize + ((cellWidth - (int)sunSize.Width) / 2);
            yStart = MarginSize + controlsSpacing;

            g.DrawString("Zondag", _dayOfWeekFont, Brushes.Black, xStart, yStart);
            xStart = MarginSize + ((cellWidth - (int)monSize.Width) / 2) + cellWidth;
            g.DrawString("Maandag", _dayOfWeekFont, Brushes.Black, xStart, yStart);

            xStart = MarginSize + ((cellWidth - (int)tueSize.Width) / 2) + cellWidth * 2;
            g.DrawString("Dinsdag", _dayOfWeekFont, Brushes.Black, xStart, yStart);

            xStart = MarginSize + ((cellWidth - (int)wedSize.Width) / 2) + cellWidth * 3;
            g.DrawString("Woensdag", _dayOfWeekFont, Brushes.Black, xStart, yStart);

            xStart = MarginSize + ((cellWidth - (int)thuSize.Width) / 2) + cellWidth * 4;
            g.DrawString("Donderdag", _dayOfWeekFont, Brushes.Black, xStart, yStart);

            xStart = MarginSize + ((cellWidth - (int)friSize.Width) / 2) + cellWidth * 5;
            g.DrawString("Vrijdag", _dayOfWeekFont, Brushes.Black, xStart, yStart);

            xStart = MarginSize + ((cellWidth - (int)satSize.Width) / 2) + cellWidth * 6;
            g.DrawString("Zaterdag", _dayOfWeekFont, Brushes.Black, xStart, yStart);

            if (_showDateInHeader)
            {
                g.DrawString(
                    _calendarDate.ToString("MMMM") + " " + _calendarDate.Year.ToString(CultureInfo.InvariantCulture),
                    _dateHeaderFont, Brushes.Black, ClientSize.Width - MarginSize - dateHeaderSize.Width,
                    MarginSize);
            }

            _events.Sort(new EventComparer());

            for (int i = 1; i <= DateTime.DaysInMonth(_calendarDate.Year, _calendarDate.Month); i++)
            {
                int renderOffsetY = 0;

                foreach (IEvent v in _events)
                {
                    var dt = new DateTime(_calendarDate.Year, _calendarDate.Month, i, 23, 59, _calendarDate.Second);
                    if (NeedsRendering(v, dt))
                    {
                        int alpha = 255;
                        if (!v.Enabled && _dimDisabledEvents)
                            alpha = 64;
                        Color alphaColor = Color.FromArgb(alpha, v.EventColor.R, v.EventColor.G, v.EventColor.B);

                        int offsetY = renderOffsetY;
                        Region r = g.Clip;
                        Point point = _calendarDays[i];
                        SizeF sz = g.MeasureString(v.EventText, v.EventFont);
                        int yy = point.Y - 1;
                        int xx = ((cellWidth - (int)sz.Width) / 2) + point.X;

                        if (sz.Width > cellWidth)
                            xx = point.X;
                        if (renderOffsetY + sz.Height > cellHeight - 10)
                            continue;
                        g.Clip = new Region(new Rectangle(point.X + 1, point.Y + offsetY, cellWidth - 1, (int)sz.Height));
                        g.FillRectangle(new SolidBrush(alphaColor), point.X + 1, point.Y + offsetY, cellWidth - 1, sz.Height);
                        if (!v.Enabled && _showDashedBorderOnDisabledEvents)
                        {
                            var p = new Pen(new SolidBrush(Color.FromArgb(255, 0, 0, 0))) { DashStyle = DashStyle.Dash };
                            g.DrawRectangle(p, point.X + 1, point.Y + offsetY, cellWidth - 2, sz.Height - 1);
                        }
                        g.DrawString(v.EventText, v.EventFont, new SolidBrush(v.EventTextColor), xx, yy + offsetY);
                        g.Clip = r;

                        var ev = new CalendarEvent
                        {
                            EventArea =
                                new Rectangle(point.X + 1, point.Y + offsetY, cellWidth - 1,
                                              (int)sz.Height),
                            Event = v,
                            Date = dt
                        };

                        _calendarEvents.Add(ev);
                        renderOffsetY += (int)sz.Height + 1;
                    }
                }
            }
            _rectangles.Clear();

            g.Dispose();
            e.Graphics.DrawImage(bmp, 0, 0, ClientSize.Width, ClientSize.Height);
            bmp.Dispose();
        }
Ejemplo n.º 4
0
        internal Bitmap RequestImage()
        {
            const int cellHourWidth = 60;
            const int cellHourHeight = 30;
            var bmp = new Bitmap(ClientSize.Width, cellHourWidth * 24);
            Graphics g = Graphics.FromImage(bmp);
            g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;

            var dt = new DateTime(_calendarDate.Year, _calendarDate.Month, _calendarDate.Day, 0, 0, 0);
            int xStart = 0;
            int yStart = 0;

            g.DrawRectangle(Pens.Black, 0, 0, ClientSize.Width - MarginSize * 2 - 2, cellHourHeight * 24);
            for (int i = 0; i < 24; i++)
            {
                var textWidth = (int)g.MeasureString(dt.ToString("htt").ToLower(), _dayViewTimeFont).Width;
                g.DrawRectangle(Pens.Black, xStart, yStart, cellHourWidth, cellHourHeight);
                g.DrawLine(Pens.Black, xStart + cellHourWidth, yStart + cellHourHeight,
                           ClientSize.Width - MarginSize * 2 - 3, yStart + cellHourHeight);
                g.DrawLine(Pens.DarkGray, xStart + cellHourWidth, yStart + cellHourHeight / 2,
                           ClientSize.Width - MarginSize * 2 - 3, yStart + cellHourHeight / 2);

                g.DrawString(dt.ToString("htt").ToLower(), _dayViewTimeFont, Brushes.Black, xStart + cellHourWidth - textWidth, yStart);
                yStart += cellHourHeight;
                dt = dt.AddHours(1);
            }

            dt = new DateTime(_calendarDate.Year, _calendarDate.Month, _calendarDate.Day, 23, 59, 0);

            List<IEvent> evnts = _events.Where(evnt => NeedsRendering(evnt, dt)).ToList().OrderBy(d => d.Date).ToList();

            xStart = cellHourWidth + 1;
            yStart = 0;

            g.Clip = new Region(new Rectangle(0, 0, ClientSize.Width - MarginSize * 2 - 2, cellHourHeight * 24));
            _calendarEvents.Clear();
            for (int i = 0; i < 24; i++)
            {
                dt = new DateTime(_calendarDate.Year, _calendarDate.Month, _calendarDate.Day, 0, 0, 0);
                dt = dt.AddHours(i);
                foreach (var evnt in evnts)
                {
                    TimeSpan ts = TimeSpan.FromHours(evnt.EventLengthInHours);

                    if (evnt.Date.Ticks >= dt.Ticks && evnt.Date.Ticks < dt.Add(ts).Ticks && evnt.EventLengthInHours > 0 && i >= evnt.Date.Hour)
                    {
                        int divisor = evnt.Date.Minute == 0 ? 1 : 60 / evnt.Date.Minute;
                        Color clr = Color.FromArgb(175, evnt.EventColor.R, evnt.EventColor.G, evnt.EventColor.B);
                        g.FillRectangle(new SolidBrush(GetFinalBackColor()), xStart, yStart + cellHourHeight / divisor + 1, ClientSize.Width - MarginSize * 2 - cellHourWidth - 3, cellHourHeight * ts.Hours - 1);
                        g.FillRectangle(new SolidBrush(clr), xStart, yStart + cellHourHeight / divisor + 1, ClientSize.Width - MarginSize * 2 - cellHourWidth - 3, cellHourHeight * ts.Hours - 1);
                        g.DrawString(evnt.EventText, evnt.EventFont, new SolidBrush(evnt.EventTextColor), xStart, yStart + cellHourHeight / divisor);

                        var ce = new CalendarEvent
                                     {
                                         Event = evnt,
                                         Date = dt,
                                         EventArea = new Rectangle(xStart, yStart + cellHourHeight / divisor + 1,
                                                                   ClientSize.Width - MarginSize * 2 - cellHourWidth - 3,
                                                                   cellHourHeight * ts.Hours)
                                     };
                        _calendarEvents.Add(ce);
                    }
                }
                yStart += cellHourHeight;
            }

            g.Dispose();
            return bmp;
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Calendar Constructor
        /// </summary>
        public Calendar()
        {
            InitializeComponent();
            _calendarDate = DateTime.Now;
            _dayOfWeekFont = new Font("Arial", 10, FontStyle.Regular);
            _daysFont = new Font("Arial", 10, FontStyle.Regular);
            _todayFont = new Font("Arial", 10, FontStyle.Bold);
            _dateHeaderFont = new Font("Arial", 12, FontStyle.Bold);
            _dayViewTimeFont = new Font("Arial", 10, FontStyle.Bold);
            _showArrowControls = true;
            _showDateInHeader = true;
            _showTodayButton = true;
            _showingToolTip = false;
            _clickedEvent = null;
            _showDisabledEvents = false;
            _showDashedBorderOnDisabledEvents = true;
            _dimDisabledEvents = true;
            AllowEditingEvents = true;
            _highlightCurrentDay = true;
            _calendarView = CalendarViews.Month;
            _scrollPanel = new ScrollPanel();

            _scrollPanel.RightButtonClicked += ScrollPanelRightButtonClicked;

            _events = new List<IEvent>();
            _rectangles = new List<Rectangle>();
            _calendarDays = new Dictionary<int, Point>();
            _calendarEvents = new List<CalendarEvent>();
            _showEventTooltips = true;
            _eventTip = new EventToolTip { Visible = false };

            Controls.Add(_eventTip);

            LoadPresetHolidays = true;

            _scrollPanel.Visible = false;
            Controls.Add(_scrollPanel);
        }
Ejemplo n.º 6
0
        private void ScrollPanelRightButtonClicked(object sender, MouseEventArgs e)
        {
            if (AllowEditingEvents && _calendarView == CalendarViews.Day)
            {
                int num = _calendarEvents.Count;
                for (int i = 0; i < num; i++)
                {
                    var z = _calendarEvents[i];

                    if (z.EventArea.Contains(e.X, e.Y + _scrollPanel.ScrollOffset) && !z.Event.ReadOnlyEvent)
                    {
                        _clickedEvent = z;
                        _contextMenuStrip1.Show(_scrollPanel, new Point(e.X, e.Y));
                        _eventTip.Visible = false;
                        _eventTip.ShouldRender = false;
                        break;
                    }
                }
            }
        }
Ejemplo n.º 7
0
        private void CalendarMouseClick(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Right && AllowEditingEvents)
            {
                if (_calendarView == CalendarViews.Month)
                {
                    int num = _calendarEvents.Count;
                    for (int i = 0; i < num; i++)
                    {
                        var z = _calendarEvents[i];

                        if (z.EventArea.Contains(e.X, e.Y) && !z.Event.ReadOnlyEvent)
                        {
                            _clickedEvent = z;
                            _contextMenuStrip1.Show(this, e.Location);
                            _eventTip.Visible = false;
                            _eventTip.ShouldRender = false;
                            break;
                        }
                    }
                }
            }
        }
Ejemplo n.º 8
0
        private void CalendarMouseClick(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Right)
            {
                if (_calendarView == CalendarViews.Month)
                {
                    int num = _calendarEvents.Count;

                    for (int i = 0; i < num; i++)
                    {
                        var z = _calendarEvents[i];

                        if (z.EventArea.Contains(e.X, e.Y) && !z.Event.ReadOnlyEvent)
                        {
                            _clickedEvent = z;
                            _contextMenuStrip1.Show(this, e.Location);
                            _eventTip.Visible = false;
                            _eventTip.ShouldRender = false;
                            break;
                        }
                    }
                }
                return;
            }
            if (e.Button == MouseButtons.Left)
            {
                if (_calendarView == CalendarViews.Month)
                {
                    var newEvent = new CustomEvent();
                    int num = _calendarEvents.Count;
                    int xBarrier = 189;
                    int yBarrier = (int)(Math.Ceiling(547.0 / numWeeks));
                    Point editPoint = new Point(e.X-20, e.Y-75);
                    bool run = true;
                    bool run1 = true;
                    bool run2 = true;
                    int probableDay=-(int)(startWeekEnum)+1;

                    for (int i=0; i<num; i++)
                    {
                        var z = _calendarEvents[i];

                        if (z.EventArea.Contains(e.X, e.Y) && !z.Event.ReadOnlyEvent)
                        {
                            _clickedEvent = z;
                            _eventTip.Visible = false;
                            _eventTip.ShouldRender = false;
                            move = true;
                            return;
                        }
                    }

                    if (move)
                    {
                        move = false;
                        while (run)
                        {
                            if (editPoint.X > xBarrier)
                            {
                                editPoint.X -= xBarrier;
                                probableDay++;
                                run1 = false;
                            }
                            if (editPoint.Y > yBarrier)
                            {
                                editPoint.Y -= yBarrier;
                                probableDay += 7;
                                run2 = false;
                            }
                            if (run1 && run2)
                            {
                                run = false;
                            }
                            run1 = true;
                            run2 = true;
                        }
                        DateTime newDate = DateTime.Now;
                        try
                        {
                            newDate = new DateTime(_calendarDate.Year, _calendarDate.Month, probableDay);
                        }
                        catch
                        {
                            if (probableDay>0)
                            {
                                try
                                {
                                    newDate = new DateTime(_calendarDate.Year, _calendarDate.Month + 1,
                                        probableDay - DateTime.DaysInMonth(_calendarDate.Year, _calendarDate.Month));
                                }
                                catch
                                {
                                    newDate = new DateTime(_calendarDate.Year + 1, 1,
                                        probableDay - DateTime.DaysInMonth(_calendarDate.Year, _calendarDate.Month));
                                }
                            }
                            else
                            {
                                try
                                {
                                    newDate = new DateTime(_calendarDate.Year, _calendarDate.Month - 1,
                                        DateTime.DaysInMonth(_calendarDate.Year, _calendarDate.Month-1) + probableDay);
                                }
                                catch
                                {
                                    newDate = new DateTime(_calendarDate.Year - 1, 12, 31 + probableDay);
                                }
                            }
                        }
                        foreach (CustomEvent evnt in NetGlobals.customEvents)
                        {
                            if (evnt == _clickedEvent.Event)
                            {
                                newEvent = new CustomEvent
                                {
                                    Name = evnt.Name,
                                    EventText = evnt.EventText,
                                    IgnoreTimeComponent = true,
                                    Date = newDate,
                                    EventColor = evnt.EventColor,
                                    Order = evnt.Order,
                                    NumberOfEvents = evnt.NumberOfEvents,
                                };
                                invisEvent = new CustomEvent
                                {
                                    Name = evnt.Name,
                                    EventText = evnt.EventText,
                                    IgnoreTimeComponent = true,
                                    Date = evnt.Date,
                                    EventColor = Color.Black,
                                    Enabled = false,
                                    Order = evnt.Order,
                                    NumberOfEvents = evnt.NumberOfEvents,
                                    };
                                storeColor = evnt.EventColor;
                            }
                        }
                        DateTime oldReleaseDate;
                        if (newEvent.Date.DayOfWeek == 0 || (int)newEvent.Date.DayOfWeek == 6)
                        {
                            invisEvent.Enabled = true;
                            MessageBox.Show("Error: This date falls on a weekend");
                            return;
                        }
                        using (StreamReader sr = new StreamReader(@"TEMPDATA•" + (NetGlobals.docCounter) + ".txt"))
                        {
                            while (!sr.EndOfStream)
                            {
                                string line = sr.ReadLine();
                                if (line.StartsWith(_clickedEvent.Event.Name + "•"))
                                {
                                    individualData = line.Split('•');
                                }
                            }
                            oldReleaseDate = new DateTime(int.Parse(individualData[individualData.Length-2].Split('/')[2]),
                                int.Parse(individualData[individualData.Length-2].Split('/')[0]),
                                int.Parse(individualData[individualData.Length - 2].Split('/')[1]));
                            daysLost = -int.Parse(individualData[individualData.Length - 1]);
                        }

                        if (_clickedEvent.Event.EventText == _clickedEvent.Event.Name + " Dev Est Comp Date")
                        {
                            DateTime dcDate = DateTime.Now;
                            if (individualData[1] == newEvent.Date.ToString("d", CultureInfo.InvariantCulture))
                            {
                                invisEvent.Enabled = true;
                                MessageBox.Show("Nothing has changed");
                                _clickedEvent = null;
                                return;
                            }

                            int store = int.Parse(individualData[3]);
                            individualData[3] = (int.Parse(individualData[3]) + Comparison(_clickedEvent.Event.Date, newEvent.Date)).ToString();
                            if (int.Parse(individualData[3]) < 0)
                            {
                                invisEvent.Enabled = true;
                                individualData[3] = store.ToString();
                                MessageBox.Show("This results in a negative duration (" + (int.Parse(individualData[3]) +
                                    Comparison(_clickedEvent.Event.Date, newEvent.Date)) + ") days long. Please try again.");
                                return;
                            }
                            NetGlobals.customEvents.Remove(_clickedEvent.Event);

                            NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                            {
                                if (evnt.EventText == _clickedEvent.Event.Name + " Dev Comp Date")
                                {
                                    dcDate = evnt.Date;
                                }
                            });

                            if (dcDate == newEvent.Date)
                            {
                                newEvent.Enabled = false;
                            }
                            else
                            {
                                newEvent.Enabled = true;
                            }
                            NetGlobals.customEvents.Add(newEvent);
                            individualData[1] = newEvent.Date.ToString("d",CultureInfo.InvariantCulture);
                            _events.Clear();
                            _events.AddRange(NetGlobals.customEvents);
                            Refresh();
                            saveTemp();
                        }
                        else if (_clickedEvent.Event.EventText == _clickedEvent.Event.Name + " Release Date")
                        {
                            DateTime newRelDate = newEvent.Date;
                            DateTime relDate = _clickedEvent.Event.Date;

                            if (individualData[individualData.Length - 4] == newEvent.Date.ToString("d", CultureInfo.InvariantCulture))
                            {
                                invisEvent.Enabled = true;
                                MessageBox.Show("Nothing has changed");
                                _clickedEvent = null;
                                return;
                            }
                            individualData[individualData.Length - 4] = newEvent.Date.ToString("d",
                                CultureInfo.InvariantCulture);

                            currentDaysLost = Comparison(newRelDate, relDate);
                            daysLost += currentDaysLost;
                            individualData[individualData.Length - 2] = newRelDate.ToString("d",
                                CultureInfo.InvariantCulture);
                            individualData[individualData.Length - 1] = daysLost.ToString();
                            drawNewEvent = newEvent;

                            if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                            {
                                commit = true;
                                NetGlobals.customEvents.Add(newEvent);
                                NetGlobals.customEvents.Remove(_clickedEvent.Event);

                                NetGlobals.tempEvents.Clear();
                                NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                saveTemp();
                                Refresh();
                            }
                        }
                        else if (_clickedEvent.Event.EventText == _clickedEvent.Event.Name + " Dev Comp Date")
                        {
                            DateTime newDevDate = newEvent.Date;
                            DateTime newRelDate = DateTime.Now;
                            DateTime devECDate = DateTime.Now;
                            DateTime relDate = DateTime.Now;
                            DateTime cust1Date = DateTime.Now;
                            DateTime cust2Date = DateTime.Now;
                            DateTime cust3Date = DateTime.Now;
                            DateTime cust4Date = DateTime.Now;
                            DateTime cust5Date = DateTime.Now;
                            DateTime cust6Date = DateTime.Now;

                            IEvent cust1Event = null;
                            IEvent cust2Event = null;
                            IEvent cust3Event = null;
                            IEvent cust4Event = null;
                            IEvent cust5Event = null;
                            IEvent cust6Event = null;
                            IEvent relEvent = null;
                            IEvent devECEvent = null;

                            bool enabled;
                            if (individualData[2] == newEvent.Date.ToString("d", CultureInfo.InvariantCulture))
                            {
                                invisEvent.Enabled = true;
                                MessageBox.Show("Nothing has changed");
                                _clickedEvent = null;
                                return;
                            }
                            individualData[2] = newEvent.Date.ToString("d", CultureInfo.InvariantCulture);

                            if (_clickedEvent.Event.NumberOfEvents == 0)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Dev Est Comp Date")
                                    {
                                        devECDate = evnt.Date;
                                        devECEvent = evnt;
                                    }
                                });

                                if (newDevDate == devECDate)
                                {
                                    enabled = false;
                                }
                                else
                                {
                                    enabled = true;
                                }
                                newRelDate = AddBusinessDays(newDevDate, int.Parse(individualData[4]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[6] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[7] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(devECEvent);

                                    IEvent newDevECEvent = devECEvent;
                                    newDevECEvent.Enabled = enabled;
                                    NetGlobals.customEvents.Add(newDevECEvent);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            else if (_clickedEvent.Event.NumberOfEvents == 1)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Dev Est Comp Date")
                                    {
                                        devECDate = evnt.Date;
                                        devECEvent = evnt;
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 2)
                                    {
                                        cust1Event = evnt;
                                        cust1Date = evnt.Date;
                                        originalCust1Event = evnt;
                                        drawOldCust1Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust1Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                if (newDevDate == devECDate)
                                {
                                    enabled = false;
                                }
                                else
                                {
                                    enabled = true;
                                }
                                cust1Date = AddBusinessDays(newDevDate, int.Parse(individualData[4]));
                                individualData[7] = cust1Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust1Date, int.Parse(individualData[9]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[11] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[12] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawCust1Event.Date = cust1Date;
                                drawRelEvent.Date = newRelDate;
                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust1Event);
                                    NetGlobals.customEvents.Remove(devECEvent);

                                    IEvent newDevECEvent = devECEvent;
                                    newDevECEvent.Enabled = enabled;
                                    NetGlobals.customEvents.Add(newDevECEvent);

                                    IEvent newCust1Event = cust1Event;
                                    newCust1Event.Date = cust1Date;
                                    NetGlobals.customEvents.Add(newCust1Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            else if (_clickedEvent.Event.NumberOfEvents == 2)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Dev Est Comp Date")
                                    {
                                        devECDate = evnt.Date;
                                        devECEvent = evnt;
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 2)
                                    {
                                        cust1Event = evnt;
                                        cust1Date = evnt.Date;
                                        originalCust1Event = evnt;
                                        drawOldCust1Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust1Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 3)
                                    {
                                        cust2Event = evnt;
                                        cust2Date = evnt.Date;
                                        originalCust2Event = evnt;
                                        drawOldCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                if (newDevDate == devECDate)
                                {
                                    enabled = false;
                                }
                                else
                                {
                                    enabled = true;
                                }
                                cust1Date = AddBusinessDays(newDevDate, int.Parse(individualData[4]));
                                individualData[7] = cust1Date.ToString("d", CultureInfo.InvariantCulture);
                                cust2Date = AddBusinessDays(cust1Date, int.Parse(individualData[9]));
                                individualData[12] = cust2Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust2Date, int.Parse(individualData[14]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[16] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[17] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawCust1Event.Date = cust1Date;
                                drawCust2Event.Date = cust2Date;
                                drawRelEvent.Date = newRelDate;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(devECEvent);
                                    NetGlobals.customEvents.Remove(cust1Event);
                                    NetGlobals.customEvents.Remove(cust2Event);

                                    IEvent newDevECEvent = devECEvent;
                                    newDevECEvent.Enabled = enabled;
                                    NetGlobals.customEvents.Add(newDevECEvent);

                                    IEvent newCust1Event = cust1Event;
                                    newCust1Event.Date = cust1Date;
                                    NetGlobals.customEvents.Add(newCust1Event);

                                    IEvent newcust2Event = cust2Event;
                                    newcust2Event.Date = cust2Date;
                                    NetGlobals.customEvents.Add(newcust2Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            else if (_clickedEvent.Event.NumberOfEvents == 3)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Dev Est Comp Date")
                                    {
                                        devECDate = evnt.Date;
                                        devECEvent = evnt;
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 2)
                                    {
                                        cust1Event = evnt;
                                        cust1Date = evnt.Date;
                                        originalCust1Event = evnt;
                                        drawOldCust1Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust1Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 3)
                                    {
                                        cust2Event = evnt;
                                        cust2Date = evnt.Date;
                                        originalCust2Event = evnt;
                                        drawOldCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Event = evnt;
                                        cust3Date = evnt.Date;
                                        originalCust3Event = evnt;
                                        drawOldCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                if (newDevDate == devECDate)
                                {
                                    enabled = false;
                                }
                                else
                                {
                                    enabled = true;
                                }
                                cust1Date = AddBusinessDays(newDevDate, int.Parse(individualData[4]));
                                individualData[7] = cust1Date.ToString("d", CultureInfo.InvariantCulture);
                                cust2Date = AddBusinessDays(cust1Date, int.Parse(individualData[9]));
                                individualData[12] = cust2Date.ToString("d", CultureInfo.InvariantCulture);
                                cust3Date = AddBusinessDays(cust2Date, int.Parse(individualData[14]));
                                individualData[17] = cust3Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust3Date, int.Parse(individualData[19]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[21] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[22] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawCust1Event.Date = cust1Date;
                                drawCust2Event.Date = cust2Date;
                                drawCust3Event.Date = cust3Date;
                                drawRelEvent.Date = newRelDate;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(devECEvent);
                                    NetGlobals.customEvents.Remove(cust1Event);
                                    NetGlobals.customEvents.Remove(cust2Event);
                                    NetGlobals.customEvents.Remove(cust3Event);

                                    IEvent newDevECEvent = devECEvent;
                                    newDevECEvent.Enabled = enabled;
                                    NetGlobals.customEvents.Add(newDevECEvent);

                                    IEvent newCust1Event = cust1Event;
                                    newCust1Event.Date = cust1Date;
                                    NetGlobals.customEvents.Add(newCust1Event);

                                    IEvent newCust2Event = cust2Event;
                                    newCust2Event.Date = cust2Date;
                                    NetGlobals.customEvents.Add(newCust2Event);

                                    IEvent newCust3Event = cust3Event;
                                    newCust3Event.Date = cust3Date;
                                    NetGlobals.customEvents.Add(newCust3Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            else if (_clickedEvent.Event.NumberOfEvents == 4)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Dev Est Comp Date")
                                    {
                                        devECDate = evnt.Date;
                                        devECEvent = evnt;
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 2)
                                    {
                                        cust1Event = evnt;
                                        cust1Date = evnt.Date;
                                        originalCust1Event = evnt;
                                        drawOldCust1Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust1Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 3)
                                    {
                                        cust2Event = evnt;
                                        cust2Date = evnt.Date;
                                        originalCust2Event = evnt;
                                        drawOldCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Event = evnt;
                                        cust3Date = evnt.Date;
                                        originalCust3Event = evnt;
                                        drawOldCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 5)
                                    {
                                        cust4Event = evnt;
                                        cust4Date = evnt.Date;
                                        originalCust4Event = evnt;
                                        drawOldCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                if (newDevDate == devECDate)
                                {
                                    enabled = false;
                                }
                                else
                                {
                                    enabled = true;
                                }
                                cust1Date = AddBusinessDays(newDevDate, int.Parse(individualData[4]));
                                individualData[7] = cust1Date.ToString("d", CultureInfo.InvariantCulture);
                                cust2Date = AddBusinessDays(cust1Date, int.Parse(individualData[9]));
                                individualData[12] = cust2Date.ToString("d", CultureInfo.InvariantCulture);
                                cust3Date = AddBusinessDays(cust2Date, int.Parse(individualData[14]));
                                individualData[17] = cust3Date.ToString("d", CultureInfo.InvariantCulture);
                                cust4Date = AddBusinessDays(cust3Date, int.Parse(individualData[19]));
                                individualData[22] = cust4Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust4Date, int.Parse(individualData[24]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[26] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[27] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawCust1Event.Date = cust1Date;
                                drawCust2Event.Date = cust2Date;
                                drawCust3Event.Date = cust3Date;
                                drawCust4Event.Date = cust4Date;
                                drawRelEvent.Date = newRelDate;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(devECEvent);
                                    NetGlobals.customEvents.Remove(cust1Event);
                                    NetGlobals.customEvents.Remove(cust2Event);
                                    NetGlobals.customEvents.Remove(cust3Event);
                                    NetGlobals.customEvents.Remove(cust4Event);

                                    IEvent newDevECEvent = devECEvent;
                                    newDevECEvent.Enabled = enabled;
                                    NetGlobals.customEvents.Add(newDevECEvent);

                                    IEvent newCust1Event = cust1Event;
                                    newCust1Event.Date = cust1Date;
                                    NetGlobals.customEvents.Add(newCust1Event);

                                    IEvent newCust2Event = cust2Event;
                                    newCust2Event.Date = cust2Date;
                                    NetGlobals.customEvents.Add(newCust2Event);

                                    IEvent newCust3Event = cust3Event;
                                    newCust3Event.Date = cust3Date;
                                    NetGlobals.customEvents.Add(newCust3Event);

                                    IEvent newCust4Event = cust4Event;
                                    newCust4Event.Date = cust4Date;
                                    NetGlobals.customEvents.Add(newCust4Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            else if (_clickedEvent.Event.NumberOfEvents == 5)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Dev Est Comp Date")
                                    {
                                        devECDate = evnt.Date;
                                        devECEvent = evnt;
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 2)
                                    {
                                        cust1Event = evnt;
                                        cust1Date = evnt.Date;
                                        originalCust1Event = evnt;
                                        drawOldCust1Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust1Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 3)
                                    {
                                        cust2Event = evnt;
                                        cust2Date = evnt.Date;
                                        originalCust2Event = evnt;
                                        drawOldCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Event = evnt;
                                        cust3Date = evnt.Date;
                                        originalCust3Event = evnt;
                                        drawOldCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 5)
                                    {
                                        cust4Event = evnt;
                                        cust4Date = evnt.Date;
                                        originalCust4Event = evnt;
                                        drawOldCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 6)
                                    {
                                        cust5Event = evnt;
                                        cust5Date = evnt.Date;
                                        originalCust5Event = evnt;
                                        drawOldCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                if (newDevDate == devECDate)
                                {
                                    enabled = false;
                                }
                                else
                                {
                                    enabled = true;
                                }
                                cust1Date = AddBusinessDays(newDevDate, int.Parse(individualData[4]));
                                individualData[7] = cust1Date.ToString("d", CultureInfo.InvariantCulture);
                                cust2Date = AddBusinessDays(cust1Date, int.Parse(individualData[9]));
                                individualData[12] = cust2Date.ToString("d", CultureInfo.InvariantCulture);
                                cust3Date = AddBusinessDays(cust2Date, int.Parse(individualData[14]));
                                individualData[17] = cust3Date.ToString("d", CultureInfo.InvariantCulture);
                                cust4Date = AddBusinessDays(cust3Date, int.Parse(individualData[19]));
                                individualData[22] = cust4Date.ToString("d", CultureInfo.InvariantCulture);
                                cust5Date = AddBusinessDays(cust4Date, int.Parse(individualData[24]));
                                individualData[27] = cust5Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust5Date, int.Parse(individualData[29]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[31] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[32] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawCust1Event.Date = cust1Date;
                                drawCust2Event.Date = cust2Date;
                                drawCust3Event.Date = cust3Date;
                                drawCust4Event.Date = cust4Date;
                                drawCust5Event.Date = cust5Date;
                                drawRelEvent.Date = newRelDate;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(devECEvent);
                                    NetGlobals.customEvents.Remove(cust1Event);
                                    NetGlobals.customEvents.Remove(cust2Event);
                                    NetGlobals.customEvents.Remove(cust3Event);
                                    NetGlobals.customEvents.Remove(cust4Event);
                                    NetGlobals.customEvents.Remove(cust5Event);

                                    IEvent newDevECEvent = devECEvent;
                                    newDevECEvent.Enabled = enabled;
                                    NetGlobals.customEvents.Add(newDevECEvent);

                                    IEvent newCust1Event = cust1Event;
                                    newCust1Event.Date = cust1Date;
                                    NetGlobals.customEvents.Add(newCust1Event);

                                    IEvent newCust2Event = cust2Event;
                                    newCust2Event.Date = cust2Date;
                                    NetGlobals.customEvents.Add(newCust2Event);

                                    IEvent newCust3Event = cust3Event;
                                    newCust3Event.Date = cust3Date;
                                    NetGlobals.customEvents.Add(newCust3Event);

                                    IEvent newCust4Event = cust4Event;
                                    newCust4Event.Date = cust4Date;
                                    NetGlobals.customEvents.Add(newCust4Event);

                                    IEvent newCust5Event = cust5Event;
                                    newCust5Event.Date = cust5Date;
                                    NetGlobals.customEvents.Add(newCust5Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            else if (_clickedEvent.Event.NumberOfEvents == 6)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Dev Est Comp Date")
                                    {
                                        devECDate = evnt.Date;
                                        devECEvent = evnt;
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 2)
                                    {
                                        cust1Event = evnt;
                                        cust1Date = evnt.Date;
                                        originalCust1Event = evnt;
                                        drawOldCust1Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust1Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 3)
                                    {
                                        cust2Event = evnt;
                                        cust2Date = evnt.Date;
                                        originalCust2Event = evnt;
                                        drawOldCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Event = evnt;
                                        cust3Date = evnt.Date;
                                        originalCust3Event = evnt;
                                        drawOldCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 5)
                                    {
                                        cust4Event = evnt;
                                        cust4Date = evnt.Date;
                                        originalCust4Event = evnt;
                                        drawOldCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 6)
                                    {
                                        cust5Event = evnt;
                                        cust5Date = evnt.Date;
                                        originalCust5Event = evnt;
                                        drawOldCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 7)
                                    {
                                        cust6Event = evnt;
                                        cust6Date = evnt.Date;
                                        originalCust6Event = evnt;
                                        drawOldCust6Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust6Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                if (newDevDate == devECDate)
                                {
                                    enabled = false;
                                }
                                else
                                {
                                    enabled = true;
                                }
                                cust1Date = AddBusinessDays(newDevDate, int.Parse(individualData[4]));
                                individualData[7] = cust1Date.ToString("d", CultureInfo.InvariantCulture);
                                cust2Date = AddBusinessDays(cust1Date, int.Parse(individualData[9]));
                                individualData[12] = cust2Date.ToString("d", CultureInfo.InvariantCulture);
                                cust3Date = AddBusinessDays(cust2Date, int.Parse(individualData[14]));
                                individualData[17] = cust3Date.ToString("d", CultureInfo.InvariantCulture);
                                cust4Date = AddBusinessDays(cust3Date, int.Parse(individualData[19]));
                                individualData[22] = cust4Date.ToString("d", CultureInfo.InvariantCulture);
                                cust5Date = AddBusinessDays(cust4Date, int.Parse(individualData[24]));
                                individualData[27] = cust5Date.ToString("d", CultureInfo.InvariantCulture);
                                cust6Date = AddBusinessDays(cust5Date, int.Parse(individualData[29]));
                                individualData[32] = cust6Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust6Date, int.Parse(individualData[34]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[36] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[37] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawCust1Event.Date = cust1Date;
                                drawCust2Event.Date = cust2Date;
                                drawCust3Event.Date = cust3Date;
                                drawCust4Event.Date = cust4Date;
                                drawCust5Event.Date = cust5Date;
                                drawCust6Event.Date = cust6Date;
                                drawRelEvent.Date = newRelDate;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(devECEvent);
                                    NetGlobals.customEvents.Remove(cust1Event);
                                    NetGlobals.customEvents.Remove(cust2Event);
                                    NetGlobals.customEvents.Remove(cust3Event);
                                    NetGlobals.customEvents.Remove(cust4Event);
                                    NetGlobals.customEvents.Remove(cust5Event);
                                    NetGlobals.customEvents.Remove(cust6Event);

                                    IEvent newDevECEvent = devECEvent;
                                    newDevECEvent.Enabled = enabled;
                                    NetGlobals.customEvents.Add(newDevECEvent);

                                    IEvent newCust1Event = cust1Event;
                                    newCust1Event.Date = cust1Date;
                                    NetGlobals.customEvents.Add(newCust1Event);

                                    IEvent newCust2Event = cust2Event;
                                    newCust2Event.Date = cust2Date;
                                    NetGlobals.customEvents.Add(newCust2Event);

                                    IEvent newCust3Event = cust3Event;
                                    newCust3Event.Date = cust3Date;
                                    NetGlobals.customEvents.Add(newCust3Event);

                                    IEvent newCust4Event = cust4Event;
                                    newCust4Event.Date = cust4Date;
                                    NetGlobals.customEvents.Add(newCust4Event);

                                    IEvent newCust5Event = cust5Event;
                                    newCust5Event.Date = cust5Date;
                                    NetGlobals.customEvents.Add(newCust5Event);

                                    IEvent newCust6Event = cust6Event;
                                    newCust6Event.Date = cust6Date;
                                    NetGlobals.customEvents.Add(newCust6Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }

                        }
                        else if (_clickedEvent.Event.Order == 2)
                        {
                            DateTime newCust1Date = newEvent.Date;
                            DateTime newRelDate = DateTime.Now;
                            DateTime relDate = DateTime.Now;
                            DateTime cust2Date = DateTime.Now;
                            DateTime cust3Date = DateTime.Now;
                            DateTime cust4Date = DateTime.Now;
                            DateTime cust5Date = DateTime.Now;
                            DateTime cust6Date = DateTime.Now;
                            DateTime devCompDate = DateTime.Now;

                            IEvent cust2Event = null;
                            IEvent cust3Event = null;
                            IEvent cust4Event = null;
                            IEvent cust5Event = null;
                            IEvent cust6Event = null;
                            IEvent relEvent = null;

                            string devName = "";

                            if (individualData[7] == newEvent.Date.ToString("d", CultureInfo.InvariantCulture))
                            {
                                invisEvent.Enabled = true;
                                MessageBox.Show("Nothing has changed");
                                _clickedEvent = null;
                                return;
                            }
                            individualData[7] = newEvent.Date.ToString("d", CultureInfo.InvariantCulture);

                            if (_clickedEvent.Event.NumberOfEvents == 1)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.EventText == _clickedEvent.Event.Name + " Dev Comp Date")
                                    {
                                        devCompDate = evnt.Date;
                                        devName = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[4]);
                                individualData[4] = Comparison(newCust1Date, devCompDate).ToString();
                                if (int.Parse(individualData[4]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before "+ devName);
                                    individualData[4] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                newRelDate = AddBusinessDays(newCust1Date, int.Parse(individualData[9]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[11] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[12] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }

                            else if (_clickedEvent.Event.NumberOfEvents == 2)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.EventText == _clickedEvent.Event.Name + " Dev Comp Date")
                                    {
                                        devCompDate = evnt.Date;
                                        devName = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 3)
                                    {
                                        cust2Event = evnt;
                                        cust2Date = evnt.Date;
                                        originalCust2Event = evnt;
                                        drawOldCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[4]);
                                individualData[4] = Comparison(newCust1Date, devCompDate).ToString();
                                if (int.Parse(individualData[4]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + devName);
                                    individualData[4] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust2Date = AddBusinessDays(newCust1Date, int.Parse(individualData[9]));
                                individualData[12] = cust2Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust2Date, int.Parse(individualData[14]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[16] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[17] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust2Event.Date = cust2Date;
                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust2Event);

                                    IEvent newCust2Event = cust2Event;
                                    newCust2Event.Date = cust2Date;
                                    NetGlobals.customEvents.Add(newCust2Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }

                            else if (_clickedEvent.Event.NumberOfEvents == 3)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.EventText == _clickedEvent.Event.Name + " Dev Comp Date")
                                    {
                                        devCompDate = evnt.Date;
                                        devName = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 3)
                                    {
                                        cust2Event = evnt;
                                        cust2Date = evnt.Date;
                                        originalCust2Event = evnt;
                                        drawOldCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }

                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Event = evnt;
                                        cust3Date = evnt.Date;
                                        originalCust3Event = evnt;
                                        drawOldCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[4]);
                                individualData[4] = Comparison(newCust1Date, devCompDate).ToString();
                                if (int.Parse(individualData[4]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + devName);
                                    individualData[4] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust2Date = AddBusinessDays(newCust1Date, int.Parse(individualData[9]));
                                individualData[12] = cust2Date.ToString("d", CultureInfo.InvariantCulture);
                                cust3Date = AddBusinessDays(cust2Date, int.Parse(individualData[14]));
                                individualData[17] = cust3Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust3Date, int.Parse(individualData[19]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[21] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[22] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust2Event.Date = cust2Date;
                                drawCust3Event.Date = cust3Date;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust2Event);
                                    NetGlobals.customEvents.Remove(cust3Event);

                                    IEvent newCust2Event = cust2Event;
                                    newCust2Event.Date = cust2Date;
                                    NetGlobals.customEvents.Add(newCust2Event);

                                    IEvent newCust3Event = cust3Event;
                                    newCust3Event.Date = cust3Date;
                                    NetGlobals.customEvents.Add(newCust3Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }

                            else if (_clickedEvent.Event.NumberOfEvents == 4)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.EventText == _clickedEvent.Event.Name + " Dev Comp Date")
                                    {
                                        devCompDate = evnt.Date;
                                        devName = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 3)
                                    {
                                        cust2Event = evnt;
                                        cust2Date = evnt.Date;
                                        originalCust2Event = evnt;
                                        drawOldCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }

                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Event = evnt;
                                        cust3Date = evnt.Date;
                                        originalCust3Event = evnt;
                                        drawOldCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }

                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 5)
                                    {
                                        cust4Event = evnt;
                                        cust4Date = evnt.Date;
                                        originalCust4Event = evnt;
                                        drawOldCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[4]);
                                individualData[4] = Comparison(newCust1Date, devCompDate).ToString();
                                if (int.Parse(individualData[4]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + devName);
                                    individualData[4] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust2Date = AddBusinessDays(newCust1Date, int.Parse(individualData[9]));
                                individualData[12] = cust2Date.ToString("d", CultureInfo.InvariantCulture);
                                cust3Date = AddBusinessDays(cust2Date, int.Parse(individualData[14]));
                                individualData[17] = cust3Date.ToString("d", CultureInfo.InvariantCulture);
                                cust4Date = AddBusinessDays(cust3Date, int.Parse(individualData[19]));
                                individualData[22] = cust4Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust4Date, int.Parse(individualData[24]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[26] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[27] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust2Event.Date = cust2Date;
                                drawCust3Event.Date = cust3Date;
                                drawCust4Event.Date = cust4Date;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust2Event);
                                    NetGlobals.customEvents.Remove(cust3Event);
                                    NetGlobals.customEvents.Remove(cust4Event);

                                    IEvent newCust2Event = cust2Event;
                                    newCust2Event.Date = cust2Date;
                                    NetGlobals.customEvents.Add(newCust2Event);

                                    IEvent newCust3Event = cust3Event;
                                    newCust3Event.Date = cust3Date;
                                    NetGlobals.customEvents.Add(newCust3Event);

                                    IEvent newCust4Event = cust4Event;
                                    newCust4Event.Date = cust4Date;
                                    NetGlobals.customEvents.Add(newCust4Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }

                            else if (_clickedEvent.Event.NumberOfEvents == 5)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.EventText == _clickedEvent.Event.Name + " Dev Comp Date")
                                    {
                                        devCompDate = evnt.Date;
                                        devName = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 3)
                                    {
                                        cust2Event = evnt;
                                        cust2Date = evnt.Date;
                                        originalCust2Event = evnt;
                                        drawOldCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }

                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Event = evnt;
                                        cust3Date = evnt.Date;
                                        originalCust3Event = evnt;
                                        drawOldCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }

                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 5)
                                    {
                                        cust4Event = evnt;
                                        cust4Date = evnt.Date;
                                        originalCust4Event = evnt;
                                        drawOldCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 6)
                                    {
                                        cust5Event = evnt;
                                        cust5Date = evnt.Date;
                                        originalCust5Event = evnt;
                                        drawOldCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[4]);
                                individualData[4] = Comparison(newCust1Date, devCompDate).ToString();
                                if (int.Parse(individualData[4]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + devName);
                                    individualData[4] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust2Date = AddBusinessDays(newCust1Date, int.Parse(individualData[9]));
                                individualData[12] = cust2Date.ToString("d", CultureInfo.InvariantCulture);
                                cust3Date = AddBusinessDays(cust2Date, int.Parse(individualData[14]));
                                individualData[17] = cust3Date.ToString("d", CultureInfo.InvariantCulture);
                                cust4Date = AddBusinessDays(cust3Date, int.Parse(individualData[19]));
                                individualData[22] = cust4Date.ToString("d", CultureInfo.InvariantCulture);
                                cust5Date = AddBusinessDays(cust4Date, int.Parse(individualData[24]));
                                individualData[27] = cust5Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust5Date, int.Parse(individualData[29]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[31] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[32] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust2Event.Date = cust2Date;
                                drawCust3Event.Date = cust3Date;
                                drawCust4Event.Date = cust4Date;
                                drawCust5Event.Date = cust5Date;
                                drawRelEvent.Date = newRelDate;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust2Event);
                                    NetGlobals.customEvents.Remove(cust3Event);
                                    NetGlobals.customEvents.Remove(cust4Event);
                                    NetGlobals.customEvents.Remove(cust5Event);

                                    IEvent newCust2Event = cust2Event;
                                    newCust2Event.Date = cust2Date;
                                    NetGlobals.customEvents.Add(newCust2Event);

                                    IEvent newCust3Event = cust3Event;
                                    newCust3Event.Date = cust3Date;
                                    NetGlobals.customEvents.Add(newCust3Event);

                                    IEvent newCust4Event = cust4Event;
                                    newCust4Event.Date = cust4Date;
                                    NetGlobals.customEvents.Add(newCust4Event);

                                    IEvent newCust5Event = cust5Event;
                                    newCust5Event.Date = cust5Date;
                                    NetGlobals.customEvents.Add(newCust5Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }

                            else if (_clickedEvent.Event.NumberOfEvents == 6)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.EventText == _clickedEvent.Event.Name + " Dev Comp Date")
                                    {
                                        devCompDate = evnt.Date;
                                        devName = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 3)
                                    {
                                        cust2Event = evnt;
                                        cust2Date = evnt.Date;
                                        originalCust2Event = evnt;
                                        drawOldCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust2Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }

                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Event = evnt;
                                        cust3Date = evnt.Date;
                                        originalCust3Event = evnt;
                                        drawOldCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }

                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 5)
                                    {
                                        cust4Event = evnt;
                                        cust4Date = evnt.Date;
                                        originalCust4Event = evnt;
                                        drawOldCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 6)
                                    {
                                        cust5Event = evnt;
                                        cust5Date = evnt.Date;
                                        originalCust5Event = evnt;
                                        drawOldCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 7)
                                    {
                                        cust6Event = evnt;
                                        cust6Date = evnt.Date;
                                        originalCust6Event = evnt;
                                        drawOldCust6Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust6Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[4]);
                                individualData[4] = Comparison(newCust1Date, devCompDate).ToString();
                                if (int.Parse(individualData[4]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + devName);
                                    individualData[4] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust2Date = AddBusinessDays(newCust1Date, int.Parse(individualData[9]));
                                individualData[12] = cust2Date.ToString("d", CultureInfo.InvariantCulture);
                                cust3Date = AddBusinessDays(cust2Date, int.Parse(individualData[14]));
                                individualData[17] = cust3Date.ToString("d", CultureInfo.InvariantCulture);
                                cust4Date = AddBusinessDays(cust3Date, int.Parse(individualData[19]));
                                individualData[22] = cust4Date.ToString("d", CultureInfo.InvariantCulture);
                                cust5Date = AddBusinessDays(cust4Date, int.Parse(individualData[24]));
                                individualData[27] = cust5Date.ToString("d", CultureInfo.InvariantCulture);
                                cust6Date = AddBusinessDays(cust5Date, int.Parse(individualData[29]));
                                individualData[32] = cust6Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust6Date, int.Parse(individualData[34]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[36] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[37] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust2Event.Date = cust2Date;
                                drawCust3Event.Date = cust3Date;
                                drawCust4Event.Date = cust4Date;
                                drawCust5Event.Date = cust5Date;
                                drawCust6Event.Date = cust6Date;
                                drawRelEvent.Date = newRelDate;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust2Event);
                                    NetGlobals.customEvents.Remove(cust3Event);
                                    NetGlobals.customEvents.Remove(cust4Event);
                                    NetGlobals.customEvents.Remove(cust5Event);
                                    NetGlobals.customEvents.Remove(cust6Event);

                                    IEvent newCust2Event = cust2Event;
                                    newCust2Event.Date = cust2Date;
                                    NetGlobals.customEvents.Add(newCust2Event);

                                    IEvent newCust3Event = cust3Event;
                                    newCust3Event.Date = cust3Date;
                                    NetGlobals.customEvents.Add(newCust3Event);

                                    IEvent newCust4Event = cust4Event;
                                    newCust4Event.Date = cust4Date;
                                    NetGlobals.customEvents.Add(newCust4Event);

                                    IEvent newCust5Event = cust5Event;
                                    newCust5Event.Date = cust5Date;
                                    NetGlobals.customEvents.Add(newCust5Event);

                                    IEvent newCust6Event = cust6Event;
                                    newCust6Event.Date = cust6Date;
                                    NetGlobals.customEvents.Add(newCust6Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                        }
                        else if (_clickedEvent.Event.Order == 3)
                        {
                            DateTime newCust2Date = newEvent.Date;
                            DateTime newRelDate = DateTime.Now;
                            DateTime relDate = DateTime.Now;
                            DateTime cust1Date = DateTime.Now;
                            DateTime cust3Date = DateTime.Now;
                            DateTime cust4Date = DateTime.Now;
                            DateTime cust5Date = DateTime.Now;
                            DateTime cust6Date = DateTime.Now;

                            IEvent cust3Event = null;
                            IEvent cust4Event = null;
                            IEvent cust5Event = null;
                            IEvent cust6Event = null;
                            IEvent relEvent = null;

                            string cust1Name = "";

                            if (individualData[12] == newEvent.Date.ToString("d", CultureInfo.InvariantCulture))
                            {
                                invisEvent.Enabled = true;
                                MessageBox.Show("Nothing has changed");
                                _clickedEvent = null;
                                return;
                            }
                            individualData[12] = newEvent.Date.ToString("d", CultureInfo.InvariantCulture);

                            if (_clickedEvent.Event.NumberOfEvents == 2)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 2)
                                    {
                                        cust1Date = evnt.Date;
                                        cust1Name = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[9]);
                                individualData[9] = Comparison(newCust2Date, cust1Date).ToString();
                                if (int.Parse(individualData[9]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust1Name);
                                    individualData[9] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                newRelDate = AddBusinessDays(newCust2Date, int.Parse(individualData[14]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[16] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[17] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            else if (_clickedEvent.Event.NumberOfEvents == 3)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 2)
                                    {
                                        cust1Date = evnt.Date;
                                        cust1Name = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Event = evnt;
                                        cust3Date = evnt.Date;
                                        originalCust3Event = evnt;
                                        drawOldCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[9]);
                                individualData[9] = Comparison(newCust2Date, cust1Date).ToString();
                                if (int.Parse(individualData[9]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust1Name);
                                    individualData[9] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust3Date = AddBusinessDays(newCust2Date, int.Parse(individualData[14]));
                                individualData[17] = cust3Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust3Date, int.Parse(individualData[19]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[21] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[22] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust3Event.Date = cust3Date;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust3Event);

                                    IEvent newCust3Event = cust3Event;
                                    newCust3Event.Date = cust3Date;
                                    NetGlobals.customEvents.Add(newCust3Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            else if (_clickedEvent.Event.NumberOfEvents == 4)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 2)
                                    {
                                        cust1Date = evnt.Date;
                                        cust1Name = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Event = evnt;
                                        cust3Date = evnt.Date;
                                        originalCust3Event = evnt;
                                        drawOldCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }

                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 5)
                                    {
                                        cust4Event = evnt;
                                        cust4Date = evnt.Date;
                                        originalCust4Event = evnt;
                                        drawOldCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[9]);
                                individualData[9] = Comparison(newCust2Date, cust1Date).ToString();
                                if (int.Parse(individualData[9]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust1Name);
                                    individualData[9] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust3Date = AddBusinessDays(newCust2Date, int.Parse(individualData[14]));
                                individualData[17] = cust3Date.ToString("d", CultureInfo.InvariantCulture);
                                cust4Date = AddBusinessDays(cust3Date, int.Parse(individualData[19]));
                                individualData[22] = cust4Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust4Date, int.Parse(individualData[24]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[26] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[27] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust3Event.Date = cust3Date;
                                drawCust4Event.Date = cust4Date;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust3Event);
                                    NetGlobals.customEvents.Remove(cust4Event);

                                    IEvent newCust3Event = cust3Event;
                                    newCust3Event.Date = cust3Date;
                                    NetGlobals.customEvents.Add(newCust3Event);

                                    IEvent newCust4Event = cust4Event;
                                    newCust4Event.Date = cust4Date;
                                    NetGlobals.customEvents.Add(newCust4Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            else if (_clickedEvent.Event.NumberOfEvents == 5)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 2)
                                    {
                                        cust1Date = evnt.Date;
                                        cust1Name = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Event = evnt;
                                        cust3Date = evnt.Date;
                                        originalCust3Event = evnt;
                                        drawOldCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }

                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 5)
                                    {
                                        cust4Event = evnt;
                                        cust4Date = evnt.Date;
                                        originalCust4Event = evnt;
                                        drawOldCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }

                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 6)
                                    {
                                        cust5Event = evnt;
                                        cust5Date = evnt.Date;
                                        originalCust5Event = evnt;
                                        drawOldCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[9]);
                                individualData[9] = Comparison(newCust2Date, cust1Date).ToString();
                                if (int.Parse(individualData[9]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust1Name);
                                    individualData[9] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust3Date = AddBusinessDays(newCust2Date, int.Parse(individualData[14]));
                                individualData[17] = cust3Date.ToString("d", CultureInfo.InvariantCulture);
                                cust4Date = AddBusinessDays(cust3Date, int.Parse(individualData[19]));
                                individualData[22] = cust4Date.ToString("d", CultureInfo.InvariantCulture);
                                cust5Date = AddBusinessDays(cust4Date, int.Parse(individualData[24]));
                                individualData[27] = cust5Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust5Date, int.Parse(individualData[29]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[31] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[32] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust3Event.Date = cust3Date;
                                drawCust4Event.Date = cust4Date;
                                drawCust5Event.Date = cust5Date;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust3Event);
                                    NetGlobals.customEvents.Remove(cust4Event);
                                    NetGlobals.customEvents.Remove(cust5Event);

                                    IEvent newCust3Event = cust3Event;
                                    newCust3Event.Date = cust3Date;
                                    NetGlobals.customEvents.Add(newCust3Event);

                                    IEvent newCust4Event = cust4Event;
                                    newCust4Event.Date = cust4Date;
                                    NetGlobals.customEvents.Add(newCust4Event);

                                    IEvent newCust5Event = cust5Event;
                                    newCust5Event.Date = cust5Date;
                                    NetGlobals.customEvents.Add(newCust5Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            else if (_clickedEvent.Event.NumberOfEvents == 6)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 2)
                                    {
                                        cust1Date = evnt.Date;
                                        cust1Name = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Event = evnt;
                                        cust3Date = evnt.Date;
                                        originalCust3Event = evnt;
                                        drawOldCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust3Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }

                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 5)
                                    {
                                        cust4Event = evnt;
                                        cust4Date = evnt.Date;
                                        originalCust4Event = evnt;
                                        drawOldCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }

                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 6)
                                    {
                                        cust5Event = evnt;
                                        cust5Date = evnt.Date;
                                        originalCust5Event = evnt;
                                        drawOldCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 7)
                                    {
                                        cust6Event = evnt;
                                        cust6Date = evnt.Date;
                                        originalCust6Event = evnt;
                                        drawOldCust6Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust6Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[9]);
                                individualData[9] = Comparison(newCust2Date, cust1Date).ToString();
                                if (int.Parse(individualData[9]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust1Name);
                                    individualData[9] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust3Date = AddBusinessDays(newCust2Date, int.Parse(individualData[14]));
                                individualData[17] = cust3Date.ToString("d", CultureInfo.InvariantCulture);
                                cust4Date = AddBusinessDays(cust3Date, int.Parse(individualData[19]));
                                individualData[22] = cust4Date.ToString("d", CultureInfo.InvariantCulture);
                                cust5Date = AddBusinessDays(cust4Date, int.Parse(individualData[24]));
                                individualData[27] = cust5Date.ToString("d", CultureInfo.InvariantCulture);
                                cust6Date = AddBusinessDays(cust5Date, int.Parse(individualData[29]));
                                individualData[32] = cust6Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust6Date, int.Parse(individualData[34]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[36] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[37] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust3Event.Date = cust3Date;
                                drawCust4Event.Date = cust4Date;
                                drawCust5Event.Date = cust5Date;
                                drawCust6Event.Date = cust6Date;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust3Event);
                                    NetGlobals.customEvents.Remove(cust4Event);
                                    NetGlobals.customEvents.Remove(cust5Event);
                                    NetGlobals.customEvents.Remove(cust6Event);

                                    IEvent newCust3Event = cust3Event;
                                    newCust3Event.Date = cust3Date;
                                    NetGlobals.customEvents.Add(newCust3Event);

                                    IEvent newCust4Event = cust4Event;
                                    newCust4Event.Date = cust4Date;
                                    NetGlobals.customEvents.Add(newCust4Event);

                                    IEvent newCust5Event = cust5Event;
                                    newCust5Event.Date = cust5Date;
                                    NetGlobals.customEvents.Add(newCust5Event);

                                    IEvent newCust6Event = cust6Event;
                                    newCust6Event.Date = cust6Date;
                                    NetGlobals.customEvents.Add(newCust6Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                        }
                        else if (_clickedEvent.Event.Order == 4)
                        {
                            DateTime newCust3Date = newEvent.Date;
                            DateTime newRelDate = DateTime.Now;
                            DateTime relDate = DateTime.Now;
                            DateTime cust2Date = DateTime.Now;
                            DateTime cust4Date = DateTime.Now;
                            DateTime cust5Date = DateTime.Now;
                            DateTime cust6Date = DateTime.Now;

                            IEvent cust4Event = null;
                            IEvent cust5Event = null;
                            IEvent cust6Event = null;
                            IEvent relEvent = null;

                            string cust2Name = "";

                            if (individualData[17] == newEvent.Date.ToString("d", CultureInfo.InvariantCulture))
                            {
                                invisEvent.Enabled = true;
                                MessageBox.Show("Nothing has changed");
                                _clickedEvent = null;
                                return;
                            }
                            individualData[17] = newEvent.Date.ToString("d", CultureInfo.InvariantCulture);

                            if (_clickedEvent.Event.NumberOfEvents == 3)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 3)
                                    {
                                        cust2Date = evnt.Date;
                                        cust2Name = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[14]);
                                individualData[14] = Comparison(newCust3Date, cust2Date).ToString();
                                if (int.Parse(individualData[14]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust2Name);
                                    individualData[14] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                newRelDate = AddBusinessDays(newCust3Date, int.Parse(individualData[19]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += Comparison(newRelDate, relDate);
                                individualData[21] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[22] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            else if (_clickedEvent.Event.NumberOfEvents == 4)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 3)
                                    {
                                        cust2Date = evnt.Date;
                                        cust2Name = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 5)
                                    {
                                        cust4Event = evnt;
                                        cust4Date = evnt.Date;
                                        originalCust4Event = evnt;
                                        drawOldCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[14]);
                                individualData[14] = Comparison(newCust3Date, cust2Date).ToString();
                                if (int.Parse(individualData[14]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust2Name);
                                    individualData[14] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust4Date = AddBusinessDays(newCust3Date, int.Parse(individualData[19]));
                                individualData[22] = cust4Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust4Date, int.Parse(individualData[24]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += currentDaysLost;
                                individualData[26] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[27] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust4Event.Date = cust4Date;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust4Event);

                                    IEvent newCust4Event = cust4Event;
                                    newCust4Event.Date = cust4Date;
                                    NetGlobals.customEvents.Add(newCust4Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            else if (_clickedEvent.Event.NumberOfEvents == 5)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 3)
                                    {
                                        cust2Date = evnt.Date;
                                        cust2Name = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 5)
                                    {
                                        cust4Event = evnt;
                                        cust4Date = evnt.Date;
                                        originalCust4Event = evnt;
                                        drawOldCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 6)
                                    {
                                        cust5Event = evnt;
                                        cust5Date = evnt.Date;
                                        originalCust5Event = evnt;
                                        drawOldCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[14]);
                                individualData[14] = Comparison(newCust3Date, cust2Date).ToString();
                                if (int.Parse(individualData[14]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust2Name);
                                    individualData[14] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust4Date = AddBusinessDays(newCust3Date, int.Parse(individualData[19]));
                                individualData[22] = cust4Date.ToString("d", CultureInfo.InvariantCulture);
                                cust5Date = AddBusinessDays(cust4Date, int.Parse(individualData[24]));
                                individualData[27] = cust5Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust5Date, int.Parse(individualData[29]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += currentDaysLost;
                                individualData[31] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[32] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust4Event.Date = cust4Date;
                                drawCust5Event.Date = cust5Date;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust4Event);
                                    NetGlobals.customEvents.Remove(cust5Event);

                                    IEvent newCust4Event = cust4Event;
                                    newCust4Event.Date = cust4Date;
                                    NetGlobals.customEvents.Add(newCust4Event);

                                    IEvent newCust5Event = cust5Event;
                                    newCust5Event.Date = cust5Date;
                                    NetGlobals.customEvents.Add(newCust5Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            else if (_clickedEvent.Event.NumberOfEvents == 6)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 3)
                                    {
                                        cust2Date = evnt.Date;
                                        cust2Name = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 5)
                                    {
                                        cust4Event = evnt;
                                        cust4Date = evnt.Date;
                                        originalCust4Event = evnt;
                                        drawOldCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust4Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 6)
                                    {
                                        cust5Event = evnt;
                                        cust5Date = evnt.Date;
                                        originalCust5Event = evnt;
                                        drawOldCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 7)
                                    {
                                        cust6Event = evnt;
                                        cust6Date = evnt.Date;
                                        originalCust6Event = evnt;
                                        drawOldCust6Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust6Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[14]);
                                individualData[14] = Comparison(newCust3Date, cust2Date).ToString();
                                if (int.Parse(individualData[14]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust2Name);
                                    individualData[14] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust4Date = AddBusinessDays(newCust3Date, int.Parse(individualData[19]));
                                individualData[22] = cust4Date.ToString("d", CultureInfo.InvariantCulture);
                                cust5Date = AddBusinessDays(cust4Date, int.Parse(individualData[24]));
                                individualData[27] = cust5Date.ToString("d", CultureInfo.InvariantCulture);
                                cust6Date = AddBusinessDays(cust5Date, int.Parse(individualData[29]));
                                individualData[32] = cust6Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust6Date, int.Parse(individualData[34]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += currentDaysLost;
                                individualData[36] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[37] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust4Event.Date = cust4Date;
                                drawCust5Event.Date = cust5Date;
                                drawCust6Event.Date = cust6Date;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust4Event);
                                    NetGlobals.customEvents.Remove(cust5Event);
                                    NetGlobals.customEvents.Remove(cust6Event);

                                    IEvent newCust4Event = cust4Event;
                                    newCust4Event.Date = cust4Date;
                                    NetGlobals.customEvents.Add(newCust4Event);

                                    IEvent newCust5Event = cust5Event;
                                    newCust5Event.Date = cust5Date;
                                    NetGlobals.customEvents.Add(newCust5Event);

                                    IEvent newCust6Event = cust6Event;
                                    newCust6Event.Date = cust6Date;
                                    NetGlobals.customEvents.Add(newCust6Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                        }
                        else if (_clickedEvent.Event.Order == 5)
                        {
                            DateTime newCust4Date = newEvent.Date;
                            DateTime newRelDate = DateTime.Now;
                            DateTime relDate = DateTime.Now;
                            DateTime cust3Date = DateTime.Now;
                            DateTime cust5Date = DateTime.Now;
                            DateTime cust6Date = DateTime.Now;

                            IEvent cust5Event = null;
                            IEvent cust6Event = null;
                            IEvent relEvent = null;

                            string cust3Name = "";

                            if (individualData[22] == newEvent.Date.ToString("d", CultureInfo.InvariantCulture))
                            {
                                invisEvent.Enabled = true;
                                MessageBox.Show("Nothing has changed");
                                _clickedEvent = null;
                                return;
                            }
                            individualData[22] = newEvent.Date.ToString("d", CultureInfo.InvariantCulture);

                            if (_clickedEvent.Event.NumberOfEvents == 4)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Date = evnt.Date;
                                        cust3Name = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[19]);
                                individualData[19] = Comparison(newCust4Date, cust3Date).ToString();
                                if (int.Parse(individualData[19]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust3Name);
                                    individualData[19] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                newRelDate = AddBusinessDays(newCust4Date, int.Parse(individualData[24]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += currentDaysLost;
                                individualData[26] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[27] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            if (_clickedEvent.Event.NumberOfEvents == 5)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Date = evnt.Date;
                                        cust3Name = evnt.Name;
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 6)
                                    {
                                        cust5Event = evnt;
                                        cust5Date = evnt.Date;
                                        originalCust5Event = evnt;
                                        drawOldCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };

                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }

                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 6)
                                    {
                                        cust5Event = evnt;
                                        cust5Date = evnt.Date;
                                        originalCust5Event = evnt;
                                        drawOldCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });

                                int storeInt = int.Parse(individualData[19]);
                                individualData[19] = Comparison(newCust4Date, cust3Date).ToString();
                                if (int.Parse(individualData[19]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust3Name);
                                    individualData[19] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust5Date = AddBusinessDays(newCust4Date, int.Parse(individualData[24]));
                                individualData[27] = cust5Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust5Date, int.Parse(individualData[29]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += currentDaysLost;
                                individualData[31] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[32] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust5Event.Date = cust5Date;
                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust5Event);

                                    IEvent newCust5Event = cust5Event;
                                    newCust5Event.Date = cust5Date;
                                    NetGlobals.customEvents.Add(newCust5Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            if (_clickedEvent.Event.NumberOfEvents == 6)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 4)
                                    {
                                        cust3Date = evnt.Date;
                                        cust3Name = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };

                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }

                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 6)
                                    {
                                        cust5Event = evnt;
                                        cust5Date = evnt.Date;
                                        originalCust5Event = evnt;
                                        drawOldCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust5Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 7)
                                    {
                                        cust6Event = evnt;
                                        cust6Date = evnt.Date;
                                        originalCust6Event = evnt;
                                        drawOldCust6Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust6Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });

                                int storeInt = int.Parse(individualData[19]);
                                individualData[19] = Comparison(newCust4Date, cust3Date).ToString();
                                if (int.Parse(individualData[19]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust3Name);
                                    individualData[19] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust5Date = AddBusinessDays(newCust4Date, int.Parse(individualData[24]));
                                individualData[27] = cust5Date.ToString("d", CultureInfo.InvariantCulture);
                                cust6Date = AddBusinessDays(cust5Date, int.Parse(individualData[29]));
                                individualData[32] = cust6Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust6Date, int.Parse(individualData[34]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += currentDaysLost;
                                individualData[36] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[37] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust5Event.Date = cust5Date;
                                drawCust6Event.Date = cust6Date;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust5Event);
                                    NetGlobals.customEvents.Remove(cust6Event);

                                    IEvent newCust5Event = cust5Event;
                                    newCust5Event.Date = cust5Date;
                                    NetGlobals.customEvents.Add(newCust5Event);

                                    IEvent newCust6Event = cust6Event;
                                    newCust6Event.Date = cust6Date;
                                    NetGlobals.customEvents.Add(newCust6Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                        }
                        else if (_clickedEvent.Event.Order == 6)
                        {
                            DateTime newCust5Date = newEvent.Date;
                            DateTime newRelDate = DateTime.Now;
                            DateTime relDate = DateTime.Now;
                            DateTime cust4Date = DateTime.Now;
                            DateTime cust6Date = DateTime.Now;

                            IEvent cust6Event = null;
                            IEvent relEvent = null;

                            string cust4Name = "";

                            if (individualData[27] == newEvent.Date.ToString("d", CultureInfo.InvariantCulture))
                            {
                                invisEvent.Enabled = true;
                                MessageBox.Show("Nothing has changed");
                                _clickedEvent = null;
                                return;
                            }
                            individualData[27] = newEvent.Date.ToString("d", CultureInfo.InvariantCulture);

                            if (_clickedEvent.Event.NumberOfEvents == 5)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 5)
                                    {
                                        cust4Date = evnt.Date;
                                        cust4Name = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[24]);
                                individualData[24] = Comparison(newCust5Date, cust4Date).ToString();
                                if (int.Parse(individualData[24]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust4Name);
                                    individualData[24] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                newRelDate = AddBusinessDays(newCust5Date, int.Parse(individualData[29]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += currentDaysLost;
                                individualData[31] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[32] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                            if (_clickedEvent.Event.NumberOfEvents == 6)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 5)
                                    {
                                        cust4Date = evnt.Date;
                                        cust4Name = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                    else if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 7)
                                    {
                                        cust6Event = evnt;
                                        cust6Date = evnt.Date;
                                        originalCust6Event = evnt;
                                        drawOldCust6Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                        drawCust6Event = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[24]);
                                individualData[24] = Comparison(newCust5Date, cust4Date).ToString();
                                if (int.Parse(individualData[24]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust4Name);
                                    individualData[24] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                cust6Date = AddBusinessDays(newCust5Date, int.Parse(individualData[29]));
                                individualData[32] = cust6Date.ToString("d", CultureInfo.InvariantCulture);
                                newRelDate = AddBusinessDays(cust6Date, int.Parse(individualData[34]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += currentDaysLost;
                                individualData[36] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[37] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;
                                drawCust6Event.Date = cust6Date;
                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);
                                    NetGlobals.customEvents.Remove(cust6Event);

                                    IEvent newCust6Event = cust6Event;
                                    newCust6Event.Date = cust6Date;
                                    NetGlobals.customEvents.Add(newCust6Event);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                        }
                        else if (_clickedEvent.Event.Order == 7)
                        {
                            DateTime newCust6Date = newEvent.Date;
                            DateTime newRelDate = DateTime.Now;
                            DateTime relDate = DateTime.Now;
                            DateTime cust5Date = DateTime.Now;

                            IEvent relEvent = null;

                            string cust5Name = "";

                            if (individualData[32] == newEvent.Date.ToString("d", CultureInfo.InvariantCulture))
                            {
                                invisEvent.Enabled = true;
                                MessageBox.Show("Nothing has changed");
                                _clickedEvent = null;
                                return;
                            }
                            individualData[32] = newEvent.Date.ToString("d", CultureInfo.InvariantCulture);

                            if (_clickedEvent.Event.NumberOfEvents == 6)
                            {
                                NetGlobals.customEvents.ForEach(delegate(IEvent evnt)
                                {
                                    if (evnt.Name == _clickedEvent.Event.Name && evnt.Order == 6)
                                    {
                                        cust5Date = evnt.Date;
                                        cust5Name = evnt.Name;
                                    }
                                    else if (evnt.EventText == _clickedEvent.Event.Name + " Release Date")
                                    {
                                        relEvent = evnt;
                                        relDate = evnt.Date;
                                        originalRel = evnt;
                                        drawOldRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = Color.Black,
                                            Enabled = false,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                        drawRelEvent = new CustomEvent
                                        {
                                            Name = evnt.Name,
                                            EventText = evnt.EventText,
                                            IgnoreTimeComponent = true,
                                            Date = evnt.Date,
                                            EventColor = evnt.EventColor,
                                            Order = evnt.Order,
                                            NumberOfEvents = evnt.NumberOfEvents,
                                        };
                                    }
                                });
                                int storeInt = int.Parse(individualData[29]);
                                individualData[29] = Comparison(newCust6Date, cust5Date).ToString();
                                if (int.Parse(individualData[29]) < 0)
                                {
                                    invisEvent.Enabled = true;
                                    MessageBox.Show("This event cannot be before " + cust5Name);
                                    individualData[29] = storeInt.ToString();
                                    _clickedEvent = null;
                                    return;
                                }
                                newRelDate = AddBusinessDays(newCust6Date, int.Parse(individualData[34]));
                                while (newRelDate.DayOfWeek != DayOfWeek.Tuesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Wednesday &&
                                       newRelDate.DayOfWeek != DayOfWeek.Thursday)
                                {
                                    newRelDate = AddBusinessDays(newRelDate, 1);
                                }
                                currentDaysLost = Comparison(newRelDate, relDate);
                                daysLost += currentDaysLost;
                                individualData[36] = newRelDate.ToString("d", CultureInfo.InvariantCulture);
                                individualData[37] = daysLost.ToString();
                                drawNewEvent = newEvent;
                                drawRelEvent.Date = newRelDate;

                                if (Checker(oldReleaseDate, Comparison(newRelDate, relDate), _clickedEvent.Event))
                                {
                                    commit = true;
                                    NetGlobals.customEvents.Add(newEvent);
                                    NetGlobals.customEvents.Remove(_clickedEvent.Event);
                                    NetGlobals.customEvents.Remove(relEvent);

                                    IEvent newRelEvent = relEvent;
                                    newRelEvent.Date = newRelDate;
                                    NetGlobals.customEvents.Add(newRelEvent);

                                    NetGlobals.tempEvents.Clear();
                                    NetGlobals.tempEvents.AddRange(NetGlobals.customEvents);

                                    saveTemp();
                                    Refresh();
                                }
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 9
0
        private void RenderMonthCalendar(PaintEventArgs e)
        {
            _calendarDays.Clear();
            _calendarEvents.Clear();
            var      bmp = new Bitmap(ClientSize.Width, ClientSize.Height);
            Graphics g   = Graphics.FromImage(bmp);

            e.Graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
            g.TextRenderingHint          = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
            SizeF sunSize        = g.MeasureString("Вс", _dayOfWeekFont);
            SizeF monSize        = g.MeasureString("Пн", _dayOfWeekFont);
            SizeF tueSize        = g.MeasureString("Вт", _dayOfWeekFont);
            SizeF wedSize        = g.MeasureString("Ср", _dayOfWeekFont);
            SizeF thuSize        = g.MeasureString("Чт", _dayOfWeekFont);
            SizeF friSize        = g.MeasureString("Пт", _dayOfWeekFont);
            SizeF satSize        = g.MeasureString("Сб", _dayOfWeekFont);
            SizeF dateHeaderSize = g.MeasureString(
                _calendarDate.ToString("MMMM") + " " + _calendarDate.Year.ToString(CultureInfo.InvariantCulture), _dateHeaderFont);
            int headerSpacing = Max(sunSize.Height, monSize.Height, tueSize.Height, wedSize.Height, thuSize.Height, friSize.Height,
                                    satSize.Height) + 5;
            int       controlsSpacing = ((!_showTodayButton) && (!_showDateInHeader) && (!_showArrowControls)) ? 0 : 30;
            int       cellWidth       = (ClientSize.Width - MarginSize * 2) / 7;
            int       numWeeks        = NumberOfWeeks(_calendarDate.Year, _calendarDate.Month);
            int       cellHeight      = (ClientSize.Height - MarginSize * 2 - headerSpacing - controlsSpacing) / numWeeks;
            int       xStart          = MarginSize;
            int       yStart          = MarginSize;
            DayOfWeek startWeekEnum   = new DateTime(_calendarDate.Year, _calendarDate.Month, 1).DayOfWeek;
            int       startWeek       = ((int)startWeekEnum) + 1;
            int       rogueDays       = startWeek - 1;

            yStart += headerSpacing + controlsSpacing;

            int counter  = 1;
            int counter2 = 1;

            bool first  = false;
            bool first2 = false;

            _btnToday.Location = new Point(MarginSize, MarginSize);

            for (int y = 0; y < numWeeks; y++)
            {
                for (int x = 0; x < 7; x++)
                {
                    if (rogueDays == 0 && counter <= DateTime.DaysInMonth(_calendarDate.Year, _calendarDate.Month))
                    {
                        if (!_calendarDays.ContainsKey(counter))
                        {
                            _calendarDays.Add(counter, new Point(xStart, (int)(yStart + 2f + g.MeasureString(counter.ToString(CultureInfo.InvariantCulture), _daysFont).Height)));
                        }

                        if (_calendarDate.Year == DateTime.Now.Year && _calendarDate.Month == DateTime.Now.Month &&
                            counter == DateTime.Now.Day && _highlightCurrentDay)
                        {
                            g.FillRectangle(new SolidBrush(Color.FromArgb(234, 234, 234)), xStart, yStart, cellWidth, cellHeight);
                        }

                        if (first == false)
                        {
                            first = true;
                            if (_calendarDate.Year == DateTime.Now.Year && _calendarDate.Month == DateTime.Now.Month &&
                                counter == DateTime.Now.Day)
                            {
                                g.DrawString(
                                    _calendarDate.ToString("MMM") + " " + counter.ToString(CultureInfo.InvariantCulture),
                                    _todayFont, Brushes.Black, xStart + 5, yStart + 2);
                            }
                            else
                            {
                                g.DrawString(
                                    _calendarDate.ToString("MMM") + " " + counter.ToString(CultureInfo.InvariantCulture),
                                    _daysFont, Brushes.Black, xStart + 5, yStart + 2);
                            }
                        }
                        else
                        {
                            if (_calendarDate.Year == DateTime.Now.Year && _calendarDate.Month == DateTime.Now.Month &&
                                counter == DateTime.Now.Day)
                            {
                                g.DrawString(counter.ToString(CultureInfo.InvariantCulture), _todayFont, Brushes.Black, xStart + 5, yStart + 2);
                            }
                            else
                            {
                                g.DrawString(counter.ToString(CultureInfo.InvariantCulture), _daysFont, Brushes.Black, xStart + 5, yStart + 2);
                            }
                        }
                        counter++;
                    }
                    else if (rogueDays > 0)
                    {
                        int dm =
                            DateTime.DaysInMonth(_calendarDate.AddMonths(-1).Year, _calendarDate.AddMonths(-1).Month) -
                            rogueDays + 1;
                        g.DrawString(dm.ToString(CultureInfo.InvariantCulture), _daysFont, new SolidBrush(Color.FromArgb(170, 170, 170)), xStart + 5, yStart + 2);
                        rogueDays--;
                    }

                    g.DrawRectangle(Pens.DarkGray, xStart, yStart, cellWidth, cellHeight);
                    if (rogueDays == 0 && counter > DateTime.DaysInMonth(_calendarDate.Year, _calendarDate.Month))
                    {
                        if (first2 == false)
                        {
                            first2 = true;
                        }
                        else
                        {
                            if (counter2 == 1)
                            {
                                g.DrawString(_calendarDate.AddMonths(1).ToString("MMM") + " " + counter2.ToString(CultureInfo.InvariantCulture), _daysFont,
                                             new SolidBrush(Color.FromArgb(170, 170, 170)), xStart + 5, yStart + 2);
                            }
                            else
                            {
                                g.DrawString(counter2.ToString(CultureInfo.InvariantCulture), _daysFont,
                                             new SolidBrush(Color.FromArgb(170, 170, 170)), xStart + 5, yStart + 2);
                            }
                            counter2++;
                        }
                    }
                    xStart += cellWidth;
                }
                xStart  = MarginSize;
                yStart += cellHeight;
            }
            xStart = MarginSize + ((cellWidth - (int)sunSize.Width) / 2);
            yStart = MarginSize + controlsSpacing;

            g.DrawString("Вс", _dayOfWeekFont, Brushes.Black, xStart, yStart);
            xStart = MarginSize + ((cellWidth - (int)monSize.Width) / 2) + cellWidth;
            g.DrawString("Пн", _dayOfWeekFont, Brushes.Black, xStart, yStart);

            xStart = MarginSize + ((cellWidth - (int)tueSize.Width) / 2) + cellWidth * 2;
            g.DrawString("Вт", _dayOfWeekFont, Brushes.Black, xStart, yStart);

            xStart = MarginSize + ((cellWidth - (int)wedSize.Width) / 2) + cellWidth * 3;
            g.DrawString("Ср", _dayOfWeekFont, Brushes.Black, xStart, yStart);

            xStart = MarginSize + ((cellWidth - (int)thuSize.Width) / 2) + cellWidth * 4;
            g.DrawString("Чт", _dayOfWeekFont, Brushes.Black, xStart, yStart);

            xStart = MarginSize + ((cellWidth - (int)friSize.Width) / 2) + cellWidth * 5;
            g.DrawString("Пт", _dayOfWeekFont, Brushes.Black, xStart, yStart);

            xStart = MarginSize + ((cellWidth - (int)satSize.Width) / 2) + cellWidth * 6;
            g.DrawString("Сб", _dayOfWeekFont, Brushes.Black, xStart, yStart);

            if (_showDateInHeader)
            {
                g.DrawString(
                    _calendarDate.ToString("MMMM") + " " + _calendarDate.Year.ToString(CultureInfo.InvariantCulture),
                    _dateHeaderFont, Brushes.Black, ClientSize.Width - MarginSize - dateHeaderSize.Width,
                    MarginSize);
            }

            _events.Sort(new EventComparer());

            for (int i = 1; i <= DateTime.DaysInMonth(_calendarDate.Year, _calendarDate.Month); i++)
            {
                int renderOffsetY = 0;

                foreach (IEvent v in _events)
                {
                    var dt = new DateTime(_calendarDate.Year, _calendarDate.Month, i, 23, 59, _calendarDate.Second);
                    if (NeedsRendering(v, dt))
                    {
                        int alpha = 255;
                        if (!v.Enabled && _dimDisabledEvents)
                        {
                            alpha = 64;
                        }
                        Color alphaColor = Color.FromArgb(alpha, v.EventColor.R, v.EventColor.G, v.EventColor.B);

                        int    offsetY = renderOffsetY;
                        Region r       = g.Clip;
                        Point  point   = _calendarDays[i];
                        SizeF  sz      = g.MeasureString(v.EventText, v.EventFont);
                        int    yy      = point.Y - 1;
                        int    xx      = ((cellWidth - (int)sz.Width) / 2) + point.X;

                        if (sz.Width > cellWidth)
                        {
                            xx = point.X;
                        }
                        if (renderOffsetY + sz.Height > cellHeight - 10)
                        {
                            continue;
                        }
                        g.Clip = new Region(new Rectangle(point.X + 1, point.Y + offsetY, cellWidth - 1, (int)sz.Height));
                        g.FillRectangle(new SolidBrush(alphaColor), point.X + 1, point.Y + offsetY, cellWidth - 1, sz.Height);
                        if (!v.Enabled && _showDashedBorderOnDisabledEvents)
                        {
                            var p = new Pen(new SolidBrush(Color.FromArgb(255, 0, 0, 0)))
                            {
                                DashStyle = DashStyle.Dash
                            };
                            g.DrawRectangle(p, point.X + 1, point.Y + offsetY, cellWidth - 2, sz.Height - 1);
                        }
                        g.DrawString(v.EventText, v.EventFont, new SolidBrush(v.EventTextColor), xx, yy + offsetY);
                        g.Clip = r;

                        var ev = new CalendarEvent
                        {
                            EventArea =
                                new Rectangle(point.X + 1, point.Y + offsetY, cellWidth - 1,
                                              (int)sz.Height),
                            Event = v,
                            Date  = dt
                        };

                        _calendarEvents.Add(ev);
                        renderOffsetY += (int)sz.Height + 1;
                    }
                }
            }
            _rectangles.Clear();

            g.Dispose();
            e.Graphics.DrawImage(bmp, 0, 0, ClientSize.Width, ClientSize.Height);
            bmp.Dispose();
        }
Ejemplo n.º 10
0
        internal Bitmap RequestImage()
        {
            const int cellHourWidth  = 60;
            const int cellHourHeight = 30;
            var       bmp            = new Bitmap(ClientSize.Width, cellHourWidth * 24);
            Graphics  g = Graphics.FromImage(bmp);

            g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;

            var dt     = new DateTime(_calendarDate.Year, _calendarDate.Month, _calendarDate.Day, 0, 0, 0);
            int xStart = 0;
            int yStart = 0;

            g.DrawRectangle(Pens.Black, 0, 0, ClientSize.Width - MarginSize * 2 - 2, cellHourHeight * 24);
            for (int i = 0; i < 24; i++)
            {
                var textWidth = (int)g.MeasureString(dt.ToString("htt").ToLower(), _dayViewTimeFont).Width;
                g.DrawRectangle(Pens.Black, xStart, yStart, cellHourWidth, cellHourHeight);
                g.DrawLine(Pens.Black, xStart + cellHourWidth, yStart + cellHourHeight,
                           ClientSize.Width - MarginSize * 2 - 3, yStart + cellHourHeight);
                g.DrawLine(Pens.DarkGray, xStart + cellHourWidth, yStart + cellHourHeight / 2,
                           ClientSize.Width - MarginSize * 2 - 3, yStart + cellHourHeight / 2);

                g.DrawString(dt.ToString("htt").ToLower(), _dayViewTimeFont, Brushes.Black, xStart + cellHourWidth - textWidth, yStart);
                yStart += cellHourHeight;
                dt      = dt.AddHours(1);
            }

            dt = new DateTime(_calendarDate.Year, _calendarDate.Month, _calendarDate.Day, 23, 59, 0);

            List <IEvent> evnts = _events.Where(evnt => NeedsRendering(evnt, dt)).ToList().OrderBy(d => d.Date).ToList();

            xStart = cellHourWidth + 1;
            yStart = 0;

            g.Clip = new Region(new Rectangle(0, 0, ClientSize.Width - MarginSize * 2 - 2, cellHourHeight * 24));
            _calendarEvents.Clear();
            for (int i = 0; i < 24; i++)
            {
                dt = new DateTime(_calendarDate.Year, _calendarDate.Month, _calendarDate.Day, 0, 0, 0);
                dt = dt.AddHours(i);
                foreach (var evnt in evnts)
                {
                    TimeSpan ts = TimeSpan.FromHours(evnt.EventLengthInHours);

                    if (evnt.Date.Ticks >= dt.Ticks && evnt.Date.Ticks < dt.Add(ts).Ticks&& evnt.EventLengthInHours > 0 && i >= evnt.Date.Hour)
                    {
                        int   divisor = evnt.Date.Minute == 0 ? 1 : 60 / evnt.Date.Minute;
                        Color clr     = Color.FromArgb(175, evnt.EventColor.R, evnt.EventColor.G, evnt.EventColor.B);
                        g.FillRectangle(new SolidBrush(GetFinalBackColor()), xStart, yStart + cellHourHeight / divisor + 1, ClientSize.Width - MarginSize * 2 - cellHourWidth - 3, cellHourHeight * ts.Hours - 1);
                        g.FillRectangle(new SolidBrush(clr), xStart, yStart + cellHourHeight / divisor + 1, ClientSize.Width - MarginSize * 2 - cellHourWidth - 3, cellHourHeight * ts.Hours - 1);
                        g.DrawString(evnt.EventText, evnt.EventFont, new SolidBrush(evnt.EventTextColor), xStart, yStart + cellHourHeight / divisor);

                        var ce = new CalendarEvent
                        {
                            Event     = evnt,
                            Date      = dt,
                            EventArea = new Rectangle(xStart, yStart + cellHourHeight / divisor + 1,
                                                      ClientSize.Width - MarginSize * 2 - cellHourWidth - 3,
                                                      cellHourHeight * ts.Hours)
                        };
                        _calendarEvents.Add(ce);
                    }
                }
                yStart += cellHourHeight;
            }

            g.Dispose();
            return(bmp);
        }