Пример #1
0
        private bool IsExecOfDay(LibBusinessTask task)
        {
            bool needExec = false;
            int  curDate  = LibDateUtils.GetCurrentDate();

            if (task.ExecDate == 0)
            {
                if (task.RepeatDateMark != 0)
                {
                    needExec = IsExecOfDay(task.RepeatDateMark, curDate);
                    if (task.IsJustWorkDay)
                    {
                        string calendarId = task.CalendarId;
                        if (!string.IsNullOrEmpty(calendarId))
                        {
                            CalendarData calendarData = new CalendarData(calendarId);
                            needExec = IsWorkDay(curDate, calendarData);
                        }
                    }
                }
            }
            else
            {
                needExec = task.ExecDate == curDate;
            }
            return(needExec);
        }
Пример #2
0
        public void OnLanguageChange()
        {
            try
            {
                fLangMan     = fHost.CreateLangMan(this);
                fDisplayName = fLangMan.LS(PLS.LSID_MICalendar);

                CalendarData.BahaiMonths         = CalendarData.InitNames(fLangMan.LS(PLS.LSID_BahaiMonths));
                CalendarData.BahaiWeekdays       = CalendarData.InitNames(fLangMan.LS(PLS.LSID_BahaiWeekdays));
                CalendarData.ClassicMonths       = CalendarData.InitNames(fLangMan.LS(PLS.LSID_ClassicMonths));
                CalendarData.ClassicWeekdays     = CalendarData.InitNames(fLangMan.LS(PLS.LSID_ClassicWeekdays));
                CalendarData.HebrewMonths        = CalendarData.InitNames(fLangMan.LS(PLS.LSID_HebrewMonths));
                CalendarData.HebrewWeekdays      = CalendarData.InitNames(fLangMan.LS(PLS.LSID_HebrewWeekdays));
                CalendarData.IndianCivilMonths   = CalendarData.InitNames(fLangMan.LS(PLS.LSID_IndianCivilMonths));
                CalendarData.IndianCivilWeekdays = CalendarData.InitNames(fLangMan.LS(PLS.LSID_IndianCivilWeekdays));
                CalendarData.IslamicMonths       = CalendarData.InitNames(fLangMan.LS(PLS.LSID_IslamicMonths));
                CalendarData.IslamicWeekdays     = CalendarData.InitNames(fLangMan.LS(PLS.LSID_IslamicWeekdays));
                CalendarData.PersianMonths       = CalendarData.InitNames(fLangMan.LS(PLS.LSID_PersianMonths));
                CalendarData.PersianWeekdays     = CalendarData.InitNames(fLangMan.LS(PLS.LSID_PersianWeekdays));

                if (fForm != null)
                {
                    fForm.SetLang();
                }
            }
            catch (Exception ex)
            {
                Logger.LogWrite("GKCalendarPlugin.OnLanguageChange(): " + ex.Message);
            }
        }
Пример #3
0
        public async Task <IActionResult> OnPostAsync()
        {
            var user = await userManager.GetUserAsync(User);

            if (!ModelState.IsValid)
            {
                return(Page());
            }

            else
            {
                CalendarData date = new CalendarData
                {
                    Dan            = Dan,
                    Mesec          = Mesec,
                    User           = user,
                    Pocetak        = NoviPocetak,
                    Zavrestak      = NoviZavrsetak,
                    opisDogadjaja  = NoviOpisDogadjaja,
                    NazivDogadjaja = NoviDogadjaj,
                    CeoDan         = CeoDan
                };
                await db.CalendarData.AddAsync(date);

                await db.SaveChangesAsync();

                return(RedirectToPage("/UserPages/Calendar"));
            }
        }
Пример #4
0
        /// <summary>
        /// Renders a calendar content range to the canvas.
        /// </summary>
        /// <param name="content">the content to render</param>
        /// <param name="canvas">the drawing canvas to use</param>
        /// <param name="rect">the calendar rectangle</param>
        public void Render(CalendarContentRange content, IDrawingCanvas canvas, RectangleF rect)
        {
            if (content == null)
            {
                throw new ArgumentNullException("content");
            }
            if (canvas == null)
            {
                throw new ArgumentNullException("canvas");
            }

            _calendarData     = new CalendarData((ICalendar)content.Owner);
            this._rightToLeft = ((ICalendar)content.Owner).Direction == Direction.RTL;
            try
            {
                // store the canvas to use in rendering
                _canvas = canvas;

                // TODO: consider to add gaps
                // allocate the area for calendar drawing
                _calendarArea = rect;
                // allocate the area for only one month
                _monthArea = new SizeF(content.Owner.Width.ToTwips(), content.Owner.Height.ToTwips());

                DrawMonths(CalendarData.GetMonthsRange(content.MonthFrom, content.MonthTo));
            }
            finally
            {
                if (_calendarData != null)
                {
                    _calendarData.Dispose();
                }
            }
        }
Пример #5
0
        LayoutResult ILayoutManager.Measure(LayoutContext context)
        {
            var content = (CalendarContentRange)context.ContentRange;

            LayoutResult result;

            using (var calendarData = new CalendarData(_calendar))
            {
                // the first time run
                if (content == null)
                {
                    content = new CalendarContentRange(_calendar, calendarData.GetFirstMonth(), calendarData.GetLastMonth());
                }
                else if ((context.LayoutDirection & LayoutDirection.Vertical) != 0)                 // continue vertical run
                {
                    // do we have anything else to render ?
                    if (!calendarData.HasMonthAfter(content.MonthTo))
                    {
                        return(new LayoutResult(null, LayoutStatus.NoContent | LayoutStatus.Complete, new SizeF()));
                    }

                    var continuedRange = content.StaticContentRange.ContinueRange(context);
                    content = new CalendarContentRange(continuedRange, _calendar, calendarData.GetNextMonth(content.MonthTo), calendarData.GetLastMonth());
                }
                else if ((context.LayoutDirection & LayoutDirection.Horizontal) != 0)                 // continue horizontal run
                {
                    var continuedRange = content.StaticContentRange.ContinueRange(context);
                    content = new CalendarContentRange(continuedRange, _calendar, content.MonthFrom, content.MonthTo);
                }

                result = MeasureContentRange(content, calendarData, context.AvailableSize);
            }

            return(result);
        }
Пример #6
0
        public void PrintCalender(CalendarData data)
        {
            Console.Clear();
            for (int i = 0; i < data.Calendar.Length; i++)
            {
                if (data.CurrentDayIdx == i)
                {
                    Console.ForegroundColor = ConsoleColor.Green;
                }
                else if (DateHelper.IsHoliday(i))
                {
                    Console.ForegroundColor = ConsoleColor.Red;
                }

                Console.Write(data.Calendar[i]);
                Console.Write("\t");
                if (i % 7 == 6)
                {
                    Console.Write("\n");
                }

                Console.ResetColor();
            }

            Console.WriteLine(Constants.WorkingDaysMsg, data.WorkingDaysCount);
        }
Пример #7
0
    void doSelect(GameObject obj)
    {
        CalendarData cd = obj.GetComponent <CalendarData>();

        if (cd.Index == selectIndex)
        {
            return;
        }
        if (selectIndex != -1)
        {
            int        row    = selectIndex / 7;
            int        col    = selectIndex % 7;
            GameObject select = transform.FindChild("days").FindChild("row" + row).FindChild("col" + col).gameObject;
            select.transform.FindChild("gl").GetComponent <UILabel>().color = Color.black;
            select.transform.FindChild("nl").GetComponent <UILabel>().color = Color.gray;
            Transform sTrans = select.transform.FindChild("select");
            if (sTrans != null)
            {
                GameObject.Destroy(sTrans.gameObject);
            }
        }
        obj.transform.FindChild("gl").GetComponent <UILabel>().color = Color.white;
        obj.transform.FindChild("nl").GetComponent <UILabel>().color = Color.white;
        UITexture texture = NGUITools.AddChild <UITexture>(obj);

        texture.gameObject.name         = "select";
        texture.transform.localPosition = new Vector3(0, -20, 0);
        texture.width       = 100;
        texture.width       = 100;
        texture.depth       = 0;
        texture.mainTexture = selectTexture;
        selectIndex         = cd.Index;
    }
        private CalendarData FillWeatherInfo(CalendarData calendarData, List <string> info)
        {
            int week         = calendarData.ActualDayWeek;
            int weekPosition = calendarData.ActualDayWeekPosition;

            foreach (string weatherInfo in info)
            {
                if (weekPosition == 7)
                {
                    if (week >= calendarData.Weeks.Count - 1)
                    {
                        break;
                    }

                    weekPosition = 0;
                    week++;
                }

                calendarData.Weeks[week].Days[weekPosition].Weather = weatherInfo;

                weekPosition++;
            }

            return(calendarData);
        }
        private List <CalendarData> getRequeriments(string clientId, int?projectId)
        {
            List <CalendarData> listCalendarData = new List <CalendarData>();

            var tuples = db.SP_GetRequirements(clientId, projectId);

            CalendarData calendarData = null;

            foreach (var item in tuples)
            {
                calendarData = new CalendarData();
                calendarData.idProjectFKPK   = item.idProjectFKPK;
                calendarData.idModuleFKPK    = item.idModuleFKPK;
                calendarData.idRequerimentPK = item.idRequerimentPK;
                calendarData.status          = item.status;
                calendarData.startingDate    = item.startingDate.ToString("yyyy-MM-dd");
                if (item.endDate == null)
                {
                    calendarData.endDate = "";
                }
                else
                {
                    calendarData.endDate = ((DateTime)(item.endDate)).ToString("yyyy-MM-dd");
                }


                listCalendarData.Add(calendarData);
            }

            return(listCalendarData);
        }
        public void CalendarRenderWithNoDataBound()
        {
            PageDocument report = TestHelper.GetReport("Calendar-NoData.rdlx");

            TestingRenderingExtension rendererExt = new TestingRenderingExtension();

            report.Render(rendererExt, null);

            CalendarDataRegion calendar = rendererExt.GetReportItem("Calendar1") as CalendarDataRegion;

            Assert.IsNotNull(calendar);

            CalendarData         calendarData = new CalendarData(calendar);
            CalendarContentRange content      = new CalendarContentRange(calendar, calendarData.GetFirstMonth(), calendarData.GetLastMonth());

            // recalibrate graphics to twips
            RectangleF rect = new RectangleF(0, 0, 4000f, 4000f);

            CalendarDesigner.ScaleToTwipsGraphicsAndBound(GetGraphics(), ref rect);

            // create gdi canvas wrapper to use in renderer
            IDrawingCanvas canvas = GraphicsCanvasFactory.Create(GetGraphics());

            // render calendar to canvas
            CalendarRenderer.Instance.Render(content, canvas, rect);
        }
Пример #11
0
    public CalendarData DeepCopy(CalendarData data)
    {
        CalendarData newData = new CalendarData();

        newData.DayArray = data.DayArray;
        return(newData);
    }
        /// <summary>
        /// Formats the Panels in the calendar
        /// </summary>
        /// <param name="data">the data to use in the calendar</param>
        /// <param name="currentDateTime">Current date and time</param>
        private void FormatPanelForDays(CalendarData data, ref DateTime currentDateTime)
        {
            calendarMonth.Text = selectedMonth.ToString("MMMM").ToUpper();

            data.PanelForCalendarDay.BackColor = Color.FromArgb(251, 251, 251);
            data.LabelForDate.ForeColor        = Color.Black;
            data.LabelForDate.Font             = new Font(data.LabelForDate.Font, FontStyle.Regular);
            data.LabelForDate.Text             = currentDateTime.Day.ToString();
            data.LabelForDate.AutoSize         = false;
            data.LabelForDate.Dock             = DockStyle.Fill;
            data.LabelForDate.TextAlign        = ContentAlignment.MiddleCenter;
            data.DayNotification.Height        = 2;
            data.DayNotification.Width         = 2;
            data.DayNotification.Location      = new Point(data.PanelForCalendarDay.Width / 2 - data.DayNotification.Width / 2, data.PanelForCalendarDay.Height / 2 + 12);

            CheckIfUserHasAppointment(data.DayNotification, currentDateTime);

            if (currentDateTime.Month != selectedMonth.Month)
            {
                data.LabelForDate.ForeColor = Color.FromArgb(203, 203, 203);
            }
            else if (currentDateTime == DateTime.Today)
            {
                data.PanelForCalendarDay.BackColor = Color.FromArgb(148, 197, 204);
                data.LabelForDate.ForeColor        = Color.FromArgb(251, 251, 251);
                data.LabelForDate.Font             = new Font(data.LabelForDate.Font, FontStyle.Bold);
            }

            data.PanelForCalendarDay.Controls.Add(data.LabelForDate);
            data.Date = currentDateTime;

            currentDateTime = currentDateTime.AddDays(1);
        }
Пример #13
0
 public CalendarDataViewModel(CalendarData model)
 {
     if (model == null)
     {
         throw new ArgumentNullException(nameof(model));
     }
     Model = model;
 }
Пример #14
0
        private LayoutResult LayoutContentRange(CalendarContentRange range, CalendarData calendarData, LayoutContext context)
        {
            LayoutResult result       = MeasureContentRange(range, calendarData, new SizeF(float.MaxValue, float.MaxValue));
            SizeF        completeSize = GetCompleteSize(calendarData);

            if (range.EndHorzRange <= 0)
            {
                range.EndHorzRange = completeSize.Width;
            }

            if (range.EndVertRange <= 0)
            {
                range.EndVertRange = completeSize.Height;
            }

            SizeF size = new SizeF(range.EndHorzRange - range.StartHorzRange, range.EndVertRange - range.StartVertRange);

            if (context.AvailableSize.Width > 0 && size.Width > context.AvailableSize.Width)
            {
                size.Width         = context.AvailableSize.Width;
                range.EndHorzRange = range.StartHorzRange + context.AvailableSize.Width;
            }

            if (context.LayoutDirection != LayoutDirection.Horizontal)
            {
                range.EndHorzRange = -1;
            }
            else
            {
                range.EndVertRange = -1;
            }

            if (context.AvailableSize.Height > 0 && size.Height > context.AvailableSize.Height)
            {
                size.Height        = context.AvailableSize.Height;
                range.EndVertRange = range.StartVertRange + context.AvailableSize.Height + CalendarData.MonthsSpace;
            }

            if (Utils.ApproxGreaterOrEquals(range.EndHorzRange, completeSize.Width))
            {
                if (context.LayoutDirection == LayoutDirection.Horizontal && range.EndVertRange > 0)
                {
                    CalendarContentRange.StaticRange staticRange = new CalendarContentRange.StaticRange(range.EndVertRange);
                    range = new CalendarContentRange(staticRange, range.Owner, range.MonthFrom, range.MonthTo);                    // so the layout will continue in a vertical direction
                }
                else
                {
                    range.EndHorzRange = -1;
                }
            }

            if (Utils.ApproxGreaterOrEquals(range.EndVertRange, completeSize.Height))
            {
                range.EndVertRange = -1;
            }

            return(result);
        }
        public void TestRenderingInMultiThreads()
        {
            var report      = TestHelper.GetReport("Calendar.rdlx");
            var rendererExt = new TestingRenderingExtension();

            report.Render(rendererExt, null);

            var calendar = rendererExt.GetReportItem("Calendar1") as CalendarDataRegion;

            Assert.IsNotNull(calendar);

            var calendarData = new CalendarData(calendar);
            var content      = new CalendarContentRange(calendar, calendarData.GetFirstMonth(), calendarData.GetLastMonth());

            // recalibrate graphics to twips
            var rect = new RectangleF(0, 0, 4000f, 4000f);

            CalendarDesigner.ScaleToTwipsGraphicsAndBound(GetGraphics(), ref rect);

            // the action of rendering calendar to canvas
            System.Action render = () =>
            {
                using (var graphics = Graphics.FromHwnd(IntPtr.Zero))
                {
                    var canvas = GraphicsCanvasFactory.Create(graphics);
                    (calendar.GetRenderer <IGraphicsRenderer>() as CalendarRenderer)
                    .Render(content, canvas, rect);
                }
            };

            var isSuccess1 = false;
            var isSuccess2 = false;

            ThreadStart render1 = () =>
            {
                render();
                isSuccess1 = true;
            };

            ThreadStart render2 = () =>
            {
                render();
                isSuccess2 = true;
            };

            var thread1 = new Thread(render1);
            var thread2 = new Thread(render2);

            thread1.Start();
            thread2.Start();

            thread1.Join();
            thread2.Join();

            Assert.IsTrue(isSuccess1);
            Assert.IsTrue(isSuccess2);
        }
        /*{
            set { NumDays = DateTime.ParseExact(CurrentMonth, "MMMM", System.Globalization.CultureInfo.InvariantCulture).Month; }
        }*/
        public CalendarViewModel()
        {
            cd = new CalendarData();
            Events = new List<EventModel>();
            NewEvent = new EventModel();

            // We shouldn't need this call anymore
            //Events = cd.TestGetEvents(Events);
        }
Пример #17
0
    void _updateEvent_CalendarData(CalendarData cd)
    {
        string[] ss    = cd.Value.Split("-"[0]);
        int      year  = int.Parse(ss[0]);
        int      month = int.Parse(ss[1]);
        int      day   = int.Parse(ss[2]);

        updateEvent(year, month, day);
    }
Пример #18
0
    void refresh()
    {
        _update();
        int          row = selectIndex / 7;
        int          col = selectIndex % 7;
        CalendarData cd  = list_container.FindChild("days").FindChild("row" + row).FindChild("col" + col).GetComponent <CalendarData>();

        _updateEvent_CalendarData(cd);
    }
Пример #19
0
        public CalendarData updateDetailedCalendar(string id, string st, string et, string sub, string ade, string dscr, string loc, string color, string timezone, string customerID)
        {
            CalendarData objCalData = new CalendarData();

            objCalData.events = new List <ArrayList>();

            try
            {
                using (SqlConnection conn = new SqlConnection(connDietDB))
                {
                    using (SqlCommand cmd = new SqlCommand())
                    {
                        if (conn.State == ConnectionState.Closed)
                        {
                            conn.Open();
                        }

                        cmd.Connection  = conn;
                        cmd.CommandText = "update  dbo.jqcalendar set Subject=@Subject,StartTime=@StartTime,EndTime=@EndTime,IsAllDayEvent=@IsAllDayEvent,Location=@Location,Description=@Description,Color=@Color,CustID=@CustID where Id=@Id";
                        cmd.Parameters.Add("@Subject", SqlDbType.NVarChar).Value       = sub;
                        cmd.Parameters.Add("@StartTime", SqlDbType.DateTime).Value     = (st != null) ? Convert.ToDateTime(st) : DateTime.UtcNow.AddHours(5.5);
                        cmd.Parameters.Add("@EndTime", SqlDbType.DateTime).Value       = (et != null) ? Convert.ToDateTime(et) : DateTime.UtcNow.AddHours(5.5);
                        cmd.Parameters.Add("@IsAllDayEvent", SqlDbType.SmallInt).Value = Convert.ToInt16(ade);

                        cmd.Parameters.Add("@Location", SqlDbType.NVarChar).Value    = loc;
                        cmd.Parameters.Add("@Description", SqlDbType.NVarChar).Value = dscr;
                        cmd.Parameters.Add("@Color", SqlDbType.SmallInt).Value       = Convert.ToInt16(color);

                        cmd.Parameters.Add("@CustID", SqlDbType.BigInt).Value = Convert.ToInt64(customerID);

                        cmd.Parameters.Add("@Id", SqlDbType.Int).Value = Convert.ToInt16(id);

                        objCalData.Data = cmd.ExecuteNonQuery().ToString();

                        if (conn.State == ConnectionState.Open)
                        {
                            conn.Close();
                        }
                    }
                }

                objCalData.IsSuccess = true;
                objCalData.Msg       = "update success";
                objCalData.error     = null;
            }
            catch (Exception ex)
            {
                objCalData.IsSuccess = false;
                objCalData.Msg       = "update failed";
                objCalData.Data      = "";
                objCalData.error     = ex.Message;
            }

            return(objCalData);
        }
Пример #20
0
        private SizeF GetCompleteSize(CalendarData calendarData)
        {
            if (_completeSize == null)
            {
                CalendarContentRange content = new CalendarContentRange(_calendar, calendarData.GetFirstMonth(), calendarData.GetLastMonth());
                LayoutResult         result  = MeasureContentRange(content, calendarData, new SizeF(float.MaxValue, float.MaxValue));
                _completeSize = result.ActualSize;
            }

            return(_completeSize.Value);
        }
Пример #21
0
        public async Task <CalendarData> GetMonthDays(int year, int month)
        {
            //Set if is necessary set the day for weather information
            bool weatherInfoNeeded = DateTime.Now.Month == month && DateTime.Now.Year == year;

            DateTime firstMonthDay = new DateTime(year, month, 1);
            int      lastMonthDay  = DateTime.DaysInMonth(year, month);

            CalendarData data = new CalendarData()
            {
                Weeks = new List <Week>()
            };
            int weekDay = (int)firstMonthDay.DayOfWeek == 0 ? 7 : (int)firstMonthDay.DayOfWeek;

            Week week = new Week()
            {
                Days = new Day[7]
            };

            for (int i = 1; i <= lastMonthDay; i++)
            {
                if (weekDay > 7)
                {
                    weekDay = 1;
                    data.Weeks.Add(week);
                    week = new Week()
                    {
                        Days = new Day[7]
                    };
                }

                week.Days[weekDay - 1] = new Day()
                {
                    WeekDay = i
                };

                if (i == DateTime.Now.Day && weatherInfoNeeded)
                {
                    data.ActualDayWeek         = data.Weeks.Count;
                    data.ActualDayWeekPosition = weekDay - 1;
                }

                weekDay++;
            }
            //Add last week
            data.Weeks.Add(week);

            if (weatherInfoNeeded)
            {
                data = await _openWeatherService.GetWeather(data);
            }

            return(data);
        }
Пример #22
0
    public CalendarData GetCalData()
    {
        WebOperationContext.Current.OutgoingResponse.Headers.Add("Access-Control-Allow-Origin", "*");

        List <Event> _events = new List <Event>()
        {
            new Event()
            {
                Id                    = 1,
                Subject               = "Test",
                StartDate             = JSDateTime.ToStr(DateTime.UtcNow.AddHours(5.5).Date),
                EndDate               = JSDateTime.ToStr(DateTime.UtcNow.AddHours(5.5).Date.AddHours(11)),
                IsAllDayEvent         = 1,
                IsEditable            = 1,
                IsMoreThanOneDayEvent = 0,
                Attendents            = "",
                Location              = "Noida",
                RecurringEvent        = 0,
                Color                 = 2
            },

            new Event()
            {
                Id                    = 2,
                Subject               = "More Test",
                StartDate             = JSDateTime.ToStr(DateTime.UtcNow.AddHours(5.5).Date.AddDays(1)),
                EndDate               = JSDateTime.ToStr(DateTime.UtcNow.AddHours(5.5).Date.AddHours(45)),
                IsAllDayEvent         = 1,
                IsEditable            = 1,
                IsMoreThanOneDayEvent = 0,
                Attendents            = "",
                Location              = "Delhi",
                RecurringEvent        = 0,
                Color                 = 4
            }
        };


        CalendarData objCalData = new CalendarData();

        objCalData.events = new List <ArrayList>();

        foreach (var item in _events)
        {
            objCalData.events.Add(ConvertToArrayList <Event>(item));
        }

        objCalData.issort = true;
        objCalData.start  = JSDateTime.ToStr(new DateTime(2013, 7, 1));
        objCalData.end    = JSDateTime.ToStr(new DateTime(2013, 7, 31));
        objCalData.error  = null;
        return(objCalData);
    }
        public async Task <CalendarData> GetWeather(CalendarData calendarData)
        {
            List <string> weatherData = await Get();

            if (weatherData.Count == 0)
            {
                return(calendarData);
            }

            calendarData = FillWeatherInfo(calendarData, weatherData);

            return(calendarData);
        }
Пример #24
0
        /// <summary>
        /// Collects the day info objects to produce rendering in one pass after sorting.
        /// </summary>
        private List <DayInfo> CollectDays(MonthInfo month, SizeF dayCellSize, ref float topOffset)
        {
            List <DayInfo> days = new List <DayInfo>();

            for (int iWeek = 0; iWeek < CalendarData.WeeksInMonth; iWeek++)
            {
                // measure the actual height of the week row
                SizeF weekRowSize = CalendarData.MeasureWeek(month, iWeek, dayCellSize);
                if (weekRowSize.Height < dayCellSize.Height)
                {
                    weekRowSize.Height = dayCellSize.Height;
                }
                // measure the day header
                SizeF dayHeaderSize = CalendarData.GetDayHeaderSize(dayCellSize);

                for (int iDay = 0; iDay < CalendarData.DaysInWeek; iDay++)
                {
                    // get the date of day to draw
                    DateTime dayDate = month.GetDateOfDay(iWeek, CalendarData.WeekDays[iDay], CalendarData.FirstDayOfWeek);

                    DayInfo day = new DayInfo(dayDate);
                    day.DayKind    = month.DetermineDayKindForDate(dayDate);
                    day.Label      = dayDate.Day.ToString(CalendarData.Culture);
                    day.HeaderSize = dayHeaderSize;
                    if (!_rightToLeft)
                    {
                        day.Bounds = new RectangleF(
                            CalendarArea.X + (iDay * dayCellSize.Width),
                            CalendarArea.Y + topOffset,
                            dayCellSize.Width,
                            weekRowSize.Height);
                    }
                    else
                    {
                        day.Bounds = new RectangleF(
                            (CalendarArea.X + CalendarArea.Width) - ((iDay + 1) * dayCellSize.Width),
                            CalendarArea.Y + topOffset,
                            dayCellSize.Width,
                            weekRowSize.Height);
                    }

                    days.Add(day);
                }

                // get offset
                //topOffset += dayHeaderSize.Height;
                topOffset += weekRowSize.Height;
            }

            return(days);
        }
Пример #25
0
        private void readyDataArray()
        {
            int daysInMonth = DateTime.DaysInMonth(procDate.Year, procDate.Month);

            dayArray   = new DateTime[daysInMonth];
            dowArray   = new int[daysInMonth];
            hdayArray  = new int[daysInMonth];
            workHArray = new decimal[dataGridView1.RowCount, daysInMonth];
            overHArray = new decimal[dataGridView1.RowCount, daysInMonth];
            checkArray = new int[dataGridView1.RowCount, daysInMonth];
            CalendarData cap = new CalendarData();

            procDate.BeginOfMonth();
            for (int i = 0; i < daysInMonth; i++)
            {
                dayArray[i]  = procDate.AddDays(i);
                dowArray[i]  = ( int )dayArray[i].DayOfWeek;
                hdayArray[i] = cap.ExitstenceHoliday(dayArray[i]) ? 1 : 0;
            }

            WorkReportData wrp = new WorkReportData();
            CostData       cdp = new CostData();

            for (int i = 0; i < dataGridView1.Rows.Count; i++)
            {
                string wkMCode = Convert.ToString(dataGridView1.Rows[i].Cells["MemberCode"].Value);
                cdp = new CostData();
                cdp = cdp.SelectCostMaster(Convert.ToString(dataGridView1.Rows[i].Cells["MemberCode"].Value), Convert.ToString(comboBoxOffice.SelectedValue), "A");

                decimal[] workHour;
                for (int j = 0; j < dayArray.Length; j++)
                {
                    workHour         = wrp.SelectSummaryWorkReport(Convert.ToString(dataGridView1.Rows[i].Cells["MemberCode"].Value), dayArray[j]);
                    workHArray[i, j] = workHour[0];
                    overHArray[i, j] = workHour[1];
                    checkArray[i, j] = ( int )workHour[2];

                    if (cdp != null && cdp.Unit == "時間")
                    {
                        if (workHour[0] > 0)
                        {
                            workHArray[i, j] = workHour[0] / 8;
                        }
                    }
                }
            }

            curNo = 0;
            displayWorkingData(dataGridView1, curNo);
        }
Пример #26
0
    public CalendarData addCalendar(string st, string et, string sub, string ade)
    {
        CalendarData objCalData = new CalendarData();

        objCalData.events = new List <ArrayList>();

        try
        {
            using (SqlConnection conn = new SqlConnection(connDietDB))
            {
                using (SqlCommand cmd = new SqlCommand())
                {
                    if (conn.State == ConnectionState.Closed)
                    {
                        conn.Open();
                    }

                    cmd.Connection  = conn;
                    cmd.CommandText = "insert into dbo.jqcalendar(Subject,StartTime,EndTime,IsAllDayEvent) output INSERTED.Id values(@Subject,@StartTime,@EndTime,@IsAllDayEvent)";
                    cmd.Parameters.Add("@Subject", SqlDbType.NVarChar).Value       = sub;
                    cmd.Parameters.Add("@StartTime", SqlDbType.DateTime).Value     = (st != null) ? Convert.ToDateTime(st) : DateTime.UtcNow.AddHours(5.5);
                    cmd.Parameters.Add("@EndTime", SqlDbType.DateTime).Value       = (et != null) ? Convert.ToDateTime(et) : DateTime.UtcNow.AddHours(5.5);
                    cmd.Parameters.Add("@IsAllDayEvent", SqlDbType.SmallInt).Value = Convert.ToInt16(ade);

                    objCalData.Data = cmd.ExecuteScalar().ToString();

                    if (conn.State == ConnectionState.Open)
                    {
                        conn.Close();
                    }
                }
            }

            objCalData.IsSuccess = true;
            objCalData.Msg       = "add success";
            objCalData.error     = null;
        }
        catch (Exception ex)
        {
            objCalData.IsSuccess = false;
            objCalData.Msg       = "add failed";
            objCalData.Data      = "";
            objCalData.error     = ex.Message;
        }



        return(objCalData);
    }
Пример #27
0
        public CalendarData GetCalData()
        {
            WebOperationContext.Current.OutgoingResponse.Headers.Add("Access-Control-Allow-Origin", "*");
            List <Event> list2 = new List <Event>();
            Event        item  = new Event {
                Id                    = 1,
                Subject               = "Test",
                StartDate             = JSDateTime.ToStr(DateTime.Now.Date),
                EndDate               = JSDateTime.ToStr(DateTime.Now.Date.AddHours(11.0)),
                IsAllDayEvent         = 1,
                IsEditable            = 0,
                IsMoreThanOneDayEvent = 0,
                Attendents            = "",
                Location              = "Noida",
                RecurringEvent        = 0,
                Color                 = 2
            };

            list2.Add(item);
            Event event4 = new Event {
                Id                    = 2,
                Subject               = "More Test",
                StartDate             = JSDateTime.ToStr(DateTime.Now.Date.AddDays(1.0)),
                EndDate               = JSDateTime.ToStr(DateTime.Now.Date.AddHours(45.0)),
                IsAllDayEvent         = 1,
                IsEditable            = 0,
                IsMoreThanOneDayEvent = 0,
                Attendents            = "",
                Location              = "Delhi",
                RecurringEvent        = 0,
                Color                 = 4
            };

            list2.Add(event4);
            List <Event> list = list2;
            CalendarData data = new CalendarData {
                events = new List <ArrayList>()
            };

            foreach (Event event2 in list)
            {
                data.events.Add(this.ConvertToArrayList <Event>(event2));
            }
            data.issort = true;
            data.start  = JSDateTime.ToStr(new DateTime(0x7dd, 7, 1));
            data.end    = JSDateTime.ToStr(new DateTime(0x7dd, 7, 0x1f));
            data.error  = null;
            return(data);
        }
Пример #28
0
    public CalendarData updateCalendar(string id, string st, string et)
    {
        CalendarData objCalData = new CalendarData();

        objCalData.events = new List <ArrayList>();

        try
        {
            using (SqlConnection conn = new SqlConnection(connDietDB))
            {
                using (SqlCommand cmd = new SqlCommand())
                {
                    if (conn.State == ConnectionState.Closed)
                    {
                        conn.Open();
                    }

                    cmd.Connection  = conn;
                    cmd.CommandText = "update  dbo.jqcalendar set StartTime=@StartTime,EndTime=@EndTime where Id=@Id";

                    cmd.Parameters.Add("@StartTime", SqlDbType.DateTime).Value = (st != null) ? Convert.ToDateTime(st) : DateTime.UtcNow.AddHours(5.5);
                    cmd.Parameters.Add("@EndTime", SqlDbType.DateTime).Value   = (et != null) ? Convert.ToDateTime(et) : DateTime.UtcNow.AddHours(5.5);


                    cmd.Parameters.Add("@Id", SqlDbType.Int).Value = Convert.ToInt16(id);

                    objCalData.Data = cmd.ExecuteNonQuery().ToString();

                    if (conn.State == ConnectionState.Open)
                    {
                        conn.Close();
                    }
                }
            }

            objCalData.IsSuccess = true;
            objCalData.Msg       = "update success";
            objCalData.error     = null;
        }
        catch (Exception ex)
        {
            objCalData.IsSuccess = false;
            objCalData.Msg       = "update failed";
            objCalData.Data      = "";
            objCalData.error     = ex.Message;
        }

        return(objCalData);
    }
Пример #29
0
        /// <summary>
        /// Draws all weeks of the specified month.
        /// </summary>
        private void DrawWeeks(MonthInfo month, ref float topOffset)
        {
            SizeF weekRowSize = CalendarData.GetDefaultWeekRowSize(MonthAreaSize);
            SizeF dayCellSize = CalendarData.GetDayCellSize(weekRowSize);

            // do the first pass to collect day info objects
            List <DayInfo> days = CollectDays(month, dayCellSize, ref topOffset);

            // sort the days according to its day kind
            days.Sort(new DayInfo.Comparer());
            // render sorted days
            RenderDays(days);
            // render appointments on the top
            RenderAppointments(month, days, dayCellSize);
        }
Пример #30
0
        public void AppointmentOrdering()
        {
            PageDocument report = TestHelper.GetReport("Calendar-AppointmentWrapping.rdlx");

            TestingRenderingExtension renderer = new TestingRenderingExtension();

            report.Render(renderer, null);

            // StartTime(string),EndTime(string),Value(string)
            //2007-12-07,2007-12-09,"Appt#1 Text ..."
            //2007-12-08,2007-12-09,"Appt#2 Text ..."
            //2007-12-09,2007-12-09,"Appt#3 Text ..."
            //2007-12-09,2007-12-11,"Appt#4 Text ..."

            ICalendar calendar = (ICalendar)renderer.GetReportItem("Calendar1");

            Assert.IsNotNull(calendar);
            Assert.AreEqual(4, calendar.Appointments.Count);
            CalendarData calendarData = new CalendarData(calendar);

            Assert.IsNotNull(calendarData);
            MonthInfo month = calendarData.GetFirstMonth();

            Assert.IsNotNull(month);
            Assert.AreEqual(12, month.Month);
            Assert.AreEqual(2007, month.Year);
            ICollection <Appointment> week1Appointments = calendarData.GetAppointmentsInWeek(month, 1);

            Assert.AreEqual(2, week1Appointments.Count);
            ICollection <Appointment> week2Appointments = calendarData.GetAppointmentsInWeek(month, 2);

            Assert.AreEqual(4, week2Appointments.Count);
            // first week : make sure of the ordering of appointments.
            int index = 1;

            foreach (Appointment appointment in week1Appointments)
            {
                Assert.AreEqual(string.Format("Appt#{0} Text ...", index), appointment.Value);
                index++;
            }
            // second week : make sure of the ordering of appointments is the same as prior week.
            index = 1;
            foreach (Appointment appointment in week1Appointments)
            {
                Assert.AreEqual(string.Format("Appt#{0} Text ...", index), appointment.Value);
                index++;
            }
        }
Пример #31
0
        public IActionResult GetHandymen([FromBody] Calendar c)
        {
            Dictionary <string, object> res;

            try
            {
                res = Service.createSuccessRes();
                res.Add("Handymen", CalendarData.GetHandymen(c));
                return(Ok(res));
            }
            catch (System.Exception ex)
            {
                res = Service.createErrorRes(ex.Message);
                return(BadRequest(res));
            }
        }
Пример #32
0
        public void AddEvent()
        {
            CalendarData cd = new CalendarData();
            string[] name = cd.AddEvent(this);

            if (name[0] != null)
            {
                // Add a comment in the news feed for this event
                string firstName = name[0].ToString();
                string lastName = name[1].ToString();

                string comment = firstName + " " + lastName + " added " + Type.ToString() + " " + Title + "!";
                NewsFeedModel nm = new NewsFeedModel(CreatedById, name[0].ToString(), name[1].ToString(), comment);
                NewsFeedData nd = new NewsFeedData();
                nd.AddComment(nm);
            }
        }
 //===============================================================================
 // Constructors and Destructors
 //===============================================================================
 public DataBase()
 {
     users_ = new SortedDictionary<string, string>();
     privileges_ = new SortedDictionary<string, string>();
     weeklyBookings_ = new List<WeeklyBooking>();
     singleBookings_ = new List<SingleBooking>();
     calendarData_ = new CalendarData();
     calendarData_.roomID_ = new List<roomData>();
     LoadUserFile();
     LoadPrivilegeFile();
     LoadRoomFile();
     LoadBookingsFile();
 }
Пример #34
0
        public bool AddAppointment(bool isChecked,bool isUpdate, string roomId, string userId, string name, string roomSize, string url, string path, string JsdateTime, string Jsmin, bool jsHandle)
        {
            
            DateTime date = DateTime.Parse(JsdateTime);
            int endtime = int.Parse(Jsmin);
            DateTime end = date.AddMinutes(endtime);
            if (int.Parse(roomSize) > 50)
            {
                return false;
            }
            if (!isUpdate)
            {
                using (AdobeConnectDB _db = new AdobeConnectDB())
                {
                    Appointment appointment = new Appointment();
                    CalendarData callendarData = new CalendarData();
                    appointment.userId = userId;
                    appointment.title = name;
                    appointment.roomSize = int.Parse(roomSize);
                    appointment.url = path;
                    appointment.adobeUrl = url;
                    appointment.start = date;
                    appointment.end = end;
                    if (isChecked)
                    {
                        _db.Appointments.Add(appointment);
                        _db.SaveChanges();
                        Clients.All.addEvent(appointment, isChecked,isUpdate,jsHandle);
                        return true;
                    }
                    else
                    {
                        Clients.Caller.addEvent(appointment, isChecked,isUpdate,jsHandle);
                        return false;
                    }
                }
            }
            else
            {
                int Id = int.Parse(roomId);
                using (AdobeConnectDB _db = new AdobeConnectDB())
                {
                    var query = (from appointmnet in _db.Appointments where appointmnet.id == Id select appointmnet).Single();
                    query.start = date;
                    query.roomSize = int.Parse(roomSize);
                    query.title = name;
                    query.adobeUrl = url;
                    query.url = path;
                    query.start = date;
                    query.end = end;
                    if (isChecked)
                    {
                        _db.SaveChanges();
                        Clients.All.addEvent(query, isChecked, true,jsHandle);
                        return true;
                    }
                    else
                    {
                        Clients.Caller.addEvent(query, isChecked,isUpdate,jsHandle);
                        return false;
                    }
                }
            }

        }
Пример #35
0
        public CalendarData ConstructObject(Appointment appointment, string id, string jsDate)
        {
            Clients.Caller.date(jsDate);
            DateTime Date = DateTime.Parse(jsDate);
            CalendarData callendarData = new CalendarData();
            callendarData.id = appointment.id;
            callendarData.userId = appointment.userId;
            callendarData.title = appointment.title;
            callendarData.url = appointment.url;
            callendarData.color = "#c4afb9";
            callendarData.adobeUrl = appointment.adobeUrl;
            callendarData.roomSize = appointment.roomSize;
            callendarData.start = appointment.start;
            callendarData.end = appointment.end;
            callendarData.editable = true;
            callendarData.open = true;
            callendarData.archived = false;
            callendarData.isRep = appointment.isRep;
            callendarData.repititionId = appointment.repititionId;
            callendarData.endRepDate = appointment.endRepDate;
            callendarData.repititionType = appointment.repititionType;

            if (!checkHost(id,callendarData.title))
            {
                callendarData.color = "#d3bf96";
                callendarData.url = "";
                callendarData.editable = false;
            }

            if (checkHost(id, callendarData.title))
            {
                if (Date < callendarData.start)
                {
                    callendarData.color = "#bac7c3";
                    callendarData.open = false;
                    callendarData.url = "";
                }

            }

            if (Date > callendarData.end)
            {
                callendarData.color = "gray";
                callendarData.open = false;
                callendarData.url = "";
                callendarData.editable = false;
                callendarData.archived = true;
            }
            return callendarData;
        }
Пример #36
0
 // Code to execute when the application is launching (eg, from Start)
 // This code will not execute when the application is reactivated
 private void Application_Launching(object sender, LaunchingEventArgs e)
 {
     _calendardata = new CalendarData();
     var store = IsolatedStorageFile.GetUserStoreForApplication();
     if (store.FileExists("PersistedFile.xml"))
     {
         IsolatedStorageFileStream stream = store.OpenFile("PersistedFile.xml", System.IO.FileMode.OpenOrCreate);
         DataContractSerializer ser = new DataContractSerializer(typeof(PersistedData));
         _firstTimeLaunch = false;
         PersistedData data;
         data = ser.ReadObject(stream) as PersistedData;
         DateTime persistedDate = data.PersistenceDate;
         DateTime storedDate = new DateTime(data.Year, data.Month, data.Day);
         // If the last time we persisted was within a day we use the persisted date. Otherwise use the current date
         if ((persistedDate.Day == _currentDate.Day) && (persistedDate.Month == _currentDate.Month) && (persistedDate.Year == _currentDate.Year))
         {
             _currentDate = storedDate;
         }
         _calendardata.UseLocation = data.UseLocation;
         _calendardata.UpdateCityToken(data.CityToken, data.CityName, data.TimeZoneValue);
     }
     else
     {
         _firstTimeLaunch = true;
     }
     _calendardata.GetCalendarData(true);
 }
Пример #37
0
        /// <summary>
        /// Overloaded function of AddAppointment
        /// </summary>
        /// <param name="isChecked"></param>
        /// <param name="isUpdate"></param>
        /// <param name="roomId"></param>
        /// <param name="userId"></param>
        /// <param name="name"></param>
        /// <param name="roomSize"></param>
        /// <param name="url"></param>
        /// <param name="path"></param>
        /// <param name="JsdateTime"></param>
        /// <param name="Jsmin"></param>
        /// <param name="jsHandle"></param>
        /// <param name="isMultiple"></param>
        /// <param name="repId"></param>
        /// <param name="JSendRepDate"></param>
        /// <param name="repType"></param>
        /// <param name="changeAll"></param>
        /// <returns></returns>
        public bool AddAppointment(bool isChecked, bool isUpdate, string roomId, string userId, string name, string roomSize, string url, string path, string JsdateTime, string Jsmin, bool jsHandle, bool isMultiple, string repId, string JSendRepDate, string repType, bool changeAll)
        {

            DateTime date = DateTime.Parse(JsdateTime);
            int endtime = int.Parse(Jsmin);
            DateTime end = date.AddMinutes(endtime);
            DateTime endRepTime;
            //if there is no end rep time
            if (JSendRepDate == "")
            {
                endRepTime = end;
            }
            else
            {
                endRepTime = DateTime.Parse(JSendRepDate);
            }
            if (int.Parse(roomSize) > 50)
            {
                return false;
            }
            using (AdobeConnectDB _db = new AdobeConnectDB())
            {
                if (!isUpdate)
                {
                    Appointment appointment = new Appointment();
                    CalendarData callendarData = new CalendarData();
                    if (isMultiple)
                    {
                        appointment.userId = userId;
                        appointment.title = name;
                        appointment.roomSize = int.Parse(roomSize);
                        appointment.url = path;
                        appointment.adobeUrl = url;
                        appointment.start = date;
                        appointment.end = end;
                        appointment.endRepDate = endRepTime;
                        appointment.repititionId = repId;
                        appointment.isRep = isMultiple;
                        appointment.repititionType = repType;
                        
                    }
                    else
                    {
                        appointment.userId = userId;
                        appointment.title = name;
                        appointment.roomSize = int.Parse(roomSize);
                        appointment.url = path;
                        appointment.adobeUrl = url;
                        appointment.start = date;
                        appointment.end = end;
                        appointment.endRepDate = date;
                        appointment.repititionId = null;
                        appointment.isRep = isMultiple;
                        appointment.repititionType = repType;
                    }
                    if (isChecked)
                    {
                        _db.Appointments.Add(appointment);
                        _db.SaveChanges();
                        Clients.All.addEvent(appointment, isChecked, isUpdate, jsHandle);
                        return true;
                    }
                    else
                    {
                        Clients.Caller.addEvent(appointment, isChecked, isUpdate, jsHandle);
                        return false;
                    }

                }
                //if it is indeed an update
                else
                {

                    int Id = int.Parse(roomId);
                    List<Appointment> query = new List<Appointment>();

                    //if it is not an update to a series of events
                    if (!changeAll)
                    {
                        query = (from appointmnet in _db.Appointments where appointmnet.id == Id select appointmnet).ToList();
                        foreach (Appointment res in query)
                        {
                            res.start = date;
                            res.roomSize = int.Parse(roomSize);
                            res.title = name;
                            res.adobeUrl = url;
                            res.url = path;
                            res.start = date;
                            res.end = end;
                            res.endRepDate = endRepTime;
                        }
                    }
                    //if it is an update to a series of events
                    else
                    {
                        Appointment first = new Appointment();
                        first = (from appointmnet in _db.Appointments where appointmnet.id == Id select appointmnet).Single();
                        string repititionId = first.repititionId;
                        query = (from appointmnet in _db.Appointments where appointmnet.repititionType == repititionId select appointmnet).ToList();
                        foreach (Appointment res in query)
                        {
                            res.start = date;
                            res.roomSize = int.Parse(roomSize);
                            res.title = name;
                            res.adobeUrl = url;
                            res.url = path;
                            res.start = date;
                            res.end = end;
                            res.endRepDate = endRepTime;
                        }
                    }

                    if (isChecked)
                    {
                        _db.SaveChanges();
                        foreach (Appointment res in query)
                        {
                            Clients.All.addEvent(res, isChecked, true, jsHandle);
                        }

                        return true;
                    }
                    else
                    {
                        foreach (Appointment res in query)
                        {
                            Clients.Caller.addEvent(res, isChecked, isUpdate, jsHandle);
                        }
                        return false;
                    }
                }
            }

        }