コード例 #1
0
 protected void btnSubmit_Click(object sender, EventArgs e)
 {
     if (lblTitle.Text == "Deposit Retrival")
     {
         if (tbxValue.Value == RentalDB.getRentalbyID(Request.QueryString["rentalID"].ToString()).DepositRetrievalCode)
         {
             RentalDB.updateRentStatus(Request.QueryString["rentalID"].ToString(), "Ended & Returned");
             btnRetrivalCode.Visible = false;
             Response.Redirect(Request.RawUrl);
         }
         else
         {
             ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Incorrect Retrival Code!')", true);
         }
     }
     else
     {
         if (tbxValue.Value == RentalDB.getRentalbyID(Request.QueryString["rentalID"].ToString()).PaymentReleaseCode)
         {
             RentalDB.updateRentStatus(Request.QueryString["rentalID"].ToString(), "On-going");
             btnReleaseCode.Visible = false;
             Response.Redirect(Request.RawUrl);
         }
         else
         {
             ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Incorrect Payment Release Code!')", true);
         }
     }
 }
コード例 #2
0
    protected void btnSubmit_Click(object sender, EventArgs e)
    {
        if (tbxMessage.Text.Length > 255)
        {
            ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Your message cannot exceed 255 characters!')", true);
            return;
        }
        Dispute dis = DisputeDB.getDisputeforRental(Request["rentid"].ToString());



        if (dis.Status == "Resolved")
        {
            ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Your page has expired since your disputer has closed the case')", true);
            rptMessages.DataBind();
            setChatControls(false);
            tbxMessage.Text = "";
            return;
        }

        if (tbxMessage.Text != "")
        {
            if (dis.DisputeID == null)
            {
                if (ddlReason.SelectedValue != "")
                {
                    dis             = new Dispute();
                    dis.Reason      = ddlReason.SelectedItem.Value;
                    dis.Date        = DateTime.Now;
                    dis.Rental      = RentalDB.getRentalbyID(Request["rentid"].ToString());
                    dis.Status      = "Pending";
                    dis.SubmittedBy = MemberDB.getMemberbyEmail(Session["user"].ToString());
                    DisputeDB.addDispute(dis);

                    ddlReason.Enabled = false;
                }
                else
                {
                    return;
                }
            }

            dis = DisputeDB.getDisputeforRental(Request["rentid"].ToString());

            MessageDispute msgDis = new MessageDispute();

            msgDis.Date    = DateTime.Now;
            msgDis.Dispute = dis;
            msgDis.Member  = MemberDB.getMemberbyEmail(Session["user"].ToString());
            msgDis.Staff   = new Staff(null, null, null, null, 0, null, new DateTime());

            msgDis.Reply = tbxMessage.Text;
            MessageDisputeDB.addMsgDispute(msgDis);

            tbxMessage.Text = "";

            rptMessages.DataSource = MessageDisputeDB.getMsgforDispute(dis.DisputeID);
            rptMessages.DataBind();
        }
    }
コード例 #3
0
    protected void btnExtend_Click(object sender, EventArgs e)
    {
        Rental rentalInfo = RentalDB.getRentalbyID(Request.QueryString["rentalID"].ToString());

        Session["itemStatus"]    = "On-going";
        Session["itemExtension"] = "ExtendItem";
        Response.Redirect("ItemRental.aspx?rentalID=" + RentalDB.getRentalbyID(Request.QueryString["rentalID"].ToString()).RentalID + "&itemID=" + rentalInfo.Item.ItemID);
    }
コード例 #4
0
    protected void Page_Load(object sender, EventArgs e)
    {
        // check if logged in
        if (Session["user"] == null)
        {
            Session["pageRedirectAfterLogin"] = Request.RawUrl;
            Response.Redirect("Login.aspx"); // not logged in, transfer to login page
            return;
        }

        if (Request.QueryString["rentalID"] == null) // check if rental is selected
        {
            Response.Redirect("RentalHistory.aspx"); // nothing selected go to previous page
            return;
        }

        if (RentalDB.isRentalOfMemberPresent(Request.QueryString["rentalID"].ToString(), MemberDB.getMemberbyEmail(Session["user"].ToString()).MemberID))
        {
            // display rental details
            List <Rental> rentalInfo = new List <Rental>();
            rentalInfo.Add(RentalDB.getRentalbyID(Request.QueryString["rentalID"].ToString()));
            rptItemRentalInfo.DataSource = rentalInfo;
            rptItemRentalInfo.DataBind();

            if (Session["user"].ToString() == rentalInfo[0].Item.Renter.Email)
            {
                if (rentalInfo[0].Status == "Ended")
                {
                    btnRetrivalCode.Visible = true;
                    lblTitle.Text           = "Deposit Retrieval";
                    lblCode.Text            = "Please enter Deposit Retrival Code";
                }

                if (rentalInfo[0].Status == "Ended & Returned")
                {
                    btnDispute.Visible = true;
                }
            }
            else
            {
                if (rentalInfo[0].Status == "Scheduled" && DateTime.Today == rentalInfo[0].StartDate)
                {
                    btnReleaseCode.Visible = true;
                    lblTitle.Text          = "Payment Release Code";
                    lblCode.Text           = "Please enter Payment Release Code";
                }

                if (rentalInfo[0].Status == "On-going")
                {
                    btnExtend.Visible = true;
                }
            }
        }
        else
        {
            ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Inaccessible Page!')", true);
        }
    }
コード例 #5
0
    // method to read the column values in the database (through the referenced reader) and assign it to the correct properties of the referenced Dispute object
    // allows for easier editing of column names if needed, used only for methods with select statments regarding Dispute
    public static void readADispute(ref Dispute dis, ref SqlDataReader reader)
    {
        dis.DisputeID = reader["disputeID"].ToString();
        dis.Date      = Convert.ToDateTime(reader["date"]);
        dis.Reason    = reader["reason"].ToString();
        dis.Status    = reader["status"].ToString();

        dis.SubmittedBy = MemberDB.getMemberbyID(reader["submittedBy"].ToString());

        dis.Rental = RentalDB.getRentalbyID(reader["rentalID"].ToString());
    }
コード例 #6
0
 // method to read the column values in the database (through the referenced reader) and assign it to the correct properties of the referenced Extension object
 // allows for easier editing of column names if needed, used only for methods with select statments regarding Extension
 private static void readAnExtension(ref Extension extent, ref SqlDataReader reader)
 {
     extent.ExtensionID       = reader["extentionID"].ToString();
     extent.NewReturnLocation = reader["newReturnLocation"].ToString();
     extent.NewReturnTime     = Convert.ToDateTime(reader["newReturnTime"]);
     extent.NewEndDate        = Convert.ToDateTime(reader["newEndDate"]);
     extent.Unit               = Convert.ToString(reader["unit"]);
     extent.Status             = Convert.ToString(reader["status"]);
     extent.ExtensionRentalFee = Convert.ToDecimal(reader["extensionRentalFee"]);
     extent.Payment            = PaymentDB.getPaymentbyID(reader["paymentID"].ToString());
     extent.Rental             = RentalDB.getRentalbyID(reader["rentalID"].ToString());
 }
コード例 #7
0
    public string isRenteeOrRenter(string renteeID, string rentalID)
    {
        Member member = MemberDB.getMemberbyID(renteeID);

        if (member.Email == Convert.ToString(Session["user"]))
        {
            return("Renter:  " + MemberDB.getMemberbyID(ItemDB.getItembyID(RentalDB.getRentalbyID(rentalID).Item.ItemID).Renter.MemberID).Name);
        }
        else
        {
            return("Rentee:  " + RentalDB.getRenteeforRental(rentalID).Name);
        }
    }
コード例 #8
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["user"] == null)
        {
            Session["pageRedirectAfterLogin"] = Request.RawUrl;
            Response.Redirect("Login.aspx");
            return;
        }

        if (Request.QueryString["rentalID"] == null)
        {
            Response.Redirect("RentalHistory.aspx");
            return;
        }

        List <Rental> rentalInfo = new List <Rental>();

        rentalInfo.Add(RentalDB.getRentalbyID(Request.QueryString["rentalID"].ToString()));
        rptItemRentalInfo.DataSource = rentalInfo;
        rptItemRentalInfo.DataBind();

        if (Session["user"].ToString() == rentalInfo[0].Item.Renter.Email)
        {
            if (rentalInfo[0].Status == "Ended")
            {
                btnRetrivalCode.Visible = true;
                lblTitle.Text           = "Deposit Retrival";
                lblCode.Text            = "Please enter Deposit Retrival Code";
            }

            if (rentalInfo[0].Status == "Ended & Returned")
            {
                btnDispute.Visible = true;
            }
        }
        else
        {
            if (rentalInfo[0].Status == "Scheduled" && DateTime.Today == rentalInfo[0].StartDate)
            {
                btnReleaseCode.Visible = true;
                lblTitle.Text          = "Payment Release Code";
                lblCode.Text           = "Please enter Payment Release Code";
            }

            if (rentalInfo[0].Status == "On-going")
            {
                btnExtend.Visible = true;
            }
        }
    }
コード例 #9
0
    public string checkEndDate(string rentalID)
    {
        Extension itemExtension = ExtensionDB.getLastExtensionofRental(rentalID);


        if (itemExtension.ExtensionID == null)
        {
            Rental itemRental = RentalDB.getRentalbyID(rentalID);
            return(itemRental.EndDate.ToString());
        }
        else
        {
            return(itemExtension.NewEndDate.ToString());
        }
    }
コード例 #10
0
    public string checkEndDate(string rentalID)
    {
        Extension itemExtension = ExtensionDB.getLastExtensionofRental(rentalID);
        Rental    itemRental    = RentalDB.getRentalbyID(rentalID);


        if (itemExtension.ExtensionID == null)
        {
            return(String.Format("{0:MM/dd/yy}", itemRental.StartDate) + " - " + String.Format("{0:MM/dd/yy}", itemRental.EndDate));
        }
        else
        {
            return(String.Format("{0:MM/dd/yy}", itemRental.StartDate) + " - " + String.Format("{0:MM/dd/yy}", itemExtension.NewEndDate));
        }
    }
コード例 #11
0
    protected void rptItemRentalInfo_ItemDataBound(object sender, RepeaterItemEventArgs e)
    {
        Rental rentalInfo = RentalDB.getRentalbyID(Request.QueryString["rentalID"].ToString());

        if (e.Item.ItemType == ListItemType.Item)
        {
            Label lblTotalAmount        = (Label)e.Item.FindControl("lblTotalAmount");
            Label lblMeetingLocation    = (Label)e.Item.FindControl("lblMeetingLocation");
            Label lblTotalAmountPayable = (Label)e.Item.FindControl("lblTotalAmountPayable");

            Label lblItemStatus = e.Item.FindControl("lblItemStatus") as Label;
            lblTotalAmount.Text        = rentalInfo.RentalFee.ToString();
            lblTotalAmountPayable.Text = rentalInfo.RentalFee.ToString();
            lblMeetingLocation.Text    = rentalInfo.PickUpLocation;
        }
    }
コード例 #12
0
    // method to read the column values in the database (through the referenced reader) and assign it to the correct properties of the referenced Feedback object
    // allows for easier editing of column names if needed, used only for methods with select statments regarding Feedback
    private static void readAFeedback(ref Feedback feed, ref SqlDataReader reader)
    {
        feed.FeedbackID = reader["feedbackID"].ToString();
        feed.Comments   = reader["comments"].ToString();

        if (reader["replyFeedback"] != DBNull.Value)
        {
            feed.ReplyFeedback = reader["replyFeedback"].ToString();
        }
        else
        {
            feed.ReplyFeedback = null;
        }

        feed.Date        = Convert.ToDateTime(reader["date"]);
        feed.Rating      = reader["rating"].ToString();
        feed.SubmittedBy = MemberDB.getMemberbyID(reader["submittedBy"].ToString());
        feed.FeedbackTo  = MemberDB.getMemberbyID(reader["feedbackTo"].ToString());
        feed.Rental      = RentalDB.getRentalbyID(reader["rentalID"].ToString());
    }
コード例 #13
0
    protected void Page_Load(object sender, EventArgs e)
    {
        // user has selected a rental to be viewed. this page displays information regarding the rental selected

        // checks if user has logged in
        if (Session["admin"] == null) // if user is not logged in, redirect to login page
        {
            Response.Redirect("Login.aspx");
            return;
        }

        // checks if rental is selected
        if (Request.QueryString["rentalID"] == null) // if nothing is selected, redirect back to RentalList page
        {
            Server.Transfer("~/RentalList.aspx");
        }
        else // if rental is selected, display the correct information
        {
            List <Rental> rentalDetails = new List <Rental>();
            rentalDetails.Add(RentalDB.getRentalbyID(Request.QueryString["rentalID"].ToString()));
            repeaterRentalInfo.DataSource = rentalDetails;
            repeaterRentalInfo.DataBind();
        }
    }
コード例 #14
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["user"] == null)
        {
            Session["pageRedirectAfterLogin"] = Request.RawUrl;
            Response.Redirect("Login.aspx");
            return;
        }

        if (Request["rentid"] == null)
        {
            Response.Redirect("RentalHistory.aspx");
            return;
        }



        List <Rental> rentalInfoDetails = new List <Rental>();
        Rental        rentalInfo        = RentalDB.getRentalbyID((Request["rentid"].ToString()));

        rentalInfoDetails.Add(rentalInfo);

        rptInfo.DataSource = rentalInfoDetails;
        rptInfo.DataBind();


        List <Feedback> feedbackInfo = new List <Feedback>();

        feedbackInfo.Add(FeedbackDB.getFeedbackforRental(Request["rentid"].ToString()));

        rptFeedbackInfo.DataSource = feedbackInfo;
        rptFeedbackInfo.DataBind();


        Feedback feed = FeedbackDB.getFeedbackforRental(Request["rentid"].ToString());

        if (feed.FeedbackID != null)
        {
            if (feed.Rating == "Positive")
            {
                rbtnPositive.Checked = true;
            }
            else if (feed.Rating == "Neutral")
            {
                rbtnNeutral.Checked = true;
            }
            else if (feed.Rating == "Negative")
            {
                rbtnNegative.Checked = true;
            }

            if (feed.ReplyFeedback != null)
            {
                txtArea.Visible   = false;
                btnSubmit.Visible = false;
                setFeedbackControls(false);
            }
            else if (feed.Rental.Rentee.Email == Session["user"].ToString())
            {
                txtArea.Visible   = false;
                btnSubmit.Visible = false;
            }
        }
        else
        {
            setFeedbackControls(true);
            btnSubmit.Enabled = true;
        }
    }
コード例 #15
0
    protected void btnSubmit_Click(object sender, EventArgs e)
    {
        //submit feedback for rental selected
        if (txtArea.InnerText == "" || (!rbtnNegative.Checked && !rbtnNeutral.Checked && !rbtnPositive.Checked))
        {
            return;
        }

        if (txtArea.InnerText.Length > 255)
        {
            ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Your message cannot exceed 255 characters!')", true);
            return;
        }

        Feedback feed = FeedbackDB.getFeedbackforRental(Request["rentid"].ToString());

        if (feed.FeedbackID != null)
        {
            if (feed.ReplyFeedback != null || feed.Rental.Rentee.Email == Session["user"].ToString())
            {
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Form resubmission is not allowed')", true);
                setFeedbackControls(true);
                txtArea.Visible   = false;
                btnSubmit.Visible = false;
            }
            else
            {
                feed.ReplyFeedback = txtArea.InnerText;
                FeedbackDB.setReplyforFeedback(feed);

                btnSubmit.Visible = false;
                txtArea.InnerText = "";
                txtArea.Visible   = false;
            }
        }
        else
        {
            feed.Comments = txtArea.InnerText;
            feed.Date     = DateTime.Now;

            if (rbtnPositive.Checked)
            {
                feed.Rating = "Positive";
            }
            else if (rbtnNeutral.Checked)
            {
                feed.Rating = "Neutral";
            }
            else if (rbtnNegative.Checked)
            {
                feed.Rating = "Negative";
            }

            feed.Rental        = RentalDB.getRentalbyID(Request["rentid"].ToString());
            feed.SubmittedBy   = feed.Rental.Rentee;
            feed.FeedbackTo    = feed.Rental.Item.Renter;
            feed.ReplyFeedback = null;

            FeedbackDB.addFeedback(feed);

            txtArea.InnerText = "";
            txtArea.Visible   = false;


            btnSubmit.Visible = false;

            setFeedbackControls(true);
        }

        Response.Redirect(Request.RawUrl);
    }
コード例 #16
0
    protected void btnUpdate_Click(object sender, EventArgs e)
    {
        Item   itemRental = ItemDB.getItembyID(Request.QueryString["itemID"]);
        string inputDates = String.Format("{0}", Request.Form["input-id"]);

        if (inputDates != "")
        {
            DateTime startDate = Convert.ToDateTime(inputDates.Substring(0, 10));
            DateTime endDate   = Convert.ToDateTime(inputDates.Substring(inputDates.Length - 10));

            int numOfDays = Convert.ToInt32((endDate - startDate).TotalDays);

            if (Session["itemExtension"].ToString() == "ExtendItem")
            {
                Extension lastExtension = ExtensionDB.getLastExtensionofRental(Request.QueryString["rentalID"].ToString());
                if (lastExtension.ExtensionID != null)
                {
                    if (startDate.CompareTo(lastExtension.NewEndDate.AddDays(1)) != 0)
                    {
                        ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Extension must start right after your rental period ends')", true);
                        return;
                    }
                }
                else
                {
                    Rental currentRental = RentalDB.getRentalbyID(Request.QueryString["rentalID"].ToString());
                    if (startDate.CompareTo(currentRental.EndDate.AddDays(1)) != 0)
                    {
                        ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Extension must start right after your rental period ends')", true);
                        return;
                    }
                }
            }

            decimal totalDayPrice = 0, totalWeekPrice = 0, totalMonthPrice = 0, amountDue = 0;

            if (itemRental.PricePerMonth != 0)
            {
                totalMonthPrice = (numOfDays / 30) * itemRental.PricePerMonth;

                if (itemRental.PricePerWeek != 0)
                {
                    totalWeekPrice = (numOfDays % 30) / 7 * itemRental.PricePerWeek;
                    if (itemRental.PricePerDay != 0)
                    {
                        totalDayPrice = (numOfDays % 30) % 7 * itemRental.PricePerDay;
                    }
                }
                else
                {
                    totalDayPrice = (numOfDays % 30) * itemRental.PricePerDay;
                }
            }
            else
            {
                if (itemRental.PricePerWeek != 0)
                {
                    totalWeekPrice = numOfDays / 7 * itemRental.PricePerWeek;

                    if (itemRental.PricePerDay != 0)
                    {
                        totalDayPrice = (numOfDays % 7) * itemRental.PricePerDay;
                    }
                }
                else
                {
                    totalDayPrice = (numOfDays * itemRental.PricePerDay);
                }
            }


            amountDue          = totalDayPrice + totalWeekPrice + totalMonthPrice;
            lblRentalRate.Text = amountDue.ToString();

            Rental rental = new Rental();

            Session["rentalPeriod"] = inputDates;
            Session["rentalRate"]   = lblRentalRate.Text;
            try
            {
                rental.PickUpLocation = tbxPickUpLocation.Value;
                rental.PickUpTime     = Convert.ToDateTime(tbxPickUpTime.Value).TimeOfDay;
                rental.ReturnLocation = tbxReturnLocation.Value;
                rental.ReturnTime     = Convert.ToDateTime(tbxReturnTime.Value).TimeOfDay;
                rental.ReturnLocation = tbxReturnLocation.Value;
            }
            catch (Exception E)
            {
                Session["error"] = E.Message;
                return;
            }

            if (Session["itemExtension"].ToString() == "ExtendItem")
            {
                rental.RentalFee           = amountDue;
                lblTotalAmountPayable.Text = rental.RentalFee.ToString();
                Session["rental"]          = rental;
                Response.Redirect("Payment.aspx?itemID=" + Request.QueryString["itemID"] + "&rentalID=" + Request.QueryString["rentalID"].ToString());
            }
            else
            {
                rental.RentalFee           = amountDue + itemRental.Deposit;
                lblTotalAmountPayable.Text = rental.RentalFee.ToString();
                Session["rental"]          = rental;
                Response.Redirect("Payment.aspx?itemID=" + Request.QueryString["itemID"]);
            }
        }
        else
        {
            pnlMessageOutput.Visible = true;
            lblOutput.Text           = "Please select the dates";
        }
    }
コード例 #17
0
    protected void Page_Load(object sender, EventArgs e)
    {
        List <Item> itemInfo = new List <Item>();

        // check if logged in
        if (Session["user"] == null) // not logged in
        {
            Session["pageRedirectAfterLogin"] = Request.RawUrl;
            Response.Redirect("Login.aspx"); // transfer to  login page
            return;
        }

        // check if user wants to extend
        if (Session["itemExtension"].ToString() == "ExtendItem")
        {
            if (RentalDB.isRentalOfMemberPresent(Request.QueryString["rentalID"].ToString(), MemberDB.getMemberbyEmail(Session["user"].ToString()).MemberID))
            {
                Rental rentalInfo = RentalDB.getRentalbyID(Request.QueryString["rentalID"].ToString());
                tbxPickUpLocation.Value = rentalInfo.PickUpLocation;
                tbxPickUpTime.Value     = rentalInfo.PickUpTime.ToString();
                tbxReturnLocation.Value = rentalInfo.ReturnLocation;
                tbxReturnTime.Value     = rentalInfo.ReturnTime.ToString();


                tbxPickUpLocation.Disabled = true;
                tbxPickUpTime.Disabled     = true;
                tbxReturnLocation.Disabled = true;
                tbxReturnTime.Disabled     = true;
                itemInfo.Add(ItemDB.getItembyID(RentalDB.getRentalbyID(Request.QueryString["rentalID"].ToString()).Item.ItemID));
            }
            else
            {
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Inaccessible Page!')", true);
                Response.Redirect("RentalHistory.aspx");
            }
        }
        else if (Request.QueryString["itemID"] == null)
        {
            Response.Redirect("Categories.aspx");
            return;
        }
        else
        {
            lblDepositAmount.Text = ItemDB.getItembyID(Request.QueryString["itemID"]).Deposit.ToString();
            itemInfo.Add(ItemDB.getItembyID(Request.QueryString["itemID"]));
        }

        rptItemRentalInfo.DataSource = itemInfo;
        rptItemRentalInfo.DataBind();
        var selectedDates = new List <DateTime?>();


        List <Rental> currentRental = RentalDB.getRentalofItem(Request.QueryString["itemID"], "On-going");

        if (currentRental.Count > 0)
        {
            foreach (Rental rental in currentRental)
            {
                for (var date = rental.StartDate; date <= rental.EndDate; date = date.AddDays(1))
                {
                    selectedDates.Add(date);
                }
            }
        }

        List <Rental> scheduledRental = RentalDB.getRentalofItem(Request.QueryString["itemID"], "Scheduled");

        if (scheduledRental.Count > 0)
        {
            foreach (Rental rental in scheduledRental)
            {
                for (var date = rental.StartDate; date <= rental.EndDate; date = date.AddDays(1))
                {
                    selectedDates.Add(date);
                }
            }
        }

        Extension itemExtension = ExtensionDB.getLastExtensionofItem(Request.QueryString["itemID"], "On-going");

        if (itemExtension.ExtensionID != null)
        {
            for (var date = currentRental[0].StartDate; date <= itemExtension.NewEndDate; date = date.AddDays(1))
            {
                selectedDates.Add(date);
            }
        }


        for (int i = 0; i < selectedDates.Count(); i++)
        {
            string temp = selectedDates[i].ToString();
            temp = temp.Substring(0, temp.IndexOf(" "));
            //temp = temp.Replace(" 12:00:00 AM", "");
            DateTime dt    = new DateTime();
            int      temp2 = temp.IndexOf("/");

            // Make sure that the day is single digit
            if (temp2 == 1)
            {
                dt = DateTime.ParseExact(temp, "d/M/yyyy", CultureInfo.InvariantCulture);
            }
            else
            {
                dt = DateTime.ParseExact(temp, "dd/M/yyyy", CultureInfo.InvariantCulture);
            }

            disabledDate = disabledDate + "'" + dt.ToString("yyyy-MM-dd") + "'" + ", ";
        }

        ClientScript.RegisterStartupScript(GetType(),
                                           "datePickerInit", "var datepicker = new HotelDatepicker(document.getElementById('input-id'), { disabledDates: [ " + disabledDate + "   ]   });",
                                           true);
    }
コード例 #18
0
    protected void Page_Load(object sender, EventArgs e)
    {
        // check if user logged in
        if (Session["user"] == null)
        {
            Session["pageRedirectAfterLogin"] = Request.RawUrl;
            Response.Redirect("Login.aspx"); // not logged in, go to login page
            return;
        }

        if (Request["rentid"] == null)               // check if rental is selected
        {
            Response.Redirect("RentalHistory.aspx"); // go to rental history page if no rental selected
            return;
        }

        // display rental and feedback information

        if (RentalDB.isRentalOfMemberPresent(Request["rentid"].ToString(), MemberDB.getMemberbyEmail(Session["user"].ToString()).MemberID))
        {
            List <Rental> rentalInfoDetails = new List <Rental>();
            Rental        rentalInfo        = RentalDB.getRentalbyID((Request["rentid"].ToString()));

            rentalInfoDetails.Add(rentalInfo);

            rptInfo.DataSource = rentalInfoDetails;
            rptInfo.DataBind();


            List <Feedback> feedbackInfo = new List <Feedback>();
            feedbackInfo.Add(FeedbackDB.getFeedbackforRental(Request["rentid"].ToString()));

            rptFeedbackInfo.DataSource = feedbackInfo;
            rptFeedbackInfo.DataBind();


            Feedback feed = FeedbackDB.getFeedbackforRental(Request["rentid"].ToString());
            // control display based on rating in feedback
            if (feed.FeedbackID != null)
            {
                if (feed.Rating == "Positive")
                {
                    rbtnPositive.Checked = true;
                }
                else if (feed.Rating == "Neutral")
                {
                    rbtnNeutral.Checked = true;
                }
                else if (feed.Rating == "Negative")
                {
                    rbtnNegative.Checked = true;
                }

                if (feed.ReplyFeedback != null)
                {
                    txtArea.Visible   = false;
                    btnSubmit.Visible = false;
                    setFeedbackControls(false);
                }
                else if (feed.Rental.Rentee.Email == Session["user"].ToString())
                {
                    txtArea.Visible   = false;
                    btnSubmit.Visible = false;
                }
            }
            else
            {
                setFeedbackControls(true);
                btnSubmit.Enabled = true;
            }
        }
        else
        {
            setFeedbackControls(false);
            btnSubmit.Visible = false;
            txtArea.Visible   = false;
            ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Inaccessible Page!')", true);
        }
    }
コード例 #19
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (Session["user"] == null)
        {
            Session["pageRedirectAfterLogin"] = Request.RawUrl;
            Response.Redirect("Login.aspx");
            return;
        }

        if (Request["rentid"].ToString() == null)
        {
            Response.Redirect("Default.aspx");
            return;
        }

        List <Rental> rentalInfoDetails = new List <Rental>();
        Rental        rentalInfo        = RentalDB.getRentalbyID(Request["rentid"].ToString());

        rentalInfoDetails.Add(rentalInfo);

        rptInfo.DataSource = rentalInfoDetails;
        rptInfo.DataBind();

        Session["user"] = Session["user"];

        Dispute dis = DisputeDB.getDisputeforRental(Request["rentid"].ToString());

        if (dis.DisputeID != null)
        {
            ddlReason.SelectedValue = dis.Reason;
            ddlReason.Enabled       = false;

            if (MemberDB.getMemberbyID(dis.SubmittedBy.MemberID).Email == Session["user"].ToString())
            {
                btnResolve.Visible = true;
            }

            if (dis.Status == "Resolved")
            {
                btnResolve.Enabled = false;
                tbxMessage.Enabled = false;
                btnSubmit.Enabled  = false;
            }

            rptMessages.DataSource = MessageDisputeDB.getMsgforDispute(dis.DisputeID);
            rptMessages.DataBind();
        }
        else
        {
            if (RentalDB.getRentalbyID(Request["rentid"].ToString()).Rentee.Email == Session["user"].ToString())
            {
                for (int x = 1; x < 5; x++)
                {
                    ddlReason.Items[x].Enabled = false;
                }
            }
            else if (RentalDB.getRentalbyID(Request["rentid"].ToString()).Item.Renter.Email == Session["user"].ToString())
            {
                for (int x = 1; x < ddlReason.Items.Count; x++)
                {
                    ddlReason.Items[x].Enabled = false;
                }
            }
        }
    }
コード例 #20
0
    protected void btnPay_Click(object sender, EventArgs e)
    {
        // submit payment

        Item itemInfo = ItemDB.getItembyID(Request.QueryString["itemID"]);

        Member mem = MemberDB.getMemberbyEmail(Session["user"].ToString());

        Rental rentInfo = (Rental)Session["rental"];
        var    myCharge = new StripeChargeCreateOptions();

        myCharge.Amount   = Convert.ToInt32(rentInfo.RentalFee) * 100;
        myCharge.Currency = "sgd";

        myCharge.SourceCard = new SourceCard()
        {
            Number          = "4242424242424242",
            ExpirationYear  = 2022,
            ExpirationMonth = 10,
            AddressCountry  = "SG",                      // optional
            AddressLine1    = mem.Address,               // optional
            AddressLine2    = mem.Address,               // optional
            AddressCity     = "Singapore",               // optional
            AddressState    = "NC",                      // optional
            AddressZip      = mem.PostalCode.ToString(), // optional
            Name            = mem.Name,                  // optional
            Cvc             = "1223"                     // optional
        };
        var          chargeService = new StripeChargeService();
        StripeCharge stripeCharge  = chargeService.Create(myCharge);

        PaymentPay pay = new PaymentPay();

        pay.StripeRefNum = Utility.getRandomizedChar(5, 0);

        string n         = Session["rentalPeriod"].ToString();
        string startDate = n.Substring(0, 10);
        string endDate   = n.Substring(n.Length - 10);

        if (Session["itemExtension"].ToString() == "NotExtension")
        {
            rentInfo.DateCreated        = DateTime.Now;
            rentInfo.Deposit            = itemInfo.Deposit;
            rentInfo.PaymentReleaseCode = Utility.getRandomizedChar(6, 0);
            rentInfo.Item = itemInfo;

            rentInfo.StartDate = Convert.ToDateTime(startDate);
            rentInfo.EndDate   = Convert.ToDateTime(endDate);
            rentInfo.Status    = "Scheduled";

            rentInfo.Payment = PaymentDB.getPaymentbyID(Utility.convertIdentitytoPK("PAY", PaymentDB.addPayment(pay)));
            rentInfo.Rentee  = mem;
            rentInfo.Unit    = "Day";

            Response.Redirect("RentalDetails.aspx?rentalID=" + Utility.convertIdentitytoPK("RNT", RentalDB.addRental(rentInfo)));
        }
        else
        {
            Rental rent = RentalDB.getRentalbyID(Request.QueryString["rentalID"]);

            Extension ext = new Extension();

            ext.ExtensionRentalFee = rentInfo.RentalFee;
            ext.NewEndDate         = Convert.ToDateTime(endDate);
            ext.NewReturnLocation  = rent.ReturnLocation;
            int paymentID = PaymentDB.addPayment(pay);

            pay.PaymentID     = Utility.convertIdentitytoPK("PAY", paymentID);
            ext.NewReturnTime = rent.ReturnTime;
            ext.Payment       = pay;

            ext.Rental = rent;
            ext.Status = "Granted";
            ext.Unit   = "Day";

            ExtensionDB.addExtension(ext);

            Response.Redirect("RentalDetails.aspx?rentalID=" + Request.QueryString["rentalID"]);
        }
    }
コード例 #21
0
    protected void Page_Load(object sender, EventArgs e)
    {
        // checks if user is logged in
        if (Session["user"] == null) // user is not logged in, redirect to login page
        {
            Session["pageRedirectAfterLogin"] = Request.RawUrl;
            Response.Redirect("Login.aspx");
            return;
        }

        if (Request["rentid"] == null)
        {
            Response.Redirect("Default.aspx");
            return;
        }


        //display dispute by rentalID if rentalID belongs to appropriate logged on user
        if (RentalDB.isRentalOfMemberPresent(Request["rentid"].ToString(), MemberDB.getMemberbyEmail(Session["user"].ToString()).MemberID))
        {
            List <Rental> rentalInfoDetails = new List <Rental>();
            Rental        rentalInfo        = RentalDB.getRentalbyID(Request["rentid"].ToString());

            rentalInfoDetails.Add(rentalInfo);

            rptInfo.DataSource = rentalInfoDetails;
            rptInfo.DataBind();

            Dispute dis = DisputeDB.getDisputeforRental(Request["rentid"].ToString());

            if (dis.DisputeID != null)
            {
                ddlReason.SelectedValue = dis.Reason;
                ddlReason.Enabled       = false;

                if (MemberDB.getMemberbyID(dis.SubmittedBy.MemberID).Email == Session["user"].ToString())
                {
                    btnResolve.Visible = true;
                }

                if (dis.Status == "Resolved")
                {
                    setChatControls(false);
                }

                rptMessages.DataSource = MessageDisputeDB.getMsgforDispute(dis.DisputeID);
                rptMessages.DataBind();
            }
            else
            {
                if (RentalDB.getRentalbyID(Request["rentid"].ToString()).Rentee.Email == Session["user"].ToString())
                {
                    for (int x = 1; x < 5; x++)
                    {
                        ddlReason.Items[x].Enabled = false;
                    }
                }
                else if (RentalDB.getRentalbyID(Request["rentid"].ToString()).Item.Renter.Email == Session["user"].ToString())
                {
                    for (int x = 1; x < ddlReason.Items.Count; x++)
                    {
                        ddlReason.Items[x].Enabled = false;
                    }
                }
            }
        }
        else
        {
            ddlReason.Enabled = false;
            setChatControls(false);
            ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Inaccessible Page!')", true);
        }
    }