Esempio n. 1
0
    protected void gvAdvisorSchedule_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            LinkButton _singleClickButton = (LinkButton)e.Row.Cells[0].Controls[0];
            string     _jsSingle          = ClientScript.GetPostBackClientHyperlink(_singleClickButton, "");

            if (Page.Validators.Count > 0)
            {
                _jsSingle = _jsSingle.Insert(11, "if(Page_ClientValidate())");
            }

            for (int columnIndex = _FirstEditCellIndex; columnIndex < e.Row.Cells.Count; columnIndex++)
            {
                string js = _jsSingle.Insert(_jsSingle.Length - 2, columnIndex.ToString());
                e.Row.Cells[columnIndex].Attributes["onclick"] = js;
                e.Row.Cells[columnIndex].Attributes["style"]  += "cursor:pointer;cursor:hand;";

                string DayAvailable = (string)DataBinder.Eval(e.Row.DataItem, "Day");
                if (!(String.IsNullOrEmpty(DayAvailable.Trim())))
                {
                    e.Row.BackColor          = System.Drawing.Color.Gray;
                    e.Row.Cells[1].Text      = DayAvailable;
                    e.Row.Cells[1].BackColor = System.Drawing.Color.White;
                    double    MinutesPerSlot = 30;
                    DataRow[] AvailableDays  = AdvisorWeekSchedulesData.Select("Day='" + DayAvailable + "'");

                    if (AvailableDays != null)
                    {
                        DateTime StartTime,
                                 EndTime,
                                 CurrentTime;
                        int TimeSlotTableIndex = 0;

                        foreach (DataRow days in AvailableDays)
                        {
                            StartTime   = Convert.ToDateTime(days["StartTime"].ToString());
                            EndTime     = Convert.ToDateTime(days["EndTime"].ToString()).AddMinutes(-MinutesPerSlot);
                            CurrentTime = StartTime;
                            while (CurrentTime <= EndTime)
                            {
                                TimeSlotTableIndex = SlotsInDay.IndexOf(CurrentTime.ToShortTimeString());

                                if (TimeSlotTableIndex != -1)
                                {
                                    e.Row.Cells[TimeSlotTableIndex + 2].BackColor = System.Drawing.Color.Green;
                                }
                                else
                                {
                                    e.Row.Cells[TimeSlotTableIndex + 2].BackColor = System.Drawing.Color.Gray;
                                }

                                CurrentTime = CurrentTime.AddMinutes(MinutesPerSlot);
                            }
                        }
                    }
                }
            }
        }
    }
Esempio n. 2
0
    private DataTable GetDailyAdvisorSchedule(string Day)
    {
        DataTable dtDaySchedule = null;

        try
        {
            dtDaySchedule = AdvisorWeekSchedulesData.Select("Day='" + Day + "' AND IsDeleted=0").CopyToDataTable();
        }
        catch (Exception)
        {
            dtDaySchedule = null;
        }

        return(dtDaySchedule);
    }
Esempio n. 3
0
    protected void btnSaveSchedule_Click(object sender, EventArgs e)
    {
        try
        {
            string AdvisorScheduleID = lbAdvisorScheduleID.Text;
            string StartTime         = ddlStartTime.Text;
            string EndTime           = ddlEndTime.Text;

            if (Convert.ToInt32(this.lbAdvisorScheduleID.Text) != -1)
            {
                DataRow[] dtSampleData = AdvisorWeekSchedulesData.Select("AdvisorScheduleID='" + AdvisorScheduleID + "'");
                dtSampleData[0]["Day"]       = this.lblDayName.Text;
                dtSampleData[0]["StartTime"] = Convert.ToDateTime(StartTime).ToString("H:mm:ss");
                dtSampleData[0]["EndTime"]   = Convert.ToDateTime(EndTime).ToString("H:mm:ss");
                dtSampleData[0]["IsDeleted"] = false;
                dtSampleData[0]["IsNew"]     = false;
                dtSampleData[0]["IsAltered"] = true;
                AdvisorWeekSchedulesData.AcceptChanges();
            }
            else
            {
                DataRow newAdvisorSchedule = AdvisorWeekSchedulesData.NewRow();
                newAdvisorSchedule["Day"]               = this.lblDayName.Text;
                newAdvisorSchedule["StartTime"]         = Convert.ToDateTime(StartTime).ToString("H:mm:ss");
                newAdvisorSchedule["EndTime"]           = Convert.ToDateTime(EndTime).ToString("H:mm:ss");
                newAdvisorSchedule["Week"]              = this.ddlWeek.Text;
                newAdvisorSchedule["Year"]              = this.ddlYear.Text;
                newAdvisorSchedule["AdvisorScheduleID"] = "-1";
                newAdvisorSchedule["IsDeleted"]         = false;
                newAdvisorSchedule["IsNew"]             = true;
                newAdvisorSchedule["IsAltered"]         = false;
                AdvisorWeekSchedulesData.Rows.Add(newAdvisorSchedule);
            }

            mpeScheduleMaintenance.Hide();
            gvAdvisorSetSchedule.DataSource = DaysWithSlots;
            gvAdvisorSetSchedule.DataBind();

            ClientScript.RegisterStartupScript(GetType(), "Message", "<SCRIPT LANGUAGE='javascript'>alert('Time Slots added Successfully');</script>");
        }
        catch (Exception ex)
        {
            ClientScript.RegisterStartupScript(GetType(), "Message", "<SCRIPT LANGUAGE='javascript'>alert('" + ex.Message.ToString().Replace("'", "") + "');</script>");
        }
    }
Esempio n. 4
0
    protected void btnDeleteSchedule_Click(object sender, EventArgs e)
    {
        try
        {
            ImageButton btnDeleteSchedule = sender as ImageButton;
            GridViewRow row = (GridViewRow)btnDeleteSchedule.NamingContainer;
            gvUniqueID = row.UniqueID;

            GridViewRow gvMasterRow       = (GridViewRow)row.Parent.Parent.Parent.Parent;
            string      DaySelected       = ((Label)(gvAdvisorSetSchedule.Rows[gvMasterRow.RowIndex].FindControl("lblDay"))).Text;
            Int32       AdvisorScheduleID = Convert.ToInt32(((Label)row.FindControl("lblAdvisorScheduleID")).Text);

            DataTable AdvisorScheduleTable = AdvisorWeekSchedulesData;

            foreach (DataRow drSchudule in AdvisorScheduleTable.Rows)
            {
                if (((Int32)drSchudule["AdvisorScheduleID"] == AdvisorScheduleID) && (drSchudule["Day"].ToString() == DaySelected))
                {
                    // drSchudule.Delete();
                    drSchudule["IsDeleted"] = true;
                    drSchudule["IsNew"]     = false;
                    drSchudule["IsAltered"] = false;
                    AdvisorWeekSchedulesData.AcceptChanges();
                    break;
                }
            }

            mpeScheduleMaintenance.Hide();
            gvAdvisorSetSchedule.DataSource = DaysWithSlots;
            gvAdvisorSetSchedule.DataBind();

            ClientScript.RegisterStartupScript(GetType(), "Message", "<SCRIPT LANGUAGE='javascript'>alert('Time Slots added Successfully');</script>");
        }
        catch (Exception ex)
        {
            ClientScript.RegisterStartupScript(GetType(), "Message", "<SCRIPT LANGUAGE='javascript'>alert('" + ex.Message.ToString().Replace("'", "") + "');</script>");
        }
    }
Esempio n. 5
0
    protected void btnNewSchedule_Click(object sender, EventArgs e)
    {
        Button      btnNewSchedule = sender as Button;
        GridViewRow row            = (GridViewRow)btnNewSchedule.NamingContainer;

        gvUniqueID = row.UniqueID;

        GridViewRow gvMasterRow = (GridViewRow)row.Parent.Parent;
        string      DaySelected = ((Label)(gvAdvisorSetSchedule.Rows[row.RowIndex].FindControl("lblDay"))).Text;

        double   MinutesPerSlot = 30;
        DateTime CurrentTime;

        DataRow[] AvailableDays = AdvisorWeekSchedulesData.Copy().Select("Day='" + DaySelected + "'");

        List <String> lstAdvisorTimeSlots = new List <string>();

        foreach (DataRow days in AvailableDays)
        {
            DateTime StartTime = Convert.ToDateTime(days["StartTime"].ToString());
            DateTime EndTime   = Convert.ToDateTime(days["EndTime"].ToString()).AddMinutes(-MinutesPerSlot);

            CurrentTime = StartTime;
            while (CurrentTime <= EndTime)
            {
                lstAdvisorTimeSlots.Add(CurrentTime.ToString("hh:mm tt"));
                CurrentTime = CurrentTime.AddMinutes(MinutesPerSlot);
            }
        }

        DateTime DayStartTime = Convert.ToDateTime("8:00 AM");
        DateTime DayEndTime   = Convert.ToDateTime("5:00 PM");

        DayEndTime = DayEndTime.AddMinutes(-MinutesPerSlot);

        CurrentTime = DayStartTime;
        ddlStartTime.Items.Clear();
        ddlEndTime.Items.Clear();

        while (CurrentTime <= DayEndTime)
        {
            if ((lstAdvisorTimeSlots.IndexOf(CurrentTime.ToShortTimeString())) == -1)
            {
                ListItem timeSlot    = new ListItem(CurrentTime.ToString("hh:mm tt"));
                ListItem timeEndSlot = new ListItem(CurrentTime.ToString("hh:mm tt"));

                if (!(ddlStartTime.Items.Contains(timeSlot)))
                {
                    ddlStartTime.Items.Add(timeSlot);
                    ddlEndTime.Items.Add(timeEndSlot);
                }
            }

            CurrentTime = CurrentTime.AddMinutes(MinutesPerSlot);
        }

        this.lbAdvisorScheduleID.Text = "-1";;
        lblDayName.Text   = DaySelected;
        this.lblDate.Text = GetSchedule.DayInWeekDate(DaySelected, Convert.ToInt32(ddlWeek.Text.ToString()), Convert.ToInt32(ddlYear.Text.ToString())).ToString("dd-MMM-yyyy");

        this.btnSave.Visible = (Convert.ToInt32(GetSchedule.WeekNumber(DateTime.Now).ToString()) > Convert.ToInt32(this.ddlWeek.SelectedValue.ToString().Trim())) ? false: true;
        if (this.btnSave.Visible == true)
        {
            this.btnSave.Visible = (DateTime.Now.Year >= Convert.ToInt32(this.ddlYear.SelectedValue.ToString().Trim())) ? true: false;
        }

        mpeScheduleMaintenance.Show(); //show the modal popup extender
    }